/* ========================================
   ABPBH35 - WINNERS SECTION
   abpbh-section.css
   ======================================== */

/* ⚠️ Adjust font filename to match your actual asset */
@font-face {
    font-family: 'Nulshock';
    src: url('../fonts/Nulshock\ Bd.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat Alternates';
    src: url('../fonts/MontserratAlternates-Bold.ttf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

/* ========================================
   SECTION BASE (bg image wrapper)
   ======================================== */
.abpbh-winners-section {
    background-image: url('../img/abpbh/bg.png');
    background-color: #0C486D;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 80px 20px 100px;
    position: relative;
}

@media (max-width: 767px) {
    .abpbh-winners-section {
        background-image: url('../img/abpbh/bg-mobile.png');
    }
}

/* ========================================
   INTRO TEXT
   ======================================== */
.abpbh-tentang-title {
    font-family: 'Nulshock', sans-serif;
    font-weight: 700;
    font-size: 30px;
    color: #C1201B;
    text-align: center;
    line-height: 1;
    letter-spacing: 0;
    text-transform: uppercase;
    margin-bottom: 30px;
}

.abpbh-description-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 25px;
    letter-spacing: 0;
    color: #FFFFFF;
    text-align: start;
    max-width: 1140px;
    margin: 0 auto 60px;
}

.abpbh-senarai-title {
    font-family: 'Nulshock', sans-serif;
    font-weight: 700;
    font-size: 30px;
    color: #C1201B;
    text-align: center;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: 50px;
}

/* ========================================
   GRID
   ======================================== */
.abpbh-awards-grid {
    margin-top: 20px;
    position: relative;
    z-index: 2;
}

/* ========================================
   CARD BASE
   ======================================== */
.abpbh-award-card {
    background: #0C486D;
    padding: 10px;
    margin-bottom: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abpbh-award-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
}

/* ========================================
   CARD TITLE ROW
   ======================================== */
.abpbh-card-title-row {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 1px;
    text-align: center;
    min-height: 60px;
}

.abpbh-gold-bg { background: #FEBA2D; }
.abpbh-red-bg  { background: #C1201B; }

.abpbh-card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    color: #000000; /* default: white for red bg */
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

/* Text colour helpers (mirror yellow-text in section3.css) */
.abpbh-dark-text { color: #0C486D !important; } /* for use on gold bg */
.abpbh-gold-text { color: #FEBA2D !important; } /* for use on red bg  */
.abpbh-white-text { color: #FFFFFF !important; } /* for use on red bg  */

/* ========================================
   CARD CONTENT AREAS
   ======================================== */
.abpbh-card-content-area {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #082C4D;
}

.abpbh-card-content-winner {
    padding: 40px 10px 0px;
    min-height: 90px;
}

.abpbh-card-content-nominees {
    padding: 40px 0 5px;
    min-height: 200px;
}

/* Overlays sit on top of the #0C486D card base */
/* .abpbh-gold-content-winner-bg   { background: rgba(254, 186, 45, 0.20); }
.abpbh-gold-content-nominees-bg { background: rgba(254, 186, 45, 0.07); }
.abpbh-red-content-winner-bg    { background: rgba(193, 32,  27, 0.35); }
.abpbh-red-content-nominees-bg  { background: rgba(193, 32,  27, 0.12); } */

/* ========================================
   COUPLE IMAGE
   ======================================== */

.abpbh-couple-img {
    width: 316px;
    height: 177px;
    object-fit: cover;
    display: block;
    margin-bottom: 12px;
}

@media (max-width: 360px) {
    .abpbh-couple-img {
        width: 270px;
        height: auto;
    }
}

.image-card {
    padding : 45px 0 50px !important;
}

.pd-btm-40 {
    padding-bottom: 40px !important;
}

.pd-btm-35 {
    padding-bottom: 35px !important;
}

.pd-top-10 {
    padding-top: 10px !important;
}

.pd-btm-20 {
    padding-bottom: 20px !important;
}

.pd-top-50 {
    padding-top: 50px !important;
}

/* ========================================
   SUBTITLE BADGE
   ======================================== */
.abpbh-card-subtitle-badge {
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px 10px;
    z-index: 2;
    width: 100%;
}

.abpbh-gold-badge-bg { background: rgba(254, 186, 45, 0.90); }
.abpbh-red-badge-bg  { background: rgba(193, 32,  27, 0.90); }

.abpbh-card-subtitle-badge p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #FFFFFF;
    text-transform: uppercase;
    text-align: center;
    margin: 0;
}

/* ========================================
   NAMES
   ======================================== */
.abpbh-card-names-centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.abpbh-winner-name {
    font-family: 'Montserrat Alternates', sans-serif;
    font-weight: 700;
    font-size: 20px;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0;
    text-align: center;
    text-decoration: none;
    display: block;
}

.abpbh-nominee-name {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    display: block;
}

.abpbh-nominee-name:hover {
    transform: translateX(5px);
}

/* Both use gold — high contrast on the dark navy card bg */
.name-abpbh-white { color: #FFFFFF; }
.name-abpbh-red  { color: #FEBA2D; }

/* Utility: smaller font for longer names (mirrors .fs-16 in section3.css) */
.abpbh-fs-16 { font-size: 16px !important; }
.abpbh-fs-14 { font-size: 14px !important; }

/* ========================================
   LIFETIME ACHIEVEMENT CARD (FULL WIDTH)
   ======================================== */
.abpbh-lifetime-wrapper {
    margin-top: 10px;
    position: relative;
    z-index: 2;
}

.abpbh-lifetime-card {
    background: #0C486D;
    padding: 15px 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4);
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abpbh-lifetime-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);
}

.abpbh-lifetime-title-row {
    padding: 10px 30px;
    text-align: center;
}

.abpbh-lifetime-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
}

.abpbh-lifetime-content {
    background: #082C4D;
    position: relative;
    padding: 60px 0 30px;
    min-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.abpbh-lifetime-badge {
    position: absolute;
    top: 0;
    left: 0;
    padding: 5px 100px;
    width: 100%;
    z-index: 2;
}

.abpbh-lifetime-badge p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 18px;
    text-transform: uppercase;
    text-align: center;
    margin: 0;
}

.abpbh-lifetime-name-centered {
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

.abpbh-lifetime-winner-name {
    font-family: 'Space Mono', monospace;
    font-weight: 700;
    font-size: 22px;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: center;
    margin: 0;
}

/* ========================================
   RESPONSIVE
   ======================================== */

/* Large Desktop (1400px+) */
@media (min-width: 1400px) {
    .abpbh-tentang-title  { font-size: 36px; }
    .abpbh-senarai-title  { font-size: 50px; }
    .abpbh-winner-name    { font-size: 20px; }
    .abpbh-nominee-name   { font-size: 18px; }
}

/* Desktop (768px – 1399px) */
@media (min-width: 768px) and (max-width: 1399px) {
    .abpbh-senarai-title { font-size: 36px; }
    .abpbh-card-title    { font-size: 15px; }
    .abpbh-winner-name   { font-size: 18px; }
}

/* Tablet / Mobile (below 768px) */
@media (max-width: 767px) {
    .abpbh-winners-section {
        padding: 60px 15px 80px;
    }

    .abpbh-tentang-title {
        font-size: 20px;
    }

    .abpbh-description-text {
        font-size: 15px;
        max-width: 85%;
        margin-bottom: 40px;
    }

    .abpbh-senarai-title {
        font-size: 20px;
        margin-bottom: 30px;
    }

    .abpbh-award-card {
        padding: 10px;
    }

    .abpbh-card-title-row {
        padding: 15px 0;
    }

    .abpbh-card-title {
        font-size: 18px;
    }

    .abpbh-card-content-winner {
        padding: 50px 20px 18px;
        min-height: 120px;
    }

    .abpbh-card-content-nominees {
        padding: 50px 7px 20px;
        min-height: 180px;
    }

    .abpbh-card-subtitle-badge {
        padding: 5px 42px;
    }

    .abpbh-card-subtitle-badge p {
        font-size: 16px;
    }

    .abpbh-winner-name {
        font-size: 20px;
    }

    .abpbh-nominee-name {
        font-size: 18px;
    }

    /* Lifetime card */
    .abpbh-lifetime-card         { padding: 15px; }
    .abpbh-lifetime-title-row    { padding: 15px 20px; }
    .abpbh-lifetime-title        { font-size: 15px; }
    .abpbh-lifetime-content      { padding: 50px 20px 30px; min-height: 120px; }
    .abpbh-lifetime-badge        { padding: 5px 42px;}
    .abpbh-lifetime-badge p      { font-size: 16px; }
    .abpbh-lifetime-winner-name  { font-size: 18px; }
}

/* Small Mobile (≤ 400px) */
@media (max-width: 400px) {
    .abpbh-winners-section  { padding: 50px 10px 70px; }
    .abpbh-tentang-title    { font-size: 24px; }
    .abpbh-senarai-title    { font-size: 24px; }
    .abpbh-card-title       { font-size: 18px; }
    .abpbh-card-title-row   { padding: 12px 0; }

    .abpbh-card-content-winner   { padding: 45px 15px 25px; }
    .abpbh-card-content-nominees { padding: 45px 5px 15px; }

    .abpbh-winner-name,
    .abpbh-nominee-name   { font-size: 20px; }

    .abpbh-lifetime-winner-name { font-size: 16px; }
}

/* Extra Small (≤ 360px) */
@media (max-width: 360px) {
    .abpbh-tentang-title  { font-size: 22px; }
    .abpbh-senarai-title  { font-size: 22px; }
    .abpbh-card-title     { font-size: 18px; }

    .abpbh-card-content-nominees { padding: 45px 0px 15px; }

    .abpbh-card-subtitle-badge p { font-size: 14px; }
    .abpbh-lifetime-badge p      { font-size: 14px; }
}