/* =========================================================
   FASHION SHOW 2026
   GLOBAL LUXURY GOLD DESIGN SYSTEM
   ========================================================= */

:root {
    --black: #070706;
    --black-soft: #0d0c0a;
    --black-card: #12110f;

    --gold: #c9a45a;
    --gold-light: #e3c47a;
    --gold-bright: #f0d38b;

    --white: #f7f4ed;
    --ivory: #e9e3d7;
    --text: #d2ccc0;
    --muted: #aaa398;
    --dim: #777269;

    --line: rgba(201, 164, 90, .25);
    --line-soft: rgba(255, 255, 255, .10);

    --serif: Georgia, "Times New Roman", serif;
    --sans: Arial, Helvetica, sans-serif;
}


/* =========================================================
   RESET
   ========================================================= */

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--black);
    color: var(--white);
    font-family: var(--sans);
    overflow-x: hidden;
}

img {
    max-width: 100%;
}

a {
    color: inherit;
    transition:
        color .35s ease,
        opacity .35s ease,
        transform .35s ease,
        border-color .35s ease;
}


/* =========================================================
   GLOBAL HEADER
   ========================================================= */

.brand-header {
    height: 82px;
    padding: 0 6.5%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: rgba(7, 7, 6, .96);

    border-bottom: 1px solid var(--line);

    position: sticky;
    top: 0;
    z-index: 1000;

    backdrop-filter: blur(16px);
}


/* LOGO */

.brand-lockup {
    display: flex;
    align-items: center;
    gap: 14px;

    min-width: 0;

    color: var(--white);
    text-decoration: none;
}

.brand-logo {
    width: 58px !important;
    height: 62px !important;

    max-width: none !important;
    max-height: none !important;

    object-fit: contain;
    object-position: center;

    display: block;

    filter:
        brightness(1.12)
        contrast(1.08)
        drop-shadow(0 3px 14px rgba(201,164,90,.18));

    transition:
        transform .5s cubic-bezier(.22,.61,.36,1),
        filter .5s ease;
}

.brand-lockup:hover .brand-logo {
    transform: scale(1.08) translateY(-2px);

    filter:
        brightness(1.2)
        contrast(1.1)
        drop-shadow(0 5px 20px rgba(227,196,122,.35));
}


/* FALLBACK */

.brand-fallback {
    display: none;

    place-items: center;

    width: 48px;
    height: 48px;

    border: 1px solid var(--gold);

    border-radius: 50%;

    color: var(--gold);

    font-family: var(--serif);
    font-size: 24px;
}


/* BRAND TEXT */

.brand-copy {
    display: flex;
    flex-direction: column;
    gap: 5px;

    line-height: 1;
}

.brand-event {
    color: var(--white);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 2.5px;
}

.brand-program {
    color: var(--gold-light);

    font-size: 8px;
    letter-spacing: 1.8px;
}


/* =========================================================
   NAVIGATION
   ========================================================= */

.brand-nav {
    display: flex;
    align-items: center;
    gap: 36px;
}

.brand-nav a {
    position: relative;

    padding: 30px 0;

    color: var(--ivory);

    text-decoration: none;

    font-size: 10px;
    letter-spacing: 2.5px;
}

.brand-nav a::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 19px;

    width: 0;
    height: 1px;

    background: var(--gold-light);

    box-shadow: 0 0 10px rgba(227,196,122,.45);

    transition:
        width .35s ease,
        left .35s ease;
}

.brand-nav a:hover,
.brand-nav a[aria-current="page"] {
    color: var(--gold-light);
}

.brand-nav a:hover::after,
.brand-nav a[aria-current="page"]::after {
    width: 100%;
    left: 0;
}


/* =========================================================
   GLOBAL PAGE
   ========================================================= */

.page,
.container {
    background: transparent;
}

.page {
    position: relative;

    max-width: 1200px;

    margin: 0 auto;

    padding: 105px 7% 125px;
}


/* Decorative typography */

.page::before {
    content: "FASHION";

    position: absolute;

    right: -30px;
    top: 35px;

    font-family: var(--serif);

    font-size: clamp(100px, 16vw, 220px);

    font-weight: 400;

    letter-spacing: -10px;

    color: rgba(255,255,255,.025);

    pointer-events: none;

    z-index: 0;
}


/* =========================================================
   TYPOGRAPHY
   ========================================================= */

h1,
h2,
h3 {
    color: var(--white);
}

h1,
h2 {
    font-family: var(--serif);
    font-weight: 400;
}

.title,
.container > h1,
.page > .title {
    position: relative;
    z-index: 2;

    color: var(--white) !important;

    font-family: var(--serif) !important;
    font-weight: 400 !important;

    letter-spacing: -3px;

    line-height: .9;
}

.container > h1,
.page > .title {
    font-size: clamp(52px, 7vw, 88px);

    margin: 0 0 45px;
}

.eyebrow,
.event-label {
    position: relative;
    z-index: 2;

    color: var(--gold-light) !important;

    font-size: 10px;

    letter-spacing: 3px;

    text-transform: uppercase;

    margin-bottom: 25px;
}

