/* BaeFight Core v0.4.3 - approved portrait filming layout, scoped to filming page only. */
.bf-filming { --bf-shoot-red:#d72f34; color:#f5f5f5; }
.bf-filming .bf-filming-intro {display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}
.bf-filming .bf-filming-intro p {max-width:670px;margin:0;color:#aaa;font-size:13px;line-height:1.75}
.bf-filming .bf-shoot-count {border:1px solid #494949;padding:12px 15px;color:#ddd;font-size:11px;font-weight:800;letter-spacing:1px;white-space:nowrap}
.bf-filming .shoot-card{background:#161616;border:1px solid #3e3333;margin-bottom:32px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.18)}
.bf-filming .shoot-main{display:grid;grid-template-columns:minmax(280px,42%) minmax(0,58%);align-items:stretch;min-height:435px}
.bf-filming .shoot-info{padding:36px 37px;display:flex;flex-direction:column;background:linear-gradient(145deg,#211718,#121212 70%);border-right:1px solid #423234}
.bf-filming .date-line{display:flex;align-items:center;gap:17px}
.bf-filming .date-box{min-width:90px;border:1px solid #974046;padding:10px 12px;text-align:center}
.bf-filming .date-box .day{display:block;font:900 62px/.82 'Barlow Condensed',Impact,sans-serif}
.bf-filming .date-box .month{display:block;color:#f14e56;font-weight:900;font-size:12px;letter-spacing:1.3px;margin-top:8px}
.bf-filming .date-box .year{display:block;color:#bbb;font-size:11px;margin-top:4px}
.bf-filming .label-line{display:flex;align-items:center;gap:8px;color:#ee525a;font-size:10px;letter-spacing:1.4px;font-weight:900}
.bf-filming .dot{display:inline-block;width:7px;height:7px;background:var(--bf-shoot-red);border-radius:100%}
.bf-filming .date-line p{color:#999;font-size:12px;letter-spacing:.5px;margin:8px 0 0}
.bf-filming .shoot-info h2{font:900 clamp(42px,4.4vw,68px)/.9 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;letter-spacing:-.3px;margin:29px 0 18px}
.bf-filming .shoot-info h2 span{color:var(--bf-shoot-red)}
.bf-filming .shoot-summary{color:#c0c0c0;font-size:13px;line-height:1.85;max-width:360px;margin:0 0 28px}
.bf-filming .lineup-label{margin-top:auto;border-top:1px solid #4c3737;padding-top:18px;color:#f04c53;font-size:10px;font-weight:900;letter-spacing:1.6px}
.bf-filming .lineup-names{font:750 15px/1.5 'DM Sans',Arial,sans-serif;margin-top:8px}
.bf-filming .portrait-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;min-width:0;background:#0a0a0a;padding:12px}
.bf-filming .portrait{position:relative;min-width:0;background:radial-gradient(ellipse at 50% 25%,#4b2024,#181314 75%);overflow:hidden;border:1px solid #453232;min-height:415px;display:flex;flex-direction:column}
.bf-filming .portrait-photo{height:calc(100% - 55px);min-height:352px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.bf-filming .portrait-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center center}
.bf-filming .portrait-fallback{font:900 120px 'Barlow Condensed',Impact,sans-serif;color:#8f393f;opacity:.6}
.bf-filming .portrait-caption{display:flex;align-items:center;justify-content:space-between;gap:7px;background:#151515;border-top:1px solid #493737;padding:12px 13px;min-height:55px}
.bf-filming .portrait-caption strong{font:900 27px/.95 'Barlow Condensed',Impact,sans-serif;letter-spacing:.3px}
.bf-filming .portrait-caption span{font-size:9px;font-weight:850;color:#ef525a;letter-spacing:.7px;white-space:nowrap}
.bf-filming .shoot-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 28px 22px;border-top:1px solid #433434;background:#191919}
.bf-filming .schedule-details{display:flex;gap:29px;flex-wrap:wrap}
.bf-filming .detail small{display:block;text-transform:uppercase;color:#a4a4a4;font-size:10px;letter-spacing:1px;margin-bottom:6px}
.bf-filming .detail strong{font-size:13px}
.bf-filming .detail-cutoff strong{color:#f0aaaa}
.bf-filming .btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;background:var(--bf-shoot-red);color:white;min-width:225px;min-height:50px;padding:14px 18px;font-size:11px;letter-spacing:1.15px;font-weight:900;text-align:center;transition:background .2s}
.bf-filming .btn:hover{background:#b91e25}
.bf-filming .btn:focus-visible, .bf-filming .portrait:focus-visible{outline:2px solid white;outline-offset:3px}

.bf-filming .portrait-grid.count-1 {grid-template-columns:minmax(0, 1fr); max-width:520px; width:100%; justify-self:center}
.bf-filming .portrait-grid.count-3 {grid-template-columns:repeat(3,minmax(0,1fr))}
.bf-filming .portrait-grid.count-4 {grid-template-columns:repeat(4,minmax(0,1fr))}
.bf-filming .portrait-grid.count-3 .portrait-caption, .bf-filming .portrait-grid.count-4 .portrait-caption {display:block}
.bf-filming .portrait-grid.count-3 .portrait-caption span, .bf-filming .portrait-grid.count-4 .portrait-caption span {display:block;margin-top:7px}
.bf-filming .portrait-grid.count-3 .portrait-caption strong, .bf-filming .portrait-grid.count-4 .portrait-caption strong {font-size:22px}
.bf-filming .portrait-grid.count-3 .portrait, .bf-filming .portrait-grid.count-4 .portrait {min-height:350px}
.bf-filming .portrait-grid.count-3 .portrait-photo, .bf-filming .portrait-grid.count-4 .portrait-photo {min-height:295px}
.bf-filming .portrait-grid .portrait-photo img {max-width:100%;}
.bf-filming .shoot-bottom .btn {width:auto;border-radius:0}
.bf-filming .shoot-bottom .btn:focus-visible,.bf-filming .portrait:focus-visible {outline:2px solid white;outline-offset:3px}
@media(max-width:980px){
 .bf-filming .shoot-main{grid-template-columns:38% 62%}
 .bf-filming .shoot-info{padding:27px}
 .bf-filming .portrait-grid{padding:8px}
 .bf-filming .portrait{min-height:350px}
 .bf-filming .portrait-photo{min-height:295px}
 .bf-filming .shoot-info h2{font-size:49px}
 .bf-filming .portrait-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .bf-filming .bf-filming-intro{display:block}
 .bf-filming .bf-shoot-count{display:inline-block;margin-top:17px}
 .bf-filming .shoot-main{grid-template-columns:minmax(0,1fr)}
 .bf-filming .shoot-info{border-right:0;border-bottom:1px solid #463333;min-height:auto;padding:24px}
 .bf-filming .shoot-info h2{margin:22px 0 12px}
 .bf-filming .shoot-summary{margin-bottom:16px}
 .bf-filming .lineup-label{margin-top:8px}
 .bf-filming .portrait-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}
 .bf-filming .portrait{min-height:305px}
 .bf-filming .portrait-photo{min-height:250px}
 .bf-filming .portrait-grid.count-3,.bf-filming .portrait-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .bf-filming .shoot-bottom{display:block;padding:21px}
 .bf-filming .schedule-details{gap:18px;margin-bottom:22px}
 .bf-filming .shoot-bottom .btn{width:100%}
}
@media(max-width:410px){
 .bf-filming .shoot-info h2{font-size:48px}
 .bf-filming .portrait{min-height:255px}
 .bf-filming .portrait-photo{min-height:205px}
 .bf-filming .portrait-caption{padding:10px 7px;min-height:50px}
 .bf-filming .portrait-caption strong{font-size:21px}
 .bf-filming .portrait-caption span{font-size:8px}
 .bf-filming .date-box .day{font-size:51px}
 .bf-filming .schedule-details{display:grid;grid-template-columns:1fr 1fr;gap:12px}
}
