/*
Theme Name: Adigi Base Framework - Child Theme
Text Domain: adigi-child
Template: adigi
Version: 3.0
Description: Adigi Base Framework, version 3
Author: Adigi Ltd
Author URI: https://www.adigi.co.uk
*/

/* Override CSS here */


/* Webfonts */

@font-face {
    font-family: 'MADE TOMMY 800';
    src: url('./webfonts/hinted-MADETOMMY-ExtraBold.woff2') format('woff2'),
    	 url('./webfonts/hinted-MADETOMMY-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MADE TOMMY 700';
    src: url('./webfonts/hinted-MADETOMMY-Bold.woff2') format('woff2'),
         url('./webfonts/hinted-MADETOMMY-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MADE TOMMY';
    src: url('./webfonts/hinted-MADETOMMY.woff2') format('woff2'),
         url('./webfonts/hinted-MADETOMMY.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MADE TOMMY 500';
    src: url('./webfonts/hinted-MADETOMMY-Medium.woff2') format('woff2'),
         url('./webfonts/hinted-MADETOMMY-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}


/* Global */

body, .section.bg-body {
    background-image: url('./img/bg.jpg');
}

.section.bg-tertiary, .section-instagram-feed, .padding-wrapper.bg-tertiary {
    background-image: url('./img/bg-tertiary.jpg');
}

.section.bg-secondary, .padding-wrapper.bg-secondary {
    background-image: url('./img/bg-secondary.jpg');
}

.section.bg-black, .padding-wrapper.bg-black, .contact-form .col-xl-4 {
    background-image: url('./img/bg-black.jpg');
}

.body-overlay {
    background-color: #000;
}

.br-20 {
    border-radius: 20px;
}

.br-50 {
    border-radius: 50px;
}

.bordered {
    border: 2px solid #000; 
}

.bordered-lg {
    border: 4px solid #000; 
}

.section:not(.img-card-stack, .panels).block-columns .carousel-item img {
    border: 4px solid #000;
    border-radius: 20px;
}


/* Layout */

@media (min-width: 1600px) { 
    .container, .container-fluid {padding-left: 60px; padding-right: 60px;}
    .container {max-width: 1496px;}
}


/* Typography */

.fw-800, .form-label {
    font-family: 'MADE TOMMY 800', "Segoe UI", Roboto, "Helvetica Neue", Arial;  
    font-weight: 800;    
}

h6, .subtitle, .fw-700 {
    font-family: 'MADE TOMMY 700', "Segoe UI", Roboto, "Helvetica Neue", Arial;  
    font-weight: 700; 
}

.fw-500, .sub-menu-items.font-primary {
     font-family: 'MADE TOMMY 500', "Segoe UI", Roboto, "Helvetica Neue", Arial;     
}

h5 {
    line-height: 1.1;
}

p a {
    text-decoration: underline;
}

.text-sm {
    font-size: 0.825rem;
}


/* WYSIWYG Embeds */

.yt-embed iframe, .post-block iframe, .performance-modal iframe {
    aspect-ratio: 16/9;
    border-radius: 25px;
    border: 2px solid #000;
    height: auto;
    width: 100%;
}


/* Navbar */

.navbar:before {
    background-image: url('./img/bg-nav.jpg');
    content: '';
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    transition: 0.2s ease-out;
}

body.transparent-navbar:not(.scrolled) .navbar:before {
    opacity: 0;
}

body.transparent-navbar:not(.scrolled) .navbar-logo {
    filter: invert(1);
}

body.transparent-navbar:not(.scrolled) {  
  --navbar-links-bar-colour: #FFF;
  --hamburger-colour: #FFF;
}

.navbar-right svg {
    height: auto;
    width: auto;
}

/* Navbar-menu */

.navbar-menu {
    background-image: url('./img/bg-secondary.jpg');
}

.navbar-menu-inner {
    height: calc(100% - 40px)!important;
}

.navbar-menu .social-icons {
    padding: 0 2px;
}

.navbar-menu .hamburger {
    top: 30px;
    right: 30px;
}

.navbar-menu-links {
    font-family: 'MADE TOMMY 700', "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

.navbar-menu-link-child a:after {
    height: 2px;
}


/* Icons */

.social-icons a, .instagram-handle > span:first-child, .roundel-icon, 
.what-we-do-carousel-prev, .what-we-do-carousel-next {
    background-color: #000;
    border-radius: 50%;
    display: block;
    margin: 0 5px!important;
} 

body.transparent-navbar:not(.scrolled) .navbar .social-icons a, .footer .social-icons a, .contact-form .social-icons a {
    filter: invert(1);
}

.form-sidebar.text-white .social-icons svg path {
    fill: unset;
}

.social-icons a:first-child {
    margin-left: 0!important;
}

.social-icons a:last-child {
    margin-right: 0!important;
}

.social-icons span, .instagram-handle > span:first-child > span, .roundel-icon span,
.what-we-do-carousel-prev span, .what-we-do-carousel-next span {
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border: 2px solid #000;
    border-radius: 50%;
    display: flex;
    height: 40px;
    width: 40px;
    transform: translateX(-2px) translateY(-2px);
    transition: 0.2s ease-out;
} 

.social-icons a:hover span,  .instagram-handle:hover > span:first-child > span,
.what-we-do-carousel-prev:hover span, .what-we-do-carousel-next:hover span {
    transform: none;
}


/* Hamburger */

.hamburger-label {
    font-family: 'MADE TOMMY 700', "Segoe UI", Roboto, "Helvetica Neue", Arial;
    transition: 0.2s ease-out;
}

.hamburger {
    width: 50px;
    height: 35px;
}

.hamburger span {
    height: 5px;
}

.hamburger span:nth-child(2) {
    top: 15px;
}

.hamburger span:nth-child(3) {
    top: 30px;
}


/* Footer */

.footer {
    background-image: url('./img/bg-footer.jpg');
    background-size: 50% auto;
    background-repeat: no-repeat;
}

.footer-links {
    border-top: none!important;
    border-bottom: none!important;
}

.footer-menu-item:not(:last-child), .footer-menu-title {
    margin-bottom: 1.25rem;
}

.footer-subscribe {
    max-width: 550px;
}

.footer-subscribe .form-control {
    background-color: #fff;
    border-bottom: none;
    border-radius: 42px;
    height: 84px;
    padding: 0 183px 0 72px;
}

.footer-subscribe .btn {
    position: absolute;
    top: calc(50% + 5px); right: 10px;
    transform: translateY(-50%);
}

.footer-subscribe .roundel-icon {
    position: absolute;
    top: 50%; left: 15px;
    transform: translateY(-50%);
}

.footer-subscribe .form-check .form-check-input {
    border-color: #fff!important;
    border-radius: 5px;
    border-width: 2px!important;
    margin: 0rem 0.5rem 1px 0;
    height: 24px;
    width: 24px;
    min-width: 24px;
}

.newsletter-modal .modal-dialog {
    max-width: 100%;
}

.newsletter-modal .modal-content {
    background-color: transparent;
}

.newsletter-modal .modal-content > div {
    border: 4px solid #fff;
}

.newsletter-modal .modal-content:before {
    background-color: #fff;
    border-radius: 20px;
    content: '';
    position: absolute;
    top: 9px; right: -9px; bottom: -9px; left: 9px;
}

.footer-lower {
    border-top: 1px solid #fff;
    margin-top: 16px;
    padding-top: 56px;
}

.footer:after {
    content: '';
    display: block;
    height: 10px;
    position: absolute;
    right: 0; bottom: 0; left: 0;
    background: linear-gradient(90deg,#b2ff77,#ffc300,#b2ff77,#ffc300);
    background-size: 120% 120%;
    animation: gradient-animation 2s ease infinite;
}

@keyframes gradient-animation {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.footer-menu-item a:after {
    background-color: var(--color-primary);
    height: 2px;
}


/* Buttons */

.btn {
    background-color: #000!important;
    border-radius: var(--button-border-radius);
    overflow: visible;
    padding: 0!important;
    transition: 0.5s ease;
}

.btn span {
    border-radius: var(--button-border-radius);
    box-shadow: inset 0px 0px 0px var(--button-outline-border-width) #000!important;    
    padding: var(--button-padding);
    transform: translateX(-5px) translateY(-5px);
    transition: 0.2s ease-out;
}

.btn span:hover {
    transform: translateX(0) translateY(0);
}

.btn.btn-primary span {
    background-color: var(--color-primary);
}

.btn:before {
    display: none;
}


/* Banner */

@media (min-width: 1600px) { 
    .banner {height: 700px;}
}

.hero-banner p {
    font-size: 34px;
}

.banner .bg-banner:before {
    background: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    content: '';
    opacity: 0.35;
    position: absolute;
    top: 0; right: 0; bottom: 43%; left: 0;
}

.banner.hero-banner .bg-banner:after {
    background: linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
    content: '';
    opacity: 0.75;
    position: absolute;
    top: 54%; right: 0; bottom: 0; left: 0;
}

.banner.hero-banner .bg-banner:before {
    bottom: 63%;
}

.hero-banner .carousel-item > div {
    align-items: end!important;
}

.hero-banner .container-fluid {
    margin-bottom: 60px;
}

.banner.banner-900 {
    aspect-ratio: 192/90;
    height: auto;
}

.banner.banner-900 .container > .row {
    justify-content: start!important;
}

.banner.banner-900.alt .container > .row {
    justify-content: end!important;
}

.banner.banner-900 .container > .row > .col-12 {
    width: 75%;
}

.banner.banner-900.alt .container > .row > .col-12 {
    width: 50%;
}

.banner.banner-900.alt-2 .container > .row > .col-12 {
    width: 60%;
}

.banner.banner-900:not(.alt) h2:not(:last-child), .section-cards-banner h2:not(:last-child) {
    margin-bottom: 1.75rem;
}

.banner.banner-900 h2 span, .section-cards-banner h2 span, .column-cta h2 span:last-child {
    position: relative;
}

.banner.banner-900:not(.alt) h2 span:after, .section-cards-banner h2 span:after, .column-cta h2 span:last-child:after  {
    background-image: url('./img/underline-scribble.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    height: 0.27em;
    display: block;
    position: absolute;
    content: '';
    right: 0; bottom: -10px; left: 0;
    transform: rotate(-4deg);
}

.section-cards-banner h2 span:after {
    transform: rotate(0);
}

.banner.banner-900.alt-2 h2 span:after {
    transform: rotate(-2deg);
}

.column-cta h2 span:last-child:after {
    transform: scaleX(-1);
}


/* Instagram Feed */

.row-instagram-feed .wrapper {
    background-color: #000;
    border-radius: 20px;
 
}

.row-instagram-feed .wrapper img {
    border: 2px solid #000;
    border-radius: 20px;
    transform: translateX(-5px) translateY(-5px);
    transition: 0.2s ease-out;
}

.row-instagram-feed .wrapper:hover img {
    transform: translateX(0) translateY(0);
}


/* Carousels */

.carousel-indicators {
    justify-content: end;
}

.carousel-indicators [data-bs-target] {
    border: 2px solid #fff;
    width: 16px;
    height: 16px;
    margin-right: 5px;
    margin-left: 5px;
    background-color: transparent!important;
}

.carousel-indicators .active {
    background-color: var(--color-primary)!important;
    border: none;
    height: 20px;
    width: 20px;
}

.carousel-prev, .carousel-next {
    height: 100px;
    width: 100px;
}


/* Sliders */

.slider-control-btn.prev svg {
    transform: scaleX(-1);
}


/* What We Do */

@media (min-width: 1696px) { 
    .section-what-we-do .container {
        max-width: 1696px;
    }
}

.section-what-we-do .padding-wrapper {
    padding: 96px;
}

.section-what-we-do .bg-secondary{
    background-image: url('./img/bg-secondary.jpg');
}

.what-we-do-carousel {
    aspect-ratio: 16/9;
}

.what-we-do-carousel .carousel-item {
    margin-top: -1px;
    height: calc(100% + 2px)!important;
}

.what-we-do-carousel-prev {
    position: absolute;
    top: 50%;
    transform: translateX(-100%) translateY(-50%);
    left: -76px;
}

.what-we-do-carousel-next {
    position: absolute;
    top: 50%;
    transform: translateX(100%) translateY(-50%);
    right: -76px;
}

.what-we-do-carousel-prev img, .what-we-do-carousel-next img {
    width: 24%;
}

.what-we-do-carousel-next img {
    transform: scaleX(-1);
}

.what-we-do-carousel-prev span, .what-we-do-carousel-next span {
    height: 100px;
    width: 100px;
    transform: translateX(-5px) translateY(-5px);
} 

.what-we-do-text img {
    position: absolute;
    top: 16px; right: 0;
    transform: rotate(30deg);
}

.section-what-we-do .hover-panel {
    aspect-ratio: 440/500;
}


/* Panels */

.panels .container > .row > div > div {
    background-color: #fff;
    border-radius: 50px;
    border: 2px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
    overflow: hidden;
}

.panels .column-content-wrapper {
    margin-top: 0;
    padding: 1.5rem;
}

.block-columns.panels .carousel-item img {
    border: none;
    border-radius: 0;
}

.panels h5 {
    margin-bottom: 1rem;
}



/* Hovering Panels */

.hover-panel {
    aspect-ratio: 440/500;
}

.hover-panel, .hover-panel > div {
    border-radius: 20px;
}

.hover-panel > div {
    border: 4px solid #000;
    transform: translateX(-9px) translateY(-9px);
    transition: 0.2s ease-out;
}

.hover-panel:hover > div {
    transform: translateX(0) translateY(0);
}

.hover-panel .bg-cover {
    transition: 0.2s ease-out;
}

.hover-panel:hover .bg-cover {
    opacity: 0.8;
}

.hover-panel .bg-cover:before {
    background: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    content: '';
    display: block;
    position: absolute;
    top: 0; right: 0; bottom: 68%; left: 0;
}


/* Scribbles */

.scribble-arrow-top-left:before {
    background-image: url('./img/arrow-scribble.png');
    background-size: 100%;
    background-repeat: no-repeat;
    content: '';
    display: block;
    position: absolute;
    width: 205px;
    aspect-ratio: 205/100;
    top: 20%; left: 3%;
    transform: rotate(45deg);
}

.scribble-arrow-top-right:before {
    background-image: url('./img/arrow-scribble.png');
    background-size: 100%;
    background-repeat: no-repeat;
    content: '';
    display: block;
    position: absolute;
    width: 205px;
    aspect-ratio: 205/100;
    top: 20%; right: 3%;
    transform: rotate(-30deg) scaleX(-1);
}

.scribble-arrow-top-right.banner:before {
    top: 12%; right: 2%;
    filter: invert(1);
    z-index: 3;
}

.scribble-kapow-bottom-right:after {
    background-image: url('./img/kapow-scribble.png');
    background-size: 100%;
    background-repeat: no-repeat;
    content: '';
    display: block;
    position: absolute;
    width: 243px;
    aspect-ratio: 243/200;
    right: 3%; bottom: 1%;
}


/* Cards Banner */

.cards-banner-bg {
    opacity: 0.45;
    top: 10%; right: 0; bottom: 10%; left: 0;
}

.cards-banner-gradient-top {
    background: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%);
    height: 15%;
    top: 0; right: 0; left: 0;
}

.cards-banner-gradient-bottom {
    background: linear-gradient(180deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 50%);
    height: 15%;
    bottom: 0; right: 0; left: 0;
}

.col-card-banner > div {
    transform: scale(1.28) rotate(15deg);
}

.col-card-banner:nth-child(odd) > div {
    transform: scale(1.28) rotate(-15deg);
}

.col-card-banner > div:after {
    background-color: #fff;
    border-radius: 25px;
    content: '';
    display: block;
    position: absolute;
    top: 5px; right: -5px; bottom: -5px; left: 5px;
}

.card-banner-img {
    border-radius: 25px;
    border: 2px solid #fff;
    position: relative;
    z-index: 1;
}


/* Posts */

.snippet {
    background-color: #000;
    border-radius: 50px;
}

.snippet > div  {
    border: 2px solid #000;
    border-radius: 50px;
    transform: translateX(-5px) translateY(-5px);
    transition: 0.2s ease-out;
}

.snippet:not(.performance-snippet):hover > div {
    transform: none;
}

.snippet h5 {
    font-family: 'MADE TOMMY 800', "Segoe UI", Roboto, "Helvetica Neue", Arial;  
    font-weight: 800; 
    margin-bottom: 1rem;
}

.snippet-btn, .slider-control-btn {
    border-radius: 50%;
}

.snippet-btn > span, .slider-control-btn > span {
    border-radius: 50%;
    height: 69px;
    width: 69px;
    padding: 0;
}

.snippet:hover .snippet-btn span, .slider-control-btn:hover > .span {
    transform: none;
}

.post-card-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 0.825rem;
}


/* Events */

.event-date-bubble {
    border-radius: 25px;
    display: inline-block;
    font-size: 0.825rem;
    top: 1rem; left: 1rem;
    margin-right: 1rem;
}

.row-column-events .snippet {
    height: 100%;
}


/* Timeline */

.row-timeline:not(:last-child) {
    margin-bottom: 64px;
}

.row-timeline:nth-child(odd) .timeline-content {
    margin: 0 128px 0 0px;
}

.row-timeline:nth-child(even) .timeline-content {
    margin: 0 0 0 128px;
}

.timeline h2 {
    font-size: 41px;
    margin-bottom: 1rem;
}

.timeline .img-fluid {
    border-radius: 20px;
    border: 2px solid #000;
}


/* Trustees - Troupes */

.slider-trustees .flickity-viewport {
    overflow: visible;
}

.slider-trustees .carousel-cell {
    margin: 0 12.5px;
    min-height: 100%;
    width: 442px;
}

.slider-trustees .carousel-cell > div {
}

.slider-trustees .carousel-cell > div, .slider-trustees .carousel-cell > div > div  {
    border-radius: 50px;
}

.slider-trustees .carousel-cell > div > div {
    border: 2px solid #000;
    transform: translateX(-5px) translateY(-5px);
}

.section-troupes-slider .carousel-cell h5 {
    font-size: 34px;
}

/* Team Modal */

.team-modal .modal-dialog {
    max-width: 1030px;
}

.team-modal .modal-content > div {
    transform: translateX(-5px) translateY(-5px);
}

.team-modal .bio.padding-wrapper {
    padding: 96px 64px 64px;
}

.team-modal .bio > div {
    max-height: 100%;
    overflow-y: auto;
}

.team-modal .bio > div::-webkit-scrollbar {
  width: 16px;
}

.team-modal .bio > div::-webkit-scrollbar-track {
  background: #fff;
  border: 2px solid #000;
  border-radius: 8px;
}

.team-modal .bio > div::-webkit-scrollbar-thumb {
  background: var(--color-primary);
  border: 2px solid #000;
  border-radius: 8px;
}

.team-modal .img-overlay {
    background: linear-gradient(0deg,rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 60%);
}

.team-modal .modal-close {
    position: absolute;
    top: 1rem; right: 1rem;
}


/* Testimonials Slider */

.testimonials-slider .carousel-cell {
    width: 474px;
}

.testimonials-slider .carousel-cell > div > div {
    background-color: #fff;
    border: 2px solid #000;
    border-radius: 50px;
    filter: drop-shadow(5px 5px 0px #000);
    flex-grow: 1;
    padding: 64px 32px;
}

.testimonials-slider .carousel-cell > div > div:before {
    background-image: url('./img/svg/icon-quotation-mark.svg');
    background-repeat: no-repeat;
    background-size: 100%;
    content: '';
    display: block;
    margin-bottom: 1.5rem;
    position: relative;
    height: 50px;
    width: 70px;
}

.testimonials-slider .carousel-cell:nth-child(3n+1) > div > div:before {
    filter: drop-shadow(-5px 5px 0px var(--color-secondary));   
}

.testimonials-slider .carousel-cell:nth-child(3n+2) > div > div:before {
    filter: drop-shadow(-5px 5px 0px var(--color-primary));   
}

.testimonials-slider .carousel-cell:nth-child(3n+3) > div > div:before {
    filter: drop-shadow(-5px 5px 0px var(--color-tertiary));   
}

.testimonials-slider h4 {
    font-family: 'MADE TOMMY 800';
    font-weight: 800;
}

.testimonials-slider h4 {
    margin-bottom: 1rem;
}


/* Genre Trio */

.genre-trio .logo {
    padding: 48px 0;
    min-width: 150px;
    width: 150px;
}

.genre-trio .logo img {
    width: 27%;
}

.genre-trio .genres > div {
    flex: 1 0 0%;
    padding: 32px 64px;
}

.genre-trio .genres > div:nth-child(3n+1) {
    background-color: var(--color-secondary);
}

.genre-trio .genres > div:nth-child(3n+2) {
    background-color: var(--color-primary);
}

.genre-trio .genres > div:nth-child(3n+3) {
    background-color: var(--color-tertiary);
}

.genre-trio h3 {
    font-size: 59px;
}


/* Team Members */

.section-team-members .intro h3 {
    font-size: 59px;
}

.team-member-cutout .bg {
    background-color: var(--color-tertiary);
    border-radius: 20px;
    content: '';
    display: block;
    position: absolute;
    top: 25%; right: 0; bottom: 0; left: 0;
    transition: 0.2s ease-out;
}

.team-member-cutout:hover .bg {
    top: 30%;
}

.col-team-member:nth-child(4n+2) .bg {
    background-color: #202020;
}

.col-team-member:nth-child(4n+3) .bg {
    background-color: var(--color-primary);
}

.col-team-member:nth-child(4n+4) .bg {
    background-color: var(--color-secondary);
}

.team-member-cutout img {
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}


/* CTA */

.section.column-cta {
    padding-top: calc(var(--section-padding) * 2);
    padding-bottom: calc(var(--section-padding) * 2);
}

.column-cta .container > .row > div > div {
    background-color: #fff;
    border-radius: 50px;
    border: 2px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
    padding: 96px;
}


/* Panel Slider */

.panel-slider .ayoc-title-wrapper h2 {
    font-size: var(--font-size-h3);
}

.panel-slider .carousel-cell {
    min-height: 100%;
    width: 474px;
}

.panel-slider .carousel-cell > div > div {
    background-color: #fff;
    border-radius: 50px;
    border: 2px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
    flex-grow: 1;
    padding: 64px 32px;
    min-height: 304px;
}


/* Accordions */

.faqs-accordion {
    font-size: 0.825rem;
}

.faqs-accordion h4 {
    font-size: var(--font-size-h5);
}

.faqs-accordion .subtitle {
    text-transform: none;
}

.faqs-accordion .accordion.contain-text .accordion-collapse > div {
    max-width: 672px;
}


/* Contact Form */

.contact-form h2 {
    font-size: var(--font-size-h3);
}

.contact-form > .boxed > .row {
    border-radius: 50px;
    border: 4px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
    overflow: hidden;
}

.form-control:not(.form-control-footer-subscribe), .form-select, .custom-file-input + label {
    border: 2px solid var(--form-control-border-color);
    border-radius: 20px;
    font-size: 0.825rem;
    line-height: 1;
    padding: 0.675rem;
}

 .form-check .form-check-input {
    border-color: #000!important;
    border-radius: 5px;
    border-width: 2px!important;
    margin: 0rem 0.5rem 1px 0;
    height: 24px;
    width: 24px;
    min-width: 24px;
}

.form-check .form-check-input:checked {
    background-color: #000;
}

.form-sidebar hr {
    height: 5px;
}


/* Map */

.map-outer {
    border-radius: 50px;
    border: 4px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
    overflow: hidden;
}



/* Direction Tabs */

.directions-tabs .nav-link:first-child, .directions-tabs .tab-pane:first-child {
    background-color: var(--color-tertiary);
}

.directions-tabs .nav-link:nth-child(2), .directions-tabs .tab-pane:nth-child(2) {
    background-color: var(--color-secondary);
}

.directions-tabs .nav-link:nth-child(3), .directions-tabs .tab-pane:nth-child(3) {
    background-color: var(--color-quaternary);
}

.directions-tabs .nav-link:nth-child(4), .directions-tabs .tab-pane:nth-child(4) {
    background-color: var(--color-primary);
}

.directions-tabs .nav-tabs {
    border: none;
}

.directions-tabs .nav-link {
    border-top-left-radius: 50px;
    border-top-right-radius: 50px;
    border: none;
    height: 100px;
    width: 230px;
}

.directions-tabs .nav-link:not(:first-child) {
    margin-left: -50px;
}

.directions-tabs .nav-link:first-child {
    z-index: 3;
}

.directions-tabs .nav-link:nth-child(2) {
    z-index: 2;
}

.directions-tabs .nav-link:nth-child(3) {
    z-index: 1;
}

.directions-tabs .nav-link:nth-child(4) {
    z-index: 0;
}

.directions-tabs .nav-link.active {
    z-index: 4;
}

.directions-tabs .nav-link img {
    height: 39px;
    width: auto;
}

.directions-tabs .tab-pane {
    border-radius: 50px;
    border-top-left-radius: 0!important;
    padding: 48px 64px;
}

.directions-tabs .tab-pane:nth-child(3) > div {
    filter: invert(1);
}

.directions-tabs h5 {
    margin-bottom: 0.75rem;
}



/* Weekly Youth Sessions */

.weekly-sessions-slider .carousel-cell {
    margin-right: 28px;
    min-height: 100%;
    width: 442px;
}

.weekly-sessions-slider-snippet {
    border: 2px solid #000;
    filter: drop-shadow(5px 5px 0px #000);
}


/* Blog */

.news-index-feat-post h2 {
    font-size: var(--font-size-h4);
}

.post-banner {
    height: 700px;
}

.post-title, .single-event .post-title > div {
    max-width: 672px;
}

.single-event .post-title > div:first-child {
    margin-bottom: 9px;
}



.post-title h1 {
    font-size: var(--font-size-h3);
}

.post-block .slider-control-btn.prev, .post-block .slider-control-btn.next {
    position: absolute;
    top: 50%; left: 1rem;
    transform: translateY(-50%);
}

.post-block .slider-control-btn.next {
    top: 50%; right: 1rem; left: auto;
    transform: translateY(-50%);
}

.post-cat-filter > div a {
    border-width: 2px;
    margin: 0 1rem;
    padding: 0;
}


/* Performances */

.performance-modal .modal-content {
    background-color: transparent; 
    border: none;
}


/* Events */

.isotope-grid-nav, .gallery-grid-nav {
    margin-bottom: -20px;
}

.isotope-grid-nav .btn, .gallery-grid-nav .btn {
    margin: 0 10px 20px;
}

.isotope-grid-nav .btn.btn-primary.active span, .gallery-grid-nav .btn.btn-primary.active span {
    background-color: var(--color-secondary);
}

.event-month-select .form-select {
    max-width: 390px;
}

.event-month-select p {
    white-space: nowrap;
}


/* Gallery */

.gallery-wrapper {
    margin: 0 -12.5px -25px;
}

.gallery-item-wrapper {
    margin-bottom: 25px;
    padding: 0 12.5px;
    width: 25%;
}

.gallery-item {
    background-size: cover;
    background-position: center;
    border-radius: 20px;
    cursor: pointer;
}

.gallery-item.square {
    aspect-ratio: 1/1;
}

.gallery-item.portrait {
    aspect-ratio: 3/4;
}

.gallery-item.landscape {
    aspect-ratio: 4/3;
}


/* Gallery Modal */

.gallery-modal .modal-dialog {
    max-width: 1024px;
}

.gallery-modal .modal-content {
    background-color: transparent!important;
}

.gallery-modal .top, .gallery-modal .bottom.padding-wrapper {
    padding: 32px!important;
}

.gallery-modal-img {
    aspect-ratio: 16/10;
}

.gallery-modal-img svg {
    position: absolute;
    top: 0.5rem; right: 0.5rem;
}


/* Media Queries */

/* 1600px */
@media (max-width: 1599px) { 
    .navbar .social-icons a {margin: 0 3px!important;} 
    .navbar .social-icons a:first-child {margin-left: 0!important;}
    .navbar .social-icons a:last-child {margin-right: 0!important;}
    .banner.banner-900 .container > .row > .col-12 {width: 66.66666%;}
    .banner.banner-900 h2 {font-size: 72px;} 
    .shrink-h2 h2 {font-size: var(--font-size-h3);}
    .gallery-modal .modal-dialog {max-width: 896px;}
}


/* 1440px */
@media (max-width: 1439px) { 
    .what-we-do-carousel-prev {left: -48px;}
    .what-we-do-carousel-next {right: -48px;}
    .what-we-do-carousel-prev span, .what-we-do-carousel-next span {height: 72px; width: 72px;} 
    .banner.banner-900 h2 {font-size: 64px;}
    .scribble-arrow-top-left:before, .scribble-arrow-top-right:before {width: 160px;}
    .scribble-kapow-bottom-right:after {width: 200px;}  
    .row-column-events > div:last-child, .row-column-posts > div:last-child {display: none!important;}
    .row-column-posts > div {width: 50%;}
    .team-modal .modal-dialog {max-width: 720px;}
    .team-modal .bio.padding-wrapper {padding: 64px 32px 32px; font-size: 0.825rem;}  
    .team-modal .modal-close {top: 0.75rem; right: 1.5rem; width: 24px;}
    .team-modal h4 {font-size: 32px;}
    .panels .column-content-wrapper {padding: 1rem; font-size: 0.825rem;}
    .gallery-wrapper {margin: 0 -8px -16px;}
    .gallery-item-wrapper {margin-bottom: 16px; padding: 0 8px;}
    .gallery-modal .modal-dialog {max-width: 640px;}
}


/* 1200px */
@media (max-width: 1199px) { 
    .hero-banner h1 {font-size: 72px;}
    .hero-banner p {font-size: 29px;}
    .row-instagram-feed .col-6:nth-child(5), .row-instagram-feed .col-6:nth-child(6) {display: none;}
    .what-we-do-carousel-prev {left: -16px;}
    .what-we-do-carousel-next {right: -16px;}
    .banner.banner-900 {aspect-ratio: 16/9;}
    .scribble-arrow-top-left:before {top: 10%; left: 1%;}
    .scribble-kapow-bottom-right:after {right: 2%;} 
    .scribble-arrow-top-left:before, .scribble-arrow-top-right:before {width: 120px;}
    .scribble-kapow-bottom-right:after {width: 150px;} 
    .scribble-arrow-top-right.banner:before {top: 8%; right: 1%;}
    .timeline-stem {width: 128px;}
    .gallery-item-wrapper {width: 33.33333%}
    .gallery-modal .modal-dialog {max-width: calc(100% - 192px);}
}

/* 992px */
@media (max-width: 991px) { 
    .navbar-logo {height: 30px;}
    .hero-banner h1 {font-size: 56px;}
    .hero-banner p {font-size: 24px;}  
    .what-we-do-text img {right: -48px; width: 96px;} 
    .banner.banner-900 h2 {font-size: 48px;}
    .col-card-banner > div:after {top: 3px; right: -3px; bottom: -3px; left: 3px;}
    .scribble-arrow-top-right.banner:before {width: 80px;}
    .scribble-arrow-top-right.banner:before {top: 6%; right: 5px;}
    .row-column-events > div:last-child, .row-column-posts > div:last-child {display: block!important;}
    .row-column-posts > div {width: 100%;}
    .meet-the-team-cta .column-video-wrapper.landscape, .quad .column-video-wrapper.landscape {aspect-ratio: 1/1;}
    .section-timeline .container {max-width: 100%;}
    .timeline h2 {font-size: 32px;}
    .row-timeline:nth-child(odd) .timeline-content {margin: 0 64px 0 0px;}
    .row-timeline:nth-child(even) .timeline-content {margin: 0 0 0 64px;}
    .timeline-content p {font-size: 0.825rem;}
    .timeline-stem {width: 64px;}
    .genre-trio .genres > div {padding: 32px 48px;}
    .genre-trio h3 {font-size: 49px;}
    .panels .column-content-wrapper {padding: 1.5rem; font-size: 1rem;}
    .directions-tabs .nav-link {height: 100px; width: 190px;}
}

/* 768px */
@media (max-width: 767px) { 
    .btn span {transform: translateX(-3px) translateY(-3px);}
    .navbar-right .btn span {padding-left: 1rem; padding-right: 1rem;}
    .navbar-logo {height: 20px;}
    .hamburger {width: 30px; height: 21px;}
    .hamburger span {height: 3px;}
    .hamburger span:nth-child(2) {top: 9px;}
    .hamburger span:nth-child(3) {top: 18px;}
    .hero-banner h1 {font-size: 42px;}
    .hero-banner p {font-size: 17px;} 
    .hero-banner .container-fluid {margin-bottom: 40px;}  
    .footer-subscribe .form-control {border-radius: 32px;height: 64px;padding: 0 132px 0 15px;}
    .footer-subscribe .btn {top: calc(50% + 2px);}
    .carousel-indicators [data-bs-target] {width: 8px; height: 8px; margin-right: 3px; margin-left: 3px;}
    .carousel-indicators .active {height: 12px; width: 12px;}
    .section-what-we-do .padding-wrapper {padding: 32px;}
    .what-we-do-carousel-prev {left: 24px;}
    .what-we-do-carousel-next {right: 24px;}
    .what-we-do-carousel-prev span, .what-we-do-carousel-next span {height: 48px; width: 48px;} 
    .br-50, .snippet, .snippet > div, .panels .container > .row > div > div {border-radius: 25px;}
    .what-we-do-text img {right: 0; width: 48px;} 
    .banner.banner-900 h2 {font-size: 36px;}
    .banner.banner-900 h2 span:after, .section-cards-banner h2 span:after {bottom: -5px;}
    .scribble-arrow-top-left:before {width: 80px;}
    .scribble-kapow-bottom-right:after {width: 100px;} 
    .col-card-banner > div:after, .card-banner-img {border-radius: 10px;}
    .snippet-btn > span, .slider-control-btn > span {height: 48px; width: 48px;}
    .snippet-btn svg, .slider-control-btn svg {height: 20px;}
    .timeline h2 {font-size: 24px;}
    .slider-trustees .carousel-cell {margin: 0 10px; width: 300px;}
    .slider-trustees .carousel-cell > div, .slider-trustees .carousel-cell > div > div, .column-cta .container > .row > div > div, .contact-form > .boxed > .row {border-radius: 25px;}
    .team-modal .modal-dialog {max-width: 440px;}
    .team-modal .bio {position: relative!important;}
    .team-modal .bio.padding-wrapper {padding: 1.5rem; font-size: 1rem;} 
    .team-modal .modal-close {top: 0.5rem; right: 0.5rem;}
    .testimonials-slider .carousel-cell, .panel-slider .carousel-cell, .weekly-sessions-slider .carousel-cell {width: 316px;}
    .testimonials-slider .carousel-cell > div > div:before {height: 25px; width: 35px;}
    .testimonials-slider .carousel-cell > div > div, .panel-slider .carousel-cell > div > div {border-radius: 25px; padding: 32px 16px;}
    .testimonials-slider .carousel-cell:nth-child(3n+1) > div > div:before {filter: drop-shadow(-2px 2px 0px var(--color-secondary));}
    .testimonials-slider .carousel-cell:nth-child(3n+2) > div > div:before {filter: drop-shadow(-2px 2px 0px var(--color-primary));}
    .testimonials-slider .carousel-cell:nth-child(3n+3) > div > div:before {filter: drop-shadow(-2px 2px 0px var(--color-tertiary));} 
    .panel-slider .carousel-cell > div > div {min-height: 176px;}
    .genre-trio .logo {padding: 24px 0; min-width: 72px; width: 72px;}
    .genre-trio .genres > div {padding: 16px 32px;}
    .genre-trio h3 {font-size: 30px;}
    .section-team-members .intro h3 {font-size: var(--font-size-h3-mobile);}
    .section.column-cta {padding-top: calc(var(--section-padding-mobile) * 2); padding-bottom: calc(var(--section-padding-mobile) * 2);}
    .column-cta .container > .row > div > div {padding: 1.5rem;}
    .panel-slider .ayoc-title-wrapper h2 {font-size: var(--font-size-h3-mobile);}
    .shrink-h2 h2 {font-size: var(--font-size-h2-mobile);}
    .contact-form h2 {font-size: var(--font-size-h3-mobile);}
    .contact-form .padding-wrapper {padding: 32px;}
    .map-outer {border-radius: 25px;}
    .directions-tabs .nav-link {border-top-left-radius: 25px; border-top-right-radius: 25px; height: 50px;width: 113px;}
    .directions-tabs .nav-link:not(:first-child) {margin-left: -25px;}
    .directions-tabs .nav-link img {height: 20px;}
    .directions-tabs .tab-pane {border-radius: 25px;padding: 24px 32px;}
    .section-troupes-slider .carousel-cell h5 {font-size: 22px;}
    .news-index-feat-post h2 {font-size: var(--font-size-h4-mobile);}
    .post-banner {height: 300px;}
    .post-title h1 {font-size: var(--font-size-h3-mobile);}
    .navbar-menu .hamburger {top: 10px;right: 10px;}
    .isotope-grid-nav, .gallery-grid-nav {margin-bottom: -10px;}
    .isotope-grid-nav .btn, .gallery-grid-nav .btn {margin: 0 5px 10px;}
    .gallery-wrapper {margin: 0 -4px -8px;}
    .gallery-item-wrapper {margin-bottom: 8px; padding: 0 4px; width: 50%;}
    .gallery-item {border-radius: 8px;}
    .gallery-modal .modal-dialog {max-width: calc(100% - 128px);}
    .gallery-modal .top, .gallery-modal .bottom.padding-wrapper {padding: 16px!important;}
    .gallery-modal-img {aspect-ratio: 1/1;}
    .gallery-modal-img svg {width: 24px;}
    .gallery-modal .what-we-do-carousel-prev {left: -8px;}
    .gallery-modal .what-we-do-carousel-next {right: -13px;}
}

/* 576px */
@media (max-width: 575px) { 
    .banner.banner-900 {aspect-ratio: 4/3;} 
    .banner.banner-900 h2 {font-size: 26px;}
    .banner.banner-900 h2:not(:last-child) {margin-bottom: 1.25rem;}
    .banner.banner-900 .btn-row.mt-2rem {margin-top: 1.25rem;}
    .scribble-arrow-top-left:before {width: 40px; top: 7%; left: -1%;}
    .scribble-kapow-bottom-right:after {width: 75px;}
    .col-card-banner > div:after {top: 2px; right: -2px; bottom: -2px; left: 2px;} 
    .card-banner-img {border: 1px solid #fff;}
    .scribble-arrow-top-right.banner:before {display: none;}
    .banner.banner-900 .container > .row > .col-12, .banner.banner-900.alt .container > .row > .col-12, .banner.banner-900.alt-2 .container > .row > .col-12 {width: 100%;}
    .banner.banner-900 .bg-banner {opacity: 0.7;}
    .row-timeline:nth-child(odd) .timeline-content {margin: 0 20px 0 0px;}
    .row-timeline:nth-child(even) .timeline-content {margin: 0 0 0 20px;}
    .timeline-stem {width: 28px;}
    .team-modal .modal-dialog {max-width: calc(100% - 32px);}
    .genre-trio .logo {padding: 24px 0; min-width: 72px; width: 72px;}
    .genre-trio .genres > div {padding: 16px;}
    .genre-trio h3 {font-size: 26px;}
    .directions-tabs .nav-link {width: 27%;}
    .gallery-modal .modal-dialog {max-width: calc(100% - 32px);}
    .gallery-modal .what-we-do-carousel-prev {left: 32px; z-index: 2;}
    .gallery-modal .what-we-do-carousel-next {right: 32px; z-index: 2;}
}