.lead,
.description {
    color: var(--text) !important;

    max-width: 650px;

    font-size: 15px;

    line-height: 1.9;
}


/* =========================================================
   GOLD DECORATIVE LINE
   ========================================================= */

.page::after {
    content: "";

    position: absolute;

    width: 380px;
    height: 1px;

    right: -100px;
    top: 52%;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--gold),
            transparent
        );

    opacity: .25;

    transform: rotate(-12deg);

    pointer-events: none;
}


/* =========================================================
   CARDS
   ========================================================= */

.card,
.ticket-card,
.feature-card {
    position: relative;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.055),
            rgba(255,255,255,.015)
        ) !important;

    border: 1px solid var(--line) !important;

    color: var(--white);

    overflow: hidden;

    transition:
        transform .5s cubic-bezier(.22,.61,.36,1),
        border-color .5s ease,
        box-shadow .5s ease;
}

.card:hover,
.ticket-card:hover,
.feature-card:hover {
    transform: translateY(-6px);

    border-color:
        rgba(227,196,122,.55) !important;

    box-shadow:
        0 20px 60px rgba(0,0,0,.35),
        0 0 30px rgba(201,164,90,.07);
}


/* =========================================================
   TICKET PAGE
   ========================================================= */

.ticket-grid {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 18px;

    background: transparent !important;

    border: 0 !important;
}

.ticket-card {
    min-height: 390px;

    padding: 38px 32px;

    display: flex;

    flex-direction: column;

    justify-content: space-between;

    background:
        linear-gradient(
            145deg,
            #15130f,
            #0c0b09
        ) !important;
}

.ticket-card::before {
    content: "";

    position: absolute;

    width: 190px;
    height: 190px;

    right: -105px;
    top: -105px;

    border:
        1px solid rgba(227,196,122,.28);

    border-radius: 50%;

    transition:
        transform .8s cubic-bezier(.22,.61,.36,1);
}

.ticket-card:hover::before {
    transform: scale(1.45);
}

.ticket-number {
    color: var(--gold) !important;

    font-size: 9px;

    letter-spacing: 3px;

    margin-bottom: 30px;
}

.ticket-card h2 {
    color: var(--white) !important;

    font-family: var(--serif) !important;

    font-size: 30px;

    font-weight: 400 !important;

    margin-bottom: 15px;
}

.ticket-card p {
    color: var(--text) !important;

    max-width: 300px;

    font-size: 13px;

    line-height: 1.8;
}

.ticket-link {
    display: inline-flex;

    align-items: center;

    width: max-content;

    gap: 12px;

    padding: 13px 0;

    color: var(--gold-light) !important;

    text-decoration: none;

    font-size: 10px;

    letter-spacing: 2px;

    border-bottom:
        1px solid var(--gold);

    position: relative;
    z-index: 2;
}

.ticket-link:hover {
    gap: 20px;

    color: var(--gold-bright) !important;

    border-color:
        var(--gold-bright);
}


/* =========================================================
   HOME HERO
   ========================================================= */

body:has(.hero) {
    background: var(--black);
    color: var(--white);
}

.hero {
    min-height:
        calc(100vh - 82px);

    padding:
        85px 7% 65px;

    display: flex;

    align-items: center;

    position: relative;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 78% 45%,
            rgba(201,164,90,.12),
            transparent 28%
        ),
        linear-gradient(
            115deg,
            #060605 0%,
            #12100c 55%,
            #070706 100%
        );
}


/* Ambient gold light */

.hero::before {
    content: "";

    position: absolute;

    width: 70vw;
    height: 18vw;

    right: -15vw;
    top: 25%;

    border:
        1px solid rgba(227,196,122,.22);

    border-radius: 50%;

    transform: rotate(-10deg);

    animation:
        silkFloat 10s ease-in-out infinite;
}

.hero::after {
    content: "";

    position: absolute;

    width: 65vw;
    height: 12vw;

    right: -12vw;
    top: 39%;

    border:
        1px solid rgba(255,255,255,.09);

    border-radius: 50%;

    transform: rotate(-7deg);

    animation:
        silkFloat 13s ease-in-out infinite reverse;
}


/* HERO CONTENT */

.hero-content {
    width: min(670px, 65%);

    position: relative;

    z-index: 5;
}

.program-badge {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 22px;

    color: var(--gold-light);

    font-size: 10px;

    letter-spacing: 2.5px;

    text-transform: uppercase;
}

.program-badge i {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--gold-light);

    box-shadow:
        0 0 18px
        rgba(227,196,122,.8);
}

.small-title {
    color: var(--muted);

    font-size: 11px;

    letter-spacing: 5px;

    margin-bottom: 22px;
}

.hero h1 {
    color: var(--white) !important;

    font-family: var(--serif) !important;

    font-size:
        clamp(62px, 9vw, 126px) !important;

    line-height:
        .82 !important;

    font-weight:
        400 !important;

    letter-spacing:
        -5px !important;

    margin-bottom:
        32px !important;
}

.hero h1 span {
    color: var(--gold-light) !important;

    display: block;
}

.description {
    color: var(--text) !important;

    max-width: 560px;

    font-size: 15px !important;

    line-height: 1.85 !important;

    margin-bottom: 35px !important;
}


