/**
 * Rolex BeSpoke Official Styles
 * @version 7.2.0
 * Based on official Rolex Brand Guidelines
 */

/* ========================================
   CSS VARIABLES
   ======================================== */
:root {
    --rlx-green: #127749;
    --rlx-green-dark: #0b3e27;
    --rlx-green-light: #197149;
    --rlx-brown: #452c1e;
    --rlx-gold: #a37e2c;
    --rlx-beige: #f4efea;
    --rlx-beige-light: #f9f7f4;
    --rlx-white: #ffffff;
    --rlx-black: #000000;
    --rlx-grey: #767676;
    --rlx-grey-light: #d4d4d4;
}

/* ========================================
   HEADER OVERRIDE - GLOBAL
   ======================================== */

/* Logo Pires para o site normal */
.header_logo_img {
    background-image: url('/img/assets/logo_red.svg') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    width: 120px !important;
    height: 90px !important;
}

/* ========================================
   HEADER OVERRIDE FOR ROLEX PAGES
   Usa classe .in-rolex no body (adicionada por JS)
   Aplica fundo directamente para evitar flash
   ======================================== */

body.in-rolex .header_container {
    background: linear-gradient(to right, var(--rlx-green-dark), var(--rlx-green-light)) !important;
}

body.in-rolex .header_menu_container {
    display: none !important;
}

body.in-rolex .header_logo_img {
    background-image: url('/img/assets/logo.svg') !important;
}

/* ========================================
   TRANSIÇÃO - Apenas ao entrar na secção Rolex
   ======================================== */
body.rolex-animate .header_container {
    animation: headerBgFadeIn 0.5s ease !important;
}

@keyframes headerBgFadeIn {
    from { background: transparent; }
    to { background: linear-gradient(to right, var(--rlx-green-dark), var(--rlx-green-light)); }
}

/* ========================================
   BASE STYLES
   ======================================== */
.brb-page {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: var(--rlx-brown);
    background: var(--rlx-white);
    overflow-x: hidden;
}

.brb-page * {
    box-sizing: border-box;
}

.brb-main {
    width: 100%;
}

/* ========================================
   HEADER - 100% WIDTH
   ======================================== */
.brb-header {
    width: 100%;
    background: linear-gradient(to right, var(--rlx-green-dark), var(--rlx-green-light));
    padding: 0;
    position: relative;
    z-index: 100;
    animation: headerFadeIn 0.5s ease;
}

@keyframes headerFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.brb-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 4%;
    max-width: 100%;
}

/* Logo */
.brb-logo {
    flex-shrink: 0;
}

.brb-logo__plaque {
    display: block;
    text-decoration: none;
}

.brb-logo__img {
    height: 50px;
    width: auto;
}

/* Desktop Navigation */
.brb-nav--desktop {
    display: flex;
    flex: 1;
    justify-content: flex-end;
}

.brb-nav__list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 5px;
}

.brb-nav__item {
    margin: 0;
}

.brb-nav__link {
    display: block;
    padding: 10px 15px;
    color: var(--rlx-white) !important;
    text-decoration: none !important;
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    transition: color 0.3s;
}

.brb-nav__link:hover,
.brb-nav__link.brb-is-active {
    color: #9bf9ce !important;
}

/* Mobile Toggle */
.brb-nav-toggle {
    display: none;
    background: none;
    border: none;
    color: var(--rlx-white);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    padding: 10px 15px;
    align-items: center;
    gap: 8px;
}

/* Mobile Navigation */
.brb-nav--mobile {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--rlx-green-dark);
    padding: 20px 4%;
    z-index: 99;
}

.brb-nav--mobile.brb-is-open {
    display: block;
}

.brb-nav--mobile .brb-nav__list {
    flex-direction: column;
    gap: 0;
}

.brb-nav--mobile .brb-nav__item {
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.brb-nav--mobile .brb-nav__link {
    padding: 15px 0;
    font-size: 16px;
}

@media (max-width: 1200px) {
    .brb-nav--desktop {
        display: none;
    }
    .brb-nav-toggle {
        display: flex;
    }
}

/* ========================================
   BREADCRUMBS - Integrado no header verde
   ======================================== */
.brb-breadcrumb {
    padding: 10px 4%;
    font-size: 12px;
    background: linear-gradient(to right, var(--rlx-green-dark), var(--rlx-green-light));
    color: var(--rlx-white);
}

.brb-breadcrumb a {
    color: var(--rlx-white);
    text-decoration: none;
    opacity: 0.8;
}

.brb-breadcrumb a:hover {
    opacity: 1;
    color: #9bf9ce;
}

.brb-breadcrumb .current {
    color: var(--rlx-white);
    opacity: 1;
}

/* ========================================
   HERO CAROUSEL (DISCOVER PAGE) - 100% width
   ======================================== */
.brb-hero {
    position: relative;
    width: 100%;
    height: 70vh;
    min-height: 450px;
    max-height: 600px;
    overflow: hidden;
}

.brb-hero__slides {
    position: relative;
    width: 100%;
    height: 100%;
}

.brb-hero__slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s ease, visibility 0.8s;
}

.brb-hero__slide.active {
    opacity: 1;
    visibility: visible;
}

.brb-hero__media {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.brb-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

/* Texto sobreposto SEM fundo */
.brb-hero__content {
    position: absolute;
    top: 50%;
    right: 15%;
    transform: translateY(-50%);
    text-align: center;
    padding: 20px;
    max-width: 300px;
}

.brb-hero__label {
    font-size: 14px;
    color: var(--rlx-brown);
    margin-bottom: 5px;
    display: block;
}

.brb-hero__title {
    font-size: 42px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.1;
}

/* Variantes de cor para slides */
.brb-hero__slide--dark .brb-hero__label,
.brb-hero__slide--dark .brb-hero__title {
    color: var(--rlx-white);
}

.brb-hero__slide--light .brb-hero__label,
.brb-hero__slide--light .brb-hero__title {
    color: var(--rlx-brown);
}

/* Setas de navegação */
.brb-hero__arrows {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    pointer-events: none;
    z-index: 10;
}

.brb-hero__arrow {
    width: 50px;
    height: 50px;
    background: rgba(255,255,255,0.8);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    pointer-events: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    color: var(--rlx-brown);
    transition: all 0.3s;
}

.brb-hero__arrow:hover {
    background: var(--rlx-white);
}

/* Indicadores */
.brb-hero__indicators {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 10;
}

.brb-hero__indicator {
    width: 30px;
    height: 3px;
    background: rgba(100,100,100,0.3);
    border: none;
    cursor: pointer;
    transition: all 0.3s;
}

.brb-hero__indicator.active {
    width: 50px;
    background: var(--rlx-green);
}

/* ========================================
   BUTTONS
   ======================================== */
.brb-btn {
    display: inline-block;
    padding: 12px 30px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    border-radius: 25px;
    transition: all 0.3s;
    cursor: pointer;
    border: none;
}

.brb-btn--primary {
    background: var(--rlx-green);
    color: var(--rlx-white);
}

.brb-btn--primary:hover {
    background: var(--rlx-green-dark);
}

/* CTA Link (Learn more >) */
.brb-cta-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--rlx-green);
    font-size: 12px;
    font-weight: 400;
    text-decoration: none;
    transition: color 0.3s;
}

.brb-cta-link::after {
    content: '>';
    font-size: 10px;
}

.brb-cta-link:hover {
    color: var(--rlx-green-dark);
}

/* ========================================
   WELCOME SECTION
   ======================================== */
