#page {
	background-color: #fff;
	background-image: url("/-/media/Files/CSS/libraries/footer-books");
	background-repeat: repeat-x;
	background-position: left bottom;
	padding-bottom: 10em;
	border-bottom: solid 7px #1d2548;
}

#page .transparent {
	background-color: transparent !important;
}


#page_content h1, #page_content h2, #page_content h3, #local_menu_header li, .overlay-image .caption, .pseudo-h1  {
	font-family: dosis;
}

#page_content h1, #page_content h2, #page_content h3, #local_menu_header li, .pseudo-h1 {
	color: #1d2548;
}

#page_content h1 {
	padding-top: 1rem;
}


#page_content .pad-top  {
	margin-top: 1em;

}
.conform-block>.columns>div {
    width: -webkit-fill-available;
}

.conform-block>.columns>div div.well {
    height: 100%;
}
 


/* LOGO AND HEADER */

.content a.librarylogo {
	border-bottom: 0;
}

.content .pseudo-h1 a, .content .pseudo-h1 a:hover, .content .pseudo-h1 a:visited {
	border-bottom: 0;
	color: #1d2548;
}


.banner-area {
    padding: 0;

}

@media only screen and (min-width: 64em) {
    p.pseudo-h1 {
        padding-top: 20px;
        padding-bottom: 20px
    }
}

/* NAVIGATION */


#page {
    padding-top: 0;
}

#microsite_header {
    background-color: #fff;
    padding-top: 1rem;
	border-bottom: 5px solid #1d2548;
	margin-bottom: 0;
}

  #local_header {
    	margin-bottom: 0 !important;
	z-index: 800000;
}

#local_menu_header li:nth-of-type(5).dropdown .caret,
#local_menu_header li:nth-of-type(5).dropdown ul.dropdown-menu {
    display: none;
}


#page .navbar .nav {
	text-align: center;
        margin-top: 0.75em;
}

#page .navbar .nav>li {
	border: none;
	float: none;
	display: inline;
	margin: 0;

}

#page .navbar .nav>li>a {
    display: inline-block;
    background-color: #1d2548;
    font-weight: bolder;
    text-transform: uppercase;
    text-shadow: none;
    color: #fff;
    border-radius: 7px 7px 0 0;
    min-width: 145px;
}

#page .navbar-inner{
	background-color:transparent;
	box-shadow:none;
	border:none;
}


.navbar .nav li.dropdown>a:hover .caret, .navbar .nav li.dropdown>a:focus .caret {
    border-top-color: #fff;
    border-bottom-color: #fff;
}

.navbar .nav li.dropdown>.dropdown-toggle .caret {
    border-top-color: #fff;
    border-bottom-color: #fff;
}



/* HIDES MORE THAN 6 NAVIGATION ITEMS */

#page .navbar .nav>li:nth-of-type(n+7) {
      display:none
}

/* STANDARD CHARACTER HOVER ON KIDSZONE - GIRAFFE */

/*.navbar .nav>li:nth-of-type(5)>a:after {*/
/*
.navbar #local_menu_header>li:nth-of-type(5)>a:after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 13em;
    height: 12em;
    bottom: 1.75em;
    right: -3em;
    background-image: url(/-/media/Files/CSS/libraries/bg-giraffe.png);
    background-repeat: no-repeat;
    background-size: contain;
    color: #fff;
	z-index: -1;
}
*/

/* SUMMER READING CHALLENGE CHARACTER HOVER ON KIDSZONE */
.navbar #local_menu_header>li:nth-of-type(5)>a:after {
    content: "";
    position: absolute;
    display: inline-block;
    width: 13em; /* 8em */
    height: 12em;
    bottom: 1.5em; /* -4.5em */
    right: -3em; /* 0.5em */
    background-image: url(/-/media/Files/CSS/libraries/bg-albert.png);
    background-repeat: no-repeat;
    background-size: contain;
    color: #fff;
	z-index: -1;
}