/* HERO BUTTON */

.ticket-button {
    display: inline-flex;

    align-items: center;

    gap: 16px;

    padding: 16px 26px;

    background:
        linear-gradient(
            135deg,
            var(--gold-bright),
            var(--gold)
        );

    color: #0b0a08 !important;

    text-decoration: none;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 2px;

    border:
        1px solid var(--gold-light);

    box-shadow:
        0 12px 35px
        rgba(0,0,0,.3);

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}

.ticket-button:hover {
    transform: translateY(-4px);

    box-shadow:
        0 18px 45px
        rgba(201,164,90,.25);
}


/* =========================================================
   HOME ABSTRACT VISUAL
   ========================================================= */

.visual {
    position: absolute !important;

    right: 4%;

    top: 50%;

    width: 44vw !important;

    max-width: 650px;

    height: 600px !important;

    transform:
        translateY(-50%) !important;

    opacity: 1 !important;

    z-index: 2;

    animation:
        visualFloat 8s ease-in-out infinite;
}

.visual::before {
    content: "";

    position: absolute;

    width: 330px;
    height: 500px;

    right: 120px;
    top: 45px;

    background:
        linear-gradient(
            180deg,
            transparent,
            rgba(227,196,122,.10),
            rgba(255,255,255,.05),
            transparent
        );

    clip-path:
        polygon(
            26% 0,
            100% 8%,
            78% 100%,
            0 91%
        );

    animation:
        shimmer 7s ease-in-out infinite;
}

.shape-one {
    width: 300px !important;
    height: 470px !important;

    right: 75px !important;
    top: 55px !important;

    border:
        1px solid
        rgba(227,196,122,.48) !important;

    transform:
        rotate(9deg) !important;
}

.shape-two {
    width: 285px !important;
    height: 450px !important;

    right: 130px !important;
    top: 78px !important;

    border:
        1px solid
        rgba(255,255,255,.18) !important;

    transform:
        rotate(-8deg) !important;
}

.shape-three {
    width: 160px !important;
    height: 570px !important;

    right: 205px !important;
    top: 15px !important;

    background:
        linear-gradient(
            180deg,
            transparent,
            rgba(201,164,90,.16),
            rgba(255,255,255,.035),
            transparent
        ) !important;
}

.number {
    right: 0 !important;
    bottom: 18px !important;

    font-family: var(--serif);

    font-size: 150px !important;

    font-weight: 400 !important;

    color:
        rgba(227,196,122,.055) !important;
}


/* =========================================================
   HOME STATS
   ========================================================= */

.home-stats {
    position: relative;

    z-index: 10;

    width: min(86%, 1200px);

    margin: -1px auto 0;

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    background:
        rgba(17,15,12,.98);

    border:
        1px solid var(--line);

    border-radius: 14px;

    padding: 20px 25px;

    box-shadow:
        0 20px 60px rgba(0,0,0,.35);
}

.stat {
    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    border-right:
        1px solid var(--line-soft);
}

.stat:last-child {
    border-right: 0;
}

.stat b {
    color: var(--gold-light);

    font-family: var(--serif);

    font-size: 28px;

    font-weight: 400;
}

.stat span {
    color: var(--muted);

    font-size: 8px;

    letter-spacing: 1.7px;

    text-transform: uppercase;
}

/* =========================================================
   EVENT SECTION
   ========================================================= */

.event-section {
    position: relative;

    color: var(--white) !important;

    border-top:
        1px solid var(--line) !important;

    overflow: hidden;
}


.event-section::after {
    content: "";

    position: absolute;

    width: 80vw;
    height: 13vw;

    right: -25vw;
    bottom: 8%;

    border:
        1px solid rgba(201,164,90,.20);

    border-radius: 50%;

    transform: rotate(-10deg);

    animation:
        silkFloat 13s ease-in-out infinite;
}

.event-content {
    position: relative;

    z-index: 2;

    max-width: 1180px !important;
}

.event-content h2 {
    color: var(--white) !important;

    font-family: var(--serif) !important;

    font-weight: 400 !important;
}

.event-description > p {
    color: var(--text) !important;
}

.event-details {
    border-top:
        1px solid var(--line) !important;

    border-bottom:
        1px solid var(--line) !important;
}

.event-details span {
    color: var(--gold) !important;
}

.event-details strong {
    color: var(--white) !important;
}

.explore-button {
    color: var(--gold-light) !important;

    border-color:
        var(--gold) !important;
}


/* =========================================================
   FEATURE SECTION
   ========================================================= */

.feature-band {
    position: relative;

    padding: 90px 7%;

    background:
        #090908 !important;

    color: var(--white);
}

.feature-grid {
    max-width: 1180px;

    margin: auto;

    display: grid;

    grid-template-columns:
        1.1fr 1fr 1fr;

    gap: 18px;
}

.feature-intro h2 {
    color: var(--white);

    font-family: var(--serif);

    font-weight: 400;

    line-height: .95;
}

.feature-intro p {
    color: var(--text);

    line-height: 1.8;

    font-size: 14px;
}

.feature-intro .eyebrow {
    color: var(--gold-light) !important;
}