.brb-welcome {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-welcome__inner {
    display: flex;
    gap: 80px;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-welcome__left {
    flex: 0 0 40%;
}

.brb-welcome__right {
    flex: 1;
}

.brb-welcome__title {
    font-size: 26px;
    font-weight: 700;
    color: var(--rlx-brown);
    line-height: 1.4;
    margin: 0;
}

.brb-welcome__text {
    font-size: 14px;
    line-height: 1.8;
    color: var(--rlx-brown);
}

.brb-welcome__text strong {
    font-weight: 700;
}

/* ========================================
   SECTIONS - FULL WIDTH CENTERED
   ======================================== */
.brb-section {
    width: 100%;
    padding: 30px 4%;
    background: var(--rlx-white);
}

.brb-section--beige {
    background: var(--rlx-beige);
    padding: 50px 4%;
}

.brb-section--no-top-padding {
    padding-top: 0;
}

.brb-section--no-padding {
    padding: 0 4%;
}

.brb-section--grid {
    padding: 0 4%;
}

.brb-section__inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-section__title {
    font-size: 20px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 8px;
}

/* ========================================
   PUSH - 1x (Single Full Width)
   ======================================== */
.brb-push {
    display: block;
    text-decoration: none;
    position: relative;
    overflow: hidden;
}

.brb-push--1x {
    width: 100%;
}

.brb-push__media {
    width: 100%;
    overflow: hidden;
}

.brb-push__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.5s;
}

.brb-push:hover .brb-push__media img {
    transform: scale(1.03);
}

.brb-push__info {
    padding: 15px 0 5px;
}

.brb-push__label {
    display: block;
    font-size: 11px;
    color: var(--rlx-grey);
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.brb-push__heading {
    font-size: 20px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 8px;
}

/* ========================================
   PUSH GRID - 2x and 3x
   ======================================== */
.brb-push-grid {
    display: grid;
    gap: 20px;
}

.brb-push-grid--2x {
    grid-template-columns: repeat(2, 1fr);
}

.brb-push-grid--3x {
    grid-template-columns: repeat(3, 1fr);
}

.brb-push--card {
    display: block;
    text-decoration: none;
}

.brb-push--card .brb-push__media {
    margin-bottom: 0;
}

.brb-push--card .brb-push__media img {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    object-fit: cover;
}

.brb-push--card .brb-push__info {
    padding: 12px 0;
}

.brb-push--card .brb-push__heading {
    font-size: 16px;
    margin-bottom: 6px;
}

/* ========================================
   KEEP EXPLORING - 4x Carousel
   ======================================== */
.brb-keep-exploring {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.brb-keep-exploring__item {
    text-decoration: none;
    display: block;
}

.brb-keep-exploring__media {
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
    margin-bottom: 8px;
}

.brb-keep-exploring__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s;
}

.brb-keep-exploring__item:hover .brb-keep-exploring__media img {
    transform: scale(1.05);
}

.brb-keep-exploring__label {
    font-size: 12px;
    font-weight: 400;
    color: var(--rlx-brown);
    display: block;
    padding-top: 4px;
    border-top: 2px solid transparent;
}

.brb-keep-exploring__label--active {
    color: var(--rlx-green);
    border-top-color: var(--rlx-green);
}

.brb-keep-exploring__indicators {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
}

.brb-keep-exploring__indicator {
    width: 30px;
    height: 3px;
    background: var(--rlx-grey-light);
    border: none;
}

.brb-keep-exploring__indicator--active {
    background: var(--rlx-green);
}

/* ========================================
   FOOTER ROLEX
   ======================================== */
.brb-footer {
    background: linear-gradient(to right, var(--rlx-green-dark), var(--rlx-green-light));
}

.brb-footer__crown {
    text-align: center;
    padding: 40px 0 20px;
}

.brb-footer__crown svg {
    width: 35px;
    height: 35px;
    fill: var(--rlx-gold);
}

.brb-footer__backtop {
    text-align: center;
    padding: 10px 0 30px;
}

.brb-footer__backtop a {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    color: var(--rlx-white);
    text-decoration: none;
    font-size: 12px;
}

.brb-footer__backtop i {
    font-size: 14px;
}

/* ========================================
   HERO IMAGES (FULL WIDTH)
   ======================================== */
.brb-hero-image {
    width: 100%;
}

.brb-hero-image img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-hero-image--short {
    max-height: 350px;
    overflow: hidden;
}

.brb-hero-image--short img {
    height: 350px;
    object-fit: cover;
}

/* Hero XL - Full width, no overlay text */
.brb-hero-xl {
    width: 100%;
    overflow: hidden;
}

.brb-hero-xl img {
    width: 100%;
    height: auto;
    display: block;
}

/* Hero M - Medium width image (lifestyle) - Same width as grid, no spacing */
.brb-hero-m {
    width: 100%;
    padding: 0 4%;
    margin: 0;
    overflow: hidden;
}

.brb-hero-m__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-hero-m img {
    width: 100%;
    height: auto;
    display: block;
}

/* ========================================
   INTRO SECTION (2 COLUMNS)
   ======================================== */
.brb-intro {
    padding: 80px 4%;
    background: var(--rlx-white);
}

.brb-intro__inner {
    display: flex;
    gap: 60px;
    max-width: 1100px;
    margin: 0 auto;
}

.brb-intro__left {
    flex: 0 0 40%;
}

.brb-intro__right {
    flex: 1;
    font-size: 16px;
    line-height: 1.7;
}

.brb-intro__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    line-height: 1.3;
    margin: 0 0 10px;
}

.brb-intro__subtitle {
    font-size: 16px;
    color: var(--rlx-grey);
    margin: 0;
}

.brb-intro--centered {
    text-align: center;
}

.brb-intro--centered .brb-intro__inner {
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.brb-intro__text {
    max-width: 600px;
}

/* Intro with beige background (Festive Selection) */
.brb-intro--beige {
    background: var(--rlx-beige);
    padding: 90px 4%;
}

.brb-intro__bold {
    font-weight: 700;
    margin: 0 0 15px;
    font-size: 16px;
    line-height: 1.6;
}

.brb-intro__text {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
}

/* ========================================
   WATCHES HUB - WATCH GRID
   ======================================== */
.brb-watch-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.brb-watch-card {
    display: block;
    background: var(--rlx-beige);
    padding: 40px 30px;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s;
}

.brb-watch-card:hover {
    background: #ede9e4;
}

.brb-watch-card__media {
    margin-bottom: 20px;
}

.brb-watch-card__media img {
    width: 100%;
    max-width: 220px;
    height: auto;
}

.brb-watch-card__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
}

.brb-watch-card__name {
    font-size: 18px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 5px 0 0;
}

/* ========================================
   COLLECTION PAGE
   ======================================== */
.brb-collection-intro {
    padding: 80px 4%;
    background: var(--rlx-white);
}

.brb-collection-intro__inner {
    display: flex;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-collection-intro__left {
    flex: 0 0 40%;
}

.brb-collection-intro__right {
    flex: 1;
    line-height: 1.7;
}

.brb-collection-intro__title {
    font-size: 32px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

.brb-collection-intro__subtitle {
    font-size: 18px;
    color: var(--rlx-grey);
}

/* Collection Hero */
.brb-collection-hero {
    width: 100%;
}

.brb-collection-hero img {
    width: 100%;
    height: auto;
}

/* Collection Story */
.brb-collection-story {
    padding: 80px 4%;
    background: var(--rlx-white);
}

.brb-collection-story__inner {
    max-width: 800px;
    margin: 0 auto;
}

.brb-collection-story__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.4;
}

/* Models Grid */
.brb-models-section {
    padding: 60px 4%;
}

.brb-models-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    max-width: 1000px;
    margin: 0 auto;
}

.brb-model-card {
    display: block;
    background: var(--rlx-beige);
    padding: 30px 20px;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s;
}

.brb-model-card:hover {
    background: #ede9e4;
}

.brb-model-card__media {
    margin-bottom: 15px;
}

.brb-model-card__media img {
    width: 100%;
    max-width: 180px;
    height: auto;
}

.brb-model-card__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
}

.brb-model-card__name {
    font-size: 16px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 5px 0;
}

.brb-model-card__ref {
    font-size: 12px;
    color: var(--rlx-grey);
    margin: 0;
}

.brb-model-card__price {
    font-size: 14px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 10px 0 0;
}

.brb-load-more {
    text-align: center;
    margin-top: 40px;
}

/* ========================================
   MODEL PAGE (Nova estrutura baseada no Wireframe)
   ======================================== */

/* 1. MODEL HERO (Header com packshot) */
.brb-model-hero {
    padding: 40px 4% 60px;
    background: var(--rlx-beige);
}

