/*
Theme Name: ACAC Theme
Version: 1.0.1
Text Domain: acac
*/

/*------------------------------------------------------
    overwrite css start
------------------------------------------------------*/
* {
  box-sizing: border-box;
}

/* Lock the body scroll while the navigation circle/overlay is open so
   the page underneath cannot scroll behind the open menu. */


html {
  background-color: #000000;
}
html,
body {
  width: 100%;
  min-height: 100%;
}
html, body {
  overscroll-behavior: none;
}


body.acac-no-scroll {
  overflow: hidden;
}

/* Skip link â€” visible only on keyboard focus, jumps to #acac-main-content. */

.acac-skip-link {
  position: absolute;
  top: -100px;
  left: 16px;
  z-index: 9999;
  padding: 12px 22px;
  background: #000000;
  color: #ffffff;
  font-family: "poppins",sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  border-radius: 4px;
  transition: top 200ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-skip-link:focus,
.acac-skip-link:focus-visible {
  top: 16px;
  outline: 2px solid #ffffff;
  outline-offset: 2px;
}

html,
body {
  width: 100%;
  min-height: 100%;
}

body {
  margin: 0;
  background: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 18px;
}

.container {
    max-width: 1479px;
    width: 100%;
    padding: 0 42px;
    margin: 0 auto;
    box-sizing: border-box;
}
.acac-menu a {
  color: #000000;
  text-decoration: none;
}

.acac-menu button {
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;    
    -webkit-tap-highlight-color: transparent;
    outline: none;
    box-shadow: none;
}

.acac-menu__open img,
.acac-menu__open svg {
    display: block;
    width: 27.8146px;
}

/* Once the svg-image script replaces the <img> with inline <svg>, the
   paths still carry their original fill="black" attribute. CSS fill has
   higher precedence than that presentation attribute, so this rule
   actually wins and lets the icon be themed via the parent's `color`. */

.acac-menu__open svg path {    
    transition: fill 240ms ease;
}

.acac-menu .is-active + button{
  border: 2px solid #fff;
}

.acac-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
h1{
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: "aktiv-grotesk-extended", sans-serif;
  font-weight: 900;
  font-size: 75px;
  line-height: 1.15;
  margin-top: 0;
}
h2{
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: "aktiv-grotesk-extended", sans-serif;
  font-weight: 900;
  font-size: 60px;
  line-height: 1.15;
  margin-top: 0;
}
h3{
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: "aktiv-grotesk-extended", sans-serif;
  font-weight: 900;
  font-size: 40px;
  line-height: 1.15;
  margin-top: 0;
}
h4 {
    letter-spacing: 0;
    font-family: "aktiv-grotesk-extended", sans-serif;
    font-weight: 800;
    font-size: 30px;
    line-height: 1.15;
    margin-top: 0;
}
h5{
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: "aktiv-grotesk-extended", sans-serif;
  font-weight: 900;
  font-size: 30px;
  line-height: 1.15;
      margin-top: 0;
}
h6{
  letter-spacing: 0;
  text-transform: uppercase;
  font-family: "aktiv-grotesk-extended", sans-serif;
  font-weight: 900;
  font-size: 26px;
  line-height: 1.15;
      margin-top: 0;
}
p{
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  color: #FFFFFF;
  line-height: 1.4;
margin-top: 0;
}


/* link button style here */

.btn-style,
.em.pixelbones .em-event-content a.btn-style {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "poppins",sans-serif;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    text-decoration: none;
    border-radius: 10px 41px 41px 10px;
    background: #000000;
    color: #ffffff;
    border: 0;
    overflow: hidden;
    padding: 18px 40px;
    transition: background-color 500ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease;
    color: #fff !important;
}

.em.pixelbones .em-event-content a.btn-style {
background: #000000 !important;
color: #ffffff !important;
}

.btn-style:hover,
.btn-style:focus-visible{
    background: #5d0e4d;
    color: #ffffff;
}
.em.pixelbones .em-event-content a.btn-style:hover,
.em.pixelbones .em-event-content a.btn-style:hover span,
.em.pixelbones .em-event-content a.btn-style:focus-visible,
.em.pixelbones .em-event-content a.btn-style:focus-visible span {
    background: #5d0e4d !important;
    color: #ffffff !important;
    opacity: 1 !important;
}
.btn-style::before, .btn-style::after,
.em.pixelbones .em-event-content a.btn-style::before, .em.pixelbones .em-event-content a.btn-style::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    transform: translateY(-50%);
    transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.btn-style::before{
    left: 13px;
    border-right: 16px solid #ffffff;
}
.em.pixelbones .em-event-content a.btn-style::before {
    left: 13px;
    border-right: 16px solid transparent;
}
.btn-style:hover::before, .btn-style:focus-visible::before,
.em.pixelbones .em-event-content a.btn-style:hover::before, .em.pixelbones .em-event-content a.btn-style:focus-visible::before  {
    transform: translate(-60px, -50%);
}
.btn-style:hover::after, .btn-style:focus-visible::after,
.em.pixelbones .em-event-content a.btn-style:hover::after, .em.pixelbones .em-event-content a.btn-style:focus-visible::after  {
    transform: translate(-46px, -50%);
}
.btn-style::after,
.em.pixelbones .em-event-content a.btn-style.btn-style::after  {
    right: -30px;
    border-left: 16px solid #ffffff;
}
.btn-style span,
.em.pixelbones .em-event-content a.btn-style span {
    position: relative;
    z-index: 1;
    transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.btn-style:hover span, .btn-style:focus-visible span,
.em.pixelbones .em-event-content a.btn-style:hover span, .em.pixelbones .em-event-content a.btn-style:focus-visible span {
    transform: translateX(-22px);
}

.btn-style-white.btn-style{
  border: 1px solid #000;
  background-color: #fff;
  color: #000 !important;
}
.btn-style-white.btn-style:hover{
  border: 1px solid #000;
  background-color: #EC81FF;
  color: #000 !important;
}
.btn-style-white.btn-style::before {
    border-left: 16px solid #000;
    border-right: 0;
    left: 40px;
}
.btn-style-white.btn-style::after { 
    border-left: 16px solid #000;
}

.salmon-pink-hover.btn-style,
.em.pixelbones .em-event-content a.salmon-pink-hover.btn-style
 {
    border: 1px solid #000;
    background-color: #fff;
    color: #000 !important;
    padding: 20px 40px 15px 37px;
    letter-spacing: -0.05em;
}
.salmon-pink-hover.btn-style::before,
.em.pixelbones .em-event-content a.salmon-pink-hover.btn-style::before { 
    border-right: 16px solid #000;
}
.salmon-pink-hover.btn-style::after,
.em.pixelbones .em-event-content a.salmon-pink-hover.btn-style::after { 
    border-left: 16px solid #000;
}
.salmon-pink-hover.btn-style:hover,
.em.pixelbones .em-event-content a.salmon-pink-hover.btn-style:hover{
  border: 1px solid #000;
  background-color: #FF8681;
  color: #000 !important;
}
a.salmon-pink-hover.btn-style:before, a.salmon-pink-hover.btn-style:after
.em.pixelbones .em-event-content a.salmon-pink-hover.btn-style:before, .em.pixelbones .em-event-content a.salmon-pink-hover.btn-style:after{
    display: none;
}
/* link button style End */

/* simple link button style Start */

.btn-style-simple {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 15px 40px;
    border-radius: 10px 41px 41px 10px;
    background: #ffffff;
    color: #000000;
    border: 1px solid #000000;
    font-family: "poppins",sans-serif;
    font-size: 18px;
    line-height: 27px;
    font-weight: 400;
    text-transform: none;
    transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease, transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
}
.btn-style-simple:hover, .btn-style-simple:focus-visible {
    background: #5C17C3;
    color: #fff;
}
.btn-style-simple.salmon-pink-simple-hover:hover, .btn-style-simple.salmon-pink-simple-hover:focus-visible{
  background-color: #FF8681;
  color: #000;
}


.btn-hover-pink:hover {
    background-color: #EC81FF !important;
}

.btn-hover-dark-purple:hover {
    background-color: #5D0E4D !important;
}

.btn-hover-purple:hover {
    background-color: #5C17C3 !important;
}

.btn-hover-neon-purple:hover {
    background-color: #6C5CF7 !important;
}

.btn-hover-red-orange:hover {
    background-color: #C33417 !important;
}

.btn-hover-peach:hover {
    background-color: #FF8681 !important;
}

.btn-hover-neon-yellow:hover {
    background-color: #EBFF88 !important;
}
.btn-hover-dark-yellow:hover {
    background-color: #B7AC1F !important;
}

.btn-hover-neon-yellow.btn-style:hover::before, .btn-hover-dark-yellow.btn-style:hover::before, .btn-hover-peach.btn-style:hover::before, .btn-hover-pink.btn-style:hover::before {    
    border-left: 16px solid #000000; 
}
.btn-hover-neon-yellow.btn-style:hover::after, .btn-hover-dark-yellow.btn-style:hover::after, .btn-hover-peach.btn-style:hover::after, .btn-hover-pink.btn-style:hover::after {    
    border-left: 16px solid #000000;
}
.btn-hover-dark-yellow:hover, .btn-hover-neon-yellow:hover, .btn-hover-peach:hover, .btn-hover-pink:hover {
    color: #000000 !important;
}

/* simple link button style End */

/* Hide ONLY the hidden menu-toggle checkbox â€” narrowing this rule from
   `.acac-menu input` (which was also hiding the visible search field). */

#acac-menu-toggle {
  position: fixed;
  top: 0;
  left: 0;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.acac-menu__header {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100px;
  padding: 0 86px 0 97px;
  background: #000000;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
  transition:
    width 600ms cubic-bezier(0.22, 1, 0.36, 1),
    height 600ms cubic-bezier(0.22, 1, 0.36, 1),
    margin 600ms cubic-bezier(0.22, 1, 0.36, 1),
    border-radius 600ms cubic-bezier(0.22, 1, 0.36, 1),
    padding 600ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 500ms ease,
    box-shadow 500ms ease,
    opacity 260ms ease;
  will-change: box-shadow, width, background-color;
}

.acac-menu.is-scrolled .acac-menu__header {
    background-color: #000 !important;
}

.is-switch-pinned.is-menu-open nav.acac-menu__top-nav {
    transition: all 0.5s ease-in-out 1.2s;
}

.is-switch-pinned.is-logo-hidden a.acac-menu__brand.acac-menu__brand--full {
    visibility: hidden;
}

.is-switch-pinned .acac-hero-banner__switch {
    opacity: 1 !important;
    visibility: visible !important;
    top: -6px !important;
    z-index: 111;
    position: fixed;
    left: 0;
    right: 0;
    gap: 25px;
}

/* Theme color inversion â€” Figma 2414:13100. The Visitors design keeps the
   header dark; the Artists design inverts everything to light. We sync
   data-theme onto .acac-menu via JS so these selectors work even though the
   header lives outside .acac-page. */

.acac-menu[data-theme="artists"] .acac-menu__open {
  background: #ffffff;
}

.acac-menu[data-theme="artists"] .acac-menu__open span {
  background: #000000;
}

.acac-menu[data-theme="artists"] .acac-menu__mark::before {
  background: #000000;
}

.acac-menu[data-theme="artists"] .acac-menu__mark span:first-child {
  background: #000000;
}

.acac-menu[data-theme="artists"] .acac-menu__mark span:last-child {
  background: #ffffff;
}

.acac-menu[data-theme="artists"] .acac-menu__top-nav a {
    color: #fff;
}

.acac-menu[data-theme="artists"] .acac-banner__content h2 {
    color: #fff;
}

.is-open.acac-menu[data-theme="artists"] .is-search-open .acac-menu__search-icon {
    color: #fff;
}


/* Floating sticky-nav state â€” Figma 2414:13100.
   When the switch pins, the full-width header morphs into a centered 550x60
   pill. Color is already theme-correct via the rules above. */

.acac-menu.is-switch-pinned .acac-menu__header {
  width: 550.25px;
  height: 60px;
  margin: 16px auto 0;
  padding: 0 18px;
  border-radius: 30px;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.28);      
}

.is-scrolled.is-switch-pinned button.acac-menu__open {
    top: 6px;
    right: 8px;
    background-color: #000;
}
.is-scrolled.is-switch-pinned button.acac-menu__open .black-menu-con {
    display: none;
}
.is-scrolled.is-switch-pinned button.acac-menu__open .white-menu-con {
    display: block;
}

.acac-menu__brand {
  display: inline-flex;
  align-items: center;
}

.acac-menu__brand--full {
  width: 254px;
  height: 56px;
}

.acac-menu__mark {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: 70px;
  height: 39px;
}

.acac-menu__mark::before {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 41px;
  height: 39px;
  background: #ffffff;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  content: "";
}

.acac-menu__mark span:first-child {
  position: absolute;
  top: 0;
  left: 41px;
  width: 29px;
  height: 39px;
  border-radius: 39px 0 0 39px;
  background: #ffffff;
}

.acac-menu__mark span:last-child {
  position: absolute;
  top: 0;
  left: 53px;
  width: 17px;
  height: 39px;
  background: #000000;
}

.acac-menu__wordmark {
    display: block;
    margin-left: 12px;
    color: #ffffff;
    font-family: var(--font-body);
    font-weight: 600;
    line-height: 14px;
    text-transform: uppercase;
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: opacity 320ms ease, transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
    will-change: opacity, transform;
    letter-spacing: 0.30em;
    font-family: "aktiv-grotesk-thin", sans-serif;
}

.acac-menu__brand svg.svg-image {
    color: #fff;
}

.acac-menu[data-theme="artists"] .acac-menu__brand svg.svg-image {
    color: #e2e2e2;
}

.acac-menu__top-nav {
    position: absolute;
    top: 25px;
    right: 159px;
    left: auto;
    display: flex;
    align-items: center;
    gap: 23px;
    height: 52px;
    font-family: var(--font-body);
    font-size: 21px;
    font-weight: 400;
    line-height: 24px;
    transform: translate3d(0, 0, 0);
    transition: left 620ms cubic-bezier(0.76, 0, 0.24, 1), right 620ms cubic-bezier(0.76, 0, 0.24, 1), opacity 260ms ease, transform 620ms cubic-bezier(0.76, 0, 0.24, 1);
    will-change: transform, left, right;
}

.acac-menu__top-nav a, .acac-menu__search-toggle {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    color: #fff;
    transition: all 0.5s ease-in-out;
    font-size: 17px;
    font-weight: 400;
    font-family: "aktiv-grotesk-extended", sans-serif;
}
.acac-menu__top-nav a:hover, .acac-menu__subnav a:hover {
    color: #EC81FF !important;
}

.acac-menu__search {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 44px;
  min-height: 52px;
  overflow: hidden;
  transition: width 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-menu__search-toggle {
  position: relative;
  z-index: 3;
  width: 44px;
  height: 52px;
  flex: 0 0 44px;
  margin-left: auto;
  justify-content: center;
  transform: translate3d(0, 0, 0);
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-menu__search label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  width: 369px;
  height: 52px;
  padding: 0 62px 0 22px;
  border: 1px solid #ffffff;
  border-radius: 8px 26px 26px 8px;
  background: #000000;
  opacity: 0;
  transform: translate3d(22px, 0, 0) scaleX(0.94);
  transform-origin: right center;
  transition: opacity 220ms ease, transform 300ms cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
}

.acac-menu__search label span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
.acac-menu__header .acac-menu__search label, .acac-menu__overlay-header .acac-menu__search label {
    padding: 0 41px 0 23px;
}

/* Hide the "Search" placeholder label as soon as the user types anything
   (input no longer in :placeholder-shown state). Uses :has() so we can
   walk up to the label and reach its ::before pseudo. */

.acac-menu__search label:has(input:not(:placeholder-shown))::before {
  opacity: 0;
}

.acac-menu__search input {
    width: 100%;
    height: 50px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #ffffff;
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 50px;
    outline: 0;
    font-weight: 400;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
}
.acac-menu__search input#searchsubmit {
    display: none;
}

.acac-menu__search input::placeholder {
  color: #ffffff;
}

.acac-menu__search.is-search-open {
  width: 369px;
  background: transparent;
}

.acac-menu__search.is-search-open .acac-menu__search-toggle {
    transform: translate3d(0, 0, 0);
    padding-right: 19px;
}

.acac-menu__search.is-search-open label {
  opacity: 1;
  transform: translate3d(0, 0, 0) scaleX(1);
  pointer-events: auto;
}

/* Font Awesome magnifying-glass icon â€” replaces the old CSS-built icon. */

.acac-menu__search-toggle {
  border: 0 !important;
  background: transparent;
}

.acac-menu__search-icon {
  display: inline-block;
  font-size: 20px;
  line-height: 1;
  color: #ffffff;
  transition: all 0.5s ease-in-out;
}
.is-search-open i.fa {
    padding-right: 18px;
}
.acac-menu__open {
  position: absolute;
  top: 27px;
  right: 86px;
  z-index: 8;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #ffffff;
  transition: transform 420ms cubic-bezier(0.76, 0, 0.24, 1), background-color 240ms ease;
}

.acac-menu[data-phase="closed"] .acac-menu__open {
  background: #ffffff;
}

.acac-menu[data-phase="closed"] .acac-menu__open span {
  opacity: 1;
  transform: translate3d(0, 0, 0) rotate(0deg);
}

.acac-menu__open span {
    width: 27.8146px;
    height: 4px;
    margin: 2px 0;
    border-radius: 4px;
    background: #000000;
    transition: transform 320ms cubic-bezier(0.76, 0, 0.24, 1), opacity 220ms ease;
    border-radius: 10px;
}

.acac-menu__open span:first-child {width: 17.8691px;border-radius: 10px 10px 0 0;}

.acac-menu__open span:last-child {
    width: 17.8691px;
    border-radius: 0 0 10px 10px;
}

.acac-menu__stage {
  width: 100%;
  height: calc(100vh - 107px);
  min-height: 640px;
  background: #ffffff;
}

.acac-banner {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 0;
  overflow: hidden;
  background: #000000;
  color: #ffffff;
  --banner-band-height: 100%;
  --banner-ease: cubic-bezier(0.76, 0, 0.24, 1);
  --banner-smooth-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --banner-title-enter: 72vh;
    --banner-mask-intro-duration: 1800ms;
  --banner-mask-intro-delay: 2000ms; /*this controls the without walls length before images show*/
--banner-mask-drop-delay: 100ms;
  --title-slide-up-delay: 400ms;
  --title-slide-up-duration: 1s;								
  --banner-title-lower-duration: 1100ms;
  --banner-hover-out-duration: 2200ms;
  --without-walls-up-duration: 5500ms;
  --without-walls-up-delay: 300ms;
  --without-walls-up-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --banner-mask-fullscreen-width: 166vw;
  --without-walls-slide-x: 330px;
  --without-walls-slide-y: 0px;
  --without-walls-lower-x: calc(100vw - 232px - 100%);
  --without-walls-lower-y: 460px;
}
.acac-banner__title {
  position: absolute;
  top: 133px;
  left: 79px;
  z-index: 5;
  width: calc(100% - 150px);
  font-family: var(--font-display);
  font-weight: 900;
  line-height: 0.9;
  letter-spacing: 0;
  text-transform: uppercase;
  pointer-events: none;
}

.acac-banner__title-inner {
  position: relative;
  width: 100%;
  height: 100%;
}


.acac-banner__title h1 {
    width: max-content;
    font-size: 90px;
    color: #ffffff;
    opacity: 0;
    animation: acac-title-enter 1150ms var(--banner-ease) 150ms both;
    letter-spacing: 0.00em;
}

.acac-banner__title span {
    position: absolute;
    top: 101px;
    left: 3px;
    width: max-content;
    color: transparent;
    font-size: 90px;
    -webkit-text-stroke: 3px #ffffff;
    text-stroke: 3px #ffffff;
    opacity: 0;
    animation: acac-title-enter 1150ms var(--banner-ease) 150ms both, acac-title-lower var(--banner-title-lower-duration) cubic-bezier(0.22, 0.61, 0.36, 1) var(--banner-mask-intro-delay) forwards;
    z-index: 11;
    letter-spacing: 0.00em;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

.acac-banner__masks {
    position: absolute;
    top: 110px;
    left: -2px;
    z-index: 12;
    display: block;
    width: 100%;
    opacity: 0;
    /* Re-enable pointer events here — the parent .acac-banner__title has
       pointer-events: none (so the title text never blocks clicks/hovers
       on the slider underneath), and the mask inherits that. Re-enabling
       on the mask alone lets `mouseenter` fire on bannerMask so hovering
       the image triggers the same flow as the 5s auto-trigger. After the
       mask hides (visibility: hidden in slide-mode) pointer events are
       killed automatically, so this never blocks slider interaction. */
    pointer-events: auto;
    transform: translate3d(0, 0, 0) scaleY(0);
    transform-origin: center top;
    transition: top var(--banner-hover-out-duration) var(--banner-smooth-ease), left var(--banner-hover-out-duration) var(--banner-smooth-ease), width var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, transform var(--banner-hover-out-duration) var(--banner-smooth-ease), visibility 0ms linear 0ms;
    animation: acac-mask-drop var(--banner-mask-intro-duration) var(--banner-smooth-ease) var(--banner-mask-drop-delay) forwards;
    will-change: transform, opacity;
    backface-visibility: hidden;
}

.acac-banner__masks .svg-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  transform: scale(0);
  transform-origin: top left;
  opacity: 1;
  /* Starts at --banner-mask-intro-delay. */
  animation: imageScale 1s ease var(--banner-mask-intro-delay) forwards;
  transition: transform var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, filter 1100ms ease;
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.acac-banner.is-skip-intro .acac-banner__title h1,
.acac-banner.is-skip-intro .acac-banner__title span {
  animation: none;
  opacity: 1;
}

.acac-banner.is-skip-intro .acac-banner__title h1 {
  transform: translate3d(0, 0, 0);
}

.acac-banner.is-skip-intro .acac-banner__masks {
  animation: none;
  opacity: 0;
  visibility: hidden;
}

.acac-banner.is-skip-intro .acac-banner__slider {
  opacity: 1;
  visibility: visible;
  transition: none;
}

.acac-banner__slider {
  position: absolute;
  inset: 0 0 auto;
  z-index: 2;
  height: var(--banner-band-height);
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  background: #000000;
  transition: opacity 900ms ease, visibility 0ms linear 900ms;
}

.acac-banner__slide .acac-banner__content p {
    display: inline-block;
}

.acac-banner__slide {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 600ms ease;
}

.acac-banner__slide.is-current {
  z-index: 2;
  opacity: 1;
}

.acac-banner__slide.is-leaving {
  opacity: 0;
  transition: opacity 900ms ease;
}



/* Outgoing slide's image slides fully out through the left edge of the
   frame — -100% is one full image-width, so it clears the viewport
   completely instead of just nudging over. The incoming .is-current
   image keeps its own reveal + ken-burns zoom untouched. */
.acac-banner__slide.is-leaving img {
  transform: translateX(-100%);
  transition: transform 1000ms var(--banner-ease);
}
.acac-banner__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  will-change: transform, filter;
}

.acac-banner__slide.is-current img {
    animation: acac-slide-reveal 1800ms var(--banner-ease) both, acac-slide-zoom 7500ms ease-out 1800ms forwards;
}

.acac-banner__slide.is-current .no-location-link img {
	animation: none;
}
.acac-banner__content p span img {
    animation: none !important;
}
.acac-banner__slide::after {
  /*position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.28) 0%, rgba(0, 0, 0, 0.18) 42%, rgba(0, 0, 0, 0.62) 100%);
  content: "";*/
  
  position: absolute;
  inset: 0;
  /*background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%), linear-gradient(180deg, rgba(0, 0, 0, 0.00) 74.61%, rgba(0, 0, 0, 0.50) 85.84%);*/
  /*background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 74.61%, rgba(0, 0, 0, 0.50) 85.84%);*/
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.42) 0%, rgba(0, 0, 0, 0.42) 100%), linear-gradient(180deg, rgba(141, 141, 141, 0.00) 46.27%, rgba(0, 0, 0, 0.60) 80.1%);
  background-blend-mode: soft-light, normal;
  content: "";

  
}
body.home {
    background-color: #fff;
}
/* Each slide carries its OWN .acac-banner__content + .acac-banner__cta
   inside the <article>, so visibility now follows the slide's
   .is-current class — no more JS class-juggling. The counter and
   arrows still live outside the slider track. */

.acac-banner__content,
.acac-banner__cta {
  opacity: 0;
  visibility: hidden;
  transition: opacity 520ms ease, transform 620ms var(--banner-ease), visibility 0ms linear 620ms;
}

.acac-banner__counter,
.acac-banner__arrow {
  opacity: 0;
  visibility: hidden;
  transition: opacity 520ms ease, transform 620ms var(--banner-ease), visibility 0ms linear 620ms;
}

.acac-banner__slide.is-current .acac-banner__content,
.acac-banner__slide.is-current .acac-banner__cta {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  transition: opacity 620ms ease, transform 760ms var(--banner-ease), visibility 0ms linear 0ms;
}

/* Stagger the CTA's enter so it WAITS for the outgoing slide's CTA to
   finish sliding left + fading out — same staggered feel as the counter
   (which the JS delays by 360ms via setTimeout in setBannerSlide). The
   delay only applies on the way IN; the exit (no .is-current) keeps
   the immediate 320/420ms timing set on .acac-banner__cta itself, so
   the outgoing CTA leaves first, then the incoming one slides in from
   the left to its real position. */

.acac-banner__slide.is-current .acac-banner__cta {
  transition: opacity 620ms ease 360ms,
              transform 760ms var(--banner-ease) 360ms,
              visibility 0ms linear 360ms;
}

/* CTA entrance is gated on .acac-banner.is-slide-mode (matching the
   counter's pattern). On a hard refresh the first slide already has
   .is-current in the HTML, so without this rule the CTA paints in its
   final visible state on first frame and the JS class re-toggle never
   produces an animatable change. Holding the CTA at its hidden start
   state until the JS flips on .is-slide-mode gives the transition a
   real opacity/transform delta to animate. Higher specificity (extra
   .acac-banner ancestor + :not pseudo-class) so it overrides the
   .is-current visible rule above only during the pre-slide-mode phase. */
.acac-banner:not(.is-slide-mode) .acac-banner__slide.is-current .acac-banner__cta {
  opacity: 0;
  visibility: hidden;
  transform: translate3d(-74px, 0, 0);
}

.acac-banner__content {
    position: absolute;
    left: 88px;
    bottom: 81px;
    z-index: 6;
    width: 750px;
    transform: translate3d(-150px, 0, 0);
}

.acac-banner__content h2 {
    margin: 0 0 18px;
    font-size: 40px;
    line-height: 48px;
    letter-spacing: 0;
    text-transform: none;
    letter-spacing: -0.035em;
}

.acac-banner__content p a,
.acac-banner__content .no-location-link {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
    color: #fff;
}



.acac-banner__content p a:hover span.text-wrap-banner {
    text-decoration: underline;
}
.acac-banner__content p a span.text-wrap-banner{
    width: auto;
    height: initial;
    transition: all 0.5s ease-in-out;
}

.acac-banner__content .no-location-link {
	width: auto;
	height: initial;
	transition: all 0.5s ease-in-out;
}


/* Location-pin span: now wraps an inline <img src="ping-icon.svg">
   instead of being a CSS-drawn pin shape. The span only acts as a
   sizing/alignment box around the image. */

.acac-banner__content p span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 28px;
}

.acac-banner__content p span img {
  display: block;
  width: 100%;
  height: auto;
}

/* Counter still uses class-driven enter/exit since it's the one piece
   not duplicated per slide (it shows numeric state). */

.acac-banner__counter.is-exiting {
  opacity: 0;
  visibility: visible;
  transform: translate3d(-74px, 0, 0);
  transition: opacity 320ms ease, transform 420ms var(--banner-ease);
}

.acac-banner__counter.is-entering {
  transition: opacity 620ms ease, transform 760ms var(--banner-ease), visibility 0ms linear 0ms;
}

.acac-menu a.acac-banner__cta, .acac-banner__cta {
    position: absolute;
    right: 75px;
    bottom: 127px;
    z-index: 6;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #ffffff;
    font-family: var(--font-body);
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
    transform: translate3d(-74px, 0, 0);
    transition: opacity 320ms ease, transform 420ms var(--banner-ease), visibility 0ms linear 420ms;
}

.acac-banner__cta span {
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 15px solid #ffffff;
    transition: transform 420ms cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
    top: -3px;
    position: relative;
}

.acac-banner__cta:hover span,
.acac-banner__cta:focus-visible span {
  transform: translate3d(10px, 0, 0);
}

.acac-banner__counter {
    position: absolute;
    right: 75px;
    bottom: 85px;
    z-index: 6;
    display: grid;
    grid-template-columns: 40px 338px;
    align-items: center;
    gap: 2px;
    font-size: 14px;
    line-height: 20px;
    transform: translate3d(74px, 0, 0);
    font-family: "Aktiv Grotesk Ex", Arial, sans-serif;
    font-weight: 500;
}

.acac-banner__counter i {
  position: relative;
  display: block;
  height: 2px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.42);
}

.acac-banner__counter b {
  position: absolute;
  inset: 0 auto 0 0;
  display: block;
  width: 0;
  background: #ffffff;
}

.acac-banner__arrow {
  position: absolute;
  top: 50%;
  z-index: 7;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
  transform: translate3d(0, -50%, 0);
  transition: transform 320ms var(--banner-ease), background-color 220ms ease, box-shadow 220ms ease;
  outline: 0;
}

.acac-menu .acac-banner__arrow {
  background: #ffffff;
}

.acac-banner__arrow:hover,
.acac-banner__arrow:focus-visible {
  background: #B7AC1F;
  transform: translate3d(0, -50%, 0) scale(1.06);
}
.acac-banner__arrow:focus-visible {
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18), 0 0 0 3px rgba(255, 255, 255, 0.72);
}

.acac-banner__arrow--prev {
  left: -46px;
}

.acac-banner__arrow--next {
  right: -46px;
}

.acac-banner__arrow::before {
  position: absolute;
  top: 38px;
  width: 0;
  height: 0;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  content: "";
}

.acac-banner__arrow--prev::before {
  right: 20px;
  border-right: 12px solid #000000;
}

.acac-banner__arrow--next::before {
  left: 20px;
  border-left: 12px solid #000000;
}

/* Wrapper gates visibility of all hero slider blocks. Hidden until the
   .acac-banner__title span's acac-span-slide-up animation fully finishes,
   then appears immediately (no extra pause) — delay is calc()'d from the
   exact same --title-slide-up-delay/--title-slide-up-duration variables
   used on the title span, so this can never drift out of sync with it. */
.hero-slider-wrap {
  visibility: hidden;
  transition: visibility 0ms linear;
}

.acac-banner.is-slide-mode .hero-slider-wrap {
  visibility: visible;
  transition-delay: var(--title-slide-up-delay);
}

.acac-banner.is-slide-mode .acac-banner__slider,
.acac-banner.is-title-locked .acac-banner__slider {
  opacity: 1;
  visibility: visible;
  /* Same delay as .hero-slider-wrap above, so the slider content fades in
     at the exact same moment the wrapper reveals it. */
  transition: opacity 600ms ease var(--title-slide-up-delay),
              visibility 0ms linear var(--title-slide-up-delay);
}

/* Legacy preview rules — kept inert because the .is-mask-hover class is no
   longer added by the JS, and the `:hover` sibling was fighting the
   .is-slide-mode zoom-out by re-positioning the wrapper to viewport
   center mid-flight. */
.acac-banner.is-mask-hover .acac-banner__masks {
  top: 50%;
  left: 50%;
  z-index: 6;
  width: var(--banner-mask-fullscreen-width);
  opacity: 1;
  visibility: visible;
  transform: translate3d(-50%, -50%, 0) scale3d(1.08, 1.08, 1);
  transform-origin: center center;
  transition: top var(--banner-hover-out-duration) var(--banner-smooth-ease), left var(--banner-hover-out-duration) var(--banner-smooth-ease), width var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, transform var(--banner-hover-out-duration) var(--banner-smooth-ease), visibility 0ms linear var(--banner-hover-out-duration);
  animation: none;
}

.acac-banner.is-mask-hover .acac-banner__masks img {
  opacity: 1;
  filter: brightness(1.05);
  transform: scale(1.1);
  transition: transform var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, filter 1100ms ease;
}

.acac-banner.is-mask-revealing .acac-banner__masks {
  opacity: 0;
  transform: translate3d(-50%, -50%, 0) scale3d(1.28, 1.28, 1);
  transition: top var(--banner-hover-out-duration) var(--banner-smooth-ease), left var(--banner-hover-out-duration) var(--banner-smooth-ease), width var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, transform var(--banner-hover-out-duration) var(--banner-smooth-ease), visibility 0ms linear var(--banner-hover-out-duration);
}

.acac-banner.is-mask-revealing .acac-banner__masks img {
  filter: brightness(1.1);
  opacity: 0;
  transform: scale(1.24);
  transition: transform var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, filter 1100ms ease;
}

.acac-banner.is-slide-mode .acac-banner__masks {
  /* Mask wrapper stays at its drop position with the inner <img> owning
     the zoom. We do NOT set `animation: none` here — the acac-mask-drop
     animation's `forwards` fill keeps the wrapper at opacity: 1 /
     scaleY(1) (visible). Removing it would snap the wrapper back to
     base opacity: 0 / scaleY(0) and the user would never see the inner
     image's zoom-out. Wrapper just flips to visibility: hidden after
     the inner image has finished its 1200ms scale + fade. */
     visibility: hidden;  /*make slide show */
  transition: visibility 1000ms linear 3000ms; /*background:white;  make slide show */
}

.acac-banner.is-slide-mode .acac-banner__masks .svg-image {
  /* Step 3 — image zooms OUT from its own center and fades to invisible.
     transform-origin: center center makes scale(2) grow equally in all
     directions from the image's middle. Transition is on transform +
    opacity so the zoom and fade happen together over 1.2s. */  
  transform-origin: center center;
  opacity: 0; /* make slide show */
  filter: brightness(1.1);
  transition: transform 1000ms var(--banner-smooth-ease),
              opacity 1000ms ease,
              filter 1000ms ease;
}
.acac-banner.is-slide-mode .acac-banner__masks .svg-image .image-01{
    transform: scale(1) translate(0);
    opacity: 1;
    transition: transform var(--banner-hover-out-duration) var(--banner-smooth-ease), opacity 1900ms ease, filter 1100ms ease;
    will-change: transform, opacity;
    backface-visibility: hidden;
}
.acac-banner.is-slide-mode .acac-banner__masks .svg-image .image-01{
transform: scale(5, 3) translate(40%, -20%);  /* make slide show */
  transform-origin: center center;
  opacity: 0; /* make slide show */
  filter: brightness(1.1);
  transition: transform 1200ms var(--banner-smooth-ease),
              opacity 1200ms ease,
              filter 1200ms ease;
  position: relative;            
  z-index: 3;        
}

.acac-banner.is-slide-mode.is-mask-hover .acac-banner__masks {
  top: 50%;
  left: 50%;
  z-index: 8;
  width: var(--banner-mask-fullscreen-width);
  opacity: 1;
  visibility: visible;
  transform: translate3d(-50%, -50%, 0) scale3d(1.08, 1.08, 1);
}

.acac-banner.is-slide-mode.is-mask-hover .acac-banner__masks .svg-image {
  opacity: 1;
  transform: scale(1.1);
}

.acac-banner.is-slide-mode.is-mask-revealing .acac-banner__masks {
  top: 50%;
  left: 50%;
  z-index: 8;
  width: var(--banner-mask-fullscreen-width);
  opacity: 0;
  visibility: visible;
  transform: translate3d(-50%, -50%, 0) scale3d(1.28, 1.28, 1);
}

.acac-banner.is-slide-mode.is-mask-revealing .acac-banner__masks .svg-image {
  opacity: 0;
  transform: scale(1.24);
}
/* ===== Banner masks: scale-in reveal (see .acac-banner__masks .svg-image
   above for the imageScale animation driving this group) ===== */
.acac-banner__masks .desktop-image_masks {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content:center;
    /* justify-content: space-between; */
}
.acac-banner__masks .desktop-image_masks img {
    opacity: 1;
    											 
  /*  width: 25%; */
}

@media (min-width: 992px) {		
  .acac-banner__masks .desktop-image_masks img {
      height: 330px;
  }
  										   
 /* .acac-banner .acac-banner__masks .svg-image .image-01,
  .acac-banner .acac-banner__masks .svg-image .image-03{
    width:30%;
  }*/
  .acac-banner .acac-banner__masks .svg-image .image-02,
  .acac-banner .acac-banner__masks .svg-image .image-04{
    margin-left:-25px;
    /*width:20%;*/
  }		
}								   

.acac-banner .acac-banner__masks .svg-image .image-02{
  margin-right:25px;
}												   
																			 

@keyframes imageScale {
    from {
        transform: scale(0);
    }
    to {
        transform: scale(1);
    }
}


.acac-banner.is-slide-mode .acac-banner__title span { 
    display: inline-block;
    color: transparent;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    -webkit-text-fill-color: transparent;
    background: linear-gradient(120deg, rgba(255, 255, 255, .95) 0%, rgba(255, 255, 255, .55) 20%, rgba(255, 255, 255, .15) 40%, rgba(255, 255, 255, .55) 60%, rgba(255, 255, 255, .9) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    /* backdrop-filter: blur(2px) saturate(180%) contrast(130%) brightness(110%); */
    -webkit-backdrop-filter: blur(2px) saturate(180%) contrast(130%) brightness(110%);
    opacity: 1;
        /* Delay is relative to when .is-slide-mode is actually added by JS
       (not page load). --title-slide-up-delay gives the title a brief
       settled pause at the bottom before it rises. .hero-slider-wrap's
       reveal delay uses this exact same variable, so it appears the
       instant this rise STARTS, not when it finishes. */
    animation: acac-span-slide-up var(--title-slide-up-duration) var(--banner-smooth-ease) var(--title-slide-up-delay) both;
}



.acac-banner.is-slide-mode .acac-banner__title h1 {
  animation: none;
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.acac-banner.is-slide-mode .acac-banner__counter {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  /* Same calc()'d delay as .hero-slider-wrap/.acac-banner__slider, so the
     counter appears in the same instant instead of noticeably later. */
  transition: opacity 600ms ease var(--title-slide-up-delay),
              visibility 0ms linear var(--title-slide-up-delay);
}

/* On every subsequent slide change, the JS layers is-exiting / is-entering
   onto the counter. Without these higher-specificity overrides (0-4-0),
   the slide-mode rule above (0-3-0) wins the cascade and the counter
   stays pinned at opacity 1 / transform 0 with a 2700ms-delayed
   transition — visually it just doesn't move, then appears way late.
   These rules mirror .acac-banner__cta's enter/exit timing exactly (320 /
   420ms exit, 620 / 760ms enter) so counter and CTA animate in lockstep. */
.acac-banner.is-slide-mode .acac-banner__counter.is-exiting {
  opacity: 0;
  visibility: visible;
  transform: translate3d(-74px, 0, 0);
  transition: opacity 320ms ease,
              transform 420ms var(--banner-ease);
}

.acac-banner.is-slide-mode .acac-banner__counter.is-entering {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  transition: opacity 620ms ease,
              transform 760ms var(--banner-ease),
              visibility 0ms linear 0ms;
}

.acac-banner.is-slide-mode .acac-banner__arrow {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, -50%, 0);
   /* Explicit transition needed because the arrow's base rule overrides
     the counter+arrow shared rule and drops opacity from its
     transition-property — without that, opacity would snap to 1 at
     t=0 instead of fading in with the other two. transform / bg-color /
     box-shadow stay short so the hover state still responds quickly.
      Same delay as the other reveal elements — was hardcoded to
     a stale 2700ms before, badly out of sync with everything else. */
  transition: opacity 600ms ease var(--title-slide-up-delay),
              visibility 0ms linear var(--title-slide-up-delay),
              transform 320ms var(--banner-ease);
}

.acac-banner.is-slide-mode .acac-banner__content.is-exiting,
.acac-banner.is-slide-mode .acac-banner__cta.is-exiting,
.acac-banner.is-slide-mode .acac-banner__counter.is-exiting {
  opacity: 0;
  transform: translate3d(-74px, 0, 0);
  transition-delay: 0ms;
}

/* ===== Skip-intro overrides =====
   PERMANENT block: `html.acac-skip-intro` is set by the inline head
   script in index.html BEFORE any CSS loads, so the title intro
   animations (acac-title-enter / acac-title-lower on the span,
   acac-mask-drop on the masks, acac-span-slide-up triggered by
   is-slide-mode) never even start. This class is kept on <html> for
   the entire page load — removing it would let the slide-mode rule's
   `animation: acac-span-slide-up` suddenly match, which would START
   the animation right at that moment (the bottom-to-top motion).
   Limited to title h1 / span / masks so it does not disable
   transitions the slider/counter/arrows need during slide changes. */
html.acac-skip-intro .acac-banner__title h1,
html.acac-skip-intro .acac-banner__title span,
html.acac-skip-intro .acac-banner__masks {
  animation: none !important;
  transition: none !important;
}

html.acac-skip-intro .acac-banner__title span {
  /* Span needs an explicit transform because killing acac-span-slide-up
     removes its `forwards` end state — without this the span would snap
     to its base CSS position (translate none) instead of the final
     slide-mode position. */
  transform: translate3d(var(--without-walls-slide-x), var(--without-walls-slide-y), 0) !important;
}

/* TRANSIENT block: `.acac-banner.is-skip-intro` is set by general.js for
   one frame so the initial reveal of slider / arrows / counter / mask
   image snaps to its final state instead of running the is-slide-mode
   2700ms-delayed fade-in. JS removes the class on the next frame so
   subsequent slide changes (prev/next/auto-advance) animate normally. */
.acac-banner.is-skip-intro .acac-banner__title h1,
.acac-banner.is-skip-intro .acac-banner__title span,
.acac-banner.is-skip-intro .acac-banner__masks,
.acac-banner.is-skip-intro .acac-banner__masks .svg-image,
.acac-banner.is-skip-intro .hero-slider-wrap,
.acac-banner.is-skip-intro .acac-banner__slider,
.acac-banner.is-skip-intro .acac-banner__counter,
.acac-banner.is-skip-intro .acac-banner__arrow {
  transition: none !important;
}

.acac-banner.is-skip-intro .acac-banner__title h1,
.acac-banner.is-skip-intro .acac-banner__title span,
.acac-banner.is-skip-intro .acac-banner__masks {
  animation: none !important;
}

.acac-banner.is-skip-intro .acac-banner__title span {
  transform: translate3d(var(--without-walls-slide-x), var(--without-walls-slide-y), 0) !important;
}
@keyframes acac-title-enter {
  from {
    opacity: 0;
    transform: translate3d(0, var(--banner-title-enter), 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes acac-title-lower {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(var(--without-walls-lower-x), var(--without-walls-lower-y), 0);
  }
}

@keyframes acac-span-slide-up {
  from {
    transform: translate3d(var(--without-walls-lower-x), var(--without-walls-lower-y), 0);
  }

  to {
    transform: translate3d(var(--without-walls-slide-x), var(--without-walls-slide-y), 0);
  }
}

@keyframes acac-mask-drop {
  0% {
    opacity: 0;
    transform: translate3d(0, 0, 0) scaleY(0);
  }

  20% {
    opacity: 1;
  }

  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scaleY(1);
  }
}

@keyframes acac-slide-reveal {
  from {
    transform: scale(1.5);
    transform-origin: center left;
    filter: blur(24px);
  }

  to {
    transform: scale(1);
    transform-origin: center left;
    filter: blur(0);
  }
}

/* Stage 2 — slow ken-burns zoom: after the reveal settles, the now
   crisp, normal-size image smoothly scales up toward 1.12 over the
   remainder of the slide. Center-center origin so it grows uniformly
   in every direction. */
@keyframes acac-slide-zoom {
  from {
    transform: scale(1);
    transform-origin: center center;
  }

  to {
    transform: scale(1.12);
    transform-origin: center center;
  }
}

@keyframes acac-banner-progress {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}

@keyframes acac-circle-fill {
  from {
    transform: scale(0);
  }

  to {
    transform: scale(1);
  }
}

@keyframes acac-circle-unfill {
  from {
    transform: scale(1);
  }

  to {
    transform: scale(0);
  }
}

.acac-menu__circle {
  position: fixed;
  top: 31px;
  right: 86px;
  z-index: 7;
  width: 51px;
  height: 51px;
  border-radius: 50%;
  background: #ffffff;
  overflow: hidden;
  opacity: 0;
  transform: scale(1) translateZ(0);
  transform-origin: center;
  transition: opacity 140ms ease, transform 820ms cubic-bezier(0.76, 0, 0.24, 1), background-color 820ms cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
  pointer-events: none;
}

.acac-menu__overlay {
  position: fixed;
  inset: 0;
  z-index: 11;
  background: transparent;
  opacity: 0;
  visibility: hidden;
  transition: opacity 260ms ease 180ms, visibility 0ms linear 880ms;
  pointer-events: none;
}

.acac-menu__overlay-header {
  position: relative;
  width: 100%;
  height: 107px;
  padding: 0 84px 0 97px;
}

.acac-menu__overlay-header .acac-menu__brand {
  position: absolute;
  top: 35px;
  left: 97px;
  opacity: 0;
}

.acac-menu__overlay-header .acac-menu__top-nav {
  right: auto;
  left: 50%;
  opacity: 0;
  transform: translate3d(260px, 0, 0);
}

.acac-menu__close {
  position: absolute;
  top: 43px;
  right: 51px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  height: 28px;
  color: #ffffff;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  opacity: 0;
  transform: translate3d(10px, 0, 0);
  transition: opacity 260ms ease 520ms, transform 260ms ease 520ms;
  outline: none;
}

.acac-menu__close span {
  position: relative;
  width: 29px;
  height: 29px;
}

.acac-menu__close span::before,
.acac-menu__close span::after {
  position: absolute;
  top: 13px;
  left: -2px;
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: #ffffff;
  content: "";
}

.acac-menu__close span::before {
  transform: rotate(45deg);
}

.acac-menu__close span::after {
  transform: rotate(-45deg);
}

.acac-menu__close b {
  font-weight: 400;
  color: #fff;
}
.acac-menu__panel li {
  position: relative;
  display: block;
  margin-bottom: 40px;
  opacity: 0;
  transform: translate3d(0, 46px, 0) scale(0.98);
  transition: opacity 520ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
  will-change: opacity, transform;
  outline: none !important;
}

.acac-menu__parent {
  position: relative;
  display: grid;
  grid-template-columns: 49px auto;
  align-items: start;
  width: max-content;
  max-width: 100%;
  text-align: left;
  color: #ffffff;
  transform: translate3d(0, 0, 0);
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.acac-menu__panel strong {
    display: inline-block;
    font-size: 50px;
    font-weight: 900;
    line-height: 53px;
    letter-spacing: 0;
    text-transform: uppercase;
    color: transparent;
    -webkit-text-stroke: 2px #ffffff;
    text-stroke: 2px #ffffff;
    letter-spacing: 0.00em;
    font-family: "aktiv-grotesk-extended", sans-serif;
    transition: all 0.5s ease-in-out;    
}


.acac-menu__panel em {
  display: none;
}

.acac-menu__panel em::before,
.acac-menu__panel em::after {
  position: absolute;
  top: 6px;
  left: -1px;
  width: 16px;
  height: 2px;
  background: #ffffff;
  content: "";
}

.acac-menu__panel em::before {
  transform: rotate(45deg);
}

.acac-menu__panel em::after {
  transform: rotate(-45deg);
}

.acac-menu__parent strong::after {
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 17px solid #ffffff;
    opacity: 0;
    transform: translate3d(150px, 0, 0);
    transition: opacity 240ms ease, transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
    content: "";
    display: inline-block;
    margin-left: 19px;
    position: relative;
    top: -7px;
}

.acac-menu__parent:focus-visible {
  outline: 1px solid rgba(255, 255, 255, 0.4);
  outline-offset: 7px;
}

.acac-menu__panel li.is-active strong, .acac-menu__panel li:hover strong {
  color: #ffffff;
  -webkit-text-stroke-color: #ffffff;
  text-stroke-color: #ffffff;
}

.acac-menu__panel li.is-active .acac-menu__parent {
  transform: translate3d(-49px, 0, 0);
}

.acac-menu__panel li.is-active .acac-menu__badge {
  opacity: 0;
  transform: translate3d(-16px, 0, 0);
  transition-delay: 0ms;
}

.acac-menu__panel li.is-active .acac-menu__parent strong::after {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

/*
.acac-menu__panel ul:has(li.is-active) li:not(.is-active) {
  opacity: 0.18;
}
*/

.acac-menu__subnav {
  position: fixed;
  top: 50%;
  left: auto;
  right: 150px;
  display: none;
  flex-direction: column;
  gap: 24px;
  width: 360px;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(18px, -50%, 0);
  transition: opacity 260ms ease, transform 300ms ease, visibility 0ms linear 300ms;
  will-change: opacity, transform;
}

.acac-menu__subnav a {
  display: block;
  font-family: var(--font-body);
  font-size: 25px;
  font-weight: 400;
  line-height: 29px;
  color: #ffffff;
  transition: all 0.5s ease-in-out;
}

.acac-menu__subnav-close {
    position: absolute;
    top: 7px;
    left: -35px;
    z-index: 3;
    width: 18px;
    height: 18px;
    opacity: 0;
    transform: rotate(-12deg) scale(0.7);
    transition: opacity 200ms ease, transform 220ms ease;
}

.acac-menu__subnav-close::before,
.acac-menu__subnav-close::after {
  position: absolute;
  top: 8px;
  left: 0;
  width: 18px;
  height: 2px;
  background: #ffffff;
  content: "";
}

.acac-menu__subnav-close::before {
  transform: rotate(45deg);
}

.acac-menu__subnav-close::after {
  transform: rotate(-45deg);
}

.acac-menu__panel li.is-active .acac-menu__subnav {
  display: none;
}

.acac-menu__panel li.is-active .acac-menu__subnav-close {
  opacity: 1;
  transform: rotate(0deg) scale(1);
  transition-delay: 140ms;
}

.acac-menu__desktop-subnav {
    opacity: 0;
    visibility: hidden;
    transform: translate3d(24px, -50%, 0) translateY(-50%);
    transition: opacity 100ms ease, transform 100ms cubic-bezier(0.22, 1, 0.36, 0.3), visibility 0ms linear 100ms;
    pointer-events: none;
    will-change: opacity, transform;
    height: 0;
    position: absolute;
    top: 50%;
    /*right: 0;*/
}

.acac-menu__desktop-subnav.is-active {
    opacity: 1;
    visibility: visible;
    transform: translate3d(0, -50%, 0);
    transition-delay: 10ms, 10ms, 0ms;
    pointer-events: auto;
    height: 100%;
}

.acac-menu__desktop-subnav a {
    display: block;
    font-size: 22px;
    font-weight: 400;
    line-height: 29px;
    color: #ffffff;
    margin-bottom: 24px;
    transition: all 0.5s ease-in-out;
    letter-spacing: 0.00em;
    font-family: "aktiv-grotesk-extended", sans-serif;
}
.acac-menu__desktop-subnav a:hover {
    color: #C33417 !important;
}
.footer-nav-group a:hover {
    color: #C33417 !important;
}

.acac-menu.is-opening .acac-menu__header,
.acac-menu.is-open .acac-menu__header,
.acac-menu.is-closing .acac-menu__header {
  background-color: transparent;
}

.acac-menu.is-logo-hidden .acac-menu__wordmark {
  opacity: 0;
  transform: translate3d(-18px, 0, 0);
}

.acac-menu.is-opening .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-open .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-closing .acac-menu__header > .acac-menu__top-nav {
  opacity: 0;
  transform: translate3d(-33vw, 0, 0);
}

.acac-menu.is-opening .acac-menu__open span:nth-child(1),
.acac-menu.is-open .acac-menu__open span:nth-child(1),
.acac-menu.is-closing .acac-menu__open span:nth-child(1) {
  opacity: 0;
}

.acac-menu.is-opening .acac-menu__open span:nth-child(2),
.acac-menu.is-open .acac-menu__open span:nth-child(2),
.acac-menu.is-closing .acac-menu__open span:nth-child(2) {
  opacity: 0;
}

.acac-menu.is-opening .acac-menu__open span:nth-child(3),
.acac-menu.is-open .acac-menu__open span:nth-child(3),
.acac-menu.is-closing .acac-menu__open span:nth-child(3) {
  opacity: 0;
}

body.home .is-scrolled.is-switch-pinned header.acac-menu__header {
    right: 0;
    left: 0;
    margin: 0 auto;
    background-color: #fff !important;
    top: 10px;
    box-shadow: none;
}
[data-theme="artists"].acac-menu.is-switch-pinned .acac-hero-banner__label {
    color: #fff;
}
[data-theme="artists"].acac-menu.is-switch-pinned .acac-hero-banner__toggle {
    border-color: #fff;
    background-color: transparent;
}
[data-theme="artists"].acac-menu.is-switch-pinned .acac-hero-banner__toggle span.acac-hero-banner__knob {
    background-color: #fff;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned header.acac-menu__header button.acac-menu__open {
    background-color: #fff;
}

body.home [data-theme="artists"].is-scrolled.is-switch-pinned.is-open header.acac-menu__header {
    background-color: transparent !important;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned.is-open .acac-hero-banner__label {
    color: #fff;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned.is-open .acac-hero-banner__toggle {
    border-color: #fff;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned.is-open[data-theme="artists"].acac-menu.is-switch-pinned .acac-hero-banner__toggle span.acac-hero-banner__knob {
    background-color: #fff;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned.is-open .acac-hero-banner__label:hover{
    -webkit-text-fill-color: #fff;
    -webkit-text-stroke: 0;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned header.acac-menu__header {
    transition: initial !important;
}
.acac-menu.is-opening .acac-menu__circle {
  z-index: 9;
  opacity: 1;
  background: #000000;
  transform: scale(100) translateZ(0);
}

.acac-menu.is-open .acac-menu__circle {
  z-index: 9;
  opacity: 1;
  background: #000000;
  transform: scale(100) translateZ(0);
}

.acac-menu.is-closing .acac-menu__circle {
  z-index: 9;
  opacity: 1;
  background: #ffffff;
  transform: scale(1) translateZ(0);
}

#acac-menu-toggle:checked ~ .acac-menu__overlay {
  opacity: 1;
  visibility: visible;
  transition: opacity 180ms ease 140ms, visibility 0ms linear 0ms;
  pointer-events: auto;
}

.main-sub-menu {
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    padding: 124px 70px 30px;
}

.main-sub-menu .main-menu-container {
    max-width: 1070px;
    margin: 0 auto;
    display: flex;
    position: relative;
    align-items: baseline;
}

.main-sub-menu .main-menu-container .acac-menu__panel {
    width: 56%;
}

.main-sub-menu .main-menu-container .submenu-set-wrap {
    width: 35.5%;
    display: flex;
    flex-direction: column;
    position: relative;
    top: 41px;
    left:50px; /*128px;*/
}

/* When the close button is clicked, hide ONLY its icon (X) and "Close" label
   immediately. The overlay + circle close animation continues smoothly. */

.acac-menu.is-closing .acac-menu__close span,
.acac-menu.is-closing .acac-menu__close span::before,
.acac-menu.is-closing .acac-menu__close span::after,
.acac-menu.is-closing .acac-menu__close b {
  opacity: 0 !important;
  visibility: hidden !important;
  transition: none !important;
}

/* The open button (hamburger) is hidden the instant the menu opens â€” the
   overlay's own close button takes over until the user dismisses the menu. */

.acac-menu.is-opening .acac-menu__open,
.acac-menu.is-open .acac-menu__open {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: none;
}

.is-open .acac-menu__overlay .acac-menu__close {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    font-weight: 300;
    letter-spacing: 0.1em;
    font-family: "aktiv-grotesk", sans-serif;
}

.acac-menu.is-open .acac-menu__overlay .acac-menu__panel li {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition-delay: calc((var(--item-index, 0) * 250ms) + 40ms);
}

.acac-menu.is-open .acac-menu__overlay .acac-menu__panel li.is-active {
  transform: none;
  will-change: auto;
}

.acac-menu.is-open .acac-menu__overlay .acac-menu__badge {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  /*transition-delay: calc((var(--item-index, 0) * 500ms) + 160ms);*/
  transition-delay: calc((var(--item-index, 0) * 300ms) + 160ms);
}

.acac-menu.is-open .acac-menu__overlay .acac-menu__panel li.is-active .acac-menu__badge {
  opacity: 0;
  transform: translate3d(-16px, 0, 0);
  transition-delay: 0ms;
}
.acac-menu__panel li span.acac-menu__badge {
    font-size: 20px;
    font-weight: 400;
    position: relative;
    top: 10px;
    font-family: "aktiv-grotesk", sans-serif;
    color: #fff;
}

.acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
  right: auto;
  left: 50%;
  opacity: 1;
  transform: translate3d(-50%, 0, 0);
}

.acac-menu.is-closing .acac-menu__overlay-header .acac-menu__top-nav {
  right: auto;
  left: 50%;
  opacity: 0;
  transform: translate3d(260px, 0, 0);
}

.acac-menu.is-closing .acac-menu__overlay {
  opacity: 0;
  transition: opacity 620ms cubic-bezier(0.76, 0, 0.24, 1), visibility 0ms linear 820ms;
}

@keyframes acac-subnav-desktop {
  from {
    opacity: 0;
    transform: translate3d(18px, -50%, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, -50%, 0);
  }
}

@keyframes acac-subnav-slide {
  from {
    opacity: 0;
    transform: translate3d(0, -10px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
.acac-menu[data-theme="artists"] .acac-menu__panel li.is-active strong, .acac-menu[data-theme="artists"] .acac-menu__panel li:hover strong {
    color: #fff;
}

.acac-menu[data-theme="artists"] .acac-menu.is-open .acac-menu__circle {
    background-color: #000;
}

.acac-page[data-theme="artists"] .acac-hero-banner__arrow:hover {
    transform: scale(1.15) !important;
    border-top-color: #5D0E4D;
}

.acac-page[data-theme="visitors"] .acac-hero-banner__arrow:hover {
    transform: scale(1.15) !important;
    border-top-color: #CD35AE;
}

.is-switch-pinned.is-menu-open.is-open header.acac-menu__header {
    background-color: transparent !important;
}

/* Hero-banner switch is pinned: the small overlay-header brand mark
   takes over from the (already-hidden) full wordmark. It fades in 0.5s
   after the menu starts opening and fades out 0.2s after the close
   begins. Scoped to .is-switch-pinned, which the JS only ever sets on
   pages that actually contain .acac-hero-banner__switch. */
.acac-menu.is-switch-pinned .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease, visibility 0ms linear 300ms;
}

.acac-menu.is-switch-pinned.is-opening .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark,
.acac-menu.is-switch-pinned.is-open .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
  opacity: 1;
  visibility: visible;
  transition: opacity 300ms ease 500ms, visibility 0ms linear 500ms;
  display: block;
}



.acac-menu.is-switch-pinned.is-closing .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease 200ms, visibility 0ms linear 500ms;
}

/* Hero-banner switch is pinned: the page header's full brand fades out
   0.3s after the menu starts opening, then fades back in 0.1s after
   the close begins. Higher specificity than the .is-logo-hidden snap
   rule above so the close-phase override re-shows the brand with the
   requested delay. Scoped to .is-switch-pinned, which the JS only sets
   on pages that actually contain .acac-hero-banner__switch. */
.acac-menu.is-switch-pinned.is-opening a.acac-menu__brand.acac-menu__brand--full,
.acac-menu.is-switch-pinned.is-open a.acac-menu__brand.acac-menu__brand--full {
  opacity: 0;
  visibility: hidden;
  transition: opacity 300ms ease 300ms, visibility 0ms linear 600ms;
}

.acac-menu.is-switch-pinned.is-closing a.acac-menu__brand.acac-menu__brand--full {
  opacity: 1;
  visibility: visible;
  transition: opacity 300ms ease 100ms, visibility 0ms linear 100ms;
}

/* ======================================================
   PAGE CONTENT SECTIONS
   ====================================================== */

/* Theme-aware heading colors â€” Visitors (dark theme) â†’ white headings;
   Artists (light theme) â†’ black headings. Smoothly transitions on theme swap. */

.acac-page h1,
.acac-page h2,
.acac-page h3,
.acac-page h4,
.acac-page h5,
.acac-page h6 {
  transition: color 600ms ease;
}

/* Theme-aware heading colors. !important is used defensively because some
   section h2 rules previously hardcoded color: #000 â€” this guarantees the
   theme always wins regardless of source order or specificity. */

.acac-page[data-theme="visitors"] h1,
.acac-page[data-theme="visitors"] h2,
.acac-page[data-theme="visitors"] h3,
.acac-page[data-theme="visitors"] h4,
.acac-page[data-theme="visitors"] h5,
.acac-page[data-theme="visitors"] h6 {
  color: #ffffff !important;
}

.acac-page[data-theme="artists"] h1,
.acac-page[data-theme="artists"] h2,
.acac-page[data-theme="artists"] h3,
.acac-page[data-theme="artists"] h4,
.acac-page[data-theme="artists"] h5,
.acac-page[data-theme="artists"] h6,
/* Same rule re-stated with html body prefix to bump specificity above any
   later/stronger overrides for individual headings. */
html body .acac-page[data-theme="artists"] h1,
html body .acac-page[data-theme="artists"] h2,
html body .acac-page[data-theme="artists"] h3,
html body .acac-page[data-theme="artists"] h4,
html body .acac-page[data-theme="artists"] h5,
html body .acac-page[data-theme="artists"] h6 {
  color: #000000 !important;
}

/* Headings that sit on top of dark image overlays must stay white in both
   themes â€” !important to override the theme rule above. */

.acac-page[data-theme] .acac-programs__item h3,
.acac-page[data-theme] .acac-opportunities__img h4 {
  color: #ffffff !important;
}

/* --- Global Tag Styles (scoped to page content) --- */

.acac-page h2 {
  font-family: "aktiv-grotesk-extended",sans-serif; 
  font-weight: 900;
  font-size: 75px;
  line-height: 70px;
  letter-spacing: 0;
  text-transform: uppercase;
  margin: 0;
}

.acac-page h3 {
  font-family: "aktiv-grotesk-extended",sans-serif; 
  font-weight: 900;
  font-size: 50px;
  line-height: 1;
  text-transform: uppercase;
  margin: 0;
}
.acac-page p {
  font-family: "poppins",sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 27px;
  margin: 0;
}

/* --- Shared Button --- */

.acac-btn {
  display: inline-block;
  padding: 14px 28px;
  font-family: "poppins",sans-serif;
  font-size: 13px;
  font-weight: 500;
  border-radius: 30px;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 300ms ease, color 300ms ease, border-color 300ms ease;
}

.acac-btn--outline {
  background: transparent;
  border: 1.5px solid #ffffff;
  color: #ffffff;
}

.acac-btn--outline:hover {
  background: rgba(255, 255, 255, 0.15);
}

/* --- Container --- */

.acac-container {
  width: 100%;
  max-width: 1246px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 97px;
  padding-right: 97px;
}

/* --- Page Wrapper --- */

.acac-page {
  position: relative;
  width: 100%;
  overflow: clip;
  transition: background-color 600ms ease, color 600ms ease;
}

.acac-page[data-theme="visitors"] {
  background: #000000;
  color: #ffffff;
}

.acac-page[data-theme="artists"] {
  background: #ffffff;
  color: #000000;
}

/* --- Theme Wrappers --- */

.acac-theme {
  display: none;
  opacity: 0;
}

.acac-theme.is-active {
  display: block;
  animation: acac-theme-fade-in 600ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* Opacity-only animation. The previous version ended with `transform: translateY(0)`
   that persisted via `forwards`, and on Safari/Chromium that lingering transform
   on the sibling theme block could destabilise the switch's sticky behaviour
   in the artists (white) theme. Pure opacity tween keeps sticky reliable. */

@keyframes acac-theme-fade-in {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

/* ========================================
   HERO BANNER (SWITCH + INTRO COMBINED)
   ======================================== */

.acac-hero-banner {
  position: relative;
  padding: 18px 0 0;
  transition: background-color 600ms ease;
}

.acac-page[data-theme="visitors"] .acac-hero-banner {
  background: #000000;
}

.acac-page[data-theme="artists"] .acac-hero-banner {
  background: #ffffff;
}

/* Zero-height marker placed right above the switch â€” observed by JS to know when
   the switch's natural top crosses the viewport top. */

.acac-hero-banner__switch-sentinel {
  height: 1px;
  margin-bottom: -1px;
  width: 100%;
  pointer-events: none;
  visibility: hidden;
}

/* Spacer injected by JS to preserve the switch's flow height while the switch
   is pinned (position: fixed). Height is set in JS to match the captured natural
   height; height: 0 when not pinned. No transition â€” the height swap is silent. */

.acac-hero-banner__switch-spacer {
  width: 100%;
  height: 0;
}

/* --- Toggle Row.
   position: sticky throughout. The container's outer dimensions (height +
   horizontal padding) are kept constant in pinned and unpinned states, so
   nothing in flow changes when the pin engages or releases â€” that is what
   eliminates the jerk. Only the *inner* content (label font, toggle, knob,
   gap) shrinks when pinned; that change is animated, but it doesn't touch
   the box's footprint, so there's no reflow. */

.acac-hero-banner__switch {
    top: 0;
    z-index: 0;
    height: 162px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 73px;
    padding: 0 97px;
    background: transparent;
    pointer-events: none;
    transition: all 0.5s ease-in-out;
}
.toggle-full-height {
    height: 162px;
    display: block;
    padding-right: 40px;
}

.acac-hero-banner__switch > * {
  pointer-events: auto;
}

/* Pinned state â€” z-index jumps to 5555 so the pinned switch overlays
   anything else on the page. Inner pieces shift/shrink; the container's
   size and flow space stay identical to default so nothing reflows. */

.acac-menu.is-switch-pinned.is-open .acac-hero-banner__switch {
    opacity: 0 !important;
}

.home header.acac-menu__header {
    position: absolute;
    background-color: #000;
    top: 0;
}
body.home .is-switch-pinned .acac-menu__header {
    position: fixed;
}

.acac-menu.is-switch-pinned .acac-hero-banner__label,
.acac-menu.is-switch-pinned .acac-hero-banner__toggle {
  transform: translateY(-35px);
}

.acac-menu.is-switch-pinned .acac-hero-banner__label {
  font-size: 21px;
  line-height: 22px;
  -webkit-text-stroke-width: 1px;
  color: #000000;
}
/*
.acac-menu.is-switch-pinned[data-theme="artists"] .acac-hero-banner__label {
  color: #000000;
}
*/

/* Toggle becomes an outline pill in pinned state per Figma 2414:13100. */

.acac-menu.is-switch-pinned .acac-hero-banner__toggle {
  width: 50px;
  height: 26px;
  background: transparent;
  border: 2px solid currentColor;
}

.acac-menu.is-switch-pinned .acac-hero-banner__knob {
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  background: currentColor;
}

.acac-menu.is-switch-pinned[data-theme="artists"] .acac-hero-banner__knob {
  transform: translateX(24px);
}

/* When the navigation circle/overlay opens, also hide the sticky switch
   so it doesn't sit on top of the menu (matches the user request). */

.acac-menu.is-opening .acac-hero-banner__switch,
.acac-menu.is-open .acac-hero-banner__switch {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.5s ease-in-out;
}

/* Top-nav is hidden in two cases:
   1. When the switch is pinned (sticky scrolled into the header zone).
   2. When the dark circle reveal/menu overlay is opening or open.
   Wordmark only hides in case (1). */

.acac-menu.is-switch-pinned .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-opening .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-open .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-switch-pinned .acac-menu__wordmark {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.acac-menu.is-switch-pinned .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-opening .acac-menu__header > .acac-menu__top-nav,
.acac-menu.is-open .acac-menu__header > .acac-menu__top-nav {
  transform: translate3d(20px, 0, 0);
}

.acac-menu.is-switch-pinned .acac-menu__wordmark {
  transform: translate3d(-12px, 0, 0);
}

.acac-hero-banner__label {
    font-weight: 900;
    font-size: 75px;
    line-height: 68px;
    text-transform: uppercase;
    letter-spacing: 0;
    cursor: pointer;
    transition: font-size 500ms cubic-bezier(0.22, 1, 0.36, 1), line-height 500ms cubic-bezier(0.22, 1, 0.36, 1), transform 500ms cubic-bezier(0.22, 1, 0.36, 1), -webkit-text-stroke 500ms ease, -webkit-text-fill-color 500ms ease, color 500ms ease;
    -webkit-text-stroke: 2px currentColor;
    -webkit-text-fill-color: transparent;
    user-select: none;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

.acac-hero-banner__label.is-active {
  -webkit-text-fill-color: currentColor;
  -webkit-text-stroke: 0;
}

/* Mobile text-stroke hardening. iOS Safari + Android Chrome occasionally
   paint the transparent fill OVER the stroke when the Typekit Aktiv
   Grotesk Ex font is still loading — the result is invisible/clipped
   outlined text. paint-order: stroke fill forces the stroke to be drawn
   first so it stays visible regardless of fill layering, and the
   longhand -webkit-text-stroke-color/-width are repeated so a shorthand
   parsing quirk in any mobile webkit build can't drop the stroke color.
   `text-rendering: geometricPrecision` keeps the outline crisp on
   high-DPI displays where the default `optimizeSpeed` can soften it. */
.acac-hero-banner__label {
  paint-order: stroke fill;
  -webkit-text-stroke-color: currentColor;
  text-rendering: geometricPrecision;
}

/* --- Toggle Button (pill switch) â€” Figma 113x59 with 46x46 knob --- */

.acac-hero-banner__toggle {
  position: relative;
  width: 113px;
  height: 59px;
  border-radius: 83px;
  border: 0;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  transition:
    width 500ms cubic-bezier(0.22, 1, 0.36, 1),
    height 500ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 500ms ease;
}



.acac-page[data-theme="artists"] .acac-hero-banner__toggle {
  background: #ffffff;
  border: 2px solid #000;
}
.acac-menu.is-switch-pinned .acac-hero-banner__toggle {
    border-color: #000;
}
.acac-hero-banner__switch button.acac-hero-banner__toggle:hover {
    background-color: #B7AC1F;
}
[data-theme="artists"] .acac-hero-banner__switch span.acac-hero-banner__label:hover {
    -webkit-text-fill-color: #fff;
    -webkit-text-stroke: 0;
}
[data-theme="visitors"] .acac-hero-banner__switch .acac-hero-banner__toggle + span.acac-hero-banner__label:hover {
    -webkit-text-fill-color: #fff;
    -webkit-text-stroke: 0;
}
[data-theme="visitors"].is-switch-pinned .acac-hero-banner__switch .acac-hero-banner__toggle + span.acac-hero-banner__label:hover {
    -webkit-text-fill-color: #000;
    -webkit-text-stroke: 0;
}
.acac-page[data-theme="artists"] span.acac-hero-banner__label:hover {
    -webkit-text-fill-color: #000;
    -webkit-text-stroke: 0;
}
.is-switch-pinned .acac-page[data-theme="artists"] span.acac-hero-banner__label:hover {
    -webkit-text-fill-color: #fff;
    -webkit-text-stroke: 0;
}

body.home .is-scrolled.acac-menu[data-theme="artists"] button.acac-menu__open span {
    background-color: #fff;
}
body.home .is-scrolled.acac-menu[data-theme="artists"] .acac-menu__header .is-search-open button.acac-menu__search-toggle i {
    color: #fff;
}
.is-scrolled.acac-menu[data-theme="artists"] .acac-menu__brand svg, .acac-menu[data-theme="artists"] .acac-menu__brand path {
    color: #f1f1f1;
    fill: #f1f1f1;
}
.is-switch-pinned.acac-menu[data-theme="artists"] .acac-menu__brand svg, .is-switch-pinned.acac-menu[data-theme="artists"] .acac-menu__brand path {
    fill: #f1f1f1;
}
.acac-menu a {
    transition: all 0.5s ease-in-out;
}
.is-switch-pinned.is-menu-open header.acac-menu__header a.acac-menu__brand {
    opacity: 0;
}
.acac-hero-banner__knob {
  position: absolute;
  top: 4px;
  left: 5px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  transition:
    transform 500ms cubic-bezier(0.22, 1, 0.36, 1),
    width 500ms cubic-bezier(0.22, 1, 0.36, 1),
    height 500ms cubic-bezier(0.22, 1, 0.36, 1),
    top 500ms cubic-bezier(0.22, 1, 0.36, 1),
    left 500ms cubic-bezier(0.22, 1, 0.36, 1),
    background-color 500ms ease;
}

.acac-page[data-theme="visitors"] .acac-hero-banner__knob {
  background: #fff;
  transform: translateX(0);
}
.is-switch-pinned .acac-page[data-theme="visitors"] .acac-hero-banner__knob {
  background: #000;
}

.acac-page[data-theme="artists"] .acac-hero-banner__knob {
  background: #000000;
  transform: translateX(54px);
}

/* --- Content Body --- */

.acac-hero-banner__body {
  position: relative;
  height: 509px;
  overflow: hidden;
}

/* --- Intro Box --- */

.acac-hero-banner__box {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 600ms ease, color 600ms ease, left 600ms cubic-bezier(0.22, 1, 0.36, 1), right 600ms cubic-bezier(0.22, 1, 0.36, 1), border-radius 600ms ease;
}

.acac-page[data-theme="visitors"] .acac-hero-banner__box {
    right: 0;
    background: #1f1f1f;
    color: #ffffff;
    padding: 92px 240px 106px 87px;
    width: 100%;
    left: 76px;
    border-radius: 373px 0 0 373px;
    overflow: hidden;
}

.acac-page[data-theme="artists"] .acac-hero-banner__box {
    left: 0;
    background: #f1f1f1;
    color: #000000;
    padding: 75px 156px 91px 220px;
    width: calc(100% - 90px);
    right: 90px;
    border-radius: 0 373px 373px 0;
    overflow: hidden;
}

/* --- Intro Content --- */

.acac-hero-banner__intro {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.acac-hero-banner__intro.is-active {
  position: relative;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Rotate animation keyframes */

@keyframes acac-rotate-in {
  0% {
    opacity: 0;
    transform: perspective(600px) rotateX(90deg);
  }
  40% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: perspective(600px) rotateX(0deg);
  }
}

@keyframes acac-rotate-text {
  0% {
    opacity: 0;
    transform: perspective(1600px) rotateX(90deg);
  }
  40% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: perspective(600px) rotateX(0deg);
  }
}

.acac-hero-banner__intro.is-active h3 {
  transform-origin: bottom center;
  animation: acac-rotate-in 800ms cubic-bezier(0.22, 1, 0.36, 1) 120ms forwards;
  opacity: 0;
}

.acac-hero-banner__intro.is-active p {
  transform-origin: bottom center;
  animation: acac-rotate-in 700ms cubic-bezier(0.22, 1, 0.36, 1) 240ms forwards;
  opacity: 0;
}
.acac-page[data-theme="artists"] .acac-hero-banner__intro p {
    color: #000;
}

.acac-hero-banner__intro.is-active .acac-hero-banner__arrow {
  /* animation: acac-rotate-in 600ms cubic-bezier(0.22, 1, 0.36, 1) 350ms forwards; */
  opacity: 1;
}

.acac-hero-banner__box h2 {
    font-size: 75px;
    line-height: 47px;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 43px;
    line-height: 1;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

.acac-hero-banner__box h3 {
    font-size: 40px;
    line-height: 1.3;
    font-weight: 400;
    text-transform: initial;
    margin-bottom: 22px;
    letter-spacing: 0.00em;
}

.acac-hero-banner__box p {
    font-size: 18px;
    line-height: 27px;
    font-weight: 400;
    max-width: 643px;
    margin: 0 auto 34px;
    letter-spacing: 0.00em;
}

.acac-hero-banner__arrow {
  display: block;
  width: 0;
  height: 0;
  margin: 0 auto;
  padding: 0;
  background: none;
  border: none;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
  cursor: pointer;
  transition: all 0.5s ease-in-out !important;
  transform: scale(1) !important;
  top: 22px;
  position: relative;
}

.acac-page[data-theme="visitors"] .acac-hero-banner__arrow {
    border-top: 49px solid #ffffff;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    border-right: 28px solid transparent;
}

.acac-page[data-theme="artists"] .acac-hero-banner__arrow {
    border-top: 49px solid #000000;
    border-bottom: 30px solid transparent;
    border-left: 30px solid transparent;
    border-right: 28px solid transparent;
}

/* --- Half-Circle Tabs ---
   On hover, the pill grows wider and changes to its accent color. Colors and
   delta width come from Figma nodes 1036:2560 (Visitors Side Hover) and
   1062:3162 (Artists Side Hover). */

.acac-hero-banner__tab {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 254px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 14px;
    text-decoration: none;
    z-index: 3;
    cursor: pointer;
    transition: opacity 800ms cubic-bezier(0.22, 1, 0.36, 1), transform 800ms cubic-bezier(0.22, 1, 0.36, 1), width 700ms cubic-bezier(0.22, 1, 0.36, 1), background-color 600ms cubic-bezier(0.22, 1, 0.36, 1);
    opacity: 0;
    pointer-events: none;
    will-change: width, background-color, transform;
    padding-left: 65px;
}

/* Hidden state: tab is folded edge-on around its anchored side
   (left tab hinges on left edge, right tab on right edge), mirroring
   the h2's perspective rotate. .is-visible swings it out to face the
   viewer over the same 800ms curve. */

.acac-hero-banner__tab.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1) translateX(0);
}

.acac-hero-banner__tab span {
    font-size: 30px;
    line-height: 38px;
    text-transform: uppercase;
    letter-spacing: 0;
    writing-mode: sideways-lr;
    text-orientation: mixed;
    font-family: "aktiv-grotesk-extended", sans-serif;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.acac-hero-banner__tab--left span {
    color: #fff;
}

.acac-hero-banner__tab i {
  display: block;
  width: 0;
  height: 0;
}

.acac-menu[data-theme="artists"] h2 {
    COLOR: #000;
}

.acac-menu[data-theme="artists"] a.acac-who__btn {
    color: #fff;
}

.acac-menu[data-theme="artists"] a.acac-who__btn:hover {
    background-color: #5D0E4D;
}

.acac-menu[data-theme="artists"] .acac-programs__item:hover h3 {
    color: #EBFF88;
}

/* Right tab â€” Artists tab, visible in Visitors mode.
   Default: light gray pill (#f1f1f1). Hover: salmon (#ff8681). */

.acac-hero-banner__tab--right {
  right: -74px;
  background: #f1f1f1;
  color: #000000;
  border-radius: 450px 0 0 450px;
  transform-origin: right center;
  transform: scale(1.5) translateX(-100px);
}

.acac-hero-banner__tab--right:hover,
.acac-hero-banner__tab--right:focus-visible {
  width: 280px;
  background: #ff8681;
}

.acac-hero-banner__tab--right i {
    border-left: 26px solid #000;
    border-right: 26px solid transparent;
    position: absolute;
    border-top: 16px solid transparent;
    margin-left: 66px;
    border-bottom: 16px solid transparent;
}

/* Left tab â€” Visitors tab, visible in Artists mode.
   Default: dark charcoal pill (#1f1f1f). Hover: rust (#c33417). */

.acac-hero-banner__tab--left {
  left: 0;
  background: #1f1f1f;
  color: #ffffff;
  border-radius: 0 450px 450px 0;    
  width: 287.5px;
  transform: scale(1.5) translateX(100px);
}

/* Active state for the left tab â€” matches the function list of the
   inactive transform (perspective + rotateY + scale) so the browser
   can interpolate function-by-function instead of falling back to a
   matrix interpolation, which keeps the motion smooth. */

.acac-hero-banner__tab--left.is-visible {
    width: 250px;
    transform: scale(1) translateX(0);
    left: -74px;
    align-items: end;
    padding-right: 59px;
}

.acac-hero-banner__tab--left:hover,
.acac-hero-banner__tab--left:focus-visible {
  width: 280px;
  background: #c33417;
}

.acac-hero-banner__tab--left i {
    border-left: 26px solid transparent;
    border-right: 26px solid #fff;
    position: absolute;
    border-top: 16px solid transparent;
    margin-right: 61px;
    border-bottom: 16px solid transparent;
}
.overview-hero-btn {
    margin-top: 34px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 22px;
    margin-bottom: 20px;
}
/* ========================================
   PLAN YOUR EXPERIENCE (3-card static grid)
   ======================================== */

.acac-plan {
  padding: 82px 0 40px;
  text-align: center;
}

.acac-plan h2 {
  margin-bottom: 59px;  
}

.acac-plan__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 37px;
    max-width: 1479px;
    width: 100%;
    padding: 0 42px;
    margin: 0 auto;
}

.acac-plan__card {
  position: relative;
  display: block;
  outline: none;
  text-align: left;
  text-decoration: none;
  color: inherit;
}

.acac-plan__img {
  position: relative;
  width: 100%;
  height: 266px;
  overflow: hidden;
  border-radius: 0;
}

.acac-plan__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-plan__card:hover .acac-plan__img img {
  transform: scale(1.06);
}

/* Hover panel â€” sits inside .acac-plan__img, anchored top/bottom/right with the
   bottom-right corner heavily rounded for a "proper round" pink overlay.
   Bottom-left of the panel holds an "Explore" badge (only the text has a border). */

.acac-plan__hover {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  background: rgba(236, 129, 255, 0.8);
  border-radius: 0 200px 200px 0;
  opacity: 0;
  transition: all 0.5s ease-in-out;
  pointer-events: none;
  left: -500px;
  padding: 0 21px;
}

.acac-plan__card:hover .acac-plan__hover,
.acac-plan__card:focus-visible .acac-plan__hover {
  opacity: 1;
  left: 0;
}

/* Only the text gets a border â€” a pill-shaped "Explore" badge. */

.acac-plan__hover b {
  display: inline-block;
  font-family: "poppins",sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 30px;
  color: #000000;
  background: transparent;
  border-bottom: 2px solid #000;
}

/* Arrow next to the bordered text â€” no border on the arrow itself. */

.acac-plan__hover i {
  display: inline-block;
  flex-shrink: 0;
  align-self: center;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 16px solid #000000;
}

.acac-plan__card h4, .acac-plan__card h3 {
    margin-top: 17px;
    margin-bottom: 14px !important;
    letter-spacing: 0.00em;
    font-weight: 800;
    text-transform: capitalize;
    font-size: 28px !important;
    line-height: 1.15 !important;
}
.acac-menu[data-theme="artists"] a.acac-plan__card p {
    color: #000;
}
.acac-page[data-theme="visitors"] .acac-plan__card h4, .acac-page[data-theme="visitors"] .acac-plan__card h3,
.acac-page[data-theme="visitors"] .acac-plan__card p {
  color: #ffffff;
}

.acac-page[data-theme="artists"] .acac-plan__card h4, .acac-page[data-theme="artists"] .acac-plan__card h3,
.acac-page[data-theme="artists"] .acac-plan__card p {
  color: #000000;
}

/* ========================================
   SO WHO ARE WE (inside Plan section)
   ======================================== */

.acac-who {
  text-align: center;
  padding: 90px 0 40px;
}

.acac-who h3 {
    font-size: 40px;
    line-height: 51px;
    font-weight: 400;
    text-transform: none;
    margin-bottom: 44px;
    letter-spacing: 0.0em;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

.acac-menu[data-theme="artists"] .acac-who h3 {
    color: #000;
}

/* "Meet the Magic Makers" â€” Figma node 1062:3141 ("Button - About 2").
   Default: black pill, white text, "<" arrow inside on the left, ">" arrow
   parked just outside the right edge (clipped by overflow: hidden).
   Hover: bg â†’ deep-purple #5d0e4d; everything translates left so the inside
   left arrow exits the pill on the left and the outside right arrow swings
   into view from the right. Matches the variant swap in Figma. */

.acac-who__btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "poppins",sans-serif;
    font-size: 20px;
    line-height: 27px;
    font-weight: 400;
    text-decoration: none;
    border-radius: 10px 41px 41px 10px;
    background: #000000;
    color: #ffffff;
    border: 0;
    overflow: hidden;
    transition: background-color 500ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease;
    padding: 19px 40px 16px 60px;
    line-height: 1;
}

.acac-who__btn span {
  position: relative;
  z-index: 1;
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-who__btn::before,
.acac-who__btn::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  transform: translateY(-50%);
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

/* Left arrow: points left ("<"), sits inside near the left edge in default. */

.acac-who__btn::before {
    left: 33px;
    border-left: 16px solid #ffffff;
}

/* Right arrow: points right (">"), parked just past the right edge (hidden). */

.acac-who__btn::after {
  right: -33px;
  border-left: 16px solid #ffffff;
}

.acac-page[data-theme="artists"] .acac-who__btn:hover span,
.acac-page[data-theme="artists"] .acac-who__btn:focus-visible span {
  color: #000 !important;
}

.acac-who__btn:hover span,
.acac-who__btn:focus-visible span {
  transform: translateX(-22px);
}

.acac-who__btn:hover::before,
.acac-who__btn:focus-visible::before {
  transform: translate(-60px, -50%);
}
.acac-page[data-theme="visitors"] .acac-who__btn::before {
    border-left-color: #000000 !important;
}

.acac-page[data-theme="visitors"] .acac-who__btn::after {
  border-left-color: #000000 !important;
}

/* Artists (white page) â€” keep the default black pill but force the text
   AND its inner span to white, with white arrows. Extra specificity via
   html body so nothing else can override it. */

.acac-page[data-theme="artists"] .acac-who__btn,
html body .acac-page[data-theme="artists"] .acac-who__btn,
{
  background: #000000 !important;
  color: #ffffff !important;
}

.acac-page[data-theme="artists"] .acac-who__btn::before {
  border-right-color: #000 !important;
}

.acac-page[data-theme="artists"] .acac-who__btn::after {
  border-left-color: #000 !important;
}

.acac-page[data-theme="visitors"] .acac-who__btn:hover::after {
    border-left-color: #000 !important;
}

.acac-page[data-theme="visitors"] .acac-who__btn:hover::before {
    border-right-color: #000 !important;
}

.acac-who__btn:hover::after,
.acac-who__btn:focus-visible::after {
  transform: translate(-60px, -50%);
}

.acac-page[data-theme="artists"] .acac-who__btn:hover {
    background-color: #5D0E4D;
}

/* ========================================
   EXHIBITIONS (Visitors only)
   ======================================== */

.acac-exhibitions {
  padding: 74px 0 120px;
}

.acac-exhibitions h2 {
  text-align: center;
  margin-bottom: 49px;
}

.acac-exhibitions__layout {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* Left Column - Featured (sticky during right-column scroll) */

.acac-exhibitions__left {
    position: sticky;
    top: 120px;
    align-self: flex-start;
    width: calc(51.7% - 7.5px);
}
.acac-exhibitions__layout .acac-exhibitions__right {
    width: calc(48% - 7.5px);
}

.acac-exhibitions__featured-img {
  width: 100%;
  height: 490px;
  border-radius: 245px 0 0 245px;
  overflow: hidden;
  margin-bottom: 21px;
}

.acac-exhibitions__featured-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 800ms ease;
}

.acac-exhibitions__featured-img:hover img {
  transform: scale(1.04);
}

.acac-exhibitions__featured-text {
  padding-left: 0;
}

.acac-exhibitions__featured-text h3 {
  font-size: 50px;
  line-height: 1.1;
  margin-bottom: 2px;
}

.acac-exhibitions__featured-text p {
    font-weight: 800;
    font-size: 40px;
    line-height: 1.1;
    color: #959595;
    margin-bottom: 29px;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

/* All exhibition list cards: image rounded right side only, text below */

.acac-exhibitions__card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  margin-bottom: 40px;
}

.acac-exhibitions__card-img {
  width: 100%;
  height: 327px;
  border-radius: 0 163px 163px 0;
  overflow: hidden;
  flex-shrink: 0;
  margin-bottom: 24px;
}

.acac-exhibitions__card-img--oval {
  border-radius: 0 163px 163px 0;
}

.acac-exhibitions__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 800ms ease;
}

.acac-exhibitions__card-img:hover img {
  transform: scale(1.04);
}

.acac-exhibitions__card-text {
  padding-right: 50px;
}

.acac-exhibitions__card-text h4 {
    font-size: 36px;
    line-height: 40px;
    font-weight: 900;
    margin-bottom: 0;
    letter-spacing: -0.00em;
    text-transform: uppercase;
}
.em.pixelbones td {
    border: none !important;
}

.acac-exhibitions__card-text p {
    font-weight: 800;
    font-size: 28px;
    line-height: 38px;
    color: #959595;
    font-family: "aktiv-grotesk-extended", sans-serif;
}

/* "View All Exhibitions" â€” colors from Figma node 1233:3810 ("Button - Past Exhibitions").
   Static: white pill with 1px black border + black text. Hover: pink #ec81ff. */

.acac-exhibitions__view-all {
    align-self: flex-end;
    margin-top: 16px;
    margin-right: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px 41px 41px 10px;
    background: #ffffff;
    border: 1px solid #000000;
    font-family: "poppins",sans-serif;
    font-size: 18px;
    line-height: 27px;
    font-weight: 400;
    text-decoration: none;
    color: #000000;
    transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease, transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    margin-right: 0;
    width: 100%;
}

.acac-exhibitions__view-all:hover, .acac-exhibitions__view-all:focus-visible {
    background: #FF8681;
}

/* "Explore The Exhibition" featured CTA â€” same Figma button style. */

.acac-exhibitions__featured-text .acac-btn--outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px 41px 41px 10px;
  background: #ffffff;
  color: #000000;
  border: 1px solid #000000;
  font-family: "poppins",sans-serif;
  font-size: 18px;  
  font-weight: 400;
  text-transform: none;
  transition:
    background-color 400ms cubic-bezier(0.22, 1, 0.36, 1),
    color 400ms ease,
    transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
    padding: 20px 28px 17px 28px;
    line-height: 1;
}

.acac-exhibitions__featured-text .acac-btn--outline:hover,
.acac-exhibitions__featured-text .acac-btn--outline:focus-visible {
  background: #5C17C3;
  color: #fff;
}

/* ========================================
   PROGRAMS & CLASSES (sticky-stacking cards)
   ======================================== */

.acac-programs {
  padding: 92px 0 4px;
}

.acac-programs h2 {
    text-align: center;
}

.acac-programs__list {
  display: block;
  position: relative;
}

/* Each card sticks to the top with a stepped offset so successive cards
   layer above the previous one as the user scrolls past. */

.acac-programs__item {
    position: sticky;
    display: block;
    text-decoration: none;
    transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
    transform: rotate(2.058deg);
    background-color: #000;
    padding-top: 40px;
    max-width: 1440px;
    margin: 0 auto 35px;
    padding-bottom: 35px;
}

.acac-programs__item a {
  transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  /* border: 18px solid rgba(255, 255, 255, 0.20); */
  background-size: cover;
  background-repeat: no-repeat;
  background-color: #000;
  display: block;
  width: 100%;
  height: 399.021px;
  background-position: center center;
  position: relative;
}

.acac-programs__list .acac-programs__item:nth-of-type(2n + 2) {
    transform: rotate(-0.663deg);
}

.acac-programs__item{ top: 80px; z-index: 1; }

.acac-programs__item img {
  width: 101%;
  height: 101%;
  object-fit: cover;
  display: block;
  transition: transform 1000ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-programs__item:hover img {
  transform: scale(1.04);
}

.acac-programs__item h3 {
    position: absolute;
    bottom: 108px;
    left: 93px;
    z-index: 1;
    font-size: 50px;
    line-height: 38px;
    font-weight: 800;
    color: #ffffff;
    text-transform: none;
    margin: 0;
    transform: rotate(-2.058deg);
    transition: all 0.5s ease-in-out;
    text-shadow: 0 4px 19.2px rgba(0, 0, 0, 0.91);
}

.acac-programs__item a:before {
    content: "";
    position: absolute;
    width: calc(100% - 36px);
    height: calc(100% - 36px);
    border: 18px solid rgba(255, 255, 255, 0.20);
    left: 0;
    top: 0;
}

.acac-programs__list .acac-programs__item:nth-of-type(2n + 2) h3 {
    transform: rotate(0.663deg);
}

.acac-programs__item:hover {
    transform: rotate(0) !important;
}

.acac-page[data-theme] .acac-programs__item:hover h3 {
  /*color: #B7AC1F !important;*/
  color: #ebff88 !important;
  transform: rotate(0) !important;
}

.acac-programs--artists .acac-programs__item {
    background-color: #fff;
}

/* ========================================
   ARTIST OPPORTUNITIES (Artists only)
   â€” centerMode slider: 3 active centered, 2 partial dim on sides,
     all cards share the same arch shape
   ======================================== */

.acac-opportunities {
    padding: 104px 0 131px;
    text-align: center;
    overflow: hidden;
    box-shadow: 0 45px 64.8px 0 rgba(0, 0, 0, 0.10);
}

.acac-opportunities h2 {
    margin-bottom: 38px;
    color: #fff;
}
.acac-opportunities__slider {
  margin-bottom: 36px;
  padding-left: 12%;
  padding-right: 0;
}

.acac-opportunities__slide {
  padding: 0 12px;
  text-align: center;
  outline: none;
}

/* --- Image container â€” plain rectangle per Figma 543:959 (no border-radius) --- */

.acac-opportunities__img {
  position: relative;
  display: block;
  width: 100%;
  height: 434px;
  overflow: hidden;
  border-radius: 0;
  border-radius: 300px 300px 0 0;
}
.acac-page[data-theme="artists"] .acac-programs {
    padding: 72px 0 4px;
    box-shadow: none;
}
.acac-opportunities__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 1000ms cubic-bezier(0.22, 1, 0.36, 1), filter 800ms ease;
}

.acac-opportunities__slide.is-active-slide:hover .acac-opportunities__img img {
  transform: scale(1.05);
}

/* Dark overlay for inactive (peek) slides */

.acac-opportunities__img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 54.1%, rgba(0, 0, 0, 0.80) 100%), url(<path-to-image>) lightgray 50% / cover no-repeat;
    border-radius: inherit;
    transition: opacity 800ms ease;
    opacity: 1;
    z-index: 2;
    pointer-events: none;
    opacity: 0.48;
}

.acac-opportunities__slide.is-active-slide .acac-opportunities__img::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 54.1%, rgba(0, 0, 0, 0.80) 100%);
}

/* Bottom gradient for active text readability */

.acac-opportunities__slide.is-active-slide .acac-opportunities__img::before {
  opacity: 1;
}

/* Card title â€” centered dead-middle, white. Hidden by default; only
   the slide marked .is-active-slide reveals it. */

.acac-opportunities__img h4, .acac-opportunities__img h3 {
    position: absolute;
    left: 50%;
    z-index: 3;
    width: 100%;
    padding: 0 20px;
    font-weight: 800;
    font-size: 28px !important;
    line-height: 32px !important;
    color: #ffffff !important;
    text-align: center;
    text-transform: none;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.4);
    transform: translate(-50%, 0%);
    opacity: 0;
    transition: all 0.5s ease-in-out;
    bottom: 30px;
    margin-bottom: 0;
}
.acac-opportunities__img:hover h4, .acac-opportunities__img:hover h3 {
    bottom: 80px;
}

.acac-opportunities__nav button i {
    color: #000;
    display: none;
}

.acac-opportunities__slide.is-active-slide .acac-opportunities__img h4, .acac-opportunities__slide.is-active-slide .acac-opportunities__img h3 {
  opacity: 1;
}
section.acac-opportunities.air__related-opportunities .acac-opportunities__nav {
    background: #000;
    border: 3px solid #fff;
}

section.acac-opportunities.air__related-opportunities  .acac-opportunities__prev:before, section.acac-opportunities.air__related-opportunities .acac-opportunities__next:before {
    border-right: 18px solid #ffffff;
}

section.acac-opportunities.air__related-opportunities .acac-opportunities__next:before {
    border-right: 0 solid transparent;
    border-left: 18px solid #fff;
}
.acac-opportunities.air__related-opportunities {
    padding: 66px 0 78px;
}
.acac-opportunities.air__related-opportunities .acac-opportunities__dots li button {
    background: rgb(255, 255, 255, 0.25);
}
.acac-opportunities.air__related-opportunities .acac-opportunities__dots li.slick-active button {
    background: #ffffff;
}

.acac-opportunities.air__related-opportunities  .acac-opportunities__slider {
    margin-bottom: 68px;
}
/* Hover panel â€” hidden by default, fades in on slide hover. Underlined
   "Explore" with bottom-only border, zero radius, zero padding (per the
   user's spec). */

.acac-opportunities__hover {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 28px;
  z-index: 4;
  margin: 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: max-content;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  opacity: 0;
  transform: translateY(8px);
  transition: all 0.5s ease-in-out;
  pointer-events: none;
}

.acac-opportunities__hover:before {
    content: "";
    position: absolute;
    width: calc(100% - 22px);
    height: 2px;
    background-color: #fff;
    bottom: -3px;
    left: 0;
}

.is-active-slide .acac-opportunities__img:hover .acac-opportunities__hover,
.is-active-slide .acac-opportunities__img:focus-visible .acac-opportunities__hover {
  opacity: 1;
  transform: translateY(0);
}

.acac-opportunities__hover b {
  font-family: "poppins",sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
  color: #ffffff;
}
.acac-opportunities__slide .acac-opportunities__hover b{
    color: #ffffff !important;
}


.acac-opportunities__hover i {
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 11px solid #ffffff;
}

/* Nav â€” single 128x54 white pill housing prev/next arrows side by side,
   matching the Figma button. */

.acac-opportunities__nav {
  display: inline-flex;
  align-items: stretch;
  justify-content: center;
  width: 128px;
  height: 54px;
  margin: 0 auto;
  border-radius: 41px;
  background: #ffffff;
  border: 3px solid #000000;
  overflow: hidden;
  transition: background-color 300ms ease, border-color 300ms ease;
}

.acac-opportunities__prev,
.acac-opportunities__next {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: #000000;
  cursor: pointer;
  font-size: 18px;
  line-height: 1;
  transition: background-color 300ms ease, color 300ms ease;
  position: relative;
}

.acac-opportunities__prev {
  border-right: 1px solid #000000;
}

.acac-opportunities__prev:before, .acac-opportunities__next:before {
    border-top: 11px solid transparent;
    border-bottom: 11px solid transparent;
    border-right: 18px solid #000000;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.acac-opportunities__next:before {
    border-right: 0 solid transparent;
    border-left: 18px solid #000;
}

/* .slick-disabled — added by general.js when the slider can't move
   in that direction (currentSlide<=0 for prev, currentSlide >=
   slideCount-slidesToShow for next). Standard faded-pointer state
   matching the overview-cards / exi-gallery arrows. */
.acac-opportunities__prev.slick-disabled,
.acac-opportunities__next.slick-disabled {
  opacity: 0.4;
  cursor: default;
}
.acac-opportunities__prev.slick-disabled:hover,
.acac-opportunities__next.slick-disabled:hover {
  background: transparent;
}

/* Theme-aware nav (artists has a dark page section already; visitors uses
   the dark page bg so flip the pill to dark text on light there too). */

.acac-page[data-theme="visitors"] .acac-opportunities__nav {
  background: #ffffff;
  border-color: #ffffff;
}

.acac-page[data-theme="visitors"] .acac-opportunities__prev,
.acac-page[data-theme="visitors"] .acac-opportunities__next {
  color: #000000;
}

.acac-page[data-theme="visitors"] .acac-opportunities__prev {
  border-right-color: #000000;
}

/* ============================================================
   FOOTER + PROUDLY SUPPORTED BY (HTML uses .site-footer / .footer-*)
   Replicates Figma 543:958 (artists / light) + 543:960 (visitors / dark).
   The whole footer shares one theme bg per active theme; the sponsors band
   sits inside it as a separate sub-band with a slightly-different shade
   (#1c1c1c on visitors, #f2f2f2 on artists).
   ============================================================ */

.site-footer {
  position: relative;
  transition: background-color 600ms ease, color 600ms ease;
  background-color: #000000;
  overflow: hidden;
}

/* Visitors (default / dark theme) â€” Figma 543:960. */

.acac-page[data-theme="visitors"] .site-footer {
  background: #000000 !important;
  color: #ffffff !important;
}

/* Artists (white theme) â€” Figma 543:958. */

.acac-page[data-theme="artists"] .site-footer {
  background: #ffffff !important;
  color: #000000 !important;
}

/* ---------- Sponsors band ---------- */

.footer-sponsors {
  padding: 54px 88px 58px;
  text-align: center;
  transition: background-color 600ms ease;
  background-color: #1C1C1C;
  z-index: 7;
  position: relative;
}

.acac-page[data-theme="visitors"] .footer-sponsors {
  background: #1c1c1c !important;
}

.acac-page[data-theme="artists"] .footer-sponsors {
  background: #f2f2f2 !important;
}

.footer-sponsors__title {
    font-size: 28px;
    line-height: 38px;
    font-weight: 800;
    transition: color 600ms ease;
    margin-bottom: 47px !important;
    color: #fff;
    letter-spacing: 0.0em;
    text-transform: capitalize;
}

.acac-page[data-theme="visitors"] .footer-sponsors__title {
  color: #ffffff !important;
}

.acac-page[data-theme="artists"] .footer-sponsors__title {
  color: #000000 !important;
}

.footer-sponsors__logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 56px;
  margin: 0;
  padding: 0;
}

.footer-sponsors__logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: transform 400ms cubic-bezier(0.22, 1, 0.36, 1), opacity 300ms ease;
}

.footer-sponsors__logo-link img {
  max-height: 70px;
  max-width: 100%;
  width: auto;
  object-fit: contain;
  opacity: 0.92;
  transition: filter 600ms ease, opacity 300ms ease;
}

/* Visitors theme inverts the logos to solid white; artists forces them to
   solid black. The double `grayscale(1) brightness(0)` chain works on PNGs
   regardless of whether the source asset is already black, has color, or
   has any partial transparency â€” !important locks the swap in. */

.acac-page[data-theme="visitors"] .footer-sponsors__logo-link img,
.acac-menu[data-theme="visitors"] .footer-sponsors__logo-link img {
  filter: grayscale(1) brightness(0) invert(1) !important;
}

.acac-page[data-theme="artists"] .footer-sponsors__logo-link img,
.acac-menu[data-theme="artists"] .footer-sponsors__logo-link img {
  filter: grayscale(1) brightness(0) !important;
}

.footer-sponsors__logo-link:hover {
  transform: translateY(-3px);
}

.footer-sponsors__logo-link:hover img {
  opacity: 1;
}

/* ---------- Footer main grid ---------- */

.footer-main {
    position: relative;
    padding: 67px 88px 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 80px;
    align-items: start;
    overflow: hidden;
    max-width: 1343px;
    width: 100%;
    /*z-index: 5;*/
    padding-bottom: 26%;
}
.is-revealed.complate-animation-banana .footer-social-row {
    z-index: 6;
}

/* Brand column (logo + wordmark + mission text). */

.footer-logo-col {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 582px;
    position: relative;
    z-index: 7;
}
.footer-main .footer-logo-col a {
    max-width: 559px;
    width: 100%;
    margin-bottom: 18px;
}
.footer-main .footer-logo-col a svg{
    display: inline-block;
    width: 100%;
}
.acac-menu[data-theme="artists"] .footer-logo-col a svg, .acac-menu[data-theme="artists"] .footer-logo-col a polygon {
    color: #000 !important;
    fill: #000 !important;
}
.footer-logo-link {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  text-decoration: none;
  color: inherit;
}

.footer-ac-mark {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

.footer-ac-mark svg {
  display: block;
  height: 39px;
  width: auto;
  transition: fill 600ms ease;
}

.footer-ac-mark svg path {
  transition: fill 600ms ease;
}

.acac-page[data-theme="visitors"] .footer-ac-mark svg path {
  fill: #ffffff !important;
}

.acac-page[data-theme="artists"] .footer-ac-mark svg path {
  fill: #000000 !important;
}

.footer-wordmark {
  font-family: "Aktiv Grotesk Ex", Arial, sans-serif;  
  font-size: 16px;
  line-height: 22px;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: color 600ms ease;
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  line-height: 1;
}
[data-theme="artists"] .footer-logo-col a.footer-logo-link svg path {
    fill: #000;
}
[data-theme="artists"] .footer-logo-col .footer-wordmark {
    color: #000;
}


.footer-mission {
  font-family: "poppins",sans-serif;
  font-size: 18px;
  line-height: 27px;
  font-weight: 400;
  margin: 0;
  max-width: 582px;
  transition: color 600ms ease;
}
.salmon-pink-hover.btn-style:before, .salmon-pink-hover.btn-style:after {
    display: none;
}
/* Right nav columns. */

.footer-nav-col {
    display: flex;
    gap: 77px;
    padding-top: 0;
    margin-top: -5px;
    position: relative;
    z-index:7;
}

.footer-nav-group {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-width: 175px;
}

.footer-nav-group a {
  font-family: "poppins",sans-serif;
  font-size: 18px;
  line-height: 27px;
  font-weight: 400;
  color: #fff;
  text-decoration: none;
  opacity: 0.92;
  transition: opacity 300ms ease, color 600ms ease;
}

.footer-nav-group a:hover,
.footer-nav-group a[aria-current="page"] {
  opacity: 1;
}

.footer-social-row a {
    background-color: #fff;
    outline: none;
    padding-top: 3px;
}

.footer-social-row .footer-banana {
    background-color: transparent;
    outline: none;
}
.footer-social-row a:focus {
    outline: none;
}

.footer-social-row .footer-banana path:not(.f-c-hover) {
    fill: #fff;
    outline: none;
}

.footer-animation-social {
    position: absolute;
    right: 760px;
    bottom: 76px;
    width: 390px;
}

.footer-animation-social .toptobottom-social-wrap:nth-of-type(3) a.footer-social__link {
    position: absolute;
    right: -11px;
    transform: rotate(17deg) !important;
}

.footer-animation-social .toptobottom-social-wrap:nth-of-type(2) a.footer-social__link{
    position: absolute;
    bottom: 27px;
    right: 110px;
    transform: rotate(-15deg) !important;
}

.footer-animation-social a.footer-social__link {
    position: absolute;
    right: 170px;
    transform: rotate(11deg) !important;
}

/* ---------- Social pills row ---------- */

.footer-social-row {
    display: flex;
    align-items: center;
    gap: 18px;
    border-bottom: 1px solid #4E4E4E;
    z-index: 0;
}

.footer-social__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 178px;
  height: 58px;
  padding: 0 28px;
  font-family: "poppins",sans-serif;
  font-size: 18px;
  line-height: 27px;
  font-weight: 400;
  text-decoration: none;
  border-radius: 41px;
  transition: background-color 600ms ease, color 600ms ease, transform 300ms ease;
}

.acac-menu[data-theme="artists"] .footer-banana {
    background-color: transparent;
}

.acac-menu[data-theme="artists"] .footer-social-row .footer-banana path:not(.f-c-hover)
 {
    fill: #000;
}

/* Visitors â†’ white pill / black text. Artists â†’ black pill / white text. */

.acac-page[data-theme="visitors"] .footer-social__link {
  background: #ffffff !important;
  color: #000000 !important;
}

.acac-page[data-theme="artists"] .footer-social__link {
  background: #000000 !important;
  color: #ffffff !important;
}

.footer-social__link:hover {
  transform: translateY(-2px);
}

.footer-social__link--fb,
.footer-social__link--ig,
.footer-social__link--yt {
  /* Figma uses different per-pill heights; we keep them uniform for clean
     web rendering. The accent colours come from the theme rules above. */
}

/* ============================================================
   Footer fall-in (scroll-triggered) + social hover + banana
   Triggered by JS adding .is-revealed to .site-footer when the
   footer scrolls into the viewport.
   ============================================================ */

/* Stage holds shapes/pills/banana; relative so absolute children align. */

.footer-social-row {
  position: relative;
}

/* Initial state: each .toptobottom-social-wrap (one per social icon) and
   the banana wrapper start above their resting position and invisible.
   They animate down â€” one after another â€” when .site-footer.is-revealed
   is added by the IntersectionObserver. The wraps drive the falling so
   the inner .footer-social__link pills don't double-animate. */

.toptobottom-social-wrap, .footer-banana {
  transform: translateY(-520px) rotate(-6deg);
  opacity: 0;
  transition:
    transform 1100ms cubic-bezier(0.18, 0.89, 0.32, 1.28),
    opacity 700ms ease;
}

.site-footer.is-revealed .toptobottom-social-wrap,
.site-footer.is-revealed .footer-banana {
  transform: translateY(0) rotate(0);
  opacity: 1;
}

/* Each wrap drops in one-by-one with a clear gap so the eye registers
   them landing in sequence (not all at once). 320ms gap = each item
   has fully settled before the next leaves the top. */

.site-footer.is-revealed .toptobottom-social-wrap:nth-of-type(1) { transition-delay: 100ms; }

.site-footer.is-revealed .toptobottom-social-wrap:nth-of-type(2) { transition-delay: 420ms; }

.site-footer.is-revealed .toptobottom-social-wrap:nth-of-type(3) { transition-delay: 740ms; }

.site-footer.is-revealed .footer-banana                          { transition-delay: 1080ms; }

/* === Top-to-bottom drop applied to the actual <a class="footer-social__link">
       pills (the wraps are markers; the pills are position: absolute with
       their own transform: rotate(...) !important).
       Uses the modern `translate` property so it composes with `transform`
       (instead of fighting the !important rotate above). */

.footer-animation-social span {
  translate: 0 -400px;
  opacity: 0;
  transition: all 0.5s ease-in-out;
}

.site-footer.is-revealed .footer-animation-social .toptobottom-social-wrap:nth-of-type(1) span {
  translate: 0 0;
  opacity: 1;
  transition-delay: 100ms;
}

.site-footer.is-revealed .footer-animation-social .toptobottom-social-wrap:nth-of-type(2) span {
  translate: 0 0;
  opacity: 1;
  transition-delay: 480ms;
}

.site-footer.is-revealed .footer-animation-social .toptobottom-social-wrap:nth-of-type(3) span {
  translate: 0 0;
  opacity: 1;
  transition-delay: 860ms;
}

.site-footer.is-revealed .footer-banana {cursor: auto;margin-bottom: -31px;}

/* Each path inside the banana SVG falls in one-by-one for an extra
   playful flourish. transform-box: fill-box so translateY is relative
   to each path's own bounding box (works in modern browsers).
   transform-origin keeps each path falling straight down. */

.footer-banana__path {
  transform: translateY(-760px);
  transform-box: fill-box;
  transform-origin: 50% 50%;
  opacity: 0;
  transition:
    transform 900ms cubic-bezier(0.18, 0.89, 0.32, 1.28),
    opacity 600ms ease,
    fill 400ms ease;
}

.site-footer.is-revealed .footer-banana__path {
  transform: translateY(0);
  opacity: 1;
}

/* Per-path delays â€” paths fall top-down in source order. */

.site-footer.is-revealed .footer-banana__path:nth-of-type(1) { transition-delay: 1180ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(2) { transition-delay: 1300ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(3) { transition-delay: 1420ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(4) { transition-delay: 1540ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(5) { transition-delay: 1660ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(6) { transition-delay: 1780ms; }

.site-footer.is-revealed .footer-banana__path:nth-of-type(7) { transition-delay: 1900ms; }

/* ---------- Social hover (matches the Magic Makers pill accent) ---------- */

.footer-social__link:hover,
.footer-social__link:focus-visible {
  background: #5d0e4d !important;
  color: #ffffff !important;
  transform: translateY(-2px);
}

/* ---------- Banana mascot ---------- */

.footer-banana {
    position: absolute;
    right: 4%;
    bottom: 12px;
    display: inline-block;
    width: 660px;
    height: 390px;
    cursor: pointer;
    text-decoration: none;
    transform-origin: 50% 100%;
    z-index: 2;
}

.footer-banana__svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

.footer-banana__shape {
  transition: opacity 350ms ease, fill 600ms ease;
}

.acac-page[data-theme="visitors"] .footer-banana__shape { fill: #ffffff; }

.acac-page[data-theme="artists"]  .footer-banana__shape { fill: #000000; }

/* Image inside banana â€” hidden by default, revealed only when the banana
   path itself is hovered (not when other paths around it are hovered).
   :has() walks from the SVG up to the banana path's hover state. */

.footer-banana__image {
  opacity: 0;
  transition: all 0.5s ease-in-out;
  pointer-events: none;
}


.footer-banana__svg:has(.footer-banana__path--main:hover) .footer-banana__image,
.footer-banana__svg:has(.footer-banana__main-link:hover) .footer-banana__image,
.footer-banana__svg:has(.footer-banana__main-link:focus-visible) .footer-banana__image {
  opacity: 1;
}
.banner-moment:hover .footer-banana__image {
    transform: translateX(-4px) rotate(-3deg);
    opacity: 0;
}

a.footer-banana__main-link:hover {
    transform: translateX(-4px) rotate(-3deg);
}

/* The banana <a> link inherits the pointer-finger cursor so the user knows
   only this path is the link target. */

.footer-banana__main-link,
a.footer-banana__main-link:hover {
    cursor: pointer;
}

/* Banana path (the curved fruit profile, 7th path in the SVG) â€” gets its
   own accent fill on hover so it visibly "lights up" while the surrounding
   shapes keep their neutral theme color. The shape group no longer fades
   out on hover so the colour change actually shows. */

.footer-banana__path--main {
  transition: fill 350ms ease, transform 900ms cubic-bezier(0.18, 0.89, 0.32, 1.28), opacity 600ms ease;
}

.footer-banana__path--main:not(.f-c-hover):hover{
  fill: #5d0e4d;
}
a.footer-banana__main-link {
    transform: rotate(-2deg);
    transform-origin: center center;
    transition: transform 1.5s ease-in-out infinite;
}

a.footer-banana__main-link:hover {
    animation: sway 1.5s ease-in-out infinite;
}

a.footer-banana__main-link:not(:hover) {
    animation: none;
}

@keyframes sway {
    0%,100% { transform: rotate(-2deg); }
    50% { transform: rotate(2deg); }
}

 
path.footer-banana__path.footer-banana__path--main{
    transition: all 0.2s;
}
a.footer-banana__main-link:not(:hover) path.footer-banana__path.footer-banana__path--main.f-c-hover{
    opacity: 0 !important;
}

/* Wiggle/shake animation on banana hover removed at the user's request. */

/* ---------- Bottom bar (copyright + designed-by) ---------- */

.footer-bottom {
    margin: 0 88px;
    padding: 20px 0 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: border-color 600ms ease;
    align-items: anchor-center;
}
.footer-bottom p.footer-credit a {
    text-decoration: underline;
}

.acac-page[data-theme="visitors"] .footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.acac-page[data-theme="artists"] .footer-bottom {
  border-top: 1px solid rgba(0, 0, 0, 0.18) !important;
}

.footer-copyright,
.footer-credit {
  margin: 0;
  font-family: "poppins",sans-serif;
  font-size: 14px;
  line-height: 27px;
  font-weight: 400;
  transition: color 600ms ease;
}
.footer-credit p img {
    display: inline-block;
    width: 16px;
    margin: 0 5px;
}

.footer-credit p {display: flex;align-items: center;font-size: 14px;}

.footer-credit p a {
    text-decoration: underline;
}

.footer-copyright small {
  font-size: inherit;
}

.footer-credit a {
  color: inherit;
  text-decoration: none;
  transition: opacity 300ms ease;
}

.footer-credit a:hover {
  opacity: 0.7;
}

[data-theme="artists"] footer.site-footer {
    background-color: #fff;
}

[data-theme="artists"] footer.site-footer .footer-logo-col p {
    color: #000;
}

[data-theme="artists"]  .footer-sponsors {
    background-color: #F2F2F2;
}

[data-theme="artists"] .footer-sponsors p.footer-sponsors__title {
    color: #000;
}

[data-theme="artists"]  ul.footer-nav-group li a {
    color: #000;
}

[data-theme="artists"] .footer-social-row a {
    background-color: #000;
    color: #fff;
}

[data-theme="artists"] .footer-bottom {
    border-color: #000;
}

[data-theme="artists"] .footer-bottom p {
    color: #000;
}

[data-theme="artists"] .footer-social-row {
    border-bottom: 1px solid #DFDFDF;
}
[data-theme="artists"] .footer-bottom p svg path {
    fill: #000;
}
/* ========================================
   CUSTOM HOVER CURSORS
   - White cursor on .acac-hero-banner__label[data-label="visitors"] and
     .acac-hero-banner__tab--left
   - Black cursor on .acac-hero-banner__label[data-label="artists"] and
     .acac-hero-banner__tab--right
   The two divs sit at body level (position: fixed). JS toggles
   .is-visible on mouseenter/leave and updates translate3d() on mousemove.
   `pointer-events: none` keeps them from intercepting clicks; the source
   elements get `cursor: none` so the OS arrow disappears while ours is up.
   Disabled on touch / small screens to avoid trapped state on tap.
   ======================================== */
body {
    background-color: #000;
    overflow-x: hidden;
}
body.home {
    background-color: #fff;
}
.acac-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 40px;
  height: 40px;
  z-index: 99999;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: translate3d(-9999px, -9999px, 0);
  opacity: 0;
  transition: opacity 220ms ease;
  will-change: transform, opacity;
}

.acac-cursor.is-visible {
  opacity: 1;
}

.acac-cursor--white::before,
.acac-cursor--white::after,
.acac-cursor--black::before,
.acac-cursor--black::after {
  content: '';
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: opacity 0ms ease;  
}

.acac-cursor--white::before {
  background-image: url(assets/images/new-cusor-icon.svg);
  background-position: 0 20px;
  width:40px;
  height:70px;
  background-size: 40px 40px;
}

.acac-cursor--white::after {
    background-image: url(assets/images/new-cusor-icon-hover.svg);
  background-size: 40px 40px;
  opacity: 0;
  width:40px;
  height:70px;
  
}

.acac-cursor--black::before {
  background-image: url(assets/images/new-cusor-icon.svg);
}

.acac-cursor--black::after {
background-image: url(assets/images/new-cusor-icon-hover.svg);
  background-size: 40px 40px;
  opacity: 0;
}

.acac-cursor.is-on-link::before {
  opacity: 0;
}

.acac-cursor.is-on-link::after {
  opacity: 1;
}

.acac-cursor--painting {
  background-image: url(assets/images/stain-of-paint-pack-hand.png);
  background-size: 70px;
  background-position: top center;
  width:70px;
  height:70px;
}


.overview-hero {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding-top: 213px;
    background-color: #000;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 1041px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
            align-items: end;    
}
.overview-hero .overview-hero__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    height: calc(100% - 250px);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    top: 0;
    width: 100%;
}
.overview-hero .overview-hero__overlay:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
}

.overview-hero .overview-hero__shape {
    position: absolute;
    right: 0;
    width: 45%;
    max-width: 649px;
    border-radius: 400px 0 0 400px;
    overflow: hidden;
    z-index: 2;
    /* opacity: 0; */
    bottom: 0;
}
.overview-hero .overview-hero__inner {
    position: relative;
    z-index: 1;
    padding-bottom: 95px;
    max-width: 736px;
    width: 100%;
	padding-top:75px;
}

@media(max-width:767px){
	.overview-hero .overview-hero__inner {
		
		padding-top:0px;
	}
}

.overview-hero .curve-top {
    max-height: 491.8105px;
}
.overview-hero .overview-hero__shape img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  object-position: left;
}
.overview-hero .overview-hero__inner h1 {
    line-height: 1;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #ffffff;
    margin: 0 0 53px;
    max-width: 937px;
    line-height: 0.92;
}
.overview-hero__inner > div {
    max-width: 621px;
}
.overview-hero__inner p {
    line-height: 1.5;
}
.overview-hero__inner h2 {
    color: #fff;
    font-size: 28px;
    text-transform: none;
    margin-bottom: 19px;
    font-weight: bold;
    letter-spacing: 0.00em;
    line-height: 1.31;
}
@keyframes acac-overview-fade-up {
  0%   { opacity: 0; transform: translateY(28px); }
  100% { opacity: 1; transform: translateY(0); }
}

/* ---- 5 stacked cards (black section, white cards) ---- */

.overview-cards {
  padding: 80px 0 103px;
  background: #000000;
}

.overview-cards .container {
  max-width: 1439px;
  margin: 0 auto;
  padding: 0 68px;
  width: 100%;
}
.overview-cards .container > h2 {
    text-align: center;
    color: #fff;
    margin-bottom: 35px;
}
.overview-cards .container > p {
    text-align: center;
    max-width: 880px;
    margin: 0 auto 70px;
    line-height: 1.5;
}
.overview-cards .overview-cards__list {
    display: flex;
    flex-direction: column;
    gap: 43px;
}

.overview-cards .overview-card {
    background: #ffffff;
    color: #000;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    border-radius: 8px;
    align-items: self-start;
}

.overview-cards .overview-card__media {
    position: relative;
    overflow: hidden;
    border: 14px solid #ffffff;
    border-radius: 0 1000px 1000px 0;
    width: calc(45.6% - 20px);
    left: 0;
    height: 100%;
    max-height: 647.2603px;
    min-height: 641.2603px;
}

.overview-cards .overview-card__media img {
    width: 100%;
    object-fit: cover;
    transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
    height: 100%;
    position: absolute;
}
.overview-card .overview-text-area {
    width: calc(55% - 44px);
    padding: 30px 50px 30px 0;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: center;
    min-height: 641.2603px;
}
.overview-text-area a.btn-style {
    width: max-content;
}

.overview-hero__inner .vi__info-grid-inner {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 39px 57px;
    max-width: 761px;
    margin-bottom: 71px;
}
.overview-hero__inner .vi__info-grid-inner .vi__info-cell h2 {
    font-size: 30px;
    text-transform: uppercase;
    margin-bottom: 6px;
    font-weight: 900;
    letter-spacing: 0.00em;
}
.overview-hero__inner .vi__info-grid-inner .vi__info-cell p a {
    color: #FFF;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    margin-top: 8px;
    display: inline-block;
    text-decoration: underline;
}
.overview-hero__inner .vi__info-grid-inner .vi__info-cell p a:hover {
    opacity: 0.5;
}
.overview-hero .container {
    display: flex;
    max-width: 1369px;
}

.overview-hero .curve-left {
    position: relative;
    width: 40%;
    max-width: 100%;
    border-radius: 0;
    display: flex;
    justify-content: end;
    align-items: end;
	
	padding-top:35px;
}

@media(max-width:1200px){
	.overview-hero .curve-left {
		padding-top:56px;
	}
}

.overview-hero .container {
    display: flex;
    /*align-items: end;*/
	align-items: start;
    justify-content: space-between;
}
.overview-hero .curve-left {    
    width: 40%;    
    display: flex;
    justify-content: center;
    height: inherit !important;
}

.overview-hero .curve-left img {
    border-radius: 400px 400px 0 0;
    height: 602px;
    max-width: 506.5781px;
}
.overview-hero__inner .vi__info-grid-inner .vi__info-cell p {letter-spacing: -0.003em;margin-bottom: 0;}

/* The text wrapper takes column 3 of the card grid; its inner h2 / h3 /
   p / link are unclassed and styled by tag inside this scope. */
.overview-cards .overview-text-area h2 {
  letter-spacing: 0;
  text-transform: uppercase;
  color: #000;
  margin: 0 0 27px;
  line-height: 1;
}
.overview-text-area h3 {
    font-size: 28px;
    font-weight: 400;
    text-transform: none;
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head {
    font-weight: 900;
    font-size: 30px;
    line-height: 36px;
    margin: 0 0 5px;
    max-width: 584px;
    color: #000;
    text-transform: none;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    display: flex;
    align-items: anchor-center;
}

.overview-cards .overview-text-area p {
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 27px;
  margin: 0 0 32px;
  max-width: 584px;
  color: #000;
}

/* ============================================================
   OVERVIEW CARD — ACCORDION (single-card opt-in)
   Every rule here is scoped under .overview-card--has-accordion
   so NO other .overview-card instance receives the styling.
   Smooth open/close via grid-template-rows 0fr → 1fr — keeps the
   motion jerk-free without JS height measurement. Block 4 in
   general.js handles the aria-expanded + .is-open toggle and the
   hidden-attribute re-application after the close transition. */

/* Wrapper around the stack of individual .overview-card__accordion
   blocks. The first row's top border is drawn by the wrapper's
   border-top; every subsequent row's top border is the previous
   row's border-bottom. Each .accordion-link row has its own 3px
   black bottom border (defined in the Member-Levels-Dropdown
   block further down). */
.overview-card--has-accordion .overview-card__accordion-group {
    margin: 18px 0 28px;
    border-top: 3px solid #000000;
    width: 100%;
}

.overview-card--has-accordion .overview-card__accordion {
  margin: 0;
}

/* The .overview-card__accordion-link IS the accordion trigger now —
   its full design is defined further down in the "Member-Levels-
   Dropdown" block. Here we only add focus/hover affordances + the
   plus → up-arrow swap on the icon at the right edge of the row. */
.overview-card--has-accordion .overview-card__accordion-link {
  cursor: pointer;
}
.overview-card--has-accordion .overview-card__accordion-link:focus-visible {
  outline: 2px solid #B7AC1F;
  outline-offset: -2px;
}

/* Plus ↔ up-arrow icon swap. The `.overview-card__accordion-link-plus`
   span holds TWO inline SVGs stacked on top of each other — the
   chunky Figma plus and a chunky up-arrow drawn in the same stroke
   weight. On open (aria-expanded="true" on the link) the plus
   fades + spins out while the arrow fades + spins in, reading as
   a single smooth morph rather than a hard cut. */
.overview-card--has-accordion .overview-card__accordion-link-plus__icon {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  transition: opacity 360ms cubic-bezier(0.22, 1, 0.36, 1),
              transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
  transform-origin: center;
  will-change: opacity, transform;
}
.overview-card--has-accordion .overview-card__accordion-link-plus__icon--plus {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}
.overview-card--has-accordion .overview-card__accordion-link-plus__icon--up {
  opacity: 0;
  transform: rotate(-90deg) scale(0.6);
}
.overview-card--has-accordion .overview-card__accordion-link[aria-expanded="true"] .overview-card__accordion-link-plus__icon--plus {
  opacity: 0;
  transform: rotate(90deg) scale(0.6);
}
.overview-card--has-accordion .overview-card__accordion-link[aria-expanded="true"] .overview-card__accordion-link-plus__icon--up {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

/* The collapsible panel: a single-row CSS grid whose row height
   animates from 0fr (closed) to 1fr (open). The inner
   .overview-card__accordion-content has overflow:hidden so the
   row clip happens cleanly during the transition. */
.overview-card--has-accordion .overview-card__accordion-panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 480ms cubic-bezier(0.22, 1, 0.36, 1);
    border-bottom: 3px solid #000;
    padding-top: 7px;
    padding-left: 5px;
}
.overview-card--has-accordion .overview-card__accordion-panel.is-open {
    grid-template-rows: 1fr;    
    padding-bottom: 57px;
}
.overview-card--has-accordion .overview-card__accordion-panel[hidden] {
  /* Override [hidden]'s default display:none so the panel stays in
     the layout flow while collapsed (otherwise the slide animation
     can't run). JS re-adds [hidden] AFTER the close transition
     completes so the panel is properly out of the a11y tree at rest. */
  display: grid;
}
.overview-card--has-accordion .overview-card__accordion-content {
  overflow: hidden;
  min-height: 0;
}

.overview-card--has-accordion .overview-card__accordion-content > * {
  /* A tiny top padding gives the contents some breathing room from
     the trigger when fully open. */
  margin-top: 0;
}
/* Panel content — wrapper for the two link rows. Per Figma's
   Member-Levels-Dropdown (node 1911:10571), the rows sit on a
   stack of 3px black horizontal lines: one above the first row,
   one between rows, one below the last. The wrapper's top border
   handles the first line; each row's bottom border handles the
   between-and-bottom lines. */
.overview-card--has-accordion .overview-card__accordion-content {
  padding-top: 4px;
}
.overview-card__accordion-content h4 {
    font-size: 18px;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 700;
    margin-bottom: 14px;
}
.overview-card__accordion-content.coman-list-blocks ul {
    padding-left: 28px;
    margin-bottom: 31px;
}
.overview-card__accordion-content.coman-list-blocks ul li:before {
    background-color: #000;
}
.overview-card__accordion-content .panel-btn {
    display: flex;
    gap: 19px;
    flex-direction: row;
    flex-wrap: wrap;
}

/* Tier-row trigger — each is one accordion's clickable head. The
   row sits in a stacked list inside .overview-card__accordion-group;
   the row's own bottom border + the group's top border together
   form the 3px black horizontal dividers between rows. */
.overview-card--has-accordion .overview-card__accordion-link {
    outline: none;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:         "head plus"        "desc plus"        "tag plus";
    column-gap: 24px;
    row-gap: 6px;
    align-items: center;
    padding: 21px 47px 12px 4px;
    /* border-bottom: 3px solid #000000; */
    color: #000000;
    text-decoration: none;
    transition: background-color 220ms ease;
    position: relative;
}
.overview-card--has-accordion .overview-card__accordion-link-title {
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif;
  font-weight: 900;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.15;
  text-transform: uppercase;
  letter-spacing: 0;
  color: #000000;
}
.overview-card--has-accordion .overview-card__accordion-link-price {
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif;
  font-weight: 800;
  font-size: clamp(22px, 2.2vw, 30px);
  line-height: 1.2;
  color: #000000;
}
.overview-card--has-accordion .overview-card__accordion-link-price-suffix {
  font-weight: 800;
}

/* Description row — Poppins Regular 18/27 (Figma style_3YWQ0I).
   The trigger's description is now a plain <p> (no class) so we
   match it via descendant selector inside the link. */
.overview-card--has-accordion .overview-card__accordion-link > p {
    grid-area: desc;
    margin: 0;
    font-family: "poppins", sans-serif;
    font-weight: 400;
    line-height: 1.5;
    color: #000000;
}

/* Small tag — Poppins Light 16/27 (Figma style_U3H6I6). */
.overview-card--has-accordion .overview-card__accordion-link-tag {
    font-family: "poppins", sans-serif;    
    font-size: 16px;
    line-height: 1.5;
    color: #000000;
    text-transform: none;
    letter-spacing: 0.00em;
    margin-left: 17px;
    font-weight: 300 !important;
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head sub {
    font-size: 67%;
    margin-left: 9px;
    position: relative;
    top: -19px;
    font-weight: 800;
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head span{
    font-weight: 800;
}

/* Plus icon container (downloaded exact from Figma node 1897:10511)
   sits vertically centred on the right edge of the row. Two inline
   SVGs stack inside via position:absolute so they can crossfade in
   place — position:relative on the wrapper anchors them. */
.overview-card--has-accordion .overview-card__accordion-link-plus {
    grid-area: plus;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    color: #000000;
    position: absolute;
    right: -29px;
}
 .overview-cards__controls {
  display: none;
}
.overview-cards__dots ul.slick-dots {
    display: flex;
    align-items: center;
}
.overview-cards__dots ul.slick-dots li {
    margin-right: 13px;
}

.overview-cards__dots li button {
    width: 12.2488px;
    height: 12.2488px;
    padding: 0;
    font-size: 0;
    line-height: 0;
    background: rgba(255, 255, 255, 0.35);
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    transition: background-color 300ms ease, width 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.overview-cards__dots li.slick-active button {
  background: #ffffff;
}

.overview-cards .overview-cards__arrows {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 2px solid #fff;
    border-radius: 30px;
}

.overview-cards .overview-cards__arrow {
    color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    transition: background-color 280ms ease, color 280ms ease;
    width: 46px;
    height: 45px;
    align-items: center;
    justify-content: center;
}
/* Triangle icon drawn with a CSS triangle so it matches the screenshot. */

.overview-cards .overview-cards__arrow i {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
.overview-cards .overview-cards__arrow--next i { border-left: 14px solid currentColor; }
.overview-cards .overview-cards__arrow.overview-cards__arrow--prev i {border-right: 14px solid #fff;}

.overview-cards .overview-cards__arrow.slick-disabled {
  opacity: 0.4;
  cursor: default;
}

.overview-cards .overview-cards__arrow.slick-disabled:hover {
  background: transparent;
  color: #ffffff;
}

/* ---- Unified button .btn-style — single shape used across the site.
   Black asymmetric pill (10/41/41/10 radius), white text, two CSS-
   triangle pseudo-elements that slide horizontally on hover, with a
   purple #5d0e4d background on hover/focus. */

.btn-style {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: "poppins", sans-serif;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    text-decoration: none;
    border-radius: 10px 41px 41px 10px;
    background: #000000;
    color: #ffffff;
    border: 0;
    overflow: hidden;
    padding: 19px 42px 17px 69px;
    transition: background-color 500ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease;
    text-decoration: none !important;
}
.btn-style span {
  position: relative;
  z-index: 1;
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.btn-style::before,
.btn-style::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  transform: translateY(-50%);
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.btn-style::before {
    left: 41px;
    border-left: 16px solid #ffffff;
    border-right: 9px solid transparent;
}

.btn-style::after {
  right: -30px;
  border-left: 16px solid #ffffff;
}

.btn-style:hover,
.btn-style:focus-visible {
  background: #5d0e4d;
  color: #ffffff;
}

.btn-style:hover span,
.btn-style:focus-visible span {
  transform: translateX(-22px);
}

.btn-style:hover::before,
.btn-style:focus-visible::before {
  transform: translate(-60px, -50%);
}

.btn-style:hover::after,
.btn-style:focus-visible::after {
  transform: translate(-52px, -50%);
}
.salmon-pink-hover.btn-style span {
    transform: inherit !important;
}
/* ---- Accordion primitives (shared by every overview-card)
   The membership-section wrapper, media, and rows have been removed since
   the page no longer has a standalone membership block; only the head /
   panel / icon primitives remain — those are reused inside every
   .overview-card so each card can expand individually. */

 .member-accordion__body {
  position: relative;
  padding: 0;
}

.member-accordion__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-align: left;
}

.member-accordion__head-title {
  font-family: "aktiv-grotesk",sans-serif;
  font-weight: 900;
  font-size: 60px;
  line-height: 60px;
  text-transform: uppercase;
  color: #000;
}

.member-accordion__icon {
  position: relative;
  display: inline-block;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
}

.member-accordion__icon-h,
.member-accordion__icon-v {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #000;
  border-radius: 1.5px;
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1), opacity 240ms ease;
}

.member-accordion__icon-h {
  width: 24px;
  height: 3px;
  transform: translate(-50%, -50%);
}

.member-accordion__icon-v {
  width: 3px;
  height: 24px;
  transform: translate(-50%, -50%);
}

.member-accordion__head[aria-expanded="true"] .member-accordion__icon-v {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg);
}

/* The panel uses CSS-only smooth slide-open via `grid-template-rows: 0fr → 1fr`,
   which transitions cleanly without a height-jerk and doesn't require JS to
   measure heights. The inner wrapper holds overflow:hidden so the content
   clips during the slide. */

.member-accordion__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 480ms cubic-bezier(0.22, 1, 0.36, 1);
}

.member-accordion__panel[hidden] { display: grid; visibility: visible; }

/* keep grid for transition */

.member-accordion__panel.is-open {
  grid-template-rows: 1fr;
}

.member-accordion__inner {
  overflow: hidden;
  min-height: 0;
}

.member-accordion__panel.is-open .member-accordion__inner {
  padding-top: 28px;
}

.mobile-image_masks {
    display: none !important;
}

/* Artist Opportunities slider — dots pagination. Mirrors the overview-cards
   dot pattern: small white-tinted circles, the active one stretches into a
   pill. Slick injects <li><button>N</button></li> children into the <ul>. */

.acac-opportunities__dots {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.acac-opportunities__dots li {
  padding: 0 5px;
}

.acac-opportunities ul.acac-opportunities__dots ul.slick-dots {
    display: flex;
}

.acac-opportunities__dots li button {
  width: 12.2488px;
  height: 12.2488px;
  padding: 0;
  font-size: 0;
  line-height: 0;
  background: rgb(152 152 152);
  border: 0;
  border-radius: 100%;
  cursor: pointer;
  transition: background-color 300ms ease, width 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

.acac-opportunities__dots li.slick-active button {
    background: #000000;
}

.acac-page[data-theme="visitors"] .acac-opportunities__dots li button {
  background: rgba(0, 0, 0, 0.35);
}

.acac-page[data-theme="visitors"] .acac-opportunities__dots li.slick-active button {
  background: #000000;
}

.acac-opportunities__dots li button:hover {
     background: #000000;
}
ul.acac-opportunities__dots {
    display: none;
}



.hero-heading .skew-line,
.skew-heading .skew-line {
  display: block;
  overflow: hidden;
}

.word {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}

.word-inner {
  display: inline-block;
  will-change: transform, opacity;
}

.ww__split-text p {
  margin: 0 0 27px;
  font-size: 18px;
  line-height: 27px;
  font-weight: 400;  
  color: #000;
}
.ww__split-text p a {
    text-decoration: underline;
}

.ww__split-text p a:hover {
    opacity: 0.5;
}
.ww__split-section .ww__split--dark .ww__split-text h2, .ww__split-section .ww__split--dark .ww__split-text p, .ww__split-section .ww__split--dark .ww__split-text h4 {
    color: #fff !important;
}
.ww__split-section {
    display: flex;
    flex-direction: column;
    margin-top: -40px;
    padding-top: 63px;
    background-color: #fff;
    -webkit-clip-path: polygon(0 3.7%, 100% 0, 100% 96.3%, 0 100%);
    clip-path: polygon(0 3.7%, 100% 0, 100% 96.3%, 0 100%);
    position: relative;
    z-index: 2;
    padding-bottom: 20px;
}
section.ww__split-section.ww__split-section--dark {
    background-color: transparent;
    margin-top: 0;
    padding-top: 0;
    -webkit-clip-path: initial !important;
    clip-path: initial !important;
    padding-bottom: 30px;
}
.ww__split-section--community {
  background: #0d0d0d;
}

.ww__split-section .ww__split {
    z-index: 3;
    padding: 0 0 39px;
    position: relative; 
}
.ww__split-section .ww__split--image-right {
    margin-bottom: 58px;
}

.ww__split-section .ww__split.ww__split--image-right figure.ww__split-img {
    right: 0;
    left: inherit;
}
.ww__split-section .ww__split--dark {
    background-color: #000;
    position: relative;
    z-index: 0;
    margin-top: 40px;
}
section.ww__split-section.ww__split-section--dark .ww__split--dark + .ww__split--dark {
    margin-bottom: 40px;
}
section.ww__split-section.ww__split-section--dark .ww__split--image-right {
    margin-bottom: 50px;
}
.ww__split-section .ww__split--dark h3 a {
    color: #fff;
    text-decoration: underline;
}

.ww__split-section .ww__split--dark h3 a:hover {
    opacity: 0.5;
}
.ww__split .container {    
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
    max-width: 1369px;
}
.ww__split--image-left .container {
    justify-content: end;
}
.ww__split figure.ww__split-img {
    position: absolute;
    left: 0px;
    top: 0;
    width: 46.4%;
    height: calc(100% - 141px);
    margin-bottom: 0;
    top: 50%;
    transform: translateY(-50%);
    min-height: 491.81px;
}
.ww__split .container .ww__split-text {
    width: 50.5%;
    max-width: 100%;
    padding-right: 20px;
    min-height: 491.81px;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
}
.ww__split-section .ww__split.ww__split--image-right .ww__split-text {
    padding-right: 33px;
}
.ww__split-text p:last-child {
    margin-bottom: 0;
}
.ww__split-section .ww__split-img {
  grid-area: img;
  margin: 0;
  position: relative;
  width: 100%;
  aspect-ratio: 648 / 491;
  overflow: hidden;
}

.ww__split-section .ww__split-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ww__split-section .ww__split-img--rounded-right { border-radius: 0 300px 300px 0; }
.ww__split-section .ww__split-img--rounded-left  { border-radius: 300px 0 0 300px; }

.ww__split-section .ww__split-text {
  grid-area: text;
  max-width: 604px;
}

.ww__split-section .ww__split-text h2 {  
  line-height: 1;
  margin-bottom: 37px;
  color: #000;
}
.ww__split-section--community .ww__split-text p:first-of-type {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 700;
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1.25;
  margin-bottom: 24px;
}
.coman-list-blocks ul {
    padding-left: 24px;
    margin: 0 0 0;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
}

.coman-list-blocks ul li {
    margin-bottom: 5px;
    position: relative;
}

.coman-list-blocks ul li:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    left: -15px;
    top: 9px;
    background-color: #fff;
    border-radius: 100%;
}
.ww__split-section .ww__split-text a.btn-style {
    max-width: max-content;
}
.ww__split .container .ww__split-text h5 {
    color: #000;
    font-size: 18px;
    text-decoration: none;
    text-transform: none;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}
.ww__split .container .ww__split-text .manage-tag h3 {
    color: #000;
    font-size: 18px;
    text-decoration: none;
    text-transform: none;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.15;
    margin-top: 0;
}
.ww__split .container .ww__split-text h4 {
    font-size: 18px;
    margin-bottom: 0;
    font-family: "Poppins", Arial, sans-serif;
    margin-bottom: 2px;
    font-weight: 700;
}

.ww__split .container .ww__split-text h4 + ul {
    margin-bottom: 27px;
}
.ww__split .container .ww__split-text h4 + ul:last-child {
    margin-bottom: 0;
}
/* ---------- E. Land Acknowledgment ---------- */
.ww__land {
    background: #ffffff;
    color: #000000;
    padding: 93px 0 60px;
    text-align: center;
    position: relative;
    z-index: 1;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
}

.ww__land .ww__land-inner {
    max-width: 1033px;
    margin: 0 auto;
}

.ww__land h2 { 
    line-height: 1;
    margin-bottom: 40px;
    font-size: 40px;
}

.ww__land-inner h3 {
    color: #000;
    font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
    font-weight: 700; 
    line-height: 1.3;
    letter-spacing: 0;
    text-transform: none;
    margin: 0 auto 23px;
    font-size: 28px;
}

.ww__land p {
    font-size: 18px; 
    color: #000;
    margin: 0 auto;
    letter-spacing: 0.00em;
    margin-bottom: 28px;
    font-family: "aktiv-grotesk-extended", sans-serif;
    line-height: 1.5;
}
.ww__land h4 {
    line-height: 1.3;
    font-size: 28px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0.00em;
}
.ww__land a:hover {
    opacity: 0.5;
}
.ww__land a {
  color: #000;
  text-decoration: underline;
  text-underline-offset: 3px;
}
/* ---------- F. Our Staff ---------- */
.ww__staff {
  background: #000;
  padding: 64px 0 121px;
}

.ww__staff .ww__staff-inner { max-width: 1200px; margin: 0 auto; }

.ww__staff h2 {
    line-height: 1;
    text-align: center;
    margin-bottom: 33px;
    color: #fff;
}
.ww__staff-inner h2 + p {
    max-width: 755px;
    margin: 0 auto 78px;
    font-family: "aktiv-grotesk-extended", sans-serif;
    font-weight: 700;
    font-size: 28px;
    text-align: center;
    line-height: 1.3;
}
.ww__split-text h3 {
    font-size: 28px;
    font-weight: 700;
    text-transform: none;
    margin-bottom: 17px;
    letter-spacing: -0.02em;
    line-height: 36px;
}
.ww__split-section .ww__split--dark h3 {
    color: #fff;
}
.ww__staff .ww__staff-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 525px));
    gap: 68px 66px;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}

.ww__staff .ww__staff-card {
  display: flex;
  flex-direction: column;
  margin: 0;
  color: #fff;
}

.ww__staff .ww__staff-paint {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 300px 300px 8px 8px;
  overflow: hidden;  
  cursor: url(assets/images/stain-of-paint-pack-hand.png) 4 28, crosshair;
  -webkit-tap-highlight-color: transparent;
}

/* CANVAS PAINT-REVEAL (ported from who-we-are05.html).
   Two stacked layers inside .ww__staff-paint:
     1. <img class="ww__staff-img--base"> — sits at the bottom; this
        is the "painted/revealed" version exposed where the user paints.
     2. <canvas class="ww__staff-canvas"> — drawn with the "cover"
        photo on init; JS uses destination-out to erase brush strokes
        on drag, exposing the base image underneath.
   The base img gets a sepia/painterly filter so the reveal reads as a
   deliberately different second image even when both src files point
   at the same photo (swap to a real painted asset later and remove
   the filter line). */
.ww__staff .ww__staff-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: none !important;
  object-position: left;
}

.ww__staff .ww__staff-img--base {
  z-index: 1;
}

.ww__staff .ww__staff-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 101%;
  z-index: 2;
  touch-action: none;
  cursor: url(assets/images/stain-of-paint-pack-hand.png) 4 28, crosshair;
}

.ww__staff .ww__staff-hint {
  position: absolute;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: 20px;
  background: rgba(0,0,0,0.55);
  color: #fff;
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  pointer-events: none;
  transition: opacity 360ms ease;
  display: none;
}
.ww__staff .ww__staff-hint.is-hidden { opacity: 0; }

.ww__staff .ww__staff-card figcaption {
  padding: 23px 2px 0;
}

.ww__staff .ww__staff-card figcaption h3 {
    font-size: 30px;
    line-height: 1.2;
    margin-bottom: 12px;
}
.ww__staff .ww__staff-card figcaption h4 {
    text-transform: inherit;
    color: #FFF;
    font-family: Poppins;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    letter-spacing: -0.006em;
    margin-bottom: 15px;
}

.ww__staff .ww__staff-card figcaption p {
    font-size: 18px;
    line-height: 27px;
    margin: 0 0 8px;
    color: #fff;
}
.ww__staff .ww__keep-reading {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 14px;
    padding: 0;
    background: transparent;
    border: 0;
    font: inherit;
    line-height: 27px;
    letter-spacing: 0;
    transition: opacity 200ms ease;
    color: #FFF;
    font-family: Poppins;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
}

.ww__staff .ww__keep-reading span {
    display: inline-block;
    width: 24px;
    height: 24px;
    position: relative;
    font-size: 0;
}

.ww__staff .ww__keep-reading span::before,
.ww__staff .ww__keep-reading span::after {
  content: "";
  position: absolute;
  background: #fff;
  border-radius: 1px;
}
.ww__staff .ww__keep-reading span::before { left: 0; right: 0; top: 50%; height: 2px; transform: translateY(-50%); }
.ww__staff .ww__keep-reading span::after  { top: 0; bottom: 0; left: 50%; width: 2px; transform: translateX(-50%); }

.ww__staff .ww__keep-reading:hover { opacity: 0.7; }
.ww__staff .ww__keep-reading:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

/* ---------- G. Board of Directors ---------- */
.ww__board {
    color: #000000;
    padding: 102px 0 91px;
    position: relative;
    z-index: 1;
    background-color: #fff;
    -webkit-clip-path: polygon(0 5%, 100% 0, 100% 95%, 0 100%);
    clip-path: polygon(0 5%, 100% 0, 100% 95%, 0 100%);
}
.ww__board .ww__board-inner { max-width: 1013px; margin: 0 auto; }

.ww__board h2 {
  line-height: 1;
  margin-bottom: 47px;
  color: #000;
}

.ww__board .ww__board-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 67px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.ww__board .ww__board-grid li {  
  padding-bottom: 3px;
}

.ww__board .ww__board-grid p {
  font-size: 18px;
  line-height: 30px;
  margin: 0;
  color: #000;
}
.ww__board .ww__board-grid p strong {
    font-weight: 700;
}
.ww__board .ww__board-grid p:first-child { font-weight: 700; font-size: 20px; }

/* ---------- H. Annual Reports ----------
   Desktop: 1 large featured tile on the left (spans both rows),
   2x2 grid of small tiles on the right. Mobile: Slick converts the
   flat list into a horizontal slider — see the slick block below. */
.ww__reports {
    background: #000;
    padding: 71px 0 91px;
}

.ww__reports .ww__reports-inner { max-width: 1276px; margin: 0 auto; }

.ww__reports h2 {
  line-height: 1;
  text-align: center;
  margin-bottom: 68px;
  color: #fff;
}
.ww__reports .container {
    max-width: 1180px;
}

.ww__reports .ww__reports-grid {
  display: grid;
  grid-template-columns: minmax(0, 526px) minmax(0, 1fr);
  grid-template-rows: 326px 326px;
  gap: 30px;
}

.ww__reports .ww__report-card--featured {
  grid-column: 1 / 2;
  grid-row: 1 / span 2;
}

/* Place the 4 small cards into a virtual 2x2 in the right column.
   We use auto-flow: column so consecutive cards fill column 2 row 1,
   column 2 row 2, then wrap into column 3 row 1, column 3 row 2 —
   but since the grid only has 2 columns of width, the 4 small cards
   are explicitly placed via :nth-child below to lock the layout. */
.ww__reports .ww__reports-grid {
  grid-template-columns: minmax(0, 526px) minmax(0, 1fr) minmax(0, 1fr);
}

.ww__reports .ww__report-card:nth-of-type(2) { grid-column: 2; grid-row: 1; }
.ww__reports .ww__report-card:nth-of-type(3) { grid-column: 3; grid-row: 1; }
.ww__reports .ww__report-card:nth-of-type(4) { grid-column: 2; grid-row: 2; }
.ww__reports .ww__report-card:nth-of-type(5) { grid-column: 3; grid-row: 2; }

.ww__reports .ww__report-card {
  position: relative;
  display: block;
  overflow: hidden;  
  background: #111;
  text-decoration: none;
  color: #fff;
  isolation: isolate;
}

.ww__reports .ww__report-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

.ww__reports .ww__report-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    background: rgba(236, 129, 255, 0.8);
    border-radius: 0 600px 600px 0;
    opacity: 0;
    transition: all 0.5s ease-in-out;
    pointer-events: none;
    left: -500px;
    padding: 0 21px;
    width: 70%;
    height: 100%;        
    color: #000000;
}
.ww__reports .ww__report-overlay i {
    display: inline-block;
    flex-shrink: 0;
    align-self: center;
    width: 0;
    height: 0;
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-left: 22px solid #000000;
}

.ww__reports .ww__report-card:hover .ww__report-overlay,
.ww__reports .ww__report-card:focus-visible .ww__report-overlay {     opacity: 1;
    left: 0;
 }
 .ww__reports .ww__report-overlay span {
    font-size: 20px;
    font-family: "poppins", sans-serif;
    color: #000;
    border-bottom: 1px solid #000;
    line-height: 1;
    font-weight: 700;
}

.ww__reports .ww__report-card:hover img { transform: scale(1.04); }

.ww__reports .ww__report-card:focus-visible {
  outline: 3px solid #fff;
  outline-offset: 3px;
}

.ww__reports .ww__report-card:nth-of-type(2) .ww__report-overlay, .ww__reports .ww__report-card:nth-of-type(3) .ww__report-overlay, .ww__reports .ww__report-card:nth-of-type(4) .ww__report-overlay, .ww__reports .ww__report-card:nth-of-type(5) .ww__report-overlay {
    width: 86%;
    gap: 11px;
}

.ww__reports .ww__report-card:nth-of-type(2) .ww__report-overlay span, .ww__reports .ww__report-card:nth-of-type(3) .ww__report-overlay span, .ww__reports .ww__report-card:nth-of-type(4) .ww__report-overlay span, .ww__reports .ww__report-card:nth-of-type(5) .ww__report-overlay span {
    font-size: 18px;
}

.ww__reports .ww__report-card:nth-of-type(2) .ww__report-overlay i, .ww__reports .ww__report-card:nth-of-type(3) .ww__report-overlay i, .ww__reports .ww__report-card:nth-of-type(4) .ww__report-overlay i, .ww__reports .ww__report-card:nth-of-type(5) .ww__report-overlay i {
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 14px solid #000000;
}
/* ============================================================
   KEEP-READING POPUP (Magnific Popup template + zoom animation)
   ============================================================ */
.ww__popup {
  position: relative;
  background: #ffffff;
  color: #000;
  width: min(1304px, 92vw);
  max-width: 1304px;
  margin: 32px auto;
  border-radius: 8px;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0,0,0,0.4);
}
.ww__popup-grid {
    display: grid;
    grid-template-columns: 573px 1fr;
    gap: 53px;
    align-items: stretch;
    min-height: 783px;
}
.ww__popup-portrait-inner {
    position: relative;
    flex: 1 1 auto;
    background: #f5f1ea;
    border-radius: 0 500px 500px 0;
    overflow: hidden;
    max-height: 641px;
    height: 100%;
    border: 14px solid #fff;
}

/* Popup portrait column — image lives in an inner div (so we can
   round it independently of the tagline row beneath) and the
   tagline row sits at the bottom of this column anchored to the
   portrait, matching Figma 2437:13354. */
.ww__popup-portrait {
  margin: 0;
  position: relative;
  display: flex;
  flex-direction: column;
  background: transparent;
}

.ww__popup-portrait-inner {
  position: relative;
  flex: 1 1 auto;
  background: #f5f1ea;
  border-radius: 8px 900px 900px 8px;
  overflow: hidden;
  min-height: 0;
}

.ww__popup-portrait-inner img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left;
}

.ww__popup-body {
    padding: 81px 78px 63px 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
    font-size: 18px;
    line-height: 27px;
}

.ww__popup-name {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
  margin: 0;
  margin-bottom: 7px;
}

.ww__popup-role {
    font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
    font-weight: 400;
    font-size: 28px;
    line-height: 1.2;
    margin: 0;
    color: #000;
    margin-bottom: 7px;
}

.ww__popup-contact {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}
.ww__popup-contact span.ww__popup-mail-icon svg {
    color: #878787;
}

.ww__popup-mail-icon { display: inline-flex; color: #000; }

.ww__popup-contact a {
  color: #000;
  text-decoration: none;
  border-bottom: 1px solid #000;
  padding-bottom: 2px;
}
.ww__popup-body p.ww__popup-contact a.ww__popup-email {
    padding: 0;
    border: none;
}
.ww__popup-contact a:hover { opacity: 0.7; }

.ww__popup-body hr {
    border: 0;
    border-top: 3px solid #000;
    margin: 11px 0 22px;
}

.ww__popup-bio { font-size: 18px; line-height: 27px; }
.ww__popup-bio p {
    margin: 0 0 1em;
    color: #000;
    line-height: 1.5;
}
.ww__popup-bio p:last-child { margin-bottom: 0; }
.ww__popup-tagline-row {
    display: flex;
    align-items: center;
    gap: 29px;
    padding: 18px 36px 29px 47px;
    background: transparent;
    flex: 0 0 auto;
}
.ww__popup-tagline-row span.ww-top-arrow-svg {
    width: 26px;
}

.ww__popup-prev {
  background: transparent;
  border: 0;
  color: #000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  cursor: pointer;
  flex-shrink: 0;
}
.ww__popup-prev:hover { opacity: 0.65; }
.ww__popup-prev:focus-visible { outline: 2px solid #000; outline-offset: 2px; }
.ww__popup-prev svg { display: block; }

.ww__popup-divider {
  display: block;
  width: 3px;
  height: 60px;
  background: #000;
  flex-shrink: 0;
}

.ww__popup-tagline {
    margin: 0;
    font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
    font-size: 28px;
}
.ww__board .container {
    max-width: 1200px;
}

/* Hide the whole tagline row if JS leaves no text — keeps the popup
   tidy for staff who don't have a tagline in the data. */
.ww__popup-tagline-row.is-empty { display: none; }

/* Close button — top-right of the popup card. Lives inside the popup
   so it travels with the zoom animation. */
.ww__popup-close {
    position: absolute;
    top: 23px;
    right: 22px;
    display: inline-flex;
    align-items: center;
    gap: 11px;
    background: transparent;
    border: 0;
    color: #000;
    z-index: 10;
    padding: 0px 4px;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.00em;
    font-family: "aktiv-grotesk-extended", sans-serif;
}
.ww__popup-close svg {
    width: 33px;
    height: 32px;
}
.ww__popup-close svg path {
    stroke-width: 1;
}
#ww-popup button.mfp-close {
    display: none;
}
.ww__popup-close b { font-weight: 400; }
.ww__popup-close:hover { opacity: 0.65; }
.ww__popup-close:focus-visible { outline: 2px solid #000; outline-offset: 2px; }

/* ----- ZOOM animation (Magnific Popup callbacks add .ww__popup-wrap
   plus its own .mfp-ready / .mfp-removing classes — we drive the
   transform off those). The wrapping div is .mfp-wrap; the popup
   card itself transforms.  ----- */
.mfp-wrap.ww__popup-wrap .ww__popup {
  opacity: 0;
  transform: scale(0.86);
  transition: opacity 320ms ease, transform 380ms cubic-bezier(0.22, 1, 0.36, 1);
  transform-origin: center;
}
.mfp-wrap.ww__popup-wrap.mfp-ready .ww__popup {
  opacity: 1;
  transform: scale(1);
}
.mfp-wrap.ww__popup-wrap.mfp-removing .ww__popup {
  opacity: 0;
  transform: scale(0.92);
}
.mfp-bg.ww__popup-bg {
  background: #000;
  opacity: 0;
  transition: opacity 320ms ease;
}
.mfp-bg.ww__popup-bg.mfp-ready    { opacity: 0.82; }
.mfp-bg.ww__popup-bg.mfp-removing { opacity: 0; }

.visitor-info-page p {
  margin: 0 0 1em;
  font-size: 18px;
  line-height: 27px;
  font-weight: 400;
}
.visitor-info-page p:last-child { margin-bottom: 0; }

.visitor-info-page h2,
.visitor-info-page h3 {
  margin: 0;
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
  color: inherit;
}

/* ---------- B. Info grid (now nested inside .overview-hero__inner) ----------
   Four-cell 2x2 grid sitting on the hero banner. Each cell has an
   H2 eyebrow + a small stack of paragraphs (bold labels for the
   hours / admissions / groups rows, address block for visit-us). */
.visitor-info-page .overview-hero__inner .vi__info-grid-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px 96px;
  margin-top: 56px;
}

.visitor-info-page .vi__info-cell h2 {
  font-size: clamp(24px, 2.4vw, 30px);
  line-height: 1.2;
  margin-bottom: 14px;
  color: #ffffff;
}

.visitor-info-page .vi__info-cell p {
  font-size: 18px;
  line-height: 27px;
  margin: 0 0 6px;
  color: #ffffff;
}
.visitor-info-page .vi__info-cell p:last-child { margin-bottom: 0; }

/* Bold "Wednesday:" / "Standard:" labels — Poppins Medium 500 in
   Figma. The semantic <strong> serves as the toggle. */
.visitor-info-page .vi__info-cell strong {
  font-weight: 500;
}

/* ---------- C. Find Us ----------
   White panel. Every inner element flips to black. */
.vi__find-us {
    padding: 100px 0 95px;
    color: #000000;
    position: relative;
    z-index: 2;
    -webkit-clip-path: polygon(0 2.5%, 100% 0, 100% 97.5%, 0 100%);
    clip-path: polygon(0 2.5%, 100% 0, 100% 97.5%, 0 100%);
    background-color: #fff;
    margin-top: -44px;
}

.vi__find-us .container {
    max-width: 1369px;
    position: relative;
    z-index: 2;
}
.vi__find-us .vi__find-us-map iframe {
    width: 100%;
    height: 416.9341px;
}
.vi__find-us h2 {
  font-size: clamp(34px, 4.2vw, 60px);
  line-height: 1;
  margin: 0 0 21px;
  color: #000000;
}

.vi__find-us > .container > p {
    max-width: 850px;
    font-size: 18px;
    line-height: 27px;
    margin: 0 0 30px;
    color: #000000;
}

.vi__find-us .vi__find-us-map {
  margin: 0 0 13px;
  overflow: hidden;
}

.vi__find-us .vi__find-us-map img {
  display: block;
  width: 100%;
  height: auto;
}

.vi__find-us .vi__location-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 27px 51px;
}

.vi__find-us .vi__location-card {
    border: 3px solid #000000;
    border-radius: 8px;
    padding: 27px 40px 59px 40px;
    background: #ffffff;
    color: #000000;
    display: flex;
    flex-direction: column;
    gap: 18px;
    position: relative;
}

.vi__find-us .vi__location-card h3 {
    font-size: clamp(26px, 2.8vw, 40px);
    line-height: 1.02;
    margin: 0 0 2px;
    color: #000000;
}

.vi__find-us .vi__location-card p {
  font-size: 18px;
  line-height: 27px;
  margin: 0;
  color: #000000;
}
.vi__find-us .vi__location-card > p:first-of-type {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    font-weight: 500;
}

.vi__find-us .vi__pin-icon {
    display: inline-flex;
    flex-shrink: 0;
    color: #000000;
    position: relative;
    top: -4px;
}
.vi__find-us .vi__pin-icon svg {
    width: 19px;
    height: 32px;
    color: #878787;
}

/* "Read More" link gets a bold underline per the Figma spec. */
.vi__find-us .vi__location-card a {
    display: inline-block;
    font-weight: 700;
    color: #000000;
    text-decoration: underline;
    text-underline-offset: 2px;
    position: absolute;
    bottom: 31px;
    left: 39px;
}
.vi__find-us .overview-hero {  
  padding-bottom: 0;
  background-color: #000000;
}

.vi__find-us .overview-hero__inner h1 {  
  margin-bottom: 0;
}

.ind__hero {
  background: #000;
}

.ind__hero .ind__hero-figure {
    margin: 0;
    width: 100%;
    overflow: hidden;
    background: #000;
    height: 596px;
}

.ind__hero .ind__hero-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ---------- B. Intro section (white panel) ----------
   Two-column layout under the hero: body copy on the LEFT, VISIT
   THIS LOCATION callout panel on the RIGHT. Matches Figma
   2220:25884 (copy) + 2220:25963 (panel). */
.ind__intro {
    padding: 85px 0 103px;
    position: relative;
    z-index: 1;
    background-color: #fff;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 0%, 100% 4%, 100% 100%, 0 96%);
    margin-top: -50px;
}
.ind__intro .ind__intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 412px);
  gap: 88px;
  align-items: start;
}

.ind__intro .ind__intro-copy h1 {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 900;
  font-size: 60px;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #000000;
  margin: 0 0 28px;
}

.ind__intro .ind__intro-copy p {
    color: #000000;
    margin: 0 0 25px !important;
    line-height: 1.55 !important;
    font-weight: 400;
}
.ind__intro .ind__intro-copy p:last-child { margin-bottom: 0; }
.support-sec-blocks h2 {
    font-size: 20px;
}

.support-sec-blocks p {
    letter-spacing: 0.00em;
    font-weight: 700;
}

.support-sec-blocks {
    margin-top: 70px;
}

.support-sec-blocks .support-inner-images {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 75px;
}
.support-inner-images > * {
    flex: 0 1 auto;
}

.support-inner-images a {
    display: block;
    flex-shrink: 0;
}

.support-inner-images a img,
.support-inner-images img {
  max-width: 175px;
    width: auto;
    height: auto;
    display: block;
}
.ind__intro .ind__visit-card .ind-visit-wrap-block {
    padding-top: 34px;
    margin-top: 26px;
    border-top: 3px solid #000;
}
.ind__intro .ind__visit-card .ind-visit-wrap-block:first-child {
    padding-top: 0;
    margin-top: 0;
    border: none;
}
.ind-visit-wrap-block.ind-visit-wrap-bottom h3 {margin-bottom: 10px;font-size: 22px;}

.ind__intro.ind__intro-single .ind-visit-wrap-block h3 {font-size: 22px;}

.ind-visit-wrap-block.ind-visit-wrap-bottom ul li {line-height: 1;margin-bottom: 9px;}
.ind-visit-wrap-block.ind-visit-wrap-bottom p {
    color: #000;
}
.ind-visit-wrap-block.ind-visit-wrap-bottom p {
    color: #000;
}
.ind-visit-wrap-block.ind-visit-wrap-bottom h3 {
    margin-bottom: 7px;
}
.ind__intro.ind__intro-single .ind__intro-grid {
    /*align-items: baseline;*/
    align-items:start;
}
.ind__intro.ind__intro-single .ind__intro-grid figure.gallery-item img {
    width: 100%;
    height: auto;
}
section.ind__intro.ind__intro-single {
    padding-top: 54px;
    padding-bottom: 25px;
    background-color: #fff;
    -webkit-clip-path: polygon(0 0%, 100% 2%, 100% 100%, 0 100%);
    clip-path: polygon(0 0%, 100% 2%, 100% 100%, 0 100%);
}
.exi-gallery .container {
    max-width: 1325px;
}
section.ind__intro.ind__intro-single aside.ind__visit-card {
    padding-left: 32px;
    padding-right: 20px;
    padding-top: 30px;
    border-radius: 0;
    position: relative;
    /*top: 148px;*/
    margin-top: 148px;
}
section.ind__intro.ind__intro-single aside.ind__visit-card .ind__visit-block {
    margin-bottom: 21px;
}
section.ind__intro.ind__intro-single .ind__intro .ind__visit-block p{
    font-size: 18px;
}
/* ---------- VISIT THIS LOCATION callout ----------
   Transparent fill, 3px black stroke, 8px radius. Sits in the
   right column of the intro grid. Each block (address + hours)
   has an icon to the LEFT of the text. */
.ind__intro .ind__visit-card {
    border: 3px solid #000000;
    border-radius: 8px;
    padding: 34px 36px 36px 40px;
    background: transparent;
    color: #000000;
}

.ind__intro .ind__visit-card h3 {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 900;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #000000;
  margin: 0 0 24px;
}

.ind__intro .ind__visit-block {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  align-items: start;
  margin-bottom: 16px;
}
.ind__intro .ind__visit-block:last-child { margin-bottom: 0; }

.ind__intro .ind__visit-icon {
  display: inline-flex;
  color: #000000;
  margin-top: 4px;
}

.ind__intro .ind__visit-block p {
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 4px;
    color: #000000;
    letter-spacing: 0.00em;
}
.ind__intro .ind__visit-icon svg path {
    fill: #878787;
}
.ind__intro .container {
    max-width: 1318px;
}
.ind__intro .ind__visit-block p:last-child { margin-bottom: 0; }
.ind__intro .ind__visit-block strong { font-weight: 700;     line-height: 27px;}

.ind__programming h2 {
    line-height: 1;
    text-align: center;
    color: #fff;
    margin: 0 auto 49px;
}
.ind__programming .container {
    max-width: 1385px;
}
.ind__programming .ind__meta-icon svg {
    color: #878787;
    position: relative;
    top: -4px;
    margin-right: -16px;
}
.ind__programming .ind__program-slide {
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 573px) 1fr;
  gap: 50px;
  align-items: stretch;
  color: #000000;
}

/* Slide image — LEFT side, RIGHT-edge rounded into a half-pill.
   Figma border-radius is `8px 400px 400px 8px` — i.e. top-left and
   bottom-left = 8px (small radius); top-right and bottom-right =
   400px (fully rounded). */
.ind__programming .ind__program-img {
  margin: 0;
  position: relative;
  width: 100%;
  aspect-ratio: 573 / 568;
  border-radius: 8px 400px 400px 8px;
  overflow: hidden;
    border: 14px solid #fff;
}
.ind__programming .ind__program-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Slide body — RIGHT side. */
.ind__programming .ind__program-body {
  padding: 91px 79px 56px 0;
  color: #000000;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.ind__programming .ind__program-body h3 {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 900;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.1;
  text-transform: uppercase;
  margin: 0 0 28px;
  color: #000000;
}

.ind__programming .ind__program-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 28px;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.4;
    margin: 0 0 37px;
    color: #000000;
}
.ind__program-meta .date-time-block {
    display: flex;
    align-items: center;
}

.ind__programming .ind__program-meta > span {
  display: inline-flex;
  color: #000000;
}

.ind__programming .ind__program-body > p {
  font-size: 18px;
  line-height: 27px;
  margin: 0 0 35px;
  color: #000000;
}

.ind__programming .ind__program-meta span.ind_meta_datatext {
    margin-left: 1px;
    letter-spacing: 0.00em;
    font-size: 20px;
    font-family: "Poppins", Arial, sans-serif;
}
.ind__program-body a.btn-style {
    margin-top: 7px;
}
/* Prev / next slider arrows — markup carries .acac-banner__arrow so
   it picks up the home-page banner arrow styling (92x92 white circle,
   soft shadow, yellow #B7AC1F hover, CSS-triangle glyph via ::before).

   THE FIX: .acac-banner__arrow has `opacity: 0; visibility: hidden`
   by default (it's only revealed by .acac-banner.is-slide-mode on the
   home page). Our slider isn't inside .acac-banner, so we have to
   force the visible state here. */
.ind__programming {
    position: relative;
    padding-top: 50px;
    padding-bottom: 41px;
    overflow: hidden;
    padding-right: 50px;
    padding-left: 50px;
}
.ind__programming-slider {
    position: inherit;
}

.ind__programming .acac-banner__arrow {
  opacity: 1;
  visibility: visible;
  font-size: 0;          /* Slick can inject a text label; hide it */
  /* Strip the original visibility-delay transition so hover scaling
     responds immediately. */
  transition: background-color 220ms ease, transform 320ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms ease;
}

.ind__programming .acac-banner__arrow--prev { left: -50px; }
.ind__programming .acac-banner__arrow--next { right: -50px; }

.ind__programming .acac-banner__arrow.slick-disabled {
  opacity: 0.4;
  cursor: default;
}

/* Pagination dots — centred below the slide. */
.ind__programming .slick-dots {
  position: static;
  margin-top: 28px;
  display: flex;
  justify-content: center;
  gap: 15px;
  list-style: none;
  padding: 0;
}
.ind__programming .slick-dots li button {
  width: 14.4712px;
  height: 14.4712px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.25);
  border: 0;
  color: transparent;
  font-size: 0;
  padding: 0;
  cursor: pointer;
  transition: background-color 240ms ease;
}
.ind__programming .slick-dots li.slick-active button { background: #fff; }
.ind__programming .slick-dots li button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}

/* Slick fade JERK FIX — Slick stacks slides absolutely in fade mode
   and toggles opacity. Two things cause the visible "jump":
     1. Default 0.5s transition is shorter than the slide-change
        speed, so the outgoing slide goes fully transparent before
        the incoming has reached half-opacity.
     2. adaptiveHeight: true (off in JS now) causes the wrapper to
        re-measure during the transition, snapping the height.
   These rules align the slide opacity transition with the JS speed
   (900ms linear) and lock z-index ordering so the active slide
   always paints on top. */
.ind__programming .slick-slide {
  transition: opacity 900ms linear !important;
  z-index: 0;
}
.ind__programming .slick-slide.slick-active {
  z-index: 1;
}

/* Meta icons: shared sizing tweak — Slick fade keeps the inactive
   slide visually behind, so making them flex/inline-flex keeps the
   meta row aligned cleanly. */
.ind__programming .ind__meta-icon {
    width: 20px;
    margin-right: 10px;
    height: auto;
}
.ind__programming .ind__meta-icon svg { display: block; }

/* ---------- E. Exhibitions at AC Satellite ----------
   White panel, all text black. Date caption stays grey. */
.ind__exhibitions {
    position: relative;
    z-index: 1;
    padding: 92px 0 91px;
    margin-bottom: 55px;
    background-color: #fff;
    -webkit-clip-path: polygon(0 0%, 100% 4%, 100% 100%, 0 96%);
    clip-path: polygon(0 0%, 100% 7%, 100% 100%, 0 93%);
}
.ind__exhibitions h2 {
    max-width: 720px;
    margin: 0 auto 58px;
    text-align: center;
    width: 100%;
    color: #000;
    line-height: 1;
}
.ind__exhibitions .ind__exhibition-grid {
    display: grid;
    gap: 31px;
    max-width: 1040px;
    margin: 0 auto;
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
}

.ind__exhibitions .ind__exhibition-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
  color: #000000;
  margin: 0;
}

.ind__exhibitions .ind__exhibition-card figure {
    margin: 0;
    overflow: hidden;
    height: 496.8646px;
    width: 100%;
}
.ind__exhibitions .ind__exhibition-card figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ind__exhibitions .ind__exhibition-card p {
    font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
    font-weight: 700;
    font-size: 30px;
    letter-spacing: 0.02em;
    color: #959595;
    margin-top: -13px;
}

.ind__exhibitions .ind__exhibition-card h3 {
    font-size: 30px;
    color: #000000;
    line-height: 1;
    margin-bottom: 0px;
}
/* ---------- B. Guided Tours + Tour Pricing ----------
   White panel matching Figma — all inner elements flip to black,
   including the vertical 3px divider. */
.gt__guided {
    padding: 111px 0 116px;
    color: #000000;
    position: relative;
    z-index: 2;
    overflow: hidden;
    /*margin-top: -35px;*/
	margin-top: 50px;
    background-color: #fff;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
}
.gt__guided .gt__guided-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 3px minmax(0, 1fr);
    gap: 57px;
    align-items: center;    
    width: 100%;
}
.gt__guided-grid.left-col-60-40 {
    display: grid;
    grid-template-columns: 51% 15px 36%;
    column-gap: 5%;
}
.gt__guided-grid.left-col-60-40 .gt__guided-col:first-child h3 {
    margin-bottom: 16px;
}
.gt__guided-grid.left-col-40-60 {
    display: grid;
    grid-template-columns: 37.5% 35px 44%;
    column-gap: 3%;
}
.gt__guided .gt__guided-divider {
  display: block;
  width: 3px;
  align-self: stretch;
  background: #000000;
    height: calc(100% - 30px);
    position: relative;
}

.gt__guided .gt__guided-col h2{
    color: #000000;
    line-height: 1;
    margin-bottom: 38px;
}
.gt__guided .gt__guided-grid .gt__guided-col:first-child h3 {
    font-size: 28px;
    font-weight: 400;
    text-transform: none;
    margin-bottom: 19px;
    letter-spacing: -0.015em;
    line-height: 36px;
}
.gt__guided .gt__guided-grid .gt__guided-col:first-child h3 strong {
    font-weight: 800;
}
.gt__guided-grid.left-col-40-60 .gt__guided-col:first-child h3 {
    margin-bottom: 54px;
}
section.gt__guided .container {
    max-width: 1369px;
}
.gt__guided .gt__guided-col h3 {
    color: #000000;
    line-height: 1;
    margin-bottom: 14px;
    font-size: 28px;
    text-transform: inherit;
    font-weight: 800;
}

.gt__guided .gt__guided-col p {
    color: #000000;
    margin-bottom: 25px;
    line-height: 1.5;
}
.gt__guided .gt__guided-grid .gt__guided-col {}

.gt__guided .gt__guided-grid .gt__guided-col ul {
    padding-left: 28px;
    margin: 0 0 0;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
    margin-top: 28px;
    margin-bottom: 25px;
}

.gt__guided .gt__guided-grid .gt__guided-col ul li {
    margin-bottom: 4px;
    position: relative;
}

.gt__guided .gt__guided-grid .gt__guided-col ul li:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    left: -16px;
    top: 9px;
    background-color: #000;
    border-radius: 100%;
}

.gt__guided .gt__guided-col p strong { font-weight: 700; }
.gt__guided .gt__guided-grid .gt__guided-col a.salmon-pink-hover.btn-style {
    font-size: 18px;
}
.gt__guided .gt__guided-grid .gt__guided-col:last-child h2 {
    font-size: 30px;
    margin-bottom: 32px;
}

/* "Bring Your Program to Life" CTAs use the global .btn-style pill
   for the primary CTA. The secondary uses .acac-btn.acac-btn--outline
   re-skinned below to read on the white panel. */

/* The "What's Included" button uses the global .acac-btn +
   .acac-btn--outline styles verbatim — no page-level override here.
   Add a small top margin so it sits a comfortable distance below
   the body copy. */
.gt__guided .gt__cta .acac-btn--outline {
  margin-top: 32px;
}

/* ---------- C. Inquiries + Form ----------
   H2 + body LEFT, white-outlined form card RIGHT. */
.gt__inquiries {
  background: #000;
  padding: 94px 0 54px;
  color: #fff;
}

.gt__inquiries .gt__inquiries-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 68px;
  align-items: start;
  max-width: 1162px;
}

.gt__inquiries .gt__inquiries-copy h2 {margin-bottom: 35px;line-height: 1;}
.gt__inquiries .gt__inquiries-copy p {
    line-height: 1.5;
}
.gt__inquiries .gt__form {
  background: #ffffff;
  color: #000000;
  border: 2px solid #E7E9EF;
  border-radius: 8px;
  padding: 29px 36px 48px 36px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin-left: 55px;
}

.gt__inquiries .gt__form h3 {
  color: #000000;
  margin-bottom: 0px;
  line-height: 1;
}

.gt__inquiries .gt__form p {
  color: #000000;
  margin: 0 0 16px;
}
.gt__inquiries .container {
    max-width: 1369px;
}
.gt__inquiries .gt__inquiries-grid .gt__inquiries-copy h3 {font-size: 28px;font-weight: 800;text-transform: initial;margin-bottom: 25px;}

.gt__inquiries .gt__inquiries-grid .gt__inquiries-copy h4 {
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 3px;
}

.gt__inquiries .gt__inquiries-grid ul {
    margin-bottom: 53px;
}

.gt__inquiries .gt__inquiries-grid .gt__inquiries-copy h4 + ul {
    margin-bottom: 31px;
}
/* ---------- A. Hero ----------
   Single full-bleed photo with linear-gradient overlay; H1 sits
   bottom-left, overlaid on the photo. */
.pp__hero {
    position: relative;
    min-height: 474px;
    background-color: #000;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    padding-bottom: 35px;
}

#news.pp__hero{
  padding-bottom:58px;
}

.pp__hero .pp__hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
  pointer-events: none;
  z-index: 1;
}

.pp__hero .pp__hero .container {
  position: relative;
  z-index: 2;
}

.pp__hero h1 {
    color: #ffffff;
    position: relative;
    z-index: 1;
    line-height: 0.9;
    max-width: 730px;
}
/* ---------- B. Policy & Procedure ----------
   White panel — all inner elements flip to black. Single wrapper div
   inside .container holds everything directly: H2 + H3 sub-headings
   + paragraphs + bullets + the download CTA. */
.pp__policy {
    padding: 97px 0 99px;
    color: #000000;
    position: relative;
    z-index: 2;
    margin-bottom: 34px;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 1.3%, 100% 0, 100% 98.7%, 0 100%);
    background-color: #fff;
}
.pp__policy .pp__policy-inner h2 {
    margin-bottom: 22px;
    color: #000000;
}
.pp__policy .pp__policy-inner h3 {
    color: #000000;
    margin-top: 39px;
    display: block;
    margin-bottom: 24px;
}
.pp__policy .pp__policy-inner p {
    color: #000000;
    margin-bottom: 27px;
    line-height: 1.5;
    display: inline-block;
}
.pp__policy .pp__policy-inner h4 {
    margin-bottom: 20px;
}
/* Bullet list — Poppins Regular 18/27 + listSpacing 5. */
.pp__policy .pp__policy-inner ul {    
    padding-left: 24px;
    margin: 0 0 38px;
    color: #000000;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.5;
}
.pp__policy .pp__policy-inner ul li {
    margin-top: 5px;
    position: relative;
}
.pp__policy .pp__policy-inner ul li:before {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    left: -15px;
    top: 9px;
    background-color: #000;
    border-radius: 100%;
}
.pp__policy .pp__policy-inner {
    max-width: 979px;
    width: 100%;
    margin: 0 auto;
}
.pp__policy .pp__policy-inner a.btn-style {
    margin-top: 25px;
}
.pp__policy .pp__policy-inner a {
  color: #000000;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.pp__policy .pp__policy-inner a:hover { opacity: 0.75; }
.page-content-default.custom-page-content.pp__policy .pp__policy-inner {
    width: 100% !important;
    max-width: 100%;
}

/* ---------- PROGRAM OVERVIEW — reuses .gt__guided layout ----------
   The .gt__guided / .gt__guided-grid / .gt__guided-col /
   .gt__guided-divider rules from the GROUP TOURS PAGE block already
   handle: white background, 2-col grid with a 3px vertical divider
   between, and black heading/body colour. Re-scope those rules to
   also apply when the wrapper is .artist-in-residence-page, so the
   same markup pattern renders identically on this page. */
.gt__guided .air__facts {
  display: flex;
  flex-direction: column;
  margin-top: 33px;
  width: 100%;
}

.gt__guided .air__facts-row {
  display: flex;
  align-items: baseline;
  gap: 16px;
  padding: 12px 10px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
  justify-content: space-between;
}
.gt__guided .air__facts-row:first-child {border-top: 1px solid rgba(0, 0, 0, 0.18);}
.gt__guided .air__facts dt {
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.4;
  color: #000000;
  width: calc(50% - 15px);
}

.gt__guided .air__facts dd {
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.45;
  color: #000000;
  width: calc(50% - 28px);
  margin: 0;
}

/* ---------- Past Artists in Residence ----------
   White panel. Heading at top + 4-card grid (image + name + year +
   description). All inner text flips to black per the Figma. */
.air__past {
    color: #000000;
    padding: 110px 0 75px;
    position: relative;
    background-color: #fff;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 5.1%, 100% 0%, 100% 100%, 0% 100%);
    margin-bottom: -3.5%;
}
.air__past .container {
    max-width: 1335px;
}
.air__past h2 {
    color: #000000;
    margin-bottom: 46px;
    text-align: center;
}

.air__past .air__past-grid {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 40px;
}

.air__past .air__past-card {
    display: flex;
    flex-direction: column;
    color: #000000;
}

.air__past .air__past-card figure {
    margin: 0;
    width: 100%;
    overflow: hidden;
    margin-bottom: 12px;    
}

.air__past .air__past-card figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Artist name — picks up the global h3 sizing; only need to set
   the colour (black on white) and slightly tighten margins. */
.air__past-card h3 {
    color: #000000;
    font-size: 22px;
    margin-bottom: 11px;
}

.air__past-card p {
    color: #000000;
    font-size: 18px;
    line-height: 1.5;
    margin: 0;
}
/* First <p> (year) — small Poppins regular line that sits tight
   under the name as a date caption (matches Figma "(2020-2022)"
   style). No class on the <p>; targeted via :first-of-type. */
.air__past-card p:first-of-type {
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: 0.00em;
    margin: 2px 0 18px;
    color: #000000;
    border-bottom: 1px solid #000;
    padding-bottom: 10px;
}

/* ---------------- A. Membership Levels (white bg, black text)
   The .bm__levels-card has NO background of its own — it just
   anchors the layout and inherits the section's white surface. */
.bm__levels {
    color: #000000;
    padding: 101px 0 55px;
    position: relative;
    z-index: 2;
    background-color: #fff;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 4%, 100% 0%, 100% 96%, 0 100%);
    margin-top: -52px;
}
.bm__level-actions a.btn-style {
    padding: 19px 38px 17px 63px;
}

.bm__level-actions a.btn-style::before {
    left: 34px;
}
.bm__levels .container {
    max-width: 1256px;
}
.bm__levels .bm__levels-card {
  background: transparent;
  color: #000000;
  text-align: center;
}
.bm__levels .bm__levels-card h1 { margin: 0 0 28px; }
.bm__levels-card h2 {
    margin-bottom: 20px;
}
.bm__levels .bm__levels-card > p {
    max-width: 940px;
    margin: 0 auto 30px;
    color: #000000;
}
.bm__levels .bm__levels-list {
    display: flex;
    flex-direction: column;
    border-top: 3px solid #000000;
    margin-top: 57px;
    margin-bottom: 75px;
}
.bm__levels .bm__levels-list + p {
    max-width: 1040px !important;
    line-height: 1.5;
}
.bm__levels .bm__level {
  display: grid;
  grid-template-columns: 1fr auto auto;
  column-gap: 20px;
  align-items: start;
  padding: 28px 0 23px 0;
  border-bottom: 3px solid #000000;
  text-align: left;
}
.bm__levels .bm__level-info {
  display: flex;
  flex-direction: column;
  gap: 9px;
  min-width: 0;
}
.bm__levels .bm__level-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 18px;
  row-gap: 6px;
}
.bm__levels .bm__level-head h3 { margin: 0;}
.bm__levels .bm__level-price {
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif;
  font-weight: 800;
  font-style: normal;
  font-size: 36px;
  line-height: 1;
  color: #000000;
}
.bm__levels .bm__level-price span {
  font-weight: 800;
  font-size: 24px;
  vertical-align: top;
  margin-right: 2px;
}
.bm__levels .bm__level-tax {
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 300;
    font-size: 16px;
    color: #000000;
    margin-left: 10px;
}
.bm__levels .bm__level p {
  margin: 0;
  color: #000000;
}
.bm__levels .bm__level-actions {
  display: flex;
  align-items: center;
  gap: 60px;
  padding-top: 8px;
}

/* Plus → up-arrow accordion toggle (button). Two SVGs stacked
   inside crossfade with a quarter-spin so the icon morphs from
   + (closed) to ↑ (open) — matches the Figma "open" frame
   (2783:4723) where Small Business shows the up-arrow. */
.bm__levels .bm__level-plus {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #000000;
  cursor: pointer;
  flex-shrink: 0;
}
.bm__levels .bm__level-plus:focus-visible {
  outline: 2px solid #B7AC1F;
  outline-offset: 4px;
}
.bm__levels .bm__level-plus__icon {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 360ms cubic-bezier(0.22, 1, 0.36, 1),
              transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
  transform-origin: center;
  will-change: opacity, transform;
}
.bm__levels .bm__level-plus__icon svg { display: block; }
.bm__levels .bm__level-plus__icon--plus {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}
.bm__levels .bm__level-plus__icon--up {
  opacity: 0;
  transform: rotate(-90deg) scale(0.6);
}
.bm__levels .bm__level-plus[aria-expanded="true"] .bm__level-plus__icon--plus {
  opacity: 0;
  transform: rotate(90deg) scale(0.6);
}
.bm__levels .bm__level-plus[aria-expanded="true"] .bm__level-plus__icon--up {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

/* Accordion panel — slides open from 0fr → 1fr grid rows so the
   reveal is jerk-free. The content has overflow:hidden so the
   clip happens at the row edge during the transition. JS adds /
   removes the .is-open class and the [hidden] attribute. */
.bm__levels .bm__level-panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 480ms cubic-bezier(0.22, 1, 0.36, 1);
}
.bm__levels .bm__level-panel.is-open {
  grid-template-rows: 1fr;
}
.bm__levels .bm__level-panel[hidden] {
  display: grid;
}
.bm__levels .bm__level-panel-content {
  overflow: hidden;
  min-height: 0;
}
.bm__levels .bm__level-panel-content h3 {
    margin: 22px 0 17px;
    font-size: 18px;
    text-transform: none;
    font-weight: 700;
    font-family: "Poppins", Arial, sans-serif;
}
.bm__levels .bm__level-panel-content ul {
  margin: 0;
  padding-left: 22px;
  list-style: disc;
}
.bm__levels .bm__level-panel-content li {
    font-family: "Poppins", Arial, sans-serif;
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 4px;
    color: #000000;
}

.bm__levels .bm__levels-asterisks {
  margin: 40px 0 0;
}
.bm__levels .bm__levels-asterisks small {
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  color: #000000;
  opacity: 0.85;
}

/* ---------------- B. Sponsorship — own section (black bg / white)
   The only band on the page with the inverse colour scheme; sits
   between the white Levels card above and the white text-block
   below. CTAs use the global .btn-style pill. */
.bm__sponsorship { 
    color: #ffffff;
    padding: 62px 0 101px;
    text-align: center;
}
.bm__sponsorship .container {
    max-width: 1000px;
}
.bm__sponsorship h2 {
    line-height: 1;
    margin-bottom: 35px;
}
.bm__sponsorship .container p {
    max-width: 880px;
    margin: 0 auto 28px;
    letter-spacing: 0.005em;
    line-height: 1.45;
}
.bm__sponsorship .container p:last-of-type {
    margin-bottom: 0;
}
.bm__sponsorship .bm__sponsorship-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  justify-content: center;
  margin-top: 41px;
}

.bm__sponsorship p a {
    color: #fff;
    text-decoration: underline;
}

.bm__sponsorship p a:hover {
    opacity: 0.5;
}
.ww__split-section .ww__split--dark .ww__split-text p a {
    color: #fff;
}

.ww__split-section .ww__split--dark .ww__split-text p a:hover {
    opacity: 0.5;
}
.main-sticky-section .exh-section {
    padding: 0 !important;
    background-color: transparent !important;
}

.main-sticky-section .exh-section .overview-cards {
    background-color: transparent;
    padding: 0;
    margin-bottom: 41px;
    min-height: inherit !important;
}
.main-sticky-section .overview-card .overview-text-area {
    min-height: 497.2603px;
}
.main-sticky-section .overview-cards .overview-card__media {
    max-height: 502.2603px;
    min-height: 502.2603px;
}
.main-sticky-section .overview-cards .overview-card__media {
    width: calc(47.6% - 20px);
}
.main-sticky-section .overview-card .overview-text-area{
    width: calc(55% - 50px);
}

.main-sticky-section .exh-section .overview-cards .overview-card {
    background-color: #000;
}

.main-sticky-section .exh-section .overview-cards .overview-card h2, .main-sticky-section .exh-section .overview-cards .overview-card h3, .main-sticky-section .exh-section .overview-cards .overview-card p {
    color: #fff;
}

.main-sticky-section .exh-section  .overview-card__media {
    border-color: #000;
}

/* ---------- HERO (1440 × 844 in Figma) ---------- */
.exh-hero {
    position: relative;
    min-height: 723px;
    padding: 425px 0 60px;
    color: #FFFFFF;
    overflow: hidden;
}
.exh-hero:before {
    content: "";
    position: absolute;
    width: 104%;
    height: 100px;
    background-color: #fff;
    transform: rotate(1.5deg);
    left: -5px;
    bottom: -50px;
    z-index: 1;
}

.exh-hero .exh-hero__media {
  position: absolute;
  inset: 0;
  margin: 0;
  z-index: 0;
  overflow: hidden;
}

.exh-hero .exh-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Black gradient bottom overlay matching Figma fill_S8A4ZB. */
.exh-hero .exh-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);
  pointer-events: none;
}

.exh-hero .exh-hero > .container {
  position: relative;
  z-index: 2;
}

.exh-hero .exh-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 614px) minmax(0, 1fr);
    column-gap: 108px;
    align-items: start;
    position: relative;
}

.exh-hero .exh-hero__left h1 {
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 22px;
    line-height: 1;
}

.exh-hero p {
    line-height: 1.5;
    color: #FFFFFF;
}

/* Right column: bigger bold text + smaller body text */
.exh-hero .exh-hero__right { padding-top: 6px; }

.exh-hero h2 {
    font-weight: 700;
    font-size: 28px;
    line-height: 1.3;
    color: #FFFFFF;
    margin-top: 0;
    text-transform: inherit;
}
.exh-hero .container {
    max-width: 1301px;
}
/* ---------- MAIN STICKY SECTION ----------
   Grid layout — sidebar in column 1 (sticky), all three content blocks
   in column 2, stacking vertically. The sidebar spans every row so it
   has the section's full height to stick within. */

.main-sticky-section {
    position: relative;
    z-index: 5;
    padding-top: 29px;
    padding-bottom: 50px;
    margin-bottom: 25px;
    background-color: #fff;
}
.main-sticky-section > .container {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    column-gap: 60px;
    align-items: start;
    max-width: 1340px;
}

.main-sticky-section .exh-sidebar {
  grid-column: 1;
  grid-row: 1 / -1;
  position: sticky;
  top: 120px;
  align-self: start;
  width: 160px;
  z-index: 5;
  opacity: 1;
  visibility: visible;
  margin-top: -15px;
}

/* All three .exh-section blocks live in column 2 of the grid. */
.main-sticky-section .exh-section {
  grid-column: 2;
}
.main-sticky-section .exh-section .overview-cards .container {
    width: 100%;
    padding: 0;
}

/* ---------- SIDEBAR INTERNALS (figma Group 101)
   In Figma: 159×718 at (157,797). Four right-aligned words (Current
   bold, others regular), red arrow at left pointing at active word,
   black vertical line right of the word column. Now lives inside
   .main-sticky-section so it sticks within the parent scroll context. */
.main-sticky-section .exh-sidebar {
  position: sticky;
}

.main-sticky-section .exh-sidebar ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: right;
  position: relative;  
    padding-left: 16px;
}

.main-sticky-section .exh-sidebar li {
    padding: 24px 33px 27px 20px;
    line-height: 1;
    position: relative;
    display: flex;
    align-items: center;
    text-align: right;
    justify-content: end;
}
.main-sticky-section .exh-sidebar li:before {
    content: "";        
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 14px solid #C33417;
    display: inline-block;
    margin-left: 10px;
    transition: all 0.5s ease-in-out;
    opacity: 0;
}

.main-sticky-section .exh-sidebar li.is-active:before {
    opacity: 1;
}

.main-sticky-section .exh-sidebar li a {
    font-weight: 400;
    font-size: 22px;
    color: #000000;
    text-decoration: none;
    font-variation-settings: "wght" 400;
    transition: font-variation-settings 320ms ease, font-weight 320ms ease, color 320ms ease, transform 320ms ease;
    will-change: font-variation-settings;
    display: inline-block;
    font-family: "aktiv-grotesk-extended", sans-serif;
    margin-left: 8px;
}

.main-sticky-section .exh-sidebar li.is-active a {
  font-weight: 700; /* Figma "Current" bold weight 700 */
  font-variation-settings: "wght" 700;
  color: #000000;
}

.main-sticky-section .exh-sidebar li a:focus-visible {
  outline: 2px solid #C33417;
  outline-offset: 4px;
}

/* Vertical line right of the word column (Line 168 in Figma — 279.35px tall). */
.main-sticky-section .exh-sidebar__line {
  position: absolute;
  right: 0;
  top: 16px;
  bottom: 16px;
  width: 3px;
  background: #000000;
}

/* Red right-pointing arrow that slides to the active word. JS sets
   --exh-arrow-y to the vertical center of the active li. The arrow sits
   to the LEFT of the word column and points right toward the active
   label. border-left + transparent top/bottom = right-pointing triangle. */
.main-sticky-section .exh-sidebar__arrow {
    position: absolute;
    left: 0;
    top: -3px;
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-left: 14px solid #C33417;
    transform: translate3d(0, calc(var(--exh-arrow-y, 32px) - 9px), 0);
    transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
    display: none;
}

/* ---------- SHARED SECTION SHELL ----------
   Traveling and Past reuse the existing .acac-overview .overview-card
   pattern (see overview.html / overview-card CSS block in this file).
   No new banner styles are defined here — the overview-card rules are
   left exactly as they were. */
.main-sticky-section .exh-section { padding: 80px 0; }
.main-sticky-section .exh-section--dark { background: #000000; color: #FFFFFF; padding: 100px 0; }

.main-sticky-section .exh-section__title {
  line-height: 60px;
  color: #000000;
  margin: 0 0 26px;
}
.main-sticky-section .upcoming-exhibitions-block {
    margin-top: 13px;
    border-top: 1px solid #D5D5D5;
    padding-top: 61px !important;
    margin-bottom: 64px;
}
.main-sticky-section .upcoming-exhibitions-block h2 {
    margin-bottom: 43px;
}
/* ---------- CURRENT EXHIBITIONS: featured image with overlay meta box ---------- */
.main-sticky-section .exh-featured {
  position: relative;
  margin-bottom: 50px;
}

/* Media is now a plain <div> (link removed); image fills full width
   above the title/meta block. */
.main-sticky-section .exh-featured__media {
  display: block;
  margin-bottom: 23px;
  overflow: hidden;
}

.main-sticky-section .exh-featured__media figure {
  margin: 0;
  width: 100%;
  aspect-ratio: 1034 / 434; /* Figma ratio */
  overflow: hidden;
}

.main-sticky-section .exh-featured__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* New wrapper around .exh-featured__body. Holds the meta box (right)
   and the title/description body (left) in a 2-column layout that
   matches the Figma layout below the hero image. Both columns pin to
   the top of the row (align-items + align-self start) so the body
   doesn't drift to the bottom when the meta card is taller. */
.main-sticky-section .exh-featured__content {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* Meta box: right column. White card with 3px black border per Figma. */
.main-sticky-section .exh-featured__meta {
    border: 3px solid #000000;
    padding: 30px 32px 26px;
    width: 100%;
    box-sizing: border-box;
    width: 38%;
    height: 100%;
}
.exh-featured__meta p {
    color: #000;
    margin-bottom: 23px;
    display: flex;
    align-items: center;
    gap: 16px;
    align-items: center;
    font-weight: 500;
}
.exh-featured__meta p span {
    margin-top: 3px;
}

.main-sticky-section .exh-featured__loc,
.main-sticky-section .exh-featured__dates {
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.5;
  color: #000000;
  margin: 0;
}

.main-sticky-section .exh-featured__dates { margin-top: 12px; }

/* CTA is now a real anchor (was a span). text-decoration: underline +
   inline-flex keeps the icon + label aligned. */
.main-sticky-section .exh-featured__cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #000000;
    text-decoration: underline;
    text-underline-offset: 4px;
}

.main-sticky-section .exh-featured__cta:hover,
.main-sticky-section .exh-featured__cta:focus-visible {
  color: #C33417;
  outline: none;
}

.main-sticky-section .exh-featured__cta svg { flex-shrink: 0; }

/* Body: title + description stack vertically in the left column.
   align-self: start makes the body hug the top of the row instead of
   stretching to the meta box's height (which would push the text down). */
.main-sticky-section .exh-featured__body {
    width: calc(68% - 96px);
    margin-top: 5px;
}

.main-sticky-section .exh-featured__body h3 {
    color: #000000;
    margin: 0;
    line-height: 1;
    margin-bottom: 21px;
}

.main-sticky-section .exh-featured__body p {
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 27px;
  color: #000000;
  margin: 0;
}

/* ---------- DIVIDER between Current and Upcoming (Figma Line 172, #D5D5D5) ---------- */
.main-sticky-section .exh-divider {
  border: none;
  border-top: 1px solid #D5D5D5;
  margin: 24px 0 0;
}

/* ---------- UPCOMING: 2-up grid of square cards (504×496 in Figma) ---------- */
.main-sticky-section .exh-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 64px 31px;
}

.main-sticky-section .exh-card {
  display: flex;
  flex-direction: column;
}

.main-sticky-section .exh-card__media {
  display: block;
  width: 100%;
  overflow: hidden;
}

.main-sticky-section .exh-card__media figure {
  margin: 0;
  aspect-ratio: 504 / 496;
  width: 100%;
}

.main-sticky-section .exh-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

.main-sticky-section .exh-card__media:hover img,
.main-sticky-section .exh-card__media:focus-visible img {
  transform: scale(1.04);
}

.main-sticky-section .exh-card__body {
    padding-top: 19px;
}

.main-sticky-section .exh-card__body h3 {
    font-size: 30px;
    line-height: 32px;
    color: #000000;
    margin: 0 0 11px;
}

.main-sticky-section .exh-card__meta {
    font-weight: 800;
    font-size: 30px;
    line-height: 32px;
    color: #959595;
    margin: 0;
    font-family: "aktiv-grotesk-extended", sans-serif;
}
.acac-opportunities.air__related-opportunities .acac-opportunities__img::after{    
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 54.1%, rgba(0, 0, 0, 0.80) 100%);
}
.acac-opportunities.air__related-opportunities .acac-opportunities__slide.is-active-slide .acac-opportunities__img::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 54.1%, rgba(0, 0, 0, 0.80) 100%);
}
/* ---------- Shared gallery shell ---------- */
 .exi-gallery {
  padding: 116px 0 78px 0;
  position: relative;
}

.exi-gallery--image {
    color: #000000;
    position: relative;
    z-index: 2;
    overflow: hidden;
    padding-bottom: 95px;
    -webkit-clip-path: polygon(0 7%, 100% 0, 100% 93%, 0 100%);
    clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 95.5%);
    background-color: #fff;
    margin-top: -1px;
    padding-top: 28px;
}
.exi-gallery--image h2 {
    margin-bottom: 32px;
}
.exi-gallery--video { background: #000000; color: #FFFFFF; }
.exi-gallery--video .exi-gallery__head {
  margin-bottom: 75px;
}
header.exi-gallery__head.exi-gallery__head--video.mobile {
    display: none;
}

.exi-gallery--video .exi-gallery__head h2 {
  margin: 0;
  font-size: 60px;
  line-height: 60px;
  color: #000000;
  color: #FFFFFF;
}
.exi-gallery__head--video p {
    font-size: 18px;
    line-height: 27px;
    color: #FFFFFF;
    margin: 17px 0 0;
}
.exi-gallery .exi-gallery__slider {
    position: relative; 
    padding-bottom: 43px;
}
.exi-gallery .exi-gallery__slider:before {
    content: "";
    position: absolute;
    bottom: -3px;
    background-color: #000;
    height: 3px;
    width: 100%;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.exi-gallery__img-wrap span.exi-gallery__play-icon {
    background-color: #fff;
    border-radius: 50%;
    border: 0 !important;
    width: 68.9827px;
    height: 68.9827px;
    display: flex;
    align-items: center;
    transition: all 0.5s ease-in-out;
}

.exi-gallery__img-wrap span.exi-gallery__play-icon circle {
    display: none;
}

.exi-gallery--video .exi-gallery__play-icon svg polygon {
    color: #000;
    transition: all 0.5s ease-in-out;
}

.exi-gallery--video .exi-gallery__play:hover span {transform: scale(1.2);}

/* Pre-slick fallback: while slick hasn't initialised yet, lay the first
   two slides side by side at 50% each so there's no FOUC into a stacked
   layout. Slick replaces this with its own track after init. */
.exi-gallery .exi-gallery__slider:not(.slick-initialized) {
  display: flex;
  flex-wrap: wrap;
}
.exi-gallery .exi-gallery__slider:not(.slick-initialized) .exi-gallery__slide {
  width: 50%;
  flex: 0 0 50%;
  box-sizing: border-box;
}
.exi-gallery .exi-gallery__slider:not(.slick-initialized) .exi-gallery__slide:nth-child(n+3) {
  display: none;
}

.exi-gallery .exi-gallery__slide {
  padding: 0 20px;
  outline: none;
  box-sizing: border-box;    margin: 0;
}

/* Per spec: thick black border under every slick-list. Slick adds
   `.slick-list.draggable` to its outer track wrapper after init. */
.exi-gallery .slick-list.draggable {  
  margin: 0 -20px;
}

/*.exi-gallery .exi-gallery__img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 596 / 457;
  overflow: hidden;
  background: #f3f3f3;
}*/

.exi-gallery .slick-track {
  display: flex;
  align-items: stretch;
  margin-left: 0;
  margin-right: 0;
}

.exi-gallery .slick-slide {
  float: none;
  height: auto;
}

.exi-gallery .exi-gallery__slide {
  height: auto;
  display: block !important;
}

.exi-gallery--image .exi-gallery__img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 3 / 2;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

.exi-gallery--image .exi-gallery__img-wrap img {
  position: static;
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
}






/*.exi-gallery--image .exi-gallery__artwork {
	width: fit-content;
	max-width: 100%;
}

.exi-gallery--image .exi-gallery__img-wrap {
	position: relative;
	width: fit-content;
	max-width: 100%;
	display: block;
	overflow: visible;
}

.exi-gallery--image .exi-gallery__img-wrap img {
	position: static;
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	object-fit: contain;
}*/





.exi-gallery--video .exi-gallery__img-wrap--video {
  background: #111111;
  aspect-ratio: 596 / 457;
}

.exi-gallery--video .exi-gallery__img-wrap--video:before {
    content: "";
    position: absolute;
    content: "";
    position: absolute;
    width: calc(100% - 36px);
    height: calc(100% - 36px);
    border: 18px solid rgba(255, 255, 255, 0.2);
    left: 0;
    top: 0;
}

.exi-gallery__caption {
	width: var(--display-width);
    margin: 14px 0 0;
}

.exi-gallery__caption p {
    color: inherit;
    margin: 0;
    font-size: 16px;
}

..exi-gallery__caption strong {
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 0;
    display: inline-block;
    margin-bottom: 0;
}
/* ---------- Play button overlay (video gallery only) ---------- */
.exi-gallery--video .exi-gallery__play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #FFFFFF;
  background: rgba(0, 0, 0, 0.15);
  transition: background-color 320ms ease;
  cursor: pointer;
}

.exi-gallery--video .exi-gallery__play:hover,
.exi-gallery--video .exi-gallery__play:focus-visible {
  background: rgba(0, 0, 0, 0.4);
  outline: none;
}

.exi-gallery--video .exi-gallery__play-icon svg {
  width: 96px;
  height: 96px;
  transition: transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.exi-gallery--video .exi-gallery__play:hover .exi-gallery__play-icon svg,
.exi-gallery--video .exi-gallery__play:focus-visible .exi-gallery__play-icon svg {
  transform: scale(1.08);
}

/* ---------- Controls strip ----------
   Image gallery (white panel):
     [ "N of M" counter ]  →  [ arrows pill (light variant) ]
   Video gallery (black panel, right side of 50/50 grid):
     [ slick circle dots ] →  [ arrows pill (dark variant) ]

   .exi-gallery__arrows matches the .overview-cards__arrows design:
   a single rounded-pill border wraps both prev + next buttons, each
   button is bare with a CSS-triangle <i> icon inside. */
.exi-gallery__controls {
    margin-top: 24px;
    display: flex;
    gap: 35px;
    align-items: baseline;
}
.exi-gallery--image .exi-gallery__controls {
    position: relative;    
}
.exi-gallery--video .exi-gallery__controls--left  { justify-content: flex-start; }
.exi-gallery--video .exi-gallery__controls--right {justify-content: space-between;}

/* "N of M" counter for the image gallery. Video gallery uses slick's
   <ul.slick-dots> inside the same wrapper, styled further below. */
.exi-gallery__dots {
    font-weight: 400;
    font-size: 18px;
    line-height: 1;
    color: inherit;
    white-space: nowrap;
    font-family: "poppins", sans-serif;
}
.exi-gallery__arrows {
    display: flex;
    align-items: center;
    gap: 12px;
    border: 3px solid #000;
    border-radius: 30px;
    max-width: 128px;
    width: 100%;
}
.exi-gallery__arrows--light { color: #000000; }
.exi-gallery__arrows--dark  { color: #FFFFFF; }

/* Each arrow button — bare, just sizing + centering. The triangle is
   drawn on the inner <i> via borders (same technique as overview). */
.exi-gallery__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  transition: background-color 280ms ease, color 280ms ease;
  color: #ffffff;
  cursor: pointer;
    display: inline-flex;
    transition: background-color 280ms ease, color 280ms ease;
    width: 60px;
    height: 45px;
    align-items: center;
    justify-content: center;
}

.exi-gallery__arrow i {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
.exi-gallery__arrow--prev i {
    border-right: 17px solid #000;
    left: 4px;
    position: relative;
}
.exi-gallery__arrow--next i {
    border-left: 17px solid #000;
    position: relative;
    right: 5px;
}
.exi-gallery--video .exi-gallery__arrows {
    border: 3px solid #fff;
}

.exi-gallery--video .exi-gallery__arrows .exi-gallery__arrow--prev i {
    border-right: 18px solid #fff;
    left: 6px;
}

.exi-gallery--video .exi-gallery__arrow--next i {
    border-left: 16px solid #fff;
    right: 2px;
}

/* Hover/focus — invert fill so the button reads as pressed. The radius
   matches the outer pill curve on the leading/trailing edges. */
.exi-gallery__arrows .exi-gallery__arrow--prev { border-radius: 28px 0 0 28px; }
.exi-gallery__arrows .exi-gallery__arrow--next { border-radius: 0 28px 28px 0; }

.exi-gallery__arrow.slick-disabled {
  opacity: 0.4;
  cursor: default;
}
.exi-gallery__arrow.slick-disabled:hover {
  background: transparent;
  color: inherit;
}

/* ---------- VIDEO GALLERY: 50/50 grid (video left, content right) ---------- */
.exi-gallery--video .exi-gallery__video-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 11px;
  align-items: stretch;
}

.exi-gallery--video .exi-gallery__video-left,
.exi-gallery--video .exi-gallery__video-right {
  min-width: 0;
}
.exi-gallery--video .exi-gallery__video-left{
        padding-right: 50px;
}

/* Right side: heading top, controls middle, caption bottom. */
.exi-gallery--video .exi-gallery__video-right {
    display: flex;
    flex-direction: column;
    padding: 26px 0 12px 32px;
    max-width: 518px;
    width: 100%;
}

.exi-gallery__video-right .exi-gallery__head { margin-bottom: 75px; }
.exi-gallery__video-right .exi-gallery__controls { margin-top: 0; }
.exi-gallery__video-right .exi-gallery__caption {
    border-top: 3px solid #fff;
    margin-top: 33px;
    padding-top: 17px;
}

/* Video gallery dots — slick injects <ul.slick-dots> into the wrapper.
   Scoped to --video so the image gallery's text counter is not affected. */
.exi-gallery--video .exi-gallery__dots { line-height: 0; }

.exi-gallery--video .exi-gallery__dots .slick-dots {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 16px;
}

.exi-gallery--video .exi-gallery__dots .slick-dots li {
  margin: 0;
  padding: 0;
}

.exi-gallery--video .exi-gallery__dots .slick-dots li button {
    width: 14px;
    height: 14px;
    padding: 0;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 50%;
    font-size: 0;
    line-height: 0;
    color: transparent;
    cursor: pointer;
    transition: background-color 220ms ease;
}

.exi-gallery--video .exi-gallery__dots .slick-dots li.slick-active button,
.exi-gallery--video .exi-gallery__dots .slick-dots li button:hover,
.exi-gallery--video .exi-gallery__dots .slick-dots li button:focus-visible {
  background: #FFFFFF;
  outline: none;
}

/* On the video grid, the slider doesn't need the 50% pre-slick fallback
   (it's slidesToShow:1) — first slide is the only visible slide pre-init. */
.exi-gallery--video .exi-gallery__slider:not(.slick-initialized) {
  display: block;
}
.exi-gallery--video .exi-gallery__slider:not(.slick-initialized) .exi-gallery__slide {
  width: 100%;
  flex: none;
}
.exi-gallery--video .exi-gallery__slider:not(.slick-initialized) .exi-gallery__slide:nth-child(n+2) {
  display: none;
}

/* ---------- Magnific Popup video iframe (page-scoped overrides) ----------
   Magnific Popup appends .mfp-bg / .mfp-wrap directly to <body>, so they
   live OUTSIDE .exi-page and can't be scoped under it. The JS adds
   `exi-mfp` to mainClass, which magnific popup applies to BOTH the
   .mfp-bg backdrop and the .mfp-wrap, giving us a parent class hook. */
.exi-mfp .mfp-iframe-holder .mfp-content { max-width: 960px; }
.exi-mfp.mfp-bg { background: #000; opacity: 0.92; }
.pex-hero {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: flex-end;
  padding-block: 80px 60px;
  overflow: hidden;
}

.pex-hero .pex-hero__media {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.pex-hero .pex-hero__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* The dark-to-transparent gradient anchored at the bottom makes the
   white headline readable and lets the hero fade into the toolbar. */
.pex-hero .pex-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
  z-index: 1;
  pointer-events: none;
}
.pex-hero .pex-hero .container { position: relative; z-index: 2; }

.pex-hero .pex-hero__inner {
  max-width: 720px;
}
.pex-hero .pex-hero__sub {
  max-width: 620px;
  margin-top: 20px;
  font-size: 20px;
  line-height: 1.5;
}

/* ---------- GRID SECTION (white panel) ----------
   Wraps the search toolbar, the 4-column card grid, and the load-more
   button. White background with black text inside. 4 equal columns on
   desktop, dropping to 2 on tablet, 1 on mobile. */
.pex-grid-section {
    color: #000000;
    position: relative;
    z-index: 1;
    margin-top: -54px;
    overflow: hidden;
    background-color: transparent;
    padding-top: 63px;
    padding-bottom: 66px;
    margin-bottom: 22px;
}
/*.page-past-exhibitions section.pp__hero .container {
    max-width: 1324px;
}*/
.pex-grid-section:before {
    content: "";
    position: absolute;
    width: 150vw;
    height: calc(100% + 30px);
    background-color: #fff;
    z-index: -1;
    top: 27px;
    transform: rotate(1.45deg);
    left: -30vw;
}
.pex-grid-section .container {
    max-width: 1388px;
}
.page-past-exhibitions .pp__hero {
    min-height: 514px;
    padding-bottom: 98px;
}

.page-past-exhibitions .pp__hero h1 {
    max-width: 100%;
    margin-bottom: 34px;
}

.page-past-exhibitions .pp__hero p {
    max-width: 600px;
    font-size: 20px; }

/* ---------- TOOLBAR — search pill + exhibition count ----------
   Lives inside .pex-grid-section's .container (no nested container).
   Search pill: black 2px border on white, black input + icon. */
.pex-grid-section .pex-toolbar {
    display: flex;
    gap: 14px;
    margin-bottom: 44px;
    align-items: center;
    justify-content: space-between;
    padding: 0;
}

.pex-grid-section .pex-search {
    position: relative;
    max-width: 593.1406px;
    display: flex;
    align-items: center;
    height: 60px;
    border: 1px solid #000000;
    border-radius: 14px 41px 41px 14px;
    background: #FFFFFF;
    padding: 0px 31px 0 25px;
    width: 100%;
}

.pex-grid-section .pex-search__label { display: none; }
.pex-grid-section .visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

.pex-grid-section .pex-search__input {
    flex: 1;
    height: 100%;
    background: transparent;
    border: 0;
    outline: none;
    color: #000000;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.4;
    appearance: none;
}
.pex-grid-section .pex-search__input::placeholder { color: #000000; }
.pex-grid-section .pex-search__input::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; }
.pp__hero .container {
    position: relative;
    z-index: 1;
    max-width: 1388px;
    /*padding: 0 100px;*/
}
.pex-search__clear {
  display: none;
  position: absolute;
  top: 50%;
  right: 50px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  transform: translateY(-50%);
}

.pex-search__clear.is-visible {
  display: block;
}
.pex-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

.pex-grid-section .pex-search__submit {    
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-left: 12px;
  background: transparent;
  border: 0;
  color: #000000;
  cursor: pointer;
  transition: opacity 200ms ease;
}
.pex-grid-section .pex-search__submit:hover,
.pex-grid-section .pex-search__submit:focus-visible { opacity: 0.7; outline: none; }
.pex-grid-section .pex-search__submit i { font-size: 18px; }

.pex-grid-section .pex-toolbar__count {
    font-size: 20px;
    line-height: 1.5;
    color: #000000;
    margin-bottom: 0;
    margin-right: 35px;
    padding-top: 6px;
}

.pex-grid-section .pex-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 36px 22px;
}

.pex-grid-section .pex-card {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.pex-grid-section .pex-card__media {
  display: block;
  position: relative;
  aspect-ratio: 311 / 307;
  overflow: hidden;
  background: #1c1c1c;
}
.pex-grid-section .pex-card__media figure { margin: 0; height: 100%; }
.pex-grid-section .pex-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.pex-grid-section .pex-card__media:hover img,
.pex-grid-section .pex-card__media:focus-visible img { transform: scale(1.04); }
.pex-grid-section .pex-card__media:focus-visible { outline: 2px solid #000000; outline-offset: 4px; }

/* Title inside a card — override the global h3 size only inside cards
   to match Figma's 22 px (rather than the global 40 px h3). Global h3
   styling otherwise still applies (family, weight, uppercase, etc.). */
.pex-grid-section .pex-card__title {
    font-size: 22px;
    line-height: 1.18;
    margin-bottom: 17px;
    color: #000000;
}
.pex-grid-section .pex-card__date {
  font-size: 16px;
  line-height: 1.55;
  margin: 0;
  color: #000000;
}

/* ---------- LOAD MORE button (Figma: 636×58, white pill, 1px black
   border, Poppins 18px regular black text, full pill radius 41px).
   Matches the "Exhibition Button" component spec exactly. */
.pex-grid-section .pex-load-more {
  margin-top: 64px;
  display: flex;
  justify-content: center;
}
.pex-grid-section .pex-load-more button {
    max-width: 636px;
    width: 100%;
    padding: 14px 40px 11px 30px;
    text-align: center;
    letter-spacing: 0.00em;
}
.pex-grid-section .pex-load-more__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 636px;
  height: 58px;
  padding: 0 36px;
  background: #FFFFFF;
  border: 1px solid #000000;
  border-radius: 41px;
  color: #000000;
  text-decoration: none;
  font-family: "Poppins", Arial, sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1;
  text-align: center;
  transition: background-color 220ms ease, color 220ms ease;
}
.pex-grid-section .pex-load-more__btn:hover,
.pex-grid-section .pex-load-more__btn:focus-visible {
  background: #000000;
  color: #FFFFFF;
  outline: none;
}

.event-calander-pgn {
    background-color: #fff;
}
.event-calander-pgn .em.em-list.size-small .em-item .em-item-info {
    border: none;
}

.event-calander-pgn input {
    font-family: "Poppins", Arial, sans-serif;
}

.event-calander-pgn ,em-item-info h3, .event-calander-pgn .em-item-info h3 a {
    color: #000 !important;
    font-weight: 800;
}

.em.em-list .em-item .em-item-info {
    border-left: none;
    padding-right: 30px;
}

.event-calander-pgn .em.em-list .em-item .em-item-meta .em-item-meta-line a {
    text-decoration: none !important;
    font-style: normal !important;
    color: #000 !important;
    font-size: 16px;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    background-position: center;
    line-height: 1.5;
    margin-top: 4px;
}
.em.em-list .em-item .em-item-info .em-item-meta>div span.em-icon {
    line-height: inherit !important;
    margin: 0;
}

.event-calander-pgn .em-item-actions.input a.em-item-read-more.button {
    padding: 16px 35px 11px 35px !important;
    display: inline-block !important;
    height: auto !important;
    border-radius: 10px 41px 41px 10px !important;
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000000 !important;
    font-family: "poppins", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease, transform 400ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    display: inline-block !important;
    line-height: 1.2 !important;
    width: auto;
    max-width: inherit;
    letter-spacing: 0 !important;
}

.event-calander-pgn .em-item-actions.input a.em-item-read-more.button:hover {
    background-color: #FF8681 !important;
    opacity: 1 !important;
}

.event-calander-pgn  .em-item-desc {
    font-size: 16px !important;
    color: #000 !important;
    font-weight: 400 !important;
    font-family: "Poppins", Arial, sans-serif !important;
    line-height: 1.5;
}

.event-calander-pgn .em.em-list .em-item .em-item-meta .em-item-meta-line a:hover {
    opacity: 0.5 !important;
}

.event-calander-pgn .em-search-main .em-search-submit.input button.em-search-submit {
    background-color: #000 !important;
    border-radius: 10px 41px 41px 10px !important;
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000000 !important;
    font-family: "poppins", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease, transform 400ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    display: inline-block !important;
    height: auto !important;
    min-height: auto;
    padding-top: 4px !important;
    /* padding-bottom: 0 !important; */
}

.event-calander-pgn .em-search-main .em-search-submit.input button.em-search-submit:hover {
    background-color: #FF8681 !important;
}

.acac-location-single {
    padding-top: 8px;
}

.acac-location-single__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 42%);
    gap: 40px 48px;
    margin: 32px 0 56px;
    align-items: start;
}

.acac-location-single__heading {
    font-size: clamp(22px, 2.2vw, 28px);
    line-height: 1.15;
    margin: 0 0 12px;
    color: #000;
    font-weight: 800;
}

.acac-location-single__section + .acac-location-single__section {
    margin-top: 28px;
}

.acac-location-single__address {
    font-style: normal;
    font-size: 18px;
    line-height: 1.5;
    color: #000;
    margin: 0;
}

.acac-location-single__next-event {
    margin: 0;
    font-size: 18px;
    line-height: 1.5;
    color: #000;
}

.acac-location-single__next-event a {
    color: #000;
    text-decoration: underline;
    font-weight: 700;
}

.acac-location-single__next-event a:hover {
    color: #FF8681;
}

.acac-location-single__next-event-date {
    display: block;
    margin-top: 6px;
}

.acac-location-single__no-events {
    margin: 0;
    font-size: 18px;
    line-height: 1.5;
    color: #000;
}

.acac-location-single__description {
    font-size: 18px;
    line-height: 1.5;
    color: #000;
}

.acac-location-single__map {
    margin: 0;
    overflow: hidden;
    min-height: 320px;
    background: #cdcdcd;
}

.acac-location-single__map-frame {
    display: block;
    width: 100%;
    height: 417px;
    border: 0;
}

.acac-location-single__events {
    margin-top: 8px;
}

.acac-location-single__events > .acac-location-single__heading {
    margin-bottom: 24px;
}
.single-location .acac-location-single {
    padding-top: 47px;
}
.ww__split--dark .ww__split-text.coman-list-blocks ul li {
    color: #fff;
}
.ww__split-section .ww__split.ww__split--image-right h3 {
    color: #fff;
}
.overview-hero-btn a.salmon-pink-hover.btn-style {
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff !important;
}

.overview-hero-btn a.salmon-pink-hover.btn-style:hover {
    background: #5d0e4d;
    border-color: #5d0e4d;
}
.ind__exhibitions .ind__exhibitions-empty, .ind__programming .ind__programming-empty, .main-sticky-section .upcoming-exhibitions-block p.exh-section__empty {
    max-width: 1040px;
    margin: 0 auto;
    font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
    font-size: 24px;
    line-height: 1.4;
    color: #959595;
    text-align: center;
}
.main-sticky-section .upcoming-exhibitions-block p.exh-section__empty{
    text-align: left;
}
.ind__intro .ind__intro-copy .ind__intro-dates {
  font-family: "aktiv-grotesk-extended", "Poppins", sans-serif;
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 0.02em;
  color: #959595;
  margin: 0 0 20px;
}
.em-item-single .em-item-header,
.em-item-single .em-event-location{
    display: none !important;
}
.em.pixelbones h3 {     
    margin-bottom: 11px;
    font-weight: 400 !important;
}
.em.pixelbones .em-event-content a {
    text-decoration: underline;
    color: #000 !important;
}

.em.pixelbones .em-event-content a:hover {
    opacity: 0.5 !important;
}
.pp__policy .pp__policy-inner .em-item-meta-line ul li:before {
    display: none;
}
.page-id-141385 .overview-hero__inner {
    max-width: 806px;
}
/* Form Style */
.gform-body.gform_body  .gfield_label.gform-field-label {
    color: #000;
    font-family: "Poppins", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 27px;
    display: inline-block;
}
.gform-theme .gform-footer .gform_button {
    background-color: #000 !important;
    text-align: left !important;
    width: 100% !important;
    padding: 17px 20px 12px 20px !important;
    color: #FFF;
    font-family: "Poppins", Arial, sans-serif !important;
    font-size: 20px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 27px !important;
    outline: 0 !important;
    border-radius: 10px 41px 41px 10px !important;
    background-image: url(https://alabamacontdev.wpenginepowered.com/wp-content/uploads/2026/05/left.svg) !important;
    background-size: 16px;
    background-position: 95% center !important;
    background-repeat: no-repeat;
}
        
.gform-theme div#gform_1_validation_container {
    display: none;
}
.gform-theme .gform-footer .gform_button:hover{
    background: #5d0e4d !important; 
    color: #ffffff !important;
    background-image: url(https://alabamacontdev.wpenginepowered.com/wp-content/uploads/2026/05/left.svg) !important;
    background-size: 16px;
    background-position: 95% center !important;
    background-repeat: no-repeat !important;    
    }
        
.gform-body.gform_body input, .gform-body.gform_body textarea { border: 1px solid #000; background: #F2F2F2;
    padding: 10px !important;
    min-height: 49px !important;
    outline: none !important;
}
.gform-body.gform_body .gfield--type-fileupload input {
    padding: 0 !important;
    min-height: 39px !important;
    font-size: 16px;
    position: relative;
}
.gform-theme--foundation .gform_fields { row-gap: 10px !important; }
        
.gform-body.gform_body label.gform-field-label.gform-field-label--type-sub {
    color: #000;
        font-family: "Poppins", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 27px;
}
.ww__split-section .ww__split--dark .ww__split-text a.btn-style {
    border: 1px solid #fff !important;
}

.ww__split-section .ww__split--dark .ww__split-text a.btn-style:hover {border-color: transparent !important;}
/*Form Style */

.ind__programming .acac-banner__arrow.slick-disabled {
    opacity: 1 !important;
}

.ind__programming .acac-banner__arrow.slick-disabled:before {
    opacity: 0.4;
}

.ind__programming .acac-banner__arrow.slick-disabled:hover {
    background-color: #fff !important;
}
.sr-page .sr-pagination .page-numbers a, .sr-page .sr-pagination .page-numbers span{
    font-weight: 400;
}

.sr-page .sr-pagination .page-numbers li a.prev, .sr-page .sr-pagination .page-numbers li a.next {
    padding-top: 0px;
    width: 90px;
}

.sr-page .sr-pagination .page-numbers li a.prev:hover, .sr-page .sr-pagination .page-numbers li a.next:hover {
    background-color: #000;
    color: #fff;
}
.sr-page .sr-pagination .page-numbers li a.prev span, .sr-page .sr-pagination .page-numbers li a.next span {
    display: none;
}
.sr-page .sr-pagination .page-numbers a:hover, .sr-page .sr-pagination .page-numbers span:hover {
    background-color: #000;
    color: #fff;
}
.sr-page .sr-pagination .page-numbers a, .sr-page .sr-pagination .page-numbers span { width: 40px;
    height: 40px; line-height: 43px !important; }
.overview-text-area ul li:before {
    background-color: #000;
}
.overview-text-area ul{
    margin-bottom: 20px;
}
.ww__reports .ww__report-card:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0;
    z-index: 1;
    transition: all 0.5s ease-in-out;
}

.ww__reports .ww__report-card:hover:before {
    opacity: 0.2;
}
.banner-form {
    position: relative;
    z-index: 5;
    background: #ffffff;
    color: #000000;
    border: 2px solid #E7E9EF;
    border-radius: 8px;
    padding: 39px 36px 48px 36px;
    margin-bottom: 90px;
    max-width: 496px;
    width: 100%;
}
    p.gform_required_legend {
    color: #000;
}
.gform-body.gform_body input, .gform-body.gform_body textarea { background: #F2F2F2 !important; }
.bm__sponsorship .bm__sponsorship-buttons a.btn-style-white.btn-style:hover {
    background-color: #5D0E4D;
    color: #fff !important;
}

.bm__sponsorship .bm__sponsorship-buttons a.btn-style-white.btn-style:hover:before {
    border-left: 16px solid #fff;
}

.bm__sponsorship .bm__sponsorship-buttons a.btn-style-white.btn-style:hover:after {
    border-left: 16px solid #fff;
}
html body .acac-opportunities .acac-opportunities__slide .acac-opportunities__img h3 {
    color: #fff !important;
}
/* ---------- SEARCH RESULTS PAGE (client mockup) ---------- */
section.sr-section { background: #fff; }
.sr-page .sr-section {
    padding: 107px 0 103px;
    margin-bottom: 39px;
    position: relative;
    overflow: hidden;
}
.sr-page .sr-section:before {
    width: 100%;
    content: "";
    position: absolute;
    width: 150vw;
    height: 300px;
    background-color: #000;
    top: -273px;
    transform: rotate(-1.3deg);
    left: -25vw;
}
.sr-page .sr-section:after {
    width: 100%;
    content: "";
    position: absolute;
    width: 150vw;
    height: 300px;
    background-color: #000;
    bottom: -276px;
    transform: rotate(-1.3deg);
    left: -25vw;
}

.sr-page .sr-section .container {
    max-width: 1071.543px;
}

/* Toolbar: full-width pill search, count below, divider under count */
.sr-page .sr-toolbar {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  margin-bottom: 0;
}

.sr-page .sr-search {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: none;
    min-height: 73px;
    padding: 0 22px 0 22px;
    border: 1px solid #000000;
    border-radius: 8px 50px 50px 8px;
    background: #ffffff;
}
.sr-page .sr-search__clear i {
    display: none;
}
.sr-page .sr-search__clear::before,
.sr-page .sr-search__clear::after {
  position: absolute;
  top: 13px;
  left: -2px;
  width: 34px;
  height: 2px;
  border-radius: 2px;
  background: #000;
  content: "";
}

.sr-page .sr-search__clear::before {
  transform: rotate(45deg);
}

.sr-page .sr-search__clear::after {
  transform: rotate(-45deg);
}
.sr-page .sr-search__label.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-page .sr-search__submit, .sr-page .sr-search__clear {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #000000;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
}
.sr-page .sr-search__clear {
    position: relative;
    right: 12px;
}
.sr-page .sr-search__submit {
  margin-right: 12px;
}

.sr-page .sr-search__clear {
  margin-left: 12px;
}

.sr-page .sr-search__submit:hover,
.sr-page .sr-search__clear:hover,
.sr-page .sr-search__submit:focus-visible,
.sr-page .sr-search__clear:focus-visible {
  opacity: 0.7;
  outline: none;
}

.sr-page .sr-search__input {
    flex: 1;
    min-width: 0;
    height: 58px;
    margin: 0;
    padding: 0;
    border: 0;
    outline: none;
    background: transparent;
    color: #000000;
    font-family: "Poppins", Arial, sans-serif;
    font-size: 28px;
    font-weight: 400;
    line-height: 1.4;
    padding-left: 11px;
}

.sr-page .sr-search__input::placeholder {
  color: #000000;
  opacity: 1;
}

.sr-page .sr-search__input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
}

.sr-page .sr-toolbar__count {
    margin: 43px 0 0;
    padding: 0 0 46px;
    border-bottom: 1px solid #D5D5D5;
    font-family: "Poppins", Arial, sans-serif;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.06em;
    line-height: 1.4;
    text-transform: uppercase;
    color: #000000;
}

/* Results list */
.sr-page .sr-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sr-page .sr-list__item {
  border-bottom: 1px solid #d9d9d9;
}

.sr-page .sr-list__item:last-child {
  border-bottom: 0;
}

.sr-page .sr-item__link {
    align-items: center;
    padding: 25px 0;
    color: inherit;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 32px;
}

.sr-page .sr-item__thumb {
    margin: 0;
    overflow: hidden;
    background: #D9D9D9;
    width: 180.922px;
    height: 133.237px;
}

.sr-page .sr-item__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sr-page .sr-item__body {
    width: 100%;
}

/* No thumbnail: keep text aligned with thumb column */
.sr-page .sr-item__link:not(:has(.sr-item__thumb)),
.sr-page .sr-item__link--no-thumb,
.sr-page .sr-list__item--no-thumb .sr-item__link {
  grid-template-columns: 200px minmax(0, 1fr);
}

.sr-page .sr-item__type {
  margin: 0 0 10px;
  font-family: "Poppins", Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-transform: uppercase;
  color: #000000;
}

.sr-page .sr-item__title {
    margin: 0;
    font-size: 40px;
    font-weight: 800;
    line-height: 1.05;
    color: #000000;
    font-family: "aktiv-grotesk-extended", sans-serif;
    text-transform: inherit;
}

.sr-page .sr-item__link:hover .sr-item__title,
.sr-page .sr-item__link:focus-visible .sr-item__title {
  opacity: 0.7;
}

.sr-page .sr-empty {
  padding: 32px 0 0;
  font-family: "Poppins", Arial, sans-serif;
  font-size: 18px;
  line-height: 1.5;
  color: #000000;
}

.sr-page .sr-pagination {
  margin-top: 48px;
}

.sr-page .sr-pagination .paginetion-blk {
  margin: 0;
}

.sr-page .sr-pagination .page-numbers {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.sr-page .sr-pagination .page-numbers li {
  margin: 0;
}

.sr-page .sr-pagination .page-numbers a,
.sr-page .sr-pagination .page-numbers span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid #000000;
  border-radius: 999px;
  font-family: "Poppins", Arial, sans-serif;
  font-size: 14px;
  line-height: 1;
  color: #000000;
  text-decoration: none;
}

.sr-page .sr-pagination .page-numbers .current {
  background: #000000;
  color: #ffffff;
}
.acac-menu.is-switch-pinned[data-theme="artists"] .acac-hero-banner__knob {  
    background-color: #fff;
}
.gt__inquiries .gt__inquiries-copy p a {
    color: #fff;
    text-decoration: underline;
}

.gt__inquiries .gt__inquiries-copy p a:hover {
    opacity: 0.5;
}
.page-id-141662 section.pp__policy {
    -webkit-clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
    clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
}
.gt__guided .gt__guided-col p a {
    text-decoration: underline;
}

.gt__guided .gt__guided-col p a:hover {
    opacity: 0.5;
}
.overview-hero__inner > div p span {
    text-decoration: none;
    text-decoration-line: underline;
    text-underline-offset: 3px;
}
.overview-text-area h3 br {
    display: none;
}
.page-content-default.custom-page-content.pp__policy .pp__policy-inner .em > p:first-child {
    display: none;
}
.acac-banner__slide picture img.mobile-banner-img {
    display: none;
}
.overview-hero__overlay-mobile {
    display: none;
}
.banner-form-added span.overview-hero__overlay {
    height: 522px;
    background-position: bottom;
}
.pp_home-mobile {
    display: none;
}
.bm__sponsorship .bm__sponsorship-buttons a.btn-style-white {
    letter-spacing: 0;
    font-size: 18px;
}
.acac-menu__open .white-menu-con {
    display: none;
}
.acac-menu__open .black-menu-con {
    display: block;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned header.acac-menu__header button.acac-menu__open .white-menu-con{
    display: none;
}
body.home [data-theme="artists"].is-scrolled.is-switch-pinned header.acac-menu__header button.acac-menu__open .black-menu-con{
    display: block;
}
.acac-menu[data-phase="closed"] .acac-menu__open:hover, .acac-menu[data-phase="closed"] .acac-menu__open:focus {
    box-shadow: none !important;
    border: none !important;
}
.gt__guided .gt__guided-grid .gt__guided-col ul li a {
    text-decoration: underline;
}

.gt__guided .gt__guided-grid .gt__guided-col ul li a:hover {opacity: 0.5;}

.banner-form p {
    color: #000;
    margin-bottom: 38px;
    line-height: 1.5;
}

.banner-form h3 {
    margin-bottom: 22px;
    line-height: 40px;
}

.banner-form p:first-child {
    margin-bottom: 36px;
}

.banner-form p:last-child {
    margin-bottom: 0;
}
.banner-form-added .container {
    max-width: 1241px;
    align-items: flex-start;
}
.overview-hero.banner-form-added .overview-hero__inner {
    max-width: 590px;
}
.overview-hero.banner-form-added .overview-hero__inner h2 {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 21px;
}
.home .is-switch-pinned .acac-menu__brand svg path{
    fill: #e2e2e2 !important;
}
body.home .is-scrolled.is-switch-pinned.is-menu-open header.acac-menu__header {
    transition: all 0.5s ease-in-out 0.3s;
    background-color: transparent !important;
    z-index: -1;
}
/* ===== Header logo glass effect (inner pages only) ===== */

/* Desktop default: header 100px tall, padding-left 97px */
body:not(.home) .acac-menu:not(.is-switch-pinned) .acac-menu__header {
  background-color: transparent !important;
  -webkit-backdrop-filter: blur(6px) saturate(1.8) brightness(1.05);
  backdrop-filter: blur(6px) saturate(1.8) brightness(1.05);
    position: fixed;
}

body:not(.home) .acac-menu:not(.is-switch-pinned) .acac-menu__header::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #000000;
   -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjEwMCI+PHBhdGggZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMEgyNTYwVjEwMEgwWiBNMTY2Ljg4MzkgNjkuMTE4NEwxNjYuOTIgNjkuMDgyNUMxNjYuOTcxIDY5LjAzMTggMTY3LjAwMDggNjguOTYyNiAxNjcuMDAwOCA2OC44ODk2VjMwLjI5ODAxOUMxNjcuMDAwOCAzMC4yMzM3MTYgMTY2Ljk3NzIgMzAuMTcwNjUgMTY2LjkzNDkgMzAuMTIxMTg2QzE2Ni44ODI3IDMwLjA2MDU5MzEgMTY2LjgwNjkgMzAuMDI1OTY4NSAxNjYuNzI2MSAzMC4wMjU5Njg1QzE2Mi4xNzA4IDMwLjAyNTk2ODUgMTYxLjQzNiAzMCAxNTguMjkwNiAzMEMxNTAuNDgwNSAzMCAxNDMuNDY4NiAzNS4zNjkyOSAxNDAuNzE2IDQyLjU5ODRDMTM1Ljk3MDUgNTUuMDY0NSAxNDQuNzc2NSA2OC40MzQ1IDE1OC4wNDk0IDY5LjE0OTNMMTY2LjY4ODggNjkuMkMxNjYuNzYyMSA2OS4yIDE2Ni44MzE3IDY5LjE3MTYgMTY2Ljg4MzkgNjkuMTE5NlY2OS4xMTg0Wk0xMTkuNTU2IDMwLjI5OTI5TDk3LjAyMzI3MjIgNjguODkyMUM5Ni45NTczNzk4IDY5LjAwNDcgOTcuMDM5NDM0NCA2OS4xNDQ0IDk3LjE2ODczMyA2OS4xNDQ0SDE0Mi4yMzUzQzE0Mi4zNjU5IDY5LjE0NDQgMTQyLjQ0NjcgNjkuMDA0NyAxNDIuMzgwOCA2OC44OTIxTDExOS44NDgxIDMwLjI5OTI5QzExOS43ODM1IDMwLjE4Nzk5NyAxMTkuNjIxOCAzMC4xODc5OTcgMTE5LjU1NiAzMC4yOTkyOVoiLz48L3N2Zz4=");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjEwMCI+PHBhdGggZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMEgyNTYwVjEwMEgwWiBNMTY2Ljg4MzkgNjkuMTE4NEwxNjYuOTIgNjkuMDgyNUMxNjYuOTcxIDY5LjAzMTggMTY3LjAwMDggNjguOTYyNiAxNjcuMDAwOCA2OC44ODk2VjMwLjI5ODAxOUMxNjcuMDAwOCAzMC4yMzM3MTYgMTY2Ljk3NzIgMzAuMTcwNjUgMTY2LjkzNDkgMzAuMTIxMTg2QzE2Ni44ODI3IDMwLjA2MDU5MzEgMTY2LjgwNjkgMzAuMDI1OTY4NSAxNjYuNzI2MSAzMC4wMjU5Njg1QzE2Mi4xNzA4IDMwLjAyNTk2ODUgMTYxLjQzNiAzMCAxNTguMjkwNiAzMEMxNTAuNDgwNSAzMCAxNDMuNDY4NiAzNS4zNjkyOSAxNDAuNzE2IDQyLjU5ODRDMTM1Ljk3MDUgNTUuMDY0NSAxNDQuNzc2NSA2OC40MzQ1IDE1OC4wNDk0IDY5LjE0OTNMMTY2LjY4ODggNjkuMkMxNjYuNzYyMSA2OS4yIDE2Ni44MzE3IDY5LjE3MTYgMTY2Ljg4MzkgNjkuMTE5NlY2OS4xMTg0Wk0xMTkuNTU2IDMwLjI5OTI5TDk3LjAyMzI3MjIgNjguODkyMUM5Ni45NTczNzk4IDY5LjAwNDcgOTcuMDM5NDM0NCA2OS4xNDQ0IDk3LjE2ODczMyA2OS4xNDQ0SDE0Mi4yMzUzQzE0Mi4zNjU5IDY5LjE0NDQgMTQyLjQ0NjcgNjkuMDA0NyAxNDIuMzgwOCA2OC44OTIxTDExOS44NDgxIDMwLjI5OTI5QzExOS43ODM1IDMwLjE4Nzk5NyAxMTkuNjIxOCAzMC4xODc5OTcgMTE5LjU1NiAzMC4yOTkyOVoiLz48L3N2Zz4=");
  -webkit-mask-size: auto;
  mask-size: auto;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
}

/* SVG icon rendered as frosted glass (semi-transparent) on inner pages */
body:not(.home) .acac-menu__brand--mark > svg.svg-img.replaced-svg path {
  fill: rgba(255, 255, 255, 0.10);
  transition: fill 300ms ease 0.1s;
  stroke: rgba(255, 255, 255, 0.4);
}
body:not(.home) .acac-menu.is-opening .acac-menu__brand--mark > svg.svg-img.replaced-svg path,
body:not(.home) .acac-menu.is-open .acac-menu__brand--mark > svg.svg-img.replaced-svg path {
  fill: #ffffff;
}
.acac-menu__search button.clear-search {
    color: #fff;
    padding-right: 17px;
    margin-top: 3px;
    font-size: 18px;
    position: relative;
    z-index: 5555;
}
.ww__split-text a.btn-style {
    margin-top: 40px;
}
.ww-popup-open {
    overflow: hidden !important;
}
section.ind__intro.ind__intro-single aside.ind__visit-card .ind__visit-block div {
    font-size: 18px; 
}
.ww__split-section .ww__split--dark h3 span {
    text-decoration: underline;
}
section.overview-hero.banner-form-added {
    padding-top: 475px;
}
section.overview-hero.banner-form-added h1 {
    margin-bottom: 31px;
}
.em.em-list .em-item .em-item-info h3.em-item-title {
    font-size: 36px !important;
    line-height: 36px !important;
}
/* Make the pill transparent so backdrop-filter blurs the page content behind it.
   Specificity (0,4,2) is equal to the existing #fff rule at line ~1896 but
   appears later, so transparent wins. */
body.home .acac-menu.is-switch-pinned header.acac-menu__header {
  background-color: transparent !important;
  -webkit-backdrop-filter: blur(6px) saturate(1.8) brightness(1.05);
  backdrop-filter: blur(6px) saturate(1.8) brightness(1.05);
}

/* White ::before covers the entire pill EXCEPT the logo cutout.
   The cutout (transparent) lets the blurred backdrop show through → glass logo. */
body.home .acac-menu.is-switch-pinned header.acac-menu__header::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: #ffffff;
  -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjEwMCI+PHBhdGggZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMEgyNTYwVjEwMEgwWiBNMTY2Ljg4MzkgNjkuMTE4NEwxNjYuOTIgNjkuMDgyNUMxNjYuOTcxIDY5LjAzMTggMTY3LjAwMDggNjguOTYyNiAxNjcuMDAwOCA2OC44ODk2VjMwLjI5ODAxOUMxNjcuMDAwOCAzMC4yMzM3MTYgMTY2Ljk3NzIgMzAuMTcwNjUgMTY2LjkzNDkgMzAuMTIxMTg2QzE2Ni44ODI3IDMwLjA2MDU5MzEgMTY2LjgwNjkgMzAuMDI1OTY4NSAxNjYuNzI2MSAzMC4wMjU5Njg1QzE2Mi4xNzA4IDMwLjAyNTk2ODUgMTYxLjQzNiAzMCAxNTguMjkwNiAzMEMxNTAuNDgwNSAzMCAxNDMuNDY4NiAzNS4zNjkyOSAxNDAuNzE2IDQyLjU5ODRDMTM1Ljk3MDUgNTUuMDY0NSAxNDQuNzc2NSA2OC40MzQ1IDE1OC4wNDk0IDY5LjE0OTNMMTY2LjY4ODggNjkuMkMxNjYuNzYyMSA2OS4yIDE2Ni44MzE3IDY5LjE3MTYgMTY2Ljg4MzkgNjkuMTE5NlY2OS4xMTg0Wk0xMTkuNTU2IDMwLjI5OTI5TDk3LjAyMzI3MjIgNjguODkyMUM5Ni45NTczNzk4IDY5LjAwNDcgOTcuMDM5NDM0NCA2OS4xNDQ0IDk3LjE2ODczMyA2OS4xNDQ0SDE0Mi4yMzUzQzE0Mi4zNjU5IDY5LjE0NDQgMTQyLjQ0NjcgNjkuMDA0NyAxNDIuMzgwOCA2OC44OTIxTDExOS44NDgxIDMwLjI5OTI5QzExOS43ODM1IDMwLjE4Nzk5NyAxMTkuNjIxOCAzMC4xODc5OTcgMTE5LjU1NiAzMC4yOTkyOVoiLz48L3N2Zz4=");
  mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjEwMCI+PHBhdGggZmlsbD0id2hpdGUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTAgMEgyNTYwVjEwMEgwWiBNMTY2Ljg4MzkgNjkuMTE4NEwxNjYuOTIgNjkuMDgyNUMxNjYuOTcxIDY5LjAzMTggMTY3LjAwMDggNjguOTYyNiAxNjcuMDAwOCA2OC44ODk2VjMwLjI5ODAxOUMxNjcuMDAwOCAzMC4yMzM3MTYgMTY2Ljk3NzIgMzAuMTcwNjUgMTY2LjkzNDkgMzAuMTIxMTg2QzE2Ni44ODI3IDMwLjA2MDU5MzEgMTY2LjgwNjkgMzAuMDI1OTY4NSAxNjYuNzI2MSAzMC4wMjU5Njg1QzE2Mi4xNzA4IDMwLjAyNTk2ODUgMTYxLjQzNiAzMCAxNTguMjkwNiAzMEMxNTAuNDgwNSAzMCAxNDMuNDY4NiAzNS4zNjkyOSAxNDAuNzE2IDQyLjU5ODRDMTM1Ljk3MDUgNTUuMDY0NSAxNDQuNzc2NSA2OC40MzQ1IDE1OC4wNDk0IDY5LjE0OTNMMTY2LjY4ODggNjkuMkMxNjYuNzYyMSA2OS4yIDE2Ni44MzE3IDY5LjE3MTYgMTY2Ljg4MzkgNjkuMTE5NlY2OS4xMTg0Wk0xMTkuNTU2IDMwLjI5OTI5TDk3LjAyMzI3MjIgNjguODkyMUM5Ni45NTczNzk4IDY5LjAwNDcgOTcuMDM5NDM0NCA2OS4xNDQ0IDk3LjE2ODczMyA2OS4xNDQ0SDE0Mi4yMzUzQzE0Mi4zNjU5IDY5LjE0NDQgMTQyLjQ0NjcgNjkuMDA0NyAxNDIuMzgwOCA2OC44OTIxTDExOS44NDgxIDMwLjI5OTI5QzExOS43ODM1IDMwLjE4Nzk5NyAxMTkuNjIxOCAzMC4xODc5OTcgMTE5LjU1NiAzMC4yOTkyOVoiLz48L3N2Zz4=");
  -webkit-mask-size: auto;
  mask-size: auto;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: -79px -20px;
  mask-position: -79px -20px;
}
body.home [data-theme="artists"].acac-menu.is-switch-pinned header.acac-menu__header::before {
    background: #000;
}
/* SVG paths: near-transparent so blurred content shows through the logo shapes */
body.home .acac-menu.is-switch-pinned .acac-menu__brand--mark > svg.svg-img.replaced-svg path {
  fill: rgba(255, 255, 255, 0.12) !important;
  stroke: rgba(255, 255, 255, 0.45);
  stroke-width: 0.5;
  transition: fill 300ms ease 0.1s;
}

/* Solid white logo when nav overlay opens */
body.home .acac-menu.is-switch-pinned .acac-menu__brand--mark > svg.svg-image.replaced-svg path,
body.home .acac-menu.is-switch-pinned .acac-menu__brand--mark > svg.svg-image.replaced-svg path {
  fill: #ffffff !important;
}
body.home .acac-menu.is-switch-pinned.is-menu-open .acac-menu__brand--mark > svg.svg-img.replaced-svg path{
    fill: rgba(255, 255, 255, 1) !important;
}
.pp__policy .pp__policy-inner a.btn-style:hover {
    opacity: 1;
}
.em-search-views .tippy-box {
    height: 130px;
    overflow: auto;
}
.page-events .pp__policy, .page-classes .pp__policy, .page-fundraising .pp__policy{
    padding-top: 116px;
}

.em.em-list .em-item .em-item-info .em-item-meta>div {
    color: #000;
    font-size: 16px;
    font-family: "Poppins", Arial, sans-serif;
    font-weight: 400;
    line-height: inherit;
    align-items: center;
}
.main-sticky-section .exh-section.exh-section--dark .overview-text-area a.btn-style-white {
    font-size: 18px;
}
.gt__guided .gt__guided-grid .gt__guided-col:first-child h4 {
    font-size: 28px;
    line-height: 36px;
    font-weight: 800;
}
.ww__split-text h3 strong {
    font-weight: 800;
}
.em.em-search .em-search-main.em-search-main-bar .em-search-submit.input {
    display: none;
}
.tax-event-categories .custom-page-content.pp__policy {
    padding-top: 150px;
}
.main-sticky-section .exh-card__body h3 a:hover {
    color: #C33417;
}
.acac-banner .acac-banner__title span .without-text {
    display: none;
}
.acac-banner .acac-banner__title span svg {
    display: block;
    width: 100%;
}
.acac-banner__title span svg {
    overflow: visible;

    backdrop-filter:
        blur(4px)          /* Frost: 10% */
        saturate(200%)     /* Refraction feel */
        contrast(140%)
        brightness(115%);

    -webkit-backdrop-filter:
        blur(4px)
        saturate(200%)
        contrast(140%)
        brightness(115%);

    filter:
        drop-shadow(0 2px 8px rgba(255,255,255,.15))
        contrast(110%);
}

.acac-banner__title span svg path {
    fill: rgba(255,255,255,.08);
    stroke: rgba(255,255,255,.95);
    stroke-width: 1.5;
    stroke-linejoin: round;
    stroke-linecap: round;
    vector-effect: non-scaling-stroke;
    mix-blend-mode: screen;
}

.pp__policy .pp__policy-inner ul.event-categories {
    position: relative;
    top: 2px;
    line-height: 1;
}
.acac-banner .acac-banner__title span svg.mobile-without {
    display: none !important;
}

.gform-body.gform_body .ginput_container.ginput_container_radio input {
    padding: 0 !important;
    min-height: auto !important;
    outline: none !important;
    position: absolute;
    top: 2px;
}

.gform-body.gform_body .ginput_container.ginput_container_radio input::before {
    top: 1px !important;
    position: relative;
}
.gform-theme form .gform-page-footer input {
    border-radius: 10px 41px 41px 10px !important;
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #000000 !important;
    font-family: "poppins", sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    transition: background-color 400ms cubic-bezier(0.22, 1, 0.36, 1), color 400ms ease, transform 400ms cubic-bezier(0.22, 1, 0.36, 1) !important;
    display: inline-block !important;
    height: auto !important;
    min-height: auto;
    width: 100%;
    background-color: #000 !important;
    color: #fff !important;
    height: auto !important;
    min-height: inherit !important;
    padding: 16px 25px 13px 20px !important;
    outline: none !important;
    line-height: 1 !important;
}
.gform-theme form .gform-page-footer input.gform_previous_button {
    border-radius: 41px 10px 10px 41px !important;
    padding: 16px 20px 13px 25px !important;
}
.gform-theme form .gform-page-footer input:hover {
    background-color: #5D0E4D !important;
}
.gform-theme form .gform-page-footer span {
    position: absolute;
    bottom: -20px;
    display: block !important;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.gform-theme form .gform-page-footer {
    display: flex;
    justify-content: space-between;
}
div#footer-lottie {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    left: 0;
    z-index: 6;
    top: 0;
    max-width: 100% !important;
}
.footer-lotti-set-wrap {
    position: relative;
    border-bottom: 1px solid #4E4E4E;
}
.gform_page_fields .gfield_contains_required, .gform_page_fields .gfield--type-radio, .gform_page_fields .gfield--width-full {
    margin-bottom: 15px;
}
.gform_page_fields .gfield--type-radio .gchoice {
    position: relative;
}

.gform_page_fields .gfield--type-radio .gchoice label {
    padding-left: 30px;
    margin-left: 0;
    line-height: 2;
    position: relative;
    z-index: 2;
}
.gform-body.gform_body .gfield_label.gform-field-label span.gfield_required {
    display: inline-block;
    margin-left: 2px;
    position: relative;
    top: -2px;
}

/* ===============================
   Safari Fix
================================ */

@supports (-webkit-hyphens:none) {

.acac-banner.is-slide-mode .acac-banner__title span{

backdrop-filter:none !important;
-webkit-backdrop-filter:none !important;

background:linear-gradient(
    120deg,
    rgba(255,255,255,.95),
    rgba(255,255,255,.75),
    rgba(255,255,255,.35),
    rgba(255,255,255,.75),
    rgba(255,255,255,.95)
);

-webkit-background-clip:text;
background-clip:text;
-webkit-text-fill-color:transparent;
}

.acac-banner__title span svg{
backdrop-filter:none;
-webkit-backdrop-filter:none;
}

}

.js-news-archive .news-events-results {
  transition: opacity 200ms ease;
}

.js-news-archive.is-loading .news-events-results {
  opacity: 0.45;
  pointer-events: none;
}

.js-news-archive.is-loading .news-events-load-more {
  pointer-events: none;
}

.news-events-count{
  color:#000;
  text-align: right;
}

/* ---------- Responsive (Figma mobile is 390 wide) ---------- */

@media (prefers-reduced-motion: reduce) {
  .overview-card--has-accordion .overview-card__accordion-panel,
  .overview-card--has-accordion .overview-card__accordion-icon svg,
  .overview-card--has-accordion .overview-card__accordion-head { transition: none; }
  .ww__reports .ww__report-card img,
  .ww__reports .ww__report-overlay,
  .ww__staff .ww__staff-hint,
  .ww__staff .ww__keep-reading,
  .mfp-wrap.ww__popup-wrap .ww__popup,
  .mfp-bg.ww__popup-bg { transition: none; }

  .ind__programming .slick-dots li button,
  .ind__programming .slick-slide { transition: none !important; }
}

@media (max-width: 1500px) {
  .acac-banner__title h1 {      
      font-size: 75px;
  }
  .acac-banner__title span {      
      top: 81px;
      font-size: 75px;
  }
  .banner-form-added span.overview-hero__overlay { 
        background-position: bottom;
    }
    .acac-banner .acac-banner__title span svg {
        display: block;
        width: 100%;
        max-width: 778px;
    }
}

@media (max-width: 1440px) {
    .acac-banner__masks {        
        top: 160px;
    }
}


@media (max-width: 1400px) {
h2 {
    font-size: 50px;
}
.main-sub-menu .main-menu-container .submenu-set-wrap {
    left: 58px;
}
section.overview-hero.banner-form-added {
    padding-top: 395px;
}

}

@media (min-width: 1365px) and (max-width: 1400px) {
    .acac-banner__masks {        
        top: 120px;
    }
    .acac-banner {
        --without-walls-lower-y: 350px;
    }
}

@media (max-width: 1320px) {
.toggle-full-height {
    padding-right: 30px;
} 
.single-location .acac-location-single h1 {
    font-size: 60px;
}
.acac-banner .acac-banner__title span svg {
    max-width: 718px;
    margin-top: 8px;
}
.tax-event-categories .custom-page-content.pp__policy h1 {
    font-size: 60px;
}
.overview-cards .container {
    padding: 0 42px;
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head {
    display: block;
}
.overview-card--has-accordion .overview-card__accordion-link-tag {
    margin-left: 0;
    display: block;
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head sub {
    top: -16px;
}
.ww__popup-role {
    font-size: 24px;
}
.ww__popup-contact {
    font-size: 18px;
}
.ww__popup-tagline {
    font-size: 24px;
}
.ww__popup-name {
    font-size: 50px;
}
.overview-hero .overview-hero__inner {
    max-width: 730px;
}
.acac-menu__panel strong {
    font-size: 42px;    
    line-height: 48px;
}
.acac-menu__desktop-subnav a {
    font-size: 22px;
}
  .acac-menu__header {
    height: 92px;
    padding-left: 32px;
    padding-right: 32px;
  }

  .acac-menu__top-nav {
    left: auto;
    right: 96px;
    top: 20px;
    gap: 22px;
    font-size: 18px;
  }

  .acac-menu__search.is-search-open {
    width: 300px;
  }

  .acac-menu__search label {
    width: 300px;
  }

  .acac-menu__search.is-search-open .acac-menu__search-toggle {
    transform: translate3d(0, 0, 0);
  }

  .acac-menu__open,
  .acac-menu__circle {
    top: 22px;
    right: 32px;
  }

  .acac-menu__overlay-header {
    height: 92px;
    padding-left: 32px;
  }

  .acac-menu__overlay-header .acac-menu__brand {
    top: 26px;
    left: 32px;
  }

  .acac-menu__overlay-header .acac-menu__top-nav {
    left: 50%;
    right: auto;
    top: 34px;
    transform: translate3d(210px, 0, 0);
  }

  .acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
    right: auto;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
  }

  .acac-menu__close {
    top: 32px;
    right: 32px;
  }

  .acac-menu__panel {
    top: 190px;
    left: 110px;
    grid-template-columns: minmax(0, 560px);
    width: calc(100% - 160px);
  }

  .acac-menu__subnav {
    position: relative;
        top: auto;
        right: auto;
        left: auto;
        display: flex;
        width: 100%;
        max-height: 0;
        overflow: hidden;
        margin-left: 30px;
        margin-top: 0;
        gap: 12px;
        opacity: 0;
        visibility: hidden;
        transform: translateY(8px);
        transition: max-height 0.45s ease, opacity 0.3s ease, transform 0.3s ease, margin-top 0.3s ease;
  }
    
 .acac-menu__panel li.is-active .acac-menu__subnav {
        max-height: 300px;
        opacity: 1;
        visibility: visible;
        margin-top: 14px;
        transform: translateY(0);
    }    

  .acac-menu__panel li.is-active .acac-menu__subnav {
    display: none;
  }

  .acac-menu__panel li.is-active .acac-menu__parent {
    transform: translate3d(-42px, 0, 0);
  }
  .acac-banner {
    --banner-band-height: 100%;
    --banner-mask-fullscreen-width: 172vw;
    --without-walls-slide-x: 275px;
    --without-walls-slide-y: 0px;
    --without-walls-lower-x: calc(100vw - 189px - 100%);
    --without-walls-lower-y: 420px;
  }

  .acac-banner__title {
        top: 102px;
        left: 36px;
        width: calc(100% - 96px);
    }

  .acac-banner__title h1 {
    font-size: 74px;
  }

  .acac-banner__title span {
    top: 72px;
    font-size: 72px;
  }

  .acac-banner.is-slide-mode .acac-banner__title span,
  .acac-banner.is-mask-hover .acac-banner__title span,
  .acac-banner.is-mask-revealing .acac-banner__title span,
  .acac-banner.is-mask-reset .acac-banner__title span {
    transform: translate3d(var(--without-walls-slide-x), var(--without-walls-slide-y), 0);
  }

  .acac-banner.is-mask-hover .acac-banner__masks,
  .acac-banner.is-mask-revealing .acac-banner__masks {
    top: 50%;
    left: 50%;
    width: var(--banner-mask-fullscreen-width);
  }

  .acac-banner__masks {    
    left: 22px;
    width: calc(100% - 20px);
  }

  .acac-banner__content {
    left: 64px;
    bottom: 78px;
  }

  .acac-banner__content h2 {
    font-size: 36px;
    line-height: 42px;
  }

  .acac-banner__cta {
    right: 58px;
    bottom: 124px;
  }

  .acac-banner__counter {
    right: 58px;
    bottom: 78px;
    grid-template-columns: 40px 280px;
  }

/* ---------- Responsive ---------- */

.footer-sponsors,
  .footer-main,
  .footer-social-row { padding-left: 48px; padding-right: 48px; }
  .footer-bottom { margin: 0 48px; }
  .footer-sponsors__logos { gap: 36px; }
  .footer-nav-col { gap: 48px; }
  .footer-banana {
    width: 550px;
    height: 335px;
}
.footer-animation-social {
    position: absolute;
    right: 620px;
    bottom: 69px;
    width: 330px;
}
.footer-social__link {
    min-width: 166px;
    height: 52px;
}

/* ======================================================
   RESPONSIVE - TABLET (max-width: 1320px)
   ====================================================== */

.acac-page h2 {
    font-size: 56px;
    line-height: 56px;
  }

  .acac-page h3 {
    font-size: 38px;
    line-height: 42px;
  }

  .acac-hero-banner__label {
    font-size: 56px;
    line-height: 56px;
  }

  .is-switch-pinned .acac-hero-banner__switch {
        padding: 0 48px 30px;
        gap: 24px;
        top: 9px !important;
    }

  .acac-hero-banner__body {
    height: 420px;
  }

  .acac-hero-banner__box h2 {
    font-size: 56px;
    line-height: 50px;
  }

  .acac-hero-banner__box h3 {
    font-size: 30px;
    line-height: 38px;
  }

  .acac-hero-banner__box p {
    font-size: 16px;
    line-height: 24px;
  }

  .acac-hero-banner__tab {
        width: 210px;
        padding-left: 45px;
    }
    .acac-hero-banner__tab--right i {
      border-left: 24px solid #000;
      border-right: 24px solid transparent;   
      border-top: 14px solid transparent;
      margin-left: 47px;
      border-bottom: 14px solid transparent;
  }

  .acac-page[data-theme="visitors"] .acac-hero-banner__box {
    padding: 50px 200px 50px 50px;
  }

  .acac-page[data-theme="artists"] .acac-hero-banner__box {
    padding: 50px 50px 50px 200px;
  }

  .acac-container {
    padding-left: 48px;
    padding-right: 48px;
  }

  .acac-plan {
    padding: 70px 0 60px;
  }

  .acac-plan__grid {
    gap: 28px;
    padding: 0 48px;
  }

  .acac-plan__img {
    height: 220px;
    border-radius: 0;
  }
  .acac-exhibitions {
    padding: 70px 0 80px;
  }
  .acac-exhibitions__featured-img {
    height: 380px;
    border-radius: 190px 0 0 190px;
  }

  .acac-exhibitions__featured-text h3 {
    font-size: 38px;
    line-height: 50px;
  }

  .acac-exhibitions__featured-text p {
    font-size: 28px;
    line-height: 50px;
  }

  .acac-exhibitions__right {
    width: 480px;
  }

  .acac-exhibitions__card-img {
    height: 250px;
    border-radius: 0 125px 125px 0;
  }

  .acac-exhibitions__card-text {
    padding-right: 48px;
  }

  .acac-exhibitions__card-text h4 {
    font-size: 28px;
    line-height: 38px;
  }

  .acac-exhibitions__card-text p {
    font-size: 22px;
    line-height: 30px;
  }
  .acac-programs__item h3 {
    font-size: 38px;
    line-height: 38px;
    bottom: 30px;
    left: 40px;
  }

  .acac-opportunities {
    padding: 70px 0;
  }

  .acac-opportunities__slider {
        padding-left: 13%;
    }
  .exh-hero .exh-hero__left h1 {
    font-size: 60px;
}
.page-past-exhibitions .pp__hero h1 {
    font-size: 60px;
}
.ind__intro .ind__intro-grid {
    align-items: baseline;
}    
body:not(.home) .acac-menu:not(.is-switch-pinned) .acac-menu__header::before {
 -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjkyIj48cGF0aCBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMCAwSDI1NjBWOTJIMFogTTEwMS44ODM5IDY1LjExODRMMTAxLjkyIDY1LjA4MjVDMTAxLjk3MSA2NS4wMzE4IDEwMi4wMDA4IDY0Ljk2MjYgMTAyLjAwMDggNjQuODg5NlYyNi4yOTgwMTlDMTAyLjAwMDggMjYuMjMzNzE2IDEwMS45NzcyIDI2LjE3MDY1IDEwMS45MzQ5IDI2LjEyMTE4NkMxMDEuODgyNyAyNi4wNjA1OTMxIDEwMS44MDY5IDI2LjAyNTk2ODUgMTAxLjcyNjEgMjYuMDI1OTY4NUM5Ny4xNzA4IDI2LjAyNTk2ODUgOTYuNDM2IDI2IDkzLjI5MDYgMjZDODUuNDgwNSAyNiA3OC40Njg2IDMxLjM2OTI5IDc1LjcxNiAzOC41OTg0QzcwLjk3MDUgNTEuMDY0NSA3OS43NzY1IDY0LjQzNDUgOTMuMDQ5NCA2NS4xNDkzTDEwMS42ODg4IDY1LjJDMTAxLjc2MjEgNjUuMiAxMDEuODMxNyA2NS4xNzE2IDEwMS44ODM5IDY1LjExOTZWNjUuMTE4NFpNNTQuNTU2IDI2LjI5OTI5TDMyLjAyMzI3MjIgNjQuODkyMUMzMS45NTczNzk4IDY1LjAwNDcgMzIuMDM5NDM0NCA2NS4xNDQ0IDMyLjE2ODczMyA2NS4xNDQ0SDc3LjIzNTNDNzcuMzY1OSA2NS4xNDQ0IDc3LjQ0NjcgNjUuMDA0NyA3Ny4zODA4IDY0Ljg5MjFMNTQuODQ4MSAyNi4yOTkyOUM1NC43ODM1IDI2LjE4Nzk5NyA1NC42MjE4IDI2LjE4Nzk5NyA1NC41NTYgMjYuMjk5MjlaIi8+PC9zdmc+");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYwIiBoZWlnaHQ9IjkyIj48cGF0aCBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMCAwSDI1NjBWOTJIMFogTTEwMS44ODM5IDY1LjExODRMMTAxLjkyIDY1LjA4MjVDMTAxLjk3MSA2NS4wMzE4IDEwMi4wMDA4IDY0Ljk2MjYgMTAyLjAwMDggNjQuODg5NlYyNi4yOTgwMTlDMTAyLjAwMDggMjYuMjMzNzE2IDEwMS45NzcyIDI2LjE3MDY1IDEwMS45MzQ5IDI2LjEyMTE4NkMxMDEuODgyNyAyNi4wNjA1OTMxIDEwMS44MDY5IDI2LjAyNTk2ODUgMTAxLjcyNjEgMjYuMDI1OTY4NUM5Ny4xNzA4IDI2LjAyNTk2ODUgOTYuNDM2IDI2IDkzLjI5MDYgMjZDODUuNDgwNSAyNiA3OC40Njg2IDMxLjM2OTI5IDc1LjcxNiAzOC41OTg0QzcwLjk3MDUgNTEuMDY0NSA3OS43NzY1IDY0LjQzNDUgOTMuMDQ5NCA2NS4xNDkzTDEwMS42ODg4IDY1LjJDMTAxLjc2MjEgNjUuMiAxMDEuODMxNyA2NS4xNzE2IDEwMS44ODM5IDY1LjExOTZWNjUuMTE4NFpNNTQuNTU2IDI2LjI5OTI5TDMyLjAyMzI3MjIgNjQuODkyMUMzMS45NTczNzk4IDY1LjAwNDcgMzIuMDM5NDM0NCA2NS4xNDQ0IDMyLjE2ODczMyA2NS4xNDQ0SDc3LjIzNTNDNzcuMzY1OSA2NS4xNDQ0IDc3LjQ0NjcgNjUuMDA0NyA3Ny4zODA4IDY0Ljg5MjFMNTQuODQ4MSAyNi4yOTkyOUM1NC43ODM1IDI2LjE4Nzk5NyA1NC42MjE4IDI2LjE4Nzk5NyA1NC41NTYgMjYuMjk5MjlaIi8+PC9zdmc+");
}

 
}

@media (max-width: 1199px) and (min-width:992px){
.acac-banner__masks{
  top:120px;
}
}
@media (max-width: 1199px) {
    .single-location .acac-location-single h1 {
        font-size: 55px;
    }
    .acac-banner .acac-banner__title span svg {
        max-width: 558px;
        margin-top: -10px;
    }
    .ww__split-text a.btn-style {
        margin-top: 30px;
    }    
    .acac-menu.is-switch-pinned .acac-menu__header {
        width: 65%;
    }
    .banner-form {
        max-width: 400px;     
    }
    .gt__guided .gt__guided-col h2 {
        margin-bottom: 25px;
    }
    
    .acac-opportunities__slider {
        padding-left: 5%;
    }
    .ind__programming .ind__meta-icon svg {
        top: -2px;
    }
    .pp__hero .container {
        padding: 0 42px;
    }
    .ww__staff {     
        padding: 64px 0 90px;
    }
    .main-sub-menu .main-menu-container .acac-menu__panel {
        width: 61%;
    }
    .main-sub-menu .main-menu-container .submenu-set-wrap {
        left: 20px;
    }
    .page-id-141385 .overview-hero .overview-hero__inner {
        max-width: 666px;
    }
    .overview-hero__inner > div {
        max-width: 500px;
    }
    .overview-hero .container {     
        justify-content: space-between;
    }
    .ind__intro {
        -webkit-clip-path: polygon(0 0%, 100% 3.5%, 100% 100%, 0 96.5%);
        clip-path: polygon(0 0%, 100% 3.5%, 100% 100%, 0 96.5%);     
    }
    .ind__exhibitions {        
        -webkit-clip-path: polygon(0 0%, 100% 2.5%, 100% 100%, 0 97.5%);
        clip-path: polygon(0 0%, 100% 2.5%, 100% 100%, 0 97.5%);
    }
    .pp__hero h1 {
        max-width: 580px;
        font-size: 60px;
    }
    .pp__hero {        
        min-height: 470px;
        padding-bottom: 70px;
    }
    .pp__policy .pp__policy-inner h3 {        
        margin-top: 25px;     
        margin-bottom: 20px;
        font-size: 36px;
    }
    .pp__policy .pp__policy-inner h4 {     
        font-size: 28px;
    }
    .ind__programming {
        padding-right: 20px;
        padding-left: 20px;
    }
    .ind__intro .ind__intro-copy h1 {
        font-size: 50px;
    }
    .ind__programming .ind__program-body {
        padding: 60px 40px 56px 0;
    }  
    .ind__programming .ind__program-slide {
        grid-template-columns: minmax(0, 433px) 1fr;
    }
    .overview-hero__inner .vi__info-grid-inner {
        max-width: 461px;
    }
    .ww__popup-bio p {
        font-size: 16px;
    }
    .ww__popup-grid {
        gap: 39px;
        grid-template-columns: 440px 1fr;
    }
    .ww__popup-body {
        padding: 61px 40px 33px 0;
        gap: 14px;        
    }
    .ww__popup-contact {
        font-size: 16px;
    }
    .ww__popup-mail-icon {
        width: 19px;
    }
    .ww__popup-body hr {
        margin: 9px 0 9px;
    }
    .ww__popup-tagline-row {
        gap: 25px;
        padding: 12px 36px 18px 36px;
    }
  h2 {
      font-size: 38px;
  }
  .overview-hero .overview-hero__inner {
    max-width: 630px; 
}
  .ww__split .container .ww__split-text {
    width: 48%;
    padding-right: 0;
}
.ww__split-section .ww__split.ww__split--image-right .ww__split-text {
    padding-right: 0;
}
  .overview-text-area h3 {
      font-size: 28px;
  }
.acac-banner__title h1, .acac-banner__title span{
      font-size: 55px;
  }
  
  .acac-banner__title span {
      top: 62px;   
    }
    .overview-hero__shape {
        width: 40%;
        max-width: 431px;
    }
    .overview-hero__inner {
      max-width: 520px;
      width: 100%;
   }
  .overview-hero__inner h1 {
    font-size: 60px;
    margin: 0 0 80px;
    max-width: 817px;    
  }

.exh-hero {
    padding: 300px 0 80px;
    min-height: 650px;
}
.exh-hero .exh-hero__left h1 {
        font-size: 50px;
    }
  .exh-hero .exh-hero__grid { grid-template-columns: 1fr 1fr; column-gap: 48px; }
  /* Narrower meta column at intermediate widths so the body keeps room. */
  .main-sticky-section .exh-featured__content { grid-template-columns: minmax(0, 1fr) 320px; gap: 40px; }

  .pex-grid-section .pex-grid { grid-template-columns: repeat(3, 1fr); }
  .bm__levels {
        -webkit-clip-path: polygon(0 2%, 100% 0%, 100% 98%, 0 100%);
        clip-path: polygon(0 2%, 100% 0%, 100% 98%, 0 100%);    
    }
    .ww__split-section .ww__split.ww__split--image-right .ww__split-text {     
        padding-left: 0;
    }

}

@media (max-width: 1024px) {
  .bm__level-head h3,
  .bm__level-price { font-size: 32px; }
  .bm__text-block h2 { font-size: 32px; }
  .bm__sponsorship { padding: 64px 0; }
  .pex-grid-section .pex-search__input {
        font-size: 16px;     
    }
    .pex-grid-section .pex-search__submit {
        margin-top: 0;
        margin-left: 0;
    }
}
@supports (-webkit-touch-callout: none) {
  @media (max-width: 991px) {
    .acac-hero-banner__label {
      transition: font-size 200ms ease,
                  line-height 200ms ease,
                  transform 200ms ease,
                  color 200ms ease;
    }
  }
}

@media (max-width: 991px) {
  .exi-gallery .exi-gallery__img-wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
  }
  
  
    .acac-banner__title span svg path {
        stroke-width: 1.2;
    }
   .acac-location-single__grid {
        grid-template-columns: 1fr;
        gap: 28px;
        margin-bottom: 40px;
    }

    .acac-location-single__map-frame {
        height: 320px;
    }
    .acac-banner .acac-banner__title span svg {
        max-width: 520px;     
        margin: -10px auto 0;
    }
    .acac-menu.is-switch-pinned .acac-menu__header {
        width: 73%;
    }    
    .acac-menu__search.is-search-open .acac-menu__search-toggle {
        padding-right: 0;
    }
    .banner-form h3 {
        margin-bottom: 16px;
        font-size: 30px;
        line-height: 30px;
    }
    .banner-form {
        max-width: calc(100% - 26px);
    }
    .gt__guided .gt__guided-grid .gt__guided-col:first-child h3 br {
        display: none;
    }
    .banner-form {     
        margin: 0 13px 50px;
    }
    .gt__guided .gt__guided-grid .gt__guided-col:first-child h3 {
        font-size: 26px;
    }
    .gt__guided .gt__guided-col h3 {
        margin-bottom: 22px;
        font-size: 28px;
    }
    .gt__guided .gt__guided-col p {     
        margin-bottom: 20px;
    }
    .gt__guided .gt__guided-grid {
        gap: 37px;
    }
    .ind__exhibitions .ind__exhibition-card h3 {
        font-size: 28px;
    }
    .ind__exhibitions .ind__exhibition-card p {
        font-size: 26px;
    }
    .overview-cards .overview-text-area h2 {
        margin: 0 0 17px;
    }
    .overview-hero__inner > div {
        max-width: 100%;
    }
    .acac-exhibitions {
        padding: 60px 0 60px;
    }
    .overview-cards .overview-text-area h3 {        
        font-size: 26px;
        line-height: 34px;
        margin: 0 0 18px;
    }
  html.acac-skip-intro .acac-banner__title span,
  .acac-banner.is-skip-intro .acac-banner__title span {
    transform: translate3d(var(--without-walls-slide-x), 5px, 0) !important;
  }  
  .is-switch-pinned .acac-hero-banner__switch {
    top: 7px !important;
}
.acac-menu.is-switch-pinned .acac-hero-banner__label {
  font-size: 21px;
}
.acac-menu.is-switch-pinned .acac-menu__overlay a.acac-menu__brand.acac-menu__brand--mark {
    z-index: 5 !important;
    top: 9px;
    left: 50% !important;
    transform: translate3d(-50%, 0, 0) !important;
    transition: all 0.5s ease-in-out !important;
}
.acac-menu.is-switch-pinned header.acac-menu__header .acac-menu__search {
    display: none;
}  
.acac-menu.is-switch-pinned .acac-menu__overlay-header .acac-menu__search {
    top: -70px;
}
.acac-menu a.acac-banner__cta, .acac-banner__cta {
      bottom: 62px;
      font-size: 16px;
      font-weight: 500;
      justify-content: flex-end;
      width: 100%;
      left: 0;
      padding-right: 31px;
  }
  .acac-menu__header > .acac-menu__top-nav {
    top: 20px;
    left: 22px;
    right: auto;
    z-index: 9;
    display: flex;
    width: 42px;
    height: 42px;
    gap: 0;
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  .acac-menu__header > .acac-menu__top-nav > a {
    display: none;
  }

  .acac-menu__brand--full {
    width: auto;
  }

  .acac-menu__header {
    height: 62px;
    justify-content: center;
    padding: 0 80px;
  }
.acac-menu__brand svg {
        width: 63px;
}
.acac-menu__wordmark {
    margin-left: 13px;
    line-height: 12px;
    letter-spacing: 0.34em;     
}

  .acac-menu.is-opening .acac-menu__header,
  .acac-menu.is-open .acac-menu__header,
  .acac-menu.is-closing .acac-menu__header {
    z-index: 14;
  }

  /* Mobile fix: with the header at z-index 14, the close button (which
     lives inside the overlay at top:26px right:22px â€” the same corner
     as the hamburger) was sitting BENEATH the header layer, so taps
     hit the empty header instead of the close button. Lift the overlay
     above the header during open/close so the close button is reachable
     on phones and small tablets. */
  .acac-menu.is-opening .acac-menu__overlay,
  .acac-menu.is-open .acac-menu__overlay,
  .acac-menu.is-closing .acac-menu__overlay {
    z-index: 15;
  }
  .main-sticky-section .exh-featured__body {
      width: 100%;
  }
  .main-sticky-section .exh-featured__meta {
    width: 100%;
}
  /* Belt-and-suspenders: even within the overlay's stacking context,
     give the close button an explicit high z-index and make sure it
     accepts pointer events while the menu is open. */
  .acac-menu__close {
    z-index: 20;
    pointer-events: auto;
  }

  .acac-menu__header .acac-menu__brand {
    position: absolute;
    left: 24px;
    transform: translate3d(0, 0, 0);
    opacity: 1;
    visibility: visible;
    transition:
      all 0.5s ease-in-out,
      opacity 300ms ease 400ms,
      visibility 0ms linear 400ms;
  }

  .acac-menu.is-opening .acac-menu__header .acac-menu__brand,
  .acac-menu.is-open .acac-menu__header .acac-menu__brand {
    left: 24px;
    transform: translate3d(0, 0, 0);
    opacity: 0;
    visibility: hidden;
    transition:
      all 0.5s ease-in-out,
      opacity 300ms ease 100ms,
      visibility 0ms linear 400ms;
  }

  /* Smooth wordmark fade. The existing .is-logo-hidden rule at line
     1485 also adds a -18px x-translate, but on this breakpoint the
     parent .acac-menu__brand is sliding to center at the same time, so
     stacking another translate makes the fade look jerky. Override
     with opacity-only and an explicit transition. */
  .acac-menu .acac-menu__header .acac-menu__brand--full .acac-menu__wordmark {
    transition: opacity 320ms ease;
  }

  .acac-menu.is-opening .acac-menu__header .acac-menu__brand--full .acac-menu__wordmark,
  .acac-menu.is-logo-hidden .acac-menu__header .acac-menu__brand--full .acac-menu__wordmark {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }

  /* Click-fix: the overlay-header's brand mark and top-nav sit visually
     on top of the page header when the menu opens, but the page-header
     brand--full (sticky, slid to center on this breakpoint, with its
     own transform-induced stacking context) was intercepting taps at
     the same x/y region. Two-step fix:
       (a) Promote the entire overlay-header into its own stacking
           context above main-sub-menu inside the overlay.
       (b) Promote the brand mark and top-nav inside that.
       (c) Disable pointer events on the page-header brand link during
           any open/closing phase so taps fall through to the overlay. */
  .acac-menu__overlay-header {
    position: relative;
    z-index: 25;
  }

  .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
    position: absolute;
    z-index: 5;
    pointer-events: auto;
  }

  .acac-menu__overlay-header .acac-menu__top-nav {
    z-index: 5;
    pointer-events: auto;
  }

  /* The overlay-header brand mark stays visible while the menu is open
     and only fades out when the user clicks the search toggle (the
     search needs the horizontal room to expand). :has() lets us match
     the parent overlay-header when one of its descendants has
     .is-search-open, without any JS hook.
     Transition lists left + transform here as well — the brand--mark
     selector is more specific than the .acac-menu__brand selector
     below, so the slide-to-center transition has to live on this rule
     too or the position change would snap instantly. 900ms gives the
     "very smooth, not fast" feel. */
  .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
    opacity: 1;
    visibility: visible;
    transition:
      opacity 200ms ease,
      visibility 0ms linear 200ms,
      left 700ms cubic-bezier(0.22, 1, 0.36, 1),
      transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  }

  .acac-menu__overlay-header:has(.acac-menu__search.is-search-open) a.acac-menu__brand.acac-menu__brand--mark {
    opacity: 0 !important;
    visibility: hidden !important;
  }

  /* Quick wordmark collapse inside the overlay-header brand--mark
     while the brand slides from left:24px to left:50%. The global
     rule at line 1485 applies a -18px x-translate that fights the
     parent's slide, producing the jerk. Override here with
     opacity-only AND font-size 0 so the wordmark also leaves the
     layout box (width collapses) — without that, the parent brand
     keeps its full width and ends up off-center while sliding. The
     200ms duration gets it done early into the 900ms slide. */
  .acac-menu .acac-menu__overlay-header .acac-menu__wordmark {
    transition: opacity 200ms ease, font-size 200ms ease;
    display: none;
  }

  .acac-menu.is-logo-hidden .acac-menu__overlay-header .acac-menu__wordmark {
    opacity: 0;
    font-size: 0;
    transform: translate3d(0, 0, 0);
  }

  /* Header search is hidden by default at this breakpoint and slides
     in 0.3s into the open animation, then back out 0.3s after close. */
  .acac-menu .acac-menu__header .acac-menu__search {
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease, visibility 0ms linear 300ms;
  }

  .acac-menu.is-opening .acac-menu__header .acac-menu__search,
  .acac-menu.is-open .acac-menu__header .acac-menu__search {
    opacity: 1;
    visibility: visible;
    transition: opacity 300ms ease 300ms, visibility 0ms linear 300ms;
  }

  .acac-menu.is-closing .acac-menu__header .acac-menu__search {
    opacity: 0;
    visibility: hidden;
    transition: opacity 300ms ease 300ms, visibility 0ms linear 600ms;
  }

  .acac-menu__open, .acac-menu__circle {
        top: 8px;
        right: 20px;
        width: 46px;
        height: 46px;
    }

  .acac-menu.is-opening .acac-menu__circle,
  .acac-menu.is-open .acac-menu__circle {
    transform: scale(100) translateZ(0);
  }

  .acac-menu__overlay-header {
    height: 62px;
  }

  .acac-menu__overlay-header .acac-menu__brand {
        left: 24px;
        transform: translate3d(0, 0, 0);
        top: 12px;
        display: flex;
        opacity: 1;
        z-index: 555;
        width: auto;
        height: auto;
        transition: left 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);

    }
    .is-menu-open .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
      left: 50%;
      transform: translate3d(-50%, 0, 0);
  }
  .acac-menu.is-logo-hidden .acac-menu__overlay-header .acac-menu__wordmark {
      opacity: 0;
      font-size: 0;
      transform: translate3d(0, 0, 0);
  }

  .acac-menu__overlay-header .acac-menu__top-nav {
    top: 87px;
    left: 50%;
    right: auto;
    display: flex;
    width: calc(100% - 48px);
    height: 42px;
    justify-content: center;
    gap: 18px;
    opacity: 0;
    transform: translate3d(-50%, 18px, 0);
  }

  .acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
        left: 50%;
        right: auto;
        opacity: 1;
        transform: translate3d(-50%, 0, 0);
        top: 80px;
        transition-delay: 0.35s;
        gap: 25px;
    }
    .acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
        background-color: #000;
        transition: background-color 0.3s ease 1s;
    }
    .is-open.acac-menu[data-theme="artists"] .acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
        background-color: #fff;
    }
    .acac-menu.is-menu-open .acac-menu__header .acac-menu__top-nav .acac-menu__search {
        display: none;
    }
    .acac-menu[data-theme="artists"] .acac-menu__search button.acac-menu__search-toggle i {
      color: #fff;
  }
  .acac-menu__overlay-header .acac-menu__top-nav > a {
    display: inline-flex;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: 0.04em;
  }

 .acac-menu__overlay-header .acac-menu__search {     
        position: absolute;
        top: -75px;
        left: -2px;
    }

  .acac-menu__header .acac-menu__search,
  .acac-menu__overlay-header .acac-menu__search {
    width: 42px;
    min-height: 51px;
    overflow: visible;
  }
  .acac-menu.is-menu-open.acac-menu[data-theme="artists"] .acac-menu__overlay-header .acac-menu__top-nav {
        background-color: #000;
    }

  .acac-menu__header .acac-menu__search-toggle,
  .acac-menu__overlay-header .acac-menu__search-toggle {
    position: absolute;
    right: 11px;
    top: 0;
    width: 42px;
    height: 51px;
    flex-basis: 42px;
    justify-content: center;
    margin-left: 0;
  }

  .acac-menu__header .acac-menu__search label,
  .acac-menu__overlay-header .acac-menu__search label {
    left: 0;
    width: min(280px, calc(100vw - 48px));
    height: 51px;
    padding: 0 18px 0 18px;    
    transform: translate3d(0, 0, 0) scaleX(0.15);
    transform-origin: left center;
    padding-top: 3px;
  }

  .acac-menu__header .acac-menu__search label::before,
  .acac-menu__overlay-header .acac-menu__search label::before {
    left: 52px;
    height: 42px;
    font-size: 15px;
    line-height: 42px;
  }

  .acac-menu__header .acac-menu__search input,
  .acac-menu__overlay-header .acac-menu__search input {
    height: 40px;
    font-size: 15px;
    line-height: 40px;
    letter-spacing: 0.03em;
  }

  .acac-menu__header .acac-menu__search.is-search-open,
  .acac-menu__overlay-header .acac-menu__search.is-search-open {
    width: min(280px, calc(100vw - 48px));
  }

  .acac-menu__header .acac-menu__search.is-search-open label,
  .acac-menu__overlay-header .acac-menu__search.is-search-open label {
    transform: translate3d(0, 0, 0) scaleX(1);
  }

  .acac-menu__close {
    top: 18px;
    right: 22px;
  }

  .acac-menu__panel {
    top: 176px;
    left: 24px;
    width: calc(100% - 48px);
  }

  .acac-menu__panel li {
    margin-bottom: 43px;
  }

  .acac-menu__parent {
    grid-template-columns: 42px auto;
  }

  .acac-menu__badge {
    font-size: 16px;
    line-height: 20px;
  }

  .acac-menu__panel strong {
    font-size: 34px;
    line-height: 37px;
    -webkit-text-stroke-width: 1px;
    text-stroke-width: 1px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;

  }
  .main-sub-menu {
      padding: 70px 20px 70px;
  }

  .acac-menu__subnav {
        position: relative;
        display: flex;
        width: 100%;
        max-height: 0;
        overflow: hidden;
        visibility: hidden;
        opacity: 0;
        margin-left: 30px;
        margin-top: 0;
        margin-bottom: 0;
        gap: 12px;        
        transition: max-height 680ms cubic-bezier(0.22, 1, 0.36, 1), opacity 460ms ease, transform 620ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0ms linear 680ms, margin 560ms cubic-bezier(0.22, 1, 0.36, 1);
        left: 0;
    }

  .acac-menu__subnav a {
    font-size: 19px;
    line-height: 24px;
    margin-bottom: 13px;
  }

  .acac-menu__panel li.is-active .acac-menu__subnav {
    display: flex;
    max-height: 360px;
    visibility: visible;
    opacity: 1;
    margin-top: 22px;
    transform: translate3d(0, 0, 0);
      transition-delay: 120ms, 120ms, 120ms, 0ms, 120ms;
/*    animation: acac-subnav-slide 700ms cubic-bezier(0.22, 1, 0.36, 1) both;*/  
/*
    width: auto;
    display: inline-block;
*/
  }
  .acac-menu__subnav a:last-child {
    margin-bottom: 0;
}

  .acac-menu__subnav-close {
    display: none;
  }

  .acac-menu__desktop-subnav {
    display: none;
  }

  .acac-menu.is-opening .acac-menu__header > .acac-menu__top-nav,
  .acac-menu.is-open .acac-menu__header > .acac-menu__top-nav,
  .acac-menu.is-closing .acac-menu__header > .acac-menu__top-nav {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  .acac-banner {
    min-height: 0;
    --banner-band-height: 100%;
    --banner-mask-fullscreen-width: 188vw;
    /* Mobile: "Without Walls" only moves DOWN — never left/right.
       Both the intro lower-drop (acac-title-lower) and the slide-mode
       transform use slide-x = lower-x = 0, while -y stays positive so
       the text still descends below the headline. */
    --without-walls-slide-x: 0px;
    --without-walls-slide-y: 60vh;
    --without-walls-lower-x: 0px;
    --without-walls-lower-y: 62vh;
  }

  .acac-banner__title {
        top: 88px;
        left: 0;
        width: 100%;
        padding: 0 20px;
    }

  .acac-banner__title h1 {
    font-size: 50px;
    line-height: 1;
  }

  .acac-banner__title span {
    top: 45px;
    font-size: 50px;
    line-height: 1;
    -webkit-text-stroke-width: 2px;
    text-stroke-width: 2px;
    width: 100%;
    text-align: center;
  }

  .acac-banner.is-slide-mode .acac-banner__title span,
  .acac-banner.is-mask-hover .acac-banner__title span,
  .acac-banner.is-mask-revealing .acac-banner__title span,
  .acac-banner.is-mask-reset .acac-banner__title span {
    transform: translate3d(var(--without-walls-slide-x), var(--without-walls-slide-y), 0);
  }

  .acac-banner.is-mask-hover .acac-banner__masks,
  .acac-banner.is-mask-revealing .acac-banner__masks {
    top: 50%;
    left: 50%;
    width: var(--banner-mask-fullscreen-width);
  }

  .acac-banner__masks {
    /* Same visual location as before, but coords are now relative
       to title-inner. Title at this breakpoint sits at top:88px /
       left:50px / width:calc(100% - 48px); mask was at top:100px /
       left:24px / width:calc(100% - 48px) in the banner. Subtracting
       gives left:-26px (mask extends 26px past title-inner on the
       left) and width:100% (same effective width). */
    top: 12px;
    left: -26px;
    right: auto;
    width: 100%;
  }

  .acac-banner__content {
        left: 27px;
        bottom: 124px;
        width: calc(100% - 48px);
    }

  .acac-banner__content h2 {
    margin-bottom: 14px;
    font-size: 30px;
    line-height: 35px;
  }

  .acac-banner__content p a,
  .acac-banner__content .no-location-link  {
      font-size: 16px;
      line-height: 21px;
      gap: 12px;
    }

  .acac-banner__cta {
    left: 50px;
    right: auto;
    bottom: 76px;
    font-size: 16px;
  }

.acac-banner__counter {
        left: 27px;
        bottom: 36px;
        grid-template-columns: 38px minmax(0, 100%);
        width: calc(100% - 56px);
    }

  .acac-banner__arrow {
    width: 60px;
    height: 60px;
  }

  .acac-banner__arrow--prev {
    left: -29px;
  }

  .acac-banner__arrow--next {
    right: -29px;
  }

  .acac-banner__arrow::before {
    top: 22px;
  }
  .acac-banner__arrow--prev::before {
      right: 13px;
      border-right: 9px solid #000000;
  }
  .acac-banner__arrow--next::before {
    left: 13px;
    border-left: 9px solid #000000;
}
  .acac-banner__arrow::before {
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    content: "";
}
.acac-exhibitions__view-all {
      margin: 0 auto;
      width: calc(100% - 20px);
      position: relative;
      left: 20px;
  }
.main-sub-menu .main-menu-container {
    max-width: 100%;
    width: 100%;
}
.main-sub-menu .main-menu-container .acac-menu__panel {
    max-width: 420px;
    width: 100%;
}
.main-sub-menu {
    padding: 90px 40px 70px;
    height: 100dvh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;    
}

.footer-sponsors,
  .footer-main,
  .footer-social-row { padding-left: 24px; padding-right: 24px; }
  .footer-bottom { margin: 0 24px; }

  .footer-main {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 46px;
    padding-top: 50px;
  }
  .footer-nav-col { gap: 36px; padding-top: 0; }
  .footer-social-row { flex-wrap: wrap; gap: 12px; }
  .footer-social__link { min-width: 0; height: 50px; padding: 0 22px; font-size: 15px; }
  .footer-bottom {gap: 6px; }
  .footer-mission {
        max-width: 100%;
        font-size: 16px;
        line-height: 1.5;
    }
  .footer-logo-col {max-width: 100%;}
  .footer-nav-col {width: 100%;max-width: 100%;}
  .footer-banana {width: 440px;height: 275px;}
  .footer-animation-social {
        right: 493px;
        bottom: 66px;
        width: 260px;
    }
  .footer-social__link {
        min-width: 0;
        height: 47px;
        padding: 0 34px;
        font-size: 16.4413px;
    }
  .footer-animation-social .toptobottom-social-wrap:nth-of-type(2) a.footer-social__link {
        position: absolute;
        bottom: 27px;
        right: 69px;
        transform: rotate(-11deg) !important;
    }
    .footer-animation-social a.footer-social__link {   
      right: 126px;
      transform: rotate(21deg) !important;
  }
.acac-page h2 {
    font-size: 40px;
    line-height: 1.05;
    margin-bottom: 28px;
}

.acac-page h3 {
    font-size: 30px;
    line-height: 35px;
    margin-bottom: 27px;
}
.acac-who { 
    padding: 90px 0 20px;
}

.acac-page h4 {
    font-size: 25px;
    margin-bottom: 8px;
}

.acac-page p {
    font-size: 16px;
    line-height: 22px;
}

  .acac-hero-banner {
    padding: 30px 0 0;
  }

  .acac-hero-banner__label {
    font-size: 38px;
    line-height: 38px;
    -webkit-text-stroke: 2px currentColor;
  }

  .acac-hero-banner__switch {
    padding: 0 24px 20px;
    gap: 14px;
  }

  .acac-hero-banner__toggle {
    width: 76px;
    height: 38px;
    border-radius: 50px;
  }

  .acac-hero-banner__knob {
    width: 30px;
    height: 30px;
    top: 2px;
    left: 4px;
  }
  .acac-page[data-theme="artists"] .acac-hero-banner__knob {
        top: 2px;
        left: 1px;
    }

  .acac-page[data-theme="artists"] .acac-hero-banner__knob {
    transform: translateX(38px);
  }

  .acac-hero-banner__body {
    height: 360px;
  }

  .acac-hero-banner__tab {
    width: 176px;
    padding-left: 20px;
  }
  .acac-hero-banner__tab--right i {
    border-left: 20px solid #000;
    border-right: 20px solid transparent; 
    border-top: 11px solid transparent;
    margin-left: 42px;
    border-bottom: 11px solid transparent;
}

  .acac-hero-banner__tab span {
    font-size: 18px;
    letter-spacing: 0;
  }

  .acac-page[data-theme="visitors"] .acac-hero-banner__box {
        padding: 40px 230px 40px 84px;
        left: 50px;
    }

  .acac-page[data-theme="artists"] .acac-hero-banner__box {
        padding: 40px 84px 40px 230px;
        right: 50px;
        width: calc(100% - 50px);
    }
    .acac-page[data-theme="artists"] .acac-hero-banner__arrow {
      border-top: 36px solid #000000;
      border-bottom: 24px solid transparent;
      border-left: 24px solid transparent;
      border-right: 24px solid transparent;
  }
  .acac-page[data-theme="visitors"] .acac-hero-banner__arrow {
    border-top: 36px solid #ffffff;
    border-bottom: 24px solid transparent;
    border-left: 24px solid transparent;
    border-right: 24px solid transparent;
}
  .acac-hero-banner__box h2 {
    font-size: 42px;
    line-height: 38px;
    margin-bottom: 18px;
  }
  .acac-hero-banner__box p {
    font-size: 17px;
   
    margin-bottom: 22px;
  }

  .acac-container {
    padding-left: 24px;
    padding-right: 24px;
  }

  .acac-plan {
    padding: 60px 0 30px;
  }

.acac-plan__grid {
      gap: 32px;
      padding: 0 11px;
      grid-template-columns: repeat(2, 1fr);
  }
  .acac-plan__img {
    height: 220px;
    border-radius: 0;
  }

  .acac-exhibitions {
    padding: 60px 0;
  }

  .acac-exhibitions__layout {
    flex-direction: column;
    gap: 48px;
  }

  .acac-exhibitions__left {
    max-width: none;
    width: calc(100% - 12px);
    position: static;
    top: auto;
  }

  .acac-exhibitions__layout .acac-exhibitions__right {
    width: calc(100% - 12px);
    padding: 0;
}
.acac-exhibitions__featured-img {
      height: 380.0293px;
      border-radius: 0 300px 300px 0;
      margin-left: 0;
      width: 100%;
  }
  .acac-exhibitions__featured-text {
    padding-left: 30px;
    padding-right: 30px;
}
  .acac-exhibitions__featured-text h3 {
    font-size: 32px;
    line-height: 40px;
  }

  .acac-exhibitions__featured-text p {
    font-size: 25px;
    line-height: 28px;
    margin-bottom: 18px;
  }

  .acac-exhibitions__card {
    margin-right: 0;
    margin-bottom: 37px;
  }

  .acac-exhibitions__card-img {
    height: 380.0293px;
    border-radius: 0 300px 300px 0;
  }

  .acac-exhibitions__card-text {
        padding-right: 20px;
        padding-left: 20px;
    }  

  .acac-exhibitions__card-text p {
    font-size: 25px;
    line-height: 28px;    
  }

  .acac-programs {
    padding: 60px 0;
  }

  .acac-programs__list {
    gap: 18px;
  }
.acac-programs__item h3 {
    font-size: 34px;
    line-height: 35px;
    bottom: 25px;
    left: 39px;
}

  .acac-opportunities {
    padding: 60px 0;
  }

  .acac-opportunities__slider {
    padding-left: 0;
  }

  .footer-sponsors__title {
    font-size: 24px;
    line-height: 28px;
    margin-bottom: 26px !important;
}
.acac-menu.is-switch-pinned.is-open .acac-hero-banner__switch {
    opacity: 0 !important;
}

/* ---- Responsive (tablet stays as desktop, mobile reflows) ---- */
  .overview-cards .container { padding: 0 32px; }
  .overview-cards__list { gap: 36px; }    
  .overview-text-area {padding: 60px 50px 60px 0;}
  .overview-hero .curve-top {max-height: initial;}
  .overview-text-area h3 { font-size: 22px; line-height: 30px; margin-bottom: 18px; }
  .acac-exhibitions .container {padding: 0;}
  .overview-hero .overview-hero__inner {
      max-width: 100%;
      width: 100%;
      padding: 0 31px 60px;
  }
.overview-hero .overview-hero__shape {
      width: 100%;
      max-width: calc(100% - 31px);
      position: relative;
      height: auto;
      float: right;
  }
.overview-hero .container {
    padding: 0;
    display: block;
}
.overview-hero {
    padding-top: 356px;
    min-height: inherit;
}
.overview-hero .overview-hero__inner h1 {
    font-size: 55px;
    margin: 0 0 30px;
    max-width: 100%;
    width: 100%;
}
h2 {
    font-size: 29px;    
}
.overview-text-area h3 {
    font-size: 26px;   
}
img.mobile-image_masks {
      display: block;
      height: 60vh;
  }
  img.desktop-image_masks {
    display: none;
}
.acac-banner__masks {
    top: 70px;
    left: 0;
}
.acac-banner__title h1 {
      width: 100%;      
        text-align: center;
  }
   @keyframes acac-span-slide-up {
    from {
      transform: translate3d(var(--without-walls-lower-x), var(--without-walls-lower-y), 0);
    }

    to {
      transform: translate3d(var(--without-walls-slide-x), 10px, 0);
    }
  }



  /* Mobile: sidebar becomes a FULL-WIDTH HORIZONTAL bar that sits at the
     top of the main-sticky-section and sticks to the top of the viewport
     as the user scrolls through the section. Vertical line + red arrow
     are hidden (only the bold-active word treatment remains). */
  .main-sticky-section > .container {
    display: block;       /* drop the desktop grid so the sidebar can be a row, not a column */
    column-gap: 0;
    padding-top: 0;
  }
  .main-sticky-section .exh-section { grid-column: auto; }

  .main-sticky-section .exh-sidebar {
    grid-column: auto;
    grid-row: auto;
    position: sticky;
    top: 61px;
    margin-top: 0;
    width: 100%;
    background: #FFFFFF;
    z-index: 5;
    transition: box-shadow 280ms ease, transform 280ms ease;
    /* slight box-shadow when stuck to give the smooth "lift" feel */
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    border-bottom: 3px solid #000;    
  }
  .main-sticky-section .exh-sidebar.is-stuck {
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.06);
  }

  /* Hide the desktop vertical line on mobile (the words flow as a row,
     a vertical line would make no sense). The arrow stays and tracks
     the active word HORIZONTALLY — see the rotated arrow rule below. */
  .main-sticky-section .exh-sidebar__line { display: none; }

  /* Words flow horizontally as tabs across the full width. */
  .main-sticky-section .exh-sidebar ul {
    display: flex;
    justify-content: space-around;
    align-items: center;
    gap: 8px;
    padding: 0 28px 17px;
    text-align: left;
    position: relative;
    transition: all 0.5s ease-in-out;
  }
  .main-sticky-section .exh-sidebar li {
        padding: 0 9px;
        display: block;
    }
  .main-sticky-section .exh-sidebar li a {
    font-size: 16px;
    margin-left: 0;
  }

  /* Arrow: same red triangle, but on mobile it lives BELOW the words and
     points UPWARD at the active word. JS sets --exh-arrow-x to the
     horizontal center of the active li; we translate the arrow by that
     amount. Vertical --exh-arrow-y is ignored on mobile. The transition
     keeps the slide-between-words motion equally smooth as desktop. */
  .main-sticky-section .exh-sidebar__arrow {
        display: none;        
    }
    .main-sticky-section .exh-sidebar li:before {
        content: "";
        display: block;
        position: relative;
        left: 0;
        border-top: 8px solid transparent;
        border-bottom: 8px solid transparent;
        border-left: 14px solid #C33417;
        border-right: 8px solid transparent;        
        transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
        right: inherit;
        left: -17px;
        top: 15px;
        opacity: 0;
        z-index: -1;
        margin: 0;
    }
    .main-sticky-section .exh-sidebar li.is-active:before{
        opacity: 1;
    }
  .exh-hero { padding: 240px 0 64px; min-height: 0; }
  .exh-hero:before {bottom: -89px;}
  .exh-hero .exh-hero__grid { grid-template-columns: 1fr; row-gap: 22px; }
  .exh-hero .exh-hero__left h1 { font-size: 56px; line-height: 56px; }
  .exh-hero .exh-hero__sub { font-size: 18px; line-height: 28px; }
  .exh-hero .exh-hero__lead { font-size: 22px; line-height: 30px; }

  .main-sticky-section .exh-section { padding: 64px 0; }
  .main-sticky-section .exh-section__title { line-height: 1.1; margin-bottom: 19px; }

  .main-sticky-section .exh-featured { margin-bottom: 32px; }
  /* The new content wrapper collapses to a single column on mobile;
     body stacks above the meta card. */
  .main-sticky-section .exh-featured__content {
    grid-template-columns: 1fr;
    gap: 14px;
    padding-top: 16px;
  }
  .main-sticky-section .exh-featured__meta { grid-column: 1; }
  .main-sticky-section .exh-featured__body { grid-column: 1; }
  .main-sticky-section .exh-featured__body h3 { font-size: 32px; line-height: 1.15; }

  .main-sticky-section .exh-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 24px; }
  .main-sticky-section .exh-featured__body h3 {
        font-size: 30px;
        line-height: 1.15;
        margin-bottom: 9px;
    }
  .main-sticky-section .exh-card__meta { font-size: 22px; line-height: 1.15; }


  .exi-gallery {
        padding: 52px 0 50px;
    }
    .exi-gallery .exi-gallery__slider {
        margin: 0;
    }
    .exi-gallery .slick-list.draggable {
        margin: 0;
    }
    .exi-gallery .exi-gallery__slider:before {
        width: 100%;
    }
    .exi-gallery--image {
        -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 98.5%);
        clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 98.5%);
    }
  .exi-gallery .exi-gallery__head { margin-bottom: 36px; }
  .exi-gallery .exi-gallery__head h2 { font-size: 42px; line-height: 1.1; }
  .exi-gallery .exi-gallery--video .exi-gallery__head h2,
  .exi-gallery .exi-gallery__head--video p { text-align: left; }
  .exi-gallery .exi-gallery__slide { padding: 0 4px; }
  /*.exi-gallery .exi-gallery__img-wrap { aspect-ratio: 4 / 3; }*/
  .exi-gallery .exi-gallery__play-icon svg { width: 72px; height: 72px; }
  .exi-gallery .exi-gallery__controls { margin-top: 24px; gap: 8px; flex-wrap: wrap; }
  /* Video grid collapses to single column; right column flows below. */
  .exi-gallery .exi-gallery__video-grid { grid-template-columns: 1fr; gap: 18px; }
  .exi-gallery .pex-hero { min-height: 420px; padding-block: 60px 40px; }
  .exi-gallery .pex-hero__sub { font-size: 18px; line-height: 1.45; }
  .exi-gallery .pex-grid { grid-template-columns: repeat(2, 1fr); gap: 44px 18px; }
  .exi-gallery .pex-grid-section { padding-block: 24px 72px; }  
}

@media (min-width: 768px) and (max-width: 1199px) {
  .acac-hero-banner__tab span {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
  }
}
@media (min-width: 992px) and (max-width: 1320px) {
  .acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
    top: 20px !important;
}
}


@media (hover: none), (max-width: 991px) {
.acac-cursor { display: none; }
}

@media (max-width: 991px) {
    .toggle-full-height {
        padding-right: 19px;
    }
  .ww__split-section .ww__split { grid-template-columns: 1fr; gap: 36px; }
  .ww__split-section .ww__split--image-left,
  .ww__split-section .ww__split--image-right { grid-template-areas: "img" "text"; padding-left: 0; padding-right: 0; }
  .ww__split-section .ww__split-text { padding: 0 24px; max-width: none; }

  .ww__staff,
  .ww__staff .ww__board,
  .ww__reports { padding: 80px 0; }
  .ww__reports .ww__reports-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
  }
  .ww__reports .ww__report-card--featured {
    grid-row: 1 / 2;
    grid-column: 1 / -1;
    height: 420px;
  }
  .ww__reports .ww__report-card:nth-of-type(2) { grid-column: 1; grid-row: 2; }
  .ww__reports .ww__report-card:nth-of-type(3) { grid-column: 2; grid-row: 2; }
  .ww__reports .ww__report-card:nth-of-type(4) { grid-column: 1; grid-row: 3; }
  .ww__reports .ww__report-card:nth-of-type(5) { grid-column: 2; grid-row: 3; }
  .ww__reports .ww__report-card:not(.ww__report-card--featured) { height: 280px; }

  .ww__popup-grid { grid-template-columns: 1fr; min-height: auto; }
  .ww__popup-portrait { gap: 0; }
  .ww__popup-portrait-inner { aspect-ratio: 4 / 3; border-radius: 500px 500px 0 0; }
  .ww__popup-close b {display: none;}
  .ww__popup-body { padding: 36px 28px; }
  .ww__popup-tagline-row { padding: 20px 28px 28px; }

  .vi__find-us { padding: 70px 0 80px; }
  .vi__find-us .overview-hero__inner .vi__info-grid-inner {
    grid-template-columns: 1fr;
    gap: 36px;
    margin-top: 36px;
  }

  .vi__find-us .vi__location-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .ind__intro { padding: 56px 20px 72px; }
  .ind__intro .ind__intro-grid { grid-template-columns: 1fr; gap: 40px; }
  .ind__intro .ind__visit-card { padding: 28px 31px 38px; }

  .ind__programming { padding: 70px 0 90px; }
  .ind__programming .ind__program-slide {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .ind__programming .ind__program-img {
        aspect-ratio: 4 / 3;
        border-radius: 500px 500px 8px 8px;
    }
    .ind__programming .ind__program-body h3 {
        font-size: 30px;
    }
  .ind__programming .ind__program-body { padding: 32px 28px 36px; }

  /* Shrink the banner-style arrows on tablet and tuck them inside
     the container gutter so they stay tappable without overflowing. */
  .ind__programming .acac-banner__arrow::before { top: 24px; }
  .ind__programming .acac-banner__arrow--next {    right: -30px;}
  .ind__programming .acac-banner__arrow--prev {
    left: -30px;
}

  .ind__exhibition-grid { grid-template-columns: 1fr; gap: 36px; }

  .group-tours-page h1 { font-size: 56px; }
  .group-tours-page h2 { font-size: 44px; }
  .group-tours-page h3 { font-size: 32px; } 

  .group-tours-page .gt__guided { padding: 80px 0; }
  .group-tours-page .gt__guided-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .group-tours-page .gt__guided-divider {
    width: auto;
    height: 3px;
    align-self: auto;
  }  
  .gt__inquiries .gt__inquiries-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .air__past { padding: 80px 0; }
  .artist-in-residence-page .air__past-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
  }
  .acac-banner__content h2 br {
      display: none;
  }
  .acac-hero-banner__tab--left.is-visible {
    width: 176px;    
    left: -74px;    
    padding-right: 20px;
}
  .acac-hero-banner__tab--left i {
    border-left: 20px solid transparent;
    border-right: 20px solid #fff; 
    border-top: 11px solid transparent;
    margin-right: 42px;
    border-bottom: 11px solid transparent;
}
.acac-exhibitions__card-text h4 {
    font-size: 26px;
    line-height: 1.1;
    margin-bottom: 6px;
}
.footer-sponsors {
    padding: 55px 30px 35px;
}
.footer-main .footer-logo-col a {
    margin-bottom: 0;
}
.footer-bottom { align-items: flex-start;}
.overview-hero .container {
    display: block;
}
.ww__popup-tagline-row { 
    display: none;
}
.ww__popup-grid {
    gap: 0;
}
.ww__popup-name {
    margin-bottom: 4px;
    font-size: 32px;
}
.overview-hero__inner .vi__info-grid-inner {
    max-width: 100%;
    margin-bottom: 0;
}
.overview-hero__inner .vi__info-grid-inner {
    gap: 26px;
}
.acac-menu.is-switch-pinned.is-opening .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark, .acac-menu.is-switch-pinned.is-open .acac-menu__overlay-header a.acac-menu__brand.acac-menu__brand--mark {
    top: 22px;
    transition: all 0.5s ease-in-out 1s !important;
}
.acac-menu__overlay .acac-menu__close {
    transition: all 0.1s ease-in-out 0.0s;
    top: 28px;
    right: 22px;
}
.gt__inquiries .gt__form {
    margin-left: 0;
}
.pp__hero h1 {
    max-width: 580px;
    font-size: 55px;
}
.air__past .air__past-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}
.acac-opportunities.air__related-opportunities {
    padding: 86px 0 70px;
}
.overview-cards .overview-card__media {
    width: calc(51.6% - 30px);
}
.overview-cards .overview-text-area h3.overview-card__accordion-link-head {    
    font-size: 28px;
}
.overview-card .overview-text-area { 
    padding: 60px 30px 60px 0;
    display: inline-block;
}
.bm__levels .bm__levels-list {
    margin-top: 40px;
    margin-bottom: 50px;
}
.bm__levels .bm__levels-card > p {
    margin: 0 auto 20px;    
}
.main-sticky-section aside.exh-sidebar {
    display: block !important;
}
.main-sticky-section .container aside.exh-sidebar {
    display: none !important;
}
.main-sticky-section{
    padding-top: 0;
}
.main-sticky-section .exh-section {
    padding-top: 27px !important;
}
.exh-featured__meta p {
    margin-bottom: 17px;
    gap: 12px;    
}
.main-sticky-section .exh-featured__meta {
    border: 2px solid #000000;
    padding: 20px 32px 19px 22px;
}
.main-sticky-section .upcoming-exhibitions-block {
    padding-top: 32px !important;
    margin-top: 45px !important;
    margin-bottom: 9px;
    border-bottom: 1px solid #D5D5D5;
    padding-bottom: 27px !important;
}
.main-sticky-section .upcoming-exhibitions-block h2 {
    margin-bottom: 31px;
    line-height: 1;
}
.main-sticky-section .exh-card__body {
    padding-top: 15px;
}
.main-sticky-section {
    padding-bottom: 17px;
    margin-bottom: 40px; 
}
.pex-grid-section .pex-toolbar {
    padding: 0 0;
}
.pex-grid-section .pex-search {    
    max-width: 400px;
}
.page-past-exhibitions .pp__hero h1 {
    font-size: 50px;
}
.ww__land {
    -webkit-clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
    clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
}
.ww__board {
    -webkit-clip-path: polygon(0 3%, 100% 0, 100% 96%, 0 100%);
    clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
}
.vi__find-us {     
    -webkit-clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
    clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
}
.gt__guided {
    -webkit-clip-path: polygon(0 3%, 100% 0, 100% 97%, 0 100%);
    clip-path: polygon(0 3%, 100% 0, 100% 97%, 0 100%);
}
.pp__policy {
    padding: 80px 0 80px;
    -webkit-clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
    clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
}
.support-sec-blocks {
    margin-top: 30px;
}
.exi-gallery--video .exi-gallery__video-left {
    padding-right: 0;
}
.exi-gallery--video .exi-gallery__video-right {
    display: flex;
    flex-direction: column;
    padding: 0 0 12px 0;
    max-width: 100%;
    width: 100%;
}
.exi-gallery--video .exi-gallery__video-right header.exi-gallery__head.exi-gallery__head--video {
    display: none;
}
.exi-gallery--video .exi-gallery__arrows {border: 2px solid #fff;}
.exi-gallery__video-right .exi-gallery__caption {
    border-top: 2px solid #fff;
    margin-top: 0;
    padding-top: 10px;
}
.exi-gallery--video .exi-gallery__head--video.mobile {
    text-align: center;
    margin-bottom: 27px;
}
.exi-gallery--video .exi-gallery__head--video.mobile p {
    text-align: center;
    margin-top: 22px;
}
.exi-gallery--video .exi-gallery__head--video.mobile h2 {
    font-size: 35px;
    margin-bottom: -14px;
}
header.exi-gallery__head.exi-gallery__head--video.mobile {
    display: block;
}
section.ind__intro.ind__intro-single {
    -webkit-clip-path: polygon(0 0%, 100% 2%, 100% 100%, 0 100%);
    clip-path: polygon(0 0%, 100% 2%, 100% 100%, 0 100%);
}
.exi-gallery--image h2 { 
    text-align: center;
}
.exi-gallery .exi-gallery__controls {
    margin-top: 0;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 13px;
    border-bottom: 2px solid #000;
}
.exi-gallery .exi-gallery__slider {
    position: relative;
    padding-bottom: 18px;
    margin: 0;
}
.exi-gallery .exi-gallery__slider:before{
    display: none;
}
.exi-gallery--image .exi-gallery__controls { 
    left: 0;
}
.air__past {
    -webkit-clip-path: polygon(0 2%, 100% 0%, 100% 100%, 0% 100%);
    clip-path: polygon(0 2%, 100% 0%, 100% 100%, 0% 100%);
}
section.ind__intro.ind__intro-single aside.ind__visit-card {
    top: 0;
}
.acac-menu__overlay-header .acac-menu__top-nav:before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 65px;
    background-color: #000;
    top: -27px;
    z-index: -1;
    opacity: 0;
    transition: all 0.5s ease-in-out 1s !important;
}
.acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav:before {
    opacity: 1;
}
.acac-menu.is-menu-open.acac-menu[data-theme="artists"] .acac-menu__overlay-header .acac-menu__top-nav::before {
    background-color: #000;
}
.toggle-full-height {
    height: 130px;
}
.gt__guided .gt__guided-grid .gt__guided-col:last-child h2 {
    font-size: 24px;
    margin-bottom: 20px;
}
 .sr-page .sr-item__link {
    grid-template-columns: 160px minmax(0, 1fr);
    gap: 24px;
    padding: 28px 0;
  }

  .sr-page .sr-item__thumb {
    width: 160px;
  }

  .sr-page .sr-item__link:not(:has(.sr-item__thumb)),
  .sr-page .sr-item__link--no-thumb,
  .sr-page .sr-list__item--no-thumb .sr-item__link {
    grid-template-columns: 160px minmax(0, 1fr);
  }

  .sr-page .sr-item__title {
    font-size: 32px;
  }
  .sr-page .sr-search__input {
        font-size: 24px;
    }
    .sr-page .sr-search__clear::before, .sr-page .sr-search__clear::after {
        width: 25px;
        top: 50%;
        left: 0;
    }
    .sr-page .sr-toolbar__count {
        margin: 30px 0 0;
        padding: 0 0 40px;
        font-size: 18px;
    }    
    .overview-hero .overview-hero__overlay {
        height: 500px;
    }
    .page-id-141662 section.pp__policy {
        -webkit-clip-path: polygon(0 2%, 100% 0, 100% 98%, 0 100%);
        clip-path: polygon(0 2%, 100% 0, 100% 98%, 0 100%);
    }
    .ww__staff-inner h2 + p {
        margin: 0 auto 60px;
        font-size: 24px;
    }
    .acac-menu__wordmark svg {
        width: 148.338px;       
        transition: all 0.5s ease-in-out; 
    }
    .is-open span.acac-menu__wordmark svg {
        width: 0;
    }
    .acac-banner__masks .desktop-image_masks {
        gap: 20px 0;
    }
    .acac-banner__masks .desktop-image_masks img {
        height: 26vh;
        width: 50%;
        object-fit: contain;
    }
 /* Below 991px the images wrap into two rows, so scale from the top
       edge (downward) instead of the desktop's top-left (leftward). */
    .acac-banner__masks .svg-image {
        transform-origin: top center;
    }									   
    .acac-banner.is-slide-mode .acac-banner__masks .svg-image .image-01 {
        transform: scale(5) translate(20%, 0%);
    }    
    body:not(.home) .acac-menu:not(.is-switch-pinned) .acac-menu__header::before {
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDI0IiBoZWlnaHQ9IjYyIj48cGF0aCBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMCAwSDEwMjRWNjJIMFogTTg2Ljg5NTUxIDQ4LjIwNjU2TDg2LjkyOCA0OC4xNzQyNUM4Ni45NzM5IDQ4LjEyODYyIDg3LjAwMDcyIDQ4LjA2NjM0IDg3LjAwMDcyIDQ4LjAwMDY0VjEzLjI2ODIxNzFDODcuMDAwNzIgMTMuMjEwMzQ0NCA4Ni45Nzk0OCAxMy4xNTM1ODUgODYuOTQxNDEgMTMuMTA5MDY3NEM4Ni44OTQ0MyAxMy4wNTQ1MzM3OSA4Ni44MjYyMSAxMy4wMjMzNzE2NSA4Ni43NTM0OSAxMy4wMjMzNzE2NUM4Mi42NTM3MiAxMy4wMjMzNzE2NSA4MS45OTI0IDEzIDc5LjE2MTU0IDEzQzcyLjEzMjQ1IDEzIDY1LjgyMTc0IDE3LjgzMjM2MSA2My4zNDQ0IDI0LjMzODU2QzU5LjA3MzQ1IDM1LjU1ODA1IDY2Ljk5ODg1IDQ3LjU5MTA1IDc4Ljk0NDQ2IDQ4LjIzNDM3TDg2LjcxOTkyIDQ4LjI4Qzg2Ljc4NTg5IDQ4LjI4IDg2Ljg0ODUzIDQ4LjI1NDQ0IDg2Ljg5NTUxIDQ4LjIwNzY0VjQ4LjIwNjU2Wk00NC4zMDA0IDEzLjI2OTM2MUwyNC4wMjA5NDQ5OCA0OC4wMDI4OUMyMy45NjE2NDE4MiA0OC4xMDQyMyAyNC4wMzU0OTA5NiA0OC4yMjk5NiAyNC4xNTE4NTk3IDQ4LjIyOTk2SDY0LjcxMTc3QzY0LjgyOTMxIDQ4LjIyOTk2IDY0LjkwMjAzIDQ4LjEwNDIzIDY0Ljg0MjcyIDQ4LjAwMjg5TDQ0LjU2MzI5IDEzLjI2OTM2MUM0NC41MDUxNSAxMy4xNjkxOTczIDQ0LjM1OTYyIDEzLjE2OTE5NzMgNDQuMzAwNCAxMy4yNjkzNjFaIi8+PC9zdmc+");
    mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDI0IiBoZWlnaHQ9IjYyIj48cGF0aCBmaWxsPSJ3aGl0ZSIgZmlsbC1ydWxlPSJldmVub2RkIiBkPSJNMCAwSDEwMjRWNjJIMFogTTg2Ljg5NTUxIDQ4LjIwNjU2TDg2LjkyOCA0OC4xNzQyNUM4Ni45NzM5IDQ4LjEyODYyIDg3LjAwMDcyIDQ4LjA2NjM0IDg3LjAwMDcyIDQ4LjAwMDY0VjEzLjI2ODIxNzFDODcuMDAwNzIgMTMuMjEwMzQ0NCA4Ni45Nzk0OCAxMy4xNTM1ODUgODYuOTQxNDEgMTMuMTA5MDY3NEM4Ni44OTQ0MyAxMy4wNTQ1MzM3OSA4Ni44MjYyMSAxMy4wMjMzNzE2NSA4Ni43NTM0OSAxMy4wMjMzNzE2NUM4Mi42NTM3MiAxMy4wMjMzNzE2NSA4MS45OTI0IDEzIDc5LjE2MTU0IDEzQzcyLjEzMjQ1IDEzIDY1LjgyMTc0IDE3LjgzMjM2MSA2My4zNDQ0IDI0LjMzODU2QzU5LjA3MzQ1IDM1LjU1ODA1IDY2Ljk5ODg1IDQ3LjU5MTA1IDc4Ljk0NDQ2IDQ4LjIzNDM3TDg2LjcxOTkyIDQ4LjI4Qzg2Ljc4NTg5IDQ4LjI4IDg2Ljg0ODUzIDQ4LjI1NDQ0IDg2Ljg5NTUxIDQ4LjIwNzY0VjQ4LjIwNjU2Wk00NC4zMDA0IDEzLjI2OTM2MUwyNC4wMjA5NDQ5OCA0OC4wMDI4OUMyMy45NjE2NDE4MiA0OC4xMDQyMyAyNC4wMzU0OTA5NiA0OC4yMjk5NiAyNC4xNTE4NTk3IDQ4LjIyOTk2SDY0LjcxMTc3QzY0LjgyOTMxIDQ4LjIyOTk2IDY0LjkwMjAzIDQ4LjEwNDIzIDY0Ljg0MjcyIDQ4LjAwMjg5TDQ0LjU2MzI5IDEzLjI2OTM2MUM0NC41MDUxNSAxMy4xNjkxOTczIDQ0LjM1OTYyIDEzLjE2OTE5NzMgNDQuMzAwNCAxMy4yNjkzNjFaIi8+PC9zdmc+");
  }
  .acac-menu__search button.clear-search {
        padding-right: 29px;
        margin-top: 0px;
        font-size: 18px;
    }
    .overview-hero.banner-form-added .overview-hero__inner {
        max-width: 100%;
    }
    .overview-hero.banner-form-added .overview-hero__inner h2 {
        font-size: 26px;        
    }
    section.overview-hero.banner-form-added {
        padding-top: 350px;
    }
    .acac-menu__close{
        transform: translate3d(0, 0, 0) scale(1);
    }
    /* Keep brand at left edge (x=18px) so the mask-position aligns correctly */
      body.home .acac-menu.is-switch-pinned header.acac-menu__header {
        justify-content: flex-start;
      }
      /* Scale mask from 2560×100 → 2304×90 (×0.9) and recalculate position:
           x: 18 − (97 × 0.9) = −69px
           y: 12 − (30 × 0.9) = −15px                                          */
      body.home .acac-menu.is-switch-pinned header.acac-menu__header::before {
        -webkit-mask-size: 2304px 90px;
        mask-size: 2304px 90px;
        -webkit-mask-position: -69px -15px;
        mask-position: -63px -14px;
      }
      body.home .acac-menu.is-switch-pinned .acac-menu__brand--mark > svg.svg-img.replaced-svg path {
        opacity: 0;
    }
    body.home .acac-menu.is-switch-pinned.is-menu-open .acac-menu__brand--mark > svg.svg-img.replaced-svg path {     
        opacity: 1;
    }
    .em-search-views .tippy-box {
        height: auto;     
    }
    .page-events .pp__policy, .page-classes .pp__policy, .page-fundraising .pp__policy {
        padding-top: 50px;
    }
    .ww__staff .ww__keep-reading{
        cursor: pointer;
    }
    .ww__popup-close {
        cursor: pointer;
    }
    .is-visible ul {
        padding-bottom: 14px !important;
        padding-top: 2px !important;
    }    
    .is-switch-pinned .acac-menu__open, .is-switch-pinned .acac-menu__circle {
        top: 14px;
        right: 14.5%;
    }
    .is-scrolled.is-switch-pinned button.acac-menu__open {
        top: 7px;
        right: 7px;
    }
    .acac-banner__cta span {
        top: -2px;
    }
    .tax-event-categories .custom-page-content.pp__policy h1 {
        font-size: 50px;
    }
    .tax-event-categories .custom-page-content.pp__policy {
        padding-top: 120px;
    }
    .single-location .acac-location-single h1 {
        font-size: 50px;
    }
}

@media (max-width: 767px) { 
 
  #news.pp__hero{
    padding-bottom:15px;
  }
  
  .acac-banner .acac-banner__masks .svg-image .image-01,
  .acac-banner .acac-banner__masks .svg-image .image-03{
    margin-right: -20px;
    margin-left: -10px;
  }
  
  .acac-banner .acac-banner__masks .svg-image .image-02{
    margin-right: 0 !important;
  }
  .acac-banner__masks .desktop-image_masks {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 25px 0;
      max-width:350px;
      margin:auto;
  }
  
  .acac-banner__masks .desktop-image_masks img {
      display: block;
      width: auto;
      max-width: none;
      height: 175px !important;
  }
  
  /* triangles */
  .acac-banner__masks .desktop-image_masks .image-01,
  .acac-banner__masks .desktop-image_masks .image-03 {
      flex: 0 0 60%;
      width: 65%;
  }
  
  /* rounded shapes */
  .acac-banner__masks .desktop-image_masks .image-02,
  .acac-banner__masks .desktop-image_masks .image-04 {
      flex: 0 0 40%;
      width: 40%;
  }
  
body.home {
    background-color: #000;
}
.gform_page_fields .gfield_contains_required, .gform_page_fields .gfield--type-radio, .gform_page_fields .gfield--width-full {
    margin-bottom: 10px;
}
.footer-main {
    padding-bottom: 33%;
}
.gform-body.gform_body .gfield_label.gform-field-label {
    font-size: 16px;
}
.acac-hero-banner__switch button.acac-hero-banner__toggle:hover,
.acac-hero-banner__switch button.acac-hero-banner__toggle:focus,
.acac-hero-banner__switch button.acac-hero-banner__toggle:active {
    background-color: transparent;
}
.ww__staff-inner h2 + p { 
    font-size: 20px;
    margin-bottom: 32px;
}
.page-id-141662 section.pp__policy {
    -webkit-clip-path: polygon(0 2%, 100% 0, 100% 98%, 0 100%);
    clip-path: polygon(0 0.8%, 100% 0, 100% 99.2%, 0 100%);
}         
.acac-opportunities { 
    box-shadow: initial;
}
.acac-page[data-theme="artists"] .acac-programs {     
    box-shadow: 0 -8px 64.8px 0 rgba(0, 0, 0, 0.10);
}
h2 {
    font-size: 35px;    
}
* {
background-attachment: scroll !important;
}
 .pp__hero .pp__hero-overlay {
    background-attachment: initial !important;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100.57%) !important;
}
.ind__intro .ind__visit-block p {
    font-size: 16px;
}
.ind__intro .ind__visit-block strong {
    font-size: 16px;
    line-height: 24px;
}

.ww__split-section {
    -webkit-clip-path: polygon(0 2%, 100% 0, 100% 98%, 0 100%);
    clip-path: polygon(0 2%, 100% 0, 100% 98%, 0 100%);
}
.exi-gallery__head--video p {
    font-size: 16px;
}

.exi-gallery--video .exi-gallery__dots .slick-dots li button {
    width: 12.2488px;
    height: 12.2488px;
}  
.page-past-exhibitions .pp__hero h1 {
    font-size: 40px;
}
.pex-grid-section .pex-card__title {
    font-size: 20px;
    line-height: 1.18;
    margin-bottom: 4px;
    color: #000000;
}
.pex-grid-section .pex-grid {
    gap: 22px 22px;
}
.pex-grid-section .pex-load-more {
    margin-top: 37px;
}
.pex-grid-section {
    padding-bottom: 39px;
    margin-bottom: 40px;
}
.main-sticky-section .overview-cards .overview-card__media {
    width: 100%;
    max-height: initial;
    min-height: initial;
}
.main-sticky-section .overview-cards .overview-text-area h2 {     
    margin: 0 0 13px;
}
.main-sticky-section .overview-cards .overview-text-area p {
    font-size: 16px;
    margin-bottom: 21px;
}
.main-sticky-section .overview-cards .overview-text-area {        
    padding: 0 20px 39px 20px;        
}
.main-sticky-section .exh-section .overview-cards {
    margin-bottom: 25px;
}
.main-sticky-section .overview-card .overview-text-area {
    width: 100%;
    min-height: auto;
}
.main-sticky-section .exh-card__body h3 {
    font-size: 24px;
    line-height: 1.4; 
    margin: 0 0 0px;
}
.main-sticky-section .exh-card__meta {
    font-size: 20px;
    line-height: 1.15; 
}
.main-sticky-section .exh-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr)); 
}
.main-sticky-section .exh-featured__cta {
    font-size: 16px;
}

.pp__hero h1 {
    max-width: 480px;
    font-size: 40px;
}
.ind__programming .acac-banner__arrow:hover {
    transform: translateY(-50%);
}
.ind__hero .ind__hero-figure {
    height: 486px;
}
.ind__programming .slick-dots {
    margin-top: 24px;
    width: calc(100% - 140px);
    padding-left: 23px;
    justify-content: left;
}
.ind__programming .slick-dots li button {
    width: 12.2488px;
    height: 12.2488px;
}
.ind__programming .acac-banner__arrow {
    position: absolute;
    bottom: 53px;
    width: 57px;
    height: 45px;
    background: transparent;
    color: #fff;
    font-size: 0;
    line-height: 1;
    cursor: pointer;
    z-index: 4;
    margin: 0;
    padding: 0;
    border: 2px solid #fff;
    transition: background-color 300ms ease;
    top: inherit;
    opacity: 1;
}
.ind__programming .acac-banner__arrow--prev {
    left: calc(100% - 150px);
    border-radius: 41px 0 0 41px;
    border-right: 1px solid #000;
}
.ind__programming .acac-banner__arrow--next {
    right: 37px;
    border-radius: 0 41px 41px 0;
    border-left: 0;
}
.ind__programming .acac-banner__arrow::before {
    top: 50%;
    transform: translateY(-50%);
}
.ind__programming .container {
    padding: 0 13px;
}
.ind__programming .acac-banner__arrow.slick-prev::before {
    left: 20px;
    border-right: 14px solid #fff;
}
.ind__programming .acac-banner__arrow--next::before {
    border-left: 14px solid #fff;
    left: inherit;
    right: 20px;
}
.ind__programming .acac-banner__arrow::before {
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
}
.ind__exhibitions .ind__exhibition-grid {
    grid-template-columns: repeat(1, 1fr);
    padding: 0 9px;
}
p {
    font-size: 16px;
}
.footer-main .footer-logo-col a { 
    max-width: 340px;
}
.ww__split-section .ww__split {
    padding: 26px 0; 
}
.ww__split .container .ww__split-text {
    width: 100%;
    padding-left: 0;
    min-height: auto;
    padding-top: 36px;
}
.ww__split-section .ww__split-text h2 {
    margin-bottom: 18px; 
    letter-spacing: 0.00em;
}
.ww__split-section .ww__split {
    gap: 0;
}
.ww__split-section .ww__split.ww__split--image-right figure.ww__split-img {
    right: 0;
    width: 100%;
    padding-left: 0;
    margin-left: 20px;
    left: inherit;
}
.ww__split figure.ww__split-img {
    position: relative;
    left: 0px;
    top: 0;
    width: calc(100% - 24px);
    margin-bottom: 0;
    top: 0;
    transform: translateY(0);
    min-height: auto;
}
.ww__split-section .ww__split {
    margin-top: 0;
}
.ww__split.ww__split--image-right {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.ww__split-section .ww__split--dark {
    margin-top: 32px;
    margin-bottom: 15px;
}
.ww__split .container {
    order: 2;
}
.ww__split-section .ww__split.ww__split--image-right .ww__split-text { 
    min-height: inherit;
}
.footer-bottom { align-items: center;flex-direction: column; }
.overview-cards .overview-cards__arrows {
    border: 2px solid #fff; 
    margin-top: 4px;
}
.overview-cards .overview-cards__arrow {
    height: 43px;
}
.overview-cards .overview-cards__arrow.overview-cards__arrow--prev i { 
    left: 6px;
    position: relative;
}
.overview-cards .overview-cards__arrow--next i { 
    position: relative;
    right: 5px;
}

.overview-hero .overview-hero__shape {
    max-width: calc(100% - 20px);
}
.overview-hero .curve-left {
    max-width: 100%;
    float: none;
    padding: 0 14px;
}
.overview-hero .curve-left img {    
    height: auto;    
}
    .overview-hero .overview-hero__inner {
        padding: 0 20px 31px;
    }
  .overview-hero .overview-hero__inner h1 {
        font-size: 40px;
    }
    .overview-hero__inner h2 {
        font-size: 24px;        
        margin-bottom: 20px;
    }
	.gform-body.gform_body  .ginput_container.ginput_container_radio input {
    padding: 0 !important;
    min-height: auto !important;
    outline: none !important;
}

.gform-body.gform_body .ginput_container.ginput_container_radio input::before {
    top: 0px !important;
    position: relative;
}
/* ========================================
   RESPONSIVE â€” TABLET (â‰¤991px) and MOBILE (â‰¤767px / â‰¤480px)
   - Tablet view (768â€“991px) keeps existing structure intact (most rules
     already exist further up). This block tightens layouts for â‰¤767px
     and adds pixel-tight tweaks for â‰¤480px so the design matches the
     mobile Figma frames (1409:9775 / 1411:10540).
   - Sections that swap to mobile-specific images use the assets in
     /assets/images/ (the Figma exports already in the project).
   ======================================== */

/* Plan Your Experience: stack cards vertically and let images scale. */
.acac-hero-banner__intro.is-active {
    padding: 0 40px;
}
.acac-menu.is-switch-pinned .acac-menu__header {
    width: 90%;
}
.container {
    padding: 0 20px;
}
.is-switch-pinned .acac-hero-banner__switch {
    top: 15px !important;
    padding: 0;
}
.acac-page[data-theme="artists"] .acac-hero-banner__knob {
    top: 3px; 
}
.acac-menu.is-switch-pinned[data-theme="artists"] .acac-hero-banner__knob { 
    top: 2px; 
}
.acac-menu.is-switch-pinned .acac-hero-banner__label, .acac-menu.is-switch-pinned .acac-hero-banner__toggle {
    transform: translateY(0);
}
.acac-menu.is-switch-pinned.is-open .acac-hero-banner__switch {
    top: 20px !important;
}  
.acac-menu.is-switch-pinned .acac-hero-banner__label {
    display: none;
}  
  .acac-plan__grid {
    grid-template-columns: 1fr;
    gap: 35px;    
  }
  .acac-plan__card img {
    width: 100%;
    object-fit: cover;
  }

  /* Exhibitions: featured image full-width on top, list below. */
  .acac-exhibitions__layout {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .acac-exhibitions__featured-img img {
    width: 100%;
    height: auto;
  }
  .acac-exhibitions h2 { font-size: 36px; line-height: 38px; }

  /* Programs & Classes: shrink heading + tile size to fit a single column. */
  .acac-programs__item .container > a {
    height: 309px;
    background-size: cover;
    background-position: center;
  }

  /* Artist Opportunities slider: single slide, taller card. */
    .acac-opportunities h2 {
        font-size: 36px;
        line-height: 36px;
        letter-spacing: -0.01em;
        margin-bottom: 14px;
    }

  /* Footer sponsors: 2-up grid so logos stay legible without overflow. */
  .footer-sponsors__logos {
    gap: 24px 32px;
    justify-items: center;
  }
  .footer-sponsors__logos {        
        gap: 18px 50px;
    }
  .acac-hero-banner__tab.is-visible {
      display: none !important;
  }
.acac-hero-banner__switch {
      padding: 0 24px 0;  
  }
  .acac-hero-banner {
        padding: 0;
    }
   .acac-page[data-theme="artists"] .acac-hero-banner__box {
        padding: 52px 50px 28px 50px;
    }
    .acac-hero-banner__intro.is-active h2 {
      animation: acac-rotate-in 800ms cubic-bezier(0.22, 1, 0.36, 1) 120ms forwards;
    }
    .acac-page[data-theme="artists"] .acac-hero-banner__box {
      right: 0;
      border-radius: 0 0 350px 350px;
      overflow: hidden;
      width: 100%;
      top: 0;
  } 
  .acac-hero-banner__switch {
      padding: 0 24px 0;
      gap: 14px;
      height: inherit;
      background-color: transparent;
  }
  .acac-page[data-theme="visitors"] .acac-hero-banner {
      background: transparent;
  }
  .acac-page[data-theme="artists"] .acac-hero-banner {
    background: transparent;
}
    .acac-page[data-theme="visitors"] .acac-hero-banner__box {
        padding: 40px 230px 40px 84px;
    }
    .acac-page[data-theme="visitors"] .acac-hero-banner__box {
        right: 0;
        border-radius: 0 0 350px 350px;
        overflow: hidden;
        width: 100%;
        top: 0;
        left: 0;
        padding: 52px 50px 28px 50px;
    }
    .tab-section-wrap {
      padding-top: 47px;
      border-radius: 0 0 350px 350px;
      background-color: #F1F1F1;
      transition: background-color 600ms ease, color 600ms ease, left 600ms cubic-bezier(0.22, 1, 0.36, 1), right 600ms cubic-bezier(0.22, 1, 0.36, 1), border-radius 600ms ease;
    }
    .acac-page[data-theme="visitors"] .tab-section-wrap {
        background-color: #1f1f1f;
        display: inline-block;
        width: 100%;      
    }
    .acac-banner__title {
      top: 88px;
      left: 0;
      width: 100%;
      padding: 0 20px;
      text-align: center;
  }
  .acac-banner.is-slide-mode .acac-banner__title h1 {
      width: 100%;
  }
  .acac-banner__title span {
        width: 100%;
    }
    .acac-plan__card {
      text-align: center;
  }
  .footer-nav-group {
    min-width: 100%;
  }
.footer-nav-group a {
      font-size: 16px;
      line-height: 1.2;
  }
  .footer-nav-col {
      width: 100%;
      max-width: 100%;      
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 20px;
  }
  .footer-banana {
      width: calc(100% - 25px);
      height: inherit;
      bottom: 27px;
      left: 0;
      right: 0;
      margin: 0 auto;
      position: relative;
  }
  .footer-animation-social {
        right: 0;
        bottom: 0;
        width: 100%;
        position: relative;
        margin-bottom: 100px;
        margin: 0 auto 100px;
        max-width: 240px;
    }
    .footer-social__link {
        min-width: 0;
        height: 50px;
        padding: 0 34px;
        font-size: 16.4413px;
        width: 157px;
    }
    .footer-animation-social .toptobottom-social-wrap:nth-of-type(2) a.footer-social__link {
        position: absolute;
        bottom: -3px;
        right: 69px;
        transform: rotate(-13deg) !important;
    }
    .footer-animation-social .toptobottom-social-wrap:nth-of-type(3) a.footer-social__link {
      position: absolute;
      right: -71px;
      transform: rotate(7deg) !important;
  }
  .footer-animation-social a.footer-social__link {
        right: 186px;
        transform: rotate(21deg) !important;
        bottom: -70px;
    } 
  .overview-cards { padding: 50px 0 35px; }
  .overview-cards .container { padding: 0 20px; }  
  .overview-cards__list,
  .overview-cards__list.slick-slider {
    display: block;
    flex-direction: initial;
    gap: 0;
  }
  .overview-card__media,
  .overview-text-area { grid-column: 1; }
.overview-cards .overview-card__media {
        border-radius: 400px 400px 0 0;
        margin: 0 0 22px;
        position: relative;
        width: 100%;
        height: 326.0939px;
        padding: 0;
        max-height: inherit;
        min-height: inherit;
    }

  .overview-cards .overview-text-area {
        width: 100%;
        padding: 0 20px 26px 20px;
        min-height: auto;
    }
  .overview-cards .overview-text-area h2 { font-size: 35px; margin: 0 0 10px;}
  .overview-cards .overview-text-area h3 {
        font-size: 20px;
        line-height: 1.35;
        margin-bottom: 26px;
    }
  .overview-cards .overview-text-area p { line-height: 24px;}
  /* Reveal the dots-left / arrows-right control row below the slider. */
  .overview-cards__controls {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        padding: 10px 10px 13px 10px;
    }

  .bm__levels {
        padding: 38px 0 26px;
        -webkit-clip-path: polygon(0 0.8%, 100% 0%, 100% 99.2%, 0 100%);
        clip-path: polygon(0 0.8%, 100% 0%, 100% 99.2%, 0 100%);
    }
  .bm__levels-card h2 {line-height: 1;}
  .bm__levels .container {     
        padding: 0 24px;
    }
    .bm__levels .bm__levels-card > p {
        margin: 0 auto 24px;
        padding: 0 6px;
        line-height: 1.5;
    }
    .bm__levels .bm__level-head {
        row-gap: 3px;
    }
    .bm__levels .bm__levels-list {
        border-top: 2px solid #000000;
    }
  .bm__levels .bm__level {
        grid-template-columns: 1fr;
        row-gap: 14px;
        padding: 31px 31px 29px 0;
        position: relative;
    }
    .bm__levels .bm__level-plus {
        position: absolute;
        top: 31px;
        right: 2px;
        width: 21px;
        height: 21px;
    }
    .bm__levels .bm__level-panel-content li {        
        font-size: 16px;
    }
  .bm__levels .bm__level-actions {
    justify-content: space-between;
    gap: 16px;
    padding-top: 0;
  }
  .bm__levels .bm__level-head h3,
  .bm__levels .bm__level-price { font-size: 24px;
        letter-spacing: 0.00em;
        line-height: 1;}

  .bm__levels .bm__sponsorship { padding: 48px 0; }
  .bm__levels .bm__sponsorship-buttons {
    flex-direction: column;
    align-items: stretch;
  }
  .bm__levels .bm__text-block { padding: 40px 0 64px; }
  .bm__levels .bm__text-block > .container > div { margin-bottom: 36px; }
  .bm__levels .bm__text-block h2 { font-size: 28px; }
  .footer-sponsors, .footer-main, .footer-social-row {padding-left: 20px;padding-right: 20px;}
  .footer-bottom {
        flex-direction: column;
        align-items: center;     
        text-align: center;
    }
    .footer-bottom {        
        align-items: center;     
    }
    .acac-plan__grid span.acac-opportunities__hover {
        position: relative;
        bottom: 0;
        top: 0;
        margin-top: 13px;
        font-family: "poppins",sans-serif;
        font-weight: 700;
        gap: 6px;
    }
    .acac-opportunities__hover:before {
        width: calc(100% - 16px);
    }
    .acac-plan__grid span.acac-opportunities__hover::before {
        bottom: 0;
        height: 1px;
    }

    .acac-plan__grid span.acac-opportunities__hover i {
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 10px solid #ffffff;
    }
    .ww__land h2 {
        margin-bottom: 14px;
        font-size: 32px;
        line-height: 1.2;
    }
    .ww__land-inner h3 {
        margin: 0 auto 19px;
        font-size: 20px;
    }
    .ww__land p {
        font-size: 16px;
        margin-bottom: 22px;
    }    
    .ww__land h4 {
        font-size: 24px;
        line-height: 30px;
    }
    .ww__staff{
        padding: 67px 0 85px;
    }
    .ww__staff h2 {
        margin-bottom: 24px;
    }
    .ww__staff .ww__staff-card figcaption {
        padding: 28px 0 0 9px;
    }
    .ww__staff .ww__staff-card figcaption h3 {
        font-size: 24px;
        line-height: 27px;
    }
    .ww__staff .ww__staff-card figcaption h4 {
        font-size: 20px;
        letter-spacing: -0.000em;
        margin-bottom: 19px;
    }
    .ww__staff .ww__keep-reading {
        gap: 10px;
        font-size: 16px;
    }
    .ww__staff .ww__keep-reading span {        
        width: 16.1738px;
        height: 16.1738px;
    }
    .ww__staff .ww__staff-grid {     
        gap: 33px;
    }
    .ww__staff .ww__staff-hint {
        width: 80%;
        justify-content: center;
    }
    .ww__board h2 {
        text-align: left;    
    }
    h2 {
        font-size: 35px;
    }
    .ww__board h2 {
        margin-bottom: 31px;     
    }
    .ww__board .ww__board-grid p:first-child {
        font-size: 18px;
    }
    .ww__board .ww__board-grid p {
        font-size: 16px;
        line-height: 24px;
    }
    .ww__reports h2 {
        margin-bottom: 36px;
    }
    .ww__reports {
        padding: 50px 0 80px;
    }
    .ww__popup-body {
        padding: 18px 25px 38px 25px;
    }
    .ww__popup-body:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 20px;
        background-color: #fff;
        left: 0;
        bottom: 0;
    }
    .ww__popup-body {     
        gap: 9px;
    }
    .vi__find-us .container {
        padding: 0 13px;
    }   
    .vi__find-us h2, .vi__find-us > .container > p {
        padding-left: 10px;
    }
    .overview-hero__inner .vi__info-grid-inner .vi__info-cell h2 {
        font-size: 24px;        
        margin-bottom: 4px;
    }
    .gt__guided .gt__guided-grid {        
        grid-template-columns: inherit;
        gap: 0;
        align-items: center;
    }
    .gt__guided .gt__guided-divider {        
        width: 100%;
        height: 2px;
        margin-top: 7px;
        margin-bottom: 35px;
    }
    .gt__guided .gt__guided-col h2 {
        margin-bottom: 21px;
    }
    .gt__guided .gt__guided-col p {
        line-height: 1.5;
        margin-bottom: 23px;
    }
    .gt__guided .gt__guided-col h3 {
        font-size: 24px;
        margin-bottom: 15px;
        line-height: 26px;
    }
    .gt__guided {
        padding: 50px 0 50px;
    }
    .gt__guided-grid.left-col-40-60 .gt__guided-col:first-child h3 {
        margin-bottom: 28px;
    }
    .gt__inquiries {
        background: #000;
        padding: 27px 0 38px;
        color: #fff;
    }
    .gt__inquiries .gt__inquiries-copy h2 {
        margin-bottom: 17px;
        line-height: 1;
    }
    .gt__inquiries .gt__inquiries-copy p {
        line-height: 1.51;
        margin-bottom: 24px;
        letter-spacing: 0.005em;
    }
    .gt__inquiries .gt__inquiries-grid ul li {
        margin-bottom: 0;
    }
    .gt__inquiries .gt__inquiries-grid ul {
        margin-bottom: 33px;
    }
    .gt__inquiries .gt__inquiries-grid .gt__inquiries-copy h3 {
        font-size: 24px;
        margin-bottom: 18px;
    }
    .gt__inquiries .gt__inquiries-grid .gt__inquiries-copy h4 {
        font-size: 16px;
        margin-bottom: 3px;
    }
    .gt__inquiries .gt__inquiries-grid {     
        gap: 14px;
    }
    .gt__inquiries .gt__form {
        border-radius: 8px;
        padding: 26px 20px 20px 15px;
        gap: 20px;
        margin-left: 0;
    }
    .gt__inquiries .gt__form p {
        line-height: 1.51;
    }
    .btn-style {
        font-size: 18px;
    }
    .gt__guided .gt__guided-grid .gt__guided-col:first-child a.btn-style {
        margin-bottom: 30px;
    }
    .gt__guided .gt__guided-grid .gt__guided-col:first-child h3 {
        font-size: 20px;
        line-height: 26px;
        letter-spacing: 0.00em;
    }
    .pp__policy .container, .pp__hero .container {
        padding: 0 23px;
    }
    .pp__policy .pp__policy-inner ul li {
        font-size: 16px;
    }
    .ww__split .container .ww__split-text h5 {
        font-size: 16px;
    }
    .ww__split .container .ww__split-text .manage-tag h3 {
        font-size: 16px;
        line-height: 24px;
    }
    .gt__guided .air__facts {
        width: 100%;
        margin-top: 24px;
        max-width: 100%;
    }
    .gt__guided .air__facts-row {
        gap: 16px;
        padding: 15px 3px 12px 3px;
    }
    .gt__guided .air__facts dd {
        font-size: 16px;        
        width: calc(50% - 16px);
    }
    .gt__guided .air__facts dt {
        font-size: 16px;
    }
    section.ww__split-section.ww__split-section--dark .ww__split--dark:nth-of-type(2n) {
        margin-top: 0;
        padding-top: 0;
    }
    .coman-list-blocks ul {
        font-size: 16px;
    }
    .ww__split-text h3 {
        font-size: 20px;
        letter-spacing: 0.00em;
        line-height: 26px;
    }
    .air__past .air__past-grid {
        gap: 30px;
    }
    .air__past .air__past-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));     
    }
    .bm__sponsorship .bm__sponsorship-buttons {
        gap: 10px;
    }
    .overview-card--has-accordion .overview-card__accordion-group {
        margin: 18px 0 28px;
        border-top: 2px solid #000000;
    }
    .overview-card--has-accordion .overview-card__accordion-link-head {
        gap: 0;
    }
    .overview-cards .overview-text-area h3.overview-card__accordion-link-head {        
        font-size: 24px;
        line-height: 32px;
        margin: 0 0 5px;
        display: flex;
        letter-spacing: 0.03em;        
    }
    .overview-card--has-accordion .overview-card__accordion-link-tag {
        margin-left: 12px;
        display: block;
    }
    .overview-cards .overview-text-area p {
        font-size: 16px;
    }
    .overview-card--has-accordion .overview-card__accordion-link {
        column-gap: 0;
        row-gap: 2px;
        padding: 17px 35px 18px 0;
    }
    .overview-card--has-accordion .overview-card__accordion-link-plus {
        width: 21px;
        height: 21px;
        right: -26px;
    }
    .overview-card__accordion-content h4 {
        font-size: 16px;
    }
    .overview-card--has-accordion .overview-card__accordion-panel.is-open {
        padding-bottom: 30px;
    }
    .overview-card--has-accordion .overview-card__accordion-panel {
        border-bottom: 2px solid #000;
    }
    .bm__levels .bm__level-tax {
        font-size: 16px;        
        margin-left: 0;
        width: 100%;
        display: block;
        letter-spacing: -0.01em;
    }
    .bm__levels .bm__level-info {
        gap: 9px;     
    }
    .bm__levels .bm__levels-list {
        margin-top: 31px;
        margin-bottom: 32px;
    }
    .bm__levels .bm__levels-list + p {
        padding: 0;
    }
    .exh-hero .exh-hero__left h1 {
        font-size: 40px;
        line-height: 56px;
        margin-bottom: 0px;
    }
    .exh-hero .container {     
        padding: 0 24px;
    }
    .exh-hero .exh-hero__sub {
        line-height: 1.4;
    }
    .exh-hero h2 {        
        font-size: 20px;
    }
    .main-sticky-section > .container {
        padding-right: 24px;
        padding-left: 19px;
    }
    .main-sticky-section .exh-featured__media {
        margin-bottom: 0;
    }
    .main-sticky-section .exh-featured__body p {
        font-size: 16px;
        line-height: 25px;
    }
    .pex-grid-section .pex-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .page-past-exhibitions .pp__hero,
    #news.pp__hero {
        min-height: 367px !important;
        padding-bottom: 72px;
    }
    
    #news .pex-hero__sub{
      margin-bottom:0;
    }
    .overview-cards .container > p {
        margin: 0 auto 40px;     
    }
    .overview-cards .container > h2 {
        margin-bottom: 21px;
    }
    .gt__inquiries .gt__form h3 {
        font-size: 30px;
    }
    .ind__intro {
        -webkit-clip-path: polygon(0 0%, 100% 1.5%, 100% 100%, 0 98.5%);
        clip-path: polygon(0 0%, 100% 1.5%, 100% 100%, 0 98.5%);
    }
    .ind__exhibitions {
        -webkit-clip-path: polygon(0 0%, 100% 1.5%, 100% 100%, 0 98.5%);
        clip-path: polygon(0 0%, 100% 1.5%, 100% 100%, 0 98.5%);
    }
    .gt__guided .gt__guided-grid .gt__guided-col ul {
        font-size: 16px;
    }
    .ww__split .container .ww__split-text h4 {
        font-size: 16px;
    }
    .ww__split .container .ww__split-text h4 + ul {
        margin-bottom: 20px;
    }
    .acac-menu__panel li span.acac-menu__badge {
        top: 0;
        font-size: 12.6591px;
    }
    .ind__programming .acac-banner__arrow.slick-disabled:hover {
        background-color: transparent !important;
    }
    .overview-hero .overview-hero__overlay:before {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 1) 100%);
    }
    .toggle-full-height {
        height: 50px;
    }
    .sr-page .sr-section {
    padding: 90px 0 64px;
  }

  .sr-page .sr-search {
    min-height: 52px;
    padding: 0 16px 0 14px;
  }

  .sr-page .sr-search__input {
    height: 50px;
    font-size: 16px;
  }

  .sr-page .sr-toolbar__count {
        margin-top: 18px;
        padding-bottom: 18px;
        font-size: 16px;
    }

  .sr-page .sr-item__link {
    gap: 16px;
    padding: 20px 0;
  }

  .sr-page .sr-item__thumb {
        width: 101.002px;
        height: 99.33px;
    }

  .sr-page .sr-item__link:not(:has(.sr-item__thumb)),
  .sr-page .sr-item__link--no-thumb,
  .sr-page .sr-list__item--no-thumb .sr-item__link {
    grid-template-columns: 100px minmax(0, 1fr);
  }

  .sr-page .sr-item__type {
    margin-bottom: 6px;
    font-size: 16px;
  }

  .sr-page .sr-item__title {
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
  }
  .acac-menu__close b {
    display: none;
}
.footer-social-row {
    padding: 0;
}
.ww__split-text h3 {
    font-weight: 700;
}
.pp__hero .container {
    padding: 0 23px;
}
.banner-form {
    padding: 22px 18px 22px 18px;
}
.acac-menu__overlay-header .acac-menu__top-nav {
    top: 87px !important;
    transform: translate3d(-50%, 0, 0);
    width: calc(100% - 48px);
}
.acac-menu.is-menu-open .acac-menu__overlay-header .acac-menu__top-nav {
    top: 87px !important;
    transform: translate3d(-50%, 0, 0);
}
.acac-menu__close{
    transform: translate3d(0, 0, 0) scale(1);
}
.ind__exhibitions .ind__exhibitions-empty, .ind__programming .ind__programming-empty, .main-sticky-section .upcoming-exhibitions-block p.exh-section__empty {
    font-size: 20px;
    line-height: 26px;
}
.overview-hero.banner-form-added {
    padding-top: 280px;
}
.em.em-list .em-item .em-item-info h3.em-item-title {
    font-size: 30px !important;
    line-height: 30px !important;
}
.event-calander-pgn .em.em-list .em-item .em-item-meta .em-item-meta-line a {
    font-size: 16px;
}

.event-calander-pgn .em-item-actions.input a.em-item-read-more.button {
    letter-spacing: 0.00em !important;
    border: 1px solid #000000 !important;
    font-family: "poppins", sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    padding-top: 12px !important;
    padding-bottom: 8px !important;
}
.bm__sponsorship .container p {
    margin: 0 auto 20px;
}
.acac-banner__slide::after {
  background: linear-gradient(180deg, rgba(-2, 0, 0, 0.00) 40%, rgba(0, 0, 0, 0.80) 85%);
   /* background: linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 1) 100%);
    bottom: 0;
    width: 100%;
    height: 100vh;
    left: 0;*/
}
.acac-banner.is-slide-mode .acac-banner__title span {
    -webkit-text-fill-color: rgba(255, 255, 255, 0);
    text-shadow: inherit;
}
.gt__guided .gt__guided-grid .gt__guided-col:first-child h4 {
    font-size: 20px;
    line-height: 26px; 
}
.event-calander-pgn .em-search-main .em-search-submit.input button.em-search-submit {
    letter-spacing: 0.00em !important;
}
.event-calander-pgn .em.em-list .em-item .em-item-meta .em-item-meta-line a {
    margin-top: 0;
}
.em.em-list .em-item .em-item-info .em-item-meta>div span.em-icon { 
    margin: 0 0 2px;
}
.ww__staff .ww__staff-card figcaption p {
    font-size: 16px;
    line-height: 26px;
}
.is-switch-pinned .acac-menu__open, .is-switch-pinned .acac-menu__circle {
    top: 15px;
    right: 40px;
}
.single-location .acac-location-single h1 {
    font-size: 40px;
}
.acac-banner.is-slide-mode .acac-banner__title span {
        display: inline-block;
        color: transparent;
        -webkit-backdrop-filter: inherit;
        backdrop-filter: inherit;
        -webkit-text-fill-color: transparent;
        background: inherit;
        -webkit-background-clip: inherit;
        background-clip: inherit;
        /* backdrop-filter: blur(2px) saturate(180%) contrast(130%) brightness(110%); */
        -webkit-backdrop-filter: initial;
    }
    .acac-banner__title span svg {     
        backdrop-filter: inherit;
        -webkit-backdrop-filter: inherit;
        filter: drop-shadow(0 2px 8px rgba(255, 255, 255, .15)) contrast(110%);
    }
    
    
    
    .pp__policy.news-archive{
      -webkit-clip-path: unset !important;
      clip-path:unset !important;
      background:transparent !important;
    }
    
    #news-archive{
      background:transparent !important;
    }

}

@media (max-width: 640px) {
    .acac-banner.is-slide-mode .acac-banner__title span {
        height: 94px;
        max-width: 285px;
        margin: 0 auto;
        text-align: center;
        right: 0;
    }
    .acac-banner.is-slide-mode .acac-banner__title span {
        top: 34px;
    }
    .single-location .acac-location-single {
        padding-top: 60px;
    }    
    .acac-banner .acac-banner__title span svg.desktop-without {
        display: none !important;
    }
    .acac-banner .acac-banner__title span svg.mobile-without {
        display: block !important;
        max-width: 284px;
        margin-top: -31px;
    }
    .tax-event-categories .custom-page-content.pp__policy h1 {
        font-size: 40px;
    }
    .ww__board .ww__board-grid p strong {
        margin-bottom: 1px;
        display: block;
    }
    .overview-hero.banner-form-added .overview-hero__inner h2 {
        font-size: 20px;
    }
    .overview-hero.banner-form-added h1 {
        margin-bottom: 22px;
    }
    .ind__intro.ind__intro-single aside.ind__visit-card .ind__visit-block div {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0.0em;
    }
    .ind__intro .ind__visit-icon {
        margin-top: 0;
    }
    .acac-hero-banner__switch {
        transition: inherit;
    }
    .acac-hero-banner__label {
        transition: inherit;
    }
    .acac-plan__card h4, .acac-plan__card h3 {
        font-size: 25px !important;     
    }
    .page-past-exhibitions .pp__hero h1 {     
        margin-bottom: 17px;
        font-size: 40px;
        line-height: 1;
    }
    .page-past-exhibitions .pp__hero p {        
        font-size: 18px;     
    }
    .page-past-exhibitions .pp__hero,
    #news.pp__hero {
        min-height: 355px !important;
        padding: 0 0 48px;
    }
    .pex-grid-section {
        padding-top: 64px;
    }
    .pex-grid-section .pex-search__input {
        font-size: 16px;
    }
    .pex-grid-section .pex-toolbar {     
        display: block;
    }
    .pex-grid-section .pex-search {
        position: relative;
        max-width: 100%;        
        height: 52px;        
        border-radius: 10px 40px 41px 10px;        
        padding: 5px 17px 0 14px;
        width: 100%;
        margin-bottom: 20px;
    }
    .pex-grid-section .pex-toolbar__count {
        font-size: 16px;
        margin-bottom: 0;
        margin-right: 0;
        padding-top: 8px;
    }
    .pex-grid-section .pex-toolbar {
        margin-bottom: 26px;
    }
    .gt__inquiries .container {
        padding: 0 12px;
    }
    .gt__inquiries .gt__inquiries-grid .gt__inquiries-copy {
        padding: 0 8px;
    }
    .vi__find-us > .container > p {
        margin: 0 0 33px;         
        line-height: 1.5;
    }
    .ind__exhibitions .ind__exhibition-card figure {
        height: 396.8646px;
    }
    .vi__find-us .vi__location-card {
        padding: 32px 9px 38px 12px;
    }
    .vi__find-us .vi__find-us-map iframe {     
        height: 362.3px;
    }
    .vi__find-us .vi__find-us-map {
        margin: 0 0 15px;     
    }
    .ww__popup-portrait-inner {
        aspect-ratio: inherit;     
    }
   .ww__popup-grid {
        display: inherit;
     }
    .ww__reports .ww__reports-grid .ww__report-card--featured {
        height: auto;
    }
    .ww__reports .container {
        padding: 0 15px;
    }
    .ww__board {
        padding: 53px 0 39px;
        clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
    }
    .ww__board .ww__board-grid {
        grid-template-columns: inherit;
    }
    .ww__board .ww__board-grid {
        gap: 17px 47px;
    }
    .ww__staff .ww__staff-grid {
        grid-template-columns: repeat(1, minmax(0, 525px));
    }
    .acac-exhibitions__card-img {height: 200px;}
    .acac-exhibitions__card-img {height: 200px;}
    .acac-exhibitions__featured-text h3 {font-size: 26px;}
  .ww__split-text h2 { font-size: 32px; }
  .ww__split-text p { font-size: 16px; line-height: 24px; }
  .ww__split-section .ww__split-img--rounded-right { border-radius: 0 600px 600px 0; }
  .ww__split-section .ww__split-img--rounded-left  { border-radius: 600px 0 0 600px; }

  .ww__land { padding: 55px 0 30px;     -webkit-clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
    clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);}
  .ww__land .ww__land h2 { font-size: 28px; }
  .ww__land .ww__land-inner .ww__lead { font-size: 20px; line-height: 1.3; }
  .ww__land .ww__land p { font-size: 16px; line-height: 26px; }

  .ww__staff h2,
  .ww__staff .ww__board h2,
  .ww__staff .ww__reports h2 { font-size: 35px; }
    .ww__staff .ww__staff-paint { border-radius: 300px 300px 8px 8px; aspect-ratio: 1 / 1; }

  .ww__staff .ww__board-grid { grid-template-columns: 1fr; gap: 18px; }

  /* Slick takes over for the reports — we set both the un-slicked
     fallback (single column stack) AND the slicked layout (one slide
     visible at a time). Whichever JS does it works either way. */
  .ww__reports .ww__reports-grid {
    display: block;
    grid-template-columns: none;
    grid-template-rows: none;
  }
  .ww__reports .ww__reports-grid .ww__report-card,
  .ww__reports .ww__reports-grid .ww__report-card--featured {
    height: 100%;
    grid-row: auto;
    grid-column: auto;
    margin-bottom: 16px;
  }
  .ww__reports .ww__reports-grid.slick-initialized .ww__report-card,
  .ww__reports .ww__reports-grid.slick-initialized .ww__report-card--featured {
    margin-bottom: 0;
  }
  .ww__reports .ww__reports-grid .slick-slide { padding: 0 8px; }
  .ww__reports .ww__reports-grid .slick-list  { margin: 0 -8px; }
  .ww__reports .ww__reports-grid .slick-dots {
    margin-top: 33px;
    width: auto;
    position: absolute;
    display: flex;
    justify-content: center;
    left: 10px;
    gap: 13px;
    list-style: none;
    padding: 0;
  }
  .ww__reports .ww__reports-grid .slick-dots li button {
    width: 12.2488px; height: 12.2488px;
    border-radius: 50%;
    background: rgba(255,255,255,0.35);
    border: 0;
    color: transparent;
    font-size: 0;
    padding: 0;
    cursor: pointer;
  }
  .ww__reports .ww__reports-grid .slick-dots li.slick-active button { background: #fff; }
  .ww__reports .ww__reports {
    position: relative;
  }
  .ww__reports .ww__reports-grid .slick-arrow {
        position: absolute;
        bottom: -71px;
        width: 57px;
        height: 45px;
        background: transparent;
        color: #000;
        font-size: 0;
        line-height: 1;
        cursor: pointer;
        z-index: 4;
        margin: 0;
        padding: 0;
        border: 2px solid #fff;
        transition: background-color 300ms ease;
    }
  .ww__reports .ww__reports-grid .slick-prev {
        left: calc(100% - 121px);
        border-radius: 41px 0 0 41px;
        border-right: 1px solid #000;
    }
  .ww__reports .ww__reports-grid .slick-next {
        right: 13px;
        border-radius: 0 41px 41px 0;
        border-left: 0;
    }
    .ww__staff, .ww__staff .ww__board, .ww__reports {
        padding: 50px 0 52px;
    }
    .ww__reports {
        padding-top: 39px;
        padding-bottom: 110px;
    }
  /* Triangle arrows drawn with CSS borders, matching the
     .acac-opportunities__prev/__next ::before triangles. */
  .ww__reports .ww__reports-grid .slick-prev::before,
  .ww__reports .ww__reports-grid .slick-next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    width: 0;
    height: 0;
    opacity: 1;
    color: transparent;
    font-size: 0;
  }
  .ww__reports .ww__reports-grid .slick-prev::before {
        border-right: 16px solid #fff;
    }
  .ww__reports .ww__reports-grid .slick-next::before {
        border-left: 16px solid #fff;
    }
    .ww__reports .ww__reports-grid .slick-arrow.slick-disabled:before { opacity: 0.4; cursor: default; } 
  .ww__popup { width: 100%; }
  .ww__popup-name { font-size: 32px;         line-height: 1.04;}
  .ww__popup-role { font-size: 20px; }
  .ww__popup-tagline { font-size: 18px; }
  .ww__popup-tagline-row { gap: 14px; padding: 18px 18px 22px; }
  .ww__popup-divider { height: 44px; }
  .ww__popup-close {top: 18px;right: 14px;font-size: 14px;outline: none;    }

  .vi__find-us {padding: 50px 0 39px; -webkit-clip-path: polygon(0 0.5%, 100% 0, 100% 99.5%, 0 100%);
        clip-path: polygon(0 0.5%, 100% 0, 100% 99.5%, 0 100%);}

  .vi__find-us .vi__info-cell h2 { font-size: 24px; }
  .vi__find-us .vi__info-cell p { font-size: 16px; line-height: 24px; }

  .vi__find-us .vi__find-us h2 { font-size: 32px; }
  .vi__find-us .vi__find-us > .vi__find-us-inner > p { font-size: 16px; line-height: 24px; margin-bottom: 28px; }

  .vi__find-us .vi__location-card {padding: 32px 9px 28px 12px;gap: 16px 0;}
  .vi__find-us .vi__location-card > p:first-of-type {gap: 19px; }
  .vi__find-us .vi__location-card h3 { font-size: 24px;line-height: 1.05;}
  .vi__find-us .vi__location-card p { font-size: 16px; line-height: 24px; }
  .vi__find-us .overview-hero__shape { display: none; }
  .vi__find-us .overview-hero__inner h1 { font-size: 40px; line-height: 1; margin-bottom: 20px; }
  .vi__find-us .vi__location-card a {position: relative;bottom: 0;left: 0;margin-top: 12px;}
  .ind__intro {
        padding: 39px 0 45px;
        -webkit-clip-path: polygon(0 0%, 100% 1.5%, 100% 100%, 0 98.5%);
        clip-path: polygon(0 0%, 100% 1%, 100% 100%, 0 99%);
    }
  .ind__intro .ind__intro-copy h1 { font-size: 35px; margin: 0 0 16px; }
  .ind__intro .ind__intro-copy p { font-size: 16px !important; line-height: 24px !important; }
  .ind__programming .ind__program-meta span.ind_meta_datatext {
        font-size: 16px;
        line-height: 1.55;
    }
  .ind__intro .ind__visit-card {
        padding: 28px 31px 32px;
        border: 2px solid #000000;
    }
  .ind__intro .ind__visit-card h3 {
        margin-bottom: 24px;
    }
    .ind__intro .ind__visit-block {
        gap: 7px;
        margin-bottom: 23px;
    }
  .ind__intro .ind__visit-block p {
        font-size: 16px;
        line-height: 22px;
        letter-spacing: 0.0em;
    }
  .ind__programming { padding: 40px 0 65px; }
  .ind__programming h2 {
        font-size: 34px;
        margin-bottom: 28px;
        line-height: 1.2;
    }

  .ind__programming .ind__program-body { padding: 7px 22px 21px; }
  .ind__programming .ind__program-body h3 {
        margin-bottom: 26px;
        line-height: 1;
    }
  .ind__programming .ind__program-meta {
        font-size: 16px;
        gap: 12px 11px;
        margin-bottom: 23px;
    }
    .ind__programming .acac-banner__arrow {
        bottom: 30px;
    }
  .ind__programming .ind__program-body > p { font-size: 16px; line-height: 24px; margin-bottom: 26px; }

  .ind__exhibitions {
        padding: 47px 0 28px;
        margin-bottom: 19px;
        -webkit-clip-path: polygon(0 0%, 100% 1%, 100% 100%, 0 99% 99% );
        clip-path: polygon(0 0%, 100% 1%, 100% 100%, 0 99% 99% );
    }
  .ind__exhibitions .ind__exhibition-card h3 {
        font-size: 24px;
        margin-bottom: -4px;
    }
    .ind__exhibitions .ind__exhibition-card p {
        font-size: 20px;
    }
    .ind__exhibitions .ind__exhibition-grid {
        gap: 22px;
    }

  .ind__exhibitions h2 {   margin: 0 auto 15px;line-height: 1.12;}

  .gt__guided {
        padding: 37px 0 37px;
        -webkit-clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
        clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
    }
  .pp__hero {
        min-height: 262px;
        padding: 100px 0 16px;
        margin-bottom: -8px;
    }
  .pp__hero-overlay {background: linear-gradient(180deg, rgba(0, 0, 0, 0) 34%, rgba(0, 0, 0, 1) 100%);  }
  .pp__policy {
        padding: 31px 0 43px;
        margin-bottom: 38px;
        -webkit-clip-path: polygon(0 1%, 100% 0, 100% 99%, 0 100%);
        clip-path: polygon(0 0.2%, 100% 0, 100% 99.8%, 0 100%);
    }
  .pp__policy .pp__policy-inner > h2 {
        margin-bottom: 14px;     
        line-height: 1.1;
    }
    .pp__policy .pp__policy-inner p {
        margin-bottom: 25px;
    }
    .pp__policy .pp__policy-inner h3 {
        margin-top: 13px;
        margin-bottom: 20px;
        font-size: 30px;
        line-height: 1;
    }
    .pp__policy .pp__policy-inner ul {        
        margin: 0 0 29px;
    }
    .pp__policy .pp__policy-inner h4 {
        font-size: 24px;
        margin-bottom: 19px;
    }
    .pp__policy .pp__policy-inner a.btn-style {
        margin-top: 9px;
    } 

  .air__facts dt,
  .air__facts dd { font-size: 16px; }
  .air__facts dd { max-width: 55%; }

  .air__past {
        padding: 53px 0 40px;
    }
    .air__past h2 {
        margin-bottom: 29px;
        line-height: 1;
    }
    
  .air__past-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .air__past .air__past-card h3 {
        font-size: 20px;     
        margin-bottom: 6px;
    }
    .air__past-card p:first-of-type {
        font-size: 18px;
        margin: 5px 0 18px;
        padding-bottom: 10px;
    }
    .air__past-card p {
        font-size: 16px;
    }


  .exh-hero { padding: 263px 0 45px; }
  .exh-hero:before {bottom: -93px;}
  .main-sticky-section .exh-sidebar ul {
        padding-top: 0;
    }
  .exh-hero__left h1 { font-size: 44px; line-height: 1.05; }
  .exh-grid { grid-template-columns: 1fr; gap: 32px; }

 /* .exi-gallery .exi-gallery__img-wrap { aspect-ratio: 4 / 3; }*/
  .exi-gallery .exi-gallery__play-icon svg { width: 60px; height: 60px; }
  .exi-gallery .exi-gallery__caption strong { font-size: 18px; }
  .exi-gallery .exi-gallery__dots { font-size: 16px; 
        font-weight: 400;}
  .exi-gallery__arrows {border: 2px solid #000;max-width: 110px;width: 100%;} 

  .exi-gallery .pex-hero { min-height: 360px; padding-block: 48px 32px; }
  .exi-gallery .pex-hero__sub { font-size: 16px; line-height: 1.5; }
  .exi-gallery .pex-search { height: 52px; padding: 0 16px; }
  .exi-gallery .pex-search__input { font-size: 16px; }
  .exi-gallery .pex-grid { grid-template-columns: 1fr; gap: 40px; }
  .exi-gallery .pex-card__title { font-size: 20px; }
  .exi-gallery .pex-load-more { margin-top: 56px; }
  .exi-gallery .pex-load-more__btn { height: 52px; padding: 0 24px; font-size: 14px; }
  .bm__sponsorship h2 {margin-bottom: 20px;}
  .bm__sponsorship .container {padding: 0 30px;}
  .bm__sponsorship .container p {line-height: 1.5;}
  .bm__sponsorship .bm__sponsorship-buttons{
        margin-top: 29px;
  }
}

@media (max-width: 576px) {
    .toggle-full-height {
        padding-right: 10px;
    }
    .overview-text-area a.btn-style {     
        visibility: visible !important;
        animation-name: inherit !important;
        opacity: 1 !important;
    }
    section.acac-opportunities.air__related-opportunities h3 {
        bottom: 65px !important;
    }
    .acac-opportunities__slide .acac-opportunities__hover::before {
        display: none;
    }
    .acac-menu[data-theme="artists"] .acac-opportunities__hover b {
        color: #000;
    }
    .acac-menu[data-theme="artists"] .acac-opportunities__hover:before {
        background-color: #000;
    }
    .acac-menu[data-theme="artists"] .acac-plan__grid span.acac-opportunities__hover i {
        border-left: 10px solid #000;
    }
    .pex-grid-section .pex-grid {
        grid-template-columns: repeat(1, 1fr);
    }
    .air__past-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 24px 6px 0;
}
.air__past-dots ul.slick-dots {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.air__past-dots ul.slick-dots li {
  margin-right: 7px;
}
.air__past-dots li button {
  width: 12.2488px;
  height: 12.2488px;
  padding: 0;
  font-size: 0;
  line-height: 0;
  background: rgba(0, 0, 0, 0.35);
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: background-color 300ms ease, width 360ms cubic-bezier(0.22, 1, 0.36, 1);
}
.air__past-dots li.slick-active button {
  background: #000000;
}

.air__past-arrows {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 2px solid #000000;
  border-radius: 30px;
}

.air__past-arrow {
  color: #000000;
  cursor: pointer;
  display: inline-flex;
  width: 46px;
  height: 45px;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
  padding: 0;
  transition: background-color 280ms ease, color 280ms ease;
}

.air__past-arrow i {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
.air__past-arrow--next i { border-left: 14px solid currentColor; }
.air__past-arrow.air__past-arrow--prev i { border-right: 14px solid currentColor; }

.air__past-arrow.slick-disabled {
  opacity: 0.4;
  cursor: default;
}
.air__past-arrow.slick-disabled:hover {
  background: transparent;
  color: #000000;
}

    .air__past .air__past-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));     
    }
    .air__past .air__past-grid {
        gap: 0;
        grid-template-columns: inherit;
    }
    .acac-opportunities.air__related-opportunities .acac-opportunities__slider {
        margin-bottom: 21px;
    }
    section.acac-opportunities.air__related-opportunities .acac-opportunities__nav {     
        border: 2px solid #fff;
    }

    .acac-exhibitions__card-img {
        height: 190px;
        margin-bottom: 20px;
    }
  .acac-banner__content h2 {
        margin-bottom: 13px;
        font-size: 26px;
        line-height: 30px;
    }
  .acac-menu a.acac-banner__cta, .acac-banner__cta {
        left: 0;
        font-size: 16px;
        font-weight: 500;
    }
    .acac-banner__cta span {
      border-top: 7px solid transparent;
      border-bottom: 7px solid transparent;
      border-left: 11px solid #ffffff;
  }
  .acac-hero-banner__label {
    font-size: 22px;
    line-height: 28px;
    -webkit-text-stroke: 1.5px currentColor;
  }

  .acac-hero-banner__switch {
    gap: 15px;
    padding: 0 16px 0;
  }

  .acac-hero-banner__toggle {
        width: 70px;
        height: 37px;
        border-radius: 30px;
    }

.acac-hero-banner__knob {
        width: 27px;
        height: 27px;
        top: 3px;
        left: 4px;
    }    
  .acac-page[data-theme="artists"] .acac-hero-banner__knob {
    transform: translateX(36px);
  }

  .acac-hero-banner__body {
    height: auto;
  }
  .acac-hero-banner__box {
    position: relative;
  }

  .acac-hero-banner__tab {
    width: 90px;
  }

  .acac-hero-banner__tab span {
    font-size: 14px;
    letter-spacing: 0;
  }
  .acac-plan__img {
    height: 200px;
    border-radius: 0;
  }
  .acac-plan__hover i {
        border-top-width: 8px;
        border-bottom-width: 8px;
        border-left-width: 12px;
        margin-bottom: 3px;
    }
  .acac-exhibitions__featured-img {
    height: 229px;
  }

  .acac-exhibitions__featured-text h3 {
        font-size: 26px;
        line-height: 30px;
        margin-bottom: 0;
    }  
  .footer-nav-col {
    flex-direction: column;
    gap: 20px;
  }
  ul.acac-opportunities__dots {
      display: block;
  }
  .container.arrow-dots-wrap {
    display: flex;
    align-items: center;
  }
  .arrow-dots-wrap .acac-opportunities__nav {
        width: 110px;
        height: 45px;
        border-width: 2px;
        margin-right: 0;
    }
    section.acac-opportunities.air__related-opportunities .acac-opportunities__prev:before, section.acac-opportunities.air__related-opportunities .acac-opportunities__next:before {
        border-right: 16px solid #ffffff;
    }
    section.acac-opportunities.air__related-opportunities .acac-opportunities__next:before {     
        border-left: 16px solid #fff;
        border-right: 0;
    }
    .acac-opportunities__img h4, .acac-opportunities__img h3 {
        bottom: 40px !important;
        font-size: 28px !important;
        opacity: 1 !important;
    }
    .acac-opportunities.air__related-opportunities {
        padding: 59px 0 50px;
    }
  .arrow-dots-wrap ul.acac-opportunities__dots {
      width: 50%;
  }
  .acac-opportunities__hover {
      bottom: 20px;
      opacity: 1;
      transform: translateY(0);
  }
  .is-active-slide .acac-opportunities__img:hover .acac-opportunities__hover, .is-active-slide .acac-opportunities__img:focus-visible .acac-opportunities__hover {
    opacity: 1;
    transform: inherit;
}
.acac-opportunities__slider {
    margin-bottom: 19px;
}
.acac-opportunities__slide {
    padding: 0 32px;
}
.ind__intro.ind__intro-single .ind-visit-wrap-block h3 {
    font-size: 18px;
    margin-bottom: 23px;
}
.ind__intro .ind__visit-card .ind-visit-wrap-block {
    padding-top: 22px;
}
.ind-visit-wrap-block.ind-visit-wrap-bottom ul li { 
    margin-bottom: 8px;
    font-size: 16px;
}
section.ind__intro.ind__intro-single aside.ind__visit-card {
    padding-left: 22px;
    padding-right: 20px;
    padding-top: 24px;
    padding-bottom: 23px;
}
.exi-gallery {
    padding: 19px 0 48px;
}
.exi-gallery__caption {
    margin: 12px 0 0;
}
.exi-gallery--video {
    padding-top: 39px !important;
}
.pex-grid-section .pex-search__input {
    font-size: 16px;
}
.main-sticky-section .exh-sidebar ul {
    padding: 4px 0 13px; 
}
.is-visible ul {
    padding-bottom: 13px !important;
    padding-top: 4px !important;
}

}

@media (max-width: 489px) {
.acac-menu__panel strong {
    font-size: 30px;
}

}

@media (max-width: 480px) {    
    .acac-banner .acac-banner__masks .svg-image .image-01, .acac-banner .acac-banner__masks .svg-image .image-02 {
        object-position: bottom;
    }
    .acac-banner .acac-banner__masks .svg-image .image-03, .acac-banner .acac-banner__masks .svg-image .image-04 {
        object-position: top;
    }
    /*.acac-banner__masks .desktop-image_masks {
        gap: 12px 0;
    }*/
    .acac-banner {
        --without-walls-slide-x: 0px;
        --without-walls-slide-y: 55vh;
        --without-walls-lower-x: 0px;
        --without-walls-lower-y: 56vh;
      }
    .footer-main {
        padding-bottom: 90%;
    }
    div#footer-lottie {
        background-color: transparent !important;
    }
    .acac-banner .acac-banner__title span img{
        display: none;
    }
    .tax-event-categories .custom-page-content.pp__policy h1 {
        font-size: 32px;
    }
    /*.acac-banner__masks .desktop-image_masks img {
        height: 24vh;
    }*/
    .acac-menu__overlay .acac-menu__close {     
        top: 20px;
        right: 15px;
    }
    .is-switch-pinned .acac-menu__overlay .acac-menu__close {
        top: 29px;
    }
    .main-sticky-section .exh-sidebar ul {
        padding: 0px 0 11px; 
    }
    .ww__staff .ww__staff-img {
        height: calc(100% - 2px);
    }
    .em.em-search.size-medium.multi-line .em-search-main-bar .em-search-field, .em.em-search.size-small.multi-line .em-search-main-bar .em-search-field {
        display: none;
    }
    .em.em-search.size-medium.multi-line .em-search-main-bar, .em.em-search.size-small.multi-line .em-search-main-bar {
        padding: 15px 15px 15px 10px;
        justify-content: center;
    }
    .ind__exhibitions h2 {
        font-size: 32px;
    }
    .main-sticky-section .exh-section.exh-section--dark .overview-text-area a.btn-style-white::before {
        left: -10px;
    }
    .overview-hero#independent-projects .overview-hero__inner h1 {
        font-size: 38px;
    }
    .footer-animation-social .toptobottom-social-wrap a.footer-social__link {
        padding-top: 4px;
    }
    .acac-menu__parent strong::after {
        margin-left: 14px;     
        top: -9px;
    }
    .footer-sponsors__logo-link img {
        max-height: 77px;
    }
    .footer-sponsors__logos a:nth-of-type(2) {
        justify-content: left;
        width: 30%;
        padding-left: 20px;
    }
    .footer-sponsors__logos a:nth-of-type(3) {
        width: 70%;
        justify-content: left;
        padding-left: 22px;
        margin-top: 0px !important;
    }
    .overview-cards .container > h2 {
        font-size: 30px;
    }
    .ind__intro .ind__intro-copy h1 {
        font-size: 33px;     
    }
    .footer-sponsors__logos a:first-child {
        width: 100%;
    }
    .footer-sponsors__logos a {
        width: 50%;
        padding: 5px 0 10px 5px;
    }    
    .acac-banner__counter {        
        bottom: 120px;
    }
    .acac-banner__content {
        bottom: 195px;     
    }
    .acac-menu a.acac-banner__cta, .acac-banner__cta {
        bottom: 146px;
    }
    .acac-banner__title h1, .acac-banner__title span {
        font-size: 48px;     
    }

    .banner-form-added span.overview-hero__overlay {     
        height: 30%;
    }
    .pp_home-mobile {
        display: block;
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        z-index: 0;
    }
    .pp__hero .pp__hero-overlay {
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100.57%);
    }
    .pp__hero {
        background-image: none !important;
    }
    .exh-hero .exh-hero__media {
        height: 70%;
    }
    .overview-hero__overlay-mobile {        
        display: block;
    }
    .overview-hero__overlay-desktop {        
        display: none;
    }
    .home header.acac-menu__header {     
        background-color: #000;
    }
    .main-sticky-section .exh-featured__media figure {
        aspect-ratio: inherit;     
        height: 231.126px;
    }
    .acac-banner__slide picture img.mobile-banner-img {
        display: block;
    }
    .acac-banner__slide picture img.desktop-banner-img {
        display: none;
    }
    .overview-text-area h3 br {
        display: block;
    }
    section.ww__split-section.ww__split-section--dark .ww__split--dark + .ww__split--dark {
        margin-bottom: 20px;
    }
    .sr-page .sr-section:after {
        bottom: -288px;
    }
    .ww__land h2 {        
        font-size: 27px;     
    }
    .ww__popup-grid {
        display: inherit;
        height: 80vh;
        overflow: auto;
    }
    .ww__popup-portrait-inner {     
        height: 326.094px;
    }
    .gt__guided .gt__guided-grid .gt__guided-col a.salmon-pink-hover.btn-style {     
        margin-bottom: 15px;
    }
    .ind__programming .ind__program-img {
        height: 326.094px;
    }
    .bm__sponsorship p a {
        word-wrap: break-word;
    }
    .overview-hero .overview-hero__overlay {
        height: 472.608px;
    }
    .ww__staff .ww__staff-grid {     
        grid-template-columns: repeat(1, minmax(0, 525px));
    }
    .sr-page .sr-search__submit {
        margin-right: 3px;
    }
    .sr-page .sr-search__submit, .sr-page .sr-search__clear {
        font-size: 18px;
        width: 16px;
        height: 20px;
    }
    .sr-page .sr-search__clear::before, .sr-page .sr-search__clear::after{
        width: 18px;
    }
    .sr-page .sr-search__clear {     
        right: 5px;
    }
    .air__past .air__past-card figure {
        height: 230.906px;
    }
    .pex-grid-section .pex-search__submit {
        margin-top: -4px;     
    }
    .overview-hero .curve-left img {
        border-radius: 1000px 1000px 0 0;
    }
    .page-id-141385 .overview-hero .overview-hero__inner h1 {
        font-size: 33px;
        line-height: 35px;
    }
    .overview-cards .overview-text-area h2 {
        font-size: 29px;     
    }
    .ind__program-body a.btn-style {
        margin-top: 7px;
        width: 100%;
    }
    .ind__program-body a.btn-style:before {
        position: relative;
        margin-left: -27px;
        left: 0;
        top: 8px;
    }
    .overview-hero-btn {
        gap: 10px;
    }
    .ind__program-body a.btn-style:hover:before {
        transform: translate(-200px, -50%);
    }
    section.ww__split-section.ww__split-section--dark {
        padding-bottom: 10px;
    }
    .ww__split-section {
        -webkit-clip-path: polygon(0 0.5%, 100% 0, 100% 99.5%, 0 100%);
        clip-path: polygon(0 0.5%, 100% 0, 100% 99.5%, 0 100%);
        padding-top: 19px;
    }
    .ww__split.ww__split--image-right {
        margin-bottom: 21px;
    }
    .ww__split-section.ww__split-section--dark .ww__split--image-left {
        padding-top: 0;
        margin-top: 42px;
    }
    section.ind__intro.ind__intro-single {
        -webkit-clip-path: polygon(0 0%, 100% 1%, 100% 100%, 0 100%);
        clip-path: polygon(0 0%, 100% 1%, 100% 100%, 0 100%);
    }
    .exi-gallery--image h2 {
        margin-bottom: 22px;
        text-align: center;
        line-height: 1;
    }
    .support-sec-blocks .support-inner-images {
        display: block;
    }
    .support-inner-images a {
        margin-bottom: 3px;
        display: inline-block;
    }
    .support-inner-images a img {
        width: auto;
    }
    .ind__intro .ind__intro-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .main-sticky-section .exh-sidebar li a {
        font-size: 15px;
    }
    .main-sticky-section aside.exh-sidebar {     
        padding: 0 2px;
    }
    .main-sticky-section .exh-sidebar li:before {
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-left: 10px solid #C33417;
        border-right: 6px solid transparent;
        left: -12px;
        top: 14px;
    }
    .bm__sponsorship-buttons .salmon-pink-hover.btn-style {
        padding: 20px 40px 15px 37px;
        padding: 17px 40px 15px 37px;
        letter-spacing: 0.00em;
        width: 100%;        
        line-height: 1.2;
    }
    .bm__sponsorship .bm__sponsorship-buttons {
        gap: 13px;
    }    
    .overview-cards .overview-text-area h3.overview-card__accordion-link-head {
        display: block;
    }
    .overview-card--has-accordion .overview-card__accordion-link-tag {
        margin-left: 0;     
    }
    .bm__sponsorship {
        padding: 30px 0 50px;
    }
    .ind__hero .ind__hero-figure {
        height: 294px;
    }
    .acac-menu__overlay-header .acac-menu__search {
        left: 0;
    }
    .acac-menu__overlay-header .acac-menu__search {        
        top: -77px;
    }
    .overview-hero__inner .vi__info-grid-inner {
        gap: 29px;
    }
    .overview-hero__inner .vi__info-grid-inner {
        grid-template-columns: repeat(1, 1fr);
    }
    .ww__popup-contact {
        font-size: 15px;
    }
    .ww__popup-body hr {
        margin: 9px 0 16px;
    }
    .ww__popup-portrait-inner {     
        height: 324px;
    }
    .ww__staff .ww__staff-inner {
        padding: 0 14px;
    }
    .overview-text-area a.btn-style {
        width: 100%;
        padding-right: 20px;
        padding-left: 20px;
        opacity: 1 !important;
        visibility: visible !important;
        animation-name: none !important;
    }    
    .overview-text-area .btn-style::before {        
        position: relative;
        left: 0;
        top: 8px;
    }
    .overview-text-area .btn-style:hover::before, .overview-text-area .btn-style:focus-visible::before {
        transform: translate(-160px, -50%);
    }
    .overview-text-area .btn-style::after {
        position: relative;
        top: 7px;
        right: -160px;
    }

    .overview-text-area .btn-style:hover::after {
        transform: translate(-150px, -50%);
    }
    .overview-cards .container {
        padding: 0 14px;
    }
    .acac-programs {
        padding: 41px 0 39px;
    }
    .acac-programs h2 {
        margin-bottom: 0px;
    }
    .acac-programs__item {
        padding-top: 28px;
        margin: 0 auto 13px;
        padding-bottom: 10px;
    }
    .acac-programs__list .acac-programs__item:nth-of-type(2n + 2) {
        transform: rotate(-3.763deg);
    }
    .acac-programs__list .acac-programs__item:nth-of-type(2n + 2) h3 {
        transform: rotate(3.763deg);
    }
    .acac-exhibitions__featured-text .acac-btn--outline {
        letter-spacing: 0.009em;
    }
    .acac-exhibitions__featured-img {
        height: 190px;     
        margin-bottom: 17px;
    }
    .acac-exhibitions__featured-text {
        padding-left: 20px;
        padding-right: 20px;
    }
  .acac-hero-banner__intro.is-active {
        padding: 0 0;
    }  
  .acac-exhibitions { padding: 6px 0 30px; }
  .acac-opportunities h2 { font-size: 30px; line-height: 32px; }  
  .footer-sponsors__logos {
        grid-template-columns: 1fr;
        gap: 0;
    }
    .container.arrow-dots-wrap {
        padding: 0 29px;
    }
    .acac-page[data-theme="artists"] .acac-programs {
        padding: 60px 0 4px;     
    }
  /* Hero banner intro stacks tighter at this size. */
  ..acac-hero-banner__box h2 {
        font-size: 38px;
        margin-bottom: 14px;
        line-height: 1.05;
        letter-spacing: 0.05em;
    }
  .acac-hero-banner__box h3 {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 24px;
    }
  .acac-hero-banner__box p {
        line-height: 24px;
        margin-bottom: 22px;
    }
    .acac-page[data-theme="visitors"] .acac-hero-banner__arrow {
        border-top: 32px solid #ffffff;
        border-bottom: 18px solid transparent;
        border-left: 18px solid transparent;
        border-right: 18px solid transparent;
        top: 7px;
    }
  .footer-animation-social .toptobottom-social-wrap:nth-of-type(3) a.footer-social__link {       
        right: -61px;
        transform: rotate(7deg) !important;
        bottom: -80px;
    }
  .footer-animation-social a.footer-social__link {
        right: 144px;
        transform: rotate(21deg) !important;
        bottom: -88px;
    }
    .footer-animation-social .toptobottom-social-wrap:nth-of-type(2) a.footer-social__link {     
        bottom: -22px;
        right: 56px;
        transform: rotate(-9deg) !important;
    }
    .footer-nav-col {        
        gap: 25px;
    }
    .footer-nav-group {
        gap: 12px;     
    }
    .footer-banana {
        width: 100%;
    }
    .overview-hero__inner h2 {
        font-size: 20px;
        margin-bottom: 19px;
        letter-spacing: 0.00em;
        line-height: 1.29;
    }
    .overview-hero .overview-hero__inner h1 {
        font-size: 40px;
        line-height: 40px;
        letter-spacing: 0.0em;
    }
    .page-id-141607 .overview-hero .overview-hero__inner h1{
        font-size: 35px;
        line-height: 35px;
    }
    .overview-hero__inner p {
        font-size: 16px;
        letter-spacing: 0.00em;
    }
    .overview-hero__inner .overview-hero-btn a {
        letter-spacing: 0.00em;
    }
  /* Card image stays top-rounded inside the slider; the value scales
     down a touch so the curve still reads as a half-pill on narrower
     phones. */
  .overview-cards .overview-card__media {
        aspect-ratio: 4 / 3;

        margin: 0 0 13px;
    }
  
.acac-exhibitions__view-all {
        width: calc(100% - 30px);
        line-height: 1;
        padding-top: 19px;
        padding-bottom: 12px;
    }
.acac-menu__panel strong {
    font-size: 32px;
    line-height: 37px;
    margin-left: -18px;
    line-height: 1.1;
  }
  .acac-menu__panel li.is-active strong {
    margin-left: 0;
}
  .main-sub-menu {
      padding: 114px 27px 100px  20px;
  }
  .acac-menu__close span::before, .acac-menu__close span::after {
      width: 24px;
  }
  .acac-menu__close {
      gap: 0px;
  }
  .acac-menu__header .acac-menu__search.is-search-open, .acac-menu__overlay-header .acac-menu__search.is-search-open {
        width: calc(100% - 43px);
        left: -4px;
    }
    .acac-menu__header .acac-menu__search label, .acac-menu__overlay-header .acac-menu__search label {
        width: 100%;
    }  
   .footer-sponsors__logos a:nth-of-type(4) {
        padding-top: 10px;
        padding-left: 0;
        width: 57%;
        justify-content: left;
        text-align: left;
    }
    .footer-sponsors__logos a:nth-of-type(5) {
        width: 32%;
        justify-content: flex-end;
        padding-top: 10px;
    } 

}

@media (max-width: 389px) {
    .toggle-full-height {
        padding-right: 0;
    }
    .ind__exhibitions h2 {
        font-size: 26px;
    }
    .page-id-141385 .overview-hero .overview-hero__inner h1 {
        font-size: 32px;
        line-height: 34px;
    }
    .ind__intro .ind__intro-copy h1 {
        font-size: 26px;     
    }
    .overview-hero .overview-hero__inner h1 {
        font-size: 26px;
        line-height: 28px;
    }
    .overview-hero#independent-projects .overview-hero__inner h1 {
        font-size: 26px;
    }
    .page-id-141607 .overview-hero .overview-hero__inner h1 {
        font-size: 26px;
        line-height: 30px;
    }
    .ww__land h2 {        
        font-size: 26px;     
    }
    .tax-event-categories .custom-page-content.pp__policy {
        padding-top: 110px;
    }
}
@media (max-width: 380px) {
    .tax-event-categories .custom-page-content.pp__policy h1 {
        font-size: 28px;
    }
.footer-sponsors__logos a:nth-of-type(2) {
        justify-content: left;
        width: 30%;
    }
    .footer-sponsors__logos a:nth-of-type(3) {
        width: 70%;
    }
    .em.em-search.size-small.multi-line .em-search-main-bar .em-search-submit{
        width: 100% !important;    
        flex: none !important;
    }
    .event-calander-pgn .em-search-main .em-search-submit.input button.em-search-submit {
        margin-top: 20px !important;
        width: 100% !important;     
    }
}
@media (min-width: 370px) and (max-width: 380px) {
    .acac-banner {
        --without-walls-slide-x: 0px;
        --without-walls-slide-y: 60vh;
        --without-walls-lower-x: 0px;
        --without-walls-lower-y: 60vh;
      }
}

@media (max-width: 380px) {
    .acac-banner .acac-banner__title span svg.mobile-without {     
        max-width: 228px;
        margin-top: -41px;
    }
    .single-location .acac-location-single h1 {
        font-size: 34px;
    }
    .overview-cards .container > h2 {
        font-size: 28px;
    }
    .acac-menu__wordmark svg {
        width: 143px;
    }
    .main-sticky-section .overview-card .overview-text-area .btn-style-white.btn-style::before {
        left: -4px;
    }
    .overview-text-area .btn-style:hover::after {
        transform: translate(-150px, -50%);
    }
    .pp__policy .pp__policy-inner h3 {
        font-size: 26px;     
    }
    .ww__land h2 {        
        font-size: 21px;     
    }
    .ww__split-text h2 {
        font-size: 30px;
    }
    .page-id-141385 .overview-hero .overview-hero__inner h1 {
        font-size: 25px;
    }
    .overview-cards .overview-text-area h2 {
        font-size: 23px;
    }
    .btn-style-white.btn-style::before {
        left: 30px;
    }
    h2 {
        font-size: 30px;
    }
    .exh-hero .exh-hero__left h1 {
        font-size: 34px;
    }
    .main-sticky-section .exh-sidebar ul {        
        gap: 0;
    }
    .main-sticky-section .exh-sidebar li {
        padding: 0 5px;
    } 
    .overview-cards .overview-text-area h3.overview-card__accordion-link-head {
        font-size: 22px;
    }
    .overview-card--has-accordion .overview-card__accordion-link {
        padding: 17px 32px 18px 0;
    }
    .btn-style {
        font-size: 16px;
    }
    .btn-style {
        padding: 19px 35px 17px 59px;
    }
    .btn-style::before {
        left: 34px;
    }
    .ww__popup-contact {
        font-size: 12px;
        gap: 6px;
    } 
    .ww__popup-mail-icon {
        width: 15px;
        position: relative;
        top: -2px;
    }
    .acac-exhibitions h2 {
        font-size: 28px;     
    }
    .acac-page h4 {
        font-size: 22px;     
    }
    .acac-page h3 {
        font-size: 25px;
        line-height: 1.2;
    }
    .acac-page h2 {
        font-size: 28px;
    }
    .acac-hero-banner__box h2 {
        font-size: 28px;
    }
    .acac-who__btn {
        font-size: 16px;
    }
    .acac-exhibitions__featured-text .acac-btn--outline {
        font-size: 16px;
        height: auto;
        line-height: 1;
        width: 100%;
        padding: 14px 20px;
    }
    .acac-page h2 {
        font-size: 28px;
    }
    .acac-programs__item h3 {
        font-size: 26px;
        line-height: 31px;
        bottom: 23px;
        left: 32px;
    }
  .acac-banner__title h1 {
        font-size: 40px;     
    }
    .acac-banner__title span {
        top: 45px;
        font-size: 40px;
        top: 38px;
    }
    .acac-banner__title {
        top: 67px;
    }
    .acac-banner__arrow--prev {
        left: -36px;
    }
    .acac-banner__arrow--next {
        right: -36px;
    }
    .acac-banner__arrow--next::before {
        left: 11px;     
    }
    .acac-banner__arrow--prev::before {
        right: 11px;     
    }
    .acac-banner__content {
        left: 29px;
        width: calc(100% - 58px);
    }

.footer-social__link {        
        height: 43px;
        padding: 0 27px;
        width: 135px;
        font-size: 15px;
    }
    .footer-animation-social .toptobottom-social-wrap:nth-of-type(3) a.footer-social__link {
        right: -29px;
        transform: rotate(7deg) !important;     
    }
    .footer-animation-social a.footer-social__link {
        right: 130px;
        transform: rotate(21deg) !important;
        bottom: -88px;
    }
    .footer-animation-social .toptobottom-social-wrap:nth-of-type(2) a.footer-social__link {
        bottom: -24px;
        right: 65px;
        transform: rotate(-13deg) !important;
    }
    .acac-hero-banner__label {
        font-size: 17px;
    }
    .acac-page[data-theme="visitors"] .acac-hero-banner__box, .acac-page[data-theme="artists"] .acac-hero-banner__box {
        padding: 40px 20px 40px 20px;
    }
    .acac-menu__wordmark {
      font-size: 10px;
  }
  .acac-menu__panel strong {
      font-size: 25px;
      line-height: 34px;      
  }
  .acac-banner__content h2 {      
      font-size: 23px;
  }
  .acac-banner__content p a {
      font-size: 14px;   
      max-width: 254px;
  }
  
}
@media (max-width: 350px) {
    .ww__split-text h2 {
        font-size: 28px;
    }
    h2 {
        font-size: 28px;
    }
}
@media (min-width: 768px) {    
}
@media (min-width: 992px) {

.acac-hero-banner.is-h2-flyout-right .acac-hero-banner__intro.is-active h2 {
    transform-origin: center center;
    animation: acac-h2-flyout-right 1000ms cubic-bezier(0.55, 0, 0.5, 1) forwards;
  }

  .acac-hero-banner.is-h2-flyout-left .acac-hero-banner__intro.is-active h2 {
    transform-origin: center center;
    animation: acac-h2-flyout-left 1000ms cubic-bezier(0.55, 0, 0.5, 1) forwards;
  }

  @keyframes acac-h2-flyout-right {
    0% {
      transform: translateX(0) rotate(0deg);
      font-size: 75px;
      opacity: 1;
    }
    100% {
      transform: translateX(600px) rotate(-90deg);
      font-size: 14px;
      opacity: 0;
    }
  }

  @keyframes acac-h2-flyout-left {
    0% {
      transform: translateX(0) rotate(0deg);
      font-size: 75px;
      opacity: 1;
    }
    100% {
      transform: translateX(-600px) rotate(90deg);
      font-size: 14px;
      opacity: 0;
    }
  }

  /* While a tab click is playing its flyout, the supporting intro
     elements (h3, p, arrow button) fade out so only the h2 is left
     visually traveling toward the side tab. A new animation is used
     (rather than overriding opacity directly) because their existing
     acac-rotate-in animation has `forwards` fill mode and would
     otherwise keep them painted at opacity:1. */
  .acac-hero-banner.is-h2-flyout-left .acac-hero-banner__intro.is-active h3,
  .acac-hero-banner.is-h2-flyout-left .acac-hero-banner__intro.is-active p,
  .acac-hero-banner.is-h2-flyout-left .acac-hero-banner__intro.is-active .acac-hero-banner__arrow,
  .acac-hero-banner.is-h2-flyout-right .acac-hero-banner__intro.is-active h3,
  .acac-hero-banner.is-h2-flyout-right .acac-hero-banner__intro.is-active p,
  .acac-hero-banner.is-h2-flyout-right .acac-hero-banner__intro.is-active .acac-hero-banner__arrow {
    animation: acac-intro-fade-out 500ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
  }

  @keyframes acac-intro-fade-out {
    from { opacity: 1; }
    to   { opacity: 0; }
  }

.acac-hero-banner__label[data-label="visitors"]:hover,
  .acac-hero-banner__tab--left:hover,
  .acac-hero-banner__label[data-label="artists"]:hover,
  .acac-hero-banner__tab--right:hover {
    cursor: none;
  }
.em.em-search .em-search-views .em-search-views-trigger .em-search-view-option, .em .em-search-advanced .em-search-views .em-search-views-trigger, .em.em-search .em-search-views .em-search-views-trigger, .em.em-search-advanced .em-search-views .em-search-views-trigger, .em button.em-clickable.em-search-advanced-trigger, .em .em-search-advanced .em-search-sort .em-search-sort-option, .em.em-search .em-search-sort .em-search-sort-option, .em.em-search-advanced .em-search-sort .em-search-sort-option, .event-calander-pgn .em-search-main .em-search-submit.input button.em-search-submit, .event-calander-pgn .em-item-actions.input a.em-item-read-more.button {
    cursor: none !important;
}


}

@media (hover: hover) and (min-width: 992px) {
    body { cursor: none; }
  button,
  .acac-hero-banner__toggle, input[type=submit] { cursor: none; }  
  a:hover,  
  .gform-theme form .gform-page-footer input,
  .acac-hero-banner__arrow:hover,
  .acac-opportunities__nav button:hover,
  .ww__staff .ww__staff-paint:hover,
  .ww__staff .ww__staff-canvas:hover
   { cursor: none !important; }
   .gform-theme .gform-footer .gform_button {cursor: none !important;}

  /* Artist theme: hide OS cursor across whole containers — not just on
     <a>/button :hover — so the black follow-cursor stays visible over
     gaps (e.g. between sponsor logos or around the nav pill). Selectors
     are unprefixed on the data-theme wrapper so they work whether the
     [data-theme] attribute is on .acac-page or .acac-menu (Block 2's
     setTheme() mirrors it onto both). */
  [data-theme="artists"] .footer-sponsors__logos,
  [data-theme="artists"] .footer-sponsors__logos *,
  [data-theme="artists"] .acac-opportunities__nav,
  [data-theme="artists"] .acac-opportunities__nav *,
  [data-theme="artists"] .acac-hero-banner__arrow { cursor: none; }
    .banner-form { cursor: auto !important; }

}

#news-archive{
  background:#fff;
}

.news-events-list {
    
}

.news-event {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 32px;
    padding: 30px 0;
    border-bottom: 1px solid #D5D5D5;
}

.news-event:first-child{
  border-top: 1px solid #D5D5D5;
}

.news-event__image {
    display: block;
}

.news-event__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.news-event__content {
    align-self: center;
}

.news-event__title {
    margin: 0 0 12px;
    font-size: 34px;
    line-height: 1.1;
}

.news-event__title a {
    color: inherit;
    text-decoration: none;
}

.news-event__date {
    margin-bottom: 18px;
    font-weight: 700;
    color:#000;
}

.news-event__excerpt {
    line-height: 1.5;
}

.news-event__excerpt {
    margin: 0;
    color:#000;
}

.news-events-load-more__button {
    max-width: 636px;
    width: 100%;
    padding: 14px 40px 11px 30px;
    text-align: center;
    letter-spacing: 0.00em;
}

.news-events-load-more{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  padding-top:81px;
}

@media (max-width: 767px) {
    .news-event {
        grid-template-columns: 110px minmax(0, 1fr);
        gap: 18px;
        padding: 22px 0;
    }

    .news-event__title {
        font-size: 24px;
    }
}

@media (max-width: 539px) {
    .news-event {
        display: block;
    }

    .news-event__image {
        margin-bottom: 18px;
    }

    .news-event__image img {
        aspect-ratio: 16 / 10;
    }
}

.single-news{
  padding-top:25px;
}

.single-news-content .em.pixelbones p,
.single-news .first-paragraph p,
.single-news-content p,
.sponsors-additional-content p{
  color: #000 !important;
  font-family: Poppins !important;
  font-size: 18px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.5 !important; /* 150% */
}


.single-news .first-paragraph{
  border-top: 1px solid #D5D5D5;
  margin-top:25px;
  padding-top:25px;
}

.news-single-top{
  display:flex;
  gap:35px;
  
  padding-top:35px;
}

.ns-top-img{
  width:40%;
}

.ns-top-content{
  width:60%;
}

.ns-top-img img{
  max-width:100%;
  width:auto;
  height:auto;
}

.single-news p.news-event-date{
  color: #000 !important;
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif !important;
  font-size: 28px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  line-height: 1.28571 !important; /* 128.571% */
}

.single-news p.news-event-location{
  color: #000 !important;
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif !important;
  font-size: 22px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 1.22727 !important; /* 122.727% */
}

.single-news-content{
  width:80%;
  margin:auto;
  padding-top:50px;
}

.single-news-content.additional{
  padding-top:20px;
}

.single-news h1,
.single-news .ns-top-content .h2{
  color: #000;
  font-family: "aktiv-grotesk-extended", "Aktiv Grotesk Ex", "Arial Black", Arial, sans-serif !important;
  font-size: 60px;
  font-style: normal;
  font-weight: 900;
  line-height: 60px; /* 100% */
  text-transform: uppercase;
}

.single-news h1{
  color:#fff;
}

.single-news{
  -webkit-clip-path: polygon(0 1.3%, 100% 0, 100% 98.7%, 0 100%) !important;
  clip-path: polygon(0 1.3%, 100% 0, 100% 98.7%, 0 100%) !important;
}

.single-news-header-pad{
  padding-top:45px;
}

.news-post-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 60px;
  padding-top: 30px;
  padding-bottom:30px;
  border-top: 1px solid #ccc;
}

.news-post-navigation__previous,
.news-post-navigation__next {
  flex: 1;
}

.news-post-navigation__next {
  display: flex;
  justify-content: flex-end;
}

.news-post-navigation a {
  display: inline-flex;
  align-items: baseline;
  gap: 12px;
  text-decoration: none;
}

.news-post-navigation__arrow {
  display: block;
  flex-shrink: 0;
  position: relative;
  top: 3px;
}

.news-post-navigation__previous .news-post-navigation__arrow {
  transform: rotate(180deg);
}

.sponsors-list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 30px;
  align-items: center;
}

.sponsors-list__item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.sponsors-list__item img {
  display: block;
  max-width: 100%;
  height: auto;
}

.sponsors-additional-content--above {
  margin-bottom: 40px;
}

.sponsors-additional-content--below {
  margin-top: 40px;
}

.sponsors-additional-content--above hr,
.sponsors-additional-content--below hr{
  margin-top:25px;
  margin-bottom:25px;
}

.event-buttons{
  display: flex;
  gap:30px;
  padding-bottom:20px;
}

@media (max-width: 991px) {
  .sponsors-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 767px) {
  .sponsors-list {
    grid-template-columns: repeat(2, 1fr);
  }
}


@media(max-width:767px){
  .news-single-top{
    display: block;
  }
  .ns-top-img{
    width:auto;
  }
  
  .ns-top-content{
    width:auto;
  }
  
  .single-news-content{
    width:auto;
  }
}

.multiple-dates{
	padding-bottom:15px;
}

.multiple-dates:last-child {
	padding-bottom: 0;
}

.get-tickets-sb{
	color: #000;
	font-weight: 700;
	line-height: normal;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: 7%; /* 1.26px */
	text-underline-offset: 23.5%; /* 4.23px */
	text-underline-position: from-font;
}

.page-id-142530 .main-sticky-section{
	padding-top:85px;
}

.page-id-142530 .exh-hero:before {
	content: "";
	position: absolute;
	width: 104%;
	height: 100px;
	background-color: #fff;
	transform: rotate(1.5deg);
	left: -5px;
	bottom: -85px;
	z-index: 1;
}