.navbar .nav>li:nth-of-type(5)>a:hover:after  {
  /* Start the shake animation and make the animation last for 0.5 seconds */
  animation: shake 1s;

 /* When the animation is finished, start again */
  animation-iteration-count: infinite;
}



/* BREAKOUT BACKGROUND BLOCKS */

.breakout-area {
	top: 0;
	padding-top: 0;
        border-bottom: 7px solid #1d2548;
}



.breakout-bg.transparent .breakout-content {
	padding: 0 !important;
}


.breakout-bg.bg.alternate {
    padding-top: 0.25em;
    background-color: #1d2548;
}

#page .breakout-bg.alternate h2, #page .breakout-bg.alternate h3, #page .breakout-bg.alternate {
	color: #fff;
}

/*Fix headings in room slider */
#page .breakout-bg.alternate ul.row.bxslider.thumbnail-block h3 {
	color: #1d2548;	
}

#page .breakout-bg.bg.alternate .content a{
	color: #A6CDCD;
	border-bottom-color: #A6CDCD;
}

#page .breakout-bg.alternate a.thumbnail.cboxElement h3 {
	color: #1d2548;
}

.breakout-bg.alternate-three {
	background-color: #e8335e;
	padding-top: 2em;
	padding-bottom: 1em;
	margin-top: -1.5em;
}

.breakout-bg.alternate-two .breakout-content {
    background: #f2f2f2;
    padding-top: 2px!important;
    padding-left: 20px!important;
    border-radius: 10px;
}

.breakout-bg.transparent.alternate-four .thumbnail {
	background-color: #1eb2b3;
	color: #000;
}

.breakout-bg.transparent.alternate-four a.thumbnail.active {
    border-bottom: 7px solid #1d2548;
}

.breakout-bg.bg.inline-expand.alternate-four .thumbnail {
    font-size: 1.25em;
    display: block;
	position: relative;
	width: 100%;
	height: auto;
	padding: 1em;
	transition: all .5s ease;
	text-align: center;
	font-family: 'Dosis';
	box-shadow:none;
}

.wall .thumbnail, .wall a.thumbnail, .wall .thumbnail-block a {
	text-align: left;
	font-family: inherit;
	font-size: 1rem;
}

.hero-form.has-legend fieldset legend {
	background-color: #222222;
	font-size: 1.25rem;
	padding: .5rem;
	width: auto;
	font-family: 'Dosis';
	color: #fff;
}

#directions-finder fieldset legend {
	color:#000 !important;
}

.overlay-image .caption {
	display: inline;
	position: absolute;
	text-align: left;
	color: #f8f8f8;
	font-size: 1.25rem;
	text-decoration: none !important;
	border: none;
	max-width: 75%;
	border-radius: 0 0.75em 0 0;
	padding: 0.5em;
	background: #1d2548;
	transition: all .5s ease;
}


/* WELLS  */


.well {

    min-height: 1em;
    padding: 1rem;
    margin: 0;
    text-shadow: none;
    border-radius:10px;
}


.wonky {
        border-radius: 30px 20px 60px 20px;

}

.well.blue {
       background-color: #1d2548;
       color: #fff;

}

.well.blue a {
    	color: #fff;
    	border-bottom: 1px solid #fff;

}

#page .well.blue h2, #page .well.blue h3 {
        color: #fff;
}


.well.teal {
       background-color: #1EB2B3;
       color: #000;
}

.well.teal a {
    	color: #000;
    	border-bottom: 1px solid #000;
}


.well.pink {
       background-color: #e8335e;
       color: #000;
}

.well.pink a {
    	color: #000;
    	border-bottom: 1px solid #000;
}

.well.green {
    background-color: #74b959;
    color: #000;
}

.well.green a {
     color: #000;
     border-bottom: 1px solid #000;
}


/* GRIDS */

