@font-face { font-family: 'Sora'; font-display: swap; }
@font-face { font-family: 'Cormorant Garamond'; font-display: swap; }
@font-face { font-family: 'DM Serif Display'; font-display: swap; }

h1, h2, h3, h4, h5, h6 { text-transform: uppercase; font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 2px; }

:root {
    --black: #060606;
    --dark: #0c0c0c;
    --surface: #141414;
    --border: rgba(255,255,255,0.04);
    --text: #ececec;
    --text-dim: #6b6b6b;
    --gold: #c9a96e;
    --gold-light: #e0c78e;
    --font: 'Sora', sans-serif;
    --serif: 'DM Serif Display', serif;
    --ease: cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: var(--font); background: var(--black); color: var(--text); overflow-x: hidden; font-size: 16px; line-height: 1.7; letter-spacing: -0.01em; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
img { max-width: 100%; display: block; }
ul { list-style: none; }
.container { max-width: 1400px; margin: 0 auto; padding: 0 clamp(24px, 4vw, 80px); }

/* === CUSTOM CURSOR === */
.cursor-outer {
    width: 40px; height: 40px; border: 1px solid var(--gold);
    border-radius: 50%; position: fixed; top: 0; left: 0;
    pointer-events: none; z-index: 9999;
    transition: width 0.4s var(--ease), height 0.4s var(--ease), border-color 0.3s;
}
.cursor-inner {
    width: 8px; height: 8px; background: var(--gold);
    border-radius: 50%; position: fixed; top: 0; left: 0;
    pointer-events: none; z-index: 9999;
}
.cursor-hover {
    width: 60px; height: 60px; border-color: var(--gold-light);
    background: rgba(200, 165, 92, 0.06);
}
@media (max-width: 768px) { .cursor-outer, .cursor-inner { display: none; } body { cursor: auto; } a, button { cursor: pointer; } }

/* === HEADER === */
.header {
    position: fixed; top: 0; width: 100%; z-index: 1000;
    padding: 24px 0; transition: all 0.5s var(--ease);
}
.header.scrolled { padding: 14px 0; background: rgba(10,10,10,0.92); backdrop-filter: blur(30px); border-bottom: 1px solid var(--border); }
.nav { display: flex; align-items: center; justify-content: space-between; }
.nav__logo { font-family: var(--serif); font-size: 1.4rem; color: #fff; letter-spacing: 1px; }
.nav__logo span { color: var(--gold); }
.nav__menu { display: flex; gap: 40px; align-items: center; }
.nav__link { font-size: .82rem; font-weight: 500; color: var(--text-dim); letter-spacing: 1px; text-transform: uppercase; transition: color 0.3s; position: relative; }
.nav__link::after { content:''; position: absolute; bottom: -4px; left: 0; width: 0; height: 1px; background: var(--gold); transition: width 0.4s var(--ease); }
.nav__link:hover, .nav__link.active { color: var(--gold); }
.nav__link:hover::after, .nav__link.active::after { width: 100%; }
.nav__cta { font-size: .8rem; font-weight: 600; padding: 12px 28px; border: 1px solid var(--gold); color: var(--gold); border-radius: 100px; letter-spacing: 1px; text-transform: uppercase; transition: all 0.4s var(--ease); }
.nav__cta:hover { background: var(--gold); color: var(--black); }
.nav__toggle { display: none; width: 32px; height: 24px; flex-direction: column; justify-content: space-between; cursor: pointer; padding: 2px; z-index: 200; }
.nav__toggle span { display: block; width: 100%; height: 2px; background: #fff; border-radius: 2px; transition: all 0.4s var(--ease); transform-origin: center; }
.nav__toggle.active span:nth-child(1) { transform: translateY(11px) rotate(45deg); background: var(--gold); }
.nav__toggle.active span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav__toggle.active span:nth-child(3) { transform: translateY(-11px) rotate(-45deg); background: var(--gold); }

/* === REVEAL SYSTEM === */
[data-reveal] { opacity: 0; transform: translateY(60px); transition: all 1s var(--ease); }
[data-reveal].revealed { opacity: 1; transform: translateY(0); }
[data-reveal="left"] { transform: translateX(-80px); }
[data-reveal="left"].revealed { transform: translateX(0); }
[data-reveal="right"] { transform: translateX(80px); }
[data-reveal="right"].revealed { transform: translateX(0); }
[data-reveal="scale"] { transform: scale(0.9); }
[data-reveal="scale"].revealed { transform: scale(1); }

/* === HERO === */
.hero {
    min-height: 100vh; display: flex; align-items: center;
    position: relative; overflow: hidden;
    padding: 180px 0 120px;
}
.hero__bg {
    position: absolute; inset: 0; z-index: 0;
    background: 
        radial-gradient(ellipse at 70% 20%, rgba(184,155,94,0.05) 0%, transparent 50%),
        radial-gradient(ellipse at 20% 80%, rgba(184,155,94,0.03) 0%, transparent 40%),
        radial-gradient(ellipse at 50% 50%, rgba(20,20,20,1) 0%, var(--black) 100%);
}
.hero__noise {
    position: absolute; inset: 0; opacity: 0.03; z-index: 1;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
.hero__content { position: relative; z-index: 2; max-width: 900px; }
.hero__tag {
    display: inline-flex; align-items: center; gap: 10px;
    font-size: .72rem; font-weight: 600; text-transform: uppercase;
    letter-spacing: 3px; color: var(--gold); margin-bottom: 32px;
}
.hero__tag::before { content: ''; width: 40px; height: 1px; background: var(--gold); }
.hero__title {
    font-family: 'Cormorant Garamond', serif; font-size: clamp(3.5rem, 8vw, 7rem);
    line-height: 0.95; font-weight: 300; margin-bottom: 36px;
    letter-spacing: 2px; color: #fff; text-transform: uppercase;
}
.hero__title em { font-style: normal; color: var(--gold); }
.hero__desc { font-size: 1.1rem; color: var(--text-dim); max-width: 500px; line-height: 1.8; margin-bottom: 48px; font-weight: 300; }
.hero__actions { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; }
.hero__actions .btn-primary { padding: 20px 48px; background: var(--gold); color: var(--black); font-weight: 700; font-size: .82rem; letter-spacing: 1.5px; text-transform: uppercase; border-radius: 100px; border: none; transition: all 0.5s var(--ease); }
.hero__actions .btn-primary:hover { box-shadow: 0 15px 50px rgba(184,155,94,0.25); transform: translateY(-3px); }
.hero__actions .btn-ghost { font-size: .82rem; font-weight: 500; color: var(--text-dim); display: flex; align-items: center; gap: 8px; letter-spacing: 1px; text-transform: uppercase; transition: color 0.3s; }
.hero__actions .btn-ghost:hover { color: var(--gold); }
.hero__scroll { position: absolute; bottom: 40px; right: 80px; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.hero__scroll span { font-size: .65rem; letter-spacing: 3px; text-transform: uppercase; color: var(--text-dim); writing-mode: vertical-rl; }
.hero__scroll-line { width: 1px; height: 60px; background: linear-gradient(to bottom, var(--gold), transparent); animation: scrollPulse 2s infinite; }
@keyframes scrollPulse { 0%,100% { opacity:1; } 50% { opacity:0.3; } }

/* === STATS BAR === */
.stats-bar {
    padding: 60px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
}
.stats-bar__inner { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 40px; }
.stats-bar__item { text-align: center; }
.stats-bar__number { font-family: var(--serif); font-size: 3rem; color: var(--gold); display: block; }
.stats-bar__label { font-size: .72rem; text-transform: uppercase; letter-spacing: 2px; color: var(--text-dim); margin-top: 4px; }

/* === SECTIONS === */
.section { padding: clamp(48px, 6vw, 80px) 0; position: relative; }
.section-label {
    font-size: .7rem; font-weight: 600; text-transform: uppercase;
    letter-spacing: 3px; color: var(--gold); margin-bottom: 20px;
    display: flex; align-items: center; gap: 12px;
}
.section-label::before { content: ''; width: 30px; height: 1px; background: var(--gold); }
.section-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2rem, 5vw, 3.8rem); line-height: 1.05; color: #fff; margin-bottom: 20px; letter-spacing: 2px; text-transform: uppercase; font-weight: 300; }
.section-desc { font-size: 1rem; color: var(--text-dim); max-width: 500px; line-height: 1.8; font-weight: 300; }

/* === HORIZONTAL SCROLL === */
.h-scroll { position: relative; }
.h-scroll__header { margin-bottom: 40px; padding-top: 40px; }
.h-scroll__sticky { position: sticky; top: 80px; height: calc(100vh - 80px); display: flex; align-items: center; overflow: hidden; z-index: 1; }
.h-scroll__track { display: flex; gap: 32px; padding: 0 80px; will-change: transform; }
.h-scroll__item {
    flex-shrink: 0; width: 420px; padding: 52px; border-radius: 28px;
    background: var(--surface); border: 1px solid var(--border);
    transition: border-color 0.5s, transform 0.5s var(--ease), box-shadow 0.5s;
}
.h-scroll__item:hover { border-color: rgba(184,155,94,0.15); transform: translateY(-4px); box-shadow: 0 20px 60px rgba(0,0,0,0.3); }
.h-scroll__item-icon { font-size: 2rem; margin-bottom: 24px; }
.h-scroll__item h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.5rem; margin-bottom: 12px; color: #fff; }
.h-scroll__item p { font-size: .9rem; color: var(--text-dim); line-height: 1.7; margin-bottom: 20px; }
.h-scroll__item-link { font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1.5px; color: var(--gold); transition: opacity 0.3s; }
.h-scroll__item-link:hover { opacity: 0.7; }

/* === SPLIT LAYOUT === */
.split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 6vw, 120px); align-items: center; }
.split--reverse { direction: rtl; }
.split--reverse > * { direction: ltr; }
.split__visual {
    aspect-ratio: 4/5; background: var(--surface); border-radius: 24px;
    border: 1px solid var(--border); display: flex; align-items: center;
    justify-content: center; color: var(--text-dim); font-size: .9rem;
    overflow: hidden; position: relative;
}
.split__visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, var(--black)); }
.feature-list { margin-top: 32px; }
.feature-list li { padding: 14px 0; border-bottom: 1px solid var(--border); font-size: .92rem; color: var(--text-dim); display: flex; align-items: center; gap: 14px; }
.feature-list li::before { content: ''; width: 6px; height: 6px; background: var(--gold); border-radius: 50%; flex-shrink: 0; }

