/*
Theme Name: NSPTF Child Theme
Author: Gareth Edwards
Description: <themeDescription>
Version: 1.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.0
Text Domain: UKRI
Template: masters-theme
*/

/* URW Geometric Regular */
@font-face {
    font-family: 'URW Geometric';
    src: url('assets/fonts/urw-geometric-regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* URW Geometric Bold */
@font-face {
    font-family: 'URW Geometric';
    src: url('assets/fonts/urw-geometric-bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

*:not(#wpadminbar):not(#wpadminbar *),
*:not(#wpadminbar):not(#wpadminbar *)::before,
*:not(#wpadminbar):not(#wpadminbar *)::after {
    font-family: 'URW Geometric' !important;
}

.main .flex-panel h1,
.main .flex-panel h2,
.main .flex-panel h3,
.main .flex-panel h4,
.main .flex-panel h5,
.main .flex-panel strong,
.main .flex-panel b {
    font-family: 'URW Geometric' !important;
    font-weight: 700 !important;
}

.bg-grey {
    background-color: #F5F4F4 !important;
}

.bg-sky-blue {
    background-color: #9DD5F5 !important;
}

.bg-navy {
    background-color: #232045 !important;
}

.bg-blue {
    background-color: #1B4389 !important;
}

.flex-panel.cta-full-width {
    background-color: #232045 !important;
}

.header {
    left: 50% !important;
    transform: translateX(-50%) !important;
    margin: 0 auto;
    width: 100% !important;
    max-width: 100%;
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.10);
}

.header.hidden {
    transform: translateX(-50%) translateY(-140%) !important;
}



.header .custom-container {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}

.header>.custom-container>div {
    min-height: 120px !important;
}

.header .custom-container>.py-3 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.header .custom-container>.py-3 .d-flex {
    justify-content: start !important;
}

.header .logo svg,
.header .logo img {
    width: 200px !important;
    margin-bottom: -4px !important;
}

.header .header-bar {
    background-color: #9DD6F6 !important;
}

.header .header-bar ul>li {
    margin: 0 40px 0 0 !important;
}

.header .header-bar ul>li a {
    color: #2E2D62 !important;
}

.search-container input {
    background-color: rgba(217, 217, 217, 0.60) !important;
    border-radius: 0 !important;
    height: 40px !important;
}

.hero-panel {
    height: calc(100dvh - 100px);
    min-height: 550px;
}

.hero-panel>div,
.hero-panel>div .video-overlay-hero,
.hero-panel .video-overlay-container,
.hero-panel .custom-container {
    height: 100%;
}

@media (min-width: 992px) {
    .main {
        padding-top: 224px !important;
    }

    .hero-panel {
        height: calc(100dvh - 224px);
    }
}

.main .btn {
    border-radius: 0 !important;
    padding: 8px 20px !important;
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
}

.main .btn:after,
.header .btn-utility-primary a:after,
.header .btn-utility-secondary a:after {
    content: "" !important;
    display: inline-flex !important;
    width: 25px !important;
    height: 16px !important;
    margin-left: 10px !important;
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2225%22%20height%3D%2216%22%20viewBox%3D%220%200%2025%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M17.5429%20-1.15751e-05L18.7686%205.54171L-7.85078e-06%207.57974L18.7569%209.49504L17.4983%2015.0449L24.6848%207.499L17.5429%20-1.15751e-05Z%22%20fill%3D%22white%22/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.main .bg-blue .btn:hover:after {
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2225%22%20height%3D%2216%22%20viewBox%3D%220%200%2025%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M17.5429%20-1.15751e-05L18.7686%205.54171L-7.85078e-06%207.57974L18.7569%209.49504L17.4983%2015.0449L24.6848%207.499L17.5429%20-1.15751e-05Z%22%20fill%3D%22%231B4389%22/%3E%3C/svg%3E") !important;
}

.flex-panel.cta-full-width .btn:hover,
.main .bg-navy .btn:hover {
    background-color: #1B4389 !important;
}

.main .btn-primary,
.header .btn-utility-primary a,
.header .btn-utility-secondary a {
    background-color: #DC0732 !important;
    color: #FFF !important;
    border-radius: 0 !important;
    padding: 10px 30px !important;
    position: relative !important;
    line-height: 1.1em !important;
}

.header .btn-utility-primary a,
.header .btn-utility-secondary a {
    display: flex;
    align-items: center;
}

.flex-columns .btn-primary:hover,
.flex-columns .btn-primary:focus,
.our-capabilities-panel .btn-primary:hover,
.our-capabilities-panel .btn-primary:focus,
.archive-listing .btn-primary:hover,
.archive-listing .btn-primary:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.cta-full-width .btn:hover,
.cta-full-width .btn:focus,
.slider-panel p.btn:hover,
.slider-panel p.btn:focus {
    background-color: #003088 !important;
    border-color: #003088 !important;
    color: #FFF !important;
}

.bg-blue .btn-primary:hover,
.bg-blue .btn-primary:focus,
.bg-blue .btn-secondary:hover,
.bg-blue .btn-secondary:focus {
    background-color: #003088 !important;
    border-color: #003088 !important;
    color: #FFF !important;
}

.main .hero-panel>.custom-container {
    display: flex;
    justify-content: center;
    padding-bottom: 0 !important;
}

.main .hero-panel>.custom-container .video-overlay-container .custom-container>div {
    justify-content: center !important;
    align-items: center !important;
}

.main .hero-panel>.custom-container .video-overlay-container .custom-container>div>div {
    text-align: center;
    margin: 0 auto;
    padding: 20px 0 !important;
}

.main .hero-panel {
    background-color: #010101 !important;
}

.wpcf7 input[type="submit"] {
    border: none;
    padding: 4px 50px !important;
    cursor: pointer;
    font-weight: bold;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    display: flex;
    border-radius: 5px;
    margin-top: 10px;
    transition: all 0.2s ease-in-out;
    position: relative;
}

.main .hero-panel>.custom-container h1 {
    font-size: 54px;
    font-style: normal;
    font-weight: 700;
    line-height: 59px;
    margin: 0 auto;
    padding: 0 0 100px;
    text-align: center;
    max-width: 700px !important;
}

@media (max-width: 768px) {
    .main .hero-panel>.custom-container h1 {
        font-size: 44px;
        line-height: 48px;
    }
}

.border-radius {
    border-radius: 5px !important;
}

.footer li.btn-primary {
    padding: 0px !important;
    background-color: transparent !important;
    border-radius: 0px !important;
}

.footer li.btn-primary a {
    color: #fff !important;
    text-decoration: none !important;
    padding: 14px 25px !important;
    border-radius: 0px !important;
    color: #fff !important;
    background-color: #DC0732;
    font-weight: 600;
}

.footer li.btn-primary a:after {
    content: "" !important;
    display: inline-flex !important;
    width: 27px !important;
    height: 26px !important;
    margin-left: 10px !important;
    background-image: url(data:image/svg+xml,%3Csvg%20width%3D%2225%22%20height%3D%2216%22%20viewBox%3D%220%200%2025%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M17.5429%20-1.15751e-05L18.7686%205.54171L-7.85078e-06%207.57974L18.7569%209.49504L17.4983%2015.0449L24.6848%207.499L17.5429%20-1.15751e-05Z%22%20fill%3D%22white%22/%3E%3C/svg%3E) !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    align-items: center;
}


.header .mobile-nav,
.wpcf7 input[type="submit"] {
    border-radius: 0 !important;
}

.header .search-container .search-btn {
    width: 32px !important;
    height: 32px !important;
    right: 3px !important;
    top: 3px !important;
    background-color: #1B4389 !important;
}

.header .btn-utility-primary,
.header .btn-utility-secondary {
    margin-left: 0 !important;
}

.main .flex-panel.bg-blue h1.h2,
.main .flex-panel.bg-navy h2.h2 {
    color: #FFF !important;
}

.header-bar ul>li.menu-item-has-children:after {
    background-image: none !important;
}

.footer .socials-wrap>.social-icons {
    margin-left: 30px !important;
}

@media (max-width: 768px) {
    .footer .socials-wrap>.social-icons {
        margin-left: 0px !important;
        margin-right: 30px;
    }
}

.footer .socials-wrap .social-icons {
    width: fit-content !important;
}

.flex-panel.stats-panel .stats-items .stat {
    background-color: #9DD5F5 !important;
}

.flex-panel.stats-panel .stats-items .stat h3.h1,
.flex-panel.stats-panel .stats-items .stat p.label-top,
.flex-panel.stats-panel .stats-items .stat p.label-bottom {
    color: #231D46 !important;
}

.header-bar ul>li.current-menu-item>a {
    font-weight: 600;
}

.mobile-menu #menu-utility-menu-1 li {
    flex: none;
}

.header-bar ul>li.menu-item-has-children:after {
    content: url("data:image/svg+xml;utf8, <svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' > <path d='M7.96484 0L7.96484 13.8132' stroke='%232E2D62' stroke-miterlimit='10' /> <path d='M14.9297 6.9057L7.96402 14.3163L1.00004 6.9057' stroke='%232E2D62' stroke-miterlimit='10' /> </svg>") !important;
}

.hero-panel .video-hero-bg {
    opacity: 0.8 !important;
}


.swiper-button-next.swiper-button-lock,
.swiper-button-prev.swiper-button-lock {
    display: none !important;
}

.timeline-section {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.timeline-section::before {
    content: "";
    background-image: url("assets/img/nsptf-bg-graphic.svg");
    height: 180px;
    width: 180px;
    position: absolute;
    bottom: 0;
    right: 0;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: bottom right;
}

body .timeline-section .timeline-dot.active .year {
    color: #EA6752 !important;
}

body .timeline-section .timeline-dot.active .dot,
body .timeline-section .timeline-dot.active .dot::after {
    background-color: #EA6752 !important;
}

body .timeline-section .timeline-dot .dot::before {
    border-color: #EA6752 !important;
}

.timeline-section .timeline-navigation {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 1370px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.timeline-section .timeline-prev,
.timeline-section .timeline-next,
.timeline-section .timeline-prev:hover,
.timeline-section .timeline-prev:focus,
.timeline-section .timeline-prev:active,
.timeline-section .timeline-next:hover,
.timeline-section .timeline-next:focus,
.timeline-section .timeline-next:active {
    cursor: pointer;
    display: inline-flex !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    flex: 0 0 50px !important;
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    height: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    margin: 40px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: none !important;
    box-sizing: border-box !important;
    transition: none !important;
    animation: none !important;
    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2225%22%20height%3D%2216%22%20viewBox%3D%220%200%2025%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M17.5429%20-1.15751e-05L18.7686%205.54171L-7.85078e-06%207.57974L18.7569%209.49504L17.4983%2015.0449L24.6848%207.499L17.5429%20-1.15751e-05Z%22%20fill%3D%22%23DC0732%22/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 85% !important;
}

.timeline-section .timeline-prev,
.timeline-section .timeline-prev:hover,
.timeline-section .timeline-prev:focus,
.timeline-section .timeline-prev:active,
.timeline-section .timeline-prev.swiper-button-disabled {
    transform: rotate(180deg) !important;
    background-position: center 13px !important;
}

.timeline-section .timeline-next,
.timeline-section .timeline-next:hover,
.timeline-section .timeline-next:focus,
.timeline-section .timeline-next:active,
.timeline-section .timeline-next.swiper-button-disabled {
    transform: none !important;
    background-position: center !important;
}

.timeline-section .timeline-prev::after,
.timeline-section .timeline-next::after {
    content: none !important;
    display: none !important;
}

.timeline-section .timeline-prev.swiper-button-disabled,
.timeline-section .timeline-next.swiper-button-disabled {
    opacity: 1 !important;
    display: inline-flex !important;
}

body .flex-panel.accordion-panel .alternative-layout {
    --accordion-text-colour: #FFF !important;
    --accordion-highlight-colour: #DC0732 !important;
    --accordion-highlight-text-colour: #FFF !important;
}

body .flex-panel.accordion-panel .alternative-layout .h4 a::after {
    background-image: url("data:image/svg+xml;utf8,<svg width='19' height='12' viewBox='0 0 19 12' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M18.1602 1L9.57888 10.1294L0.999687 0.999999' stroke='white' stroke-width='1.5' stroke-miterlimit='10'/></svg>") !important;
}

@media (max-width: 767.98px) {
    .timeline-section::before {
        height: 140px;
        width: 140px;
    }
}