/* ------------------------- Components 짰 Code by Dennis -------------------------------------------------- */

/* ------------------------- Default Header -------------------------------------------------- */

.default-header {
   padding-top: 0;
   padding-bottom: 0;
}

.overflow-wrap {
   display: flex;
   overflow: hidden;
}

.default-header .row.columns {
   padding-top: calc((var(--vh) * 10) + 5vw + var(--section-padding));
   padding-bottom: calc(var(--gap-l) * 0.8);
   min-height: calc(var(--vh) * 85);
   align-items: flex-end;
   gap: var(--section-padding) var(--main-grid-gap);
}

.default-header .col-title {
   --column-width: 7; 
   transform: translateY(calc(var(--gap) * 0.2));
}

.default-header .col-whitespace {
   --column-width: 1; 
}

.default-header-no-btn .col-whitespace {
   --column-width: 4; 
}

.default-header .col-btn {
   --column-width: 3; 
}

.default-header .col-arrow {
   --column-width: 1; 
   align-items: flex-end;
}

@media screen and (min-width: 1025px) { 
   .default-header .col-title .col-row-title {
      max-width: calc(var(--title-size) * 6.75);
   }
}

@media screen and (max-width: 1024px) { 

   .default-header .row.columns {
      padding-top: calc(var(--nav-height) + var(--section-padding));
      padding-bottom: var(--gap-l);
      min-height: calc(var(--vh) * 75);
   }

   .default-header .col-title {
      --column-width: 6; 
      transform: translateY(0);
      margin-bottom: auto;
   }
   
   .default-header .col-whitespace {
      display: none;
   }
   
   .default-header .col-btn {
      --column-width: 5; 
   }

   .default-header-no-btn .col-arrow {
      --column-width: 6; 
      align-items: flex-start;
   }
}

@media screen and (max-width: 540px) { 
   .default-header .col-title {
      --column-width: 4; 
   }
   
   .default-header .col-btn {
      --column-width: 3; 
   }

   .default-header-no-btn .col-arrow {
      --column-width: 4; 
   }
}

/* ------------------------- Sticky Wrap -------------------------------------------------- */

@media screen and (min-width: 1025px) { 

   .section-sticky-wrap {
      --sticky-wrap-offset: 0px;
      position: relative;
   }

   .section-sticky-wrap .section-sticky-wrap-inner {
      position: sticky;
      top: calc(var(--sticky-wrap-offset) * -1);
      background-color: var(--color-light);
   }

   .section-sticky-wrap-invisible {
      height: calc(100 * var(--vh));
      z-index: 2;
      position: relative;
      pointer-events: none;
   }

   .section-sticky-wrap + .section {
      margin-top: calc(-100 * var(--vh));
   }
}

@media screen and (max-width: 1024px) {
   .section-sticky-wrap .overlay-dark {
      display: none;
   }
}


/* ------------------------- Split Lines -------------------------------------------------- */

.split-lines {
   position: relative;
   display: inline-block;
   padding: 0.3em 0;
}

.split-lines .single-line {
   position: relative;
   display: inline-block;
   overflow: hidden;
   margin: -0.4em -0.1em;
}

.split-lines .single-line .single-line-inner {
   position: relative;
   display: inline-block;
   padding: 0.2em 0.1em;
}

/* Monument */

.split-lines.monument {
   padding: 0em 0;
}

.split-lines.monument .single-line {
   margin: 0em -0.1em;
}

.split-lines.monument .single-line .single-line-inner {
   padding: 0em 0.1em;
}

/* ------------------------- Magnetic Overlay -------------------------------------------------- */

.magnetic-overlay {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   pointer-events: all;
   overflow: hidden;
   mix-blend-mode: exclusion;
}

.magnetic-overlay .magnetic-click,
.magnetic-overlay .magnetic-inner {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
}

.magnetic-overlay .magnetic-inner {
   will-change: transform;
}

.magnetic-overlay .magnetic-click h4 {
   white-space: nowrap;
   color: var(--color-light);
   text-align: center;
}

@media screen and (min-width: 1025px) {

   .magnetic-overlay.hover {
      opacity: 0;
      transition: var(--animation-ease-fast);
   }

   .magnetic-overlay.hover:hover {
      opacity: 1;
      transition: var(--animation-ease-fast);
   }

}

/* ------------------------- Styled Element -------------------------------------------------- */

.styled-media,
.styled-media-transition {
   display: flex;
   flex-direction: column;
   gap: var(--gap-s);
   width: 100%;
}

