:root{--bg:#080a09;--bg2:#0d100f;--text:#efede7;--muted:#a8aaa5;--line:rgba(255,255,255,.17);--soft:rgba(255,255,255,.07)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Montserrat,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.film-page{min-height:100vh;background:radial-gradient(circle at 25% -15%,rgba(255,255,255,.07),transparent 28%),#070908}.film-header{height:72px;padding:0 clamp(28px,4.7vw,72px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);position:relative;z-index:20;background:rgba(7,9,8,.91);backdrop-filter:blur(15px)}.brand{display:flex;flex-direction:column;width:max-content}.brand strong{font-family:"Cormorant Garamond",serif;font-size:21px;letter-spacing:.12em}.brand span{font-size:7px;letter-spacing:.39em;color:#92958f;margin-top:2px}.film-nav{display:flex;gap:34px;align-items:center;height:100%}.film-nav a{position:relative;font-size:10px;letter-spacing:.08em;color:#d8d8d5}.film-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:-12px;height:1px;background:white;transition:.25s}.film-nav a:hover::after,.film-nav a.active::after{left:15%;right:15%}.home-link{justify-self:end;font-size:10px;letter-spacing:.15em;color:#b7b8b3}.film-hero{height:360px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero-bg{position:absolute;inset:0;background:url('assets/film.jpg') center 43%/cover no-repeat;filter:grayscale(.55) contrast(1.08);transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,7,6,.96) 0%,rgba(4,7,6,.69) 38%,rgba(4,7,6,.22) 66%,rgba(4,7,6,.72) 100%),linear-gradient(0deg,rgba(4,7,6,.72),transparent 45%)}.hero-copy{position:absolute;left:clamp(28px,4.7vw,72px);top:63px}.eyebrow{font-size:9px;letter-spacing:.34em;color:#a9aca6;margin:0 0 15px}.hero-copy h1{font-family:"Cormorant Garamond",serif;font-size:76px;font-weight:500;letter-spacing:.02em;line-height:.8;margin:0}.hero-lead{font-family:"Cormorant Garamond",serif;font-size:17px;margin:20px 0;color:#deded9}.hero-note{margin-top:23px;display:flex;align-items:flex-start;gap:13px}.hero-note span{width:33px;height:1px;background:#9b9d96;margin-top:6px}.hero-note p{font-size:7px;line-height:1.75;letter-spacing:.34em;color:#92968f;margin:0}.hero-side{position:absolute;right:4.8vw;bottom:37px;text-align:right;font-size:8px;line-height:1.9;letter-spacing:.34em;color:#acafa9;border-right:1px solid #7a7d77;padding-right:15px}.work-section{width:100%;max-width:100vw;min-width:0;padding:20px clamp(24px,3.8vw,64px) 26px;overflow-x:hidden}.filter-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.filters{display:flex;gap:34px}.filter{border:0;background:none;color:#aaa;font-family:"Cormorant Garamond",serif;font-size:18px;padding:4px 0;cursor:pointer;position:relative}.filter::after{content:"";position:absolute;height:1px;left:50%;right:50%;bottom:0;background:#fff;transition:.25s}.filter.active{color:#fff}.filter.active::after,.filter:hover::after{left:0;right:0}.project-count{font-size:8px;letter-spacing:.29em;color:#878a85;display:flex;align-items:center;gap:12px}.project-count i{display:block;width:30px;height:1px;background:#757972}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px;width:100%;max-width:100%;min-width:0}.project-card{width:100%;min-width:0;aspect-ratio:420/190;position:relative;overflow:hidden;background:#171a18;border:1px solid rgba(255,255,255,.035);transition:transform .35s ease,border-color .35s ease}.project-card img{width:100%;max-width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.86);transition:transform .6s ease,filter .6s}.project-card:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.16)}.project-card:hover img{transform:scale(1.025);filter:saturate(1)}.project-card.is-hidden{display:none}.featured{margin:0 clamp(28px,4.7vw,72px) 42px;border:1px solid var(--line);display:grid;grid-template-columns:1.25fr .65fr .38fr;min-height:205px}.featured-media{position:relative;overflow:hidden;display:block}.featured-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.featured-copy{padding:28px 32px;align-self:center}.featured-copy h2{font:500 38px/1 "Cormorant Garamond",serif;margin:0 0 12px}.featured-copy>p:not(.eyebrow){font:400 15px/1.45 "Cormorant Garamond",serif;color:#c3c5c0}.outline-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid #bbb;background:transparent;color:#eee;padding:12px 16px;font:500 15px "Cormorant Garamond",serif;margin-top:8px;cursor:pointer;transition:.25s}.outline-btn:hover{background:#eee;color:#090b0a}.featured blockquote{align-self:center;border-left:1px solid #858781;margin:0 24px 0 0;padding:15px 0 15px 26px;font:italic 14px/1.45 "Cormorant Garamond",serif;color:#b7bab4}.film-footer{border-top:1px solid var(--line);min-height:82px;padding:22px clamp(28px,4.7vw,72px);display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;color:#8f928d}.film-footer>div:first-child{display:flex;flex-direction:column}.film-footer strong{font:500 17px "Cormorant Garamond",serif;letter-spacing:.12em;color:#ddd}.film-footer span{font-size:8px;letter-spacing:.2em;margin-top:3px}.film-footer p{font-size:7px;letter-spacing:.28em;display:flex;align-items:center;gap:18px;justify-content:center}.film-footer p i{width:29px;height:1px;background:#777}.footer-links{justify-self:end;display:flex;gap:24px}.footer-links a{font-size:7px;letter-spacing:.14em}.project-main{padding:24px clamp(28px,3.4vw,48px) 0}.project-intro{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(300px,.9fr);gap:40px}.video-shell{aspect-ratio:1.94/1;position:relative;overflow:hidden;background:#111}.video-shell>img{width:100%;height:100%;object-fit:cover;display:block}.video-shell::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 32%);pointer-events:none}.video-play{position:absolute;z-index:4;left:50%;top:48%;transform:translate(-50%,-50%);width:66px;height:66px;border:1.5px solid white;border-radius:50%;background:rgba(0,0,0,.18);color:white;font-size:23px;padding-left:6px;cursor:pointer}.fake-controls{position:absolute;z-index:5;left:0;right:0;bottom:0;height:50px;display:flex;align-items:center;gap:18px;padding:0 22px;background:rgba(0,0,0,.24);font-size:10px}.fake-controls i{height:4px;border-radius:4px;background:linear-gradient(90deg,#c7c7c7 0 2%,#666 2%);flex:1}.project-info{padding-top:12px}.project-info h1{font:500 48px/1 "Cormorant Garamond",serif;margin:25px 0 18px}.detail-meta{font-size:8px;letter-spacing:.29em;color:#a8aaa6}.intro-copy{font:400 21px/1.35 "Cormorant Garamond",serif;margin:30px 0 26px}.project-info dl{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0}.project-info dl div{display:grid;grid-template-columns:1fr 1.25fr;gap:20px;margin:8px 0}.project-info dt,.project-info dd{font:400 14px "Cormorant Garamond",serif;color:#b8bbb5;margin:0}.project-actions{display:flex;align-items:center;justify-content:space-between}.project-actions a{font:400 14px "Cormorant Garamond",serif;color:#c1c2be}.frames-section{padding:37px 0 20px}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:13px}.section-title h2{font:500 31px "Cormorant Garamond",serif;margin:0}.section-title span{font-size:7px;letter-spacing:.27em;color:#9a9d97;display:flex;align-items:center;gap:16px}.section-title span i{width:28px;height:1px;background:#777}.frames-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.frames-grid figure{margin:0}.frames-grid img{width:100%;aspect-ratio:1.92/1;object-fit:cover;display:block}.frames-grid figcaption{font-size:7px;letter-spacing:.27em;color:#9c9f99;margin-top:10px}.story-section{padding:20px 0 40px;display:grid;grid-template-columns:.9fr 1.7fr .85fr;gap:50px;align-items:center}.story-section h2{font:500 42px/1 "Cormorant Garamond",serif;margin:0}.story-section>p{font:400 17px/1.55 "Cormorant Garamond",serif;color:#b9bbb6}.story-section blockquote{border-left:1px solid #858781;padding:12px 0 12px 28px;margin:0;font:italic 15px/1.45 "Cormorant Garamond",serif;color:#aeb1ab}
@media(max-width:1366px){.work-section{padding-left:24px;padding-right:24px}.project-grid{gap:16px 14px}.filters{gap:28px}.filter{font-size:17px}}
@media(max-width:1000px){.film-header{grid-template-columns:1fr auto}.film-nav{display:none}.project-grid{grid-template-columns:repeat(2,1fr)}.featured{grid-template-columns:1fr 1fr}.featured blockquote{display:none}.project-intro{grid-template-columns:1fr}.project-info{padding:5px 0}.frames-grid{grid-template-columns:repeat(2,1fr)}.story-section{grid-template-columns:1fr 1.7fr}.story-section blockquote{grid-column:1/-1}.film-footer{grid-template-columns:1fr 1fr}.film-footer p{display:none}}
@media(max-width:680px){.film-header{height:62px;padding:0 20px}.brand strong{font-size:18px}.brand span{display:none}.film-hero{height:335px}.hero-copy{left:22px;top:62px}.hero-copy h1{font-size:64px}.hero-lead{font-size:16px;max-width:290px}.hero-side{display:none}.work-section{padding:18px 20px}.filter-row{align-items:flex-start;gap:20px}.filters{gap:14px;overflow:auto;padding-bottom:8px}.filter{font-size:16px;white-space:nowrap}.project-count{display:none}.project-grid{grid-template-columns:1fr;gap:18px}.project-card{aspect-ratio:420/190}.featured{margin:0 20px 32px;grid-template-columns:1fr}.featured-media{min-height:190px}.featured-copy{padding:23px}.film-footer{padding:22px 20px;grid-template-columns:1fr}.footer-links{display:none}.project-main{padding:18px 20px 0}.project-intro{gap:18px}.project-info h1{font-size:42px}.intro-copy{font-size:19px}.frames-grid{grid-template-columns:1fr 1fr;gap:8px}.story-section{grid-template-columns:1fr;gap:16px}.story-section h2{font-size:38px}.section-title span{display:none}}

/* WEDDING FILM LIBRARY — V1.3 */
.wedding-library[hidden],.project-grid[hidden]{display:none!important}.wedding-library{padding:8px 0 12px}.wedding-head{display:grid;grid-template-columns:1fr minmax(300px,.72fr);gap:40px;align-items:end;padding:14px 0 25px;border-bottom:1px solid var(--line)}.wedding-head .eyebrow{margin-bottom:8px}.wedding-head h2{font:500 38px/1.04 "Cormorant Garamond",serif;margin:0;color:#eee}.wedding-intro{font:400 16px/1.45 "Cormorant Garamond",serif;color:#aeb1ab;margin:0;max-width:500px;justify-self:end}.wedding-subfilters{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.wedding-subfilters::-webkit-scrollbar{display:none}.wedding-subfilter{border:0;border-right:1px solid var(--line);background:transparent;color:#8f928d;padding:17px 30px 15px 0;margin-right:30px;font:500 16px "Cormorant Garamond",serif;white-space:nowrap;cursor:pointer;position:relative}.wedding-subfilter:last-child{border-right:0}.wedding-subfilter::after{content:"";height:1px;position:absolute;left:0;right:100%;bottom:-1px;background:#f0eee8;transition:.25s}.wedding-subfilter.active{color:#f1efe9}.wedding-subfilter.active::after,.wedding-subfilter:hover::after{right:30px}.wedding-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;padding-top:24px}.wedding-video-card{min-width:0}.wedding-video-frame{aspect-ratio:16/9;position:relative;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.06)}.wedding-video-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.8) brightness(.84);transition:transform .55s ease,filter .55s ease}.wedding-video-card:hover .wedding-video-frame img{transform:scale(1.025);filter:saturate(.95) brightness(.9)}.wedding-video-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 42%),rgba(0,0,0,.05)}.wedding-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;border:1px solid rgba(255,255,255,.86);background:rgba(8,10,9,.28);color:#fff;cursor:pointer;display:grid;place-items:center;transition:.25s}.wedding-play span{font-size:17px;margin-left:3px}.wedding-video-card:hover .wedding-play{background:rgba(240,238,232,.92);color:#0b0d0c}.video-status{position:absolute;right:14px;bottom:13px;font-size:7px;letter-spacing:.24em;color:#c6c7c3;background:rgba(7,9,8,.6);padding:7px 8px;border:1px solid rgba(255,255,255,.12)}.wedding-video-meta{display:flex;justify-content:space-between;gap:20px;padding:12px 2px 0}.wedding-video-meta h3{font:500 23px/1.05 "Cormorant Garamond",serif;margin:0;color:#eee}.wedding-video-meta p{font-size:7px;letter-spacing:.25em;color:#8d908a;margin:5px 0 0}.wedding-video-meta>span{font:400 13px "Cormorant Garamond",serif;color:#969994;white-space:nowrap}.wedding-video-frame iframe{width:100%;height:100%;border:0;display:block}.wedding-manage-note{text-align:right;font-size:7px;letter-spacing:.25em;color:#737670;margin:24px 0 0}.empty-wedding{grid-column:1/-1;border:1px solid var(--line);padding:55px;text-align:center;font:400 17px "Cormorant Garamond",serif;color:#858984}
@media(max-width:1000px){.wedding-head{grid-template-columns:1fr}.wedding-intro{justify-self:start}.wedding-video-grid{grid-template-columns:1fr 1fr}.wedding-subfilter{padding-right:22px;margin-right:22px}}
@media(max-width:680px){.wedding-head{gap:12px;padding-top:6px}.wedding-head h2{font-size:32px}.wedding-intro{font-size:15px}.wedding-subfilter{font-size:15px;padding-right:18px;margin-right:18px}.wedding-video-grid{grid-template-columns:1fr;gap:22px;padding-top:18px}.wedding-video-meta h3{font-size:22px}.wedding-play{width:56px;height:56px}.wedding-manage-note{text-align:left;line-height:1.6}}

/* =========================================================
   WEDDING FILM LIBRARY — V1.4
   Airier cinematic layout · warm light accents · 3-up desktop
   ========================================================= */
:root{
  --film-warm:#c6aa86;
  --film-warm-soft:rgba(198,170,134,.18);
  --film-cool-soft:rgba(111,139,146,.12);
  --film-panel:rgba(255,255,255,.025);
}

/* Soften the pure-black feeling without changing the BÙI STUDIO identity */
.film-page{
  background:
    radial-gradient(900px 520px at 82% 43%,rgba(124,145,143,.09),transparent 65%),
    radial-gradient(780px 480px at 16% 74%,rgba(194,154,111,.075),transparent 68%),
    linear-gradient(180deg,#090b0a 0%,#0d0f0e 50%,#0a0c0b 100%);
}
.work-section{
  position:relative;
  padding-top:26px;
  padding-bottom:52px;
}
.work-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 240px);
}
.filter-row,.wedding-library,.project-grid{position:relative;z-index:1}

.wedding-library{
  position:relative;
  padding:24px clamp(4px,1vw,14px) 46px;
  isolation:isolate;
}
.wedding-library::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:-8%;
  top:90px;
  width:55%;
  height:420px;
  pointer-events:none;
  background:radial-gradient(circle at 30% 35%,rgba(203,168,124,.11),rgba(203,168,124,.035) 38%,transparent 72%);
  filter:blur(12px);
}
.wedding-library::after{
  content:"";
  position:absolute;
  z-index:-1;
  right:-8%;
  top:260px;
  width:48%;
  height:390px;
  pointer-events:none;
  background:radial-gradient(circle at 65% 40%,rgba(105,139,147,.09),transparent 70%);
  filter:blur(14px);
}