.brb-model-hero__inner {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-model-hero__info {
    flex: 0 0 35%;
}

.brb-model-hero__packshot {
    flex: 1;
    text-align: center;
}

.brb-model-hero__packshot img {
    max-width: 100%;
    height: auto;
}

.brb-model-hero__eyebrow {
    font-size: 14px;
    color: var(--rlx-grey);
    display: block;
    margin-bottom: 5px;
}

.brb-model-hero__title {
    font-size: 42px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
    line-height: 1.1;
}

.brb-model-hero__subtitle {
    font-size: 16px;
    color: var(--rlx-brown);
    margin: 0 0 5px;
}

.brb-model-hero__ref {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0 0 20px;
    text-transform: uppercase;
}

.brb-model-hero__meta {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
    flex-wrap: wrap;
}

.brb-model-hero__meta-item {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 14px;
    color: var(--rlx-brown);
}

.brb-model-hero__ctas {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Model CTA buttons */
.brb-model-cta {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: var(--rlx-brown);
}

.brb-model-cta__icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.brb-model-cta__text {
    font-size: 14px;
    font-weight: 600;
}

.brb-model-cta:hover .brb-model-cta__text {
    text-decoration: underline;
}

/* THUMBNAILS */
.brb-model-thumbs {
    padding: 0 4% 40px;
    background: var(--rlx-beige);
}

.brb-model-thumbs__inner {
    display: flex;
    gap: 10px;
    justify-content: center;
    max-width: 600px;
    margin: 0 auto;
}

.brb-model-thumbs__item {
    flex: 0 0 calc(25% - 8px);
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.3s;
    border: 2px solid transparent;
}

.brb-model-thumbs__item.active,
.brb-model-thumbs__item:hover {
    opacity: 1;
    border-color: var(--rlx-green);
}

.brb-model-thumbs__item img {
    width: 100%;
    height: auto;
    display: block;
}

/* GUARANTEE (1 imagem esquerda + 3 acordeões direita) */
.brb-model-guarantee {
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-model-guarantee__inner {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-model-guarantee__image {
    flex: 0 0 45%;
}

.brb-model-guarantee__image img {
    width: 100%;
    height: auto;
}

.brb-model-guarantee__accordions {
    flex: 1;
}

/* Model Accordion */
.brb-model-accordion {
    border-bottom: 1px solid var(--rlx-grey-light);
}

.brb-model-accordion__header {
    width: 100%;
    padding: 15px 0;
    background: transparent;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    color: var(--rlx-brown);
    font-family: inherit;
    text-align: left;
}

.brb-model-accordion__header:hover {
    color: var(--rlx-green);
}

.brb-model-accordion__body {
    padding: 0 0 20px;
}

.brb-model-accordion__body p {
    font-size: 14px;
    line-height: 1.7;
    color: var(--rlx-brown);
    margin: 0;
}

/* SPECS (3 colunas texto esquerda + 1 imagem direita) */
.brb-model-specs {
    padding: 60px 4%;
    background: var(--rlx-beige);
}

.brb-model-specs__inner {
    display: flex;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-model-specs__columns {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.brb-model-specs__column {
    text-align: left;
}

.brb-model-specs__title {
    font-size: 14px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.brb-model-specs__list {
    margin: 0;
}

.brb-model-specs__item {
    margin-bottom: 10px;
}

.brb-model-specs__item dt {
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 2px;
}

.brb-model-specs__item dd {
    font-size: 14px;
    color: var(--rlx-brown);
    margin: 0;
}

.brb-model-specs__image {
    flex: 0 0 35%;
}

.brb-model-specs__image img {
    width: 100%;
    height: auto;
}

.brb-model-specs__cta {
    text-align: center;
    margin-top: 40px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

/* 5. MODEL FEATURES */
.brb-model-features {
    width: 100%;
}

.brb-model-feature {
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-model-feature--beige {
    background: var(--rlx-beige);
}

.brb-model-feature__inner {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.brb-model-feature__title {
    font-size: 32px;
    font-weight: 400;
    font-style: italic;
    color: var(--rlx-brown);
    margin: 0 0 20px;
}

.brb-model-feature__text {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rlx-brown);
    margin: 0 0 30px;
    text-align: left;
}

.brb-model-feature__image {
    max-width: 500px;
    margin: 0 auto;
}

.brb-model-feature__image img {
    width: 100%;
    height: auto;
}

/* 6. MODEL AVAILABILITY */
.brb-model-availability {
    padding: 80px 4%;
    text-align: center;
    background: var(--rlx-green);
}

.brb-model-availability__inner {
    max-width: 700px;
    margin: 0 auto;
}

.brb-model-availability__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-white);
    margin: 0 0 20px;
}

.brb-model-availability__text {
    font-size: 16px;
    color: var(--rlx-white);
    line-height: 1.7;
    margin: 0;
}

/* 7. MODEL CONTACT (Accordion) */
.brb-model-contact {
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-model-contact__inner {
    max-width: 800px;
    margin: 0 auto;
}

.brb-model-contact__title {
    font-size: 24px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 25px;
}

/* Accordion */
.brb-accordion__item {
    border: 1px solid var(--rlx-grey-light);
    margin-bottom: 10px;
}

.brb-accordion__header {
    width: 100%;
    padding: 15px 20px;
    background: var(--rlx-beige);
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    color: var(--rlx-brown);
    font-family: inherit;
}

.brb-accordion__body {
    padding: 25px 20px;
    background: var(--rlx-white);
}

.brb-message-form h4 {
    font-size: 18px;
    margin: 0 0 10px;
    color: var(--rlx-brown);
}

.brb-message-form p {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0 0 15px;
}

.brb-message-form textarea {
    width: 100%;
    border: 1px solid var(--rlx-grey-light);
    padding: 15px;
    font-size: 14px;
    margin-bottom: 15px;
    font-family: inherit;
    resize: vertical;
}

/* 8. L IMAGE */
.brb-model-limage {
    width: 100%;
}

.brb-model-limage img {
    width: 100%;
    height: auto;
    display: block;
}

/* 9. APPOINTMENT SECTION */
.brb-model-appointment {
    padding: 60px 4%;
    background: var(--rlx-beige);
    text-align: center;
}

.brb-model-appointment__inner {
    max-width: 900px;
    margin: 0 auto;
}

.brb-model-appointment__eyebrow {
    font-size: 12px;
    color: var(--rlx-green);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 10px;
}

.brb-model-appointment__title {
    font-size: 32px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

.brb-model-appointment__text {
    font-size: 16px;
    color: var(--rlx-brown);
    line-height: 1.6;
    margin: 0 0 10px;
}

.brb-model-appointment__subtext {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0 0 30px;
}

.brb-model-appointment__options {
    display: flex;
    gap: 20px;
    justify-content: center;
}

.brb-model-appointment__option {
    flex: 0 0 calc(50% - 10px);
    max-width: 350px;
    text-decoration: none;
}

.brb-model-appointment__option img {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
}

.brb-model-appointment__option span {
    font-size: 14px;
    color: var(--rlx-green);
}

.brb-model-appointment__option span::after {
    content: ' ›';
}

/* 10. X1 PUSH */
.brb-model-push {
    position: relative;
    width: 100%;
}

.brb-model-push__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-model-push__overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 40px;
    color: var(--rlx-white);
}

.brb-model-push__eyebrow {
    font-size: 12px;
    display: block;
    margin-bottom: 5px;
    opacity: 0.8;
}

.brb-model-push__title {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 15px;
}

.brb-model-push__link {
    font-size: 14px;
    color: var(--rlx-white);
}

.brb-model-push__link::after {
    content: ' ›';
}

/* Loading */
.brb-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    color: var(--rlx-green);
}

/* Responsive Model */
@media (max-width: 1024px) {
    .brb-model-specs__inner {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-model-appointment__options {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 767px) {
    .brb-model-hero__inner {
        flex-direction: column;
    }
    
    .brb-model-hero__info {
        flex: none;
        width: 100%;
    }
    
    .brb-model-hero__title {
        font-size: 32px;
    }
    
    .brb-model-guarantee__inner {
        flex-direction: column;
    }
    
    .brb-model-guarantee__images {
        flex: none;
        width: 100%;
    }
    
    .brb-model-specs__inner {
        grid-template-columns: 1fr;
    }
    
    .brb-model-push__overlay {
        padding: 20px;
    }
    
    .brb-model-push__title {
        font-size: 22px;
    }
}

/* ========================================
   VIDEO PLAYER (YouTube Embed)
   ======================================== */
.brb-video-section {
    width: 100%;
    padding: 0 4%;
    background: var(--rlx-white);
}

.brb-video-player {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-video-player__wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
    background: var(--rlx-black);
}

.brb-video-player__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ========================================
   BLOCK SECTIONS (Centered Column Layout)
   Title → Text → Image - ALL CENTERED
   Used in Watchmaking page
   ======================================== */
.brb-block {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-block__inner {
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
}

.brb-block__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 25px;
    line-height: 1.3;
}

.brb-block__text {
    font-size: 15px;
    line-height: 1.8;
    color: var(--rlx-brown);
    margin: 0 0 40px;
}

.brb-block__text:last-child {
    margin-bottom: 0;
}

/* Block with beige background */
.brb-block--beige {
    background: var(--rlx-beige);
}

/* Media - Centered below text */
.brb-block__media {
    margin: 0 auto;
}

.brb-block__media img {
    width: 100%;
    height: auto;
    display: block;
}

/* S Image - Smaller centered */
.brb-block__media--s {
    max-width: 600px;
}

/* M Image - Medium centered */
.brb-block__media--m {
    max-width: 800px;
}

/* Multiple images spacing */
.brb-block__media + .brb-block__media {
    margin-top: 20px;
}

/* Large width image (quase full width) - centered */
.brb-image-l {
    width: 100%;
    padding: 0 4%;
    background: var(--rlx-white);
}

.brb-image-l__inner {
    max-width: 1100px;
    margin: 0 auto;
}

.brb-image-l img {
    width: 100%;
    height: auto;
    display: block;
}

/* Medium width image (not fullwidth) - centered */
.brb-image-m {
    width: 100%;
    padding: 0 4%;
    background: var(--rlx-white);
}

.brb-image-m__inner {
    max-width: 900px;
    margin: 0 auto;
}

.brb-image-m img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-image-m--beige {
    background: var(--rlx-beige);
}

/* Spacer section */
.brb-spacer {
    width: 100%;
    height: 60px;
    background: var(--rlx-white);
}

/* Video with top spacing */
.brb-video-section--spaced {
    margin-top: 60px;
}

/* Image with bottom spacing */
.brb-image-m--spaced-bottom {
    padding-bottom: 60px;
}

/* ========================================
   CONTENT BLOCKS (50/50)
   ======================================== */
.brb-content-section {
    padding: 0;
}

.brb-content-block {
    display: flex;
}

.brb-content-block--reverse {
    flex-direction: row-reverse;
}

.brb-content-block__media {
    flex: 0 0 50%;
    min-height: 400px;
}

/* S Image - smaller content image */
.brb-content-block__media--s {
    flex: 0 0 40%;
    min-height: 350px;
}

/* M Image - medium content image */
.brb-content-block__media--m {
    flex: 0 0 50%;
    min-height: 450px;
}

.brb-content-block__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.brb-content-block__text {
    flex: 1;
    padding: 60px 6%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 600px;
}

.brb-content-block__text h2 {
    font-size: 32px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 25px;
    line-height: 1.3;
}

.brb-content-block__text p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 20px;
    color: var(--rlx-brown);
}

/* Centered Content Section */
.brb-content-section--centered {
    padding: 80px 4%;
    background: var(--rlx-white);
}

.brb-content-centered {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.brb-content-centered h2 {
    font-size: 32px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 25px;
    line-height: 1.3;
}

.brb-content-centered p {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rlx-brown);
}

/* ========================================
   SERVICING PLAQUE
   ======================================== */
.brb-servicing-plaque {
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-servicing-plaque__inner {
    display: flex;
    gap: 40px;
    align-items: center;
    max-width: 900px;
    margin: 0 auto;
}

.brb-servicing-plaque__image {
    flex: 0 0 180px;
}

.brb-servicing-plaque__image img {
    width: 100%;
}

.brb-servicing-plaque__text h2 {
    font-size: 22px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

/* ========================================
   STORE INFO
   ======================================== */
.brb-store-info {
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-store-info__inner {
    display: flex;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-store-info__image {
    flex: 0 0 50%;
}

.brb-store-info__image img {
    width: 100%;
    height: auto;
}

.brb-store-info__content {
    flex: 1;
}

.brb-store-info__content h2 {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
}

.brb-store-info__content address {
    font-style: normal;
    margin-bottom: 20px;
    line-height: 1.8;
}

.brb-store-info__phone,
.brb-store-info__email {
    margin: 10px 0;
}

.brb-store-info__phone i,
.brb-store-info__email i {
    margin-right: 10px;
    color: var(--rlx-green);
}

.brb-store-info__hours {
    margin: 25px 0;
}

.brb-store-info__hours h3 {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 12px;
}

.brb-store-info__hours table {
    width: 100%;
    max-width: 280px;
}

.brb-store-info__hours td {
    padding: 4px 0;
    font-size: 14px;
}

.brb-store-info--compact {
    text-align: center;
}

.brb-store-info--compact .brb-store-info__inner {
    justify-content: center;
}

.brb-store-info__content--centered {
    text-align: center;
}

/* ========================================
   FORMS
   ======================================== */
.brb-form-section {
    padding: 40px 4% 60px;
    background: var(--rlx-beige-light);
    max-width: 750px;
    margin: 0 auto;
}

.brb-form-row {
    display: flex;
    gap: 25px;
}

.brb-form-group {
    margin-bottom: 25px;
}

.brb-form-group--half {
    flex: 1;
}

.brb-form-group label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin-bottom: 8px;
}

.brb-form-group input,
.brb-form-group select,
.brb-form-group textarea {
    width: 100%;
    padding: 12px 0;
    border: none;
    border-bottom: 1px solid var(--rlx-grey-light);
    background: transparent;
    font-size: 16px;
    font-family: Helvetica, sans-serif;
    color: var(--rlx-brown);
}

.brb-form-group input:focus,
.brb-form-group select:focus,
.brb-form-group textarea:focus {
    outline: none;
    border-bottom-color: var(--rlx-green);
}

.brb-form-group textarea {
    border: 1px solid var(--rlx-grey-light);
    padding: 15px;
    resize: vertical;
}

.brb-form-group--checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.brb-form-group--checkbox input {
    width: auto;
    margin-top: 3px;
}

.brb-form-group--checkbox label {
    margin-bottom: 0;
    font-weight: 400;
}

.brb-form-group--checkbox a {
    color: var(--rlx-green);
}

.brb-form-actions {
    text-align: right;
    margin-top: 30px;
}

/* ========================================
   ACCESSORIES
   ======================================== */
.brb-accessories-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.brb-accessory-card {
    display: block;
    text-align: center;
    text-decoration: none;
    transition: transform 0.3s;
}

.brb-accessory-card:hover {
    transform: translateY(-5px);
}

.brb-accessory-card__media {
    margin-bottom: 15px;
}

.brb-accessory-card__media img {
    width: 100%;
    height: auto;
}

.brb-accessory-card__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
}

.brb-accessory-card__name {
    font-size: 16px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 5px 0;
}

.brb-accessory-card__price {
    font-size: 14px;
    color: var(--rlx-brown);
    margin: 0;
}

/* ========================================
   PRODUCT GRID (Festive Selection Watches)
   Based on official Rolex mockup specs
   ======================================== */
.brb-product-grid {
    display: grid;
    gap: 8px;
    align-items: stretch;
}

.brb-product-grid--3col {
    grid-template-columns: repeat(3, 1fr);
}

/* Headline da secção */
.brb-product-grid__title {
    font-size: 50px;
    font-weight: 400;
    color: var(--rlx-brown);
    text-align: center;
    margin: 0 0 50px;
}

.brb-product-card {
    display: flex;
    flex-direction: column;
    background: var(--rlx-beige);
    padding: 5%;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s;
    min-height: 400px;
}

.brb-product-card:hover {
    background: #ede9e4;
}

/* Área da imagem - 70% da altura */
.brb-product-card__media {
    flex: 0 0 70%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.brb-product-card__media img {
    width: auto;
    height: 100%;
    max-height: 250px;
    object-fit: contain;
}

/* Área do texto - 25% inferior */
.brb-product-card__info {
    flex: 0 0 25%;
    text-align: left;
    padding: 0 50px 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* Legend16 - Label "Rolex" - Brown */
.brb-product-card__label {
    display: block;
    font-size: 16px;
    font-weight: 400;
    color: var(--rlx-brown);
    margin-bottom: 2px;
}

/* Body24 - Nome do modelo - Brown Bold */
.brb-product-card__name {
    font-size: 24px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 4px;
    line-height: 1.2;
}

/* Legend16 - Descrição - Black */
.brb-product-card__desc {
    font-size: 16px;
    font-weight: 400;
    color: var(--rlx-black);
    margin: 0;
    line-height: 1.4;
}

/* Botão CTA após o grid */
.brb-product-grid__cta {
    text-align: center;
    margin-top: 40px;
}

/* ========================================
   CUFFLINKS GRID (Festive Selection)
   Same style as product cards
   ======================================== */
.brb-cufflinks-grid {
    display: grid;
    gap: 8px;
    align-items: stretch;
}

.brb-cufflinks-grid--3col {
    grid-template-columns: repeat(3, 1fr);
}

.brb-cufflink-card {
    display: flex;
    flex-direction: column;
    background: var(--rlx-beige);
    padding: 5%;
    text-align: center;
    text-decoration: none;
    transition: background 0.3s;
    min-height: 350px;
}

.brb-cufflink-card:hover {
    background: #ede9e4;
}

/* Área da imagem - 70% da altura */
.brb-cufflink-card__media {
    flex: 0 0 70%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.brb-cufflink-card__media img {
    width: auto;
    height: 100%;
    max-height: 200px;
    object-fit: contain;
}

/* Área do texto - 25% inferior */
.brb-cufflink-card__info {
    flex: 0 0 25%;
    text-align: left;
    padding: 0 30px 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* Nome do cufflink - Bold */
.brb-cufflink-card__name {
    font-size: 20px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 4px;
    line-height: 1.2;
}

/* Material - Regular */
.brb-cufflink-card__material {
    font-size: 16px;
    font-weight: 400;
    color: var(--rlx-black);
    margin: 0;
}

/* ========================================
   ACCESSORIES HUB PAGE
   ======================================== */
.brb-accessories-section {
    width: 100%;
    padding: 0 4%;
}

.brb-accessories-section--beige {
    background: var(--rlx-beige);
    padding: 60px 4%;
}

.brb-accessories-section__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-accessories-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 20px;
}

.brb-accessory-card {
    display: block;
    text-align: center;
    text-decoration: none;
}

.brb-accessory-card__media {
    margin-bottom: 20px;
    background: transparent;
}

.brb-accessory-card__media img {
    width: 100%;
    height: auto;
}

.brb-accessory-card__info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.brb-accessory-card__name {
    font-size: 16px;
    font-weight: 700;
    color: var(--rlx-brown);
}

.brb-accessory-card__material {
    font-size: 14px;
    color: var(--rlx-black);
}

/* Cufflinks Sections (Crown, Hand, Fluted) */
.brb-cufflinks-section {
    width: 100%;
    padding: 80px 4%;
}

.brb-cufflinks-section__feature {
    display: flex;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto 40px;
    align-items: center;
}

.brb-cufflinks-section--reverse .brb-cufflinks-section__feature {
    flex-direction: row-reverse;
}

.brb-cufflinks-section__media {
    flex: 1;
}

.brb-cufflinks-section__media img {
    width: 100%;
    height: auto;
}

.brb-cufflinks-section__content {
    flex: 1;
    text-align: left;
}

.brb-cufflinks-section__title {
    font-size: 32px;
    font-weight: 400;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

.brb-cufflinks-section__subtitle {
    font-size: 24px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
}

.brb-cufflinks-section__text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--rlx-black);
    margin: 0;
}

.brb-cufflinks-section__products {
    display: flex;
    justify-content: center;
    gap: 60px;
    max-width: 800px;
    margin: 0 auto;
}

.brb-cufflinks-section__product {
    flex: 1;
    max-width: 300px;
}

.brb-cufflinks-section__product img {
    width: 100%;
    height: auto;
    transition: transform 0.3s;
}

.brb-cufflinks-section__product:hover img {
    transform: scale(1.05);
}

/* Responsive */
@media (max-width: 768px) {
    .brb-accessories-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 15px;
    }
    
    .brb-cufflinks-section {
        padding: 40px 4%;
    }
    
    .brb-cufflinks-section__feature {
        flex-direction: column;
        gap: 30px;
    }
    
    .brb-cufflinks-section--reverse .brb-cufflinks-section__feature {
        flex-direction: column;
    }
    
    .brb-cufflinks-section__title {
        font-size: 24px;
    }
    
    .brb-cufflinks-section__subtitle {
        font-size: 18px;
    }
    
    .brb-cufflinks-section__products {
        flex-direction: column;
        gap: 30px;
    }
}

/* ========================================
   ACCESSORY MODEL PAGE
   ======================================== */
.brb-accessory-hero {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-beige);
}

.brb-accessory-hero__inner {
    display: flex;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto;
    align-items: center;
}

.brb-accessory-hero__info {
    flex: 0 0 40%;
}

.brb-accessory-hero__title {
    font-size: 32px;
    font-weight: 400;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

.brb-accessory-hero__material {
    font-size: 16px;
    color: var(--rlx-green);
    margin: 0 0 5px;
}

.brb-accessory-hero__rmc {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0 0 10px;
}

.brb-accessory-hero__price {
    font-size: 18px;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

.brb-accessory-hero__price i {
    font-size: 12px;
    color: var(--rlx-grey);
    cursor: pointer;
}

.brb-accessory-hero__actions {
    display: flex;
    gap: 20px;
    margin-bottom: 15px;
}

.brb-accessory-hero__action {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: var(--rlx-brown);
    text-decoration: none;
    cursor: pointer;
}

.brb-accessory-hero__action:hover {
    color: var(--rlx-green);
}

.brb-accessory-hero__action i {
    font-size: 16px;
}

.brb-accessory-hero__media {
    flex: 1;
    text-align: center;
}

.brb-accessory-hero__media img {
    max-width: 100%;
    max-height: 400px;
    object-fit: contain;
}

/* Accessory Specs Bar */
.brb-accessory-specs {
    width: 100%;
    padding: 40px 4%;
    background: var(--rlx-beige);
    border-top: 1px solid #d4d4d4;
}

.brb-accessory-specs__inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-accessory-specs__item {
    text-align: left;
}

.brb-accessory-specs__item--full {
    grid-column: 1 / -1;
}

.brb-accessory-specs__label {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin-bottom: 5px;
}

.brb-accessory-specs__value {
    font-size: 14px;
    font-weight: 400;
    color: var(--rlx-black);
}

/* Accessory Packshot */
.brb-accessory-packshot {
    max-width: 600px;
    margin: 0 auto;
}

.brb-accessory-packshot img {
    width: 100%;
    height: auto;
}

/* Accessory Contact Section */
.brb-accessory-contact {
    width: 100%;
    padding: 60px 4%;
    max-width: 1200px;
    margin: 0 auto;
}

.brb-accessory-contact__title {
    font-size: 32px;
    font-weight: 400;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

/* Accordion */
.brb-accordion {
    border-top: 1px solid #e0e0e0;
}

.brb-accordion:last-child {
    border-bottom: 1px solid #e0e0e0;
}

.brb-accordion__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 0;
    cursor: pointer;
    font-size: 16px;
    color: var(--rlx-brown);
    background: none;
    border: none;
    width: 100%;
    text-align: left;
}

.brb-accordion__header i {
    font-size: 14px;
    color: var(--rlx-brown);
}

.brb-accordion__body {
    padding: 0 0 40px;
}

.brb-accordion__image {
    margin-bottom: 40px;
}

.brb-accordion__image img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-accordion__form {
    max-width: 500px;
    margin: 0 auto;
    text-align: center;
}

.brb-accordion__form h4 {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0 0 10px;
    font-weight: 400;
}

.brb-accordion__subtitle {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

.brb-accordion__text {
    font-size: 14px;
    color: var(--rlx-black);
    margin: 0 0 25px;
    line-height: 1.6;
}

.brb-accordion__form textarea {
    width: 100%;
    border: 1px solid #d4d4d4;
    padding: 15px;
    font-size: 14px;
    font-family: inherit;
    resize: vertical;
    min-height: 100px;
    margin-bottom: 20px;
}

.brb-accordion__form textarea:focus {
    outline: none;
    border-color: var(--rlx-green);
}

.brb-accordion__content {
    padding: 20px 0;
    text-align: center;
}

.brb-accordion__content p {
    font-size: 16px;
    color: var(--rlx-black);
    margin: 0 0 20px;
}

/* Push Section */
.brb-push-section {
    width: 100%;
    padding: 0;
    position: relative;
}

.brb-push-section__inner {
    position: relative;
}

.brb-push-section__media {
    position: relative;
}

.brb-push-section__media::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
}

.brb-push-section__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-push-section__content {
    position: absolute;
    bottom: 40px;
    left: 40px;
    z-index: 1;
}

.brb-push-section__label {
    display: block;
    font-size: 14px;
    color: var(--rlx-white);
    margin-bottom: 10px;
}

.brb-push-section__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-white);
    margin: 0 0 15px;
}

.brb-push-section__link {
    font-size: 14px;
    color: var(--rlx-green-light);
    text-decoration: none;
}

.brb-push-section__link:hover {
    text-decoration: underline;
}

/* ========================================
   KEEP EXPLORING - Active State
   ======================================== */
.brb-keep-exploring__item--active .brb-keep-exploring__label {
    color: var(--rlx-green);
    border-top-color: var(--rlx-green);
}

/* ========================================
   RESPONSIVE
   ======================================== */
@media (max-width: 1024px) {
    .brb-welcome__inner,
    .brb-intro__inner,
    .brb-collection-intro__inner,
    .brb-model-header__inner,
    .brb-model-specs__inner,
    .brb-store-info__inner,
    .brb-servicing-plaque__inner {
        flex-direction: column;
        gap: 30px;
    }
    
    .brb-welcome__left,
    .brb-intro__left,
    .brb-collection-intro__left,
    .brb-model-header__left,
    .brb-model-specs__image {
        flex: none;
    }
    
    .brb-hero__content {
        right: 10%;
        padding: 15px;
        max-width: 250px;
    }
    
    .brb-hero__title {
        font-size: 32px;
    }
    
    .brb-hero__arrow {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }
    
    .brb-watch-grid,
    .brb-models-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-push-grid--3x {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-feature,
    .brb-feature--reverse,
    .brb-content-block,
    .brb-content-block--reverse {
        flex-direction: column;
    }
    
    .brb-feature__media,
    .brb-content-block__media,
    .brb-content-block__media--s,
    .brb-content-block__media--m {
        flex: none;
        min-height: 300px;
    }
    
    .brb-content-block__text {
        padding: 40px 5%;
        max-width: none;
    }
    
    .brb-content-block__text h2 {
        font-size: 26px;
    }
    
    .brb-content-section--centered {
        padding: 60px 5%;
    }
    
    .brb-content-centered h2 {
        font-size: 26px;
    }
    
    /* Block sections tablet */
    .brb-block {
        padding: 50px 5%;
    }
    
    .brb-block__title {
        font-size: 24px;
    }
    
    .brb-block__text {
        font-size: 14px;
        margin-bottom: 30px;
    }
    
    .brb-accessories-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-keep-exploring {
        grid-template-columns: repeat(3, 1fr);
    }
    
    /* Product grid tablet - 2 columns */
    .brb-product-grid--3col {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-product-card {
        min-height: 350px;
    }
    
    .brb-product-card__info {
        padding: 0 30px 0 0;
    }
    
    .brb-product-card__name {
        font-size: 20px;
    }
    
    .brb-product-card__label,
    .brb-product-card__desc {
        font-size: 14px;
    }
    
    /* Cufflinks grid tablet - 2 columns */
    .brb-cufflinks-grid--3col {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-cufflink-card {
        min-height: 300px;
    }
    
    .brb-cufflink-card__name {
        font-size: 18px;
    }
    
    .brb-cufflink-card__material {
        font-size: 14px;
    }
}

@media (max-width: 767px) {
    .brb-hero {
        height: 50vh;
        min-height: 300px;
        max-height: 400px;
    }
    
    .brb-hero__content {
        right: 50%;
        transform: translate(50%, -50%);
        padding: 15px 20px;
        max-width: 200px;
    }
    
    .brb-hero__title {
        font-size: 24px;
        margin-bottom: 12px;
    }
    
    .brb-hero__label {
        font-size: 12px;
    }
    
    .brb-hero__arrows {
        display: none; /* Esconder setas em mobile, usar swipe */
    }
    
    .brb-hero__indicators {
        bottom: 10px;
    }
    
    .brb-hero__indicator {
        width: 20px;
    }
    
    .brb-hero__indicator.active {
        width: 35px;
    }
    
    .brb-welcome,
    .brb-intro,
    .brb-section {
        padding: 50px 5%;
    }
    
    /* Intro beige mobile */
    .brb-intro--beige {
        padding: 60px 5%;
    }
    
    .brb-welcome__title,
    .brb-intro__title {
        font-size: 24px;
    }
    
    .brb-watch-grid,
    .brb-models-grid {
        grid-template-columns: 1fr;
    }
    
    .brb-push-grid--2x,
    .brb-push-grid--3x {
        grid-template-columns: 1fr;
    }
    
    .brb-form-row {
        flex-direction: column;
        gap: 0;
    }
    
    .brb-hero-image--short {
        max-height: 200px;
    }
    
    .brb-hero-image--short img {
        height: 200px;
    }
    
    .brb-accessories-grid {
        grid-template-columns: 1fr;
    }
    
    .brb-model-header__ctas {
        flex-direction: column;
        gap: 15px;
    }
    
    /* Video player mobile */
    .brb-video-section {
        padding: 0;
    }
    
    /* Content blocks mobile */
    .brb-content-block__media,
    .brb-content-block__media--s,
    .brb-content-block__media--m {
        min-height: 250px;
    }
    
    .brb-content-block__text {
        padding: 30px 5%;
    }
    
    .brb-content-block__text h2 {
        font-size: 22px;
        margin-bottom: 15px;
    }
    
    .brb-content-block__text p {
        font-size: 14px;
        line-height: 1.7;
    }
    
    .brb-content-section--centered {
        padding: 50px 5%;
    }
    
    .brb-content-centered h2 {
        font-size: 22px;
    }
    
    .brb-content-centered p {
        font-size: 14px;
    }
    
    /* Block sections mobile */
    .brb-block {
        padding: 40px 5%;
    }
    
    .brb-block__title {
        font-size: 20px;
        margin-bottom: 15px;
    }
    
    .brb-block__text {
        font-size: 14px;
        line-height: 1.7;
        margin-bottom: 25px;
    }
    
    .brb-block__media--s,
    .brb-block__media--m {
        max-width: 100%;
    }
    
    .brb-keep-exploring {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    /* Product grid mobile - 2 columns */
    .brb-product-grid--3col {
        grid-template-columns: repeat(2, 1fr);
        gap: 2px;
    }
    
    .brb-product-grid__title {
        font-size: 32px;
        margin-bottom: 30px;
    }
    
    .brb-product-card {
        padding: 4%;
        min-height: 280px;
    }
    
    .brb-product-card__media {
        padding: 10px;
    }
    
    .brb-product-card__media img {
        max-height: 150px;
    }
    
    .brb-product-card__info {
        padding: 0 10px 0 0;
    }
    
    .brb-product-card__label {
        font-size: 12px;
    }
    
    .brb-product-card__name {
        font-size: 16px;
    }
    
    .brb-product-card__desc {
        font-size: 12px;
    }
    
    .brb-product-grid__cta {
        margin-top: 30px;
    }
    
    /* Cufflinks grid mobile - 2 columns */
    .brb-cufflinks-grid--3col {
        grid-template-columns: repeat(2, 1fr);
        gap: 2px;
    }
    
    .brb-cufflink-card {
        padding: 4%;
        min-height: 250px;
    }
    
    .brb-cufflink-card__media {
        padding: 10px;
    }
    
    .brb-cufflink-card__media img {
        max-height: 130px;
    }
    
    .brb-cufflink-card__info {
        padding: 0 10px 0 0;
    }
    
    .brb-cufflink-card__name {
        font-size: 14px;
    }
    
    .brb-cufflink-card__material {
        font-size: 12px;
    }
}

/* ========================================
   ARTICLES (World of Rolex Hub)
   ======================================== */
.brb-articles {
    width: 100%;
    padding: 0 4%;
    background: var(--rlx-white);
}

.brb-articles__inner {
    max-width: 1200px;
    margin: 0 auto;
}

/* Featured Article (1x Push - Full Width) */
.brb-article-featured {
    display: block;
    text-decoration: none;
    color: inherit;
    margin-bottom: 60px;
}

.brb-article-featured__media {
    width: 100%;
    margin-bottom: 20px;
}

.brb-article-featured__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-article-featured__info {
    text-align: left;
}

.brb-article-featured__date {
    display: block;
    font-size: 13px;
    color: var(--rlx-grey);
    margin-bottom: 8px;
    text-transform: none;
}

.brb-article-featured__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
    line-height: 1.3;
}

.brb-article-featured__excerpt {
    font-size: 16px;
    line-height: 1.6;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    max-width: 600px;
}

/* Articles Grid (2x Push) */
.brb-articles-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 60px;
}

.brb-article-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.brb-article-card__media {
    width: 100%;
    margin-bottom: 15px;
    overflow: hidden;
}

.brb-article-card__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.brb-article-card:hover .brb-article-card__media img {
    transform: scale(1.03);
}

.brb-article-card__info {
    text-align: left;
}

.brb-article-card__date {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 6px;
}

.brb-article-card__title {
    font-size: 22px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
    line-height: 1.3;
}

.brb-article-card__excerpt {
    font-size: 14px;
    line-height: 1.6;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

/* CTA Link (Learn more) */
.brb-cta-link {
    display: inline-block;
    font-size: 14px;
    color: var(--rlx-green);
    font-weight: 500;
    text-decoration: none;
}

.brb-cta-link::after {
    content: ' ›';
    font-size: 16px;
}

.brb-cta-link:hover {
    text-decoration: underline;
}

/* Responsive Articles */
@media (max-width: 767px) {
    .brb-articles-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .brb-article-featured__title {
        font-size: 22px;
    }
    
    .brb-article-card__title {
        font-size: 18px;
    }
}

/* ========================================
   ARTICLE PAGE
   ======================================== */

/* Article Intro (fundo beige) */
.brb-article-intro {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-beige);
}

.brb-article-intro__inner {
    max-width: 700px;
    margin: 0;
    text-align: left;
}

.brb-article-intro__title {
    font-size: 36px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.2;
}

.brb-article-intro__lead {
    font-size: 18px;
    line-height: 1.6;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

.brb-article-intro__date {
    font-size: 13px;
    color: var(--rlx-grey);
}

/* Article Hero (com overlay opcional) */
.brb-article-hero {
    width: 100%;
    position: relative;
}

.brb-article-hero img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-article-hero__overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px 4%;
    background: linear-gradient(transparent, rgba(0,0,0,0.5));
}

.brb-article-hero__text {
    font-size: 42px;
    font-weight: 700;
    color: var(--rlx-white);
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

/* Article Text Block */
.brb-article-text {
    width: 100%;
    padding: 40px 4%;
    background: var(--rlx-white);
}

.brb-article-text__inner {
    max-width: 700px;
    margin: 0 auto;
    text-align: left;
}

.brb-article-text__inner p {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rlx-brown);
    margin: 0;
}

/* Article Quote Block */
.brb-article-quote {
    width: 100%;
    padding: 40px 4%;
    background: var(--rlx-white);
}

.brb-article-quote__inner {
    max-width: 700px;
    margin: 0 auto;
    text-align: left;
}

.brb-article-quote__inner blockquote {
    font-size: 28px;
    font-weight: 400;
    font-style: italic;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.4;
    border: none;
    padding: 0;
}

.brb-article-quote__title {
    font-size: 22px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0;
}

/* Article Images */
.brb-article-image {
    width: 100%;
    padding: 20px 4%;
    background: var(--rlx-white);
}

.brb-article-image__inner {
    margin: 0 auto;
}

.brb-article-image--s .brb-article-image__inner {
    max-width: 600px;
}

.brb-article-image--m .brb-article-image__inner {
    max-width: 900px;
}

.brb-article-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* Article Image Group (2 images) */
.brb-article-image-group {
    width: 100%;
    padding: 20px 4%;
    background: var(--rlx-white);
}

.brb-article-image-group__inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto;
}

.brb-article-image-group__item img {
    width: 100%;
    height: auto;
    display: block;
}

/* Article Product Push */
.brb-article-product {
    width: 100%;
    padding: 40px 4%;
    background: var(--rlx-beige);
}

.brb-article-product__inner {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    gap: 30px;
    align-items: center;
}

.brb-article-product__media {
    flex: 0 0 50%;
}

.brb-article-product__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-article-product__info {
    flex: 1;
}

.brb-article-product__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 5px;
}

.brb-article-product__name {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

.brb-article-product__desc {
    font-size: 16px;
    color: var(--rlx-brown);
    margin: 0;
}

/* Article Related Push */
.brb-article-related {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-article-related__inner {
    max-width: 1000px;
    margin: 0 auto;
}

.brb-article-related__card {
    display: flex;
    gap: 30px;
    text-decoration: none;
    color: inherit;
}

.brb-article-related__media {
    flex: 0 0 50%;
}

.brb-article-related__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-article-related__info {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.brb-article-related__date {
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 10px;
}

.brb-article-related__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

.brb-article-related__excerpt {
    font-size: 16px;
    line-height: 1.6;
    color: var(--rlx-brown);
    margin: 0;
}

/* Responsive Article Page */
@media (max-width: 767px) {
    .brb-article-intro__title {
        font-size: 28px;
    }
    
    .brb-article-hero__text {
        font-size: 24px;
    }
    
    .brb-article-quote__inner blockquote {
        font-size: 22px;
    }
    
    .brb-article-image-group__inner {
        grid-template-columns: 1fr;
    }
    
    .brb-article-product__inner,
    .brb-article-related__card {
        flex-direction: column;
    }
    
    .brb-article-product__media,
    .brb-article-related__media {
        flex: none;
        width: 100%;
    }
}

/* ========================================
   CONTACT PAGE
   ======================================== */

/* Contact Map Section */
.brb-contact-map {
    width: 100%;
    padding: 0;
    background: var(--rlx-white);
}

.brb-contact-map__inner {
    display: flex;
    max-width: 100%;
}

.brb-contact-map__map {
    flex: 0 0 60%;
    min-height: 400px;
    background: #e0e0e0;
}

.brb-contact-map__map iframe {
    width: 100%;
    height: 100%;
    min-height: 400px;
}

.brb-contact-map__info {
    flex: 1;
    padding: 40px;
    background: var(--rlx-white);
}

.brb-contact-map__name {
    font-size: 24px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 15px;
}

.brb-contact-map__address {
    font-style: normal;
    margin: 0 0 15px;
    line-height: 1.6;
}

.brb-contact-map__address p {
    margin: 0;
    color: var(--rlx-brown);
}

.brb-contact-map__hours {
    margin: 0 0 20px;
    color: var(--rlx-brown);
}

.brb-contact-map__actions {
    list-style: none;
    margin: 0;
    padding: 0;
}

.brb-contact-map__actions li {
    margin: 0 0 12px;
}

.brb-contact-map__actions a {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--rlx-brown);
    text-decoration: none;
    font-size: 14px;
}

.brb-contact-map__actions a:hover {
    color: var(--rlx-green);
}

.brb-contact-map__actions i {
    width: 16px;
    text-align: center;
    color: var(--rlx-green);
}

/* Contact Options Section */
.brb-contact-options {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-contact-options__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-contact-options__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

.brb-contact-options__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

.brb-contact-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.brb-contact-card__media {
    width: 100%;
    margin-bottom: 15px;
    overflow: hidden;
}

.brb-contact-card__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.brb-contact-card:hover .brb-contact-card__media img {
    transform: scale(1.03);
}

.brb-contact-card__info {
    text-align: left;
}

.brb-contact-card__title {
    font-size: 22px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

/* Form Section */
.brb-form-section {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-form-section__inner {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.brb-form-section__inner--centered {
    text-align: center;
}

.brb-form-section__label {
    display: block;
    font-size: 14px;
    color: var(--rlx-green);
    font-weight: 600;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.brb-form-section__title {
    font-size: 36px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.2;
}

.brb-form-section__text {
    font-size: 16px;
    line-height: 1.6;
    color: var(--rlx-brown);
    margin: 0 0 20px;
}

.brb-form-section__instruction {
    font-size: 14px;
    font-weight: 600;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

.brb-form-section__summary {
    font-size: 18px;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

/* Purpose Cards (Appointment) */
.brb-purpose-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    max-width: 800px;
    margin: 0 auto;
}

.brb-purpose-card {
    display: block;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    transition: transform 0.2s ease;
}

.brb-purpose-card:hover {
    transform: translateY(-5px);
}

.brb-purpose-card__media {
    width: 100%;
    margin-bottom: 15px;
    overflow: hidden;
}

.brb-purpose-card__media img {
    width: 100%;
    height: auto;
    display: block;
}

.brb-purpose-card__info {
    text-align: left;
}

.brb-purpose-card__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 5px;
}

.brb-purpose-card__title {
    font-size: 18px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0;
}

/* Form Elements */
.brb-form-row {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.brb-form-group {
    margin-bottom: 20px;
    text-align: left;
}

.brb-form-group--half {
    flex: 1;
    margin-bottom: 0;
}

.brb-form-group label {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: var(--rlx-brown);
    margin-bottom: 8px;
}

.brb-form-group input[type="text"],
.brb-form-group input[type="email"],
.brb-form-group input[type="tel"],
.brb-form-group input[type="date"],
.brb-form-group select,
.brb-form-group textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid var(--rlx-grey-light);
    border-radius: 0;
    font-size: 16px;
    color: var(--rlx-brown);
    background: var(--rlx-beige-light);
    transition: border-color 0.2s ease;
}

.brb-form-group input:focus,
.brb-form-group select:focus,
.brb-form-group textarea:focus {
    outline: none;
    border-color: var(--rlx-green);
}

.brb-form-group--checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.brb-form-group--checkbox input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
}

.brb-form-group--checkbox label {
    margin-bottom: 0;
    font-weight: 400;
}

/* Form Actions */
.brb-form-actions {
    display: flex;
    gap: 15px;
    justify-content: flex-start;
    margin-top: 30px;
}

.brb-form-actions--centered {
    justify-content: center;
}

/* Buttons */
.brb-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 30px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.brb-btn--primary {
    background: var(--rlx-green);
    color: var(--rlx-white);
}

.brb-btn--primary:hover {
    background: var(--rlx-green-dark);
}

.brb-btn--primary:disabled {
    background: var(--rlx-grey-light);
    cursor: not-allowed;
}

.brb-btn--secondary {
    background: transparent;
    color: var(--rlx-brown);
    border: 1px solid var(--rlx-grey-light);
}

.brb-btn--secondary:hover {
    border-color: var(--rlx-brown);
}

/* Success Icon */
.brb-success-icon {
    font-size: 60px;
    color: var(--rlx-green);
    margin-bottom: 20px;
}

/* Responsive Contact */
@media (max-width: 767px) {
    .brb-contact-map__inner {
        flex-direction: column;
    }
    
    .brb-contact-map__map {
        flex: none;
        min-height: 300px;
    }
    
    .brb-contact-options__grid {
        grid-template-columns: 1fr;
    }
    
    .brb-purpose-grid {
        grid-template-columns: 1fr;
    }
    
    .brb-form-row {
        flex-direction: column;
        gap: 0;
    }
    
    .brb-form-group--half {
        margin-bottom: 20px;
    }
    
    .brb-form-section__title {
        font-size: 28px;
    }
}

/* ========================================
   WATCHES HUB PAGE
   ======================================== */

/* Watches Section */
.brb-watches-section {
    width: 100%;
    padding: 0 4% 60px;
    background: var(--rlx-white);
}

.brb-watches-section__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-watches-section__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 30px;
}

/* Watches Push (1x - New Watches) */
.brb-watches-push {
    display: block;
    text-decoration: none;
    color: inherit;
    margin-bottom: 20px;
}

.brb-watches-push__media {
    width: 100%;
    margin-bottom: 15px;
    overflow: hidden;
}

.brb-watches-push__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.brb-watches-push:hover .brb-watches-push__media img {
    transform: scale(1.02);
}

.brb-watches-push__info {
    text-align: left;
}

.brb-watches-push__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 5px;
}

.brb-watches-push__title {
    font-size: 28px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 10px;
}

/* Watches Grid (3 columns) */
.brb-watches-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* Watch Card */
.brb-watches-card {
    display: block;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}

.brb-watches-card__media {
    width: 100%;
    margin-bottom: 15px;
    overflow: hidden;
    background: linear-gradient(135deg, #f8f6f2 0%, #e8e4dd 100%);
}

.brb-watches-card__media img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.3s ease;
}

.brb-watches-card:hover .brb-watches-card__media img {
    transform: scale(1.05);
}

.brb-watches-card__info {
    text-align: left;
}

.brb-watches-card__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 3px;
}

.brb-watches-card__name {
    font-size: 18px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0;
}

/* Keep exploring active state */
.brb-keep-exploring__item--active .brb-keep-exploring__label {
    color: var(--rlx-green);
    font-weight: 600;
}

/* Responsive Watches */
@media (max-width: 1024px) {
    .brb-watches-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .brb-watches-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    .brb-watches-section__title {
        font-size: 22px;
    }
    
    .brb-watches-push__title {
        font-size: 22px;
    }
    
    .brb-watches-card__name {
        font-size: 14px;
    }
}

/* ========================================
   COLLECTION PAGE
   ======================================== */

/* Collection Models Grid */
.brb-collection-models {
    width: 100%;
    padding: 40px 4% 60px;
    background: var(--rlx-beige);
}

.brb-collection-models__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-collection-models__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.brb-collection-model {
    display: block;
    text-decoration: none;
    color: inherit;
    text-align: center;
    cursor: pointer;
}

.brb-collection-model__media {
    width: 100%;
    padding: 20px;
    margin-bottom: 15px;
}

.brb-collection-model__media img {
    width: 100%;
    max-width: 280px;
    height: auto;
    display: block;
    margin: 0 auto;
    transition: transform 0.3s ease;
}

.brb-collection-model:hover .brb-collection-model__media img {
    transform: scale(1.05);
}

.brb-collection-model__info {
    text-align: center;
}

.brb-collection-model__label {
    display: block;
    font-size: 12px;
    color: var(--rlx-grey);
    margin-bottom: 3px;
}

.brb-collection-model__name {
    font-size: 18px;
    font-weight: 700;
    color: var(--rlx-brown);
    margin: 0 0 5px;
}

.brb-collection-model__case {
    font-size: 14px;
    color: var(--rlx-grey);
    margin: 0;
}

/* Collection Text Block */
.brb-collection-text {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-collection-text__inner {
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
}

.brb-collection-text__title {
    font-size: 32px;
    font-weight: 400;
    font-style: italic;
    color: var(--rlx-brown);
    margin: 0 0 25px;
    line-height: 1.3;
}

.brb-collection-text__text {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rlx-brown);
    margin: 0;
}

/* Collection Image Grid 3 */
.brb-collection-grid-3 {
    width: 100%;
    padding: 0;
    background: var(--rlx-white);
}

.brb-collection-grid-3__inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
}

.brb-collection-grid-3__item img {
    width: 100%;
    height: auto;
    display: block;
}

/* Collection Image Grid 2 */
.brb-collection-grid-2 {
    width: 100%;
    padding: 0;
    background: var(--rlx-white);
}

.brb-collection-grid-2__inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
}

.brb-collection-grid-2__item img {
    width: 100%;
    height: auto;
    display: block;
}

/* Collection Feature (Text + Image) */
.brb-collection-feature {
    width: 100%;
    padding: 60px 4%;
    background: var(--rlx-white);
}

.brb-collection-feature__inner {
    max-width: 1200px;
    margin: 0 auto;
}

.brb-collection-feature__content {
    max-width: 700px;
    margin-bottom: 40px;
}

.brb-collection-feature__title {
    font-size: 28px;
    font-weight: 400;
    font-style: italic;
    color: var(--rlx-brown);
    margin: 0 0 20px;
    line-height: 1.3;
}

.brb-collection-feature__text {
    font-size: 16px;
    line-height: 1.8;
    color: var(--rlx-brown);
    margin: 0;
}

.brb-collection-feature__media {
    width: 100%;
}

.brb-collection-feature__media img {
    width: 100%;
    height: auto;
    display: block;
}

/* Responsive Collection */
@media (max-width: 1024px) {
    .brb-collection-models__grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .brb-collection-grid-3__inner {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .brb-collection-models__grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .brb-collection-grid-3__inner {
        grid-template-columns: 1fr;
    }
    
    .brb-collection-grid-2__inner {
        grid-template-columns: 1fr;
    }
    
    .brb-collection-text__title,
    .brb-collection-feature__title {
        font-size: 24px;
    }
}