/* === TESTIMONIALS === */
.testimonials__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 24px; }
.testimonial {
    padding: 44px; background: var(--surface); border: 1px solid var(--border);
    border-radius: 24px; transition: border-color 0.5s, transform 0.5s var(--ease), box-shadow 0.5s;
}
.testimonial:hover { border-color: rgba(184,155,94,0.12); transform: translateY(-4px); box-shadow: 0 20px 60px rgba(0,0,0,0.2); }
.testimonial__text { font-size: 1rem; color: var(--text-dim); line-height: 1.8; margin-bottom: 28px; font-style: italic; font-weight: 300; }
.testimonial__author { display: flex; align-items: center; gap: 12px; }
.testimonial__avatar { width: 40px; height: 40px; background: var(--gold); border-radius: 50%; display: flex; align-items: center; justify-content: center; color: var(--black); font-weight: 700; font-size: .75rem; }
.testimonial__name { font-size: .85rem; font-weight: 600; color: #fff; }
.testimonial__role { font-size: .72rem; color: var(--text-dim); }

/* === CTA === */
.cta-section { text-align: center; padding: clamp(60px, 8vw, 100px) 0; position: relative; }
.cta-section::before { content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 50%, rgba(200,165,92,0.04) 0%, transparent 60%); pointer-events: none; }
.cta-section h2 { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.5rem, 5vw, 4.5rem); color: #fff; margin-bottom: 20px; position: relative; font-weight: 300; letter-spacing: 2px; text-transform: uppercase; }
.cta-section p { color: var(--text-dim); font-size: 1.1rem; margin-bottom: 40px; font-weight: 300; position: relative; }
.cta-section a, .cta-section button { position: relative; z-index: 1; }