#page .row.blue {
    background-color: #1d2548;
    color: #fff;
    border-radius: 10px;
}

#page .row.blue h2 {
    color: #fff;
}


#page .row.teal {
    background-color: #1EB2B3;
    border-radius: 10px;
    padding: 0 0 1em 0.5em;
}

#page .row.pink {
    background-color: #e8335e;
    border-radius: 10px;
}





/* ACCORDIONS */

#page details{
	margin:0.5em 0;

}

#page details summary {
	background-color: #1d2548;
	color:#fff;
	border:0px;
	box-shadow: none;
	font-family: dosis, sans-serif;
	border-radius:10px;
}

/* +/- sign on collapsed/expanded accordion - ensure color and border-color match */
details>summary::before {
	color: #fff;
   	border-color:#fff ;
}

details summary[aria-expanded="true"]:before {
	color: #fff;
    border-color:#fff ;
}


#page details>summary::before {
	border: 0px;
	font-size: 2.5rem;
}





/* BUTTONS */

a[role="button"].green, button.green, input[type="submit"].green, input[type="reset"].green, input[type="button"].green, a[role="button"] {
	background-color: #1EB2B3;
	border-color: #1EB2B3;
	color: #000 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	font-family: 'Dosis';
}

a[role="button"].green:hover, button.green:hover, input[type="submit"].green:hover, input[type="reset"].green:hover, input[type="button"].green:hover, a[role="button"]:hover {
	background-color: #a6cdcd;
	border-color: #a6cdcd;
	color: #000 !important;
}

a[role="button"].pink {
    background-color: #e7305e!important;
    line-height: 2em;
}

.well.pink a[role="button"], .well.teal a[role="button"], .well.green a[role="button"]  {
	background-color: #1D2548 ;
    border-color: #1D2548 ;
    color: #fff !important;
}

.well.pink a[role="button"]:hover, .well.teal a[role="button"]:hover, .well.green a[role="button"]:hover  {
	background-color: #555e85
}

.breakout-bg.bg.alternate a[role="button"].green {
    padding-top: 0.25em;
    background-color: #ffd231;
	border:  #ffd231;
    font-size:1.25em;
   min-height:100%;
}

#page .row.blue a[role="button"] {
    background-color: #1EB2B3;

}


#page .row.blue img {
    border-radius: 10px 0 0 10px;
}


#page .row.pink a[role="button"] {
    background-color: #1d2548;

}

#page .row.pink img {
    border-radius: 10px 0 0 10px;
}


#page .row.teal a[role="button"] {
    background-color: #1d2548;

}

#page .row.teal img {
    border-radius: 10px 0 0 10px;
}






/* STICKY BUTTON */

button#contact-stickies-button {
    background-color: #e7335d;
    text-shadow: none;
    font-family: 'Dosis';
    color: #000;
    height: 5em;
    width: 5em;
    border-radius: 50%;
    border: 4px solid #1D2548 ;
    box-shadow: none;
    display: block;
    filter: drop-shadow(0.2rem 0.25rem 0.3rem #a1a1a1) !important;
}

@media only screen and (min-width: 37.5em) {
	button#contact-stickies-button {
		width: 8em;
		height:8em;
	}
}
#contact-stickies {
    position: fixed;
    bottom: 3em;
    right: 3em;
    z-index: 1000000;
}

#contact-stickies dt {
    position: relative;
    z-index: 10;
    bottom: -2em;
    right: -1.25em;
}

@media only screen and (min-width: 72em) {
	#contact-stickies {
		bottom: calc(50vh - 2em);
		right: calc(-35em + 50vw);
	}
}

#contact-stickies dt:hover #contact-stickies-button{
    filter: none;
	animation-name: jiggle;
	animation-duration: 2000ms;
	animation-iteration-count: infinite;
	animation-timing-function: ease-in-out;
}

