/*
 * Responsive site styles
 */
 @media only screen and (min-width:768px) {

    main section:has(+ .pull-top) {
        padding-bottom: 10rem;
    }
    
    .pull-top > div {
        margin-top:-10rem;
    }

    /* Card Styles */

    .card-wrapper > div,
    .card-wrapper.row-4 > div
    {
        flex-basis: calc((100% / 2) - ((var(--gap-size) * 1) / 2));
    }

    .card-wrapper.noGap > div,
    .card-wrapper.noGap.row-4 > div
    {
        flex-basis: calc(100% / 2); 
    }

}

@media only screen and (min-width: 992px) {
    :root {
        --section-padding: 8rem;
    }

    body {
        text-align: unset;
    }

    picture.cover,
    picture.contain,
    picture.scale-up {
        position:absolute;
        inset: 0;
    }
    
    .pb-lg-6 {
        padding-bottom: 5rem !important;
    }

    .pt-lg-6 {
        padding-top: 5rem !important;
    }

    .mx-lg-unset {
        margin-inline: unset;
    }

    .social {
        justify-content: unset;
    }

    .underline:after {
        margin: 1rem auto 0 0;
    }

    .text-lg-left {
        text-align:left;
    }

    h1,
    .h1 {
        font-size: 4rem;
    }

    h2,
    .h2 {
        font-size: 3rem;
    }

    .content-width {
        max-width: 100ch;
    }
    
    .logo {
        padding-block: 1rem;
    }

    /* Header */

    header.desktop-sticky {
        top: 0;
        z-index: 100;
        transition: all var(--transition-type) var(--transition-speed);
    }

    header nav .navbar-collapse {
        align-items: center;
    }

    header:has(button[aria-expanded="true"]) li:not(.button) > a {
        color: unset;
    }

    header:has(button[aria-expanded="true"]) nav li.current-menu-item:not(.button) > a {
        color: var(--secondary-colour);
    }

    header nav .menu-item-has-children:hover > a:after {
        transform:rotate(90deg);
    }
    
    header nav .sub-menu {
        max-height: 0;
        opacity: 0;
        overflow: hidden;
        position: absolute;
        transition: all var(--transition-type) var(--transition-speed);
        min-width: 220px;
        background:#ffffff;
        box-shadow: 0 1rem 1rem 0.25rem rgba(150,150,150,.25);
        z-index: 10;
        line-height: 1.15;
        border-radius: calc(var(--border-radius) / 2);
    }
    
    header nav .sub-menu > li {
        border-left: solid 3px transparent;
        transition:all var(--transition-type) var(--transition-speed);
    }
    
    header nav li.menu-item-has-children:hover > .sub-menu,
    header nav li.menu-item-has-children:focus > .sub-menu
    header nav li.menu-item-has-children:focus-within > .sub-menu {
        max-height:100svh;
        opacity: 1;
    }

    header img {
        display:block;
    }

    header .menu-item.button {
        padding-left: var(--ui-size);
    }

    .mobile-icons {
        padding-block:0;
        padding-right: calc(var(--bs-gutter-x) * .5);
        padding-left: calc(var(--bs-gutter-x) * .5);
        justify-content: flex-end;
    }

    .mobile-icons > * {
        flex:unset;
    }

    .mobile-icons i {
        display: inline-block;
        font-size: 1rem;
    }

    .mobile-icons .value {
        font-size: 1rem;
        font-weight: 400;
    }

    /* Hero Slider */

    .hero[data-overlay="true"]:before {
        content: "";
        position:absolute;
        inset: 0;
        --_overlay: linear-gradient(180deg, rgba(12,54,100,1) 0%, rgba(12,54,100,0) 90%, rgba(12,54,100,0) 100%);
        background: var(--_overlay);
        z-index: 1;
    }

    .slide-content-wrapper, .hero-content-wrapper {
        padding-top:10rem;
    }

    .slide-content {
        max-width: 50%;
        margin-inline: 0;
    }

    .slide-content-wrapper {
        min-height: 75vh;
    }

    /* Main Content */
    .row > *:not(.card) {
        padding-right: calc(var(--bs-gutter-x) * .5);
        padding-left: calc(var(--bs-gutter-x) * .5);
    }

    /* Card Styles */

    .row.card-wrapper {
        margin-inline: 0;
    }

    .card-wrapper > div {
        flex-basis: calc((100% / 3) - ((var(--gap-size) * 2) / 3)); /* Three columns to a row */
    }

    .card-wrapper.noGap > div {
        flex-basis: calc(100% / 3); /* Three columns to a row with no gap */
    }

    .card-wrapper.row-4 > div {
        flex-basis: calc((100% / 4) - ((var(--gap-size) * 3) / 4)); /* Four columns to a row */
    }

    .card-wrapper.row-4.noGap > div {
        flex-basis: calc(100% / 4); /* Four columns to a row with no gap */
    }
    .card-wrapper .title {
        flex: 1;
    }

    .card-content {
        padding:2rem;
    }

    .card-content .post-meta span:has(+ span) {
        padding-right: .5rem;
        border-right: solid thin var(--main-colour, #333);
        font-weight: 600;
    }

    /* Footer */

    .terms-menu {
        justify-content: flex-end;
    }
}

@media only screen and (max-width: 575px) {
    #heroCarousel .carousel-item .carousel-content h1 {
        line-height: 60px !important;
    }
    .accent {
        bottom: 0px;
        min-width: 100%;
        z-index: 99;
        right: -1px;
    }
    .search-wrapper.main {
        position: relative;
        bottom: 0;
        left: 0;
        transform: none;
    }
    .search-wrapper .search-item {
        border-radius: 0;
    }
    .menu-item .wrapper a, header nav .menu-item a {
        width: 100%;
        text-align: left;
    }
    .cta-menu {
        margin-left: 1rem;
        width: 92%;
    }
    .card-content {
        padding: 2rem 0;
    }
	.news .card-content {
		padding: 2rem
	}
}