/* === CONTACT === */
.contact-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 60px; align-items: start; }
@media (max-width: 768px) { .contact-grid { grid-template-columns: 1fr; gap: 32px; } }
.contact-grid__map { border-radius: 16px; overflow: hidden; position: sticky; top: 120px; }
.contact-info h4 { font-size: .82rem; text-transform: uppercase; letter-spacing: 2px; color: var(--gold); margin-bottom: 8px; }
.contact-info p { color: var(--text-dim); font-size: .92rem; margin-bottom: 28px; line-height: 1.7; }
.contact-info a { color: var(--gold); transition: opacity 0.3s; }
.contact-info a:hover { opacity: 0.7; }
.form { display: flex; flex-direction: column; gap: 16px; }
.form input, .form textarea, .form select {
    width: 100%; padding: 20px 0; background: transparent; border: none;
    border-bottom: 1px solid var(--border); font-family: var(--font);
    font-size: .92rem; color: #fff; outline: none; transition: border-color 0.5s var(--ease);
    letter-spacing: 0.02em;
}
.form input:focus, .form textarea:focus, .form select:focus { border-color: var(--gold); }
.form input::placeholder, .form textarea::placeholder { color: var(--text-dim); font-weight: 300; }
.form textarea { resize: none; min-height: 100px; }
.form select { color: var(--text-dim); font-weight: 300; }
.form select option { background: var(--dark); color: #fff; }
.form button { align-self: flex-start; margin-top: 24px; padding: 20px 48px; background: var(--gold); color: var(--black); font-weight: 700; font-size: .8rem; letter-spacing: 1.5px; text-transform: uppercase; border-radius: 100px; border: none; transition: all 0.5s var(--ease); }
.form button:hover { box-shadow: 0 15px 50px rgba(184,155,94,0.25); transform: translateY(-3px); }

/* === PRICING === */
.pricing-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px; }
.price-card {
    padding: 52px 40px; background: var(--surface); border: 1px solid var(--border);
    border-radius: 28px; transition: border-color 0.5s, transform 0.5s var(--ease), box-shadow 0.5s;
}
.price-card:hover { border-color: rgba(184,155,94,0.15); transform: translateY(-6px); box-shadow: 0 24px 60px rgba(0,0,0,0.3); }
.price-card.featured { border-color: rgba(184,155,94,0.3); background: linear-gradient(180deg, rgba(184,155,94,0.03) 0%, var(--surface) 100%); }
.price-card__tag { font-size: .68rem; text-transform: uppercase; letter-spacing: 2px; color: var(--gold); margin-bottom: 12px; font-weight: 600; }
.price-card h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.5rem; color: #fff; margin-bottom: 6px; }
.price-card__sub { font-size: .82rem; color: var(--text-dim); margin-bottom: 24px; }
.price-card__price { font-family: var(--serif); font-size: 2.8rem; color: #fff; margin-bottom: 4px; }
.price-card__price span { font-size: 1rem; color: var(--text-dim); font-family: var(--font); }
.price-card__period { font-size: .8rem; color: var(--text-dim); margin-bottom: 28px; }
.price-card ul { margin-bottom: 32px; }
.price-card li { padding: 10px 0; font-size: .85rem; color: var(--text-dim); border-bottom: 1px solid var(--border); display: flex; align-items: center; gap: 10px; }
.price-card li::before { content: ''; width: 5px; height: 5px; background: var(--gold); border-radius: 50%; }
.price-card .btn { width: 100%; text-align: center; padding: 16px; border: 1px solid var(--border); border-radius: 100px; font-size: .8rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; color: #fff; transition: all 0.3s; }
.price-card .btn:hover { border-color: var(--gold); color: var(--gold); }
.price-card.featured .btn { background: var(--gold); color: var(--black); border-color: var(--gold); }

/* === FAQ === */
.faq-list { max-width: 700px; }
.faq-item { border-bottom: 1px solid var(--border); }
.faq-q { width: 100%; padding: 24px 0; background: none; border: none; display: flex; justify-content: space-between; align-items: center; font-family: var(--font); font-size: .95rem; font-weight: 500; color: #fff; text-align: left; transition: color 0.3s; }
.faq-q:hover { color: var(--gold); }
.faq-q svg { transition: transform 0.4s var(--ease); color: var(--gold); flex-shrink: 0; }
.faq-item.open .faq-q svg { transform: rotate(45deg); }
.faq-a { max-height: 0; overflow: hidden; transition: max-height 0.5s var(--ease); }
.faq-a p { padding-bottom: 24px; font-size: .9rem; color: var(--text-dim); line-height: 1.7; }

/* === FOOTER === */
.footer { padding: 48px 0 24px; border-top: 1px solid var(--border); }
.footer__top { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: 40px; margin-bottom: 32px; }
.footer__brand { font-family: var(--serif); font-size: 1.2rem; color: #fff; margin-bottom: 12px; }
.footer__desc { font-size: .85rem; color: var(--text-dim); line-height: 1.7; }
.footer__col h5 { font-size: .72rem; text-transform: uppercase; letter-spacing: 2px; color: var(--gold); margin-bottom: 16px; font-weight: 600; }
.footer__col a { display: block; font-size: .85rem; color: var(--text-dim); padding: 6px 0; transition: color 0.3s; }
.footer__col a:hover { color: var(--gold); }
.footer__bottom { display: flex; justify-content: space-between; align-items: center; padding-top: 30px; border-top: 1px solid var(--border); }
.footer__bottom p { font-size: .75rem; color: var(--text-dim); }
.footer__bottom-links { display: flex; gap: 20px; }
.footer__bottom-links a { font-size: .75rem; color: var(--text-dim); }
.footer__bottom-links a:hover { color: var(--gold); }

/* === WHATSAPP === */
.wa-float { position: fixed; bottom: 28px; right: 28px; width: 54px; height: 54px; background: #25d366; border-radius: 50%; display: flex; align-items: center; justify-content: center; z-index: 90; transition: transform 0.3s var(--ease); }
.wa-float:hover { transform: scale(1.1); }

/* === PAGE HERO === */
.page-hero { padding: 120px 0 48px; position: relative; }
.page-hero__label { font-size: .7rem; text-transform: uppercase; letter-spacing: 3px; color: var(--text-dim); margin-bottom: 16px; }
.page-hero__label a { color: var(--gold); }
.page-hero__title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.5rem, 6vw, 4.5rem); color: #fff; line-height: 1.05; margin-bottom: 16px; text-transform: uppercase; font-weight: 300; letter-spacing: 2px; }
.page-hero__desc { font-size: 1.05rem; color: var(--text-dim); max-width: 520px; font-weight: 300; }

/* === RESPONSIVE === */
@media (max-width: 1024px) {
    .split, .contact-grid { grid-template-columns: 1fr; }
    .footer__top { grid-template-columns: 1fr 1fr; }
    .h-scroll__item { width: 340px; }
}
@media (max-width: 768px) {
    .hero { padding: 120px 0 80px; }
    .hero__title { font-size: 3rem; }
    .hero__desc { font-size: .95rem; }
    .hero__scroll { display: none; }
    .stats-bar__inner { justify-content: center; }
    .footer__top { grid-template-columns: 1fr; }
    .footer__bottom { flex-direction: column; gap: 12px; }
    .h-scroll__track { padding: 0 24px; }
    .h-scroll__item { width: 300px; }
    /* fix inline grids on home page */
    .hero__actions a, .hero__actions button { padding: 16px 32px !important; width: 100%; text-align: center; display: block; box-sizing: border-box; }
    .hero__actions { flex-direction: column; gap: 12px; }
    /* location section inline grid */
    section > .container > div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
    /* sister brand inline grid */
    div[style*="grid-template-columns:1fr 1fr"] { grid-template-columns: 1fr !important; }
    /* advantages heading margin */
    h2[style*="margin-bottom:80px"] { margin-bottom: 32px !important; }
    /* location section image */
    div[style*="min-height:500px"] { min-height: 240px !important; }
    /* location section padding */
    div[style*="padding:60px 48px"] { padding: 28px 20px !important; }
}


/* === GALLERY === */
.gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 280px;
    gap: 12px;
}
.gallery__item {
    position: relative; overflow: hidden; border-radius: 20px;
    background: var(--surface);
}
.gallery__item--wide { grid-column: span 2; }
.gallery__item img {
    width: 100%; height: 100%; object-fit: cover;
    transition: transform 1.2s var(--ease), filter 0.6s;
    filter: brightness(0.75) saturate(0.9);
}
.gallery__item:hover img { transform: scale(1.08); filter: brightness(0.95) saturate(1); }
.gallery__caption {
    position: absolute; bottom: 20px; left: 24px;
    font-size: .75rem; font-weight: 600; text-transform: uppercase;
    letter-spacing: 2px; color: #fff; opacity: 0;
    transform: translateY(10px);
    transition: all 0.4s var(--ease);
}
.gallery__item:hover .gallery__caption { opacity: 1; transform: translateY(0); }
@media (max-width: 768px) {
    .gallery { grid-template-columns: 1fr; grid-auto-rows: 220px; }
    .gallery__item--wide { grid-column: span 1; }
}

/* === AMENITIES STRIP === */
.amenities-strip {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 12px;
}
.amenity {
    display: flex; align-items: center; gap: 10px;
    padding: 14px 24px; border-radius: 100px;
    background: var(--surface); border: 1px solid var(--border);
    transition: border-color 0.4s, transform 0.4s var(--ease), box-shadow 0.4s;
}
.amenity:hover { border-color: rgba(184,155,94,0.25); transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
.amenity__icon { font-size: 1.2rem; color: var(--gold); flex-shrink: 0; }
svg.amenity__icon { stroke: var(--gold); }
.amenity__text { font-size: .8rem; font-weight: 500; color: var(--text-dim); letter-spacing: 0.5px; }

/* === CLIENTS BAR === */
.clients-bar {
    padding: 60px 0; border-top: 1px solid var(--border); border-bottom: 1px solid var(--border);
    text-align: center;
}
.clients-bar__label {
    font-size: .7rem; text-transform: uppercase; letter-spacing: 3px;
    color: var(--text-dim); margin-bottom: 24px;
}
.clients-bar__logos {
    display: flex; flex-wrap: wrap; justify-content: center; gap: 32px; align-items: center;
}
.clients-bar__logos span {
    font-family: var(--serif); font-size: 1.2rem; color: rgba(255,255,255,0.2);
    transition: color 0.3s;
}
.clients-bar__logos span:hover { color: var(--gold); }


/* === CTA DIRECT OPTIONS === */
.cta-options {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 16px; max-width: 1100px; margin: 40px auto 0;
    position: relative;
}
.cta-card {
    display: flex; flex-direction: column; gap: 10px;
    padding: 36px 32px; background: var(--surface); border: 1px solid var(--border);
    border-radius: 24px; transition: all 0.5s var(--ease); text-align: left;
}
.cta-card:hover { border-color: var(--gold); transform: translateY(-6px); box-shadow: 0 20px 50px rgba(0,0,0,0.3); }
.cta-card__icon { color: var(--gold); flex-shrink: 0; }
svg.cta-card__icon { stroke: var(--gold); }
.cta-card__title { font-size: .95rem; font-weight: 600; color: #fff; }
.cta-card__desc { font-size: .78rem; color: var(--text-dim); }
.cta-bottom {
    margin-top: 40px; text-align: center; position: relative;
}
.cta-bottom p { font-size: .88rem; color: var(--text-dim); }


/* === OFFER BANNER === */
.offer-banner {
    background: var(--gold); color: var(--black); padding: 10px 0;
    font-size: .82rem; font-weight: 500; position: relative; z-index: 101;
    text-align: center;
}
.offer-banner .container { display: flex; align-items: center; justify-content: center; gap: 12px; }
.offer-banner a { color: var(--black); font-weight: 700; text-decoration: underline; }
.offer-banner__close { background: none; border: none; font-size: 1.3rem; color: var(--black); position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
.offer-banner.hidden { display: none; }

/* === NAV RIGHT === */
.nav__actions { display: flex; align-items: center; gap: 16px; }

/* === THEME TOGGLE === */
.theme-toggle {
    width: 38px; height: 38px; border-radius: 50%; border: 1px solid var(--border);
    background: transparent; display: flex; align-items: center; justify-content: center;
    color: var(--text-dim); transition: all 0.3s;
}
.theme-toggle:hover { border-color: var(--gold); color: var(--gold); }
.icon-sun { display: none; }
[data-theme="light"] .icon-sun { display: block; }
[data-theme="light"] .icon-moon { display: none; }

/* === LIGHT MODE === */
[data-theme="light"] {
    --black: #ffffff;
    --dark: #f8f8f8;
    --surface: #f2f2f2;
    --border: rgba(0,0,0,0.08);
    --text: #1a1a1a;
    --text-dim: #555;
    --gold: #8a6b2c;
    --gold-light: #c9a96e;
}
[data-theme="light"] body { background: #fff; color: #1a1a1a; }
[data-theme="light"] .header { background: rgba(255,255,255,0.8); }
[data-theme="light"] .header.scrolled { background: rgba(255,255,255,0.97); border-bottom-color: rgba(0,0,0,0.06); }
[data-theme="light"] .nav__logo { color: #1a1a1a; }
[data-theme="light"] .nav__link { color: #444; }
[data-theme="light"] .nav__link:hover, [data-theme="light"] .nav__link.active { color: var(--gold); }
[data-theme="light"] .nav__cta { border-color: var(--gold); color: var(--gold); }
[data-theme="light"] .nav__cta:hover { background: var(--gold); color: #fff; }
[data-theme="light"] .nav__toggle span { background: #1a1a1a; }

/* Light Hero */
[data-theme="light"] .hero { background: #f8f8f8; }
[data-theme="light"] .hero__bg { background: radial-gradient(ellipse at 70% 30%, rgba(154,123,60,0.06) 0%, transparent 50%); }
[data-theme="light"] .hero__tag { color: var(--gold); }
[data-theme="light"] .hero__title { color: #1a1a1a; }
[data-theme="light"] .hero__title em { color: var(--gold); }
[data-theme="light"] .hero__desc { color: #555; }
[data-theme="light"] .hero__actions .btn-ghost { color: #555; }
[data-theme="light"] .hero__actions .btn-ghost:hover { color: var(--gold); }
[data-theme="light"] .hero__scroll span { color: #999; }
[data-theme="light"] .hero__scroll-line { background: linear-gradient(to bottom, var(--gold), transparent); }
[data-theme="light"] .hero__noise { opacity: 0.01; }

/* Light Stats */
[data-theme="light"] .stats-bar { border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .stats-bar__number { color: var(--gold); }
[data-theme="light"] .stats-bar__label { color: #666; }

/* Light Sections */
[data-theme="light"] .section-label { color: var(--gold); }
[data-theme="light"] .section-title { color: #1a1a1a; }
[data-theme="light"] .section-desc { color: #555; }

/* Light Cards */
[data-theme="light"] .h-scroll__item { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .h-scroll__item h3 { color: #1a1a1a; }
[data-theme="light"] .h-scroll__item p { color: #555; }
[data-theme="light"] .h-scroll__item:hover { border-color: var(--gold); box-shadow: 0 20px 60px rgba(0,0,0,0.08); }

[data-theme="light"] .price-card { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .price-card:hover { border-color: var(--gold); box-shadow: 0 20px 60px rgba(0,0,0,0.08); }
[data-theme="light"] .price-card.featured { background: #fffdf7; border-color: var(--gold); }
[data-theme="light"] .price-card h3 { color: #1a1a1a; }
[data-theme="light"] .price-card__sub { color: #666; }
[data-theme="light"] .price-card__price { color: #1a1a1a; }
[data-theme="light"] .price-card__price span { color: #888; }
[data-theme="light"] .price-card li { color: #555; border-color: rgba(0,0,0,0.05); }
[data-theme="light"] .price-card .btn { color: #1a1a1a; border-color: rgba(0,0,0,0.12); }
[data-theme="light"] .price-card .btn:hover { border-color: var(--gold); color: var(--gold); }
[data-theme="light"] .price-card.featured .btn { background: var(--gold); color: #fff; border-color: var(--gold); }
[data-theme="light"] .price-card__tag { background: var(--gold); color: #fff; }

/* Light Testimonials */
[data-theme="light"] .testimonial { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .testimonial:hover { border-color: var(--gold); box-shadow: 0 20px 40px rgba(0,0,0,0.06); }
[data-theme="light"] .testimonial__text { color: #444; }
[data-theme="light"] .testimonial__name { color: #1a1a1a; }
[data-theme="light"] .testimonial__role { color: #888; }
[data-theme="light"] .testimonial__avatar { background: var(--gold); color: #fff; }

/* Light FAQ */
[data-theme="light"] .faq-item { border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .faq-item.active { border-color: var(--gold); }
[data-theme="light"] .faq-q { color: #1a1a1a; }
[data-theme="light"] .faq-q:hover { color: var(--gold); }
[data-theme="light"] .faq-a p { color: #555; }

/* Light CTA */
[data-theme="light"] .cta-section { background: #f8f8f8; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .cta-section::before { background: radial-gradient(ellipse at 50% 50%, rgba(154,123,60,0.04) 0%, transparent 60%); }
[data-theme="light"] .cta-section h2 { color: #1a1a1a; }
[data-theme="light"] .cta-section p { color: #555; }
[data-theme="light"] .cta-card { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .cta-card:hover { border-color: var(--gold); box-shadow: 0 20px 50px rgba(0,0,0,0.08); }
[data-theme="light"] .cta-card__title { color: #1a1a1a; }
[data-theme="light"] .cta-card__desc { color: #666; }
[data-theme="light"] .cta-bottom p { color: #666; }

/* Light Forms */
[data-theme="light"] .form input,
[data-theme="light"] .form textarea,
[data-theme="light"] .form select { color: #1a1a1a; border-color: rgba(0,0,0,0.1); }
[data-theme="light"] .form input:focus,
[data-theme="light"] .form textarea:focus,
[data-theme="light"] .form select:focus { border-color: var(--gold); }
[data-theme="light"] .form input::placeholder,
[data-theme="light"] .form textarea::placeholder { color: #999; }
[data-theme="light"] .form select { color: #666; }
[data-theme="light"] .form select option { background: #fff; color: #1a1a1a; }
[data-theme="light"] .form button { background: var(--gold); color: #fff; }

/* Light Amenities */
[data-theme="light"] .amenity { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .amenity:hover { border-color: var(--gold); }
[data-theme="light"] .amenity__text { color: #444; }

/* Light Gallery */
[data-theme="light"] .gallery__item img { filter: brightness(1) saturate(1); }
[data-theme="light"] .gallery__caption { color: #fff; }

/* Light Feature List */
[data-theme="light"] .feature-list li { color: #444; border-color: rgba(0,0,0,0.05); }

/* Light Split Visual */
[data-theme="light"] .split__visual { background: #e8e8e8; border-color: rgba(0,0,0,0.06); }

/* Light Page Hero */
[data-theme="light"] .page-hero { background: #f5f5f5; border-bottom: 1px solid rgba(0,0,0,0.06); }
[data-theme="light"] .page-hero__title { color: #1a1a1a; }
[data-theme="light"] .page-hero__desc { color: #555; }
[data-theme="light"] .page-hero__label { color: #888; }
[data-theme="light"] .page-hero__label a { color: var(--gold); }

/* Light Modal */
[data-theme="light"] .modal__content { background: #fff; }
[data-theme="light"] .modal__header h3 { color: #1a1a1a; }
[data-theme="light"] .modal__sub { color: #666; }
[data-theme="light"] .modal__close { color: #999; }

/* Light Cursor */
[data-theme="light"] .cursor-outer { border-color: var(--gold); mix-blend-mode: normal; }
[data-theme="light"] .cursor-inner { background: var(--gold); }

/* Light Offer Banner */
[data-theme="light"] .offer-banner { background: #1a1a1a; color: #fff; }
[data-theme="light"] .offer-banner a { color: var(--gold-light); }
[data-theme="light"] .offer-banner__close { color: #fff; }

/* Light Footer */
[data-theme="light"] .footer { background: #1a1a1a; color: #ddd; border-top-color: transparent; }
[data-theme="light"] .footer__brand { color: #fff; }
[data-theme="light"] .footer__desc { color: rgba(255,255,255,0.6); }
[data-theme="light"] .footer__col h5 { color: var(--gold-light); }
[data-theme="light"] .footer__col a { color: rgba(255,255,255,0.6); }
[data-theme="light"] .footer__col a:hover { color: var(--gold-light); }
[data-theme="light"] .footer__bottom p,
[data-theme="light"] .footer__bottom-links a { color: rgba(255,255,255,0.4); }
[data-theme="light"] .footer__bottom { border-top-color: rgba(255,255,255,0.1); }

/* Light Theme Toggle */
[data-theme="light"] .theme-toggle { border-color: rgba(0,0,0,0.1); color: #555; }
[data-theme="light"] .theme-toggle:hover { border-color: var(--gold); color: var(--gold); }

/* Light Dropdown */
[data-theme="light"] .dropdown__menu { background: #fff; border-color: rgba(0,0,0,0.08); box-shadow: 0 10px 40px rgba(0,0,0,0.1); }
[data-theme="light"] .dropdown__menu li a { color: #444; }
[data-theme="light"] .dropdown__menu li a:hover { background: #f8f6f0; color: var(--gold); }

/* === LEAD FORM SECTION === */
.lead-form-section .form { max-width: 100%; }


/* === MODAL === */
.modal {
    position: fixed; inset: 0; z-index: 9000;
    display: flex; align-items: center; justify-content: center;
    opacity: 0; visibility: hidden; transition: all 0.4s var(--ease);
}
.modal.active { opacity: 1; visibility: visible; }
.modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,0.85); backdrop-filter: blur(8px); }
.modal__content {
    position: relative; width: 90%; max-width: 520px; max-height: 90vh; overflow-y: auto;
    background: var(--surface); border: 1px solid var(--border); border-radius: 28px;
    padding: 48px; transform: translateY(30px) scale(0.97);
    transition: transform 0.5s var(--ease);
}
.modal.active .modal__content { transform: translateY(0) scale(1); }
.modal__close {
    position: absolute; top: 20px; right: 24px; background: none; border: none;
    color: var(--text-dim); font-size: 1.8rem; transition: color 0.3s;
}
.modal__close:hover { color: var(--gold); }
.modal__header { margin-bottom: 28px; }
.modal__header h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.6rem; color: #fff; margin-bottom: 6px; }
.modal__sub { font-size: .88rem; color: var(--text-dim); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 520px) { .form-row { grid-template-columns: 1fr; } .modal__content { padding: 32px 24px; } }


/* === SMALL MOBILE (480px) === */
@media (max-width: 480px) {
    .hero { padding: 100px 0 60px; min-height: 100svh; }
    .hero__tag { font-size: .65rem; letter-spacing: 2px; margin-bottom: 16px; }
    .hero__title { font-size: 2.4rem; letter-spacing: 0; margin-bottom: 16px; line-height: 1.05; }
    .hero__desc { font-size: .88rem; margin-bottom: 28px; }
    .hero__actions { flex-direction: column; width: 100%; gap: 12px; }
    .hero__actions a, .hero__actions button { padding: 16px 24px !important; width: 100% !important; text-align: center; display: block; }
    .stats-bar__inner { flex-direction: column; gap: 24px; }
    .pricing-grid { grid-template-columns: 1fr; }
    .cta-options { grid-template-columns: 1fr; }
    .gallery { grid-template-columns: 1fr; }
    .gallery__item--wide { grid-column: span 1; }
    .section-title { font-size: 1.8rem; }
    .page-hero__title { font-size: 2rem; }
    .page-hero { padding: 100px 0 40px; }
    .container { padding: 0 20px; }
    .section { padding: 48px 0; }
    .cta-section h2 { font-size: 1.8rem; }
    h2[style*="margin-bottom:80px"] { margin-bottom: 24px !important; }
    h2[style*="margin-bottom:60px"] { margin-bottom: 24px !important; }
}


/* === LARGE DESKTOP (1440px+) === */
@media (min-width: 1440px) {
    .container { max-width: 1400px; }
    .hero__title { font-size: 7rem; }
    .section-title { font-size: 3.8rem; }
    .hero__content { padding: 200px 24px 140px; }
    .h-scroll__item { width: 480px; padding: 56px; }
    .gallery { grid-auto-rows: 340px; }
    .pricing-grid { gap: 32px; }
}

/* === ULTRAWIDE / TV (1920px+) === */
@media (min-width: 1920px) {
    .container { max-width: 1600px; }
    .hero__title { font-size: 8.5rem; }
    .hero__desc { font-size: 1.4rem; max-width: 650px; }
    .section-title { font-size: 4.5rem; }
    .section { padding: 100px 0; }
    .hero__content { padding: 200px 24px 120px; }
    .stats-bar__number { font-size: 4rem; }
    .h-scroll__item { width: 540px; padding: 64px; }
    .h-scroll__item h3 { font-size: 2rem; }
    .gallery { grid-auto-rows: 400px; }
    .testimonial { padding: 56px; }
    .testimonial__text { font-size: 1.1rem; }
    .price-card { padding: 60px 48px; }
    .price-card__price { font-size: 3.5rem; }
    .cta-section h2 { font-size: 5rem; }
    .page-hero__title { font-size: 5rem; }
    .footer__top { gap: 60px; }
    .feature-list li { font-size: 1.05rem; padding: 16px 0; }
    .split { gap: 100px; }
}

/* === 4K / LARGE TV (2560px+) === */
@media (min-width: 2560px) {
    .container { max-width: 2000px; padding: 0 80px; }
    .hero__title { font-size: 10rem; letter-spacing: -4px; }
    .hero__desc { font-size: 1.6rem; max-width: 800px; }
    .section-title { font-size: 5.5rem; }
    .section { padding: 120px 0; }
    .stats-bar__number { font-size: 5rem; }
    .h-scroll__item { width: 640px; padding: 72px; }
    .gallery { grid-auto-rows: 500px; gap: 20px; }
    .pricing-grid { gap: 40px; }
    .price-card { padding: 72px 56px; border-radius: 36px; }
    .price-card h3 { font-size: 2rem; }
    .price-card__price { font-size: 4.5rem; }
    .cta-section h2 { font-size: 6rem; }
    .cta-options { gap: 24px; }
    .cta-card { padding: 48px 40px; border-radius: 32px; }
    .footer { padding: 80px 0 40px; }
    .nav__logo { font-size: 1.8rem; }
    .nav__link { font-size: 1rem; }
    .nav__cta { font-size: 1rem; padding: 14px 32px; }
    body { font-size: 18px; }
}

/* === TABLET LANDSCAPE (1024-1200px) === */
@media (min-width: 1024px) and (max-width: 1200px) {
    .container { max-width: 960px; }
    .split { gap: 40px; }
    .h-scroll__item { width: 360px; padding: 40px; }
    .pricing-grid { gap: 20px; }
    .price-card { padding: 36px 28px; }
}

/* === TABLET PORTRAIT (768-1024px) === */
@media (min-width: 768px) and (max-width: 1024px) {
    .hero__title { font-size: 3.5rem; }
    .hero__content { padding: 160px 24px 100px; }
    .gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 240px; }
    .gallery__item--wide { grid-column: span 2; }
    .pricing-grid { grid-template-columns: 1fr 1fr; }
    .testimonials__grid { grid-template-columns: 1fr 1fr; }
    .cta-options { grid-template-columns: 1fr 1fr; }
    .footer__top { grid-template-columns: 1fr 1fr; gap: 32px; }
}

/* === LANDSCAPE PHONE (480-768px) === */
@media (min-width: 480px) and (max-width: 768px) {
    .pricing-grid { grid-template-columns: 1fr; }
    .cta-options { grid-template-columns: 1fr; }
    .gallery { grid-template-columns: 1fr; grid-auto-rows: 200px; }
    .gallery__item--wide { grid-column: span 1; }
}

/* === TOUCH DEVICE ADJUSTMENTS === */
@media (hover: none) and (pointer: coarse) {
    .cursor-outer, .cursor-inner { display: none; }
    body { cursor: auto; }
    a, button { cursor: pointer; }
    .cta-card:hover { transform: none; }
    .price-card:hover { transform: none; }
    .testimonial:hover { transform: none; }
    .h-scroll__item:hover { transform: none; }
    .amenity:hover { transform: none; }
    .gallery__item img { filter: brightness(0.85); }
    .gallery__caption { opacity: 1; transform: translateY(0); }
}

/* === PRINT STYLES === */
@media print {
    .header, .wa-float, .offer-banner, .hero__scroll, .cursor-outer, .cursor-inner, .theme-toggle, .modal { display: none !important; }
    body { background: #fff; color: #000; font-size: 12pt; }
    .section { padding: 20px 0; }
    .hero { min-height: auto; padding: 40px 0; background: none; }
    .hero__title, .section-title { color: #000; }
}

/* === REDUCED MOTION (accessibility) === */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
    .hero__scroll-line { animation: none; }
    [data-reveal] { opacity: 1; transform: none; }
    [data-split] span { opacity: 1 !important; transform: none !important; }
}

/* === HIGH CONTRAST MODE === */
@media (prefers-contrast: high) {
    :root { --border: rgba(255,255,255,0.2); --text-dim: #aaa; }
    .price-card, .testimonial, .h-scroll__item, .cta-card { border-width: 2px; }
}

/* === DARK MODE SYSTEM PREFERENCE (default is dark, this ensures light respects system) === */
@media (prefers-color-scheme: light) {
    html:not([data-theme="dark"]):not([data-theme]) {
        /* Only apply if user hasn't manually set theme */
    }
}


/* === HERO CAROUSEL === */
.hero__carousel {
    position: absolute; inset: 0; z-index: 0;
}
.hero__slide {
    position: absolute; inset: 0;
    background-size: cover; background-position: center;
    opacity: 0; transition: opacity 1.5s ease-in-out;
    transform: scale(1.05);
}
.hero__slide.active {
    opacity: 1;
    animation: heroZoom 8s ease-in-out forwards;
}
@keyframes heroZoom {
    0% { transform: scale(1.05); }
    100% { transform: scale(1); }
}
.hero__overlay {
    position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(180deg, rgba(6,6,6,0.7) 0%, rgba(6,6,6,0.85) 50%, rgba(6,6,6,0.95) 100%);
}


/* === LIGHT MODE HERO FIX (carousel has dark overlay, text must stay light) === */
[data-theme="light"] .hero { background: #1a1a1a; }
[data-theme="light"] .hero__title { color: #fff; }
[data-theme="light"] .hero__title em { color: var(--gold-light); }
[data-theme="light"] .hero__tag { color: var(--gold-light); }
[data-theme="light"] .hero__desc { color: rgba(255,255,255,0.75); }
[data-theme="light"] .hero__actions .btn-primary { background: var(--gold-light); color: #1a1a1a; }
[data-theme="light"] .hero__actions .btn-ghost { color: rgba(255,255,255,0.7); }
[data-theme="light"] .hero__actions .btn-ghost:hover { color: var(--gold-light); }
[data-theme="light"] .hero__scroll span { color: rgba(255,255,255,0.5); }
[data-theme="light"] .hero__overlay { background: linear-gradient(180deg, rgba(6,6,6,0.65) 0%, rgba(6,6,6,0.8) 50%, rgba(6,6,6,0.92) 100%); }


/* === FOOTER SOCIAL ICONS === */
.footer__social { display: flex; gap: 12px; margin-top: 20px; }
.footer__social a {
    width: 38px; height: 38px; display: flex; align-items: center; justify-content: center;
    border-radius: 50%; border: 1px solid rgba(255,255,255,0.12);
    color: rgba(255,255,255,0.5); transition: all 0.4s var(--ease);
}
.footer__social a:hover { border-color: var(--gold); color: var(--gold); transform: translateY(-2px); }


/* === FOOTER NEWSLETTER === */
.footer__newsletter { grid-column: 1 / -1; padding-top: 40px; margin-top: 40px; border-top: 1px solid rgba(255,255,255,0.06); }
.footer__newsletter h5 { font-size: .72rem; text-transform: uppercase; letter-spacing: 2px; color: var(--gold); margin-bottom: 8px; font-weight: 600; }
.footer__newsletter p { font-size: .85rem; color: rgba(255,255,255,0.5); margin-bottom: 16px; }
.footer__newsletter-form { display: flex; gap: 10px; max-width: 400px; }
.footer__newsletter-form input {
    flex: 1; padding: 14px 18px; background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.1); border-radius: 100px;
    font-size: .85rem; color: #fff; font-family: var(--font); outline: none;
    transition: border-color 0.3s;
}
.footer__newsletter-form input:focus { border-color: var(--gold); }
.footer__newsletter-form input::placeholder { color: rgba(255,255,255,0.3); }
.footer__newsletter-form button {
    padding: 14px 24px; background: var(--gold); color: var(--black);
    border: none; border-radius: 100px; font-size: .78rem; font-weight: 700;
    letter-spacing: 1px; text-transform: uppercase; font-family: var(--font);
    cursor: pointer; transition: all 0.4s var(--ease); white-space: nowrap;
}
.footer__newsletter-form button:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(184,155,94,0.2); }

/* Light mode newsletter */
[data-theme="light"] .footer__newsletter { border-top-color: rgba(255,255,255,0.1); }
[data-theme="light"] .footer__newsletter p { color: rgba(255,255,255,0.5); }
[data-theme="light"] .footer__newsletter-form input { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.15); color: #fff; }
[data-theme="light"] .footer__newsletter-form input::placeholder { color: rgba(255,255,255,0.35); }


/* === NEWSLETTER SECTION === */
.newsletter-section { padding: 80px 0; border-top: 1px solid var(--border); }
.newsletter-box {
    display: flex; align-items: center; justify-content: space-between; gap: 40px;
    padding: 48px 56px; background: var(--surface); border: 1px solid var(--border);
    border-radius: 28px;
}
.newsletter-box__text h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.6rem; color: #fff; margin-bottom: 6px; }
.newsletter-box__text p { font-size: .88rem; color: var(--text-dim); }
.newsletter-box__form { display: flex; gap: 10px; flex-shrink: 0; }
.newsletter-box__form input {
    padding: 16px 22px; width: 260px; background: rgba(255,255,255,0.04);
    border: 1px solid var(--border); border-radius: 100px;
    font-size: .88rem; color: #fff; font-family: var(--font); outline: none;
    transition: border-color 0.3s;
}
.newsletter-box__form input:focus { border-color: var(--gold); }
.newsletter-box__form input::placeholder { color: var(--text-dim); }
.newsletter-box__form button {
    padding: 16px 32px; background: var(--gold); color: var(--black);
    border: none; border-radius: 100px; font-size: .8rem; font-weight: 700;
    letter-spacing: 1.5px; text-transform: uppercase; font-family: var(--font);
    cursor: pointer; transition: all 0.4s var(--ease); white-space: nowrap;
}
.newsletter-box__form button:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(184,155,94,0.25); }

/* Newsletter responsive */
@media (max-width: 768px) {
    .newsletter-box { flex-direction: column; text-align: center; padding: 36px 28px; }
    .newsletter-box__form { width: 100%; }
    .newsletter-box__form input { width: 100%; flex: 1; }
}

/* Newsletter light mode */
[data-theme="light"] .newsletter-box { background: #f5f5f5; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .newsletter-box__text h3 { color: #1a1a1a; }
[data-theme="light"] .newsletter-box__text p { color: #555; }
[data-theme="light"] .newsletter-box__form input { background: #fff; border-color: rgba(0,0,0,0.1); color: #1a1a1a; }
[data-theme="light"] .newsletter-box__form input::placeholder { color: #999; }
[data-theme="light"] .newsletter-box__form button { background: var(--gold); color: #fff; }


/* === LOGO IMAGE === */
.nav__logo-img { height: 40px; width: auto; object-fit: contain; }
.footer__logo-img { height: 50px; width: auto; object-fit: contain; margin-bottom: 16px; }
@media (max-width: 480px) {
    .nav__logo-img { height: 32px; }
    .footer__logo-img { height: 40px; }
}


/* === BOOKING SYSTEM === */
.booking-wrapper { max-width: 700px; margin: 0 auto; }
.booking-steps { display: flex; justify-content: space-between; margin-bottom: 48px; position: relative; }
.booking-steps::before { content: ''; position: absolute; top: 16px; left: 10%; right: 10%; height: 1px; background: var(--border); }
.booking-step { display: flex; flex-direction: column; align-items: center; gap: 8px; position: relative; z-index: 1; }
.booking-step__num { width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; font-size: .75rem; font-weight: 700; color: var(--text-dim); background: var(--black); transition: all 0.3s; }
.booking-step__label { font-size: .7rem; color: var(--text-dim); text-transform: uppercase; letter-spacing: 1px; }
.booking-step.active .booking-step__num { border-color: var(--gold); color: var(--gold); }
.booking-step.active .booking-step__label { color: var(--gold); }
.booking-step.done .booking-step__num { background: var(--gold); border-color: var(--gold); color: var(--black); }

.booking-panel { display: none; }
.booking-panel.active { display: block; animation: fadeUp 0.4s var(--ease); }
@keyframes fadeUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

/* Room Grid */
.room-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-bottom: 32px; }
.room-card { padding: 28px; background: var(--surface); border: 1px solid var(--border); border-radius: 20px; text-align: center; cursor: pointer; transition: all 0.4s var(--ease); }
.room-card:hover { border-color: rgba(184,155,94,0.3); transform: translateY(-3px); }
.room-card.selected { border-color: var(--gold); background: rgba(184,155,94,0.05); }
.room-card__icon { margin-bottom: 12px; color: var(--gold); }
.room-card h4 { font-size: 1rem; color: #fff; margin-bottom: 4px; }
.room-card p { font-size: .8rem; color: var(--text-dim); }
.room-card__price { display: block; margin-top: 12px; font-size: .85rem; font-weight: 700; color: var(--gold); }

/* DateTime */
.datetime-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 16px; margin-bottom: 32px; }
.form-block { display: flex; flex-direction: column; gap: 6px; }
.form-block label { font-size: .72rem; text-transform: uppercase; letter-spacing: 1.5px; color: var(--text-dim); font-weight: 600; }
.form-block input, .form-block select, .form-block textarea {
    padding: 14px 16px; background: var(--surface); border: 1px solid var(--border);
    border-radius: 12px; font-size: .88rem; color: #fff; font-family: var(--font);
    outline: none; transition: border-color 0.3s;
}
.form-block input:focus, .form-block select:focus, .form-block textarea:focus { border-color: var(--gold); }
.form-block select { cursor: pointer; }
.form-block select option { background: var(--surface); color: #fff; }
.form-block textarea { resize: none; }

/* Nav buttons */
.booking-nav { display: flex; justify-content: space-between; margin-top: 32px; }
.booking-back { padding: 14px 28px; background: none; border: 1px solid var(--border); border-radius: 100px; color: var(--text-dim); font-size: .82rem; font-weight: 600; cursor: pointer; transition: all 0.3s; font-family: var(--font); }
.booking-back:hover { border-color: var(--gold); color: var(--gold); }
.booking-next, .booking-pay { padding: 14px 32px; background: var(--gold); border: none; border-radius: 100px; color: var(--black); font-size: .82rem; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; cursor: pointer; transition: all 0.4s var(--ease); font-family: var(--font); }
.booking-next:hover, .booking-pay:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(184,155,94,0.25); }
.booking-pay { width: 100%; margin-top: 0; }

/* Payment */
.payment-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 24px; }
.payment-btn { padding: 16px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; color: var(--text-dim); font-size: .82rem; font-weight: 500; cursor: pointer; display: flex; align-items: center; gap: 10px; justify-content: center; transition: all 0.3s; font-family: var(--font); }
.payment-btn.active { border-color: var(--gold); color: var(--gold); background: rgba(184,155,94,0.05); }
.card-form { margin-bottom: 24px; }

/* Summary */
.booking-summary { margin-bottom: 24px; }
.summary-row { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--border); font-size: .88rem; }
.summary-row span { color: var(--text-dim); }
.summary-row strong { color: #fff; }
.summary-total { display: flex; justify-content: space-between; padding: 16px 0; font-size: 1.1rem; border-top: 1px solid var(--gold); margin-top: 8px; }
.summary-total span { color: var(--text-dim); }
.summary-total strong { color: var(--gold); font-size: 1.3rem; }

/* Booking responsive */
@media (max-width: 600px) {
    .room-grid { grid-template-columns: 1fr; }
    .datetime-grid { grid-template-columns: 1fr; }
    .payment-grid { grid-template-columns: 1fr; }
}

/* Booking light mode */
[data-theme="light"] .booking-step__num { background: #fff; color: #555; }
[data-theme="light"] .room-card { background: #fff; }
[data-theme="light"] .room-card h4 { color: #1a1a1a; }
[data-theme="light"] .room-card.selected { background: #fffdf7; }
[data-theme="light"] .form-block input, [data-theme="light"] .form-block select, [data-theme="light"] .form-block textarea { background: #fff; color: #1a1a1a; border-color: rgba(0,0,0,0.1); }
[data-theme="light"] .form-block select option { background: #fff; color: #1a1a1a; }
[data-theme="light"] .payment-btn { background: #fff; color: #555; }
[data-theme="light"] .payment-btn.active { color: var(--gold); background: #fffdf7; }
[data-theme="light"] .summary-row strong { color: #1a1a1a; }
[data-theme="light"] .booking-back { color: #555; border-color: rgba(0,0,0,0.1); }


/* === LEGAL PAGES === */
.legal-content { max-width: 700px; }
.legal-content h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.2rem; color: #fff; margin-top: 36px; margin-bottom: 12px; }
.legal-content h3:first-child { margin-top: 0; }
.legal-content p { font-size: .92rem; color: var(--text-dim); line-height: 1.8; margin-bottom: 12px; }
.legal-content strong { color: #fff; }
[data-theme="light"] .legal-content h3 { color: #1a1a1a; }
[data-theme="light"] .legal-content p { color: #444; }
[data-theme="light"] .legal-content strong { color: #1a1a1a; }


/* === MOBILE NAV FIX === */
@media (max-width: 768px) {
    .nav__toggle { display: flex; }
    
    .nav__menu { display: none; }
    .nav__menu.active {
        display: flex !important; flex-direction: column;
        position: fixed; top: 0; left: 0; right: 0; bottom: 0;
        width: 100vw; height: 100vh;
        background: rgba(6,6,6,0.98); backdrop-filter: blur(20px);
        justify-content: center; align-items: center;
        gap: 32px; z-index: 999;
        padding: 80px 24px;
        animation: menuFadeIn 0.4s var(--ease);
    }
    @keyframes menuFadeIn { from { opacity: 0; } to { opacity: 1; } }
    .nav__menu.active li {
        opacity: 0; animation: menuItemIn 0.4s var(--ease) forwards;
        list-style: none;
    }
    .nav__menu.active li:nth-child(1) { animation-delay: 0.05s; }
    .nav__menu.active li:nth-child(2) { animation-delay: 0.1s; }
    .nav__menu.active li:nth-child(3) { animation-delay: 0.15s; }
    .nav__menu.active li:nth-child(4) { animation-delay: 0.2s; }
    .nav__menu.active li:nth-child(5) { animation-delay: 0.25s; }
    @keyframes menuItemIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
    .nav__menu.active .nav__link {
        font-size: 1.5rem; color: #fff; font-family: var(--serif);
        letter-spacing: 0; text-transform: none;
    }
    .nav__menu.active .nav__link:hover,
    .nav__menu.active .nav__link.active { color: var(--gold); }
    
    .nav__actions .nav__cta { display: none; }
    
    /* Toggle must be above the menu overlay */
    .nav__toggle { z-index: 1001; }
    .nav__actions { z-index: 1001; position: relative; }
    
    /* Light mode mobile */
    [data-theme="light"] .nav__toggle span { background: #1a1a1a; }
    [data-theme="light"] .nav__toggle.active span { background: var(--gold); }
    [data-theme="light"] .nav__menu.active { background: rgba(255,255,255,0.98); }
    [data-theme="light"] .nav__menu.active .nav__link { color: #1a1a1a; }
    [data-theme="light"] .nav__menu.active .nav__link:hover,
    [data-theme="light"] .nav__menu.active .nav__link.active { color: var(--gold); }
}


/* === MAP EMBED === */
[data-theme="light"] iframe[src*="google.com/maps"] { filter: none !important; }


/* === NAV ACTIONS (toggle + theme + CTA together) === */
.nav__actions { display: flex; align-items: center; gap: 14px; }
@media (max-width: 768px) {
    .nav__actions { gap: 10px; }
    .nav__actions .nav__cta { display: none; }
    .nav__actions .nav__toggle { display: flex; }
}


/* === H-SCROLL MOBILE FIX === */
@media (max-width: 768px) {
    .h-scroll { height: auto !important; }
    .h-scroll__header { margin-bottom: 24px; padding-top: 0; }
    .h-scroll__sticky { position: relative; height: auto; overflow: visible; }
    .h-scroll__track {
        overflow-x: auto; padding: 0 24px 20px;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .h-scroll__track::-webkit-scrollbar { display: none; }
    .h-scroll__item { min-width: 300px; scroll-snap-align: start; }
}


/* === FLOOR PLAN === */
.floor-plan img { transition: transform 0.5s var(--ease); }
.floor-plan img:hover { transform: scale(1.02); }
[data-theme="light"] .floor-plan img { border-color: rgba(0,0,0,0.08); }


/* === UPGRADE PATH SECTION === */
.upgrade-section { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 60px; align-items: start; }
.upgrade-card {
    padding: 36px; background: var(--surface); border: 1px solid rgba(184,155,94,0.2);
    border-radius: 24px; margin-top: 8px;
}
.upgrade-card__badge {
    display: inline-block; padding: 4px 14px; background: rgba(184,155,94,0.1);
    border: 1px solid rgba(184,155,94,0.2); border-radius: 50px;
    font-size: .68rem; font-weight: 600; color: var(--gold);
    text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 16px;
}
.upgrade-card h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.4rem; color: #fff; margin-bottom: 10px; }
.upgrade-card p { font-size: .88rem; color: var(--text-dim); line-height: 1.7; margin-bottom: 16px; }
.upgrade-card .feature-list li { padding: 8px 0; font-size: .85rem; }

/* Journey Timeline */
.upgrade-journey { padding-top: 40px; }
.journey-step { display: flex; gap: 20px; padding: 28px 0; position: relative; }
.journey-step:not(:last-child)::after {
    content: ''; position: absolute; left: 11px; top: 56px; bottom: 0;
    width: 1px; background: var(--border);
}
.journey-step__dot {
    width: 24px; height: 24px; border-radius: 50%; flex-shrink: 0;
    border: 2px solid var(--border); background: var(--black);
    display: flex; align-items: center; justify-content: center; margin-top: 4px;
}
.journey-step.active .journey-step__dot {
    border-color: var(--gold); background: var(--gold);
    box-shadow: 0 0 0 4px rgba(184,155,94,0.15);
}
.journey-step__label { font-size: .68rem; text-transform: uppercase; letter-spacing: 1.5px; color: var(--gold); font-weight: 600; }
.journey-step__content h4 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.1rem; color: #fff; margin: 4px 0; }
.journey-step__content p { font-size: .82rem; color: var(--text-dim); }

@media (max-width: 768px) { .upgrade-section { grid-template-columns: 1fr; } }

/* Light mode */
[data-theme="light"] .upgrade-card { background: #f8f8f8; border-color: rgba(154,123,60,0.15); }
[data-theme="light"] .upgrade-card h3 { color: #1a1a1a; }
[data-theme="light"] .journey-step__content h4 { color: #1a1a1a; }
[data-theme="light"] .journey-step__dot { background: #fff; }
[data-theme="light"] .journey-step.active .journey-step__dot { background: var(--gold); }


/* === SOCIAL SIDEBAR === */
.social-sidebar {
    position: fixed; right: 20px; top: 50%; transform: translateY(-50%);
    z-index: 900; display: flex; flex-direction: column; gap: 4px;
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 40px; padding: 8px;
}
.social-sidebar__item {
    width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;
    border-radius: 50%; color: var(--text-dim);
    transition: all 0.3s var(--ease);
}
.social-sidebar__item:hover { color: var(--gold); background: rgba(184,155,94,0.08); transform: scale(1.1); }
.social-sidebar__item--wa { color: #25D366; }
.social-sidebar__item--wa:hover { color: #25D366; background: rgba(37,211,102,0.1); }

/* Hide old wa-float if any remain */
.wa-float { display: none; }

/* Mobile: move to bottom horizontal bar */
@media (max-width: 768px) {
    .social-sidebar {
        top: auto; bottom: 0; right: 0; left: 0;
        transform: none; flex-direction: row;
        justify-content: center; border-radius: 0;
        padding: 8px 16px; gap: 0;
        border-left: none; border-right: none; border-bottom: none;
        background: rgba(6,6,6,0.95); backdrop-filter: blur(20px);
    }
    .social-sidebar__item { width: 48px; height: 44px; }
}

/* Light mode */
[data-theme="light"] .social-sidebar { background: #fff; border-color: rgba(0,0,0,0.08); box-shadow: 0 4px 20px rgba(0,0,0,0.08); }
[data-theme="light"] .social-sidebar__item { color: #555; }
[data-theme="light"] .social-sidebar__item:hover { color: var(--gold); background: rgba(154,123,60,0.06); }
@media (max-width: 768px) {
    [data-theme="light"] .social-sidebar { background: rgba(255,255,255,0.95); }
}


/* === MEETING ROOM CARD ALIGNMENT === */
.pricing-grid .price-card {
    display: flex; flex-direction: column; align-items: center;
}
.pricing-grid .price-card .btn {
    margin-top: auto;
}
.pricing-grid .price-card h3 { text-align: center; }
.pricing-grid .price-card .price-card__sub { text-align: center; }
.pricing-grid .price-card .price-card__price { text-align: center; margin-bottom: 20px; }


/* === NAV PHONE NUMBER === */
.nav__phone {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 20px; border: 1px solid var(--border);
    border-radius: 100px; font-size: .82rem; font-weight: 500;
    color: var(--text-dim); transition: all 0.3s var(--ease);
    white-space: nowrap;
}
.nav__phone:hover { border-color: var(--gold); color: var(--gold); }
.nav__phone-dot { width: 6px; height: 6px; background: var(--gold); border-radius: 50%; }
[data-theme="light"] .nav__phone { border-color: rgba(0,0,0,0.12); color: #444; }
[data-theme="light"] .nav__phone:hover { border-color: var(--gold); color: var(--gold); }
@media (max-width: 1024px) { .nav__phone { display: none; } }


/* === LOCATION CARDS === */
.location-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-bottom: 0; }
.location-card {
    text-align: center; padding: 48px 32px;
    border: 1px solid var(--border); border-radius: 24px;
    transition: all 0.4s var(--ease);
}
.location-card:hover { border-color: rgba(184,155,94,0.2); }
.location-card--highlight { border-color: rgba(184,155,94,0.3); }
.location-card__icon {
    width: 72px; height: 72px; margin: 0 auto 24px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%; background: rgba(184,155,94,0.08);
    border: 1px solid rgba(184,155,94,0.2); color: var(--gold);
}
.location-card h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.2rem; color: #fff; margin-bottom: 12px; }
.location-card p { font-size: .88rem; color: var(--text-dim); line-height: 1.7; }
.location-card p a { color: var(--text-dim); transition: color 0.3s; }
.location-card p a:hover { color: var(--gold); }
.location-card p strong { color: #fff; }
.location-card__link {
    display: inline-flex; align-items: center; gap: 6px;
    margin-top: 20px; font-size: .82rem; font-weight: 600;
    color: var(--gold); letter-spacing: 0.5px;
}
.location-card__link:hover { opacity: 0.7; }

@media (max-width: 768px) { .location-cards { grid-template-columns: 1fr; } }

/* Light mode */
[data-theme="light"] .location-card { border-color: rgba(0,0,0,0.08); }
[data-theme="light"] .location-card--highlight { border-color: rgba(154,123,60,0.2); }
[data-theme="light"] .location-card__icon { background: rgba(154,123,60,0.06); border-color: rgba(154,123,60,0.15); }
[data-theme="light"] .location-card h3 { color: #1a1a1a; }
[data-theme="light"] .location-card p strong { color: #1a1a1a; }


/* === MOBILE BODY PADDING for social sidebar === */
@media (max-width: 768px) { body { padding-bottom: 60px; } }

/* === ADVANTAGES GRID === */
.advantages-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
@media (max-width: 1024px) { .advantages-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .advantages-grid { grid-template-columns: 1fr; } }

/* === RESPONSIVE IMAGE HEIGHT === */
@media (max-width: 768px) {
    .split img { height: 260px !important; }
    .gallery-grid img { height: 200px; }
}
/* === SISTER BRAND GRID === */
.sister-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; }
@media (max-width: 768px) { .sister-grid { grid-template-columns: 1fr; gap: 32px; } }

.office-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)); gap: 24px; }
.office-card { padding: 48px 36px; background: var(--surface); border: 1px solid var(--border); transition: all 0.5s var(--ease); border-radius: 24px; }
.office-card:hover { border-color: rgba(201,169,110,0.2); transform: translateY(-4px); box-shadow: 0 20px 60px rgba(0,0,0,0.3); }
.office-card__size { font-size: .68rem; text-transform: uppercase; letter-spacing: 2px; color: var(--gold); margin-bottom: 12px; font-weight: 600; }
.office-card h3 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.4rem; color: #fff; margin-bottom: 8px; }
.office-card p { font-size: .85rem; color: var(--text-dim); line-height: 1.7; margin-bottom: 20px; }
.office-card__features { margin-bottom: 24px; }
.office-card__features li { font-size: .82rem; color: var(--text-dim); padding: 6px 0; display: flex; align-items: center; gap: 10px; }
.office-card__features li::before { content: ''; width: 4px; height: 4px; background: var(--gold); border-radius: 50%; }
.office-card .btn { display: block; text-align: center; padding: 16px; border: 1px solid var(--border); border-radius: 100px; font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 1.5px; color: #fff; transition: all 0.3s; }
.office-card .btn:hover { border-color: var(--gold); color: var(--gold); }

.amenities-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.amenity-item h4 { font-family: 'Cormorant Garamond', serif; font-weight: 300; letter-spacing: 1px; font-size: 1.2rem; color: var(--text); margin-bottom: 8px; }
.amenity-item p { font-size: .85rem; color: var(--text-dim); line-height: 1.7; }

.gallery-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.gallery-grid img { width: 100%; height: 300px; object-fit: cover; border-radius: 16px; transition: transform 0.6s var(--ease); }
.gallery-grid img:hover { transform: scale(1.03); }

/* Light mode for Arabian Sea specific */
[data-theme="light"] .office-card { background: #fff; border-color: rgba(0,0,0,0.06); }
[data-theme="light"] .office-card:hover { border-color: var(--gold); box-shadow: 0 20px 60px rgba(0,0,0,0.08); }
[data-theme="light"] .office-card h3 { color: #1a1a1a; }
[data-theme="light"] .office-card .btn { color: #1a1a1a; border-color: rgba(0,0,0,0.12); }
[data-theme="light"] .office-card .btn:hover { border-color: var(--gold); color: var(--gold); }
[data-theme="light"] .amenity-item h4 { color: #1a1a1a; }

@media (max-width: 768px) {
    .office-grid { grid-template-columns: 1fr; }
    .amenities-grid { grid-template-columns: 1fr; }
    .gallery-grid { grid-template-columns: 1fr; }
}
@media (max-width: 1024px) {
    .amenities-grid { grid-template-columns: 1fr 1fr; }
}