.wedding-head{
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);
  gap:72px;
  align-items:end;
  padding:20px 8px 34px;
  border-bottom:1px solid rgba(255,255,255,.11);
}
.wedding-head .eyebrow{
  color:#bda789;
  margin-bottom:10px;
}
.wedding-head h2{
  font-size:42px;
  color:#f3f0e9;
  letter-spacing:.005em;
}
.wedding-intro{
  max-width:430px;
  color:#b9b9b2;
  font-size:17px;
  line-height:1.6;
  padding-bottom:2px;
}

.wedding-subfilters{
  gap:12px;
  padding:18px 4px 20px;
  border-bottom:0;
  overflow-x:auto;
}
.wedding-subfilter{
  border:1px solid rgba(255,255,255,.105);
  border-radius:999px;
  background:rgba(255,255,255,.018);
  color:#a7aaa4;
  padding:10px 18px 11px;
  margin:0;
  font-size:15px;
  line-height:1;
  transition:background .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.wedding-subfilter:last-child{border-right:1px solid rgba(255,255,255,.105)}
.wedding-subfilter::after{display:none}
.wedding-subfilter:hover{
  color:#e9e3da;
  border-color:rgba(198,170,134,.42);
  background:rgba(198,170,134,.055);
}
.wedding-subfilter.active{
  color:#f6efe5;
  border-color:rgba(198,170,134,.55);
  background:linear-gradient(135deg,rgba(198,170,134,.12),rgba(255,255,255,.035));
  box-shadow:0 0 24px rgba(198,170,134,.065),inset 0 0 18px rgba(255,255,255,.018);
}

.wedding-video-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:42px 30px;
  padding:26px 4px 8px;
}
.wedding-video-card{
  min-width:0;
  padding:10px;
  border:1px solid rgba(255,255,255,.075);
  background:linear-gradient(155deg,rgba(255,255,255,.036),rgba(255,255,255,.012));
  box-shadow:0 14px 34px rgba(0,0,0,.16);
  transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease,background .35s ease;
}
.wedding-video-card:hover{
  transform:translateY(-5px);
  border-color:rgba(198,170,134,.28);
  background:linear-gradient(155deg,rgba(198,170,134,.055),rgba(255,255,255,.016));
  box-shadow:0 20px 46px rgba(0,0,0,.24),0 0 28px rgba(198,170,134,.045);
}
.wedding-video-frame{
  aspect-ratio:16/9;
  border:0;
  background:#171916;
  overflow:hidden;
}
.wedding-video-frame img{
  filter:saturate(.92) brightness(.91) contrast(1.02);
  transform:scale(1.002);
}
.wedding-video-card:hover .wedding-video-frame img{
  transform:scale(1.035);
  filter:saturate(1.04) brightness(.98) contrast(1.02);
}
.wedding-video-shade{
  background:
    linear-gradient(180deg,rgba(245,222,191,.035),transparent 38%),
    linear-gradient(0deg,rgba(5,7,6,.32),transparent 46%);
}
.wedding-play{
  width:52px;
  height:52px;
  border-color:rgba(255,255,255,.78);
  background:rgba(12,13,12,.30);
  box-shadow:0 0 0 6px rgba(255,255,255,.018),0 7px 24px rgba(0,0,0,.22);
  backdrop-filter:blur(4px);
}
.wedding-video-card:hover .wedding-play{
  background:rgba(239,227,211,.94);
  color:#151512;
  border-color:rgba(239,227,211,.95);
  box-shadow:0 0 28px rgba(210,177,135,.20);
}
.wedding-video-card.is-placeholder .wedding-play{display:none}
.video-status{
  right:12px;
  bottom:11px;
  color:#d4cabd;
  background:rgba(13,14,13,.64);
  border:1px solid rgba(198,170,134,.22);
  backdrop-filter:blur(5px);
}
.wedding-video-meta{
  padding:17px 4px 5px;
  align-items:flex-start;
}
.wedding-video-meta h3{
  font-size:22px;
  color:#f0ede7;
}
.wedding-video-meta p{
  margin-top:7px;
  color:#a99a88;
  letter-spacing:.22em;
}
.wedding-video-meta>span{
  padding-top:2px;
  color:#8f938d;
}
.wedding-manage-note{
  margin:38px 4px 0;
  color:#777b75;
}
.empty-wedding{
  border-color:rgba(255,255,255,.09);
  background:rgba(255,255,255,.018);
}