.feature-card .icon {
    color: var(--gold-light);
}

.feature-card h3 {
    color: var(--white);

    font-family: var(--serif);

    font-weight: 400;
}

.feature-card p {
    color: var(--text);
}


/* =========================================================
   INNER PAGES
   ========================================================= */

body:not(:has(.hero)) {
    background:
        radial-gradient(
            circle at 80% 10%,
            rgba(201,164,90,.06),
            transparent 25%
        ),
        var(--black) !important;

    color: var(--white);
}

.container,
.page {
    color: var(--white);
}

.container {
    max-width: 1180px !important;

    margin: 0 auto !important;

    padding:
        85px 7% 110px !important;
}

.container h1,
.container .title,
.page .title {
    color: var(--white) !important;

    font-family: var(--serif) !important;
}


/* INNER CARDS */

.container .card {
    background:
        linear-gradient(
            145deg,
            #15130f,
            #0c0b09
        ) !important;

    border:
        1px solid var(--line) !important;

    border-radius: 14px !important;

    box-shadow:
        0 20px 60px rgba(0,0,0,.28) !important;
}

.container .card h2 {
    color: var(--white) !important;

    font-family: var(--serif) !important;

    font-weight: 400 !important;
}

.container .card p,
.container .card li {
    color: var(--text) !important;

    line-height: 1.8 !important;
}

.lead {
    color: var(--text) !important;
}


/* =========================================================
   FORMS
   ========================================================= */

form {
    background:
        linear-gradient(
            145deg,
            #15130f,
            #0c0b09
        ) !important;

    color: var(--white);

    border:
        1px solid var(--line) !important;

    border-radius: 16px !important;

    box-shadow:
        0 20px 60px rgba(0,0,0,.3) !important;
}

input,
select,
textarea {
    font-family: var(--sans);

    background: #0b0a08 !important;

    color: var(--white) !important;

    border:
        1px solid rgba(201,164,90,.25) !important;
}

input:focus,
select:focus,
textarea:focus {
    outline: none;

    border-color:
        var(--gold) !important;

    box-shadow:
        0 0 0 2px
        rgba(201,164,90,.08);
}

button,
.button,
.submit-btn {
    background:
        linear-gradient(
            135deg,
            var(--gold-light),
            var(--gold)
        ) !important;

    color: #0b0a08 !important;

    border: 0 !important;

    border-radius: 999px !important;

    font-weight: 700;

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}

button:hover,
.button:hover,
.submit-btn:hover {
    background:
        var(--gold-bright) !important;

    color: #080705 !important;

    transform:
        translateY(-2px);

    box-shadow:
        0 10px 30px
        rgba(201,164,90,.2);
}


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

.brand-footer {
    padding: 32px 6.5%;

    background:
        #050504;

    color: var(--dim);

    font-size: 9px;

    line-height: 1.8;

    letter-spacing: 1.8px;

    text-align: center;

    border-top:
        1px solid var(--line);
}


/* =========================================================
   ANIMATIONS
   ========================================================= */

.reveal {
    animation:
        revealUp .9s
        cubic-bezier(.22,.61,.36,1)
        both;
}

.reveal-delay-1 {
    animation-delay: .12s;
}

.reveal-delay-2 {
    animation-delay: .24s;
}

.reveal-delay-3 {
    animation-delay: .36s;
}

@keyframes revealUp {
    from {
        opacity: 0;
        transform:
            translateY(28px);
    }

    to {
        opacity: 1;
        transform:
            translateY(0);
    }
}

@keyframes silkFloat {
    0%, 100% {
        transform:
            translate3d(0,0,0)
            rotate(-10deg);
    }

    50% {
        transform:
            translate3d(18px,-10px,0)
            rotate(-7deg);
    }
}

@keyframes shimmer {
    0%, 100% {
        opacity: .35;
        transform:
            translateX(-8%);
    }

    50% {
        opacity: .75;
        transform:
            translateX(8%);
    }
}

