.films-hero{position:relative;width:100%;min-height:72vh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 5vw 5rem;overflow:hidden}.films-hero-bg{position:absolute;inset:-4%;background-image:url(https://res.cloudinary.com/blackstallionstudioswebsite/image/upload/v1772987001/DJI_0059_vlvtop.jpg);background-size:cover;background-position:center 40%;background-repeat:no-repeat;transform:scale(1.08);animation:heroZoom 20s ease-out forwards;filter:brightness(.45) saturate(.7)}.films-hero-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");background-size:180px 180px;opacity:.35;pointer-events:none;animation:grain .4s steps(1) infinite;z-index:1}.films-hero-vignette{position:absolute;inset:0;background:linear-gradient(to top,#0a0806fa,#0a080626 55%,#0a080666),linear-gradient(to right,rgba(10,8,6,.3) 0%,transparent 60%);z-index:2;pointer-events:none}.films-hero-perfs{position:absolute;left:0;right:0;height:28px;z-index:3;pointer-events:none;display:flex;align-items:center;gap:0;overflow:hidden}.films-hero-perfs--top{top:0;background:#0a0806a6}.films-hero-perfs--bottom{bottom:0;background:#0a0806a6}.films-hero-perfs:before{content:"";display:block;width:100%;height:14px;background-image:repeating-linear-gradient(90deg,transparent 0px,transparent 8px,rgba(247,243,236,.18) 8px,rgba(247,243,236,.18) 20px,transparent 20px,transparent 30px)}.films-hero-content{position:relative;z-index:4;max-width:860px}.films-hero-tag{display:inline-block;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--amber-light);opacity:.85;margin-bottom:1.4rem;padding:.3rem .8rem;border:1px solid rgba(221,158,91,.3);border-radius:2px;background:#0a080666}.films-hero-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7.5rem);font-weight:900;line-height:.92;letter-spacing:-.02em;color:var(--white);margin-bottom:1.5rem}.films-hero-title em{font-style:italic;color:var(--amber-pale);font-weight:700}.films-hero-sub{font-size:clamp(.9rem,1.4vw,1.1rem);font-weight:300;color:var(--muted);line-height:1.7;max-width:520px}.hero-corner{position:absolute;width:56px;height:56px;z-index:4;pointer-events:none}.hero-corner{top:2.5rem;left:5vw}.hero-corner--br{top:auto;left:auto;bottom:6.5rem;right:5vw;transform:rotate(90deg)}.filter-bar{display:flex;align-items:center;gap:.5rem;padding:2rem 5vw 0;flex-wrap:wrap;position:relative;z-index:5}.filter-label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:#f7f3ec4d;margin-right:.75rem}.filter-btn{background:transparent;border:1px solid rgba(156,90,20,.3);color:var(--muted);font-family:var(--font-body);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.4rem 1rem;border-radius:2px;cursor:none;transition:all .22s var(--ease-out-expo)}.filter-btn:hover,.filter-btn.active{background:var(--amber);border-color:var(--amber);color:var(--white)}.section-header{padding:4rem 5vw 0}.section-label{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--amber-light);display:block;margin-bottom:.75rem}.section-title{font-family:var(--font-display);font-size:clamp(1.8rem,3.5vw,3rem);font-weight:700;line-height:1.05;color:var(--white);margin-bottom:.5rem}.section-title em{font-style:italic;color:var(--amber-pale)}.featured-section{padding:3rem 5vw 0}.featured-frame{position:relative;border-radius:4px;overflow:hidden;background:#000;box-shadow:0 0 0 1px #9c5a1440,0 40px 80px #000000b3,0 0 120px #9c5a140f}.featured-frame:before,.featured-frame:after{content:"";position:absolute;left:0;right:0;height:0;background:#000;z-index:3;transition:height .5s var(--ease-out-expo);pointer-events:none}.featured-frame:before{top:0}.featured-frame:after{bottom:0}.featured-frame.cinema-mode:before,.featured-frame.cinema-mode:after{height:7%}.featured-embed{position:relative;width:100%;padding-bottom:56.25%;background:#000}.featured-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:none;display:block}.featured-frame .scanline{position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(156,90,20,.03) 3px,rgba(156,90,20,.03) 4px);animation:scanline-drift 8s linear infinite;opacity:0;transition:opacity .3s}@keyframes scanline-drift{0%{background-position:0 0}to{background-position:0 400px}}.featured-meta{padding:1.5rem 0 0;display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;flex-wrap:wrap}.featured-info h2{font-family:var(--font-display);font-size:clamp(1.2rem,2.2vw,1.7rem);font-weight:700;color:var(--white);margin-bottom:.4rem}.featured-info p{font-size:.88rem;font-weight:300;color:var(--muted);max-width:560px;line-height:1.65}.featured-controls{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.ctrl-btn{background:transparent;border:1px solid rgba(156,90,20,.35);color:var(--muted);font-family:var(--font-body);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.45rem 1rem;border-radius:2px;cursor:none;display:flex;align-items:center;gap:.4rem;transition:all .2s}.ctrl-btn:hover{background:#9c5a142e;border-color:var(--amber);color:var(--amber-light)}.ctrl-btn.active{background:var(--amber);border-color:var(--amber);color:var(--white)}.videos-section{padding:4rem 5vw 6rem}.videos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:2rem;margin-top:2.5rem}.video-card{background:var(--surface);border:1px solid rgba(156,90,20,.15);border-radius:4px;overflow:hidden;cursor:none;transition:transform .35s var(--ease-out-expo),border-color .25s,box-shadow .35s;position:relative}.video-card:hover{transform:translateY(-6px);border-color:#9c5a1473;box-shadow:0 20px 48px #00000080,0 0 0 1px #9c5a1426,0 0 40px #9c5a1412}.video-card.is-featured{border-color:#dd9e5b66;box-shadow:0 0 0 1px #dd9e5b33,0 0 30px #9c5a141a}.card-thumb{position:relative;width:100%;padding-bottom:56.25%;overflow:hidden;background:#000}.card-thumb img{z-index:0;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease-out-expo),filter .4s;filter:brightness(.85) saturate(.9)}.video-card:hover .card-thumb img{transform:scale(1.06);filter:brightness(.95) saturate(1.05)}.card-thumb-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,6,.7) 0%,transparent 50%);z-index:1;transition:background .3s}.video-card:hover .card-thumb-overlay{background:linear-gradient(to top,#0a080680,#0a080626 50%)}.play-btn{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0}.play-circle{width:56px;height:56px;border-radius:50%;background:#0a0806a6;border:1.5px solid rgba(221,158,91,.6);display:flex;align-items:center;justify-content:center;transform:scale(.85);opacity:0;transition:transform .3s var(--ease-out-expo),opacity .3s,background .2s,border-color .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.play-circle svg{width:22px;height:22px;fill:var(--amber-light);margin-left:3px}.video-card:hover .play-circle{transform:scale(1);opacity:1}.video-card:hover .play-circle:hover{background:var(--amber);border-color:var(--amber)}.video-card:hover .play-circle:hover svg{fill:var(--white)}.card-duration{position:absolute;bottom:.6rem;right:.75rem;z-index:3;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;color:var(--white);background:#0a0806b3;padding:.2rem .5rem;border-radius:2px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.card-badge{position:absolute;top:.75rem;left:.75rem;z-index:3;font-family:var(--font-mono);font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;padding:.22rem .6rem;border-radius:2px;border:1px solid}.card-badge--film{color:#c8a97e;border-color:#c8a97e66;background:#0a080699}.card-badge--cinema{color:#7fb3c5;border-color:#7fb3c566;background:#0a080699}.card-badge--nature{color:#7ebfae;border-color:#7ebfae66;background:#0a080699}.card-badge--aerial{color:#a09ecc;border-color:#a09ecc66;background:#0a080699}.card-badge--music{color:#dd9e5b;border-color:#dd9e5b66;background:#0a080699}.card-badge--complimentary{color:#d8927c;border-color:#d8927c66;background:#0a080699}.card-badge--projects{color:#f0c674;border-color:#f0c67466;background:#0a080699}.card-body{padding:1.1rem 1.25rem 1.25rem}.card-meta-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.card-date{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.12em;color:#f7f3ec4d}.card-title{font-family:var(--font-display);font-size:clamp(1rem,1.5vw,1.15rem);font-weight:700;color:var(--white);line-height:1.25;margin-bottom:.5rem;transition:color .2s}.video-card:hover .card-title{color:var(--amber-pale)}.card-desc{font-size:.8rem;font-weight:300;color:var(--muted);line-height:1.6;margin-bottom:1rem}.card-action{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-body);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--amber-light);background:none;border:none;padding:0;cursor:none;transition:gap .2s,color .2s}.card-action:hover{color:var(--amber-pale);gap:.7rem}.card-action svg{width:14px;height:14px;transition:transform .2s var(--ease-out-expo)}.card-action:hover svg{transform:translate(3px)}.modal-backdrop{position:fixed;inset:0;z-index:10000;background:#060503eb;-webkit-backdrop-filter:blur(18px) saturate(120%);backdrop-filter:blur(18px) saturate(120%);display:flex;align-items:center;justify-content:center;padding:2rem;opacity:0;pointer-events:none;transition:opacity .35s var(--ease-out-expo)}.modal-backdrop.open{opacity:1;pointer-events:all}.modal-inner{position:relative;width:100%;max-width:960px;transform:scale(.92) translateY(20px);transition:transform .4s var(--ease-out-expo)}.modal-backdrop.open .modal-inner{transform:scale(1) translateY(0)}.modal-letterbox{position:relative;overflow:hidden;border-radius:4px;background:#000;box-shadow:0 0 0 1px #9c5a144d,0 60px 120px #000c}.modal-embed{position:relative;width:100%;padding-bottom:56.25%}.modal-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:none}.modal-perfs-l,.modal-perfs-r{position:absolute;top:0;bottom:0;width:24px;z-index:2;pointer-events:none;background:#080604d9;display:flex;flex-direction:column;gap:0;overflow:hidden}.modal-perfs-l{left:-24px}.modal-perfs-r{right:-24px}.modal-perfs-l:before,.modal-perfs-r:before{content:"";display:block;width:100%;height:100%;background-image:repeating-linear-gradient(180deg,transparent 0px,transparent 8px,rgba(247,243,236,.14) 8px,rgba(247,243,236,.14) 20px,transparent 20px,transparent 30px)}.modal-info{padding:1.25rem 0 0;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.modal-title{font-family:var(--font-display);font-size:clamp(1.1rem,2vw,1.5rem);font-weight:700;color:var(--white)}.modal-desc{font-size:.82rem;font-weight:300;color:var(--muted);margin-top:.3rem}.modal-close{background:#f7f3ec14;border:1px solid rgba(247,243,236,.18);color:var(--muted);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:none;flex-shrink:0;transition:background .2s,border-color .2s,color .2s}.modal-close:hover{background:#9c5a1440;border-color:var(--amber);color:var(--amber-light)}.modal-hint{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.12em;color:#f7f3ec33;text-align:center;margin-top:.75rem}.reel-counter{display:flex;align-items:center;gap:1.5rem;padding:0 5vw;margin-top:2.5rem}.reel-num{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);font-weight:900;color:transparent;-webkit-text-stroke:1px rgba(156,90,20,.4);line-height:1}.reel-label{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.reel-divider{flex:1;height:1px;background:linear-gradient(to right,rgba(156,90,20,.3),transparent)}.reveal-scroll{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.reveal-scroll.in-view{opacity:1;transform:translateY(0)}.ambient-glow{position:absolute;width:600px;height:300px;border-radius:50%;background:radial-gradient(ellipse,rgba(156,90,20,.12) 0%,transparent 70%);pointer-events:none;filter:blur(60px);top:50%;left:50%;transform:translate(-50%,-50%);z-index:0}.stats-strip{background:var(--mid);border-top:1px solid rgba(156,90,20,.15);border-bottom:1px solid rgba(156,90,20,.15);padding:1.5rem 5vw;display:flex;align-items:center;justify-content:space-around;flex-wrap:wrap;gap:2rem;margin-top:4rem}.stat-item{text-align:center}.stat-num{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.6rem);font-weight:900;color:var(--amber-pale);line-height:1;display:block}.stat-label{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:#f7f3ec59;display:block;margin-top:.35rem}.quote-break{padding:5rem 5vw;display:flex;align-items:center;gap:3vw}.quote-break:before{content:"";flex-shrink:0;width:60px;height:1px;background:linear-gradient(to right,transparent,var(--amber))}.quote-break blockquote{font-family:var(--font-display);font-size:clamp(1rem,2vw,1.5rem);font-style:italic;font-weight:400;color:#f7f3ec80;line-height:1.5;border:none}.quote-break blockquote em{color:var(--amber-pale);font-style:normal}.no-results{text-align:center;padding:4rem 2rem;display:none}.no-results.visible{display:block}.no-results p{font-family:var(--font-display);font-size:1.4rem;font-style:italic;color:#f7f3ec40}@media(max-width:768px){.featured-controls{width:100%}.modal-perfs-l,.modal-perfs-r{display:none}.reel-counter{flex-wrap:wrap}.videos-grid{grid-template-columns:1fr}}@media(max-width:640px){.films-hero{min-height:60vh;padding:0 1.5rem 4rem}.filter-bar{padding:1.5rem 1.5rem 0}.section-header{padding:3rem 1.5rem 0}.featured-section{padding:2rem 1.5rem 0}.videos-section{padding:3rem 1.5rem 5rem}.stats-strip{padding:1.5rem}.quote-break{padding:3rem 1.5rem}.reel-counter{padding:0 1.5rem}}