.styled-media figure,
.styled-media-transition figure {
   position: relative;
   overflow: hidden;
}

.styled-media figure::before,
.styled-media-transition figure::before {
   content: "";
   display: block;
   padding-bottom: 125%;
}

.styled-media:has(.magnetic-overlay.hover) figure :is(picture, .styled-video),
.styled-media-transition:has(.magnetic-overlay.hover) figure :is(picture, .styled-video) {
   transition: var(--animation-ease);
   transform: scale(1) rotate(0.001deg);
}

.styled-media:has(.magnetic-overlay.hover) figure:hover :is(picture, .styled-video),
.styled-media-transition:has(.magnetic-overlay.hover) figure:hover :is(picture, .styled-video) {
   transform: scale(1.05) rotate(0.001deg);
}

/* ------------------------- Image Reveal -------------------------------------------------- */

.figure-outer {
   overflow: hidden;
}

.figure-reveal {
   pointer-events: none;
   background-color: var(--color-light);
   transform-origin: top;
   left: -1px;
   top: -1px;
   width: calc(100% + 2px);
   height: calc(100% + 2px);
   z-index: 20;
}

/* ------------------------- Single - Vimeo Lightbox -------------------------------------------------- */

.vimeo-lightbox {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   pointer-events: none;
   display: flex;
   padding: var(--gap) calc(var(--main-grid-column-width) + var(--container-padding) + var(--main-grid-gap));
   opacity: 0;
   visibility: hidden;
   clip-path: polygon(0% 0%, 0% 0, 0% 100%, 0% 100%);
   align-items: center;
   justify-content: center;
}

@media screen and (max-width: 1024px) {
   .vimeo-lightbox {
      padding: 0 var(--container-padding);
   }
}

.vimeo-lightbox[data-vimeo-status-activated="true"] {
   opacity: 1;
   visibility: visible;
   transition: clip-path var(--animation-smooth-faster);
   clip-path: polygon(0% 0%, 100% 0, 100% 100%, 0% 100%);
}

.vimeo-lightbox[data-vimeo-status-activated="remove"] {
   opacity: 1;
   visibility: visible;
   transition: clip-path var(--animation-smooth-faster);
   clip-path: polygon(100% 0%, 100% 0%, 100% 100%, 100% 100%);
}

.single-vimeo-calculate {
   position: relative;
   display: flex;
   justify-content: center;
	 align-items: center;
   width: 100%;
   height: 100%;
   pointer-events: none;
}

.single-vimeo-calculate-wrap {
   position: relative;
   width: 100%;
   pointer-events: none;
}

/* Lightbox Background */

.vimeo-lightbox .vimeo-lightbox-background {
   background: var(--color-dark);
   opacity: 1;
   pointer-events: all;
}

/* Player */

.vimeo-lightbox .single-vimeo-lightbox {
   --aspect-ratio: 56.25%;
	position: relative;
	width: 100%;
	padding-bottom: var(--aspect-ratio);
	overflow: hidden;
   background: var(--color-dark);
   border-radius: var(--border-radius);
   isolation: isolate;
   pointer-events: none;
   transform: scale(1.25) rotate(0.001deg) translateZ(0);
}

.vimeo-lightbox[data-vimeo-status-activated="true"] .single-vimeo-lightbox {
   transition: var(--animation-smooth-faster);
   transform: scale(1) rotate(0.001deg) translateZ(0);
   pointer-events: all;
}

.vimeo-lightbox[data-vimeo-status-activated="remove"] .single-vimeo-lightbox {
   transition: var(--animation-smooth-faster);
   transform: scale(0.75) rotate(0.001deg) translateZ(0);
   pointer-events: none;
}

.vimeo-lightbox iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.vimeo-lightbox[data-vimeo-player-target] {
   cursor: pointer;
}

.vimeo-lightbox .vimeo-append-content {
   z-index: 0;
}

/* Placeholder */

.vimeo-lightbox .vimeo-overlay-placeholder {
	background: var(--color-dark);
	transition: opacity var(--animation-ease-fast);
	opacity: 1;
}

.vimeo-lightbox[data-vimeo-status-loaded="true"] .vimeo-overlay-placeholder {
   transition: var(--animation-ease-fast);
	opacity: 0;
}

/* Overlay Dark */

