.baul47-page {
padding: 140px 60px 80px;
width: 100%;
min-height: 100vh;
position: relative;
background-image: url('../assets/mk47-bg.jpg');
background-size: cover;
background-position: center;
background-attachment: fixed;
}

.baul47-page > * {
max-width: 1400px;
margin-left: auto;
margin-right: auto;
}

.baul47-header {
text-align: center;
margin-bottom: 70px;
}

.baul47-header h1 {
font-family: "Cinzel", serif;
font-size: 3.3rem;
color: var(--gold);
margin-bottom: 15px;
}

.baul47-header p {
color: var(--gray);
font-size: 1.15rem;
font-style: italic;
}

.baul47-section {
margin-bottom: 90px;
}

.baul47-section h2 {
font-family: "Cinzel", serif;
color: var(--gold);
font-size: 2rem;
margin-bottom: 25px;
text-align: center;
}

.carousel-wrapper {
position: relative;
display: flex;
align-items: center;
}

.video-carousel {
display: flex;
gap: 28px;
overflow-x: auto;
overflow-y: hidden;
scroll-behavior: smooth;
width: 100%;
padding: 10px 45px 25px;
scrollbar-width: none;
}

.video-carousel::-webkit-scrollbar {
display: none;
}

.baul-video-card {
flex: 0 0 360px;
background: rgba(15, 15, 15, .92);
border: 1px solid rgba(212, 175, 55, .25);
border-radius: 14px;
overflow: hidden;
transition: .35s;
}

.baul-video-card:hover {
transform: translateY(-6px);
border-color: var(--gold);
box-shadow: 0 15px 35px rgba(212, 175, 55, .22);
}

.baul-video-card video {
width: 100%;
height: 203px;
display: block;
background: #000;
object-fit: contain;
}

.baul-video-card h3 {
margin: 18px;
text-align: center;
color: white;
font-family: "Playfair Display", serif;
font-size: 1.05rem;
}

.carousel-arrow {
width: 55px;
height: 55px;
border-radius: 50%;
border: none;
cursor: pointer;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 50;
font-size: 2rem;
color: var(--gold);
background: rgba(0, 0, 0, .65);
transition: .25s;
}

.carousel-arrow:hover {
background: var(--gold);
color: black;
}

.carousel-arrow.left {
left: -5px;
}

.carousel-arrow.right {
right: -5px;
}

@media (max-width: 900px) {
.baul47-page { padding: 120px 20px 60px; }
.baul47-header h1 { font-size: 2.5rem; }
.baul-video-card { flex: 0 0 290px; }
.baul-video-card video { height: 163px; }
.carousel-arrow { width: 45px; height: 45px; }
}

@media (max-width: 600px) {
.baul-video-card { flex: 0 0 240px; }
.baul-video-card video { height: 135px; }
.carousel-arrow { display: none; }
.video-carousel { padding: 10px 5px 20px; }
}