/****************************************** GLOBAL STYLES ******************************************/
/******************* HEADER & FOOTER *******************/
.site-header,
.site-footer,
.site-footer .nav--social-links .list__link {
    background-color: #051b3b !important; /* Changes Header Footer colour */
}
.nav--social-links .list__link {
    border: 1px solid #051b3b;
    background-color: #051b3b;
    color: #fff;
}


/******************* GENERAL STYLES *******************/
/********** Text & Paragraphs **********/
.page-content .summary {
    color: #051b3b;
    font-weight: 400;
}

/********** Headings & Subheadings **********/
.page-subheading {
    color: #051b3b;
}
.widget__heading {
    color: #1c212c;
}
.page-content .editor > h3:first-child ~ h3 {
    margin: 2.5rem 0 0;
}

/********** Images **********/
.page-content .editor .imageCaption.no-display {
    display: none;
}
.page-content .editor img:not([class]) {
    display: block;
    margin: 1.5rem auto;
}

/********** Other Elements **********/
.page-content .table-wrapper table:not([class]) td {
    border: none;
    text-align: center;
}

/********** Button Links - (primary & variations) **********/




/****************************************** HOMEPAGE STYLES ******************************************/

/******************* HERO WIDGET *******************/
.hero .hero__heading, .hero .hero__subheading {
    font-size: 1.5rem;
}
.hero .hero__content {
    background-color: rgba(45,53,71,0.75);
    width: 65%px;
}


/* ---------- Page width breakout in Index Homepage ---------- */
/* Break-out rows - 1, 2 */
.index-modular .page-content > .container:nth-child(1) {
    max-width: 100vw;
}
.index-modular .page-content > .container:nth-child(1) .widget-row {
    max-width: 1280px;
    margin: 0 auto 3rem;
}
.index-modular .page-content > .container .widget-row {
    padding-top: 3rem;
    padding-bottom: 0rem;
}