.jiggle {
	left: -2em;
		position: relative;
	  animation-name: jiggle;
	  animation-duration: 2000ms;
	  animation-iteration-count: infinite;
	  animation-timing-function: ease-in-out;
	}

	.jiggle:hover{
		animation-play-state: paused;
	}


	@keyframes jiggle {
	  20% {transform: rotate(5deg);}
	  40% {transform: rotate(-10deg);}
	  60% {transform: rotate(10deg);}
	  80% {transform: rotate(-5deg);}
	  100% {transform: rotate(0deg);}
	}





/*CONTENT CARDS*/

.card.blocklink {
    border: solid 5px #43a6ab;
}

.card.blocklink footer {
    background-color: #fff;
}

.wall .brick .card-media img {
	position: relative;
	top: 0;
	transform: none;
}

.card-media {
	height: 10em !important;
}

.breakout-bg.transparent .card-media {
    height: 10em !important;
    }

h2.card-heading {
    color: #1d2548!important;
}

.bx-wrapper {
     padding: 0 ;
}

.card-actions-row.row.remove-bottom{
    background-color: #1EB2B3;
}


/* BRANCHES FACILITIES AND ICONS */
.speechbubble {
    position:relative; /* making the .speechbubble span a container for the tooltip text */
}

.speechbubble:before {
    content: attr(data-text); /* here's the magic */
    position:absolute;
    text-align:center;
    z-index:100;
    bottom: 342%;
    padding:0.5rem;
    border-radius:0.5rem;
    background:#555;
    background:-webkit-gradient(linear,left top,left bottom,from(#555),to(#222));
    background:-webkit-linear-gradient(top,#555,#222);
    background:-moz-linear-gradient(top,#555,#222);
    background:-ms-radial-gradient(top,#555,#222);
    background:-o-linear-gradient(top,#555,#222);
    background:linear-gradient(to top,#555,#222);
    color: #fff;
    display: none;
    width: 130%;
    margin-left: 3%;
}

.speechbubble:hover:after {
    width:0;
    height:0;
    border-left:.5rem solid transparent;
    border-right:.5rem solid transparent;
    border-top:.5rem solid #222;
    content:'';
    position:absolute;
    left:45%;
    bottom:3.8rem;
    margin-left:-.5rem;
    display:none;
}

.speechbubble.top:after{
    border-top-color:transparent;
    border-bottom:.5rem solid #222;
    top:-1rem;
    bottom:auto
}

.speechbubble.left:after{
    left:.5rem;
    margin:0
}

.speechbubble.right:after{
    right:.5rem;
    left:auto;
    margin:0
}

.speechbubble:hover:before, .speechbubble:hover:after {
    display:block;
}

p.facilities {
    margin-top: 0.2em;
    text-align: center;
    font-size: 0.8rem;
    margin-bottom: 0.2em;
}

@media only screen and (min-width: 64em) {
    p.facilities {
        left: -9999px;
        position: absolute;
    }
}


/*  Hide bullet points on opening hours */
ul.opening {
	list-style: none;
	margin:  0 0 0.5rem 0;
}


#page .icon.large {
    font-size: 2.5em;
    color: #1d2548!important;
}





@keyframes shake {
  0% { transform: translate(1px, 1px) rotate(0deg); }
  10% { transform: translate(-1px, -2px) rotate(-1deg); }
  20% { transform: translate(-3px, 0px) rotate(1deg); }
  30% { transform: translate(3px, 2px) rotate(0deg); }
  40% { transform: translate(1px, -1px) rotate(1deg); }
  50% { transform: translate(-1px, 2px) rotate(-1deg); }
  60% { transform: translate(-3px, 1px) rotate(0deg); }
  70% { transform: translate(3px, 1px) rotate(-1deg); }
  80% { transform: translate(-1px, -1px) rotate(1deg); }
  90% { transform: translate(1px, 2px) rotate(0deg); }
  100% { transform: translate(1px, -2px) rotate(-1deg); }
}


/* NEWSLETTER SIGN-UP - NOT CURRENTLY IN USE

summary {
	background-color:transparent;
}

.sapCpLabel {
	width:75%;
	display:inline-block;
}

.req, .opt {
	width:25%;
	padding-top:0.5em;
}

/* Duplicated - Remove & Test
.req {
	color:#f4c129 !important;
} */

.opt {
	color:rgba(30,178,179,1) !important;
}

.sapCpContentPage .sapCpWidget.sapCpWidgetHidden {
	display: none;
}

.sapCpButtonWidget .sapCpButtonWidgetExtraText {
	display: block;
}

.sapCpButtonWidget .sapCpMissingMandatoryFieldLabel {
	display: block;
}

.sapCpContentPage:not(.sapCpMissingMandatoryField) .sapCpButtonWidget .sapCpMissingMandatoryFieldLabel {
	display: none;
}

.sapCpButton.green.full-width {
	background-color:rgba(30,178,179,1) !important;
	text-shadow:none !important;
}

.sapCpButtonWidget .sapCpErrorMessageText {
	display: block;
}

.sapCpContentPage:not(.sapCpSubmitError) .sapCpButtonWidget .sapCpErrorMessageText {
	display: none;
}

.sapCpButtonWidget .sapCpSuccessMessageLabel {
	display: block;
}

.sapCpContentPage:not(.sapCpSubmitCompleted) .sapCpButtonWidget .sapCpSuccessMessageLabel {
	display: none;
}

.sapCpContentPage:not(.sapCpSubmitCompleted) .sapCpButtonWidget .sapCpButtonWidgetDownloadLink {
	display: none;
}

.sapCpButtonWidget .sapCpButtonWidgetDownloadLink:not(.sapCpButtonWidgetDownloadLinkVisible) {
	display: none;
}

.sapCpButtonWidget.sapCpButtonWidgetLoading button {
	cursor: wait;
}

/* Customize the label (the container) */
.sapCpCheckBox {
	display: block;
	position: relative;
	padding-left: 2rem;
	margin-bottom: 0;
	cursor: pointer;
	font-size: 2.5rem;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Hide the browser's default checkbox */
.sapCpCheckBox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom checkbox */
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 3rem;
	width: 3rem;
	background-color: #fff;
	border-radius:0.5rem;
	border: 1px solid rgba(0,0,0,.25);
	box-shadow: inset 0 0.25rem 0 rgba(0,0,0,.1);
}

/* On mouse-over, add a grey background color */
.sapCpCheckBox:hover input ~ .checkmark {
	background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.sapCpCheckBox input:checked ~ .checkmark {
	background-color: #785eba;
	border-color:#331a4a;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.sapCpCheckBox input:checked ~ .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.sapCpCheckBox .checkmark:after {
	left: 1.125rem;
	top: .675rem;
	width: .5rem;
	height: 1rem;
	border: solid white;
	border-width: 0 .25rem .25rem 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.checkmark-text{
	margin-left:4rem;
	display:inline-block;
}


/* ERRORS */

.error {
	color: #f4c129 !important;
}

.error label, .error legend, .error .help, .is-error, .field-validation-error, .req {
	color: #f4c129 !important;
}

.error input, fieldset.error, .error select, .error textarea, input.is-error, fieldset.is-error, select.is-error, textarea.is-error {
	border-color: #f4c129 !important;
	color: #ba4a48;
}

/*
.Cancelled-this-week{}
.Emergency-closure{}
.Closed-for-refurbishment{}
.Fully-booked{}
 */        

  
.Emergency-closure::after {
  font-weight: bold;
  color: navy;
  Background-color:orange;
  content: "The library is currently closed";
  position:absolute;
  top:-3em;
  margin: 3em;
  padding:1em;
}

.Closed-for-refurbishment::after {
  font-weight: bold;
  color: navy;
  Background-color:orange;
  content: "Closed for refurbishment";
  position:absolute;
  top:-3em;
  margin: 3em;
  padding:1em;
}


.Cancelled-this-week::after {
    font-weight: bold;
    color: navy;
    Background-color: orange;
    content: "Event cancelled this week";
    position: relative;
    top: -6em;
     width: 80%;
     padding: 1.5em;
    z-index: 10000;
    display: flow-root;
}

.Fully-booked::after {
    font-weight: bold;
    color: navy;
    Background-color: orange;
    content: "Fully booked";
    position: relative;
    top: -6em;
     width: 80%;
     padding: 1.5em;
    z-index: 10000;
    display: flow-root;
}


#page .columns.twelve.center {display: none;}

/*#page .columns.twelve.center {background-color: transparent}

#page .breakout-area.alternate .columns.twelve.center {
max-width: fit-content;
padding: 0.25em;
background-color: #1d2548d6;
}

@media only screen and (min-width: 37em) {
#page .breakout-area.alternate .columns.twelve.center {

max-width: fit-content;
padding: 1em;
margin-left: 25em;
margin-top: -2em;
background-color: #1d2548;
border-radius: 20px;

}
}
*/

/* GREEN LIBRARIES */
#page .breakout-area.alternate-five {
    border-bottom: 0;
}

#page .breakout-area.alternate-five .columns.twelve.center {
    display: revert;
    width: 100%;
    margin-left: 0;
    margin-top: 15em;
    background-color: #74b959;
    color: #000;
    padding: 0;
}

#page .breakout-area.alternate-five .columns.twelve.center h1 {
    font-size: 1.8rem;
}


/* GREEN LIBRARIES ACCESSIBILITY FIX */
.breakout-bg.bg.link-colorbox.alternate.alt .row.bxslider.thumbnail-block h3 {
	display: none;
}


@media only screen and (min-width: 48em) {
    #page .breakout-area.alternate-five .columns.twelve.center {
        width: 23.5em;
        margin-top: 9em;
    }

    #page .breakout-area.alternate-five .columns.twelve.center h1 {
        font-size: 2rem;
    }
}

@media only screen and (min-width: 64em) {
    #page .breakout-area.alternate-five .columns.twelve.center {
        padding: 0em;
        margin-top: 9em;
        width: 29em;
    }

    #page .breakout-area.alternate-five .columns.twelve.center h1 {
        font-size: 2.5rem;
    }
}

@media only screen and (min-width: 90em) {
    #page .breakout-area.alternate-five .columns.twelve.center {
        padding: 2em;
        margin-top: 18em;
        width: 34.5em;

    }

    #page .breakout-area.alternate-five .columns.twelve.center h1 {
        font-size: 2.75rem;
    }
}

p.lead.green {
    color: #1d2548;
    margin-top: 1em;
}

/* PROMO BLOCK WITH TEXT AND IMAGE BUT NO LINK - NG 29 05 25 */

.breakout-bg.bg.transparent.promo .row.promo .well {
	background-color: #1d2548;
	color: #fff;
}

.breakout-bg.bg.transparent.promo h3 {
    font-size: 1.5rem;
}

.breakout-bg.bg.transparent.promo .row.promo .well h4 {
    font-family: dosis;
    font-size: 1.75rem;
}

.breakout-bg.bg.transparent.promo .row.promo .well h4.smaller {
    font-size: 1.18rem;
}

.content .breakout-bg.bg.transparent.promo .row.promo a, .content .breakout-bg.bg.transparent.promo .row.promo a:visited {
	color: #fff;
	border-bottom: 1px solid #fff;
}

.breakout-bg.bg.transparent.promo .row.promo .columns.eight {
	padding: 0 !important;	
}

/*.breakout-bg.bg.transparent.promo .row.promo .columns.four {
	padding: 0 15px 10px 15px;
}*/