@font-face {
    font-family: 'ITC Avant Garde Gothic Book Condensed';
    src: url('../fonts/ITC-Avant-Garde-Gothic/ITC-Avant-Garde-Gothic-Book-Condensed.otf') format('opentype');
    font-display: swap;
}

@font-face {
    font-family: 'BOOWIE';
    src: url('../fonts/Boowie/BOOWIE.woff2') format('woff2'),
        url('../fonts/Boowie/BOOWIE.woff') format('woff'),
        url('../fonts/Boowie/BOOWIE.ttf') format('truetype');
    font-display: swap;
}

/* =====================================
   GLOBAL RESET (SAFE)
===================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

body {
    margin: 0;
    font-family: 'ITC Avant Garde Gothic Book Condensed', sans-serif;
    color: #111;
}

/* =====================================
   DESIGN TOKENS
===================================== */

:root {
    --rl-gold: #C2A283;
    --rl-dark: #0b3e4a;
    --rl-container-width: 1680px;
}

/* =====================================
   SECTION STRUCTURE
===================================== */

.rl-section {
    max-width: 100%;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

/* =====================================
   CONTAINER
===================================== */

.rl-container {
    max-width: var(--rl-container-width);
    width: 100%;
    margin: 0 auto;
    padding: 60px 16px;
}

/* =====================================
   ROW SYSTEM (FLEX BASED)
===================================== */

.rl-row {
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
    width: 100%;
}

/* =====================================
   LIFESTYLE BANNER
===================================== */

/* Overlay */
.rl-banner__inner {
    max-width: 100%;
    width: 100%;
    height: 600px;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    gap: 24px;
}

/* LOGO */
.rl-banner__logo {
    max-width: 25%;
    width: 100%;
}

.rl-banner__logo img {
    max-width: 100%;
    width: 100%;
}

/* SUBTITLE */
.rl-banner__subtitle {
    max-width: 100%;
    width: 100%;
    text-align: center;
}

.rl-banner__subtitle h1 {
    font-family: 'BOOWIE';
    font-size: 48px;
    font-weight: 400;
    line-height: 56px;
    letter-spacing: 8.4px;
    color: var(--rl-gold);
    text-transform: uppercase;
}

/* =====================================
   BEAUTY SECTION
===================================== */
/* HEADER */
.rl-beauty__header,
.rl-canvas__header,
.rl-club__header,
.rl-regal__header {
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 16px;
    padding-bottom: 48px;
}

.rl-beauty__title,
.rl-canvas__title,
.rl-club__title,
.rl-regal__title {
    font-family: 'BOOWIE';
    font-size: 40px;
    font-weight: 400;
    line-height: 48px;
    letter-spacing: 8.4px;
    text-align: center;
    color: var(--rl-gold);
    text-transform: uppercase;
    margin: 0;
}

.rl-beauty__desc,
.rl-canvas__desc,
.rl-club__desc,
.rl-regal__desc {
    font-family: 'ITC Avant Garde Gothic', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
    color: #333333;
    width: 50%;
    text-align: center;
    margin: 0;
}

/* ICON GRID */
.rl-beauty__icons,
.rl-canvas__icons {
    max-width: 100%;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-end;
    justify-content: space-evenly;
    align-items: flex-start;
    gap: 16px;
    padding-bottom: 48px;
}

.rl-beauty__icon-item,
.rl-canvas__icon-item {
    max-width: 15%;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.rl-beauty__icon-img, .rl-canvas__icon-img {
    max-width: 45%;
    width: 100%;
}

.rl-beauty__icon-img img,
.rl-canvas__icon-img img {
    max-width: 100%;
    width: 100%;
}

.rl-beauty__icon-item .rl-beauty__icon-title,
.rl-canvas__icon-item .rl-canvas__icon-title {
    font-family: 'ITC Avant Garde Gothic', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 28px;
}

/* IMAGE */

.rl-beauty__single-image,
.rl-canvas__single-image,
.rl-club__single-image,
.rl-regal__single-image,
.rl-beauty__single-image img,
.rl-canvas__single-image img,
.rl-club__single-image img,
.rl-regal__single-image img {
    max-width: 100%;
    width: 100%;
    height: 100%;
}

/* =====================================
   SIMPLE BEAUTY SLIDER
===================================== */
.rl-beauty__gallery,
.rl-canvas__gallery,
.rl-club__gallery,
.rl-regal__gallery {
    max-width: 100%;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: visible;
}

.rl-beauty__slider-wrapper,
.rl-canvas__slider-wrapper,
.rl-club__slider-wrapper,
.rl-regal__slider-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.rl-beauty__slider,
.rl-canvas__slider,
.rl-club__slider,
.rl-regal__slider {
    display: flex;
    transition: transform 0.6s ease;
    width: 100%;
}

.rl-beauty__slide,
.rl-canvas__slide,
.rl-club__slide,
.rl-regal__slide {
    flex: 0 0 100%;
}

.rl-beauty__slide img,
.rl-canvas__slide img,
.rl-club__slide img,
.rl-regal__slide img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* Arrows */
.rl-slider-arrow {
    max-width: 50px;
    width: 100%;
    height: 50px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #0b3e4a;
    border: 1px solid #c2a283;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    padding: 10px;
}

/* Bahar nikla hua look */
.rl-slider-prev,
.rl-canvas-next {
    left: 0px;
}

.rl-slider-next,
.rl-canvas-prev {
    right: 0px;
}

/* Arrow Image */
.rl-slider-arrow img {
    max-width: 100%;
    width: 100%;
    height: auto;
}

.rl-slider-arrow:hover {
    opacity: 0.7;
}

/* =====================================
    Club Sections
===================================== */
section.rl-section.rl-club,
section.rl-section.rl-regal {
    margin: 0 0 48px;
}

/* =========================
         RESPONSIVE
========================= */
@media (max-width: 1440px) {
    .rl-container {
        padding: 48px 16px;
    }

    /* ==== RIVIERA LIFESTYLE BANNER ==== */
    .rl-banner__subtitle h1 {
        font-size: 40px;
        font-weight: 400;
        line-height: 48px;
        letter-spacing: 4.4px;
    }

    .rl-beauty__icon-img, .rl-canvas__icon-img {
    max-width: 40%;
    width: 100%;
}
}

@media (max-width: 1024px) {
    .rl-container {
        padding: 40px 16px;
    }

    /* ==== RIVIERA LIFESTYLE BANNER ==== */
    .rl-banner__inner {
        gap: 16px;
    }

    .rl-banner__logo {
        max-width: 30%;
        width: 100%;
    }

    .rl-banner__subtitle h1 {
        font-size: 32px;
        font-weight: 400;
        line-height: 40px;
        letter-spacing: 4.4px;
    }

    /* ==== BEAUTY SECTION ==== */
    .rl-beauty__header,
    .rl-beauty__icons,
    .rl-canvas__header,
    .rl-canvas__icons,
    .rl-club__header,
    .rl-club__icons,
    .rl-regal__header,
    .rl-regal__icons {
        padding-bottom: 40px;
    }

    .rl-beauty__title,
    .rl-canvas__title,
    .rl-club__title,
    .rl-regal__title {
        font-size: 32px;
        line-height: 40px;
        letter-spacing: 4.4px;
    }

    .rl-beauty__desc,
    .rl-canvas__desc,
    .rl-club__desc,
    .rl-regal__desc {
        font-size: 18px;
        line-height: 24px;
        width: 60%;
    }

    .rl-beauty__icon-item,
    .rl-canvas__icon-item {
        max-width: 14%;
    }

    .rl-beauty__icon-item .rl-beauty__icon-title,
    .rl-canvas__icon-item .rl-canvas__icon-title {
        font-size: 18px;
        line-height: 24px;
    }

    .rl-slider-arrow {
        max-width: 40px;
        height: 40px;
        padding: 8px;
    }

    .rl-beauty__icon-img, .rl-canvas__icon-img {
        max-width: 50%;
        width: 100%;
    }

    /* ==== Club Sections ==== */
    section.rl-section.rl-club,
    section.rl-section.rl-regal {
        margin: 0 0 32px;
    }
}

@media (max-width: 768px) {
    .rl-container {
        padding: 32px 16px;
    }

    /* ==== RIVIERA LIFESTYLE BANNER ==== */
    .rl-banner__inner {
        height: 400px;
    }

    .rl-banner__subtitle h1 {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: 2.4px;
    }

    /* ==== BEAUTY SECTION ==== */
    .rl-beauty__header,
    .rl-beauty__icons,
    .rl-canvas__header,
    .rl-canvas__icons,
    .rl-club__header,
    .rl-club__icons,
    .rl-regal__header,
    .rl-regal__icons {
        gap: 16px 8px;
        padding-bottom: 20px;
    }

    .rl-beauty__title,
    .rl-canvas__title,
    .rl-club__title,
    .rl-regal__title {
        font-size: 24px;
        line-height: 32px;
        letter-spacing: 2.4px;
    }

    .rl-beauty__desc,
    .rl-canvas__desc,
    .rl-club__desc,
    .rl-regal__desc {
        width: 90%;
    }

    .rl-beauty__icon-item, .rl-canvas__icon-item {
        max-width: 20%;
        gap: 5px;
    }

        .rl-beauty__icon-img, .rl-canvas__icon-img {
        max-width: 35%;
        width: 100%;
    }

    .rl-beauty__icon-item .rl-beauty__icon-title,
    .rl-canvas__icon-item .rl-canvas__icon-title {
        font-size: 16px;
        line-height: 24px;
    }

    /* ==== Club Sections ==== */
    section.rl-section.rl-club,
    section.rl-section.rl-regal {
        margin: 0 0 24px;
    }
}

@media (max-width: 600px) {
    .rl-container {
        padding: 24px 16px;
    }

    /* ==== BEAUTY SECTION ==== */
    .rl-beauty__icon-item,
    .rl-canvas__icon-item {
        max-width: 24%;
        gap: 4px;
    }

    .rl-slider-arrow {
        max-width: 32px;
        height: 32px;
        padding: 5px;
    }
}

@media (max-width: 425px) {
    .rl-container {
        padding: 16px;
    }

    /* ==== RIVIERA LIFESTYLE BANNER ==== */
    .rl-banner__logo {
        max-width: 50%;
        width: 100%;
    }

    .rl-banner__subtitle h1 {
        font-size: 20px;
        line-height: 24px;
        letter-spacing: 1.8px;
    }

    /* ==== BEAUTY SECTION ==== */
    .rl-beauty__header,
    .rl-beauty__icons,
    .rl-canvas__header,
    .rl-canvas__icons,
    .rl-club__header,
    .rl-club__icons,
    .rl-regal__header,
    .rl-regal__icons {
        gap: 16px 0;
        padding-bottom: 16px;
    }

    .rl-beauty__title,
    .rl-canvas__title,
    .rl-club__title,
    .rl-regal__title {
        font-size: 20px;
        line-height: 34px;
        letter-spacing: 1.4px;
    }

    .rl-beauty__desc,
    .rl-canvas__desc,
    .rl-club__desc,
    .rl-regal__desc {
        font-size: 16px;
        line-height: 20px;
        width: 100%;
    }

    .rl-beauty__icon-item,
    .rl-canvas__icon-item {
        max-width: 30%;
        gap: 4px;
    }

    .rl-beauty__icon-item .rl-beauty__icon-title,
    .rl-canvas__icon-item .rl-canvas__icon-title {
        font-size: 14px;
        line-height: 20px;
    }

    .rl-slider-arrow {
        max-width: 24px;
        height: 24px;
        padding: 5px;
    }

    /* ==== Club Sections ==== */
    section.rl-section.rl-club,
    section.rl-section.rl-regal {
        margin: 0 0 16px;
    }
}