@keyframes visualFloat {
    0%, 100% {
        transform:
            translateY(-50%);
    }

    50% {
        transform:
            translateY(calc(-50% - 8px));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 850px) {

    .brand-header {
        height: 72px;

        padding: 0 5%;
    }

    .brand-logo {
        width: 44px !important;
        height: 50px !important;
    }

    .brand-copy {
        gap: 4px;
    }

    .brand-event {
        font-size: 9px;

        letter-spacing: 1.8px;
    }

    .brand-program {
        font-size: 6.5px;

        letter-spacing: 1px;
    }

    .brand-nav {
        gap: 17px;
    }

    .brand-nav a {
        font-size: 8px;

        letter-spacing: 1.5px;

        padding: 27px 0;
    }


    /* PAGE */

    .page,
    .container {
        padding:
            65px 6% 85px !important;
    }

    .page::before {
        font-size: 80px;

        right: -20px;
    }

    .container > h1,
    .page > .title {
        font-size: 52px !important;

        letter-spacing: -2px;
    }

    .lead {
        font-size: 14px;
    }


    /* HERO */

    .hero {
        min-height:
            calc(100vh - 72px);

        padding:
            70px 6% 100px;

        align-items: flex-start;
    }

    .hero-content {
        width: 100%;
    }

    .hero h1 {
        font-size:
            clamp(56px, 15vw, 92px) !important;
    }

    .description {
        max-width: 90% !important;
    }

    .visual {
        right: -30%;

        top: 58%;

        width: 70vw !important;

        opacity: .28 !important;
    }


    /* STATS */

    .home-stats {
        width: 90%;

        grid-template-columns:
            repeat(2, 1fr);

        padding: 14px;
    }

    .stat {
        padding: 12px 5px;
    }

    .stat:nth-child(2) {
        border-right: 0;
    }

    .stat b {
        font-size: 22px;
    }

    .stat span {
        font-size: 7px;
    }


    /* TICKETS */

    .ticket-grid {
        grid-template-columns:
            1fr !important;

        gap: 14px;
    }

    .ticket-card {
        min-height: 320px;
    }


    /* FEATURE */

    .feature-band {
        padding:
            70px 6%;
    }

    .feature-grid {
        grid-template-columns:
            1fr;
    }


    /* EVENT */

    .event-section {
        padding:
            80px 6% !important;
    }


    /* FOOTER */

    .brand-footer {
        padding:
            25px 6%;
    }
}


/* =========================================================
   ACCESSIBILITY
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        animation: none !important;

        transition: none !important;

        scroll-behavior: auto !important;
    }
}
```css
/* =========================================================
   LUXURY GOLD — GLOBAL VISUAL OVERRIDE
   Tempel PALING BAWAH brand.css
   ========================================================= */

:root {
  --ink: #070706;
  --ink2: #0f0e0c;

  --cream: #f4efe5;
  --paper: #0b0b0a;

  --gold: #c9a45a;
  --gold2: #e3c47a;
  --gold-light: #f1d895;

  --muted: #aaa59a;
  --line: rgba(201,164,90,.28);

  --serif: Georgia, "Times New Roman", serif;
  --sans: Arial, Helvetica, sans-serif;
}

/* =========================
   GLOBAL
========================= */

html {
  background: var(--ink);
}

body {
  background:
    radial-gradient(
      circle at 50% -10%,
      rgba(201,164,90,.08),
      transparent 38%
    ),
    linear-gradient(
      180deg,
      #070706 0%,
      #0b0b0a 48%,
      #080807 100%
    ) !important;

  color: #f5f1e8 !important;
}

/* subtle luxury grain */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
  opacity: .035;

  background-image:
    radial-gradient(
      rgba(255,255,255,.8) .5px,
      transparent .5px
    );

  background-size: 5px 5px;
}

/* =========================
   HEADER
========================= */

.brand-header {
  background:
    linear-gradient(
      180deg,
      rgba(7,7,6,.98),
      rgba(12,11,9,.94)
    ) !important;

  border-bottom: 1px solid
    rgba(201,164,90,.24) !important;

  box-shadow:
    0 10px 40px rgba(0,0,0,.45),
    0 1px 0 rgba(227,196,122,.06) inset;
}

.brand-lockup {
  color: #fff !important;
}

.brand-logo {
  filter:
    drop-shadow(0 0 8px rgba(255,255,255,.16))
    drop-shadow(0 4px 14px rgba(201,164,90,.12)) !important;
}

.brand-lockup:hover .brand-logo {
  filter:
    drop-shadow(0 0 12px rgba(255,255,255,.25))
    drop-shadow(0 5px 20px rgba(201,164,90,.25)) !important;
}

.brand-event {
  color: #f7f2e8 !important;
}

.brand-program {
  color: #b9b3a8 !important;
}

/* =========================
   NAVIGATION
========================= */

.brand-nav a {
  color: #ddd8ce !important;
}

.brand-nav a:hover,
.brand-nav a[aria-current="page"] {
  color: var(--gold-light) !important;
}

.brand-nav a::after {
  background:
    linear-gradient(
      90deg,
      transparent,
      var(--gold2),
      transparent
    ) !important;

  box-shadow:
    0 0 8px rgba(227,196,122,.35);
}

/* =========================
   ALL INNER PAGES
========================= */

body:not(:has(.hero)) {
  background:
    radial-gradient(
      circle at 50% 0%,
      rgba(201,164,90,.09),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      #080807 0%,
      #0c0b09 55%,
      #070706 100%
    ) !important;

  color: #f3eee4 !important;
}

.container,
.page {
  position: relative;
  isolation: isolate;
}

/* gold ambient glow */
.container::before,
.page::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(201,164,90,.075),
      transparent 68%
    );

  pointer-events: none;
  z-index: -1;
}

.container::before {
  top: -150px;
  left: -180px;
}

.page::after {
  right: -180px;
  bottom: -180px;
}

/* =========================
   HEADINGS
========================= */

.container>h1,
.page>.title {
  color: #f5f0e7 !important;

  text-shadow:
    0 2px 25px rgba(0,0,0,.45);
}

.eyebrow {
  color: var(--gold2) !important;
}

.lead {
  color: #c4beb2 !important;
}

/* =========================
   CARDS
========================= */