.vimeo-lightbox .vimeo-overlay-dark {
	background: var(--color-dark);
	transition: opacity var(--animation-ease-fast);
   opacity: 0;
   z-index: 2;
   pointer-events: none;
}

.vimeo-lightbox[data-vimeo-status-activated="true"] .vimeo-overlay-dark {
	opacity: 0.2;
}

.vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-loaded="true"] .vimeo-overlay-dark {
	opacity: 0;
}

@media (hover: hover) { 
   .vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-hover="true"] .single-vimeo-lightbox:hover .vimeo-overlay-dark {
      opacity: 0.2 !important;
   }
}


/* Interface */

.vimeo-lightbox .vimeo-overlay-interface {
   pointer-events: none;
   z-index: 4;
   opacity: 0;
   transition: opacity var(--animation-ease-fast);
   display: flex;
   align-items: flex-end;
   padding: var(--gap);
   gap: 0.25em;
}

.vimeo-lightbox[data-vimeo-status-play="false"] .vimeo-overlay-interface,
.vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-hover="true"] .single-vimeo-lightbox:hover .vimeo-overlay-interface {
   opacity: 1;
}

@media screen and (max-width: 1024px) { 
   .vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-play="true"] .vimeo-overlay-interface {
      opacity: 0 !important;
   }
}

/* Button Mute */

.vimeo-lightbox .vimeo-mute {
   height: 2.2em;
   width: 2.2em;
   position: relative;
   cursor: pointer;
   flex-shrink: 0;
   background-color: var(--color-light);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   pointer-events: all;

   /* background-color: rgba(var(--color-dark-rgb), 0.25);
   backdrop-filter: blur(1em); */
   
}

.vimeo-lightbox .vimeo-mute .bar-group {
   width: 100%;
   height: 10px;
   position: relative;
   display: flex;
   justify-content: center;
   gap: 2px;
   transition: height var(--animation-primary);
   /* --color-dark: var(--color-light) */
}

.vimeo-lightbox .vimeo-mute .bar-group .bar {
   width: 2px;
   height: 100%;
   border-radius: 1em;
   position: relative;
   display: flex;
   align-items: flex-end;
}

.vimeo-lightbox .vimeo-mute .bar-group .bar-inner {
   position: absolute;
   background-color: var(--color-dark);
   width: 100%;
   height: 100%;
   animation: bounceBar 1s infinite;
   animation-timing-function: linear;
   transform-origin: bottom;
   border-radius: 1em;
}

.vimeo-lightbox .vimeo-mute .bar-group .bar:nth-child(2) .bar-inner {
   animation-delay: -0.2s;
}

.vimeo-lightbox .vimeo-mute .bar-group .bar:nth-child(3) .bar-inner {
   animation-delay: -0.6s;
}

.vimeo-lightbox .vimeo-mute .bar-group .bar:nth-child(4) .bar-inner {
   animation-delay: -0.4s;
}

.vimeo-lightbox .vimeo-mute .bar-group .bar::after {
   content: "";
   position: absolute;
   width: 100%;
   height: 2px;
   border-radius: 50%;
   background-color: var(--color-dark);
}

.vimeo-lightbox[data-vimeo-status-muted="true"] .bar-group {
   height: 2px;
}

@keyframes bounceBar {
   0% {
      transform: scaleY(1) rotate(0.001deg);
   }
   15% {
      transform: scaleY(0.9) rotate(0.001deg);
   }
   50% {
      transform: scaleY(0.3) rotate(0.001deg);
   }
   85% {
      transform: scaleY(0.9) rotate(0.001deg);
   }
   100% {
      transform: scaleY(1) rotate(0.001deg);
   }
}

/* Button Play/Pause */

.vimeo-lightbox .vimeo-playpause {
   height: 2.2em;
   width: 2.2em;
   position: relative;
   cursor: pointer;
   flex-shrink: 0;
   background-color: var(--color-light);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   pointer-events: none;
}

.vimeo-lightbox .vimeo-playpause svg {
   width: 50%;
   display: block;
}

.vimeo-lightbox .vimeo-playpause svg path {
   fill: var(--color-dark);
}

.vimeo-lightbox .vimeo-playpause svg:nth-child(2) {
   display: none;
}

.vimeo-lightbox[data-vimeo-status-play="true"] .vimeo-playpause svg:nth-child(1) {
   display: none;
}

.vimeo-lightbox[data-vimeo-status-play="true"] .vimeo-playpause svg:nth-child(2) {
   display: block;
}

/* Icon (Play + Pause) */

