/* YH Cinema Kit — motion & component styles. Colors follow Elementor globals when present. */
:root{
	--yh-red:var(--e-global-color-accent,#F93534);
	--yh-ink:var(--e-global-color-primary,#0B0B0B);
	--yh-paper:var(--e-global-color-secondary,#F1F0EC);
	--yh-mute:var(--e-global-color-text,#9B9993);
	--yh-mute-2:#5E5C57;
	--yh-ease:cubic-bezier(.2,.8,0,1);
	--yh-glass-bg:rgba(14,14,14,.72);
	--yh-glass-line:rgba(255,255,255,.14);
}
html,body{background:#0b0b0b}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
::selection{background:var(--yh-red);color:#fff}
[dir=rtl] .elementor *{letter-spacing:0!important}
img{max-width:100%}

/* Lenis */
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}

/* ---------- Entrance animations (Elementor → Motion Effects → "YH Cinema") ---------- */
.animated.yhRise,.animated.yhMaskRise,.animated.yhClip,.animated.yhFade{animation-timing-function:var(--yh-ease);animation-fill-mode:both}
@keyframes yhRise{from{opacity:0;transform:translate3d(0,40px,0)}to{opacity:1;transform:none}}
.yhRise{animation-name:yhRise}
@keyframes yhMaskRise{from{transform:translate3d(0,102%,0);clip-path:inset(0 -100vw 102% -100vw)}to{transform:none;clip-path:inset(-20% -100vw -20% -100vw)}}
.yhMaskRise{animation-name:yhMaskRise}
@keyframes yhClip{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes yhClipImg{from{transform:scale(1.25)}to{transform:scale(1)}}
.yhClip{animation-name:yhClip}
.animated.yhClip img{animation:yhClipImg 1.4s var(--yh-ease) both}
@keyframes yhFade{from{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:none}}
.yhFade{animation-name:yhFade}
@media (prefers-reduced-motion:reduce){.animated.yhRise,.animated.yhMaskRise,.animated.yhClip,.animated.yhFade,.animated.yhClip img{animation:none!important}}

/* ---------- Utilities ---------- */
.yh-glass,.yh-glass>.e-con-inner{backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%)}
.yh-dot .elementor-heading-title::after{content:".";color:var(--yh-red)}
.yh-nowrap .elementor-heading-title{white-space:nowrap}
.yh-cq{container-type:inline-size}
.yh-tabular,.yh-tc,.yh-pidx{font-variant-numeric:tabular-nums}
.yh-portrait img{-webkit-mask-image:linear-gradient(to top,transparent 0%,rgba(0,0,0,.4) 16%,#000 42%);mask-image:linear-gradient(to top,transparent 0%,rgba(0,0,0,.4) 16%,#000 42%);object-position:50% 0}
[dir=rtl] .yh-portrait img{transform:scaleX(-1)}
.yh-blink{animation:yhBlink 1s steps(2) infinite}
@keyframes yhBlink{50%{opacity:.2}}

/* Pill buttons with a round icon (Button widget → Advanced → CSS classes) */
.yh-pill-light .elementor-button,.yh-pill-glass .elementor-button,.yh-pill-dark .elementor-button,.yh-pill-plain .elementor-button{display:inline-flex;align-items:center;transition:background .3s,color .3s,border-color .3s}
.yh-pill-light .elementor-button-icon,.yh-pill-glass .elementor-button-icon,.yh-pill-dark .elementor-button-icon{display:grid;place-items:center;width:var(--yh-icon,34px);height:var(--yh-icon,34px);border-radius:50%;background:var(--yh-red);color:#fff;font-size:14px;line-height:1;transition:transform .45s var(--yh-ease)}
.yh-pill-light .elementor-button-icon svg,.yh-pill-glass .elementor-button-icon svg,.yh-pill-dark .elementor-button-icon svg{width:13px;height:13px;fill:currentColor}
.yh-pill-light .elementor-button:hover .elementor-button-icon,.yh-pill-glass .elementor-button:hover .elementor-button-icon,.yh-pill-dark .elementor-button:hover .elementor-button-icon{transform:rotate(45deg)}
.yh-pill-dark .elementor-button-icon{background:var(--yh-ink);color:var(--yh-paper)}
.yh-pill-glass .elementor-button{backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%)}
.yh-pill-light .elementor-button-content-wrapper,.yh-pill-glass .elementor-button-content-wrapper,.yh-pill-dark .elementor-button-content-wrapper,.yh-pill-plain .elementor-button-content-wrapper{align-items:center}

/* Social circles (Social Icons widget + class yh-socials) */
.yh-socials .elementor-social-icon{backdrop-filter:blur(22px) saturate(160%);-webkit-backdrop-filter:blur(22px) saturate(160%);transition:background .3s,color .3s}

/* ---------- Header ---------- */
.yh-header{pointer-events:none}
.yh-header>.e-con-inner>*,.yh-header>*{pointer-events:auto}
.yh-header .yh-group{pointer-events:none}
.yh-header .yh-group>*{pointer-events:auto}
.yh-nav .elementor-nav-menu--main .elementor-item{border-radius:17px;transition:background .25s,color .25s}
.yh-nav .elementor-nav-menu--main .elementor-item:hover{background:rgba(255,255,255,.1)}
.yh-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{background:rgba(255,255,255,.14);font-weight:600}
.yh-nav .elementor-nav-menu--main .elementor-item.elementor-item-anchor.elementor-item-active{background:transparent;font-weight:inherit}
.yh-nav .elementor-nav-menu--main .elementor-item:after,.yh-nav .elementor-nav-menu--main .elementor-item:before{display:none}
/* Mobile full-screen menu */
.yh-nav-mobile .elementor-menu-toggle{border-radius:23px;height:46px;padding:0 18px;width:auto;background:var(--yh-glass-bg);border:1px solid var(--yh-glass-line);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.yh-nav-mobile .elementor-menu-toggle.elementor-active+.elementor-nav-menu__container{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;max-height:none!important;margin:0!important;top:0!important;left:0!important;transform:none!important;z-index:-1;display:flex!important;flex-direction:column;justify-content:center;padding:0 15px;background:rgba(11,11,11,.72)!important;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
.yh-nav-mobile .elementor-nav-menu--dropdown a{font-size:clamp(44px,12vw,72px)!important;font-weight:500!important;line-height:1.05!important;letter-spacing:-.02em;padding:2px 0!important;background:none!important;color:var(--yh-paper)!important;justify-content:flex-start}
.yh-nav-mobile .elementor-menu-toggle.elementor-active+.elementor-nav-menu--dropdown a{animation:yhFade .5s both}

/* ---------- Typewriter ---------- */
.yh-tw{display:flex;align-items:center;white-space:nowrap;margin:0;min-height:1.05em;line-height:1}
.yh-tw__caret{display:inline-block;width:.07em;height:.8em;margin-inline-start:.08em;background:var(--yh-red);animation:yhBlink .9s steps(2) infinite;flex:none}
.yh-tw .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Marquee ---------- */
.yh-mq{overflow:hidden;width:100%}
.yh-mq__track{display:flex;width:max-content;animation:yhMq 46s linear infinite}
.yh-mq.is-reverse .yh-mq__track{animation-direction:reverse}
.yh-mq__set{display:flex}
.yh-mq__item{display:flex;align-items:center;gap:32px;padding-inline-end:32px;white-space:nowrap;letter-spacing:-.02em}
.yh-mq__item.is-bold{font-weight:600}.yh-mq__item.is-thin{font-weight:200}
.yh-mq__dot{width:12px;height:12px;border-radius:50%;background:var(--yh-red);flex:none}
@keyframes yhMq{to{transform:translateX(-50%)}}

/* ---------- Showreel / poster wall ---------- */
.yh-reel{will-change:width}
.yh-pw{position:absolute;inset:0;overflow:hidden}
.yh-pw__grid{position:absolute;inset:-10% 0;display:grid;grid-template-columns:repeat(var(--yh-cols,5),1fr);gap:10px;transform:rotate(var(--yh-tilt,-6deg)) scale(1.15)}
.yh-pw__col{overflow:hidden}
.yh-pw__strip{display:flex;flex-direction:column;gap:10px;animation:yhMqV 38s linear infinite}
.yh-pw__strip img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:6px;display:block}
.yh-pw::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 70% at 50% 50%,rgba(11,11,11,.35),var(--yh-shade,rgba(11,11,11,.85)))}
@keyframes yhMqV{to{transform:translateY(-50%)}}
.elementor-widget-yh-poster-wall{position:absolute!important;inset:0;width:100%!important;height:100%}
.elementor-widget-yh-poster-wall>.elementor-widget-container{height:100%}

/* ---------- Bio (words light up while scrolling) ---------- */
.yh-bio .yh-w{opacity:.16;transition:opacity .35s}
.yh-bio .yh-w.is-lit{opacity:1}
.elementor-editor-active .yh-bio .yh-w{opacity:1}
.yh-bio p{margin:0}

/* ---------- Discipline rows ---------- */
.yh-row{position:relative;transition:color .3s}
.yh-row .yh-row__name .elementor-heading-title{transition:font-weight .3s}
.yh-row:hover .yh-row__name .elementor-heading-title{font-weight:600}
.yh-row .yh-row__arrow .elementor-icon{transition:background .3s,color .3s}
.yh-row:hover .yh-row__arrow .elementor-icon{background:var(--yh-ink);color:var(--yh-paper);fill:var(--yh-paper)}
.yh-row:hover .yh-row__arrow .elementor-icon svg{fill:var(--yh-paper)}
.yh-row .yh-row__img{position:absolute!important;inset-inline-end:120px;top:50%;width:170px!important;z-index:2;pointer-events:none;opacity:0;transform:translateY(-50%) rotate(-4deg);clip-path:inset(100% 0 0 0);transition:clip-path .5s var(--yh-ease),opacity 0s .5s}
.yh-row:hover .yh-row__img{opacity:1;clip-path:inset(0 0 0 0);transition:clip-path .5s var(--yh-ease),opacity 0s}
.yh-row__img img{aspect-ratio:4/5;object-fit:cover;border-radius:8px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
@media (max-width:1024px){.yh-row .yh-row__img{display:none}}

/* ---------- Work cards (Loop item) ---------- */
.yh-card{cursor:pointer}
.yh-card__media{isolation:isolate}
.yh-card__media .yh-card__img{position:absolute!important;inset:0;width:100%!important;height:100%;z-index:0}
.yh-card__media .yh-card__img .elementor-widget-container,.yh-card__media .yh-card__img a{height:100%;display:block}
.yh-card__media .yh-card__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--yh-ease)!important}
.yh-card:hover .yh-card__img img{transform:scale(1.06)}
.yh-card__yt{display:none!important}
.yh-card__trailer{display:none!important}
.yh-card.has-yt .yh-card__trailer{display:block!important}
.yh-card__badges{z-index:3}
.yh-badge .elementor-heading-title{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:15px;background:rgba(18,18,18,.45);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.16);white-space:nowrap}
.yh-badge.yh-card__trailer .elementor-heading-title::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--yh-red)}
.yh-badge a{color:inherit}
.yh-preview{position:absolute;inset:0;z-index:2;background:#000;overflow:hidden;animation:yhClip .6s var(--yh-ease) both}
.yh-preview iframe{position:absolute;top:50%;left:50%;width:300%;height:100%;transform:translate(-50%,-50%);border:0;pointer-events:none}

/* Taxonomy filter pills (class yh-filters) */
.yh-filters .e-filter{gap:6px;flex-wrap:wrap}
.yh-filters .e-filter-item{height:40px;padding:0 18px!important;border-radius:20px!important;border:1px solid rgba(255,255,255,.16)!important;background:rgba(255,255,255,.06)!important;color:var(--yh-paper)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:background .25s,color .25s;font-weight:500}
.yh-filters .e-filter-item[aria-pressed=true]{background:var(--yh-paper)!important;color:var(--yh-ink)!important}
.yh-filters .e-filter-item .yh-n{opacity:.55;font-weight:400;margin-inline-start:4px}

/* ---------- Trailer ---------- */
.yh-trailer{display:flex;flex-direction:column;align-items:center;gap:20px}
.yh-trailer__frame{position:relative;width:46%;aspect-ratio:16/9;max-height:calc(100vh - 30px);border-radius:14px;overflow:hidden;background:#000}
.yh-trailer__blur{position:absolute;inset:-8%;background:var(--yh-poster) center/cover;filter:blur(28px) brightness(.4)}
.yh-trailer__poster{position:absolute;top:8%;bottom:8%;left:50%;aspect-ratio:4/5;transform:translateX(-50%);border-radius:8px;background:var(--yh-poster) center/cover;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.yh-trailer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yh-play{position:absolute;inset:0;margin:auto;width:max-content;height:64px;display:flex;align-items:center;gap:14px;padding-block:0;padding-inline:10px 28px;border-radius:32px;background:rgba(255,255,255,.12);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid rgba(255,255,255,.22);color:#fff;font:inherit;font-size:16px;font-weight:500;cursor:pointer}
.yh-play:hover{background:rgba(255,255,255,.2);color:#fff}
.yh-play[disabled]{cursor:default}
.yh-play__icon{width:44px;height:44px;border-radius:50%;background:var(--yh-red);display:grid;place-items:center;flex:none}
.yh-play__icon::after{content:"";width:0;height:0;border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
.yh-trailer__yt{display:flex;align-items:center;gap:10px;height:44px;padding:0 18px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);font-size:14px;font-weight:500;color:var(--yh-paper)}

/* ---------- Credits list ---------- */
.yh-credits{display:flex;flex-direction:column}
.yh-credits__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0;border-top:1px solid rgba(241,240,236,.14);transition:padding .4s var(--yh-ease)}
.yh-credits__row:hover{padding-inline-start:18px}
.yh-credits__row:hover .yh-credits__name{color:var(--yh-red)}
.yh-credits__name{font-size:clamp(30px,4.6vw,84px);letter-spacing:-.035em;line-height:1;font-weight:600;transition:color .3s}
.yh-credits__name.is-thin{font-weight:300}
.yh-credits__n{font-size:13px;color:var(--yh-mute)}
.yh-credits__row.is-empty{padding:22px 0;font-size:20px;color:var(--yh-mute)}

/* ---------- Project navigation ---------- */
.yh-pnav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:2px;background:#0b0b0b}
.yh-pnav__item{position:relative;min-height:46vh;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:28px 15px;overflow:hidden;color:var(--yh-paper)!important}
.yh-pnav__item.is-next{align-items:flex-end;text-align:end}
.yh-pnav__bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.38) grayscale(.4);transition:transform 1.2s var(--yh-ease),filter .6s}
.yh-pnav__item:hover .yh-pnav__bg{transform:scale(1.05);filter:brightness(.5) grayscale(0)}
.yh-pnav__label{position:relative;font-size:13px;color:#c9c7c1}
.yh-pnav__title{position:relative;font-size:clamp(36px,5vw,92px);font-weight:600;letter-spacing:-.04em;line-height:.95;text-transform:uppercase}

/* ---------- Discipline visuals ---------- */
.yh-vis{position:relative;min-height:min(78vh,760px);height:100%;border-radius:14px;overflow:hidden;background:#141414;color:#f1f0ec}
.yh-vis__cap{position:absolute;bottom:18px;left:20px;font-size:13px;color:var(--yh-mute)}
.yh-vis__tc{position:absolute;top:18px;right:20px;font-size:13px;font-weight:500;color:#f1f0ec}
.yh-tl{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:32px 0}
.yh-tl__track{display:flex;align-items:center;gap:12px;padding-left:20px}
.yh-tl__name{width:28px;font-size:12px;font-weight:500;color:var(--yh-mute);flex:none}
.yh-tl__lane{flex:1;overflow:hidden}
.yh-tl__clips{display:flex;gap:4px;width:max-content;animation:yhMq 30s linear infinite}
.yh-tl__clips span{height:54px;border-radius:4px;flex:none}
.yh-tl__track.is-audio .yh-tl__clips span{height:26px}
.yh-tl__head{position:absolute;top:0;bottom:0;left:55%;width:2px;background:var(--yh-red)}
.yh-tl__head::before{content:"";position:absolute;top:18px;left:-7px;width:16px;height:16px;background:var(--yh-red);transform:rotate(45deg)}
.yh-vis--color{background:#0b0b0b;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:40px;padding:32px}
.yh-cw{display:flex;gap:clamp(16px,3vw,40px)}
.yh-cw__item{display:flex;flex-direction:column;align-items:center;gap:14px;font-size:13px;font-weight:500}
.yh-cw__wheel{position:relative;width:clamp(90px,11vw,170px);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 90deg,#ff3b30,#ffcc00,#34c759,#32ade6,#5856d6,#ff2d55,#ff3b30);box-shadow:0 0 0 1px rgba(255,255,255,.15)}
.yh-cw__wheel::before{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#2a2a2a 0%,rgba(42,42,42,.6) 45%,transparent 72%)}
.yh-cw__puck{position:absolute;inset:0;animation:yhSpin 14s linear infinite}
.yh-cw__puck i{position:absolute;top:30%;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 10px rgba(0,0,0,.6)}
.yh-scope{width:100%;max-width:560px;height:120px;display:flex;align-items:flex-end;gap:2px;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.yh-scope span{flex:1;opacity:.8}
@keyframes yhSpin{to{transform:rotate(360deg)}}
.yh-ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.yh-ba__before.is-raw{filter:grayscale(.7) contrast(.85) brightness(.75) blur(1px)}
.yh-ba__after{animation:yhWipe var(--yh-wipe,6s) cubic-bezier(.6,0,.4,1) infinite}
.yh-ba__line{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#fff;animation:yhLine var(--yh-wipe,6s) cubic-bezier(.6,0,.4,1) infinite}
.yh-ba__line span{position:absolute;top:50%;left:-22px;width:44px;height:44px;margin-top:-22px;border-radius:50%;background:rgba(255,255,255,.18);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;font-size:13px;color:#fff}
.yh-ba__tag{position:absolute;top:18px;height:30px;line-height:30px;padding:0 12px;border-radius:15px;font-size:12px;font-weight:500;background:rgba(18,18,18,.5);backdrop-filter:blur(16px);color:#fff}
.yh-ba__tag.is-start{left:18px}.yh-ba__tag.is-end{right:18px}
.yh-ba .yh-vis__cap{color:#f1f0ec;left:18px}
@keyframes yhWipe{0%,100%{clip-path:inset(0 72% 0 0)}50%{clip-path:inset(0 18% 0 0)}}
@keyframes yhLine{0%,100%{left:28%}50%{left:82%}}
.yh-vf{background:#0b0b0b}
.yh-vf__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.75;animation:yhKen 18s ease-in-out infinite}
.yh-vf__bar{position:absolute;left:0;right:0;height:12%;background:#0b0b0b}
.yh-vf__bar.is-top{top:0}.yh-vf__bar.is-bottom{bottom:0}
.yh-vf__frame{position:absolute;inset:16% 6%}
.yh-vf__frame i{position:absolute;width:36px;height:36px;border:0 solid #fff}
.yh-vf__frame i:nth-child(1){top:0;left:0;border-top-width:2px;border-left-width:2px}
.yh-vf__frame i:nth-child(2){top:0;right:0;border-top-width:2px;border-right-width:2px}
.yh-vf__frame i:nth-child(3){bottom:0;left:0;border-bottom-width:2px;border-left-width:2px}
.yh-vf__frame i:nth-child(4){bottom:0;right:0;border-bottom-width:2px;border-right-width:2px}
.yh-vf__frame b::before,.yh-vf__frame b::after{content:"";position:absolute;top:50%;left:50%;background:#fff}
.yh-vf__frame b::before{width:28px;height:2px;margin:-1px 0 0 -14px}
.yh-vf__frame b::after{width:2px;height:28px;margin:-14px 0 0 -1px}
.yh-vf__hud{position:absolute;top:3%;left:6%;right:6%;display:flex;justify-content:space-between;font-size:13px;font-weight:500;color:#fff}
.yh-vf__hud span{display:flex;align-items:center;gap:8px}
.yh-vf__rec{width:9px;height:9px;border-radius:50%;background:var(--yh-red);animation:yhBlink 1s steps(2) infinite}
.yh-vf__slate{position:absolute;bottom:3.5%;left:6%;right:6%;height:22px;border-radius:3px;background:repeating-linear-gradient(135deg,#f1f0ec 0 14px,#0b0b0b 14px 28px);background-size:56px 56px;animation:yhSlate 1.6s linear infinite;opacity:.9}
@keyframes yhKen{0%,100%{transform:scale(1.06)}50%{transform:scale(1.16) translate(-2%,1%)}}
@keyframes yhSlate{to{background-position:56px 0}}
.elementor-widget-yh-edit-timeline,.elementor-widget-yh-color-wheels,.elementor-widget-yh-before-after,.elementor-widget-yh-viewfinder{height:100%}

/* ---------- Cursor ---------- */
.yh-cursor{position:fixed;top:0;left:0;z-index:100000;pointer-events:none;transform:translate3d(-200px,-200px,0);will-change:transform}
.yh-cursor__vf{position:absolute;left:-14px;top:-14px;width:28px;height:28px;transition:all .35s var(--yh-ease)}
.yh-cursor__vf i{position:absolute;width:8px;height:8px;border:0 solid var(--yh-red)}
.yh-cursor__vf i:nth-child(1){top:0;left:0;border-top-width:2px;border-left-width:2px}
.yh-cursor__vf i:nth-child(2){top:0;right:0;border-top-width:2px;border-right-width:2px}
.yh-cursor__vf i:nth-child(3){bottom:0;left:0;border-bottom-width:2px;border-left-width:2px}
.yh-cursor__vf i:nth-child(4){bottom:0;right:0;border-bottom-width:2px;border-right-width:2px}
.yh-cursor__label{position:absolute;inset:0;display:grid;place-items:center;font-family:'Clash Grotesk',sans-serif;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff;opacity:0;transition:opacity .2s;text-shadow:0 1px 6px rgba(0,0,0,.6);white-space:nowrap}
.yh-cursor__dot{position:absolute;left:-2.5px;top:-2.5px;width:5px;height:5px;border-radius:50%;background:var(--yh-red)}
html.yh-cursor-on,html.yh-cursor-on *{cursor:none!important}

/* ---------- Cut transition ---------- */
.yh-cut{position:fixed;inset:0;z-index:99990;pointer-events:none}
.yh-cut__p{position:absolute;left:0;right:0;height:50.5%;background:#050505;transition:transform .36s cubic-bezier(.75,0,.25,1)}
.yh-cut__p.is-top{top:0;transform:translateY(-101%)}
.yh-cut__p.is-bot{bottom:0;transform:translateY(101%)}
.yh-cut__bar{position:absolute;left:15px;right:15px;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;font-family:'Clash Grotesk',sans-serif;font-size:14px;font-weight:500;color:#f1f0ec;opacity:0;transition:opacity .15s}
.yh-cut__bar>span:first-child{display:flex;gap:8px;align-items:center}
.yh-cut__bar>span:first-child::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--yh-red)}
.yh-cut.is-closed .yh-cut__p{transform:none}
.yh-cut.is-closed .yh-cut__bar{opacity:1}
html.yh-cut-arrive body::after{content:"";position:fixed;inset:0;background:#050505;z-index:99989}
html.yh-cut-arrive.yh-cut-ready body::after{display:none}

/* ---------- Scroll progress (single project) ---------- */
.yh-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;pointer-events:none}
.yh-progress i{display:block;height:100%;width:0;background:var(--yh-red)}

/* ---------- Editor helpers ---------- */
.elementor-editor-active .yh-cut,.elementor-editor-active .yh-cursor{display:none}

/* ---------- Layout helpers used by the Elementor templates ---------- */
.yh-header{position:fixed!important;top:12px;left:15px;right:15px;width:auto!important;z-index:50}
.admin-bar .yh-header{top:44px}
.elementor-editor-active .yh-header{position:relative!important;top:0;left:0;right:0}
.yh-fill{position:absolute!important;inset:0;width:100%!important;height:100%}
.e-con.yh-reel-box{position:relative;aspect-ratio:16/9;max-height:calc(100vh - 30px);padding:0}
.yh-reel__top{top:16px;left:18px;right:18px;width:auto!important}
.yh-pill-play{--yh-icon:44px}
.yh-pill-play .elementor-button-icon svg{width:14px;height:14px;margin-left:3px}
.yh-ar45,.yh-ar45 img{aspect-ratio:4/5}
.yh-ar45 img{width:100%;height:100%;object-fit:cover}
.yh-award-img img{max-height:86vh;width:100%}
.yh-hero-photo{position:relative;height:calc(100% + 18px);aspect-ratio:941/980;max-width:54vw;margin-bottom:-18px!important;align-self:end}
.yh-hero-photo .elementor-widget-container,.yh-hero-photo img{height:100%;width:100%}
.yh-hero-photo img{object-fit:cover;object-position:50% 0}
.yh-hero{position:relative}
.yh-hero-left{min-width:0}
.yh-hero .elementor-widget-heading .elementor-heading-title{width:max-content}
@media (max-width:767px){
	.yh-hero{min-height:100svh!important}
	.yh-hero-photo{position:absolute!important;right:-12%;bottom:0;height:62%;max-width:none;width:auto;opacity:.6;z-index:0;margin:0!important}
	.yh-hero-left{z-index:2}
}
.yh-socials .elementor-grid{display:flex;gap:6px}
.yh-socials .elementor-social-icon{width:46px;height:46px;padding:0!important;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14)!important}
.yh-socials .elementor-social-icon svg{width:18px;height:18px}
.yh-lang .elementor-button{min-width:46px;height:46px;justify-content:center;padding-block:0!important}
.yh-pill-light .elementor-button{height:46px;box-shadow:0 0 0 1px rgba(241,240,236,.25)}
.yh-pill-light{--yh-icon:32px}
.yh-nav-mobile .elementor-menu-toggle::after{content:"Menu";font-size:14px;font-weight:500;margin-inline-start:8px;color:var(--yh-paper)}
.yh-nav-mobile .elementor-menu-toggle.elementor-active::after{content:"Close"}
.yh-nav-mobile .elementor-menu-toggle{position:relative;z-index:2}
.yh-row{color:inherit}
.yh-row:hover{color:inherit}
.yh-row .yh-row__arrow .elementor-icon{border-color:rgba(11,11,11,.14)!important;background:rgba(11,11,11,.04)}

.yh-ico-ne .elementor-button-icon svg{transform:rotate(-45deg)}
.yh-hero{height:100vh;min-height:560px!important}
.admin-bar .yh-hero{height:calc(100vh - 32px)}
.yh-lang .elementor-button{line-height:1;padding-top:4px!important}
@media (max-width:1099px){.yh-nav-mobile{display:block}}
@media (min-width:1100px){.yh-nav-mobile{display:none!important}}

.yh-filters .e-filter-item[data-filter="__all"]{order:0}
.yh-filters .e-filter-item[data-filter="editing"]{order:1}
.yh-filters .e-filter-item[data-filter="color-grading"]{order:2}
.yh-filters .e-filter-item[data-filter="digital-makeup"]{order:3}
.yh-filters .e-filter-item[data-filter="directing"]{order:4}
.yh-badge-lg .elementor-heading-title{height:32px;padding:0 14px;border-radius:16px;font-size:13px;background:transparent;border-color:rgba(255,255,255,.2);backdrop-filter:none}
.yh-badge-red .elementor-heading-title{background:var(--yh-red);border-color:var(--yh-red);color:#fff}
.yh-balance .elementor-heading-title{text-wrap:balance}
.yh-project-poster{justify-self:end;width:100%;max-width:640px}
.yh-project-poster img{max-height:calc(100vh - 111px);width:100%}
.yh-next{transition:background .4s}
.yh-next:hover{background:#fff!important}
.yh-pre .elementor-heading-title{white-space:pre}
.yh-project-poster{width:auto!important;max-width:min(640px,100%)}
.yh-project-poster img{height:calc(100vh - 111px);max-height:none;width:auto;max-width:100%;aspect-ratio:4/5;object-fit:cover}
@media (max-width:1099px){.yh-project-poster{justify-self:stretch}.yh-project-poster img{height:auto;width:100%}}

.yh-header>.e-con-inner,.yh-header{flex-wrap:nowrap!important}
.yh-group{width:auto!important;flex:0 0 auto!important}
@media (max-width:767px){.yh-header .yh-pill-light{display:none}.yh-header{top:10px;left:10px;right:10px}}