.container .card {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.065),
      rgba(255,255,255,.018)
    ) !important;

  border: 1px solid
    rgba(201,164,90,.20) !important;

  box-shadow:
    0 25px 70px rgba(0,0,0,.38),
    0 1px 0 rgba(255,255,255,.04) inset !important;

  backdrop-filter: blur(12px);
}

.container .card:hover {
  border-color:
    rgba(227,196,122,.48) !important;

  box-shadow:
    0 30px 80px rgba(0,0,0,.48),
    0 0 35px rgba(201,164,90,.07) !important;
}

.container .card h2 {
  color: #f1ece2 !important;
}

.container .card p,
.container .card li {
  color: #b9b3a8 !important;
}

/* =========================
   TICKET PAGE
========================= */

.ticket-grid {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;

    background: transparent !important;

    border: 0 !important;
    box-shadow: none !important;
}

.ticket-card {
    position: relative;

    min-height: 390px;
    padding: 38px 32px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    background:
        linear-gradient(
            145deg,
            #181611 0%,
            #0d0c0a 100%
        ) !important;

    border: 1px solid
        rgba(201,164,90,.24) !important;

    overflow: hidden;

    transition:
        transform .5s ease,
        border-color .5s ease,
        box-shadow .5s ease;
}

.ticket-card:hover {
    transform: translateY(-6px);

    border-color:
        rgba(227,196,122,.55) !important;

    box-shadow:
        0 25px 70px rgba(0,0,0,.45),
        0 0 30px rgba(201,164,90,.08);
}

.ticket-number {
  color: var(--gold2) !important;
}

.ticket-card h2 {
  color: #f4efe5 !important;
}

.ticket-card p {
  color: #b8b2a7 !important;
}

/* gold decorative ring */
.ticket-card::before {
  border-color:
    rgba(227,196,122,.30) !important;
}

.ticket-card::after {
    content: "";

    position: absolute;

    left: 32px;
    right: 32px;
    bottom: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--gold2),
            transparent
        );

    opacity: .65;

    box-shadow:
        0 0 12px rgba(227,196,122,.25);
}

.ticket-link {
  color: var(--gold-light) !important;
  border-color:
    rgba(201,164,90,.55) !important;
}

.ticket-link:hover {
  color: #fff !important;
  border-color: var(--gold2) !important;
}

/* =========================
   SECOND / FEATURE SECTIONS
========================= */

.feature-band {
  background:
    radial-gradient(
      circle at 75% 20%,
      rgba(201,164,90,.08),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      #090908,
      #12110e,
      #080807
    ) !important;

  border-top: 1px solid
    rgba(201,164,90,.16);
  border-bottom: 1px solid
    rgba(201,164,90,.12);
}

.feature-intro .eyebrow {
  color: var(--gold2) !important;
}

.feature-intro h2,
.feature-card h3 {
  color: #f2ede3 !important;
}

.feature-intro p,
.feature-card p {
  color: #b1aca2 !important;
}

.feature-card {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.055),
      rgba(255,255,255,.012)
    ) !important;

  border-color:
    rgba(201,164,90,.20) !important;

  box-shadow:
    0 20px 60px rgba(0,0,0,.25);
}

.feature-card:hover {
  border-color:
    rgba(227,196,122,.48) !important;

  box-shadow:
    0 25px 70px rgba(0,0,0,.4),
    0 0 35px rgba(201,164,90,.08);
}

.feature-card .icon {
  color: var(--gold2) !important;
}

/* =========================
   BUTTONS
========================= */

button,
.button,
.submit-btn {
  background:
    linear-gradient(
      135deg,
      #e5c270,
      #b98c3e
    ) !important;

  color: #111 !important;

  box-shadow:
    0 12px 35px rgba(201,164,90,.16);

  font-weight: 700;
}

button:hover,
.button:hover,
.submit-btn:hover {
  background:
    linear-gradient(
      135deg,
      #f1d895,
      #c9a45a
    ) !important;

  color: #080807 !important;

  box-shadow:
    0 16px 45px rgba(201,164,90,.28);
}

/* =========================
   FORMS
========================= */

form {
  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.065),
      rgba(255,255,255,.018)
    ) !important;

  border-color:
    rgba(201,164,90,.22) !important;

  box-shadow:
    0 25px 70px rgba(0,0,0,.4) !important;
}

input,
select,
textarea {
  background: #11100e !important;
  color: #f3eee5 !important;

  border: 1px solid
    rgba(201,164,90,.22) !important;
}

input:focus,
select:focus,
textarea:focus {
  outline: none;

  border-color:
    var(--gold2) !important;

  box-shadow:
    0 0 0 3px rgba(201,164,90,.08),
    0 0 20px rgba(201,164,90,.08);
}

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

.brand-footer {
  background:
    linear-gradient(
      180deg,
      #090908,
      #050504
    ) !important;

  color: #a9a398 !important;

  border-top:
    1px solid rgba(201,164,90,.20) !important;

  box-shadow:
    0 -15px 40px rgba(0,0,0,.25);
}

/* =========================
   GOLD LINE DECORATION
========================= */

