/* Hero Pattern */
.hero-bg {
    background-color: #0f172a;
    background-image: linear-gradient(rgba(15, 23, 42, 0.80), rgba(15, 23, 42, 0.90)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?q=80&w=2070&auto=format&fit=crop');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;}
.hero-bg-reportage {
    background-color: #0f172a;
    background-image: linear-gradient(rgba(15, 23, 42, 0.80), rgba(15, 23, 42, 0.90)), url('/assets/REPORTAGE-01.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;}

.video-card:hover .play-icon {
    transform: scale(1.1);
    background-color: #06b6d4;
    color: white;
    border-color: #06b6d4;}

.group:hover .group-hover\:visible {
    visibility: visible;}
.group:hover .group-hover\:opacity-100 {
    opacity: 1;}
.group:hover .group-hover\:translate-y-0 {
    transform: translateY(0);}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }}

@keyframes slideFade {
    0%   { opacity: 0; }
    5%   { opacity: 1; }
    25%  { opacity: 1; }
    30%  { opacity: 0; }
    100% { opacity: 0; }
}

lite-youtube{background-color:#000;position:relative;display:block;contain:content;background-position:center;background-size:cover;cursor:pointer;max-width:100%;border-radius:1rem;overflow:hidden}
lite-youtube::before{content:'';display:block;padding-bottom:56.25%}
lite-youtube::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.35))}
lite-youtube > iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}
lite-youtube .lty-playbtn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:48px;border-radius:14px;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.35)}
lite-youtube .lty-playbtn:before{content:'';display:block;border-style:solid;border-width:12px 0 12px 20px;border-color:transparent transparent transparent rgba(255,255,255,.9);margin-left:4px}


.fade-in{opacity:0;transform:translateY(16px);transition:opacity .6s ease-out,transform .6s ease-out}
.fade-in.visible{opacity:1;transform:translateY(0)}

.badge{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04)}

.star-rating {color: #fbbf24;}
.review-card {transition: transform 0.2s ease-in-out;}
.review-card:hover {transform: translateY(-5px);}

.animate-marquee {animation: marquee 25s linear infinite;}
.section-cv {content-visibility: auto; contain-intrinsic-size: 1000px;}

.glass{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.10);backdrop-filter: blur(10px);}
.soft-shadow{box-shadow: 0 25px 60px -35px rgba(6,182,212,.35);}

.marquee{display:flex;gap:4rem;white-space:nowrap;will-change:transform;animation:marquee 22s linear infinite}

.animate-slide {opacity: 0;animation: slideFade 16s infinite;animation-fill-mode: both;}