.vimeo-lightbox .icon {
   display: flex;
   align-items: center;
   justify-content: center;
   height: calc(var(--title-size) * 0.66);
   width: calc(var(--title-size) * 0.66);
   transform: scale(1) rotate(0.001deg);
   transition: opacity var(--animation-ease-fast);
   background: var(--color-white);
   border-radius: 50%;

   display: none;
}

.vimeo-lightbox .icon svg {
   width: 50%;
}

/* Play */

.vimeo-lightbox .vimeo-overlay-play {
	z-index: 2;
	display: flex;
   align-items: center;
	justify-content: center;
   cursor: pointer;
   opacity: 1;
}

.vimeo-lightbox[data-vimeo-status-play="true"] .vimeo-overlay-play {
   opacity: 0;
}

.vimeo-lightbox .vimeo-overlay-play .icon svg path {
   fill: var(--color-dark);
}

/* Pause */

.vimeo-lightbox .vimeo-overlay-pause {
	z-index: 3;
	display: none;
   align-items: center;
	justify-content: center;
   cursor: pointer;
}

.vimeo-lightbox[data-vimeo-status-play="true"] .vimeo-overlay-pause {
   display: flex;
}

.vimeo-lightbox .vimeo-overlay-pause .icon {
   opacity: 0;
}

.vimeo-lightbox .vimeo-overlay-pause .icon svg path {
   stroke: var(--color-dark);
}

.vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-play="false"] .vimeo-overlay-pause  .icon,
.vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-hover="true"] .single-vimeo-lightbox:hover .vimeo-overlay-pause  .icon {
   opacity: 1;
}

@media screen and (max-width: 1024px) { 
   .vimeo-lightbox[data-vimeo-status-activated="true"][data-vimeo-status-play="true"] .vimeo-overlay-pause  .icon {
      opacity: 0 !important;
   }
}

/*  Loading */

.vimeo-lightbox .vimeo-overlay-loading {
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9;
	transition: all 0.3s ease-in-out 0.5s;
   opacity: 0;
   pointer-events: none;
}

.vimeo-lightbox[data-vimeo-status-play="true"] .vimeo-overlay-loading {
	opacity: 1;
}

.vimeo-lightbox[data-vimeo-status-play="true"][data-vimeo-status-loaded="true"] .vimeo-overlay-loading {
	opacity: 0;
}

.vimeo-lightbox .vimeo-overlay-loading svg {
	width: 4em;
}

.vimeo-lightbox .vimeo-overlay-loading svg path {
	fill: var(--color-white);
}


/*  Close Button */

.vimeo-close-link {
   position: absolute;
   z-index: 2;
   top: var(--gap);
   right: var(--container-padding);
   pointer-events: all;
}

/* ------------------------- Single - Vimeo Player -------------------------------------------------- */

.single-vimeo-player {
   --aspect-ratio: 56.25%;
   --aspect-ratio-no-percent: 0.5625;
	position: relative;
	width: 100%;
	padding-bottom: var(--aspect-ratio);
   background: transparent;
   border-radius: var(--border-radius);
   isolation: isolate;
   backface-visibility: hidden; 
   transform-style: flat;
   transform: translateZ(0);
}

.single-vimeo-player .iframe-wrap {
   overflow: hidden;
   pointer-events: none;
}

.single-vimeo-player iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.single-vimeo-player[data-vimeo-player-target] {
   cursor: pointer;
}

/* Placeholder */

.single-vimeo-player .vimeo-overlay-placeholder {
	transition: opacity var(--animation-ease-fast);
	opacity: 1;
}

.single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-loaded="true"] .vimeo-overlay-placeholder {
	opacity: 0;
}

/* Overlay Dark */

.single-vimeo-player .vimeo-overlay-dark {
	background: var(--color-dark);
	transition: opacity var(--animation-ease-fast);
   opacity: 0;
   z-index: 2;
   pointer-events: none;
}

.single-vimeo-player[data-vimeo-status-activated="true"] .vimeo-overlay-dark {
	opacity: 0;
}

.single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-loaded="true"] .vimeo-overlay-dark {
	opacity: 0;
}

@media (hover: hover) { 
   .single-vimeo-player[data-vimeo-status-hover="true"][data-vimeo-status-play="false"]:hover .vimeo-overlay-dark {
      opacity: 0 !important;
   }
}

/* Interface */