.event-section {
    position: relative;
    color: var(--white) !important;

    background:
        radial-gradient(
            circle at 75% 20%,
            rgba(201,164,90,.07),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #090908,
            #0d0c0a
        ) !important;

    border-top: 1px solid var(--line) !important;
    border-bottom: 1px solid rgba(201,164,90,.12) !important;

    overflow: hidden;
}

/* =========================
   MOBILE
========================= */

@media (max-width: 850px) {

  .brand-header {
    box-shadow:
      0 8px 30px rgba(0,0,0,.45);
  }

  .container>h1,
  .page>.title {
    text-shadow:
      0 2px 20px rgba(0,0,0,.5);
  }

  .ticket-card {
    min-height: 320px;
  }

}
/* =========================================================
   STUDIOS PAGE
   ========================================================= */

.studios-page {
    overflow: hidden;
}

/* HERO */

.studios-hero {
    padding-bottom: 75px !important;
}

.studios-hero .lead {
    max-width: 680px;
}

/* STUDIO LIST */

.studios-list {
    position: relative;
    padding: 0 7% 110px;
}

.studios-container {
    max-width: 1180px;
    margin: 0 auto;
}

/* STUDIO ITEM */

.studio-detail {
    position: relative;
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: 30px;

    padding: 65px 0;

    border-top: 1px solid rgba(201,164,90,.22);
}

.studio-detail:last-child {
    border-bottom: 1px solid rgba(201,164,90,.22);
}

.studio-detail-number {
    color: var(--gold-light);

    font-family: var(--serif);
    font-size: 42px;
    line-height: 1;
}

.studio-detail-content {
    min-width: 0;
}

.studio-detail-heading {
    margin-bottom: 25px;
}

.studio-detail-heading .eyebrow {
    margin-bottom: 14px;
}

.studio-detail-heading h2 {
    color: var(--white);
    font-family: var(--serif);
    font-size: clamp(38px, 5vw, 64px);
    font-weight: 400;
    line-height: .95;
    letter-spacing: -2px;
    margin-bottom: 12px;
}

.studio-detail-heading h3 {
    color: var(--gold-light);

    font-size: 11px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
}

/* DESCRIPTION */

.studios-page .studio-description {
    max-width: 720px;

    color: var(--text);

    font-size: 15px;
    line-height: 1.9;

    margin-bottom: 25px;
}

/* CATEGORIES */

.studios-page .studio-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;

    margin-bottom: 38px;
}

