/* ========================================
   AJL39 — SECTION CSS
   ajl-section.css
   ======================================== */
@font-face {
    font-family: 'Matroska';
    src: url('../fonts/Matroska.ttf') format('opentype');
    font-weight: 900;
    font-style: normal;
}

/* ========================================
   SHARED BG WRAPPER — Sections 2 + 3
   Both tentang and senarai sit inside this
   ======================================== */

.ajl-shared-bg {
    background-color: #3D1F08; /* fallback while image loads */
    background-image: url('../img/ajl/section-bg.png');
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    position: relative;
}

.gradient-line {
  width: 100%;
  height: 8px;
  background: linear-gradient(249.89deg, #976742 -55.34%, #945929 -43.28%, #92501A -35.25%, #924D15 -27.21%, #934F18 -21.19%, #975823 -15.16%, #9F6736 -11.14%, #A97C50 -5.12%, #B79771 0.91%, #BFA785 2.92%, #BA9E7B 12.96%, #AE8760 29.03%, #9A6234 49.12%, #975B2C 53.13%, #925728 55.14%, #7C4316 65.19%, #6B3509 77.24%, #622C02 89.29%, #5F2A00 107.37%, #632F05 115.4%, #713E16 125.45%, #875732 137.5%, #986B48 145.53%);
}

/* ========================================
   SECTION 2: TENTANG AJL 39
   ======================================== */

.ajl-tentang-section {
    padding: 80px 20px 70px;
    position: relative;
    overflow: hidden;
}

.ajl-deco-soundwave {
    position: absolute;
    bottom: 40px;
    left: -40px;
    width: 260px;
    height: auto;
    pointer-events: none;
    z-index: 0;
    opacity: 0.9;
}

/* ========================================
   SECTION 3: SENARAI PEMENANG + FINALIS
   ======================================== */

.ajl-senarai-section {
    padding: 20px 20px 100px;
    position: relative;
    overflow: hidden;
}

.ajl-deco-piano {
    position: absolute;
    top: 0;
    right: -100px;
    width: 520px;
    height: auto;
    pointer-events: none;
    z-index: 0;
    opacity: 0.6;
}

/* Ensure content sits above decorations */
.ajl-tentang-section .container,
.ajl-senarai-section .container {
    position: relative;
    z-index: 2;
}

/* ========================================
   SECTION 4: KARPET / CTA
   ======================================== */

.ajl-karpet-section {
    background: linear-gradient(180deg, #7A7C69 0%, #DEE2BF 100%);
    padding: 80px 20px 200px;
    position: relative;
    text-align: center;
    overflow: hidden;
}

.ajl-karpet-inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    padding-bottom: 0;
    margin-bottom: -140px;
}

/* Main image/thumbnail inside karpet section (e.g. show poster) */
.ajl-karpet-image {
    width: 100%;
    max-width: 700px;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* Watch button — mirrors AMT2025 .watch-button */
.ajl-watch-button {
    display: inline-block;
    padding: 14px 50px;
    background: #97671A;
    color: #FFFFFF;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
}

.ajl-watch-button:hover {
    background: #97671A;
    transform: translateY(-2px);
    color: #FFFFFF;
    text-decoration: none;
}

/* Decorative Group_226 — full width, flush to bottom of section */
.ajl-karpet-deco {
    width: 100%;
    display: block;
    pointer-events: none;
    position: absolute;
    bottom: 0;
    left: 0;
    top: 52%;
    z-index: 1;
}

/* ========================================
   FOOTER
   ======================================== */

.ajl-footer-section {
    background-color: #F4F4F4;
    padding: 60px 20px 0;
}

.ajl-footer-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.ajl-footer-logo {
    width: 220px;
    max-width: 100%;
    height: auto;
}

/* Sponsors */
.ajl-sponsors-container { width: 100%; }

.ajl-sponsors-row {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 40px;
}

.ajl-sponsor-group {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.ajl-sponsor-label {
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 13px;
    color: #FEBA2D;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    text-align: center;
}

.ajl-sponsor-logo {
    height: 40px;
    width: auto;
    max-width: 160px;
    object-fit: contain;
}

/* Rakan Media */
.ajl-rakan-section {
    width: 100%;
    text-align: center;
}

.ajl-rakan-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    color: #524334;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 16px;
}

.ajl-rakan-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 24px 36px;
}

.ajl-rakan-grid img {
    height: 32px;
    width: auto;
    object-fit: contain;
    opacity: 0.85;
    transition: opacity 0.2s ease;
}

.ajl-rakan-grid img:hover { opacity: 1; }

/* Copyright */
.ajl-copyright-section {
    background-color: #747462;
    padding: 16px 20px;
    /* margin-top: 40px; */
}

.ajl-copyright-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    max-width: 1200px;
    margin: 0 auto;
}

.ajl-copyright-text {
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    color: #FFFFFF;
    margin: 0;
}