@media(max-width:1200px){
  .wedding-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}
  .wedding-head{gap:38px}
}
@media(max-width:1000px){
  .wedding-head{grid-template-columns:1fr;gap:14px}
  .wedding-intro{justify-self:start;max-width:620px}
  .wedding-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .work-section{padding-bottom:36px}
  .wedding-library{padding:10px 0 34px}
  .wedding-head{padding:10px 0 24px}
  .wedding-head h2{font-size:34px}
  .wedding-intro{font-size:15px;line-height:1.55}
  .wedding-subfilters{gap:9px;padding:15px 0 18px}
  .wedding-subfilter{font-size:14px;padding:9px 14px 10px}
  .wedding-video-grid{grid-template-columns:1fr;gap:28px;padding:18px 0 0}
  .wedding-video-card{padding:8px}
  .wedding-video-meta h3{font-size:21px}
  .wedding-manage-note{text-align:left;margin-top:28px;line-height:1.6}
}

/* =========================================================
   BÙI STUDIO · FILM V1.5 — Wedding Film UI refinement
   Compact cards · balanced breathing · warm cinematic glow
   ========================================================= */
.wedding-library{
  max-width:1540px;
  margin:0 auto;
  padding-top:18px;
  padding-bottom:48px;
}
.wedding-head{
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.68fr);
  gap:48px;
  padding:14px 6px 24px;
}
.wedding-head h2{
  font-size:40px;
  line-height:1.04;
}
.wedding-intro{
  max-width:470px;
  justify-self:end;
  font-size:18px;
  line-height:1.58;
  color:#c6c5be;
}
.wedding-subfilters{
  padding:12px 2px 17px;
  gap:10px;
}
.wedding-subfilter{
  padding:9px 16px 10px;
  font-size:14px;
}
.wedding-video-grid{
  gap:38px 34px;
  padding:20px 2px 6px;
}
.wedding-video-card{
  padding:8px;
  border-color:rgba(255,255,255,.085);
  background:linear-gradient(150deg,rgba(255,255,255,.037),rgba(255,255,255,.010));
  box-shadow:0 16px 38px rgba(0,0,0,.18),0 0 0 1px rgba(198,170,134,.012) inset;
}
.wedding-video-card::before{
  content:"";
  position:absolute;
  inset:-1px;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(420px 150px at 50% 0%,rgba(220,180,129,.16),transparent 67%);
  transition:opacity .35s ease;
}
.wedding-video-card{position:relative}
.wedding-video-card:hover{
  transform:translateY(-4px);
  border-color:rgba(215,181,137,.38);
  box-shadow:0 22px 50px rgba(0,0,0,.25),0 0 34px rgba(211,174,126,.075);
}
.wedding-video-card:hover::before{opacity:1}
.wedding-video-frame{
  aspect-ratio:16/8.65;
  position:relative;
}
.wedding-video-shade{
  background:
    radial-gradient(circle at 50% 8%,rgba(241,211,174,.055),transparent 42%),
    linear-gradient(180deg,rgba(245,222,191,.025),transparent 36%),
    linear-gradient(0deg,rgba(5,7,6,.28),transparent 44%);
}
.wedding-play{
  width:48px;
  height:48px;
  box-shadow:0 0 0 5px rgba(255,255,255,.015),0 8px 24px rgba(0,0,0,.24),0 0 20px rgba(205,169,121,.05);
}
.wedding-video-card:hover .wedding-play{
  box-shadow:0 0 31px rgba(220,181,128,.27),0 8px 25px rgba(0,0,0,.18);
}
.video-status{
  right:10px;
  bottom:9px;
  padding:5px 8px;
  color:#d8ccbd;
  letter-spacing:.15em;
  background:rgba(14,15,14,.58);
  border-color:rgba(207,174,132,.25);
}
.wedding-video-meta{
  padding:13px 3px 4px;
}
.wedding-video-meta h3{
  font-size:20px;
  line-height:1.05;
}
.wedding-video-meta p{
  margin-top:6px;
  font-size:7px;
  letter-spacing:.20em;
}
.wedding-manage-note{
  margin-top:30px;
  opacity:.82;
}
@media(min-width:1500px){
  .wedding-library{max-width:1500px}
}
@media(max-width:1200px){
  .wedding-library{max-width:none}
  .wedding-head{gap:30px}
  .wedding-intro{font-size:17px}
  .wedding-video-frame{aspect-ratio:16/9}
}
@media(max-width:680px){
  .wedding-head{padding-bottom:18px}
  .wedding-subfilters{padding-top:10px}
  .wedding-video-grid{padding-top:16px;gap:26px}
  .wedding-video-frame{aspect-ratio:16/9}
}