.studio-category {
    padding: 9px 14px;

    color: var(--gold-light);

    border: 1px solid rgba(201,164,90,.28);

    background: rgba(201,164,90,.035);

    font-size: 9px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

/* MEDIA */

.studio-media-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.studios-page .studio-media {
    position: relative;

    min-width: 0;

    background:
        linear-gradient(
            145deg,
            #151411,
            #0b0b09
        );

    border: 1px solid rgba(201,164,90,.20);

    overflow: hidden;
}

.studio-media-label {
    padding: 14px 17px;

    color: var(--gold-light);

    font-size: 9px;
    letter-spacing: 2px;

    border-bottom: 1px solid rgba(201,164,90,.16);
}

/* VIDEO */

.studio-video {
    position: relative;

    aspect-ratio: 16 / 9;

    background: #050504;
}

.studio-video iframe {
    width: 100%;
    height: 100%;

    display: block;

    border: 0;
}

.studio-video-native {
    width: 100%;

    aspect-ratio: 16 / 9;

    display: block;

    background: #050504;
}

/* EMPTY MEDIA */

.studio-media-empty {
    min-height: 220px;
}

.studio-media-placeholder {
    min-height: 180px;

    display: flex;
    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 8px;

    color: rgba(234,209,143,.55);

    background:
        radial-gradient(
            circle at center,
            rgba(201,164,90,.07),
            transparent 60%
        );
}

.studio-media-placeholder span {
    font-family: var(--serif);

    font-size: 24px;
    letter-spacing: 4px;
}

.studio-media-placeholder small {
    color: var(--dim);

    font-size: 8px;
    letter-spacing: 2px;

    text-transform: uppercase;
}

/* HOVER */

.studio-media {
    transition:
        transform .45s ease,
        border-color .45s ease,
        box-shadow .45s ease;
}

.studio-media:hover {
    transform: translateY(-4px);

    border-color: rgba(227,196,122,.45);

    box-shadow:
        0 20px 50px rgba(0,0,0,.4),
        0 0 25px rgba(201,164,90,.07);
}

/* =========================================================
   OUR JOURNEY
   ========================================================= */

.journey-section {
    position: relative;

    padding: 100px 0;

    background:
        linear-gradient(
            180deg,
            #090908,
            #11100d
        );

    border-top: 1px solid rgba(201,164,90,.18);
}

.journey-title {
    color: var(--white);

    font-family: var(--serif);

    font-size: clamp(48px, 7vw, 82px);

    font-weight: 400;

    line-height: .9;

    letter-spacing: -3px;

    margin-bottom: 65px;
}

.journey-list {
    position: relative;
}

.journey-item {
    display: grid;

    grid-template-columns: 100px 1px 1fr;

    gap: 25px;

    padding: 28px 0;
}

.journey-year {
    color: var(--gold-light);

    font-family: var(--serif);

    font-size: 28px;
}

.journey-line {
    width: 1px;

    background:
        linear-gradient(
            180deg,
            var(--gold-light),
            rgba(201,164,90,.08)
        );
}

.journey-content h3 {
    color: var(--white);

    font-family: var(--serif);

    font-size: 25px;

    font-weight: 400;

    margin-bottom: 10px;
}

.journey-content p {
    max-width: 650px;

    color: var(--text);

    font-size: 14px;

    line-height: 1.8;
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 850px) {

    .studios-list {
        padding:
            0 6% 80px;
    }

    .studio-detail {
        grid-template-columns: 1fr;

        gap: 20px;

        padding: 50px 0;
    }

    .studio-detail-number {
        font-size: 32px;
    }

    .studio-detail-heading h2 {
        font-size: 42px;

        letter-spacing: -1.5px;
    }

    .studio-description {
        font-size: 14px;
    }

    .studio-media-grid {
        grid-template-columns: 1fr;
    }

    .journey-section {
        padding: 75px 0;
    }

    .journey-title {
        font-size: 52px;
    }

    .journey-item {
        grid-template-columns: 65px 1px 1fr;

        gap: 15px;
    }

    .journey-year {
        font-size: 21px;
    }

    .journey-content h3 {
        font-size: 21px;
    }
}

/* =====================================================
   STUDIO DETAIL PAGE
   ===================================================== */

.studio-page {
    padding-top: 40px;
}

/* HERO */

.studio-hero {
    min-height: 65vh;
    padding: 100px 7% 90px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-bottom: 1px solid var(--line);
}

.studio-hero .eyebrow {
    margin-bottom: 25px;
}

.studio-name {
    font-family: var(--serif);
    font-size: clamp(70px, 12vw, 160px);
    font-weight: 400;
    line-height: .8;
    letter-spacing: -7px;
    margin: 0 0 25px;
    color: var(--gold-light);
}

.studio-title {
    font-family: var(--serif);
    font-size: clamp(30px, 4vw, 55px);
    font-weight: 400;
    line-height: 1;
    margin: 0 0 30px;
}

.studio-page .studio-description {
    max-width: 650px;

    color: var(--text);

    font-size: 15px;
    line-height: 1.9;

    margin: 0;
}


/* CATEGORIES */

.studio-page .studio-categories {
    padding: 100px 7%;

    border-bottom:
        1px solid var(--line);
}

.studio-category-list {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    border-top: 1px solid var(--line);
}

.studio-category-list > * {
    padding: 30px 25px 30px 0;
    border-bottom: 1px solid var(--line);
}


/* MEDIA */

.studio-page .studio-media {
    padding: 100px 7%;

    border-bottom:
        1px solid var(--line);
}

.media-placeholder {
    min-height: 320px;
    margin-top: 30px;
    border: 1px solid var(--line);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #0b0b0a;
}

.media-placeholder + .media-placeholder {
    margin-top: 20px;
}

.media-placeholder span {
    color: var(--gold);
    font-size: 11px;
    letter-spacing: 4px;
}

.media-placeholder p {
    color: var(--text);
    font-size: 13px;
    margin-top: 15px;
}


/* NAVIGATION */

.studio-navigation {
    padding: 70px 7%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.studio-back,
.studio-prev,
.studio-next {
    color: var(--text);
    text-decoration: none;
    font-size: 10px;
    letter-spacing: 2px;
    transition: color .3s ease;
}

.studio-back:hover,
.studio-prev:hover,
.studio-next:hover {
    color: var(--gold-light);
}

.studio-next-prev {
    display: flex;
    gap: 35px;
}


/* MOBILE */

@media (max-width: 800px) {

    .studio-page {
        padding-top: 20px;
    }

    .studio-hero {
        min-height: 60vh;
        padding: 80px 6%;
    }

    .studio-name {
        font-size: 75px;
        letter-spacing: -4px;
    }

    .studio-title {
        font-size: 34px;
    }

    .studio-description {
        font-size: 14px;
    }

    .studio-categories,
    .studio-media {
        padding: 80px 6%;
    }

    .studio-category-list {
        grid-template-columns: 1fr;
    }

    .media-placeholder {
        min-height: 240px;
    }

    .studio-navigation {
        padding: 60px 6%;
        flex-direction: column;
        align-items: flex-start;
    }

    .studio-next-prev {
        width: 100%;
        justify-content: space-between;
    }

}

/* =====================================================
   STUDIO STORY
   ===================================================== */

.studio-story {
    padding: 110px 7%;
    border-bottom: 1px solid var(--line);
}

.studio-story-grid {
    max-width: 1100px;
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 100px;
}

.studio-story h2 {
    font-family: var(--serif);
    font-size: clamp(42px, 6vw, 78px);
    line-height: .9;
    letter-spacing: -4px;
    font-weight: 400;
    margin: 25px 0 0;
}

.studio-story-grid > div:last-child {
    padding-top: 10px;
}

.studio-story-grid p {
    color: var(--text);
    font-size: 15px;
    line-height: 1.9;
    margin: 0;
    max-width: 600px;
}

@media (max-width: 800px) {

    .studio-story {
        padding: 90px 6%;
    }

    .studio-story-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

}