/* Carousel - row 1 */
.index-modular .page-content > .container:first-child {
    background-color: var(--lp-lightgreen);
}
.index-modular .page-content > .container:first-child .widget-row {
    padding: 0;
    margin: 0 auto;
}
/* ---------- CAROUSEL WIDGET *******************/
/* ---------- Stretch Hero Carousel to fit screen width ---------- */
.index-modular .page-content > .container:first-child .widget--carousel {
    width: 100vw;
    margin-left: calc(50% - 50vw);
}
/* position the content relative to a centred 1248px zone */
@media (min-width: 1281px) {
    .widget--carousel .carousel__item .carousel__content {
        left: calc(50% - 624px); /* start of the invisible 1248px container */
    }
    .carousel .flickity-buttons-wrapper .flickity-prev-next-button.next {
        right: 5rem;
    }
    .carousel .flickity-buttons-wrapper .flickity-prev-next-button.previous {
        left: 5rem;
    }
}
.index-modular .widget-carousel .carousel__item .slide-background {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

/* Adjust or change banner images on smaller screens */
@media (max-width: 1280px) {
    .index-modular .widget-carousel .carousel__item .slide-background {
        /*background-image: url('/images/image-name-1250x500.jpg');*/
        background-position: right center;
    }
}
.widget--carousel .carousel__item .carousel__content {
    border-radius: 0rem;
    background-color: rgba(45,53,71,0.75);
}



/******************* HEADINGS & SUBHEADINGS *******************/
.in-the-community__title,
.widget__heading,
h1, .h1, h2, .h2, h3, .form__heading, .h3, h4, .h4, h5, .h5, h6, .h6 {
    color: #1c212c;
}

/******************* Reduce bottom margin of specific row - Hello widget *******************/
.widget-row:has(.widget--hello) {
    margin-bottom: 1em; 
}


/******************* POPULAR SERVICES *******************/
.services .service {
    border-color: #051b3b; /* Changes border colour */
    background-color: #051b3b; /* Changes background colour */
}
.services .service:hover,
.services .service:focus {
    background-color: #ffffff; /* Changes background on hover and focus states */
    outline-color: transparent; /* Changes outline colour on active state */
}
.services .service:active {
    background-color: #efefef; /* Changes background colour */
    border-color: #efefef; /* Changes border colour on active state */
    outline-color: transparent; /* Changes outline colour on active state */
}
.services .service .service__link,
.services .service .service__heading,
.services .service .list__link,
.services .service .list__link .list__link-text {
    color: #ffffff; /* Changes text colour */
    text-decoration: none; /* Removes underline on active state */
}
.services .service:hover .service__link,
.services .service:focus .service__link,
.services .service:hover .service__link .service__heading,
.services .service:focus .service__link .service__heading,
.services .service:hover .service__link:hover .service__heading,
.services .service:focus .service__link:hover .service__heading,
.services .service:hover .list__link,
.services .service:focus .list__link,
.services .service:hover .list__link .list__link-text,
.services .service:focus .list__link .list__link-text {
    color: #051b3b; /* Changes text colour on hover and active states */
}
.services .service:hover .list__link:hover .list__link-text,
.services .service:hover .list__link:focus .list__link-text {
    text-decoration: underline;
}
.services .service:active .service__link,
.services .service:active .service__heading,
.services .service:active .list__link,
.services .service:active .list__link .list__link-text {
    color: #000000; /* Changes text colour on active state */
    text-decoration: none; /* Removes underline on active state */
}


/********** Popular Services icons **********/
.service:hover .service__icon,
.service:focus .service__icon,
.service:active .service__icon,
.service:active:hover .service__icon {
    display: none;
}
.service:hover .service__icon--hover,
.service:focus .service__icon--hover,
.service:active .service__icon--hover,
.service:active:hover .service__icon--hover {
    display: block;
}


/******************* NAVIGATION *******************/
.widget-navigation .list__link {
    background-color: #051b3b; /* Changes background colour */
    border-color: #051b3b; /* Changes border colour */
    justify-content: center; /* Centers the text */
    text-decoration: none; /* Removes underline */
}
.widget-navigation .list__link:hover,
.widget-navigation .list__link:focus {
    background-color: #ffffff; /* Changes background colour on hover & focus states */
}
.widget-navigation .list__link:active {
    background-color: #efefef; /* Changes background colour on active state */
    border-color: #efefef; /* Changes border colour on active state */
    outline-color: #000000; /* Changes outline colour on active state */
}
.widget-navigation .list__link .list__heading {
    line-height: 2;
    color: #ffffff; /* changes text colour */
    padding-right: 0 !important; /* Removes padding for central alignment */
}
.widget-navigation .list__link:hover .list__heading,
.widget-navigation .list__link:focus .list__heading {
    color: #051b3b; /* Changes text colour */
    text-decoration: underline; /* Adds underline */
}
.widget-navigation .list__link:active .list__heading  {
    color: #000000; /* Changes text colour on active state */
    text-decoration: none; /* Removes underline on active state */
}
.widget-navigation .list__link .icon {
	display: none; /* Hide the icon */
}


/******************* BUTTON LINKS - (primary & variations) *******************/
.button, .button:visited, .form__label--upload, .form__label--image-upload, .button--primary, .form__dropzone .form__dropzone-upload-button, .form__footer .button--secondary, .engagement__comment-form .engagement__comment-form-close, .widget--myaccount-sign-in a, .widget--myaccount-api-links a, .widget--myaccount-organisation-account-links a, .widget--myaccount-organisation-links a, .form__label--upload:visited, .form__label--image-upload:visited, .button--primary:visited, .form__dropzone .form__dropzone-upload-button:visited, .form__footer .button--secondary:visited, .engagement__comment-form .engagement__comment-form-close:visited, .widget--myaccount-sign-in a:visited, .widget--myaccount-api-links a:visited, .widget--myaccount-organisation-account-links a:visited, .widget--myaccount-organisation-links a:visited {
    border: 2px solid #051b3b;
    color: #051b3b;
}
.button:hover::before, .button:focus::before, .button:active::before, .form__label--upload:hover::before, .form__label--image-upload:hover::before, .button--primary:hover::before, .form__dropzone .form__dropzone-upload-button:hover::before, .form__footer .button--secondary:hover::before, .engagement__comment-form .engagement__comment-form-close:hover::before, .widget--myaccount-sign-in a:hover::before, .widget--myaccount-api-links a:hover::before, .widget--myaccount-organisation-account-links a:hover::before, .widget--myaccount-organisation-links a:hover::before, .form__label--upload:focus::before, .form__label--image-upload:focus::before, .button--primary:focus::before, .form__dropzone .form__dropzone-upload-button:focus::before, .form__footer .button--secondary:focus::before, .engagement__comment-form .engagement__comment-form-close:focus::before, .widget--myaccount-sign-in a:focus::before, .widget--myaccount-api-links a:focus::before, .widget--myaccount-organisation-account-links a:focus::before, .widget--myaccount-organisation-links a:focus::before, .form__label--upload:active::before, .form__label--image-upload:active::before, .button--primary:active::before, .form__dropzone .form__dropzone-upload-button:active::before, .form__footer .button--secondary:active::before, .engagement__comment-form .engagement__comment-form-close:active::before, .widget--myaccount-sign-in a:active::before, .widget--myaccount-api-links a:active::before, .widget--myaccount-organisation-account-links a:active::before, .widget--myaccount-organisation-links a:active::before {
    border-color: #051b3b;
}
.button--secondary:hover, .button--secondary:active, .button--secondary:focus, .boxed .form__footer .button:hover, .aside__section .form__footer .button:hover, .widget-filtered-listing-filter .form__action--secondary .button:hover, .boxed .form__footer .button:active, .aside__section .form__footer .button:active, .widget-filtered-listing-filter .form__action--secondary .button:active, .boxed .form__footer .button:focus, .aside__section .form__footer .button:focus, .widget-filtered-listing-filter .form__action--secondary .button:focus {
    border-color: #051b3b;
    color: #051b3b;
}
.button.button--white, .button.button--white:visited {
    border-color: #fff;
    color: #fff;
}
.button.button--white:hover::before, .button.button--white:focus::before, .button.button--white:active::before {
    border-color: #fff;
}
.boxed .form__footer .button, 
.boxed .form__footer .button:hover, 
.boxed .form__footer .button:active, 
.boxed .form__footer .button:focus {
    border-color: #191e28;
    color: #191e28;
}

/******************** Image + Block Button Cards ********************/
.button--block, .button--block:visited, .button--block.button, .button--block.button:visited {
    background-color: #051b3b;
    border-color: #051b3b;
    color: #fff;
}
.button--block:hover, .button--block:focus, .button--block:active, .button--block:visited:hover, .button--block:visited:focus, .button--block:visited:active, .button--block.button:hover, .button--block.button:focus, .button--block.button:active, .button--block.button:visited:hover, .button--block.button:visited:focus, .button--block.button:visited:active {
    background-color: #fff;
    color: #051b3b;
}
.button--block:hover::before, .button--block:focus::before, .button--block:active::before, .button--block:visited:hover::before, .button--block:visited:focus::before, .button--block:visited:active::before, .button--block.button:hover::before, .button--block.button:focus::before, .button--block.button:active::before, .button--block.button:visited:hover::before, .button--block.button:visited:focus::before, .button--block.button:visited:active::before {
    border-color: #051b3b;
}

/******************** Text + Button Cards ********************/


/******************* NEWS & EVENTS *******************/
.news-card--primary .news-card__content:hover, 
.news-card--primary .news-card__content:focus, 
.news-card--primary .news-card__content:active {
    background-color: #051b3b;
}
.news-events-grid__single:nth-child(4) .news-card__feature-date {
    background-color: #051b3b;
}
.news-events-grid__single:nth-child(4) .news-card__content:hover, 
.news-events-grid__single:nth-child(4) .news-card__content:focus, 
.news-events-grid__single:nth-child(4) .news-card__content:active {
    background-color: #051b3b;
}

/******************* MODIFIED NEWS & EVENTS *******************/
/******************* BANNERS *******************/



/******************* CONTENT WIDGET *******************/
.do-not-display {
    display: none;
}
.site-content .page-content .table-wrapper table:not([class]) td {
    border: none;
    text-align: center;
}

/******************** Paragraphs ********************/
.boxed--blue {
    background-color: #CAE2F7; /* Pale Sky Blue */
    border-color: #CAE2F7;
}


/******************** Images ********************/
/******************** Videos (Youtube embeds) ********************/





/****************************************** CATEGORY HOME STYLES ******************************************/

/******************* Stretch Hero Carousel to fit screen width *******************/
.category-modular .page-content > .container:first-child:has(.widget--carousel) {
    max-width: 100%;
    padding: 0;
}

/******************* Remove space at the top when page starts with a carousel in Category Homepages *********************/
.category-modular .page-content:has(> .container:first-child .widget--carousel) {
    margin-top: 0;
}






/******************* DOCUMENT PAGE STYLES *******************/

/********** Sub-nav row background **********/
.nav--pages-in,
.nav--pages-in .nav__list {
    background-color: #B8D8F4;
}
.nav--pages-in .nav__list::before {
    border-color: #B8D8F4 transparent transparent;

}


/******************* DOWNLOAD STYLES *******************/

/******************* NEWS & EVENTS STYLES *******************/


