.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}.elementor-widget.elementor-icon-list--layout-inline .elementor-widget-container,.elementor-widget:not(:has(.elementor-widget-container)) .elementor-widget-container{overflow:hidden}.elementor-widget .elementor-icon-list-items.elementor-inline-items{display:flex;flex-wrap:wrap;margin-inline:-8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-inline-item{word-break:break-word}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:8px}.elementor-widget .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{border-width:0;border-inline-start-width:1px;border-style:solid;height:100%;inset-inline-end:-8px;inset-inline-start:auto;position:relative;width:auto}.elementor-widget .elementor-icon-list-items{list-style-type:none;margin:0;padding:0}.elementor-widget .elementor-icon-list-item{margin:0;padding:0;position:relative}.elementor-widget .elementor-icon-list-item:after{inset-block-end:0;position:absolute;width:100%}.elementor-widget .elementor-icon-list-item,.elementor-widget .elementor-icon-list-item a{align-items:var(--icon-vertical-align,center);display:flex;font-size:inherit}.elementor-widget .elementor-icon-list-icon+.elementor-icon-list-text{align-self:center;padding-inline-start:5px}.elementor-widget .elementor-icon-list-icon{display:flex;inset-block-start:var(--icon-vertical-offset,initial);position:relative}.elementor-widget .elementor-icon-list-icon svg{height:var(--e-icon-list-icon-size,1em);width:var(--e-icon-list-icon-size,1em)}.elementor-widget .elementor-icon-list-icon i{font-size:var(--e-icon-list-icon-size);width:1.25em}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon{text-align:var(--e-icon-list-icon-align)}.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg{margin:var(--e-icon-list-icon-margin,0 calc(var(--e-icon-list-icon-size, 1em) * .25) 0 0)}.elementor-widget.elementor-list-item-link-full_width a{width:100%}.elementor-widget.elementor-align-center .elementor-icon-list-item,.elementor-widget.elementor-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-align-start .elementor-icon-list-item,.elementor-widget.elementor-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-align-end .elementor-icon-list-item,.elementor-widget.elementor-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-align-start) .elementor-icon-list-item:after{inset-inline-end:0}@media (min-width:-1){.elementor-widget.elementor-widescreen-align-center .elementor-icon-list-item,.elementor-widget.elementor-widescreen-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-widescreen-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-widescreen-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-widescreen-align-start .elementor-icon-list-item,.elementor-widget.elementor-widescreen-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-widescreen-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-widescreen-align-end .elementor-icon-list-item,.elementor-widget.elementor-widescreen-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-widescreen-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-widescreen-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-widescreen-align-start) .elementor-icon-list-item:after{inset-inline-end:0}}@media (max-width:-1){.elementor-widget.elementor-laptop-align-center .elementor-icon-list-item,.elementor-widget.elementor-laptop-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-laptop-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-laptop-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-laptop-align-start .elementor-icon-list-item,.elementor-widget.elementor-laptop-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-laptop-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-laptop-align-end .elementor-icon-list-item,.elementor-widget.elementor-laptop-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-laptop-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-laptop-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-laptop-align-start) .elementor-icon-list-item:after{inset-inline-end:0}.elementor-widget.elementor-tablet_extra-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet_extra-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-tablet_extra-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet_extra-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-tablet_extra-align-start .elementor-icon-list-item,.elementor-widget.elementor-tablet_extra-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-tablet_extra-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-tablet_extra-align-end .elementor-icon-list-item,.elementor-widget.elementor-tablet_extra-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-tablet_extra-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-tablet_extra-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-tablet_extra-align-start) .elementor-icon-list-item:after{inset-inline-end:0}}@media (max-width:1024px){.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-tablet-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-tablet-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-tablet-align-start .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-tablet-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-tablet-align-end .elementor-icon-list-item,.elementor-widget.elementor-tablet-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-tablet-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-tablet-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-tablet-align-start) .elementor-icon-list-item:after{inset-inline-end:0}}@media (max-width:-1){.elementor-widget.elementor-mobile_extra-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile_extra-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-mobile_extra-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile_extra-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-mobile_extra-align-start .elementor-icon-list-item,.elementor-widget.elementor-mobile_extra-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-mobile_extra-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-mobile_extra-align-end .elementor-icon-list-item,.elementor-widget.elementor-mobile_extra-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-mobile_extra-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-mobile_extra-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-mobile_extra-align-start) .elementor-icon-list-item:after{inset-inline-end:0}}@media (max-width:767px){.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item a{justify-content:center}.elementor-widget.elementor-mobile-align-center .elementor-icon-list-item:after{margin:auto}.elementor-widget.elementor-mobile-align-center .elementor-inline-items{justify-content:center}.elementor-widget.elementor-mobile-align-start .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-start .elementor-icon-list-item a{justify-content:start;text-align:start}.elementor-widget.elementor-mobile-align-start .elementor-inline-items{justify-content:start}.elementor-widget.elementor-mobile-align-end .elementor-icon-list-item,.elementor-widget.elementor-mobile-align-end .elementor-icon-list-item a{justify-content:end;text-align:end}.elementor-widget.elementor-mobile-align-end .elementor-icon-list-items{justify-content:end}.elementor-widget:not(.elementor-mobile-align-end) .elementor-icon-list-item:after{inset-inline-start:0}.elementor-widget:not(.elementor-mobile-align-start) .elementor-icon-list-item:after{inset-inline-end:0}}#left-area ul.elementor-icon-list-items,.elementor .elementor-element ul.elementor-icon-list-items,.elementor-edit-area .elementor-element ul.elementor-icon-list-items{padding:0}.elementor-widget-image-box .elementor-image-box-content{width:100%}@media (min-width:768px){.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper,.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{display:flex}.elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{flex-direction:row-reverse;text-align:end}[dir=rtl] .elementor-widget-image-box.elementor-position-right .elementor-image-box-wrapper{flex-direction:row}.elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{flex-direction:row;text-align:start}[dir=rtl] .elementor-widget-image-box.elementor-position-left .elementor-image-box-wrapper{flex-direction:row-reverse}.elementor-widget-image-box.elementor-position-top .elementor-image-box-img{margin:auto}.elementor-widget-image-box.elementor-vertical-align-top .elementor-image-box-wrapper{align-items:flex-start}.elementor-widget-image-box.elementor-vertical-align-middle .elementor-image-box-wrapper{align-items:center}.elementor-widget-image-box.elementor-vertical-align-bottom .elementor-image-box-wrapper{align-items:flex-end}}@media (max-width:767px){.elementor-widget-image-box .elementor-image-box-img{margin-inline:auto!important;margin-bottom:15px}}.elementor-widget-image-box .elementor-image-box-img{display:inline-block}.elementor-widget-image-box .elementor-image-box-img img{display:block;line-height:0}.elementor-widget-image-box .elementor-image-box-title a{color:inherit}.elementor-widget-image-box .elementor-image-box-wrapper{text-align:center}.elementor-widget-image-box .elementor-image-box-description{margin:0}.ek-drag-strip {
position: relative;
width: 100%;
overflow: hidden;
box-sizing: border-box;
user-select: none;
-webkit-user-select: none;
--ek-drag-strip-gap: 1.5rem;
--ek-strip-padding-x: 1.5rem;
--ek-strip-cards-per-view: 4.5;
}
@media (max-width: 1024px) {
.ek-drag-strip {
--ek-strip-cards-per-view: 3;
}
}
@media (max-width: 767px) {
.ek-drag-strip {
--ek-strip-cards-per-view: 1.5;
--ek-strip-padding-x: 1rem;
--ek-drag-strip-gap: 1rem;
}
}
.ek-drag-strip *,
.ek-drag-strip *::before,
.ek-drag-strip *::after {
box-sizing: inherit;
}
.ek-drag-strip__wrapper {
position: relative;
width: 100%;
padding: 2rem 0;
overflow: hidden;
background-color: rgba(16, 18, 20, 0.4);
border-top: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.08));
border-bottom: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.08));
} .ek-drag-strip__edge-fade {
position: absolute;
top: 0;
bottom: 0;
width: 4rem;
z-index: 10;
pointer-events: none;
}
@media (min-width: 768px) {
.ek-drag-strip__edge-fade {
width: 7rem;
}
}
.ek-drag-strip__edge-fade--left {
left: 0;
background: linear-gradient(to right, var(--ek-bg-elevated, #101214) 0%, transparent 100%);
}
.ek-drag-strip__edge-fade--right {
right: 0;
background: linear-gradient(to left, var(--ek-bg-elevated, #101214) 0%, transparent 100%);
} .ek-drag-strip__scroller {
position: relative;
width: 100%;
overflow-x: auto;
overflow-y: hidden;
padding-left: var(--ek-strip-padding-x, 1.5rem);
padding-right: var(--ek-strip-padding-x, 1.5rem);
cursor: grab;
scroll-behavior: auto;
scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch;
container-type: inline-size;
}
.ek-drag-strip__scroller::-webkit-scrollbar {
display: none; }
.ek-drag-strip__scroller.ek-is-dragging {
cursor: grabbing;
user-select: none;
}
.ek-drag-strip__scroller:focus-visible {
outline: 2px solid var(--ek-ink, #FFFFFF);
outline-offset: -2px;
}
.ek-drag-strip__track {
display: flex;
align-items: center;
gap: var(--ek-drag-strip-gap, 1.5rem);
width: max-content;
} .ek-drag-strip__card {
position: relative;
flex-shrink: 0;
width: calc((var(--ek-strip-width, 100cqw) - (var(--ek-strip-padding-x, 1.5rem) * 2) - (var(--ek-drag-strip-gap, 1.5rem) * (var(--ek-strip-cards-per-view, 4.5) - 1))) / var(--ek-strip-cards-per-view, 4.5));
min-width: 140px;
aspect-ratio: 16 / 10;
border-radius: 0.75rem;
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg, #08090A);
text-decoration: none;
color: inherit;
transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease, box-shadow 0.3s ease;
}
.ek-drag-strip__card:hover,
.ek-drag-strip__card:focus-visible {
transform: scale(1.02);
border-color: rgba(255, 255, 255, 0.3);
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5);
}
.ek-drag-strip__card:focus-visible {
outline: 2px solid var(--ek-ink, #FFFFFF);
outline-offset: 2px;
} .ek-drag-strip__media {
position: absolute;
inset: 0;
overflow: hidden;
}
.ek-drag-strip__media img.ek-drag-strip__img,
.elementor .ek-drag-strip__media img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
object-position: center center;
display: block;
pointer-events: none;
filter: grayscale(100%) contrast(110%);
transition: filter 0.5s cubic-bezier(0.16, 1, 0.3, 1), transform 0.5s ease;
}
.ek-drag-strip__card:hover .ek-drag-strip__img,
.ek-drag-strip__card:focus-visible .ek-drag-strip__img {
filter: grayscale(0%) contrast(100%);
} .ek-drag-strip__overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, transparent 60%);
pointer-events: none;
} .ek-drag-strip__caption {
position: absolute;
bottom: 0.5rem;
left: 0.75rem;
right: 0.75rem;
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.6875rem;
color: rgba(255, 255, 255, 0.9);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
pointer-events: none;
letter-spacing: 0.03em;
} @media (prefers-reduced-motion: reduce) {
.ek-drag-strip .ek-drag-strip__card,
.ek-drag-strip .ek-drag-strip__img {
transition-duration: 0.01ms;
transform: none;
}
}.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{display:inline-block;vertical-align:middle}.ek-hero {
position: relative;
width: 100%;
min-width: 0;
max-width: 100%;
min-height: var(--ek-hero-min-height, 100vh);
display: flex;
flex-direction: column;
justify-content: center;
overflow: hidden;
overflow-x: clip;
contain: paint;
touch-action: pan-y;
overscroll-behavior-x: none;
user-select: none;
-webkit-user-select: none;
background-color: var(--ek-hero-bg-color, #08090a);
padding-top: max(var(--ek-hero-padding-top, 6rem), calc(3.5rem + env(safe-area-inset-top)));
padding-bottom: max(var(--ek-hero-padding-bottom, 3rem), calc(1.5rem + env(safe-area-inset-bottom)));
} .ek-hero__bg-wrap {
position: absolute;
inset: 0;
z-index: 0;
overflow: hidden;
pointer-events: none;
}
.ek-hero__bg-slide {
position: absolute;
inset: 0;
opacity: 0;
transition: opacity var(--ek-hero-bg-fade-duration, 1200ms) ease-in-out;
will-change: opacity;
}
.ek-hero__bg-slide--active {
opacity: 1;
z-index: 1;
}
.ek-hero__bg-media {
width: 100%;
height: 100%;
object-fit: cover;
transform: scale(var(--ek-hero-bg-scale, 1.25));
filter: blur(var(--ek-hero-bg-blur, 48px));
opacity: var(--ek-hero-bg-opacity, 0.4);
transition: opacity 1000ms ease;
}
.ek-hero__bg-overlay-tint {
position: absolute;
inset: 0;
background-color: var(--ek-hero-bg-tint, rgba(8, 9, 10, 0.7));
mix-blend-mode: multiply;
}
.ek-hero__bg-overlay-grad {
position: absolute;
inset: 0;
background: linear-gradient(
to top,
var(--ek-hero-bg-color, #08090a) 0%,
rgba(8, 9, 10, 0.4) 15%,
transparent 40%,
transparent 78%,
rgba(8, 9, 10, 0.45) 92%,
var(--ek-hero-bg-color, #08090a) 100%
);
} .ek-hero__stage {
position: relative;
z-index: 20;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
margin: auto 0;
padding: 0 1rem;
height: var(--ek-hero-stage-height, 540px);
touch-action: pan-y;
overscroll-behavior-x: none;
} .ek-hero__track {
position: relative;
width: 100%;
max-width: 1280px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
touch-action: pan-y;
overscroll-behavior-x: none;
} .ek-hero__slide {
position: absolute;
width: var(--ek-hero-card-width, 840px);
max-width: 92vw;
aspect-ratio: var(--ek-hero-card-aspect, 16 / 10);
transform-origin: center center;
touch-action: pan-y;
overscroll-behavior-x: none;
transition: transform var(--ek-hero-transition-duration, 600ms) var(--ek-hero-transition-easing, cubic-bezier(0.16, 1, 0.3, 1)),
opacity var(--ek-hero-transition-duration, 600ms) var(--ek-hero-transition-easing, cubic-bezier(0.16, 1, 0.3, 1));
will-change: transform, opacity;
cursor: pointer;
}
.ek-hero__slide--active {
cursor: default;
z-index: 30;
}
.ek-hero__slide--hidden {
display: none;
pointer-events: none;
} .ek-hero__card-meta {
position: absolute;
top: -1.75rem;
left: 0.25rem;
right: 0.25rem;
display: flex;
align-items: center;
justify-content: space-between;
font-family: var(--ek-font-mono, monospace);
font-size: 0.75rem;
letter-spacing: 0.1em;
text-transform: uppercase;
z-index: 30;
pointer-events: none;
transition: opacity 300ms ease;
}
.ek-hero__slide:not(.ek-hero__slide--active) .ek-hero__card-meta {
opacity: 0.6;
}
.ek-hero__meta-event {
font-weight: 600;
color: var(--ek-ink, #ffffff);
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 65%;
}
.ek-hero__meta-category {
font-weight: 500;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);
} .ek-hero__card-box {
position: relative;
width: 100%;
height: 100%;
border-radius: var(--ek-hero-card-radius, 1rem);
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101216);
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.85);
}
.ek-hero__slide:hover .ek-hero__card-box {
border-color: rgba(255, 255, 255, 0.3);
}
.ek-hero__card-box img.ek-hero__card-poster,
.elementor .ek-hero__card-box img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
z-index: 5;
transition: opacity 700ms ease;
}
.ek-hero__slide--playing .ek-hero__card-poster {
opacity: 0;
pointer-events: none;
} .ek-hero__card-video {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
z-index: 4;
transition: transform 700ms ease;
}
.ek-hero__slide--active:hover .ek-hero__card-video {
transform: scale(1.03);
} .ek-hero__card-highlight {
position: absolute;
inset: 0;
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: var(--ek-hero-card-radius, 1rem);
pointer-events: none;
z-index: 20;
}
.ek-hero__card-grad {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.45) 0%, transparent 40%);
pointer-events: none;
z-index: 10;
} .ek-hero__nav-btn {
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 40;
width: var(--ek-hero-btn-size, 48px);
height: var(--ek-hero-btn-size, 48px);
border-radius: 50%;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.15));
background: rgba(16, 18, 22, 0.8);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
color: var(--ek-ink, #ffffff);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.7);
transition: background-color 300ms ease, color 300ms ease, border-color 300ms ease, transform 300ms ease;
touch-action: manipulation;
-webkit-tap-highlight-color: transparent;
}
.ek-hero__nav-btn:hover {
background-color: var(--ek-ink, #ffffff);
color: var(--ek-bg, #08090a);
border-color: var(--ek-ink, #ffffff);
transform: translateY(-50%) scale(1.05);
}
.ek-hero__nav-btn:focus-visible {
outline: none;
box-shadow: 0 0 0 3px var(--ek-ink, #ffffff);
}
.ek-hero__nav-btn--prev {
left: clamp(0.75rem, 3vw, 2.5rem);
}
.ek-hero__nav-btn--next {
right: clamp(0.75rem, 3vw, 2.5rem);
}
.ek-hero__nav-icon {
width: var(--ek-hero-icon-size, 22px);
height: var(--ek-hero-icon-size, 22px);
fill: currentColor;
pointer-events: none;
} .ek-hero__pagination-wrap {
position: relative;
z-index: 20;
width: 100%;
max-width: 1280px;
margin: 1.5rem auto 0;
padding: 0 1.5rem;
display: flex;
align-items: center;
justify-content: center;
}
.ek-hero__pagination {
display: flex;
align-items: center;
gap: 0.75rem;
background: rgba(16, 18, 22, 0.8);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
padding: 0.5rem 1rem;
border-radius: 9999px;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
}
.ek-hero__dot {
height: 8px;
border-radius: 9999px;
background-color: rgba(255, 255, 255, 0.3);
border: 0;
padding: 0;
cursor: pointer;
transition: width 300ms ease, background-color 300ms ease;
width: var(--ek-hero-dot-size, 8px);
}
.ek-hero__dot:hover {
background-color: rgba(255, 255, 255, 0.7);
}
.ek-hero__dot--active {
width: var(--ek-hero-dot-active-width, 32px);
background-color: var(--ek-ink, #ffffff);
}
.ek-hero__dot:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--ek-ink, #ffffff);
} .ek-hero__pause-btn {
margin-left: 0.5rem;
width: 20px;
height: 20px;
border: 0;
background: transparent;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: color 200ms ease;
}
.ek-hero__pause-btn:hover {
color: var(--ek-ink, #ffffff);
}
.ek-hero__pause-icon {
width: 14px;
height: 14px;
fill: currentColor;
} @media (max-width: 768px) {
.ek-hero {
min-height: 90vh;
padding-top: max(4.5rem, calc(3rem + env(safe-area-inset-top)));
padding-bottom: max(2.5rem, calc(1.5rem + env(safe-area-inset-bottom)));
}
.ek-hero__stage {
height: 380px;
}
.ek-hero__slide {
width: 90vw;
}
.ek-hero__card-meta {
top: -1.5rem;
font-size: 0.6875rem;
}
}
@media (max-width: 480px) {
.ek-hero__stage {
height: 300px;
}
} @media (prefers-reduced-transparency: reduce) {
.ek-hero__nav-btn {
background-color: #101216;
backdrop-filter: none;
-webkit-backdrop-filter: none;
border-color: rgba(255, 255, 255, 0.3);
}
.ek-hero__pagination {
background-color: #101216;
backdrop-filter: none;
-webkit-backdrop-filter: none;
border-color: rgba(255, 255, 255, 0.25);
}
.ek-hero__bg-overlay-grad {
background: linear-gradient(to top, var(--ek-hero-bg-color, #08090a) 0%, rgba(8, 9, 10, 0.85) 30%, transparent 60%, rgba(8, 9, 10, 0.85) 85%, var(--ek-hero-bg-color, #08090a) 100%);
}
}.ek-logo-marquee {
position: relative;
width: 100%;
overflow: hidden;
box-sizing: border-box;
user-select: none;
-webkit-user-select: none;
padding: 2.5rem 0;
background-color: rgba(16, 18, 20, 0.4);
border-top: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.08));
border-bottom: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.08));
}
.ek-logo-marquee *,
.ek-logo-marquee *::before,
.ek-logo-marquee *::after {
box-sizing: inherit;
} .ek-logo-marquee__edge-fade {
position: absolute;
top: 0;
bottom: 0;
width: 6rem;
z-index: 10;
pointer-events: none;
}
.ek-logo-marquee__edge-fade--left {
left: 0;
background: linear-gradient(to right, var(--ek-bg, #08090A) 0%, transparent 100%);
}
.ek-logo-marquee__edge-fade--right {
right: 0;
background: linear-gradient(to left, var(--ek-bg, #08090A) 0%, transparent 100%);
} .ek-logo-marquee__viewport {
position: relative;
width: 100%;
overflow: hidden;
display: flex;
}
.ek-logo-marquee__track {
display: flex;
align-items: center;
width: max-content;
animation: ek-marquee-scroll 28s linear infinite;
will-change: transform;
}
.ek-logo-marquee[data-direction="right"] .ek-logo-marquee__track {
animation-direction: reverse;
}
.ek-logo-marquee[data-pause-on-hover="yes"]:hover .ek-logo-marquee__track,
.ek-logo-marquee:focus-within .ek-logo-marquee__track {
animation-play-state: paused;
}
@keyframes ek-marquee-scroll {
0% {
transform: translateX(0);
}
100% {
transform: translateX(-50%);
}
} .ek-logo-marquee__item {
display: inline-flex;
align-items: center;
gap: 0.75rem;
padding: 0 2rem;
opacity: 0.65;
filter: grayscale(100%);
text-decoration: none;
color: inherit;
cursor: default;
transition: opacity 0.3s cubic-bezier(0.16, 1, 0.3, 1), filter 0.3s cubic-bezier(0.16, 1, 0.3, 1);
flex-shrink: 0;
}
@media (min-width: 640px) {
.ek-logo-marquee__item {
padding: 0 3rem;
}
}
a.ek-logo-marquee__item {
cursor: pointer;
}
.ek-logo-marquee__item:hover,
.ek-logo-marquee__item:focus-visible {
opacity: 1;
filter: grayscale(0%);
}
.ek-logo-marquee__item:focus-visible {
outline: 2px solid var(--ek-ink, #FFFFFF);
outline-offset: 4px;
border-radius: 4px;
} .ek-logo-marquee__icon-wrap {
position: relative;
width: 2rem;
height: 2rem;
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
}
.ek-logo-marquee__icon {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}
.ek-logo-marquee__icon--svg {
display: block;
width: 100%;
height: 100%;
background-color: var(--ek-logo-color, var(--ek-ink, #FFFFFF));
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: center;
mask-position: center;
-webkit-mask-size: contain;
mask-size: contain;
transition: background-color 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.ek-logo-marquee__item:hover .ek-logo-marquee__icon--svg,
.ek-logo-marquee__item:focus-visible .ek-logo-marquee__icon--svg {
background-color: var(--ek-logo-hover-color, var(--ek-logo-color, var(--ek-ink, #FFFFFF)));
} [data-theme="light"] .ek-logo-marquee[data-invert-light="yes"] img.ek-logo-marquee__icon,
.theme-light .ek-logo-marquee[data-invert-light="yes"] img.ek-logo-marquee__icon {
filter: invert(1);
} .ek-logo-marquee__details {
display: flex;
flex-direction: column;
gap: 0.125rem;
}
.ek-logo-marquee__name {
font-family: var(--ek-font-display, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
font-weight: 700;
font-size: 0.875rem;
letter-spacing: 0.04em;
color: var(--ek-ink, #F5F5F7);
line-height: 1.2;
}
.ek-logo-marquee__subtitle {
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.6875rem;
color: var(--ek-ink-muted, #8E9296);
letter-spacing: 0.02em;
line-height: 1.2;
} @media (prefers-reduced-motion: reduce) {
.ek-logo-marquee .ek-logo-marquee__track {
animation: none;
transform: none;
}
.ek-logo-marquee .ek-logo-marquee__viewport {
overflow-x: auto;
scrollbar-width: thin;
}
.ek-logo-marquee .ek-logo-marquee__item {
transition-duration: 0.01ms;
}
}.ek-process {
position: relative;
width: 100%;
min-width: 0;
max-width: 100%;
padding-top: var(--ek-process-padding-top, 6rem);
padding-bottom: var(--ek-process-padding-bottom, 8rem);
background-color: var(--ek-process-bg-color, #08090a);
border-bottom: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
}
.ek-process__container {
max-width: var(--ek-process-max-width, 1280px);
margin: 0 auto;
padding: 0 clamp(1.25rem, 4vw, 2rem);
} .ek-process__header {
max-width: 48rem;
margin-bottom: clamp(3rem, 6vw, 6rem);
}
.ek-process__eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5rem;
font-family: var(--ek-font-mono, monospace);
font-size: 0.75rem;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
margin-bottom: 0.75rem;
}
.ek-process__title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-weight: 700;
font-size: clamp(1.875rem, 4vw, 3rem);
line-height: 1.15;
letter-spacing: -0.02em;
color: var(--ek-ink, #ffffff);
margin: 0;
} .ek-process__grid {
display: grid;
grid-template-columns: 1fr;
gap: 3rem;
align-items: start;
}
@media (min-width: 1024px) {
.ek-process__grid {
grid-template-columns: repeat(12, 1fr);
gap: 4rem;
}
} .ek-process__media-col {
display: none;
}
@media (min-width: 1024px) {
.ek-process__media-col {
display: block;
grid-column: span 6;
position: sticky;
top: 8rem;
width: 100%;
aspect-ratio: var(--ek-process-media-aspect, 4 / 5);
border-radius: var(--ek-process-card-radius, 1rem);
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101216);
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.85);
}
}
.ek-process__media-slide {
position: absolute;
inset: 0;
opacity: 0;
z-index: 0;
transition: opacity 700ms cubic-bezier(0.16, 1, 0.3, 1);
pointer-events: none;
}
.ek-process__media-slide--active {
opacity: 1;
z-index: 10;
pointer-events: auto;
}
.ek-process__media-slide img.ek-process__media-img,
.elementor .ek-process__media-slide img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
}
.ek-process__media-gradient {
position: absolute;
inset: 0;
background: linear-gradient(to top, var(--ek-process-bg-color, #08090a) 0%, transparent 60%);
opacity: 0.8;
pointer-events: none;
} .ek-process__media-badge {
position: absolute;
top: 1.5rem;
left: 1.5rem;
z-index: 20;
display: flex;
align-items: center;
gap: 0.75rem;
background: rgba(0, 0, 0, 0.7);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
padding: 0.5rem 1rem;
border-radius: 9999px;
border: 1px solid rgba(255, 255, 255, 0.2);
}
.ek-process__badge-step {
font-family: var(--ek-font-mono, monospace);
font-size: 0.75rem;
font-weight: 700;
color: #ffffff;
}
.ek-process__badge-sep {
color: rgba(255, 255, 255, 0.25);
}
.ek-process__badge-title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-size: 0.75rem;
font-weight: 600;
text-transform: uppercase;
color: #ffffff;
} .ek-process__steps-col {
display: flex;
flex-direction: column;
gap: clamp(4rem, 8vw, 8rem);
}
@media (min-width: 1024px) {
.ek-process__steps-col {
grid-column: span 6;
padding: 3rem 0;
}
}
.ek-process__step-item {
position: relative;
max-width: 36rem;
cursor: pointer;
opacity: 0.35;
transform: translateX(0);
transition: opacity 500ms ease, transform 500ms ease;
}
.ek-process__step-item--active {
opacity: 1;
} .ek-process__step-header {
display: flex;
align-items: center;
gap: 1rem;
margin-bottom: 1rem;
}
.ek-process__step-num {
font-family: var(--ek-font-mono, monospace);
font-size: clamp(1.5rem, 3vw, 2rem);
font-weight: 700;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.4));
transition: color 500ms ease;
}
.ek-process__step-item--active .ek-process__step-num {
color: var(--ek-ink, #ffffff);
}
.ek-process__step-line {
height: 1px;
flex-grow: 1;
max-width: 4rem;
background-color: var(--ek-hairline, rgba(255, 255, 255, 0.15));
transition: width 500ms ease, max-width 500ms ease, background-color 500ms ease;
}
.ek-process__step-item--active .ek-process__step-line {
background-color: var(--ek-ink, #ffffff);
max-width: 6rem;
} .ek-process__step-title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-weight: 700;
font-size: clamp(1.375rem, 2.5vw, 1.875rem);
line-height: 1.25;
letter-spacing: -0.01em;
color: var(--ek-ink, #ffffff);
margin: 0 0 1rem;
}
.ek-process__step-desc {
font-family: var(--ek-font-body, "Manrope", sans-serif);
font-size: clamp(0.9375rem, 1.5vw, 1.125rem);
line-height: 1.65;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
max-width: 65ch;
margin: 0;
} .ek-process__mobile-media {
position: relative;
display: block;
margin-top: 1.5rem;
aspect-ratio: 16 / 10;
border-radius: 0.75rem;
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101216);
}
@media (min-width: 1024px) {
.ek-process__mobile-media {
display: none;
}
}
.ek-process__mobile-media img.ek-process__mobile-img,
.elementor .ek-process__mobile-media img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
}.ek-portfolio {
position: relative;
width: 100%;
min-width: 0;
max-width: 100%;
min-height: var(--ek-portfolio-min-height, 640px);
padding-top: var(--ek-portfolio-padding-top, 6rem);
padding-bottom: var(--ek-portfolio-padding-bottom, 6rem);
display: flex;
align-items: center;
overflow: hidden;
user-select: none;
-webkit-user-select: none;
background-color: var(--ek-portfolio-bg-color, #08090a);
border-bottom: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
} .ek-portfolio__bg-wrap {
position: absolute;
inset: 0;
z-index: 0;
overflow: hidden;
pointer-events: none;
}
.ek-portfolio__bg-slide {
position: absolute;
inset: 0;
opacity: 0;
transform: scale(1.05);
transition: opacity var(--ek-portfolio-transition-duration, 1000ms) cubic-bezier(0.16, 1, 0.3, 1),
transform var(--ek-portfolio-transition-duration, 1000ms) cubic-bezier(0.16, 1, 0.3, 1);
will-change: opacity, transform;
}
.ek-portfolio__bg-slide--active {
opacity: 1;
transform: scale(1);
z-index: 1;
}
.ek-portfolio__bg-slide img.ek-portfolio__bg-img,
.elementor .ek-portfolio__bg-slide img {
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
filter: grayscale(100%) contrast(125%) brightness(40%);
}
.ek-portfolio__bg-tint {
position: absolute;
inset: 0;
background-color: rgba(8, 9, 10, 0.75);
mix-blend-mode: multiply;
}
.ek-portfolio__bg-grad-x {
position: absolute;
inset: 0;
background: linear-gradient(to right, var(--ek-portfolio-bg-color, #08090a) 0%, rgba(8, 9, 10, 0.85) 50%, transparent 100%);
}
.ek-portfolio__bg-grad-y {
position: absolute;
inset: 0;
background: linear-gradient(to top, var(--ek-portfolio-bg-color, #08090a) 0%, transparent 50%, rgba(8, 9, 10, 0.8) 100%);
} .ek-portfolio__container {
position: relative;
z-index: 10;
width: 100%;
max-width: var(--ek-portfolio-max-width, 1280px);
margin: 0 auto;
padding: 0 clamp(1.25rem, 4vw, 2rem);
}
.ek-portfolio__grid {
display: grid;
grid-template-columns: 1fr;
gap: 3rem;
align-items: center;
}
@media (min-width: 1024px) {
.ek-portfolio__grid {
grid-template-columns: 5fr 7fr;
gap: 4rem;
}
} .ek-portfolio__content {
position: relative;
display: flex;
flex-direction: column;
max-width: 36rem;
}
.ek-portfolio__text-slide {
display: none;
opacity: 0;
transform: translateY(0);
}
.ek-portfolio__text-slide--active {
display: block;
opacity: 1;
animation: ekFadeInDown var(--ek-portfolio-text-duration, 500ms) cubic-bezier(0.16, 1, 0.3, 1) both;
} .ek-portfolio--anim-fade-in-down .ek-portfolio__text-slide--active {
animation-name: ekFadeInDown;
animation-duration: var(--ek-portfolio-text-duration, 500ms);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-fill-mode: both;
}
.ek-portfolio--anim-fade-in-up .ek-portfolio__text-slide--active {
animation-name: ekFadeInUp;
animation-duration: var(--ek-portfolio-text-duration, 500ms);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-fill-mode: both;
}
.ek-portfolio--anim-fade-in-left .ek-portfolio__text-slide--active {
animation-name: ekFadeInLeft;
animation-duration: var(--ek-portfolio-text-duration, 500ms);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-fill-mode: both;
}
.ek-portfolio--anim-fade-in-right .ek-portfolio__text-slide--active {
animation-name: ekFadeInRight;
animation-duration: var(--ek-portfolio-text-duration, 500ms);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-fill-mode: both;
}
.ek-portfolio--anim-fade-in .ek-portfolio__text-slide--active {
animation-name: ekFadeIn;
animation-duration: var(--ek-portfolio-text-duration, 500ms);
animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
animation-fill-mode: both;
}
.ek-portfolio--anim-none .ek-portfolio__text-slide--active {
animation: none;
opacity: 1;
transform: none;
} .ek-portfolio--stagger-yes .ek-portfolio__text-slide--active .ek-portfolio__meta {
animation: inherit;
animation-delay: 0ms;
}
.ek-portfolio--stagger-yes .ek-portfolio__text-slide--active .ek-portfolio__title {
animation: inherit;
animation-delay: 90ms;
}
.ek-portfolio--stagger-yes .ek-portfolio__text-slide--active .ek-portfolio__desc {
animation: inherit;
animation-delay: 180ms;
}
.ek-portfolio--stagger-yes .ek-portfolio__text-slide--active .ek-portfolio__actions {
animation: inherit;
animation-delay: 270ms;
}
@keyframes ekFadeInDown {
from {
opacity: 0;
transform: translateY(-24px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes ekFadeInUp {
from {
opacity: 0;
transform: translateY(24px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes ekFadeInLeft {
from {
opacity: 0;
transform: translateX(-32px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes ekFadeInRight {
from {
opacity: 0;
transform: translateX(32px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
@keyframes ekFadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
} .ek-portfolio__meta {
display: flex;
align-items: center;
gap: 0.5rem;
font-family: var(--ek-font-mono, monospace);
font-size: 0.75rem;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 1rem;
}
.ek-portfolio__index {
font-weight: 700;
color: var(--ek-ink, #ffffff);
}
.ek-portfolio__meta-divider {
color: rgba(255, 255, 255, 0.3);
}
.ek-portfolio__tag {
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
} .ek-portfolio__title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-weight: 800;
font-size: clamp(1.75rem, 4vw, 3rem);
line-height: 1.12;
letter-spacing: -0.02em;
color: var(--ek-ink, #ffffff);
margin: 0 0 1.25rem;
} .ek-portfolio__desc {
font-family: var(--ek-font-body, "Manrope", sans-serif);
font-size: clamp(0.875rem, 1.5vw, 1rem);
line-height: 1.65;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
max-width: 54ch;
margin: 0 0 1.75rem;
} .ek-portfolio__cta {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.75rem 1.5rem;
border-radius: 9999px;
background-color: var(--ek-ink, #ffffff);
color: var(--ek-bg, #08090a);
font-family: var(--ek-font-body, "Manrope", sans-serif);
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.08em;
text-transform: uppercase;
text-decoration: none;
box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5);
transition: opacity 200ms ease, transform 200ms ease;
width: fit-content;
}
.ek-portfolio__cta:hover {
opacity: 0.9;
color: var(--ek-bg, #08090a);
}
.ek-portfolio__cta-icon {
width: 1rem;
height: 1rem;
transition: transform 200ms ease;
}
.ek-portfolio__cta:hover .ek-portfolio__cta-icon {
transform: translate(2px, -2px);
}
.ek-portfolio__cta:focus-visible {
outline: none;
box-shadow: 0 0 0 3px var(--ek-ink, #ffffff);
} .ek-portfolio__pagination {
display: flex;
align-items: center;
gap: 0.5rem;
margin-top: 1.75rem;
}
.ek-portfolio__dot {
height: 8px;
border-radius: 9999px;
background-color: rgba(255, 255, 255, 0.2);
border: 0;
padding: 0;
cursor: pointer;
transition: width 300ms ease, background-color 300ms ease;
width: 8px;
}
.ek-portfolio__dot:hover {
background-color: rgba(255, 255, 255, 0.6);
}
.ek-portfolio__dot--active {
width: 32px;
background-color: var(--ek-ink, #ffffff);
}
.ek-portfolio__dot:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--ek-ink, #ffffff);
} .ek-portfolio__thumbs {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1rem;
}
@media (min-width: 640px) {
.ek-portfolio__thumbs {
grid-template-columns: repeat(3, 1fr);
}
}
.ek-portfolio__thumb-btn {
position: relative;
border-radius: 1rem;
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: rgba(16, 18, 22, 0.6);
padding: 0;
cursor: pointer;
text-align: left;
appearance: none;
-webkit-appearance: none;
opacity: 0.75;
transition: transform 300ms ease, border-color 300ms ease, box-shadow 300ms ease, opacity 300ms ease;
}
.ek-portfolio__thumb-btn:hover {
opacity: 1;
border-color: rgba(255, 255, 255, 0.3);
}
.ek-portfolio__thumb-btn--active {
opacity: 1;
border-color: var(--ek-ink, #ffffff);
box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.8);
transform: scale(1.03);
z-index: 10;
}
.ek-portfolio__thumb-btn:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--ek-ink, #ffffff);
} .ek-portfolio__thumb-media {
position: relative;
width: 100%;
aspect-ratio: 4 / 3;
overflow: hidden;
}
.ek-portfolio__thumb-media img.ek-portfolio__thumb-img,
.elementor .ek-portfolio__thumb-media img {
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
transition: transform 500ms ease;
}
.ek-portfolio__thumb-btn:hover .ek-portfolio__thumb-img {
transform: scale(1.05);
}
.ek-portfolio__thumb-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.4);
transition: background-color 300ms ease;
}
.ek-portfolio__thumb-btn--active .ek-portfolio__thumb-overlay {
background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 60%);
}
.ek-portfolio__thumb-btn:hover:not(.ek-portfolio__thumb-btn--active) .ek-portfolio__thumb-overlay {
background: rgba(0, 0, 0, 0.2);
} .ek-portfolio__thumb-footer {
padding: 0.75rem;
background-color: rgba(16, 18, 22, 0.9);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
border-top: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
}
.ek-portfolio__thumb-info {
display: flex;
align-items: center;
gap: 0.375rem;
font-family: var(--ek-font-mono, monospace);
font-size: 0.6875rem;
font-weight: 500;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: var(--ek-ink, #ffffff);
}
.ek-portfolio__thumb-idx {
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
}
.ek-portfolio__thumb-btn--active .ek-portfolio__thumb-idx {
color: var(--ek-ink, #ffffff);
font-weight: 700;
}
.ek-portfolio__thumb-bar {
margin-top: 0.375rem;
height: 2px;
border-radius: 9999px;
background-color: transparent;
width: 0;
transition: width 300ms ease, background-color 300ms ease;
}
.ek-portfolio__thumb-btn--active .ek-portfolio__thumb-bar {
background-color: var(--ek-ink, #ffffff);
width: 100%;
}.ek-gallery {
position: relative;
width: 100%;
min-width: 0;
max-width: 100%;
padding-top: var(--ek-gallery-padding-top, 6rem);
padding-bottom: var(--ek-gallery-padding-bottom, 6rem);
background-color: var(--ek-gallery-bg-color, #08090a);
border-bottom: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
overflow: hidden;
} .ek-gallery__header {
max-width: var(--ek-gallery-max-width, 1280px);
margin: 0 auto 3rem;
padding: 0 clamp(1.25rem, 4vw, 2rem);
display: flex;
flex-direction: column;
gap: 1.5rem;
}
@media (min-width: 768px) {
.ek-gallery__header {
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
}
}
.ek-gallery__title-wrap {
max-width: 42rem;
} .ek-gallery__eyebrow {
display: inline-flex;
align-items: center;
gap: 0.5rem;
font-family: var(--ek-font-mono, monospace);
font-size: 0.75rem;
letter-spacing: 0.12em;
text-transform: uppercase;
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
margin-bottom: 0.75rem;
} .ek-gallery__title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-weight: 700;
font-size: clamp(1.75rem, 4vw, 3rem);
line-height: 1.15;
letter-spacing: -0.02em;
color: var(--ek-ink, #ffffff);
margin: 0;
}
.ek-gallery__title-highlight {
color: var(--ek-ink-muted, rgba(255, 255, 255, 0.65));
display: block;
}
@media (min-width: 640px) {
.ek-gallery__title-highlight {
display: inline;
}
} .ek-gallery__nav-wrap {
display: flex;
align-items: center;
gap: 0.75rem;
align-self: flex-start;
}
@media (min-width: 768px) {
.ek-gallery__nav-wrap {
align-self: flex-end;
}
}
.ek-gallery__btn {
width: var(--ek-gallery-btn-size, 44px);
height: var(--ek-gallery-btn-size, 44px);
border-radius: 50%;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.15));
background-color: var(--ek-bg-elevated, #101216);
color: var(--ek-ink, #ffffff);
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.5);
transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease, opacity 200ms ease, transform 200ms ease;
}
.ek-gallery__btn:hover:not([aria-disabled="true"]) {
background-color: var(--ek-ink, #ffffff);
color: var(--ek-bg, #08090a);
border-color: var(--ek-ink, #ffffff);
transform: scale(1.05);
}
.ek-gallery__btn[aria-disabled="true"] {
opacity: 0.35;
cursor: not-allowed;
pointer-events: none;
}
.ek-gallery__btn:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--ek-ink, #ffffff);
}
.ek-gallery__btn-icon {
width: 1.25rem;
height: 1.25rem;
fill: currentColor;
} .ek-gallery__track {
display: flex;
gap: var(--ek-gallery-card-gap, 1.5rem);
overflow-x: auto;
scroll-snap-type: x mandatory;
scroll-behavior: smooth;
padding: 0 clamp(1.25rem, 4vw, 2rem) 1.5rem;
cursor: grab;
-webkit-overflow-scrolling: touch;
}
.ek-gallery__track:active {
cursor: grabbing;
}
.ek-gallery__track:focus-visible {
outline: none;
box-shadow: 0 0 0 2px var(--ek-ink, #ffffff);
} .ek-gallery__card {
flex-shrink: 0;
width: var(--ek-gallery-card-width, 380px);
height: var(--ek-gallery-card-height, auto);
max-width: 85vw;
scroll-snap-align: start;
position: relative;
border-radius: var(--ek-gallery-card-radius, 1rem);
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101216);
cursor: pointer;
text-decoration: none;
display: flex;
flex-direction: column;
}
@media (max-width: 768px) {
.ek-gallery__card {
width: 320px;
}
}
@media (max-width: 480px) {
.ek-gallery__card {
width: 280px;
}
} .ek-gallery__media {
position: relative;
width: 100%;
height: var(--ek-gallery-card-height, auto);
aspect-ratio: var(--ek-gallery-card-aspect, 3 / 4);
overflow: hidden;
flex: 1 1 auto;
}
.ek-gallery__media img.ek-gallery__img,
.elementor .ek-gallery__media img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
filter: grayscale(100%) contrast(125%);
transition: filter 700ms cubic-bezier(0.16, 1, 0.3, 1),
transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
will-change: filter, transform;
}
.ek-gallery__card:hover .ek-gallery__img {
filter: grayscale(0%) contrast(100%);
transform: scale(1.05);
}
.ek-gallery__overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, transparent 100%);
opacity: 0.8;
transition: opacity 500ms ease;
}
.ek-gallery__card:hover .ek-gallery__overlay {
opacity: 0.6;
} .ek-gallery__meta-wrap {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: 1.25rem;
display: flex;
flex-direction: column;
gap: 0.25rem;
z-index: 10;
}
.ek-gallery__location {
font-family: var(--ek-font-mono, monospace);
font-size: 0.6875rem;
letter-spacing: 0.08em;
text-transform: uppercase;
color: rgba(255, 255, 255, 0.8);
}
.ek-gallery__card-title {
font-family: var(--ek-font-display, "Unbounded", sans-serif);
font-weight: 700;
font-size: clamp(1rem, 2vw, 1.125rem);
line-height: 1.3;
color: #ffffff;
margin: 0;
transition: color 200ms ease;
}
.ek-gallery__card:hover .ek-gallery__card-title {
color: rgba(255, 255, 255, 0.95);
}.ek-events-grid {
position: relative;
width: 100%;
overflow: visible;
box-sizing: border-box;
}
.ek-events-grid *,
.ek-events-grid *::before,
.ek-events-grid *::after {
box-sizing: inherit;
}
.ek-events-grid__container {
width: 100%;
max-width: 1280px;
margin: 0 auto;
padding: 1.25rem 1.5rem;
} .ek-events-grid__chips {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 0.75rem;
padding: 0.75rem 0.5rem;
margin-bottom: 3.5rem;
}
.ek-events-grid__chip {
display: inline-flex;
align-items: center;
padding: 0.5rem 1.25rem;
border-radius: 9999px;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101214);
color: var(--ek-ink-muted, #8E9296);
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.8125rem;
letter-spacing: 0.05em;
text-decoration: none;
user-select: none;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
transition: color 0.25s ease, border-color 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
transform: translateZ(0);
backface-visibility: hidden;
-webkit-backface-visibility: hidden;
}
a.ek-events-grid__chip {
cursor: pointer;
}
span.ek-events-grid__chip {
cursor: default;
}
a.ek-events-grid__chip:hover,
a.ek-events-grid__chip:focus-visible {
color: var(--ek-ink, #F5F5F7);
border-color: rgba(255, 255, 255, 0.35);
background-color: rgba(255, 255, 255, 0.06);
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35);
}
a.ek-events-grid__chip:focus-visible {
outline: 2px solid var(--ek-ink, #FFFFFF);
outline-offset: 2px;
} .ek-events-grid__header {
text-align: center;
max-width: 56rem;
margin: 0 auto 3.5rem auto;
}
.ek-events-grid__title {
font-family: var(--ek-font-display, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
font-weight: 800;
font-size: clamp(1.5rem, 3.5vw, 2.25rem);
letter-spacing: -0.02em;
text-transform: uppercase;
line-height: 1.25;
color: var(--ek-ink, #F5F5F7);
margin: 0;
} .ek-events-grid__cards {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1.75rem;
width: 100%;
}
@media (max-width: 1024px) {
.ek-events-grid__cards {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1.5rem;
}
}
@media (max-width: 640px) {
.ek-events-grid__cards {
grid-template-columns: 1fr;
gap: 1.25rem;
}
} .ek-events-grid__card {
position: relative;
border-radius: 1rem;
overflow: hidden;
border: 1px solid var(--ek-hairline, rgba(255, 255, 255, 0.12));
background-color: var(--ek-bg-elevated, #101214);
aspect-ratio: 4 / 3;
display: flex;
flex-direction: column;
justify-content: space-between;
padding: 1.5rem;
text-decoration: none;
color: inherit;
transition: border-color 0.5s ease, box-shadow 0.5s ease, transform 0.5s ease;
}
@media (max-width: 640px) {
.ek-events-grid__card {
aspect-ratio: 16 / 10;
padding: 1.25rem;
}
}
.ek-events-grid__card:hover,
.ek-events-grid__card:focus-visible {
border-color: rgba(255, 255, 255, 0.4);
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.6);
}
.ek-events-grid__card:focus-visible {
outline: 2px solid var(--ek-ink, #FFFFFF);
outline-offset: 3px;
} .ek-events-grid__card-media {
position: absolute;
inset: 0;
z-index: 1;
overflow: hidden;
}
.ek-events-grid__card-media img.ek-events-grid__card-img,
.elementor .ek-events-grid__card-media img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
max-width: none;
max-height: none;
object-fit: cover;
display: block;
filter: grayscale(100%) contrast(125%);
transition: filter 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}
.ek-events-grid__card:hover .ek-events-grid__card-img,
.ek-events-grid__card:focus-visible .ek-events-grid__card-img {
filter: grayscale(0%) contrast(100%);
transform: scale(1.05);
} .ek-events-grid__card-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, rgba(0, 0, 0, 0.88) 0%, rgba(0, 0, 0, 0.42) 50%, rgba(0, 0, 0, 0.12) 100%);
opacity: 0.92;
transition: opacity 0.5s ease;
}
.ek-events-grid__card:hover .ek-events-grid__card-overlay,
.ek-events-grid__card:focus-visible .ek-events-grid__card-overlay {
opacity: 0.78;
} .ek-events-grid__card-content {
position: relative;
z-index: 2;
height: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
pointer-events: none;
} .ek-events-grid__card-top {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.5rem;
}
.ek-events-grid__badge-org {
display: inline-flex;
align-items: center;
gap: 0.625rem;
padding: 0.375rem 0.75rem;
border-radius: 9999px;
background-color: rgba(0, 0, 0, 0.75);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid rgba(255, 255, 255, 0.2);
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3);
}
.ek-events-grid__badge-icon {
width: 1rem;
height: 1rem;
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
}
.ek-events-grid__badge-icon img {
width: 100%;
height: 100%;
object-fit: contain;
display: block;
}
.ek-events-grid__badge-icon-svg {
display: block;
width: 100%;
height: 100%;
background-color: #FFFFFF;
-webkit-mask-size: contain;
mask-size: contain;
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: center;
mask-position: center;
transition: background-color 0.3s ease;
}
.ek-events-grid__badge-code {
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.75rem;
font-weight: 600;
color: #FFFFFF;
letter-spacing: 0.05em;
}
.ek-events-grid__badge-loc {
display: inline-flex;
align-items: center;
padding: 0.25rem 0.625rem;
border-radius: 9999px;
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.6875rem;
color: rgba(255, 255, 255, 0.7);
background-color: rgba(0, 0, 0, 0.6);
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
border: 1px solid rgba(255, 255, 255, 0.15);
white-space: nowrap;
} .ek-events-grid__card-bottom {
display: flex;
flex-direction: column;
gap: 0.25rem;
}
.ek-events-grid__coverage {
font-family: var(--ek-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
font-size: 0.6875rem;
color: rgba(255, 255, 255, 0.7);
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 500;
display: block;
}
.ek-events-grid__event-title {
font-family: var(--ek-font-display, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
font-size: 1.25rem;
font-weight: 700;
color: #FFFFFF;
margin: 0;
line-height: 1.3;
transition: color 0.3s ease;
}
.ek-events-grid__card:hover .ek-events-grid__event-title,
.ek-events-grid__card:focus-visible .ek-events-grid__event-title {
color: rgba(255, 255, 255, 0.95);
} @media (prefers-reduced-motion: reduce) {
.ek-events-grid .ek-events-grid__chip,
.ek-events-grid .ek-events-grid__card,
.ek-events-grid .ek-events-grid__card-img,
.ek-events-grid .ek-events-grid__card-overlay,
.ek-events-grid .ek-events-grid__event-title {
transition-duration: 0.01ms;
transform: none;
}
}.elementor-widget-divider{--divider-border-style:none;--divider-border-width:1px;--divider-color:#0c0d0e;--divider-icon-size:20px;--divider-element-spacing:10px;--divider-pattern-height:24px;--divider-pattern-size:20px;--divider-pattern-url:none;--divider-pattern-repeat:repeat-x}.elementor-widget-divider .elementor-divider{display:flex}.elementor-widget-divider .elementor-divider__text{font-size:15px;line-height:1;max-width:95%}.elementor-widget-divider .elementor-divider__element{flex-shrink:0;margin:0 var(--divider-element-spacing)}.elementor-widget-divider .elementor-icon{font-size:var(--divider-icon-size)}.elementor-widget-divider .elementor-divider-separator{direction:ltr;display:flex;margin:0}.elementor-widget-divider--view-line_icon .elementor-divider-separator,.elementor-widget-divider--view-line_text .elementor-divider-separator{align-items:center}.elementor-widget-divider--view-line_icon .elementor-divider-separator:after,.elementor-widget-divider--view-line_icon .elementor-divider-separator:before,.elementor-widget-divider--view-line_text .elementor-divider-separator:after,.elementor-widget-divider--view-line_text .elementor-divider-separator:before{border-block-end:0;border-block-start:var(--divider-border-width) var(--divider-border-style) var(--divider-color);content:"";display:block;flex-grow:1}.elementor-widget-divider--element-align-left .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-left .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-left .elementor-divider__element{margin-left:0}.elementor-widget-divider--element-align-right .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-right .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-right .elementor-divider__element{margin-right:0}.elementor-widget-divider--element-align-start .elementor-divider .elementor-divider-separator>.elementor-divider__svg:first-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-start .elementor-divider-separator:before{content:none}.elementor-widget-divider--element-align-start .elementor-divider__element{margin-inline-start:0}.elementor-widget-divider--element-align-end .elementor-divider .elementor-divider-separator>.elementor-divider__svg:last-of-type{flex-grow:0;flex-shrink:100}.elementor-widget-divider--element-align-end .elementor-divider-separator:after{content:none}.elementor-widget-divider--element-align-end .elementor-divider__element{margin-inline-end:0}.elementor-widget-divider:not(.elementor-widget-divider--view-line_text):not(.elementor-widget-divider--view-line_icon) .elementor-divider-separator{border-block-start:var(--divider-border-width) var(--divider-border-style) var(--divider-color)}.elementor-widget-divider--separator-type-pattern{--divider-border-style:none}.elementor-widget-divider--separator-type-pattern.elementor-widget-divider--view-line .elementor-divider-separator,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:after,.elementor-widget-divider--separator-type-pattern:not(.elementor-widget-divider--view-line) .elementor-divider-separator:before,.elementor-widget-divider--separator-type-pattern:not([class*=elementor-widget-divider--view]) .elementor-divider-separator{background-color:var(--divider-color);-webkit-mask-image:var(--divider-pattern-url);mask-image:var(--divider-pattern-url);-webkit-mask-repeat:var(--divider-pattern-repeat);mask-repeat:var(--divider-pattern-repeat);-webkit-mask-size:var(--divider-pattern-size) 100%;mask-size:var(--divider-pattern-size) 100%;min-height:var(--divider-pattern-height);width:100%}.elementor-widget-divider--no-spacing{--divider-pattern-size:auto}.elementor-widget-divider--bg-round{--divider-pattern-repeat:round}.rtl .elementor-widget-divider .elementor-divider__text{direction:rtl}.e-con-inner>.elementor-widget-divider,.e-con>.elementor-widget-divider{width:var(--container-widget-width,100%);--flex-grow:var( --container-widget-flex-grow )}