.single-vimeo-player .vimeo-overlay-interface {
   pointer-events: none;
   z-index: 4;
   opacity: 1;
   transition: opacity var(--animation-ease-fast);
   display: flex;
   align-items: flex-end;
}

.single-vimeo-player[data-vimeo-status-play="false"] .vimeo-overlay-interface,
.single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-hover="true"]:hover .vimeo-overlay-interface {
   opacity: 1;
}

@media screen and (max-width: 1024px) { 
   .single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-play="true"] .vimeo-overlay-interface {
      opacity: 1 !important;
   }
}

.single-vimeo-player .vimeo-overlay-interface-bottom {
   display: flex;
   position: sticky;
   bottom: 0;
   width: 100%;
   padding: var(--gap);
   gap: 0.25em;
}

/* Button Mute */

.single-vimeo-player .vimeo-mute {
   height: 2.2em;
   width: 2.2em;
   background-color: var(--color-light);
   position: relative;
   cursor: pointer;
   flex-shrink: 0;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   pointer-events: all;
}

.single-vimeo-player .vimeo-mute::before {
   content: "";
   position: absolute;
   width: calc(100% + 2px);
   height: calc(100% + 2px);
   border-radius: 50%;
   border: 1px solid rgba(0, 0, 0, 0.05);
}

.single-vimeo-player[data-vimeo-player-autoplay="true"] .vimeo-mute {
   display: none;
}

.single-vimeo-player .vimeo-mute .bar-group {
   width: 100%;
   height: 10px;
   position: relative;
   display: flex;
   justify-content: center;
   gap: 2px;
   transition: height var(--animation-primary);
   /* --color-dark: var(--color-light) */
}

.single-vimeo-player .vimeo-mute .bar-group .bar {
   width: 2px;
   height: 100%;
   border-radius: 1em;
   position: relative;
   display: flex;
   align-items: flex-end;
}

.single-vimeo-player .vimeo-mute .bar-group .bar-inner {
   position: absolute;
   background-color: var(--color-dark);
   width: 100%;
   height: 100%;
   animation: bounceBar 1s infinite;
   animation-timing-function: linear;
   transform-origin: bottom;
   border-radius: 1em;
}

.single-vimeo-player .vimeo-mute .bar-group .bar:nth-child(2) .bar-inner {
   animation-delay: -0.2s;
}

.single-vimeo-player .vimeo-mute .bar-group .bar:nth-child(3) .bar-inner {
   animation-delay: -0.6s;
}

.single-vimeo-player .vimeo-mute .bar-group .bar:nth-child(4) .bar-inner {
   animation-delay: -0.4s;
}

.single-vimeo-player .vimeo-mute .bar-group .bar::after {
   content: "";
   position: absolute;
   width: 100%;
   height: 2px;
   border-radius: 50%;
   background-color: var(--color-dark);
}

.single-vimeo-player[data-vimeo-status-muted="true"] .bar-group {
   height: 2px;
}

@keyframes bounceBar {
   0% {
      transform: scaleY(1) rotate(0.001deg);
   }
   15% {
      transform: scaleY(0.9) rotate(0.001deg);
   }
   50% {
      transform: scaleY(0.3) rotate(0.001deg);
   }
   85% {
      transform: scaleY(0.9) rotate(0.001deg);
   }
   100% {
      transform: scaleY(1) rotate(0.001deg);
   }
}

/* Button Play/Pause */

.single-vimeo-player .vimeo-playpause {
   height: 2.2em;
   width: 2.2em;
   position: relative;
   cursor: pointer;
   flex-shrink: 0;
   background-color: var(--color-light);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   pointer-events: none;
}

.single-vimeo-player .vimeo-playpause::before {
   content: "";
   position: absolute;
   width: calc(100% + 2px);
   height: calc(100% + 2px);
   border-radius: 50%;
   border: 1px solid rgba(0, 0, 0, 0.05);
}

.single-vimeo-player .vimeo-playpause svg {
   width: 50%;
   display: block;
}

.single-vimeo-player .vimeo-playpause svg path {
   fill: var(--color-dark);
}

.single-vimeo-player .vimeo-playpause svg:nth-child(2) {
   display: none;
}

.single-vimeo-player[data-vimeo-status-play="true"] .vimeo-playpause svg:nth-child(1) {
   display: none;
}

.single-vimeo-player[data-vimeo-status-play="true"] .vimeo-playpause svg:nth-child(2) {
   display: block;
}

/* Icon (Play + Pause) */

