/*
Theme Name: La Maison Vacation Homes
Theme URI: https://lamaison.ae
Author: La Maison Vacation Homes
Description: Custom Dubai glamour WordPress theme with property management.
Version: 1.4.0
Text Domain: la-maison
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Italiana&display=swap');

:root {
  --font-body: "DM Sans";
  --font-editorial: "Italiana";
  --paper: #f4efe7;
  --ink: #050505;
  --muted: #71685d;
  --line: #c8bcae;
  --gold: #a57b45;
  --cream: #f4efe7;
  --brown: #050505;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-body), Arial, Helvetica, sans-serif;
  font-weight: 400;
  letter-spacing: -.01em;
}

.gold-header { color: white; }
.gold-header .wordmark { color: #ead7ba; }
.gold-header .header-cta { color: #ead7ba; }
.brochure-hero { min-height: 900px; display: grid; grid-template-columns: 48% 52%; background: var(--brown); color: white; }
.brochure-hero-copy { padding: 185px 7% 55px; display: flex; flex-direction: column; border-right: 1px solid rgba(255,255,255,.25); }
.brochure-hero h1 { font: 500 clamp(66px,7vw,108px)/.86 var(--font-editorial),serif; letter-spacing: -.045em; margin: 26px 0 35px; }
.brochure-hero h1 em { color: #c8a678; font-weight: 400; }
.brochure-hero-copy > p:not(.eyebrow) { color: #d6cec5; font-size: 18px; line-height: 1.65; max-width: 570px; }
.button-gold { background: var(--gold); color: white; border-color: var(--gold); }
.button-gold:hover { background: #bd9561; }
.button-outline-gold { border-color: #c8a678; color: #ead7ba; }
.button-outline-gold:hover { background: #ead7ba; color: var(--brown); }
.brochure-hero-image { background: linear-gradient(180deg,transparent 60%,rgba(0,0,0,.45)),url('assets/images/brochure-living.jpg') center/cover; position: relative; }
.brochure-hero-image span { position: absolute; right: 30px; bottom: 28px; font-size: 11px; text-transform: uppercase; letter-spacing: .2em; }
.hero-proof { margin-top: auto; border-top: 1px solid rgba(255,255,255,.28); display: grid; grid-template-columns: repeat(3,1fr); padding-top: 22px; }
.hero-proof div { display: flex; flex-direction: column; gap: 6px; }
.hero-proof div + div { border-left: 1px solid rgba(255,255,255,.28); padding-left: 18px; }
.hero-proof strong { color: #ead7ba; font: 500 24px var(--font-editorial),serif; }
.hero-proof span { color: #aaa098; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.brand-statement { padding: 140px 7%; display: grid; grid-template-columns: 27% 1fr; gap: 8%; }
.statement-kicker { color: var(--gold); text-transform: uppercase; letter-spacing: .2em; font-size: 11px; }
.brand-statement h2 { font-size: clamp(52px,6vw,88px); line-height: .95; margin: 26px 0 42px; }
.statement-copy { max-width: 760px; font-size: 20px; line-height: 1.7; color: var(--muted); }
.mission-strip { border-block: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr; padding: 0 7%; }
.mission-strip article { padding: 65px 8% 70px 0; }
.mission-strip article + article { border-left: 1px solid var(--line); padding-left: 8%; }
.mission-strip span { color: var(--gold); text-transform: uppercase; letter-spacing: .2em; font-size: 10px; }
.mission-strip p { font: 500 32px/1.3 var(--font-editorial),serif; margin: 25px 0 0; }
.brochure-services { display: grid; grid-template-columns: 52% 48%; background: var(--brown); color: white; }
.services-editorial-image { min-height: 900px; background: linear-gradient(180deg,transparent 65%,rgba(0,0,0,.6)),url('assets/images/brochure-bedroom.jpg') center/cover; position: relative; }
.services-editorial-image span { position: absolute; left: 32px; bottom: 32px; text-transform: uppercase; letter-spacing: .18em; font-size: 11px; line-height: 1.7; }
.services-panel { padding: 105px 10%; }
.services-panel h2 { font-size: clamp(52px,5vw,76px); line-height: .95; margin: 35px 0 30px; }
.services-panel > p:not(.section-index) { color: #c6bcb2; line-height: 1.7; }
.service-list { margin: 45px 0; border-top: 1px solid #66584c; display: grid; grid-template-columns: 1fr 1fr; }
.service-list div { padding: 17px 0; border-bottom: 1px solid #66584c; font-size: 13px; }
.service-list div:nth-child(odd) { padding-right: 12px; }
.service-list div:nth-child(even) { border-left: 1px solid #66584c; padding-left: 15px; }
.service-list span { color: #a88c6b; font-size: 9px; margin-right: 10px; }
.earn-section { padding: 140px 7%; display: grid; grid-template-columns: 1.1fr .9fr; gap: 10%; }
.earn-section h2 { font-size: clamp(55px,7vw,100px); line-height: .9; margin: 42px 0 0; }
.earn-copy p { font-size: 18px; line-height: 1.75; color: var(--muted); }
.earn-copy .button { margin-top: 28px; }
.safety-section { background: #a37c4c; color: white; padding: 120px 7%; }
.safety-heading { display: grid; grid-template-columns: .6fr 1.4fr; gap: 8%; align-items: start; }
.safety-heading h2 { font-size: clamp(55px,6vw,90px); line-height: .92; margin: 0; max-width: 900px; }
.safety-grid { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 90px; border-top: 1px solid rgba(255,255,255,.5); }
.safety-grid article { padding: 28px 8% 10px 0; }
.safety-grid article + article { border-left: 1px solid rgba(255,255,255,.5); padding-left: 8%; }
.safety-grid span { font-size: 10px; opacity: .7; }
.safety-grid h3 { font: 500 34px var(--font-editorial),serif; margin: 38px 0 18px; }
.safety-grid p { color: #f1e8dd; line-height: 1.7; }
.reviews-section { background: #fffaf3; text-align: center; padding: 130px 8%; }
.reviews-section blockquote { font: 500 clamp(40px,5vw,76px)/1.04 var(--font-editorial),serif; max-width: 1150px; margin: 45px auto 30px; }
.review-credit { color: var(--gold); text-transform: uppercase; letter-spacing: .18em; font-size: 10px; }
.review-minis { margin-top: 85px; padding-top: 35px; border-top: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1fr; gap: 10%; text-align: left; }
.review-minis p { font: 500 25px/1.38 var(--font-editorial),serif; }
.review-minis span { display: block; color: var(--muted); font: 600 10px var(--font-body),sans-serif; text-transform: uppercase; letter-spacing: .12em; margin-top: 20px; }
.channels-section { padding: 120px 7%; display: grid; grid-template-columns: 1fr 1fr; gap: 10%; }
.channels-section h2 { font-size: clamp(50px,6vw,82px); line-height: .95; margin: 35px 0 0; }
.channels-section > div:nth-child(2) > p { color: var(--muted); line-height: 1.7; font-size: 18px; }
.channel-grid { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line); margin-top: 40px; }
.channel-grid span { padding: 22px 0; border-bottom: 1px solid var(--line); font: 500 25px var(--font-editorial),serif; }
.channel-grid span:nth-child(even) { border-left: 1px solid var(--line); padding-left: 24px; }
.brochure-contact { background: var(--brown); color: white; padding: 120px 7%; display: grid; grid-template-columns: 1.25fr 1fr; gap: 10%; }
.brochure-contact h2 { font-size: clamp(52px,6vw,90px); line-height: .95; margin: 42px 0 0; }
.gold-footer { background: #e7ded1; }
.gold-float { background: var(--gold); }
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; }

.site-header {
  position: absolute;
  inset: 0 0 auto 0;
  z-index: 10;
  height: 92px;
  display: grid;
  grid-template-columns: 46% 1fr auto;
  align-items: center;
  padding: 0 40px;
}
.inner-header { position: relative; border-bottom: 1px solid rgba(255,255,255,.24); background: var(--brown); color: white; }
.gold-inner-header .wordmark, .gold-inner-header .header-cta { color: #ead7ba; }
.wordmark {
  font-family: var(--font-editorial), Georgia, serif;
  font-size: 30px;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.brand-logo { display: inline-flex; width: 255px; height: 76px; align-items: center; }
.brand-logo img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.footer-logo { width: 310px; height: 100px; align-self: start; }
.desktop-nav { display: flex; justify-content: center; gap: 34px; font-size: 14px; }
.desktop-nav a, footer nav a { position: relative; }
.desktop-nav a::after, footer nav a::after {
  content: ""; position: absolute; left: 0; right: 100%; bottom: -6px;
  height: 1px; background: currentColor; transition: right .25s ease;
}
.desktop-nav a:hover::after, footer nav a:hover::after { right: 0; }
.header-cta {
  border-bottom: 1px solid; padding: 8px 0; margin-left: 28px;
  font-size: 13px; text-transform: uppercase; letter-spacing: .12em;
}
.mobile-menu { display: none; }

.hero {
  min-height: 900px;
  display: grid;
  grid-template-columns: 46% 54%;
  border-bottom: 1px solid var(--ink);
}
.hero-copy {
  padding: 182px 6.5% 40px;
  border-right: 1px solid var(--ink);
  display: flex; flex-direction: column;
}
.eyebrow, .section-index {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .25em;
  font-size: 12px;
}
.hero h1 {
  margin: 27px 0 30px;
  font-family: var(--font-editorial), Georgia, serif;
  font-weight: 500;
  font-size: clamp(62px, 6.6vw, 100px);
  line-height: .92;
  letter-spacing: -.045em;
}
.hero-intro { font-size: 17px; line-height: 1.55; margin: 0 0 30px; }
.hero-actions { display: flex; gap: 20px; }
.button {
  min-height: 58px; padding: 0 28px;
  display: inline-flex; align-items: center; justify-content: space-between; gap: 36px;
  border: 1px solid var(--ink);
  font-size: 15px; transition: background .25s, color .25s, transform .25s;
}
.button:hover { transform: translateY(-2px); }
.button-dark { background: var(--ink); color: white; }
.button-dark:hover { background: transparent; color: var(--ink); }
.button-light { background: transparent; }
.button-light:hover { background: white; }
.trust-row {
  margin-top: auto; padding-top: 24px; border-top: 1px solid var(--ink);
  display: grid; grid-template-columns: 1fr 1fr;
}
.trust-row div { display: flex; align-items: center; gap: 15px; font-size: 15px; }
.trust-row div + div { border-left: 1px solid var(--ink); padding-left: 28px; }
.trust-row strong { font-family: var(--font-editorial), Georgia, serif; font-size: 19px; font-weight: 600; }
.hero-image {
  min-height: 900px;
  background: url("assets/images/hero-villa.png") center/cover no-repeat;
  filter: none;
  animation: imageReveal 1s ease-out both;
}

.intro-section {
  padding: 140px 7%;
  display: grid; grid-template-columns: 30% 1fr; gap: 8%;
}
.intro-section > div { max-width: 780px; }
h2 {
  font-family: var(--font-editorial), Georgia, serif;
  font-weight: 500; letter-spacing: -.035em;
}
.intro-section h2, .stays-section h2 {
  font-size: clamp(48px, 6vw, 86px); line-height: .98; margin: 0 0 42px;
}
.intro-section div > p {
  max-width: 670px; font-size: 21px; line-height: 1.65; color: #30302e;
}
.text-link { display: inline-block; margin-top: 24px; padding-bottom: 8px; border-bottom: 1px solid; }
.text-link span { margin-left: 55px; }

.stays-section { padding: 130px 5%; background: white; border-block: 1px solid var(--ink); }
.section-heading {
  display: grid; grid-template-columns: 2fr 1fr; gap: 8%;
  align-items: end; margin-bottom: 70px;
}
.section-heading h2 { margin: 24px 0 0; }
.section-heading > p { max-width: 400px; line-height: 1.7; font-size: 16px; }
.stay-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.stay-card a { display: block; }
.image-wrap { position: relative; overflow: hidden; aspect-ratio: 4/5; background: #ddd; }
.image-wrap img { height: 100%; object-fit: cover; filter: none; transition: transform .6s ease; }
.stay-card:hover img { transform: scale(1.025); }
.image-wrap span {
  position: absolute; top: 16px; right: 16px; width: 38px; height: 38px;
  display: grid; place-items: center; background: var(--paper); font-size: 12px;
}
.stay-card > a > p {
  margin: 22px 0 12px; text-transform: uppercase; letter-spacing: .18em;
  font-size: 10px; color: var(--muted);
}
.stay-card h3 { font-family: var(--font-editorial), Georgia, serif; font-weight: 600; font-size: 32px; margin: 0 0 15px; }
.card-detail {
  padding-top: 14px; border-top: 1px solid var(--line);
  display: flex; justify-content: space-between; gap: 12px; font-size: 13px; color: var(--muted);
}
.card-detail strong { color: var(--ink); }
.center-action { margin-top: 65px; text-align: center; }

.services-section {
  background: var(--ink); color: white;
  display: grid; grid-template-columns: 54% 46%;
}
.services-image { position: relative; min-height: 760px; overflow: hidden; }
.services-image img { height: 100%; object-fit: cover; filter: none; opacity: .92; }
.image-caption {
  position: absolute; bottom: 25px; left: 25px; right: 25px;
  padding: 14px 16px; border: 1px solid rgba(255,255,255,.55);
  font-size: 12px; text-transform: uppercase; letter-spacing: .16em;
}
.services-copy { padding: 110px 10%; }
.section-index.light { color: #a7a7a1; }
.services-copy h2 { margin: 35px 0 30px; font-size: clamp(50px, 5vw, 77px); line-height: .95; }
.services-copy > p { color: #c7c7c2; line-height: 1.7; max-width: 480px; }
.services-copy ul { list-style: none; padding: 0; margin: 52px 0; }
.services-copy li { border-top: 1px solid #555; padding: 19px 0; font-size: 15px; }
.services-copy li:last-child { border-bottom: 1px solid #555; }
.services-copy li span { color: #8d8d88; margin-right: 22px; font-size: 11px; }
.button-white { background: white; color: var(--ink); border-color: white; }
.button-white:hover { background: transparent; color: white; }

.owners-section { padding: 140px 7%; }
.owners-title {
  display: grid; grid-template-columns: 1.5fr 1fr; gap: 10%; align-items: end;
  margin: 42px 0 90px;
}
.owners-title h2 { font-size: clamp(55px, 7vw, 105px); line-height: .9; margin: 0; }
.owners-title p { font-size: 18px; line-height: 1.65; margin: 0; max-width: 500px; }
.owner-points { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 55px; }
.owner-points article { border-top: 1px solid; padding: 24px 8% 20px 0; }
.owner-points article + article { border-left: 1px solid; padding-left: 8%; }
.owner-points span { color: var(--muted); font-size: 11px; }
.owner-points h3 { font-family: var(--font-editorial), Georgia, serif; font-size: 31px; font-weight: 600; margin: 45px 0 17px; }
.owner-points p { color: var(--muted); line-height: 1.6; }

.quote-section {
  padding: 130px 10%; text-align: center; background: white; border-block: 1px solid;
}
.quote-section > p { font-family: var(--font-editorial), Georgia, serif; font-size: 80px; height: 40px; margin: 0; }
.quote-section blockquote {
  max-width: 960px; margin: 20px auto 35px;
  font-family: var(--font-editorial), Georgia, serif; font-size: clamp(40px, 5vw, 76px); font-weight: 500; line-height: 1.03;
}
.quote-section span { text-transform: uppercase; letter-spacing: .18em; font-size: 11px; }

.contact-section {
  background: var(--ink); color: white; padding: 120px 7%;
  display: grid; grid-template-columns: 1.3fr 1fr; gap: 10%;
}
.contact-section h2 { font-size: clamp(52px, 6vw, 88px); line-height: .95; margin: 42px 0 0; }
.contact-actions a { display: block; padding: 24px 0; border-top: 1px solid #555; }
.contact-actions a:last-child { border-bottom: 1px solid #555; }
.contact-actions span { display: block; color: #8d8d88; font-size: 11px; text-transform: uppercase; letter-spacing: .15em; margin-bottom: 10px; }
.contact-actions strong { font-size: 17px; font-weight: 400; }

footer { padding: 80px 7% 30px; }
.footer-top { display: grid; grid-template-columns: 1.2fr 1fr .5fr; gap: 8%; }
.footer-mark { align-self: start; }
.footer-top p { margin: 0; line-height: 1.8; font-size: 13px; color: var(--muted); }
.footer-top nav { display: flex; flex-direction: column; gap: 18px; align-items: flex-start; font-size: 13px; }
.footer-bottom {
  margin-top: 70px; padding-top: 20px; border-top: 1px solid var(--line);
  display: flex; justify-content: space-between; color: var(--muted); font-size: 11px;
  text-transform: uppercase; letter-spacing: .12em;
}
.social-footer {
  margin-top: 58px;
  padding: 24px 0;
  border-block: 1px solid var(--line);
  display: grid;
  grid-template-columns: 1fr 2fr;
  align-items: center;
  gap: 8%;
}
.social-footer > span {
  color: var(--gold);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .2em;
}
.social-footer nav {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.social-footer a {
  font: 500 23px var(--font-editorial), Georgia, serif;
  padding: 10px 0;
  border-bottom: 1px solid transparent;
  transition: color .2s, border-color .2s;
}
.social-footer a:hover { color: var(--gold); border-color: var(--gold); }
.whatsapp-float {
  position: fixed; z-index: 20; right: 22px; bottom: 22px;
  width: 54px; height: 54px; border-radius: 50%; background: var(--ink); color: white;
  display: grid; place-items: center; border: 1px solid white; font-size: 12px; letter-spacing: .08em;
}

.page-hero { min-height: 650px; display: grid; grid-template-columns: 46% 54%; border-bottom: 1px solid var(--line); background: var(--brown); color: white; }
.page-hero-copy { padding: 110px 8% 70px; border-right: 1px solid rgba(255,255,255,.24); display: flex; flex-direction: column; justify-content: center; }
.page-hero h1, .contact-page h1 { font-family: var(--font-editorial), Georgia, serif; font-size: clamp(64px, 7.5vw, 112px); font-weight: 500; line-height: .84; letter-spacing: -.045em; margin: 35px 0; }
.page-hero-copy > p:last-child { max-width: 520px; font-size: 18px; line-height: 1.65; color: #d6cec5; }
.page-hero > img { height: 100%; min-height: 650px; object-fit: cover; filter: none; }
.listing-page, .process-page, .story-page { padding: 110px 6%; }
.listing-head { display: grid; grid-template-columns: 1.6fr 1fr; align-items: end; gap: 8%; margin-bottom: 65px; }
.listing-head h2, .story-page h2, .owner-cta h2 { font-size: clamp(48px, 6vw, 84px); line-height: .95; margin: 0; }
.listing-head p { max-width: 430px; line-height: 1.7; }
.residence-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 25px; }
.residence-photo { aspect-ratio: 4/5; overflow: hidden; position: relative; }
.residence-photo img { height: 100%; object-fit: cover; filter: none; transition: transform .5s; }
.residence-card:hover img { transform: scale(1.025); }
.residence-photo span { position: absolute; right: 15px; top: 15px; background: var(--paper); width: 38px; height: 38px; display: grid; place-items: center; font-size: 11px; }
.residence-card > a > p { margin: 20px 0 10px; text-transform: uppercase; letter-spacing: .17em; color: var(--muted); font-size: 10px; }
.residence-card h2 { font-size: 29px; margin: 0 0 15px; }
.residence-card > a > div:last-child { border-top: 1px solid var(--line); padding-top: 14px; display: flex; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 12px; }
.residence-card strong { color: var(--ink); font-weight: 400; }
.page-contact-band { background: var(--gold); color: white; padding: 100px 7%; text-align: center; }
.page-contact-band p { text-transform: uppercase; letter-spacing: .2em; font-size: 11px; }
.page-contact-band h2 { font-size: clamp(50px, 7vw, 90px); margin: 25px auto 45px; }
.page-contact-band .button { width: auto; }
.process-grid { display: grid; grid-template-columns: repeat(2,1fr); margin: 60px 0 100px; }
.process-grid article { padding: 35px 8% 50px 0; border-top: 1px solid; }
.process-grid article:nth-child(even) { border-left: 1px solid; padding-left: 8%; }
.process-grid span, .values-grid span { color: var(--muted); font-size: 11px; }
.process-grid h2 { font-size: 36px; margin: 35px 0 18px; }
.process-grid p { color: var(--muted); line-height: 1.7; max-width: 500px; }
.owner-cta { border-top: 1px solid; padding-top: 70px; display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.owner-cta h2 { max-width: 760px; }
.story-page { display: grid; grid-template-columns: 1.2fr 1fr; gap: 10%; }
.story-page h2 { margin-top: 40px; }
.story-copy p { font-size: 19px; line-height: 1.75; margin: 0 0 28px; }
.values-grid { display: grid; grid-template-columns: repeat(3,1fr); background: white; border-block: 1px solid; padding: 0 6%; }
.values-grid article { padding: 75px 8% 85px 0; }
.values-grid article + article { border-left: 1px solid; padding-left: 8%; }
.values-grid h2 { font-size: 43px; margin: 35px 0 25px; }
.values-grid p { line-height: 1.7; color: var(--muted); }
.contact-page { background: var(--brown); color: white; padding: 115px 7%; display: grid; grid-template-columns: 1.25fr 1fr; gap: 10%; }
.contact-page > div > p:last-child { max-width: 650px; font-size: 18px; line-height: 1.7; color: #bbb; }
.contact-list a, .contact-list > div { display: block; padding: 24px 0; border-top: 1px solid #555; }
.contact-list > :last-child { border-bottom: 1px solid #555; }
.contact-list span { display: block; text-transform: uppercase; letter-spacing: .16em; font-size: 10px; color: #888; margin-bottom: 10px; }
.contact-list strong { font-size: 17px; line-height: 1.6; font-weight: 400; }
.location-section { background: #fffaf3; padding: 110px 7%; display: grid; grid-template-columns: .72fr 1.28fr; gap: 8%; align-items: center; border-bottom: 1px solid var(--line); }
.location-copy h2 { font-size: clamp(48px, 5vw, 76px); line-height: .95; margin: 32px 0 25px; max-width: 560px; }
.location-copy > p:last-of-type { color: var(--muted); font-size: 17px; line-height: 1.8; margin-bottom: 38px; }
.location-map { min-height: 520px; overflow: hidden; border: 1px solid var(--line); background: var(--cream); }
.location-map iframe { display: block; width: 100%; height: 520px; border: 0; filter: sepia(.12) saturate(.92) contrast(.96); }
.contact-choice { display: grid; grid-template-columns: 1fr 1fr; }
.contact-choice article { padding: 90px 7%; min-height: 410px; }
.contact-choice article + article { border-left: 1px solid; }
.contact-choice p { text-transform: uppercase; letter-spacing: .18em; font-size: 10px; }
.contact-choice h2 { font-size: 55px; line-height: .95; margin: 30px 0 55px; max-width: 520px; }

.search-hero { background: var(--brown); color: white; padding: 150px 7% 100px; display: grid; grid-template-columns: 1.5fr .65fr; gap: 8%; align-items: end; }
.search-hero .section-index { grid-column: 1 / -1; color: #999; margin-bottom: 35px; }
.search-hero h1, .faq-hero h1 { font-family: var(--font-editorial), Georgia, serif; font-weight: 500; font-size: clamp(68px, 8vw, 124px); line-height: .84; letter-spacing: -.045em; margin: 0; }
.search-hero > p:last-child { color: #bbb; font-size: 18px; line-height: 1.7; max-width: 460px; }
.search-hero > div > p { color: #bbb; font-size: 18px; line-height: 1.7; max-width: 460px; margin: 0 0 28px; }
.property-browser { padding: 0 5% 120px; background: #fffaf3; }
.filter-bar { position: relative; top: -1px; display: grid; grid-template-columns: 1fr 1fr .8fr; border: 1px solid var(--ink); margin-bottom: 75px; background: var(--paper); }
.filter-bar label, .result-count { padding: 22px 24px; min-height: 92px; display: flex; flex-direction: column; justify-content: center; }
.filter-bar > * + * { border-left: 1px solid var(--ink); }
.filter-bar label span, .result-count span { text-transform: uppercase; letter-spacing: .17em; font-size: 9px; color: var(--muted); margin-bottom: 10px; }
.filter-bar select { appearance: none; border: 0; background: transparent; font: 500 21px var(--font-editorial), Georgia, serif; outline: 0; cursor: pointer; }
.result-count strong { font: 500 21px var(--font-editorial), Georgia, serif; }
.search-results { min-height: 300px; }
.empty-state { text-align: center; padding: 100px 0; }
.empty-state h2 { font-size: 55px; margin: 0 0 15px; }
.empty-state .button { margin-top: 25px; }
.booking-note { border-block: 1px solid; padding: 65px 7%; display: grid; grid-template-columns: .6fr 1.5fr .6fr; align-items: center; gap: 5%; }
.booking-note span { text-transform: uppercase; letter-spacing: .18em; font-size: 10px; }
.booking-note p { font: 500 39px/1.12 var(--font-editorial), Georgia, serif; margin: 0; }
.booking-note a { border-bottom: 1px solid; padding-bottom: 8px; justify-self: end; }
.faq-hero { padding: 145px 7% 100px; border-bottom: 1px solid rgba(255,255,255,.24); background: var(--brown); color: white; }
.faq-hero h1 { margin: 35px 0 45px; max-width: 1000px; }
.faq-hero > p:last-child { font-size: 20px; color: #d6cec5; }
.faq-layout { padding: 110px 7%; display: grid; grid-template-columns: .45fr 1.4fr; gap: 10%; }
.faq-layout aside { align-self: start; position: sticky; top: 35px; padding-top: 20px; border-top: 1px solid; }
.faq-layout aside p { font: 500 30px var(--font-editorial), Georgia, serif; }
.faq-layout aside a { display: inline-block; border-bottom: 1px solid; padding-bottom: 7px; }
.faq-layout aside span { display: block; margin-top: 35px; color: var(--muted); font-size: 12px; }
.faq-list details { border-top: 1px solid; }
.faq-list details:last-child { border-bottom: 1px solid; }
.faq-list summary { cursor: pointer; list-style: none; display: grid; grid-template-columns: 55px 1fr auto; gap: 20px; align-items: center; padding: 27px 0; font: 500 28px var(--font-editorial), Georgia, serif; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { font: 600 10px var(--font-body), Arial, sans-serif; color: var(--muted); }
.faq-list summary b { font: 300 28px var(--font-body), Arial, sans-serif; transition: transform .2s; }
.faq-list details[open] summary b { transform: rotate(45deg); }
.faq-list details p { margin: 0 50px 30px 75px; max-width: 750px; color: var(--muted); line-height: 1.75; }
.contact-form-section { background: #fffaf3; border-top: 1px solid var(--line); padding: 110px 7%; display: grid; grid-template-columns: .8fr 1.2fr; gap: 10%; }

.listing-page, .process-page, .story-page, .faq-layout, .booking-note, .contact-choice { background: var(--cream); }
.values-grid { background: #fffaf3; border-color: var(--line); }
.section-index { color: var(--gold); }
.section-index.light { color: #c8a678; }
.button-dark { background: var(--gold); border-color: var(--gold); color: white; }
.button-dark:hover { background: var(--brown); border-color: var(--brown); color: white; }
.button-light { border-color: var(--gold); color: var(--brown); }
.button-light:hover { background: var(--gold); color: white; }
.page-contact-band .button-white { color: var(--brown); }
.residence-photo span, .image-wrap span { background: var(--cream); color: var(--brown); }
.faq-list details, .faq-layout aside, .booking-note, .owner-cta { border-color: var(--line); }
.contact-choice article + article { border-color: var(--line); }
.gold-footer { background: var(--brown); color: #fff; }
.gold-footer .footer-top p { color: #d6cec5; }
.gold-footer .footer-top nav { color: #f4efe7; }
.gold-footer .social-footer { border-color: rgba(255,255,255,.22); }
.gold-footer .social-footer a { color: #fffaf3; }
.gold-footer .social-footer a:hover { color: #c8a678; border-color: #c8a678; }
.gold-footer .footer-bottom { border-color: rgba(255,255,255,.22); color: #b9aea3; }
.contact-form-section h2 { font-size: clamp(50px,6vw,85px); line-height: .95; margin: 35px 0 25px; }
.contact-form-section > div > p:last-child { color: var(--muted); line-height: 1.7; }
.contact-form-section form { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.contact-form-section label { text-transform: uppercase; letter-spacing: .14em; font-size: 9px; }
.contact-form-section input, .contact-form-section select, .contact-form-section textarea { width: 100%; display: block; margin-top: 10px; border: 0; border-bottom: 1px solid; background: transparent; padding: 13px 0; font: 400 16px var(--font-body), Arial, sans-serif; border-radius: 0; outline: 0; }
.contact-form-section textarea { border: 1px solid; padding: 15px; resize: vertical; }
.form-message { grid-column: 1 / -1; }
.contact-form-section button { width: fit-content; }

@keyframes imageReveal {
  from { opacity: 0; transform: scale(1.015); }
  to { opacity: 1; transform: scale(1); }
}

@media (max-width: 960px) {
  .site-header { grid-template-columns: 1fr auto; padding: 0 22px; height: 76px; }
  .wordmark { font-size: 22px; }
  .brand-logo { width: 175px; height: 54px; }
  .desktop-nav, .header-cta { display: none; }
  .mobile-menu { display: block; position: relative; }
  .mobile-menu summary { list-style: none; text-transform: uppercase; letter-spacing: .15em; font-size: 11px; cursor: pointer; }
  .mobile-menu nav {
    position: absolute; right: 0; top: 28px; background: var(--paper); border: 1px solid;
    padding: 22px; width: 190px; display: flex; flex-direction: column; gap: 18px;
  }
  .hero { grid-template-columns: 1fr; padding-top: 76px; min-height: auto; }
  .hero-copy { padding: 75px 7% 34px; border-right: 0; min-height: 700px; }
  .hero-image { min-height: 68vw; border-top: 1px solid; }
  .intro-section { grid-template-columns: 1fr; gap: 45px; padding: 95px 7%; }
  .section-heading, .owners-title, .contact-section { grid-template-columns: 1fr; }
  .section-heading > p { margin-top: 25px; }
  .stay-grid { grid-template-columns: 1fr 1fr; }
  .stay-card:last-child { grid-column: 1 / -1; max-width: calc(50% - 11px); }
  .services-section { grid-template-columns: 1fr; }
  .services-image { min-height: 65vw; }
  .owner-points { grid-template-columns: 1fr; }
  .owner-points article + article { border-left: 0; padding-left: 0; }
  .contact-actions { margin-top: 55px; }
  .page-hero { grid-template-columns: 1fr; }
  .page-hero-copy { border-right: 0; min-height: 520px; }
  .page-hero > img { min-height: 60vw; }
  .residence-grid { grid-template-columns: 1fr 1fr; }
  .story-page, .contact-page { grid-template-columns: 1fr; }
  .contact-list { margin-top: 55px; }
  .search-hero { grid-template-columns: 1fr; }
  .filter-bar { grid-template-columns: 1fr 1fr; }
  .result-count { grid-column: 1 / -1; border-left: 0 !important; border-top: 1px solid; }
  .booking-note { grid-template-columns: 1fr; }
  .booking-note a { justify-self: start; }
  .faq-layout, .contact-form-section, .location-section { grid-template-columns: 1fr; }
  .location-map { margin-top: 10px; }
  .faq-layout aside { position: static; }
  .gold-header .mobile-menu summary { color: #ead7ba; }
  .gold-header .mobile-menu nav { color: var(--ink); }
  .brochure-hero { grid-template-columns: 1fr; }
  .brochure-hero-copy { min-height: 760px; padding: 145px 7% 45px; border-right: 0; }
  .brochure-hero-image { min-height: 70vw; }
  .brand-statement, .earn-section, .channels-section, .brochure-contact { grid-template-columns: 1fr; gap: 55px; }
  .brochure-services { grid-template-columns: 1fr; }
  .services-editorial-image { min-height: 72vw; }
  .safety-heading { grid-template-columns: 1fr; gap: 40px; }
  .home-video-heading { grid-template-columns: 1fr; gap: 36px; }
}

@media (max-width: 620px) {
  .hero-copy { min-height: 650px; }
  .hero h1 { font-size: 60px; }
  .hero-actions { flex-direction: column; }
  .button { width: 100%; }
  .trust-row { gap: 16px; }
  .trust-row div { font-size: 12px; }
  .trust-row div + div { padding-left: 16px; }
  .stays-section, .owners-section { padding: 85px 6%; }
  .stay-grid { grid-template-columns: 1fr; }
  .stay-card:last-child { grid-column: auto; max-width: none; }
  .image-wrap { aspect-ratio: 4/4.6; }
  .services-copy { padding: 85px 7%; }
  .services-image { min-height: 85vw; }
  .search-hero { padding-top: 115px; }
  .search-hero h1, .faq-hero h1 { font-size: 57px; }
  .filter-bar { grid-template-columns: 1fr; }
  .filter-bar > * + * { border-left: 0; border-top: 1px solid; }
  .result-count { grid-column: auto; }
  .property-browser { padding-inline: 6%; }
  .booking-note p { font-size: 29px; }
  .faq-layout { padding: 80px 6%; }
  .faq-list summary { grid-template-columns: 35px 1fr auto; font-size: 20px; }
  .faq-list details p { margin-left: 55px; margin-right: 15px; }
  .contact-form-section form { grid-template-columns: 1fr; }
  .contact-form-section form > * { grid-column: 1; }
  .owners-title { margin-bottom: 55px; }
  .footer-top { grid-template-columns: 1fr; gap: 40px; }
  .footer-logo { width: 220px; height: 72px; }
  .footer-bottom { flex-direction: column; gap: 12px; }
  .social-footer { grid-template-columns: 1fr; gap: 22px; }
  .social-footer nav { grid-template-columns: 1fr 1fr; gap: 12px 20px; }
  .social-footer a { font-size: 18px; }
  .listing-page, .process-page, .story-page { padding: 80px 6%; }
  .listing-head, .owner-cta { display: block; }
  .listing-head p { margin-top: 25px; }
  .residence-grid, .process-grid, .values-grid, .contact-choice { grid-template-columns: 1fr; }
  .process-grid article:nth-child(even), .values-grid article + article, .contact-choice article + article { border-left: 0; padding-left: 0; }
  .process-grid article, .values-grid article { border-top: 1px solid; }
  .owner-cta .button { margin-top: 35px; }
  .contact-page { padding: 90px 7%; }
  .location-section { padding: 80px 7%; }
  .location-map, .location-map iframe { min-height: 390px; height: 390px; }
  .brochure-hero-copy { min-height: 720px; padding-top: 125px; }
  .brochure-hero h1 { font-size: 59px; }
  .brochure-hero-image { min-height: 105vw; }
  .hero-proof { grid-template-columns: 1fr 1fr; gap: 20px 0; }
  .hero-proof div:nth-child(3) { grid-column: 1 / -1; border-left: 0; padding-left: 0; border-top: 1px solid rgba(255,255,255,.28); padding-top: 16px; }
  .brand-statement, .earn-section, .channels-section, .brochure-contact { padding: 85px 6%; }
  .mission-strip { grid-template-columns: 1fr; padding: 0 6%; }
  .mission-strip article + article { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; }
  .mission-strip p { font-size: 25px; }
  .services-editorial-image { min-height: 100vw; }
  .services-panel { padding: 85px 7%; }
  .service-list { grid-template-columns: 1fr; }
  .service-list div:nth-child(even) { border-left: 0; padding-left: 0; }
  .safety-section, .reviews-section { padding: 85px 6%; }
  .safety-grid, .review-minis { grid-template-columns: 1fr; }
  .safety-grid article + article { border-left: 0; border-top: 1px solid rgba(255,255,255,.5); padding-left: 0; }
  .review-minis { gap: 10px; }
  .channel-grid { grid-template-columns: 1fr; }
  .home-video-section { padding: 85px 6%; }
  .home-video-heading { margin-bottom: 38px; }
  .channel-grid span:nth-child(even) { border-left: 0; padding-left: 0; }
}

/* New content pages — v1.2.0 */
.desktop-nav{gap:clamp(12px,1.15vw,25px)}.desktop-nav a{font-size:12px;white-space:nowrap}.area-hero,.standard-new-hero{min-height:760px;padding:170px 7% 100px;background:linear-gradient(90deg,rgba(7,5,3,.96) 0%,rgba(7,5,3,.76) 48%,rgba(7,5,3,.22)),url('assets/images/brochure-city.jpg') center/cover;color:#fff5e7;display:flex;align-items:center}.area-hero>div{max-width:820px}.area-hero h1,.standard-new-hero h1{font-size:clamp(64px,8vw,132px);line-height:.88;margin:18px 0 35px;color:#fff5e7}.area-hero>div>p,.standard-new-hero>p{max-width:680px;color:#d8cbb8;font-size:18px;line-height:1.7}.area-hero .button{margin-top:25px}.area-intro{padding:110px 7%;background:var(--cream)}.area-intro>div{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.area-intro h2{font-size:clamp(48px,6vw,88px);line-height:.95;margin:15px 0}.area-intro>div>div{padding-top:28px;font-size:17px;line-height:1.8}.area-guide-grid{background:#0a0806}.area-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:610px;border-top:1px solid rgba(226,199,127,.26);color:#eee1ce}.area-card:nth-child(even){grid-template-columns:.95fr 1.05fr}.area-card:nth-child(even) .area-card-image{order:2}.area-card-image{position:relative;min-height:560px;overflow:hidden}.area-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.area-card-image span{position:absolute;left:28px;top:28px;background:#0a0806;color:var(--gold-bright);padding:12px 15px}.area-card>div:last-child{padding:10% 12%;display:flex;flex-direction:column;justify-content:center}.area-card h2{font-size:clamp(38px,4vw,65px);line-height:1;margin:14px 0 25px;color:#fff5e7}.area-card p{line-height:1.8;color:#cdbfa9}.area-card a{margin-top:25px;color:var(--gold-bright);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.area-final div{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.button-outline-light{border:1px solid rgba(255,255,255,.6);color:#fff}.standard-new-hero{min-height:650px;background-image:linear-gradient(90deg,rgba(7,5,3,.95),rgba(7,5,3,.38)),url('assets/images/interior-apartment.png')}.standard-new-hero h1{font-size:clamp(58px,7vw,108px)}.new-page-grid,.booking-options,.blog-grid{padding:100px 7%;background:var(--cream);display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background-color:#c7af87}.new-page-grid article,.booking-options article{background:#fffaf2;padding:65px}.new-page-grid span{color:#9b7335;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.new-page-grid h2,.booking-options h2{font-size:42px;line-height:1.05}.career-page{padding:110px 7%;background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9%}.career-page h2{font-size:clamp(48px,6vw,82px);line-height:.96}.career-page>div:last-child{font-size:18px;line-height:1.8}.booking-options article:nth-child(2){background:#0a0806;color:#eee1ce}.booking-options article:nth-child(2) h2{color:#fff5e7}.blog-grid{grid-template-columns:repeat(3,1fr);gap:25px;background:var(--cream)}.blog-grid article{background:#fffaf2;padding:12px 12px 28px;box-shadow:0 15px 40px rgba(42,29,13,.09)}.blog-grid article img{width:100%;height:280px;object-fit:cover}.blog-grid article h2,.blog-grid article p,.blog-grid article span{margin-left:18px;margin-right:18px}.blog-grid article h2{font-size:32px}.blog-grid article span{color:#936a2d}.blog-grid a{color:inherit}.blog-grid .empty-state{grid-column:1/-1;padding:70px;background:#fffaf2}.footer-top nav{display:grid;grid-template-columns:repeat(2,minmax(110px,1fr));gap:12px 28px}
@media(max-width:1200px){.desktop-nav{display:none}.mobile-menu{display:block}}
@media(max-width:760px){.area-hero,.standard-new-hero{min-height:700px;padding:130px 7% 70px}.area-intro>div,.area-card,.area-card:nth-child(even),.career-page,.new-page-grid,.booking-options,.blog-grid{grid-template-columns:1fr}.area-card:nth-child(even) .area-card-image{order:0}.area-card-image{min-height:72vw}.area-card>div:last-child{padding:65px 7%}.area-intro,.career-page,.new-page-grid,.booking-options,.blog-grid{padding:70px 7%}.new-page-grid article,.booking-options article{padding:45px 28px}.blog-grid article img{height:58vw}}
.single-blog-hero{padding:170px 7% 85px;background:#0a0806;color:#fff5e7;text-align:center}.single-blog-hero h1{font-size:clamp(52px,7vw,105px);line-height:.94;max-width:1100px;margin:20px auto}.single-blog-hero p{color:var(--gold-bright)}.single-blog-image{width:100%;height:min(64vw,760px);object-fit:cover}.single-blog-content{max-width:850px;margin:auto;padding:90px 7%;font-size:18px;line-height:1.85}.single-blog-content h2{font-size:45px;line-height:1.08;margin-top:55px}.single-blog-content a{color:#8b622c;text-decoration:underline}.single-blog-back{padding:0 7% 90px;text-align:center}.single-blog-back a{color:#8b622c}

.admin-shell { min-height: 100vh; background: #eee6d9; color: #17120d; }
.admin-header { min-height: 84px; padding: 16px 4%; display:flex; align-items:center; justify-content:space-between; background:#090704; color:#f8eddc; border-bottom:1px solid #c6a15b; }
.admin-header > div { display:flex; align-items:center; gap:22px; }
.admin-header span { font:500 24px var(--font-editorial),serif; color:#e3c77f; }
.admin-header strong { font-size:11px; text-transform:uppercase; letter-spacing:.16em; }
.admin-header small { color:#a99a85; }.admin-header a { border:1px solid #c6a15b; padding:10px 14px; font-size:11px; text-transform:uppercase; }
.admin-grid { display:grid; grid-template-columns:minmax(420px,.8fr) minmax(500px,1.2fr); gap:28px; padding:32px 4% 70px; align-items:start; }
.admin-form-card,.admin-list { background:#fffaf2; border:1px solid #d3c4ab; padding:32px; box-shadow:0 15px 45px rgba(37,25,11,.08); }
.admin-form-card { position:sticky; top:20px; }.admin-kicker{margin:0 0 8px;color:#9a7132;font-size:9px;text-transform:uppercase;letter-spacing:.2em}.admin-form-card h1,.admin-list h2{font:500 40px var(--font-editorial),serif;margin:0 0 28px}.admin-form-card form{display:flex;flex-direction:column;gap:18px}.admin-form-card label{font-size:9px;text-transform:uppercase;letter-spacing:.14em}.admin-form-card label small{float:right;color:#8a7d6c;text-transform:none;letter-spacing:0}.admin-form-card input:not([type=checkbox]),.admin-form-card select,.admin-form-card textarea{display:block;width:100%;margin-top:8px;border:1px solid #c8b99f;background:#fff;padding:12px 13px;font:14px var(--font-body),sans-serif;border-radius:0}.admin-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.admin-row.three{grid-template-columns:repeat(3,1fr)}.admin-check{display:flex;align-items:center;gap:10px;padding-top:28px}.admin-check input{accent-color:#9a7132}.admin-actions{display:flex;gap:10px}.admin-actions button,.admin-item-actions button{border:1px solid #0a0806;background:#0a0806;color:#e3c77f;padding:13px 20px;text-transform:uppercase;font-size:10px;letter-spacing:.1em;cursor:pointer}.admin-actions .secondary{background:transparent;color:#17120d}.admin-message{color:#765521;font-size:13px}.admin-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.admin-thumbs div{position:relative}.admin-thumbs img{height:80px;object-fit:cover}.admin-thumbs button{position:absolute;inset:auto 3px 3px 3px;border:0;background:rgba(0,0,0,.75);color:white;font-size:9px;padding:5px;cursor:pointer}.admin-list-head{display:flex;justify-content:space-between;align-items:start}.admin-list-head>span{font-size:11px;text-transform:uppercase;color:#796b59}.admin-list article{display:grid;grid-template-columns:130px 1fr auto;gap:18px;padding:18px 0;border-top:1px solid #d3c4ab;align-items:center}.admin-list-image{height:105px;background:#ded5c7;display:grid;place-items:center;font-size:11px;color:#796b59}.admin-list-image img{width:100%;height:100%;object-fit:cover}.admin-list article small{color:#8d672b;text-transform:uppercase;letter-spacing:.1em;font-size:8px}.admin-list article h3{font:500 25px var(--font-editorial),serif;margin:7px 0}.admin-list article p{font-size:12px;color:#796b59}.admin-list article b{display:inline-block;margin-right:6px;padding:5px 8px;background:#ded5c7;font-size:8px;text-transform:uppercase}.admin-list article b.published{background:#dce9d7;color:#31512c}.admin-item-actions{display:flex;flex-direction:column;gap:7px}.admin-item-actions button:last-child{background:transparent;color:#8c2e26;border-color:#b76760}.admin-empty{padding:70px 0;text-align:center;color:#796b59}.admin-shell button:disabled{opacity:.5;cursor:wait}
@media(max-width:1050px){.admin-grid{grid-template-columns:1fr}.admin-form-card{position:static}}@media(max-width:620px){.admin-header{align-items:flex-start}.admin-header>div{flex-direction:column;align-items:flex-start;gap:5px}.admin-grid{padding:18px 4% 50px}.admin-form-card,.admin-list{padding:22px 16px}.admin-row,.admin-row.three{grid-template-columns:1fr}.admin-check{padding-top:5px}.admin-list article{grid-template-columns:90px 1fr}.admin-list-image{height:85px}.admin-item-actions{grid-column:1/-1;flex-direction:row}.admin-thumbs{grid-template-columns:repeat(3,1fr)}}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* Dubai Glamour direction */
:root {
  --paper: #f7f0e4;
  --cream: #f7f0e4;
  --ink: #0a0806;
  --brown: #080705;
  --muted: #786d60;
  --line: #cdbd9f;
  --gold: #c6a15b;
  --gold-bright: #e3c77f;
  --black-soft: #12100d;
}

body { background: var(--brown); }
.site-header {
  height: 104px;
  padding-inline: 4.5%;
  border-bottom: 1px solid rgba(226,197,127,.3);
  background: linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,0));
}
.inner-header { height: 104px; background: #0a0806; border-color: rgba(226,197,127,.3); }
.brand-logo { width: 280px; height: 88px; }
.desktop-nav { gap: 40px; color: #eee2ce; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.desktop-nav a::after { background: var(--gold-bright); }
.header-cta { color: var(--gold-bright) !important; border: 1px solid var(--gold); padding: 14px 20px; margin-left: 35px; }
.header-cta:hover { background: var(--gold); color: #090704 !important; }

.brochure-hero {
  position: relative;
  min-height: 960px;
  display: block;
  overflow: hidden;
  background: #070604;
}
.brochure-hero-image {
  position: absolute;
  inset: 0 0 0 39%;
  background-image: linear-gradient(90deg,#070604 0%,rgba(7,6,4,.8) 16%,rgba(7,6,4,.08) 55%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 48%),url('assets/images/brochure-living.jpg');
  filter: saturate(1.08) contrast(1.03);
}
.brochure-hero-image::after {
  content: "";
  position: absolute;
  inset: 22px;
  border: 1px solid rgba(226,199,127,.45);
  pointer-events: none;
}
.brochure-hero-copy {
  position: relative;
  z-index: 2;
  width: 58%;
  min-height: 960px;
  padding: 190px 7% 60px;
  border-right: 0;
}
.brochure-hero .eyebrow { color: var(--gold-bright); }
.brochure-hero h1 { font-size: clamp(72px,7.7vw,124px); line-height: .82; margin-top: 34px; text-shadow: 0 10px 35px rgba(0,0,0,.45); }
.brochure-hero h1 em { color: var(--gold-bright); font-style: italic; }
.brochure-hero-copy > p:not(.eyebrow) { max-width: 520px; color: #ded4c6; }
.button { letter-spacing: .05em; text-transform: uppercase; font-size: 11px; min-height: 61px; }
.button-gold { color: #080705; background: linear-gradient(135deg,#b68b42,#e2c579,#b68b42); border-color: #e2c579; box-shadow: 0 10px 35px rgba(198,161,91,.18); }
.button-gold:hover { background: #f0d99d; }
.button-outline-gold { background: rgba(0,0,0,.22); backdrop-filter: blur(8px); }
.hero-proof { width: 78%; border-color: rgba(226,199,127,.4); }
.hero-proof strong { color: var(--gold-bright); }

.brand-statement { background: var(--cream); padding-block: 155px; }
.brand-statement h2, .earn-section h2, .channels-section h2 { color: #17120d; }
.brand-statement h2::after { content: ""; display: block; width: 110px; height: 2px; margin-top: 38px; background: linear-gradient(90deg,var(--gold),transparent); }
.mission-strip { background: #eadfcf; border-color: #bfae91; }
.mission-strip article + article { border-color: #bfae91; }
.mission-strip span { color: #8d672b; }

.brochure-services { background: #0b0907; }
.services-editorial-image { min-height: 940px; border: 24px solid #0b0907; border-right: 0; }
.services-panel { padding-block: 120px; background: radial-gradient(circle at 90% 10%,rgba(198,161,91,.14),transparent 30%),#0b0907; }
.services-panel h2 { color: #fff5e7; }
.service-list { border-color: rgba(226,199,127,.32); }
.service-list div { border-color: rgba(226,199,127,.24); color: #eadfce; }
.service-list div:nth-child(even) { border-color: rgba(226,199,127,.24); }
.service-list span { color: var(--gold-bright); }

.earn-section { background: var(--cream); }
.earn-copy .button-dark { background: #0a0806; border-color: #0a0806; color: var(--gold-bright); }
.safety-section { background: linear-gradient(135deg,#8f642b 0%,#c39b55 46%,#7b531f 100%); position: relative; overflow: hidden; }
.safety-section::before { content: "LM"; position: absolute; right: -2%; top: -8%; font: 500 350px var(--font-editorial),serif; color: rgba(255,255,255,.055); }
.safety-grid { position: relative; }
.safety-grid article { background: rgba(15,10,4,.12); padding: 36px 7% 28px; }
.reviews-section { background: #0b0907; color: #fff4e4; }
.reviews-section .section-index,.review-credit { color: var(--gold-bright); }
.review-minis { border-color: rgba(226,199,127,.3); }
.review-minis span,.review-minis p { color: #d8cbb8; }
.channels-section { background: var(--cream); }
.channel-grid span { color: #1b150f; }
.home-video-section { background: #0a0806; color: #f8eddc; padding: 110px 7%; border-top: 1px solid rgba(226,199,127,.24); }
.home-video-heading { display: grid; grid-template-columns: .7fr 1.3fr; gap: 8%; align-items: end; margin-bottom: 55px; }
.home-video-heading h2 { max-width: 900px; margin: 0; font-size: clamp(46px,5.5vw,82px); line-height: .96; }
.home-video-frame { position: relative; width: min(100%, 900px); margin: 0 auto; aspect-ratio: 16 / 9; overflow: hidden; background: #000; border: 1px solid rgba(226,199,127,.42); box-shadow: 0 28px 80px rgba(0,0,0,.42); }
.home-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.brochure-contact { background: radial-gradient(circle at 5% 100%,rgba(198,161,91,.16),transparent 32%),#080705; border-top: 1px solid rgba(226,199,127,.35); }
.contact-actions a { border-color: rgba(226,199,127,.32); }
.contact-actions span { color: #a98d5d; }
.contact-actions strong { color: #f8eddc; }

.gold-footer, footer { background: #0a0806; color: #ede0cd; }
.footer-top p,.footer-bottom { color: #a99a85; }
.social-footer,.footer-bottom { border-color: rgba(226,199,127,.28); }
.social-footer > span,.social-footer a:hover { color: var(--gold-bright); }
.gold-float { background: linear-gradient(135deg,#b98c43,#e3c77f); color: #090704; border-color: #f0dba1; box-shadow: 0 10px 32px rgba(0,0,0,.35); }

.page-hero,.search-hero,.faq-hero,.contact-page { background: radial-gradient(circle at 85% 15%,rgba(198,161,91,.16),transparent 30%),#090704; }
.page-hero-copy { border-color: rgba(226,199,127,.28); }
.page-hero h1,.search-hero h1,.faq-hero h1,.contact-page h1 { color: #fff5e7; text-shadow: 0 8px 30px rgba(0,0,0,.25); }
.page-hero > img { border: 22px solid #090704; border-left: 0; filter: saturate(1.08); }
.listing-page,.process-page,.story-page,.faq-layout,.booking-note,.contact-choice,.property-browser,.contact-form-section,.location-section { background: var(--cream); }
.residence-card { background: #fffaf2; padding: 12px 12px 20px; box-shadow: 0 16px 45px rgba(47,33,15,.09); border-bottom: 2px solid var(--gold); }
.residence-photo span { background: #0a0806; color: var(--gold-bright); }
.filter-bar { background: #0a0806; border-color: var(--gold); color: #f4e7d3; box-shadow: 0 15px 40px rgba(0,0,0,.14); }
.filter-bar > * + * { border-color: rgba(226,199,127,.35); }
.filter-bar label span,.result-count span { color: #ad946b; }
.filter-bar select,.result-count strong { color: #f7ead6; }
.filter-bar option { color: #111; }
.page-contact-band { background: linear-gradient(135deg,#8b622c,#d0ad67,#8b622c); color: #0a0806; }
.faq-list details { border-color: #bca989; }
.faq-list details[open] { background: rgba(198,161,91,.08); padding-inline: 22px; }
.faq-list summary b { color: #987131; }
.contact-choice article:first-child { background: #0a0806; color: #f8eddc; }
.contact-choice article:first-child .button-dark { border-color: var(--gold); color: var(--gold-bright); }
.location-map { border: 8px solid #0a0806; box-shadow: 0 20px 55px rgba(42,29,13,.16); }

@media (max-width: 960px) {
  .site-header,.inner-header { height: 82px; }
  .brand-logo { width: 220px; height: 70px; }
  .brochure-hero,.brochure-hero-copy { min-height: 920px; }
  .brochure-hero-copy { width: 72%; padding-top: 155px; }
  .brochure-hero-image { left: 28%; opacity: .75; }
  .hero-proof { width: 100%; }
}

@media (max-width: 620px) {
  .brochure-hero { min-height: 840px; }
  .brochure-hero-copy { width: 100%; min-height: 840px; padding: 125px 7% 34px; background: linear-gradient(90deg,rgba(7,6,4,.98),rgba(7,6,4,.58)); }
  .brochure-hero-image { inset: 0; opacity: .52; }
  .brochure-hero-image::after { inset: 12px; }
  .brochure-hero h1 { font-size: 59px; }
  .hero-proof { grid-template-columns: 1fr 1fr; gap: 16px; }
  .hero-proof div:last-child { display: none; }
  .services-editorial-image { border: 12px solid #0b0907; min-height: 82vw; }
  .safety-grid article { padding-inline: 0; background: transparent; }
  .page-hero > img { border-width: 12px; border-left: 12px solid #090704; }
  .residence-card { padding: 9px 9px 18px; }
}