.ajl-copyright-links {
    display: flex;
    gap: 20px;
}

.ajl-copyright-links a {
    font-family: 'Poppins', sans-serif;
    font-size: 12px;
    color: #FFFFFF;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ajl-copyright-links a:hover { color: #FEBA2D; }

/* ========================================
   SECTION HEADINGS — lines on both sides
   ——— TITLE ———
   ======================================== */

.ajl-section-heading {
    display: flex;
    align-items: center;
    gap: 18px;
    width: 90%;
    margin: 0 auto 40px;
}

.ajl-section-heading::before,
.ajl-section-heading::after {
    content: '';
    flex: 1;
    height: 2px;
    background: #292929;
    min-width: 20px;
}

.ajl-section-heading span {
    font-family: 'Matroska', sans-serif;
    font-weight: 900;
    font-size: 28px;
    color: #292929;
    text-transform: uppercase;
    text-align: center;
    flex-shrink: 0;
    letter-spacing: 1px;
    white-space: nowrap;
}

/* Heading variant for dark section (senarai) */
.ajl-heading-light::before,
.ajl-heading-light::after {
    background: #292929;
}

.ajl-heading-light span {
    color: #292929;
}

/* ========================================
   TENTANG DESCRIPTION TEXT
   ======================================== */

.ajl-tentang-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.7;
    color: #292929;
    text-align: center;
    max-width: 990px;
    margin: 0 auto 20px;
}

/* ========================================
   CARD BASE — shared by ALL AJL cards
   ======================================== */

.ajl-award-card {
    background: #FFFF;
    border: 10px solid #FFFF;
    margin-bottom: 30px;
    overflow: hidden;
    min-height: 420px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5);
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    display: flex;
    flex-direction: column;
}

.ajl-card-section:last-child {
    flex: 1;
}

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

/* ========================================
   CARD TITLE ROW
   ======================================== */

.ajl-card-title-row {
    padding: 14px 20px;
    text-align: center;
    background: rgba(148, 76, 20, 1);
}

.ajl-card-finalists-title-row {
    padding: 20px !important;
}

.ajl-3rd-card-title-row {
    background: rgba(180, 132, 92, 1);
}

.ajl-4th-card-title-row {
    background: rgba(201, 123, 55, 1);
}

.ajl-5th-card-title-row {
    background: rgba(231, 189, 161, 1)
}

.ajl-card-title {
    font-family: 'Matroska', sans-serif;
    font-weight: 900;
    font-size: 18px;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    line-height: 1.3;
}

.ajl-card-placement {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 0;
    margin-top: 5px;
}

/* ─── JUARA card: orange title row ─── */
.ajl-card-juara .ajl-card-title-row {
    background: #3C2C14;
}

.ajl-card-juara .ajl-card-title {
    color: #FFFFFF;
    font-size: 22px;
}

.ajl-card-juara .ajl-card-placement {
    color: #FFFFFF;
    font-size: 18px;
    opacity: 0.85;
}

/* ========================================
   CARD INTERNAL SECTIONS
   Each section = label row + names row
   ======================================== */

/* Alternating backgrounds */
.ajl-section-odd  { background: rgba(116, 116, 98, 0.3); }
.ajl-section-even { background: rgba(116, 116, 98, 0.1); }
.ajl-section-third { background: rgba(116, 116, 98, 0.1); }

/* Full-width label row (like a section header inside the card) */
.ajl-section-label {
    display: block;
    width: 20%;
    padding: 7px 15px;
    background: #97671A;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 18px;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center;
    box-sizing: border-box;
}

.ajl-section-label-big {
    width: 55% !important;
}

.ajl-section-pemenang-labels {
    width: 35% !important;
}

/* Names block below label */
.ajl-section-names {
    padding: 12px 15px 15px;
    text-align: center;
}

.ajl-name {
    font-family: 'Matroska', sans-serif;
    font-weight: 900;
    font-size: 20px;
    color: #7F441C;
    margin: 0;
    text-transform: uppercase;
    text-align: center;
    line-height: 1.6;
}

/* ========================================
   FIRST CARD WRAPPER (full width - JUARA)
   ======================================== */

.ajl-first-card-wrapper {
    margin-bottom: 30px;
    position: relative;
    z-index: 2;
    max-width: 100%;
    margin: 0 auto;
}

/* ========================================
   GRIDS
   ======================================== */

.ajl-pemenang-grid,
.ajl-finalis-grid {
    position: relative;
    z-index: 2;
}

.ajl-finalis-heading {
    margin-top: 50px;
}

/* Finalis cards: slightly smaller type */
.ajl-card-finalis .ajl-card-placement { font-size: 11px; }
.ajl-card-finalis .ajl-name           { font-size: 20px; }
.ajl-card-finalis .ajl-section-label  { font-size: 11px; }

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