.single-vimeo-player .icon {
   display: flex;
   align-items: center;
   justify-content: center;
   height: calc(var(--title-size) * 0.66);
   width: calc(var(--title-size) * 0.66);
   transform: scale(1) rotate(0.001deg);
   transition: opacity var(--animation-ease-fast);
   background: var(--color-white);
   border-radius: 50%;

   display: none;
}

.single-vimeo-player .icon svg {
   width: 50%;
}

/* Play */

.single-vimeo-player .vimeo-overlay-play {
	z-index: 2;
	display: flex;
   align-items: center;
	justify-content: center;
   cursor: pointer;
   opacity: 1;
}

.single-vimeo-player[data-vimeo-status-play="true"] .vimeo-overlay-play {
   opacity: 0;
}

.single-vimeo-player .vimeo-overlay-play .icon svg path {
   fill: var(--color-dark);
}

/* Pause */

.single-vimeo-player .vimeo-overlay-pause {
	z-index: 3;
	display: none;
   align-items: center;
	justify-content: center;
   cursor: pointer;
}

.single-vimeo-player[data-vimeo-status-play="true"] .vimeo-overlay-pause {
   display: flex;
}

.single-vimeo-player .vimeo-overlay-pause .icon {
   opacity: 0;
}

.single-vimeo-player .vimeo-overlay-pause .icon svg path {
   stroke: var(--color-dark);
}

.single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-play="false"] .vimeo-overlay-pause  .icon,
.single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-hover="true"]:hover .vimeo-overlay-pause  .icon {
   opacity: 1;
}

@media screen and (max-width: 1024px) { 
   .single-vimeo-player[data-vimeo-status-activated="true"][data-vimeo-status-play="true"] .vimeo-overlay-pause  .icon {
      opacity: 0 !important;
   }
}

/*  Loading */

.single-vimeo-player .vimeo-overlay-loading {
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9;
	transition: all 0.3s ease-in-out 0.5s;
   opacity: 0;
   pointer-events: none;
}

.single-vimeo-player[data-vimeo-status-play="true"] .vimeo-overlay-loading {
	opacity: 1;
}

.single-vimeo-player[data-vimeo-status-play="true"][data-vimeo-status-loaded="true"] .vimeo-overlay-loading {
	opacity: 0;
}

.single-vimeo-player .vimeo-overlay-loading svg {
	width: 4em;
}

.single-vimeo-player .vimeo-overlay-loading svg path {
	fill: var(--color-white);
}


/* ------------------------- Single Accordion -------------------------------------------------- */

.accordion {
   display: flex;
   flex-direction: column;
}

.accordion .single-accordion-item {
   display: flex;
   flex-direction: column;
   border-bottom: 1px solid var(--color-border);
}

.accordion .single-accordion-item .top {
   padding: 1.8em 0 2em 0;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 3em;
}

.accordion .single-accordion-item .top h3 {
   max-width: calc(var(--title-size) * 6);
}

.accordion .single-accordion-item .top .plus {
   width: 1.1em;
   height: 1.1em;
   display: flex;
   position: relative;
   align-items: center;
   justify-content: center;
   transform: rotate(0.001deg);
   transition: var(--animation-primary);
}

.accordion .single-accordion-item .top .plus::before,
.accordion .single-accordion-item .top .plus::after {
   content: "";
   display: block;
   position: absolute;
   height: 100%;
   width: 2px;
   background-color: var(--color-dark);
   transform: rotate(0.001deg);
}

.accordion .single-accordion-item .top .plus::after {
   transition: var(--animation-primary);
   transform: rotate(90deg);
}

.accordion .single-accordion-item .bottom {
   display: grid;
   grid-template-rows: 0fr;
   transition: var(--animation-primary);
   position: relative;
}

.accordion .single-accordion-item .bottom-wrap {
   position: relative;
   overflow: hidden;
   display: flex;
   flex-direction: column;
}

.accordion .single-accordion-item .bottom-wrap .bottom-content {
   padding-bottom: 3em;
   padding-top: 1em;
   max-width: calc(var(--title-size) * 6);
}


/* Active */

.accordion .single-accordion-item[data-accordion-status="active"] .bottom {
   grid-template-rows: 1fr;
}

.accordion .single-accordion-item[data-accordion-status="active"] .top .plus {
   transform: rotate(270deg);
}

.accordion .single-accordion-item[data-accordion-status="active"] .top .plus::after {
   transform: rotate(180deg);
}