/* =========================================================
   BÙI STUDIO · FILM V1.6 — Wedding Film size rebalance
   V1.4 visual weight + V1.5 spacing / tone / glow
   ========================================================= */
.wedding-library{
  max-width:1660px;
}
.wedding-video-grid{
  gap:38px 30px;
  padding-left:0;
  padding-right:0;
}
.wedding-video-card{
  padding:9px;
}
.wedding-video-frame{
  aspect-ratio:16/8.85;
}
.wedding-video-meta{
  padding:14px 4px 5px;
}
.wedding-video-meta h3{
  font-size:21px;
}
@media(min-width:1500px){
  .wedding-library{max-width:1660px}
}
@media(max-width:1200px){
  .wedding-library{max-width:none}
  .wedding-video-frame{aspect-ratio:16/9}
}
@media(max-width:680px){
  .wedding-video-card{padding:8px}
  .wedding-video-frame{aspect-ratio:16/9}
}

/* =========================================================
   BÙI STUDIO · FILM V1.7 — Event Film
   Same portfolio language as Wedding, with stage-light energy
   ========================================================= */
.event-library[hidden]{display:none!important}
.event-library{
  position:relative;z-index:1;
  max-width:1660px;margin:0 auto;
  padding:18px 0 48px;
}
.event-library::before{
  content:"";position:absolute;inset:-35px -8vw -45px;z-index:-1;pointer-events:none;
  background:
    radial-gradient(680px 320px at 18% 35%,rgba(64,112,150,.075),transparent 70%),
    radial-gradient(620px 300px at 83% 22%,rgba(121,76,153,.065),transparent 72%),
    radial-gradient(520px 260px at 68% 82%,rgba(212,146,80,.045),transparent 72%);
}
.event-head{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.68fr);
  gap:48px;align-items:end;padding:14px 6px 24px;border-bottom:1px solid var(--line);
}
.event-head .eyebrow{margin-bottom:8px;color:#98aebc}
.event-head h2{font:500 40px/1.04 "Cormorant Garamond",serif;margin:0;color:#eee}
.event-intro{font:400 18px/1.58 "Cormorant Garamond",serif;color:#c5c7c8;margin:0;max-width:490px;justify-self:end}
.event-subfilters{display:flex;align-items:center;gap:10px;padding:12px 2px 17px;overflow-x:auto;scrollbar-width:none}
.event-subfilters::-webkit-scrollbar{display:none}
.event-subfilter{
  border:1px solid rgba(255,255,255,.105);border-radius:999px;
  background:rgba(255,255,255,.016);color:#92999d;
  padding:9px 16px 10px;font:500 14px "Cormorant Garamond",serif;
  white-space:nowrap;cursor:pointer;transition:.25s ease;
}
.event-subfilter:hover{color:#e9edf0;border-color:rgba(134,177,204,.36);background:rgba(96,140,168,.055)}
.event-subfilter.active{
  color:#f3f5f5;border-color:rgba(139,186,215,.48);
  background:linear-gradient(120deg,rgba(81,132,164,.16),rgba(122,80,145,.09));
  box-shadow:0 0 22px rgba(93,151,184,.06);
}
.event-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 30px;padding:20px 0 6px}
.event-video-card{
  min-width:0;padding:9px;position:relative;
  border:1px solid rgba(255,255,255,.085);
  background:linear-gradient(150deg,rgba(255,255,255,.036),rgba(255,255,255,.009));
  box-shadow:0 16px 38px rgba(0,0,0,.18),0 0 0 1px rgba(105,157,190,.012) inset;
  transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease;
}
.event-video-card::before{
  content:"";position:absolute;inset:-1px;pointer-events:none;opacity:0;
  background:
    radial-gradient(360px 140px at 25% 0%,rgba(91,164,205,.15),transparent 69%),
    radial-gradient(300px 130px at 78% 0%,rgba(159,101,189,.10),transparent 72%);
  transition:opacity .35s ease;
}
.event-video-card:hover{
  transform:translateY(-4px);border-color:rgba(119,178,211,.40);
  box-shadow:0 22px 52px rgba(0,0,0,.27),0 0 34px rgba(81,155,198,.075),0 0 25px rgba(155,96,183,.04);
}
.event-video-card:hover::before{opacity:1}
.event-video-frame{aspect-ratio:16/8.85;position:relative;overflow:hidden;background:#0b0d10;border:1px solid rgba(255,255,255,.055)}
.event-video-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.88) brightness(.86) contrast(1.02);transition:transform .55s ease,filter .55s ease}
.event-video-card:hover .event-video-frame img{transform:scale(1.025);filter:saturate(1.03) brightness(.93) contrast(1.03)}
.event-video-shade{position:absolute;inset:0;background:
  radial-gradient(circle at 18% 9%,rgba(101,175,215,.08),transparent 39%),
  radial-gradient(circle at 82% 12%,rgba(170,104,195,.065),transparent 38%),
  linear-gradient(0deg,rgba(5,7,9,.31),transparent 45%)}
.event-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(239,246,249,.86);background:rgba(7,10,13,.33);color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(255,255,255,.015),0 8px 24px rgba(0,0,0,.24);transition:.25s}
.event-play span{font-size:14px;margin-left:3px}
.event-video-card:hover .event-play{background:rgba(236,244,248,.93);color:#091015;box-shadow:0 0 31px rgba(104,184,222,.30),0 8px 25px rgba(0,0,0,.18)}
.event-video-card.is-placeholder .event-play{display:none}
.event-video-meta{display:flex;justify-content:space-between;gap:20px;padding:14px 4px 5px}
.event-video-meta h3{font:500 21px/1.05 "Cormorant Garamond",serif;margin:0;color:#eee}
.event-video-meta p{font-size:7px;letter-spacing:.20em;color:#8296a1;margin:6px 0 0}
.event-video-meta>span{font:400 13px "Cormorant Garamond",serif;color:#969da0;white-space:nowrap}
.event-video-frame iframe{width:100%;height:100%;border:0;display:block}
.event-manage-note{text-align:right;font-size:7px;letter-spacing:.25em;color:#6f7e85;margin:30px 0 0;opacity:.82}
.empty-event{grid-column:1/-1;border:1px solid var(--line);padding:55px;text-align:center;font:400 17px "Cormorant Garamond",serif;color:#858d91}
@media(max-width:1200px){
  .event-library{max-width:none}.event-head{gap:30px}.event-intro{font-size:17px}
  .event-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}
  .event-video-frame{aspect-ratio:16/9}
}
@media(max-width:1000px){
  .event-head{grid-template-columns:1fr;gap:14px}.event-intro{justify-self:start;max-width:620px}
}
@media(max-width:680px){
  .event-library{padding:10px 0 34px}.event-head{padding:10px 0 18px}.event-head h2{font-size:34px}.event-intro{font-size:15px;line-height:1.55}
  .event-subfilters{gap:9px;padding:10px 0 18px}.event-subfilter{font-size:14px;padding:9px 14px 10px}
  .event-video-grid{grid-template-columns:1fr;gap:28px;padding:18px 0 0}.event-video-card{padding:8px}.event-video-frame{aspect-ratio:16/9}
  .event-video-meta h3{font-size:21px}.event-manage-note{text-align:left;margin-top:28px;line-height:1.6}
}
\n\n/* =========================================================\n   BÙI STUDIO · FILM V1.8 — Dynamic Featured Project\n   Context-aware featured block + tighter section transition\n   ========================================================= */\n.work-section{padding-bottom:28px}\n.featured{\n  margin-top:4px;\n  transition:border-color .35s ease,box-shadow .35s ease,background .35s ease;\n  background:linear-gradient(140deg,rgba(255,255,255,.018),rgba(255,255,255,.006));\n}\n.featured-media img{transition:opacity .28s ease,transform .55s ease,filter .45s ease}\n.featured:hover .featured-media img{transform:scale(1.012)}\n.featured[data-category="wedding"]{\n  border-color:rgba(205,169,123,.22);\n  box-shadow:0 0 52px rgba(191,150,101,.035);\n}\n.featured[data-category="event"]{\n  border-color:rgba(112,168,201,.22);\n  box-shadow:0 0 54px rgba(74,145,187,.04),0 0 30px rgba(142,89,173,.025);\n}\n.featured[data-category="commercial"]{\n  border-color:rgba(184,190,185,.18);\n}\n.featured[data-category="art"]{\n  border-color:rgba(143,155,166,.18);\n  box-shadow:0 0 50px rgba(108,130,150,.025);\n}\n.event-manage-note,.wedding-manage-note{margin-bottom:2px}\n@media(max-width:680px){\n  .work-section{padding-bottom:22px}\n  .featured{margin-top:0}\n}\n


/* =========================================================
   BÙI STUDIO · FILM V1.9 — Commercial
   Cleaner premium mood for brand / product / social content
   ========================================================= */
.commercial-library[hidden]{display:none!important}
.commercial-library{
  position:relative;z-index:1;
  max-width:1660px;margin:0 auto;
  padding:18px 0 48px;
}
.commercial-library::before{
  content:"";position:absolute;inset:-35px -8vw -45px;z-index:-1;pointer-events:none;
  background:
    radial-gradient(660px 320px at 20% 30%,rgba(188,170,137,.075),transparent 72%),
    radial-gradient(560px 280px at 82% 20%,rgba(130,144,146,.055),transparent 72%),
    radial-gradient(520px 260px at 64% 85%,rgba(255,255,255,.03),transparent 74%);
}
.commercial-head{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.68fr);
  gap:48px;align-items:end;padding:14px 6px 24px;border-bottom:1px solid var(--line);
}
.commercial-head .eyebrow{margin-bottom:8px;color:#c4b08e}
.commercial-head h2{font:500 40px/1.04 "Cormorant Garamond",serif;margin:0;color:#efeee9}
.commercial-intro{font:400 18px/1.58 "Cormorant Garamond",serif;color:#c7c7c0;margin:0;max-width:505px;justify-self:end}
.commercial-subfilters{display:flex;align-items:center;gap:10px;padding:12px 2px 17px;overflow-x:auto;scrollbar-width:none}
.commercial-subfilters::-webkit-scrollbar{display:none}
.commercial-subfilter{
  border:1px solid rgba(255,255,255,.105);border-radius:999px;
  background:rgba(255,255,255,.016);color:#a5a59d;
  padding:9px 16px 10px;font:500 14px "Cormorant Garamond",serif;
  white-space:nowrap;cursor:pointer;transition:.25s ease;
}
.commercial-subfilter:hover{color:#efeee9;border-color:rgba(198,180,148,.36);background:rgba(197,179,145,.055)}
.commercial-subfilter.active{
  color:#f4f1ea;border-color:rgba(203,184,150,.46);
  background:linear-gradient(120deg,rgba(194,173,136,.14),rgba(255,255,255,.03));
  box-shadow:0 0 20px rgba(194,173,136,.05);
}
.commercial-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 30px;padding:20px 0 6px}
.commercial-video-card{
  min-width:0;padding:9px;position:relative;
  border:1px solid rgba(255,255,255,.085);
  background:linear-gradient(150deg,rgba(255,255,255,.036),rgba(255,255,255,.010));
  box-shadow:0 16px 38px rgba(0,0,0,.18),0 0 0 1px rgba(201,183,149,.012) inset;
  transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease;
}
.commercial-video-card::before{
  content:"";position:absolute;inset:-1px;pointer-events:none;opacity:0;
  background:
    radial-gradient(380px 145px at 22% 0%,rgba(197,176,140,.14),transparent 68%),
    radial-gradient(280px 120px at 78% 0%,rgba(255,255,255,.05),transparent 72%);
  transition:opacity .35s ease;
}
.commercial-video-card:hover{
  transform:translateY(-4px);border-color:rgba(208,187,151,.38);
  box-shadow:0 22px 52px rgba(0,0,0,.25),0 0 34px rgba(199,177,142,.07);
}
.commercial-video-card:hover::before{opacity:1}
.commercial-video-frame{aspect-ratio:16/8.85;position:relative;overflow:hidden;background:#0d0e0d;border:1px solid rgba(255,255,255,.055)}
.commercial-video-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92) brightness(.88) contrast(1.03);transition:transform .55s ease,filter .55s ease}
.commercial-video-card:hover .commercial-video-frame img{transform:scale(1.025);filter:saturate(1.02) brightness(.96) contrast(1.04)}
.commercial-video-shade{position:absolute;inset:0;background:
  radial-gradient(circle at 18% 10%,rgba(255,248,232,.05),transparent 40%),
  linear-gradient(180deg,rgba(224,202,168,.035),transparent 36%),
  linear-gradient(0deg,rgba(6,7,7,.30),transparent 45%)}
.commercial-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(245,241,234,.86);background:rgba(9,10,10,.33);color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(255,255,255,.015),0 8px 24px rgba(0,0,0,.24);transition:.25s}
.commercial-play span{font-size:14px;margin-left:3px}
.commercial-video-card:hover .commercial-play{background:rgba(245,241,234,.93);color:#111311;box-shadow:0 0 31px rgba(207,186,150,.28),0 8px 25px rgba(0,0,0,.18)}
.commercial-video-card.is-placeholder .commercial-play{display:none}
.commercial-video-meta{display:flex;justify-content:space-between;gap:20px;padding:14px 4px 5px}
.commercial-video-meta h3{font:500 21px/1.05 "Cormorant Garamond",serif;margin:0;color:#f1eee7}
.commercial-video-meta p{font-size:7px;letter-spacing:.20em;color:#948978;margin:6px 0 0}
.commercial-video-meta>span{font:400 13px "Cormorant Garamond",serif;color:#9d9a91;white-space:nowrap}
.commercial-video-frame iframe{width:100%;height:100%;border:0;display:block}
.commercial-manage-note{text-align:right;font-size:7px;letter-spacing:.25em;color:#7e7b72;margin:30px 0 0;opacity:.82}
.empty-commercial{grid-column:1/-1;border:1px solid var(--line);padding:55px;text-align:center;font:400 17px "Cormorant Garamond",serif;color:#8a8984}
@media(max-width:1200px){
  .commercial-library{max-width:none}.commercial-head{gap:30px}.commercial-intro{font-size:17px}
  .commercial-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}
  .commercial-video-frame{aspect-ratio:16/9}
}
@media(max-width:1000px){
  .commercial-head{grid-template-columns:1fr;gap:14px}.commercial-intro{justify-self:start;max-width:620px}
}
@media(max-width:680px){
  .commercial-library{padding:10px 0 34px}.commercial-head{padding:10px 0 18px}.commercial-head h2{font-size:34px}.commercial-intro{font-size:15px;line-height:1.55}
  .commercial-subfilters{gap:9px;padding:10px 0 18px}.commercial-subfilter{font-size:14px;padding:9px 14px 10px}
  .commercial-video-grid{grid-template-columns:1fr;gap:28px;padding:18px 0 0}.commercial-video-card{padding:8px}.commercial-video-frame{aspect-ratio:16/9}
  .commercial-video-meta h3{font-size:21px}.commercial-manage-note{text-align:left;margin-top:28px;line-height:1.6}
}


/* =========================================================
   BÙI STUDIO · FILM V2.0 — Art Film
   Cooler, quieter, more editorial and experimental
   ========================================================= */
.art-library[hidden]{display:none!important}
.art-library{position:relative;z-index:1;max-width:1660px;margin:0 auto;padding:18px 0 48px}
.art-library::before{content:"";position:absolute;inset:-35px -8vw -45px;z-index:-1;pointer-events:none;background:
  radial-gradient(680px 320px at 18% 34%,rgba(91,112,132,.075),transparent 72%),
  radial-gradient(600px 300px at 82% 22%,rgba(105,91,126,.05),transparent 72%),
  radial-gradient(500px 260px at 65% 82%,rgba(255,255,255,.025),transparent 74%)}
.art-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.68fr);gap:48px;align-items:end;padding:14px 6px 24px;border-bottom:1px solid var(--line)}
.art-head .eyebrow{margin-bottom:8px;color:#98a9b7}
.art-head h2{font:500 40px/1.04 "Cormorant Garamond",serif;margin:0;color:#eceef0}
.art-intro{font:400 18px/1.58 "Cormorant Garamond",serif;color:#bec4c8;margin:0;max-width:500px;justify-self:end}
.art-subfilters{display:flex;align-items:center;gap:10px;padding:12px 2px 17px;overflow-x:auto;scrollbar-width:none}
.art-subfilters::-webkit-scrollbar{display:none}
.art-subfilter{border:1px solid rgba(255,255,255,.10);border-radius:999px;background:rgba(255,255,255,.015);color:#949da4;padding:9px 16px 10px;font:500 14px "Cormorant Garamond",serif;white-space:nowrap;cursor:pointer;transition:.25s ease}
.art-subfilter:hover{color:#e8ecef;border-color:rgba(139,160,179,.34);background:rgba(104,128,149,.05)}
.art-subfilter.active{color:#f2f4f6;border-color:rgba(142,165,185,.44);background:linear-gradient(120deg,rgba(96,122,145,.13),rgba(108,93,129,.07));box-shadow:0 0 22px rgba(93,123,150,.05)}
.art-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 30px;padding:20px 0 6px}
.art-video-card{min-width:0;padding:9px;position:relative;border:1px solid rgba(255,255,255,.08);background:linear-gradient(150deg,rgba(255,255,255,.032),rgba(255,255,255,.008));box-shadow:0 16px 38px rgba(0,0,0,.19);transition:transform .32s ease,border-color .32s ease,box-shadow .32s ease}
.art-video-card::before{content:"";position:absolute;inset:-1px;pointer-events:none;opacity:0;background:radial-gradient(370px 145px at 24% 0%,rgba(107,140,167,.12),transparent 69%);transition:opacity .35s ease}
.art-video-card:hover{transform:translateY(-4px);border-color:rgba(126,155,180,.34);box-shadow:0 22px 52px rgba(0,0,0,.26),0 0 32px rgba(85,120,150,.055)}
.art-video-card:hover::before{opacity:1}
.art-video-frame{aspect-ratio:16/8.85;position:relative;overflow:hidden;background:#0a0c0e;border:1px solid rgba(255,255,255,.05)}
.art-video-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72) brightness(.84) contrast(1.06);transition:transform .6s ease,filter .6s ease}
.art-video-card:hover .art-video-frame img{transform:scale(1.026);filter:saturate(.84) brightness(.92) contrast(1.07)}
.art-video-shade{position:absolute;inset:0;background:radial-gradient(circle at 18% 10%,rgba(142,172,195,.055),transparent 40%),linear-gradient(0deg,rgba(5,7,9,.34),transparent 46%)}
.art-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;border:1px solid rgba(238,243,247,.82);background:rgba(6,9,11,.34);color:#fff;cursor:pointer;display:grid;place-items:center;box-shadow:0 0 0 5px rgba(255,255,255,.012),0 8px 24px rgba(0,0,0,.25);transition:.25s}
.art-play span{font-size:14px;margin-left:3px}.art-video-card:hover .art-play{background:rgba(237,242,246,.93);color:#0a0d0f;box-shadow:0 0 30px rgba(120,158,188,.24)}.art-video-card.is-placeholder .art-play{display:none}
.art-video-meta{display:flex;justify-content:space-between;gap:20px;padding:14px 4px 5px}.art-video-meta h3{font:500 21px/1.05 "Cormorant Garamond",serif;margin:0;color:#edf0f2}.art-video-meta p{font-size:7px;letter-spacing:.20em;color:#8495a2;margin:6px 0 0}.art-video-meta>span{font:400 13px "Cormorant Garamond",serif;color:#92999d;white-space:nowrap}.art-video-frame iframe{width:100%;height:100%;border:0;display:block}.art-manage-note{text-align:right;font-size:7px;letter-spacing:.25em;color:#707d86;margin:30px 0 0;opacity:.82}.empty-art{grid-column:1/-1;border:1px solid var(--line);padding:55px;text-align:center;font:400 17px "Cormorant Garamond",serif;color:#858d92}
.featured[data-category="commercial"]{border-color:rgba(201,183,149,.22);box-shadow:0 0 52px rgba(190,164,123,.03)}
.featured[data-category="art"]{border-color:rgba(119,146,169,.22);box-shadow:0 0 52px rgba(75,108,137,.035)}
@media(max-width:1200px){.art-library{max-width:none}.art-head{gap:30px}.art-intro{font-size:17px}.art-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 24px}.art-video-frame{aspect-ratio:16/9}}
@media(max-width:1000px){.art-head{grid-template-columns:1fr;gap:14px}.art-intro{justify-self:start;max-width:620px}}
@media(max-width:680px){.art-library{padding:10px 0 34px}.art-head{padding:10px 0 18px}.art-head h2{font-size:34px}.art-intro{font-size:15px;line-height:1.55}.art-subfilters{gap:9px;padding:10px 0 18px}.art-subfilter{font-size:14px;padding:9px 14px 10px}.art-video-grid{grid-template-columns:1fr;gap:28px;padding:18px 0 0}.art-video-card{padding:8px}.art-video-frame{aspect-ratio:16/9}.art-video-meta h3{font-size:21px}.art-manage-note{text-align:left;margin-top:28px;line-height:1.6}}

/* =========================================================
   BÙI STUDIO · FILM V2.1 — FINAL POLISH
   Baseline: unified spacing, responsive rhythm, category-aware Featured
   ========================================================= */
.wedding-library,.event-library,.commercial-library,.art-library{
  width:100%;
  max-width:1660px;
  margin-inline:auto;
}
.wedding-head,.event-head,.commercial-head,.art-head{
  min-width:0;
}
.wedding-video-grid,.event-video-grid,.commercial-video-grid,.art-video-grid{
  width:100%;
  min-width:0;
}
.wedding-video-card,.event-video-card,.commercial-video-card,.art-video-card{
  overflow:hidden;
}
.wedding-video-meta>div,.event-video-meta>div,.commercial-video-meta>div,.art-video-meta>div{
  min-width:0;
}
.wedding-video-meta h3,.event-video-meta h3,.commercial-video-meta h3,.art-video-meta h3{
  overflow-wrap:anywhere;
}
.wedding-manage-note,.event-manage-note,.commercial-manage-note,.art-manage-note{
  margin-top:28px;
  margin-bottom:2px;
}
.featured{
  overflow:hidden;
}
.featured-media img{
  min-width:100%;
  min-height:100%;
}
.featured[data-category="art"] .featured-media img{
  filter:saturate(.55) brightness(.82) contrast(1.08);
  object-position:center 48%;
}
.featured[data-category="art"] .featured-copy .eyebrow{
  color:#9fb6c8;
}
.featured[data-category="commercial"] .featured-copy .eyebrow{
  color:#c4b08e;
}
.featured[data-category="event"] .featured-copy .eyebrow{
  color:#98aebc;
}
.featured[data-category="wedding"] .featured-copy .eyebrow{
  color:#bda789;
}

@media(max-width:1366px){
  .wedding-library,.event-library,.commercial-library,.art-library{max-width:none}
  .wedding-head,.event-head,.commercial-head,.art-head{gap:34px}
  .wedding-video-grid,.event-video-grid,.commercial-video-grid,.art-video-grid{gap:32px 24px}
  .wedding-video-meta h3,.event-video-meta h3,.commercial-video-meta h3,.art-video-meta h3{font-size:20px}
}
@media(max-width:1100px){
  .wedding-video-grid,.event-video-grid,.commercial-video-grid,.art-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .featured{grid-template-columns:1.1fr .9fr}
  .featured blockquote{display:none}
}
@media(max-width:760px){
  .wedding-head,.event-head,.commercial-head,.art-head{grid-template-columns:1fr;gap:12px}
  .wedding-intro,.event-intro,.commercial-intro,.art-intro{justify-self:start;max-width:100%}
  .wedding-video-grid,.event-video-grid,.commercial-video-grid,.art-video-grid{grid-template-columns:1fr;gap:26px}
  .wedding-manage-note,.event-manage-note,.commercial-manage-note,.art-manage-note{text-align:left;line-height:1.6}
  .featured{grid-template-columns:1fr;margin-left:20px;margin-right:20px}
  .featured-media{min-height:210px}
}

/* BÙI STUDIO V3.3 — shared hero identity: PHOTOS / FILM / MUSIC */
:root{--studio-hero-navy:#0b1824;--studio-hero-title:clamp(4.5rem,8vw,7.4rem)}

:root{--bg:#0b1824;--bg2:#0d1b29;--line:rgba(197,215,231,.14)}
.film-page{background:linear-gradient(180deg,#0b1824,#07111b)}
.film-header{background:#101b25}
.film-hero{background:#0b1824}
.hero-overlay{background:linear-gradient(90deg,rgba(11,24,36,.98) 0%,rgba(11,24,36,.88) 38%,rgba(11,24,36,.55) 66%,rgba(11,24,36,.84) 100%),linear-gradient(0deg,#0b1824,transparent 55%)}
.film-hero .hero-copy h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:var(--studio-hero-title);font-weight:600;letter-spacing:-.03em;line-height:.9}
.film-hero .eyebrow{font-family:Montserrat,Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.34em;color:#8fb8d8}
.film-hero .hero-copy{top:52px}
@media(max-width:680px){.film-hero .hero-copy h1{font-size:4rem}.film-hero .hero-copy{top:62px}}

/* V3.4: match module navigation scale to PHOTOS and MUSIC */
.film-nav{gap:26px}
.film-nav a{font-family:Montserrat,Arial,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.08em;line-height:1.4;padding:12px 0;color:#aab8c7}
.film-nav a.active{color:#fff}
.film-nav a::after{height:2px;bottom:4px;background:#e4c7a6}
.film-nav a.active::after,.film-nav a:hover::after{left:0;right:0}
@media(max-width:760px){.film-nav{gap:14px}.film-nav a{font-size:.72rem}}


/* V4.7 MOBILE — compact cinematic grid */
@media(max-width:680px){
  .film-header{height:auto;min-height:62px;padding:10px 14px;grid-template-columns:1fr auto;row-gap:8px}
  .film-nav{grid-column:1/-1;display:flex!important;gap:18px;overflow-x:auto;white-space:nowrap;padding:3px 0 4px;scrollbar-width:none}
  .film-nav::-webkit-scrollbar{display:none}.film-nav a{font-size:10px!important;flex:0 0 auto}
  .home-link{font-size:9px}
  .film-hero{height:300px}.hero-copy{left:18px;top:48px}.hero-copy h1,.film-hero .hero-copy h1{font-size:56px}.hero-lead{font-size:14px;max-width:270px}.hero-note{margin-top:18px}
  .work-section{padding:16px 14px 18px}.filter-row{gap:8px}.filters{width:100%;gap:16px;overflow-x:auto;flex-wrap:nowrap}.filter{font-size:14px;flex:0 0 auto}
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-card{aspect-ratio:16/10}.project-card .project-copy{padding:10px}.project-card h3{font-size:16px}
  .wedding-video-grid,.event-video-grid,.commercial-video-grid,.art-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding-top:14px!important}
  .wedding-video-card,.event-video-card,.commercial-video-card,.art-video-card{padding:5px!important}
  .wedding-video-meta,.event-video-meta,.commercial-video-meta,.art-video-meta{padding:8px 2px 2px!important;gap:5px!important}
  .wedding-video-meta h3,.event-video-meta h3,.commercial-video-meta h3,.art-video-meta h3{font-size:15px!important;line-height:1.1!important}
  .wedding-video-meta p,.event-video-meta p,.commercial-video-meta p,.art-video-meta p{font-size:6px!important;letter-spacing:.12em!important}
  .wedding-video-meta>span,.event-video-meta>span,.commercial-video-meta>span,.art-video-meta>span{display:none}
  .wedding-play,.event-play,.commercial-play,.art-play{width:38px!important;height:38px!important}.wedding-play span,.event-play span,.commercial-play span,.art-play span{font-size:11px!important}
  .wedding-head,.event-head,.commercial-head,.art-head{gap:9px!important;padding:8px 0 14px!important}.wedding-head h2,.event-head h2,.commercial-head h2,.art-head h2{font-size:28px!important}.wedding-intro,.event-intro,.commercial-intro,.art-intro{font-size:13px!important}
  .wedding-subfilters,.event-subfilters,.commercial-subfilters,.art-subfilters{overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}
  .featured{margin:0 14px 24px!important}.featured-copy{padding:18px!important}
}