/* Large desktop (1400px+) */
@media (max-width: 1400px) {
    .ajl-section-heading span      { font-size: 28px; }
    .ajl-card-title                { font-size: 22px; }
    .ajl-card-juara .ajl-card-title { font-size: 22px; }
    .ajl-name                      { font-size: 20px; }
    .ajl-deco-piano                { width: 600px; }
}

@media (min-width : 1200px) and (max-width: 1300px) {
    .ajl-deco-soundwave            { width: 190px; }
}

@media (min-width : 1400px) and (max-width: 1500px) {
    .ajl-deco-soundwave            { width: 260px; }
}

/* Desktop (768px – 1399px) */
@media (min-width: 768px) and (max-width: 1200px) {
    .ajl-section-heading span      { font-size: 24px; }
    .ajl-card-title                { font-size: 14px; }
    .ajl-card-juara .ajl-card-title { font-size: 20px; }
    .ajl-name                      { font-size: 14px; }
    .ajl-deco-soundwave            { width: 460px; }
    .ajl-deco-piano                { width: 380px; }
    .ajl-card-finalis .ajl-card-title { font-size: 13px; }
    .ajl-card-finalis .ajl-name       { font-size: 12px; }
}

/* Tablet/Mobile (below 768px) */
@media (max-width: 767px) {

    .container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        padding-right: 0;
        padding-left: 0;
    }
    .row { max-width: 95%; margin: 0 auto; }
    .ajl-tentang-section { padding: 60px 0 50px; }
    .ajl-senarai-section  { padding: 50px 0 80px; }

    .ajl-section-heading { gap: 10px; width: 100%;}
    .ajl-section-heading span { font-size: 20px; white-space: normal; text-align: center; }

    .ajl-tentang-text { font-size: 15px; max-width: 410px; }

    .ajl-deco-soundwave {
       display: none !important;
    }
    .ajl-deco-piano {
        display: none !important;
    }

    .ajl-first-card-wrapper { max-width: 90%; }

    .ajl-card-juara .ajl-card-title { font-size: 18px; }
    .ajl-card-title    { font-size: 18px; }
    .ajl-card-placement { font-size: 18px; }
    .ajl-name          { font-size: 20px; }
    .ajl-section-label { font-size: 18px; width: 50%; padding: 7px 10px; text-align: start; }
    .ajl-section-label-big { width: 85% !important; }
    .ajl-section-pemenang-labels { width: 50% !important; }

    .ajl-card-finalis .ajl-card-title { font-size: 18px; }
    .ajl-card-finalis .ajl-name       { font-size: 20px; }
    .ajl-card-finalis .ajl-section-label { font-size: 14px; text-align: start;}

    .ajl-finalis-heading { margin-top: 30px; }

    /* Section 4 */
    .ajl-karpet-section   { padding: 50px 15px 0; }
    .ajl-karpet-deco { display: none !important; }
    .ajl-karpet-inner { padding-bottom: 50px; margin-bottom: 0;}
    .ajl-watch-button     { padding: 12px 36px; font-size: 14px; }

    /* Footer */
    .ajl-footer-section   { padding: 50px 15px 0; }
    .ajl-footer-logo      { width: 160px; }
    .ajl-sponsors-row     { gap: 24px; }
    .ajl-copyright-content {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

/* Small mobile (≤ 400px) */
@media (max-width: 400px) {
    .ajl-section-heading span      { font-size: 20px; }
    .ajl-card-juara .ajl-card-title { font-size: 16px; }
    .ajl-card-title                { font-size: 16px; }
    .ajl-name                      { font-size: 16px; }
    .ajl-section-label             { font-size: 14px; padding: 6px 10px; }
    .ajl-watch-button              { padding: 11px 28px; font-size: 13px; }
    .ajl-footer-logo               { width: 130px; }
}

/* Extra small (≤ 360px) */
@media (max-width: 360px) {
    .ajl-section-heading span      { font-size: 14px; }
    .ajl-card-juara .ajl-card-title { font-size: 16px; }
    .ajl-card-title                { font-size: 16px; }
    .ajl-name                      { font-size: 16px; }
}



/* ========================================
   PEMENANG CARDS (Naib Juara, Ketiga,
   Vokal Terbaik, Persembahan Terbaik)
   ======================================== */

.ajl-card-pemenang .ajl-section-odd {
    background: rgba(116, 116, 98, 0.3);
}

.ajl-card-pemenang .ajl-section-even,
.ajl-card-pemenang .ajl-section-third {
    background: rgba(116, 116, 98, 0.1);
}

.ajl-card-finalis .ajl-card-title-row {
    background: rgba(132, 97, 58, 1);
}

.ajl-card-finalis .ajl-section-odd {
    background: rgba(116, 116, 98, 0.3);
}

.ajl-card-finalis .ajl-section-even,
.ajl-card-finalis .ajl-section-third {
    background: rgba(116, 116, 98, 0.1);
}