@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400;1,9..40,600&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');

:root {
  --navy: #152738;
  --navy-2: #1e3549;
  --gold: #b88a38;
  --gold-light: #c59b43;
  --gold-pale: #fbf6ee;
  --cream: #fbfaf7;
  --white: #ffffff;
  --border-light: #e8e4dc;
  --border-gold: rgba(184,138,56,.3);
  --ink: #162430;
  --muted: #5e6d78;
}

*, *::before, *::after { box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { margin:0; background:#ffffff; color:var(--ink); font-family:"DM Sans",sans-serif; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }

/* ===== Site Header (Light & Bright Glassmorphism) ===== */
.site-header { position:fixed; z-index:100; top:0; left:0; right:0; height:100px; display:flex; align-items:center; gap:28px; padding:0 4vw; color:#162430; background:rgba(255,255,255,.95); backdrop-filter:blur(16px); border-bottom:1px solid #e8e4dc; box-shadow:0 4px 25px rgba(0,0,0,.05); transition:background .35s, box-shadow .35s, border-color .35s, height .3s; }
.site-header.overlay { background:rgba(255,255,255,.94); border-bottom:1px solid rgba(232,228,220,.8); box-shadow:0 4px 20px rgba(0,0,0,.04); }
.site-header.solid, .site-header.is-scrolled { background:rgba(255,255,255,.98); border-bottom:1px solid #e2ddd3; box-shadow:0 6px 30px rgba(0,0,0,.07); height:90px; }

/* Brand */
.brand,.footer-brand { display:flex; align-items:center; gap:12px; min-width:200px; }
.brand-mark { width:48px; height:48px; border:1.5px solid var(--gold); color:var(--gold); background:var(--gold-pale); border-radius:52% 48% 44% 56%; display:grid; place-items:center; transform:rotate(-8deg); transition:.3s; flex-shrink:0; }
.brand:hover .brand-mark { transform:rotate(0deg) scale(1.05); }
.brand-mark i { font:italic 600 27px "Playfair Display",serif; transform:rotate(8deg); }
.brand strong,.footer-brand strong { display:block; color:#162430; font:700 23px/1 "Playfair Display",serif; letter-spacing:.09em; }
.brand small,.footer-brand small { display:block; margin-top:5px; font-size:8.5px; letter-spacing:.44em; color:var(--gold); font-weight:700; }

/* Nav links */
.site-header nav { flex:1; display:flex; align-items:center; justify-content:center; gap:clamp(14px,1.4vw,28px); height:100%; }
.site-header nav>a,.nav-projects-link,.nav-projects>a { position:relative; display:flex; align-items:center; gap:5px; height:100%; padding:4px 0 0; text-transform:uppercase; letter-spacing:.07em; font-size:clamp(11px,.82vw,13.5px); font-weight:600; white-space:nowrap; color:#2c3e50; transition:color .22s; }
.site-header nav>a:after,.nav-projects-link:after,.nav-projects>a:after { content:""; position:absolute; left:0; right:100%; bottom:22px; height:2px; background:var(--gold); transition:.28s; border-radius:2px; }
.site-header nav>a:hover:after,.site-header nav>a.active:after,.nav-projects-link:hover:after,.nav-projects-link.active:after,.nav-projects>a:hover:after,.nav-projects>a.active:after { right:0; }
.site-header nav>a:hover,.nav-projects-link:hover,.site-header nav>a.active,.nav-projects-link.active,.nav-projects>a:hover,.nav-projects>a.active { color:var(--gold); }
.nav-projects { position:relative; height:100%; display:flex; align-items:center; }
.nav-projects-header { display:flex; align-items:center; height:100%; gap:2px; }
.nav-projects-toggle { display:none; background:none; border:0; padding:0; cursor:pointer; color:inherit; }
.nav-caret { display:flex; align-items:center; opacity:.75; transition:transform .22s ease, opacity .22s ease; color:var(--gold); margin-left:4px; }
.nav-projects:hover .nav-caret { opacity:1; transform:rotate(180deg); }
.mobile-projects-accordion { display:none!important; }
.mobile-nav-footer { display:none!important; }

.motiaz-dropdown {
  position: absolute;
  top: 84px;
  left: 50%;
  transform: translateX(-38%) translateY(-8px);
  display: flex;
  min-height: 250px;
  background: #ffffff;
  border: 1px solid #e8e4dc;
  border-radius: 8px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease, visibility .25s;
  z-index: 150;
  overflow: hidden;
}
.nav-projects:hover .motiaz-dropdown,
.motiaz-dropdown.open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-38%) translateY(0);
}

/* Col 1: Categories (Warm Light Cream) */
.motiaz-col--categories {
  width: 185px;
  background: #fbfaf7;
  border-right: 1px solid #f0ece3;
  padding: 10px 0;
  margin: 0;
  list-style: none;
}
.motiaz-cat-item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 13px 18px;
  color: #334155;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: all .2s ease;
  text-decoration: none;
  border-left: 3px solid transparent;
}
.motiaz-cat-item:hover a,
.motiaz-cat-item.active a {
  background: #ffffff;
  color: var(--gold, #b88a38);
  border-left-color: var(--gold);
  padding-left: 20px;
}

/* Col 2: Status (Ongoing / Delivered) */
.motiaz-col--status {
  width: 175px;
  background: #f7f5f0;
  border-right: 1px solid #ede8df;
  padding: 10px 0;
  margin: 0;
}
.motiaz-status-group {
  display: none;
}
.motiaz-status-group.active {
  display: block;
}
.motiaz-status-item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  color: #475569;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  transition: all .2s ease;
  text-decoration: none;
  border-left: 2px solid transparent;
}
.motiaz-status-item:hover a,
.motiaz-status-item.active a {
  background: #ffffff;
  color: var(--gold, #b88a38);
  border-left-color: var(--gold);
  padding-left: 18px;
  font-weight: 700;
}

/* Col 3: Projects List (Pure White) */
.motiaz-col--projects {
  width: 270px;
  min-width: 240px;
  background: #ffffff;
  padding: 10px 0;
}
.motiaz-proj-list {
  display: none;
  list-style: none;
  margin: 0;
  padding: 0;
}
.motiaz-proj-list.active {
  display: block;
  animation: fadeInProj .2s ease both;
}
@keyframes fadeInProj {
  from { opacity: 0; transform: translateX(-4px); }
  to { opacity: 1; transform: none; }
}
.motiaz-proj-list li a {
  display: block;
  padding: 11px 18px;
  color: #1e293b;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  transition: all .2s ease;
  text-decoration: none;
  border-bottom: 1px solid #f3efe8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.motiaz-proj-list li a:hover {
  color: var(--gold, #b88a38);
  padding-left: 22px;
  background: #faf8f5;
  font-weight: 700;
}
.motiaz-view-all a {
  color: var(--gold) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  padding-top: 14px !important;
  border-bottom: none !important;
  display: flex !important;
  align-items: center;
  gap: 6px;
}
.motiaz-arrow {
  color: var(--gold);
  font-size: 15px;
  opacity: .8;
  transition: transform .2s ease;
}
.motiaz-cat-item.active .motiaz-arrow,
.motiaz-status-item.active .motiaz-arrow {
  opacity: 1;
  transform: translateX(3px);
}

/* Enquire CTA button */
.header-enquire { display:inline-flex; align-items:center; gap:8px; padding:11px 22px; background:#ffffff; color:var(--gold); border:1.5px solid var(--gold); text-transform:uppercase; letter-spacing:.1em; font-size:11px; font-weight:700; white-space:nowrap; transition:.28s; border-radius:2px; box-shadow:0 4px 14px rgba(184,138,56,.12); }
.header-enquire:hover { background:var(--gold); color:#ffffff; }
.header-enquire svg { transition:.28s; }
.header-enquire:hover svg { transform:translateX(3px); }

/* Hamburger Button with animated cross */
.menu-button { display:none; margin-left:auto; width:44px; height:44px; padding:9px; background:none; border:0; cursor:pointer; position:relative; z-index:110; }
.menu-button span { display:block; height:2px; width:100%; margin:6px 0; background:#162430; border-radius:2px; transition:transform .3s ease, opacity .3s ease; }
.menu-button.is-active span:nth-child(1) { transform:translateY(8px) rotate(45deg); background:var(--gold); }
.menu-button.is-active span:nth-child(2) { opacity:0; }
.menu-button.is-active span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); background:var(--gold); }

/* ===== Hero Slider (Natural Bright Images, Transparent Content) ===== */
.hero-slider { position:relative; height:100vh; min-height:800px; color:#162430; overflow:hidden; background:#ffffff; }
.hero-slide { position:absolute; inset:0; display:flex; align-items:center; background-position:center; background-size:cover; background-repeat:no-repeat; opacity:0; visibility:hidden; transition:opacity .8s ease,visibility .8s; }
.hero-slide.active { opacity:1; visibility:visible; z-index:2; }
.slide-shade { display:none!important; }
.hero-slide:after { display:none!important; }
.hero-content { position:relative; z-index:4; width:min(660px,52%); margin:40px 0 0 8vw; padding:0; background:transparent; border:0; box-shadow:none; }
.hero-slide.active .hero-content>* { animation:heroEnter .8s both; }
.hero-slide.active .hero-content h1 { animation-delay:.12s; }
.hero-slide.active .hero-copy { animation-delay:.22s; }
.hero-slide.active .hero-actions { animation-delay:.31s; }
@keyframes heroEnter { from { transform:translateY(28px); opacity:0; } to { transform:none; opacity:1; } }

.eyebrow { margin:0 0 16px; color:var(--gold); text-transform:uppercase; letter-spacing:.22em; font-size:11px; font-weight:700; }
.eyebrow.dark { color:var(--gold); }
.hero-content h1 { margin:0; max-width:660px; font:700 clamp(38px,5vw,78px)/1.02 "Playfair Display",serif; letter-spacing:-.03em; color:#162430; }
.hero-content h1 em { color:var(--gold); font-weight:600; font-style:italic; }
.hero-copy { max-width:500px; margin:18px 0 28px; color:#334155; font-size:16px; line-height:1.65; font-weight:500; }
.hero-actions { display:flex; flex-wrap:wrap; gap:13px; }

/* Buttons */
.button { min-height:50px; display:inline-flex; align-items:center; justify-content:center; padding:13px 24px; border:1px solid transparent; text-transform:uppercase; letter-spacing:.11em; font-size:10.5px; font-weight:700; cursor:pointer; transition:.25s; border-radius:2px; text-decoration:none; }
.button-gold { color:#ffffff; background:var(--gold); border-color:var(--gold); box-shadow:0 6px 20px rgba(184,138,56,.25); }
.button-gold:hover { background:var(--gold-light); transform:translateY(-2px); box-shadow:0 10px 25px rgba(184,138,56,.35); color:#ffffff; }
.button-ghost { color:#162430; border-color:#cbd5e1; background:rgba(255,255,255,.9); backdrop-filter:blur(6px); }
.button-ghost:hover { color:var(--gold); border-color:var(--gold); transform:translateY(-2px); background:#ffffff; }
.button-light { color:#162430; border-color:#cbd5e1; background:#ffffff; white-space:nowrap; }
.button-light:hover { background:var(--gold); color:#ffffff; border-color:var(--gold); }
.button-outline { color:#162430; border-color:#cbd5e1; background:#ffffff; }
.button-outline:hover { color:var(--gold); border-color:var(--gold); background:var(--gold-pale); }
.center { text-align:center; margin-top:40px; }

/* Hero stats */
.hero-stats { position:absolute; z-index:5; right:3.5vw; top:25%; width:210px; border-left:1.5px solid rgba(184,138,56,.5); }
.hero-stats div { margin:0 0 14px 20px; padding:15px 18px; border:1px solid rgba(232,228,220,.8); background:rgba(255,255,255,.78); backdrop-filter:blur(10px); box-shadow:0 8px 25px rgba(0,0,0,.04); transition:.25s; border-radius:3px; }
.hero-stats div:hover { transform:translateX(-6px); border-color:var(--gold); background:#ffffff; }
.hero-stats strong { display:block; color:var(--gold); font:700 32px/1 "Playfair Display",serif; }
.hero-stats span { display:block; margin-top:6px; color:#475569; font-size:9px; letter-spacing:.14em; font-weight:600; }

.slider-dots { position:absolute; z-index:8; left:4.5vw; top:50%; display:flex; flex-direction:column; gap:11px; }
.slider-dots button { width:20px; height:20px; display:grid; place-items:center; padding:0; background:none; border:0; cursor:pointer; }
.slider-dots button span { width:7px; height:7px; border-radius:50%; background:#cbd5e1; transition:.25s; }
.slider-dots button.active { border:1px solid var(--gold); border-radius:50%; }
.slider-dots button.active span { background:var(--gold); }

.slider-arrows { position:absolute; z-index:8; right:4vw; bottom:40px; display:flex; gap:8px; }
.slider-arrows button { width:48px; height:48px; color:#162430; background:#ffffff; border:1px solid #e2e8f0; box-shadow:0 4px 14px rgba(0,0,0,.06); cursor:pointer; transition:.25s; font-size:16px; }
.slider-arrows button:hover { color:#ffffff; background:var(--gold); border-color:var(--gold); }

.scroll-cue { position:absolute; z-index:8; left:50%; bottom:34px; display:flex; flex-direction:column; align-items:center; color:var(--gold); animation:scrollCue 1.4s infinite; }
.scroll-cue i { height:11px; font-style:normal; font-size:26px; line-height:13px; }
@keyframes scrollCue { 0%,100%{transform:translateY(0)} 50%{transform:translateY(7px)} }

/* ===== Section & Typography ===== */
.section { padding:105px 8vw; }
.intro { min-height:630px; display:grid; grid-template-columns:115px 1fr 1fr; gap:55px; align-items:center; background:var(--cream); border-top:1px solid var(--border-light); border-bottom:1px solid var(--border-light); }
.section-label { align-self:start; color:var(--gold); writing-mode:vertical-rl; transform:rotate(180deg); text-transform:uppercase; letter-spacing:.23em; font-size:10px; font-weight:700; }
.intro-title>span { display:block; color:var(--gold); font:600 clamp(48px,7vw,98px)/1 "Playfair Display",serif; }
.intro h2,.section-heading h2,.contact-info h2 { margin:16px 0 0; font:700 clamp(34px,4.2vw,66px)/1.08 "Playfair Display",serif; letter-spacing:-.025em; color:#162430; }
.intro-copy,.split-content>div:last-child { max-width:570px; color:var(--muted); font-size:16px; line-height:1.8; }
.text-link { display:inline-flex; gap:14px; align-items:center; margin-top:22px; padding-bottom:7px; color:#162430; border-bottom:1.5px solid var(--gold); text-transform:uppercase; letter-spacing:.1em; font-size:10.5px; font-weight:700; }
.text-link span { color:var(--gold); font-size:17px; }

/* Category Showcase */
.category-showcase { min-height:630px; display:grid; grid-template-columns:1fr 1fr; }
.category-card { position:relative; display:flex; align-items:flex-end; padding:66px 7vw; color:#ffffff; background-position:center; background-size:cover; overflow:hidden; }
.category-card:before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(22,36,48,.1),rgba(22,36,48,.85)); transition:.45s; }
.category-card:after { content:""; position:absolute; inset:0; border:0 solid var(--gold); transition:.35s; }
.category-card:hover:before { background:linear-gradient(180deg,rgba(22,36,48,.05),rgba(22,36,48,.78)); }
.category-card:hover:after { inset:18px; border-width:1px; }
.category-card.homes { background-image:url('../images/project-residential.png'); }
.category-card.commerce { background-image:url('../images/project-commercial.png'); }
.category-card>div { position:relative; z-index:2; max-width:500px; transition:.35s; }
.category-card:hover>div { transform:translateY(-8px); }
.category-card span { color:var(--gold-light); font-family:"Playfair Display",serif; font-size:18px; }
.category-card h3 { margin:10px 0 15px; font:600 clamp(36px,4vw,62px)/1.05 "Playfair Display",serif; }
.category-card p { color:rgba(255,255,255,.85); line-height:1.7; }
.category-card a { display:inline-flex; gap:14px; margin-top:18px; color:var(--gold-light); text-transform:uppercase; letter-spacing:.1em; font-size:10.5px; font-weight:700; }

.section-heading { display:grid; grid-template-columns:1.3fr .7fr; gap:60px; align-items:end; margin-bottom:66px; }
.section-heading>p { max-width:520px; color:var(--muted); line-height:1.8; }
.section-heading.text-center-heading { grid-template-columns:1fr; text-align:center; justify-items:center; }
.section-heading.text-center-heading>p { margin:12px auto 0; text-align:center; }

/* Reason Grid */
.reason-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #e8e4dc; border-left:1px solid #e8e4dc; }
.reason-grid article { min-height:245px; padding:38px; border-right:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; background:#ffffff; transition:.3s; }
.reason-grid article:hover { background:var(--gold-pale); border-color:var(--gold); transform:translateY(-4px); box-shadow:0 14px 40px rgba(0,0,0,.05); }
.reason-grid span { color:var(--gold); font:600 16px "Playfair Display",serif; }
.reason-grid h3 { margin:40px 0 13px; font:600 24px "Playfair Display",serif; color:#162430; }
.reason-grid p { margin:0; color:var(--muted); line-height:1.65; font-size:14px; }

/* Statement / CTA Banner */
.statement { min-height:380px; padding:80px 8vw; display:flex; align-items:center; justify-content:space-between; gap:50px; color:#162430; background:linear-gradient(105deg,rgba(251,250,247,.97),rgba(244,241,234,.92)),url('../images/amanor-hero.png') center/cover; border-top:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; }
.statement p { color:var(--gold); text-transform:uppercase; letter-spacing:.2em; font-size:10.5px; font-weight:700; }
.statement h2 { max-width:900px; margin:18px 0 0; font:600 clamp(32px,4vw,61px)/1.15 "Playfair Display",serif; color:#162430; }

/* Projects on Homepage */
.projects { background:var(--cream); }
.projects-heading { align-items:center; }
.filters { display:flex; flex-wrap:wrap; gap:9px; margin:-27px 0 34px; }
.filters button { padding:9px 16px; color:#162430; background:#ffffff; border:1px solid #d4cfc4; text-transform:uppercase; letter-spacing:.09em; font-size:9.5px; font-weight:700; cursor:pointer; transition:.2s; border-radius:2px; }
.filters button:hover,.filters button.active { color:#ffffff; background:var(--gold); border-color:var(--gold); }
.project-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.project-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; transition:.35s; overflow:hidden; box-shadow:0 4px 18px rgba(0,0,0,.03); }
.project-card:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(0,0,0,.08); border-color:var(--gold); }
.project-image { position:relative; aspect-ratio:1.33; background-position:center; background-size:cover; transition:.65s; }
.project-card:hover .project-image { background-size:112%; }
.project-image>span { position:absolute; left:18px; top:18px; width:36px; height:36px; display:grid; place-items:center; color:var(--gold); background:rgba(255,255,255,.94); font-family:"Playfair Display",serif; font-weight:700; border-radius:50%; box-shadow:0 4px 12px rgba(0,0,0,.08); }
.project-image>b { position:absolute; right:18px; top:18px; padding:6px 11px; color:#ffffff; background:var(--gold); text-transform:uppercase; letter-spacing:.1em; font-size:8.5px; font-weight:700; border-radius:2px; }
.project-image>a { position:absolute; right:18px; bottom:18px; width:44px; height:44px; display:grid; place-items:center; color:#162430; background:#ffffff; border:1px solid #e2e8f0; font-size:18px; border-radius:50%; box-shadow:0 6px 18px rgba(0,0,0,.1); transition:.25s; }
.project-image>a:hover { color:#ffffff; background:var(--gold); border-color:var(--gold); transform:rotate(45deg); }
.project-card>div:last-child { padding:24px 26px 28px; }
.project-card>div:last-child>p:first-child,.project-card>div:last-child>span { margin:0; color:var(--gold); text-transform:uppercase; letter-spacing:.12em; font-size:9.5px; font-weight:700; }
.project-card h3 { margin:8px 0 11px; font:600 26px "Playfair Display",serif; color:#162430; }
.project-summary { color:var(--muted); font-size:13.5px; line-height:1.65; }
.card-link { display:inline-block; margin-top:12px; color:var(--gold); font-weight:700; text-transform:uppercase; letter-spacing:.1em; font-size:9.5px; }

/* Testimonials */
.testimonial { min-height:540px; padding:105px 15vw; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#162430; text-align:center; background:linear-gradient(rgba(251,250,247,.95),rgba(244,241,234,.95)),url('../images/project-villas.png') center/cover; border-top:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; }
.testimonial blockquote { max-width:1000px; margin:0 0 34px; font:600 clamp(28px,3.8vw,52px)/1.25 "Playfair Display",serif; color:#162430; }
.testimonial>div { display:flex; align-items:center; gap:14px; }
.quote-avatar { width:50px; height:50px; display:grid; place-items:center; color:#ffffff; background:var(--gold); border-radius:50%; font-weight:700; }
.testimonial strong,.testimonial small { display:block; text-align:left; }
.testimonial small { margin-top:4px; color:var(--muted); }

/* Article / Blog Grid on Homepage */
.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.blog-card-item { display:flex; flex-direction:column; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; overflow:hidden; transition:transform .3s, box-shadow .3s, border-color .3s; }
.blog-card-item:hover { transform:translateY(-6px); box-shadow:0 20px 50px rgba(0,0,0,.08); border-color:var(--gold); }
.blog-card-thumb { position:relative; aspect-ratio:16/10; overflow:hidden; display:block; }
.blog-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.blog-card-item:hover .blog-card-thumb img { transform:scale(1.08); }
.blog-tag-badge { position:absolute; top:14px; left:14px; padding:4px 10px; background:#ffffff; color:var(--gold); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; border:1px solid var(--border-gold); border-radius:2px; }
.blog-card-body { padding:24px 22px 26px; display:flex; flex-direction:column; flex:1; }
.blog-card-body small,.blog-card-body .card-meta { color:var(--gold); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; margin-bottom:8px; display:flex; gap:6px; align-items:center; }
.blog-card-body h3 { margin:0 0 12px; font:700 20px/1.3 "Playfair Display",serif; color:#162430; }
.blog-card-body h3 a { color:#162430; transition:color .2s; }
.blog-card-body h3 a:hover { color:var(--gold); }
.blog-card-body p { margin:0 0 18px; color:var(--muted); font-size:13.5px; line-height:1.7; flex:1; }
.blog-card-link { display:inline-flex; align-items:center; gap:6px; color:var(--gold); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; transition:color .2s, transform .2s; margin-top:auto; }
.blog-card-link:hover { color:#162430; transform:translateX(3px); }

/* Contact Panel & Enquiry Form on Homepage */
.contact-panel { min-height:550px; display:grid; grid-template-columns:1fr 1fr; background:#ffffff; border-top:1px solid #e8e4dc; }
.contact-info { padding:80px 7vw 55px; background:linear-gradient(rgba(251,250,247,.95),rgba(244,241,234,.96)),url('../images/project-commercial.png') center/cover; border-right:1px solid #e8e4dc; }
.contact-info>p:not(.eyebrow) { max-width:520px; color:var(--muted); line-height:1.75; margin:16px 0 32px; }
.contact-info a { display:block; padding:14px 0; border-bottom:1px solid #e8e4dc; }
.contact-info a span { display:block; color:var(--gold); font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }
.contact-info a strong { display:block; font-size:16px; color:#162430; margin-top:4px; font-weight:600; }

.enquiry-form { padding:70px 6vw 75px; display:grid; grid-template-columns:1fr 1fr; gap:22px; align-content:start; background:#ffffff; }
.enquiry-form>div { display:flex; flex-direction:column; gap:6px; }
.enquiry-form .full { grid-column:1/-1; }
.enquiry-form label { color:var(--gold); text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:700; }
.enquiry-form input, .enquiry-form select, .enquiry-form textarea { width:100%; padding:11px 14px; color:#162430; background:#fbfaf7; border:1px solid #d4cfc4; border-radius:3px; font-size:13.5px; outline:none; transition:.2s; }
.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { border-color:var(--gold); background:#ffffff; box-shadow:0 0 0 3px rgba(184,138,56,.15); }
.enquiry-form select { cursor:pointer; }
.enquiry-form textarea { min-height:95px; resize:vertical; }
.enquiry-form button[type=submit] { grid-column:1/-1; justify-self:start; min-width:200px; height:50px; }
.form-status { grid-column:1/-1; margin:6px 0 0; font-size:13px; font-weight:600; }
.form-status.success { color:#186c2e; }
.form-status.error { color:#c9342b; }

/* ===== Page Hero Banners (Light Luxury) ===== */
.page-hero { min-height:500px; padding:160px 8vw 75px; display:flex; align-items:center; color:#162430; background-position:center; background-size:cover; background-color:var(--cream); }
.page-hero>div { max-width:850px; width:100%; }
.page-hero h1 { margin:0; font:700 clamp(44px,5.8vw,88px)/.98 "Playfair Display",serif; letter-spacing:-.035em; color:#162430; }
.page-hero h1 em { color:var(--gold); font-weight:600; font-style:italic; }
.page-hero>div>p:not(.eyebrow) { max-width:650px; color:#475569; font-size:16.5px; line-height:1.7; margin:20px 0 28px; }

.about-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/amanor-hero.png') center/cover; border-bottom:1px solid #e8e4dc; }
.projects-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/project-residential.png') center/cover; border-bottom:1px solid #e8e4dc; }
.partner-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/project-commercial.png') center/cover; border-bottom:1px solid #e8e4dc; }
.news-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/project-commercial.png') center/cover; border-bottom:1px solid #e8e4dc; }
.blogs-hero,.blog-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/project-residential.png') center/cover; border-bottom:1px solid #e8e4dc; }
.contact-hero { background:linear-gradient(105deg,rgba(251,250,247,.97) 0%,rgba(244,241,234,.93) 55%,rgba(255,255,255,.82)),url('../images/project-commercial.png') center/cover; border-bottom:1px solid #e8e4dc; }

/* Dark overlay page heroes — about, projects, media reader, blog single, csr, construction-updates */
.about-hero,
.projects-hero,
.media-hero,
.blog-hero,
.csr-hero,
.career-hero,
.partner-hero,
.page-hero[style*="rgba(4,20"] {
  color: #ffffff;
}
.about-hero h1,
.projects-hero h1,
.projects-hero h2,
.projects-hero h3,
.projects-hero h4,
.media-hero h1,
.media-hero h2,
.blog-hero h1,
.blog-hero h2,
.csr-hero h1,
.career-hero h1,
.partner-hero h1 {
  color: #ffffff;
}
.about-hero h1 em,
.projects-hero h1 em,
.media-hero h1 em,
.blog-hero h1 em,
.csr-hero h1 em,
.partner-hero h1 em { color: var(--gold); }
.about-hero > div > p:not(.eyebrow),
.projects-hero > div > p:not(.eyebrow),
.media-hero > div > p:not(.eyebrow),
.blog-hero > div > p:not(.eyebrow),
.csr-hero > div > p:not(.eyebrow),
.career-hero > div > p:not(.eyebrow),
.partner-hero > div > p:not(.eyebrow) { color: rgba(255,255,255,.78); }
.about-hero .breadcrumbs-bar,
.projects-hero .breadcrumbs-bar,
.media-hero .breadcrumbs-bar,
.blog-hero .breadcrumbs-bar,
.csr-hero .breadcrumbs-bar,
.career-hero .breadcrumbs-bar,
.partner-hero .breadcrumbs-bar { color: rgba(255,255,255,.6); }
.about-hero .breadcrumbs-bar a,
.projects-hero .breadcrumbs-bar a,
.media-hero .breadcrumbs-bar a,
.blog-hero .breadcrumbs-bar a,
.csr-hero .breadcrumbs-bar a,
.career-hero .breadcrumbs-bar a,
.partner-hero .breadcrumbs-bar a { color: var(--gold); }

/* Ensure page-hero also supports h4 for projects page hero */
.page-hero h4 { margin:0; font:700 clamp(44px,5.8vw,88px)/.98 "Playfair Display",serif; letter-spacing:-.035em; color:inherit; }
.page-hero h4 em { color:var(--gold); font-weight:600; font-style:italic; }

/* Breadcrumbs Bar */
.breadcrumbs-bar { display:flex; align-items:center; gap:8px; margin-bottom:20px; font-size:11.5px; text-transform:uppercase; letter-spacing:.12em; color:#64748b; font-weight:600; flex-wrap:wrap; }
.breadcrumbs-bar a { color:var(--gold); transition:color .2s; }
.breadcrumbs-bar a:hover { color:#162430; }
.breadcrumbs-bar span { opacity:.6; }

/* ===== About Us Page ===== */
.about-intro { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:center; background:#ffffff; }
.about-intro-image { position:relative; }
.about-intro-image img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; border-radius:4px; box-shadow:0 16px 50px rgba(0,0,0,.08); }
.about-intro-badge { position:absolute; bottom:-28px; right:-28px; width:140px; height:140px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:linear-gradient(135deg, var(--gold), #966f28); color:#ffffff; border-radius:50%; box-shadow:0 14px 40px rgba(184,138,56,.4); border:3px solid #ffffff; }
.about-intro-badge strong { font:700 36px/1 "Playfair Display",serif; }
.about-intro-badge span { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin-top:4px; opacity:.95; line-height:1.25; padding:0 8px; }
.about-intro-content h2 { margin:16px 0 22px; font:700 clamp(36px,4vw,58px)/1.1 "Playfair Display",serif; letter-spacing:-.025em; color:#162430; }
.about-intro-content p { color:var(--muted); font-size:16px; line-height:1.82; margin:0 0 16px; }
.about-highlights { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin:30px 0 28px; }
.about-highlights>div { padding:22px 20px; background:#ffffff; border:1px solid #e8e4dc; border-top:3px solid var(--gold); border-radius:4px; transition:transform .3s, box-shadow .3s, border-color .3s; }
.about-highlights>div:hover { transform:translateY(-4px); box-shadow:0 12px 30px rgba(0,0,0,.06); border-color:var(--gold); }
.about-highlights strong { display:block; color:#162430; font:700 16px "Playfair Display",serif; margin-bottom:8px; line-height:1.3; }
.about-highlights span { font-size:13px; color:var(--muted); line-height:1.6; display:block; }

.numbers { display:grid; grid-template-columns:repeat(4,1fr); color:#162430; background:var(--cream); border-top:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; }
.numbers article { min-height:205px; padding:48px 28px; display:flex; flex-direction:column; justify-content:flex-end; border-right:1px solid #e8e4dc; transition:.25s; }
.numbers article:hover { background:var(--gold-pale); }
.numbers strong { color:var(--gold); font:700 41px "Playfair Display",serif; }
.numbers span { margin-top:11px; color:#475569; text-transform:uppercase; letter-spacing:.12em; font-size:9.5px; font-weight:600; }

/* ===== Vision, Mission & Values Ultra-Luxury Section ===== */
.vmp-luxury-section {
  background: radial-gradient(circle at 50% 0%, #0e273f 0%, #071726 60%, #040e18 100%);
  color: #ffffff;
  padding: 95px 6vw;
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(184, 138, 56, 0.25);
  border-bottom: 1px solid rgba(184, 138, 56, 0.25);
}
.vmp-luxury-section::before {
  content: "";
  position: absolute;
  top: -120px;
  left: 50%;
  transform: translateX(-50%);
  width: 750px;
  height: 350px;
  background: radial-gradient(circle, rgba(184, 138, 56, 0.16) 0%, rgba(184, 138, 56, 0) 70%);
  pointer-events: none;
}
.vmp-container {
  max-width: 1320px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
.vmp-heading {
  text-align: center;
  max-width: 820px;
  margin: 0 auto 55px;
}
.vmp-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .25em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 14px;
  position: relative;
  padding: 0 22px;
}
.vmp-eyebrow::before, .vmp-eyebrow::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 14px;
  height: 1.5px;
  background: var(--gold);
}
.vmp-eyebrow::before { left: 0; }
.vmp-eyebrow::after { right: 0; }
.vmp-title {
  margin: 0 0 16px;
  font: 700 clamp(30px, 3.6vw, 48px)/1.15 "Playfair Display", serif;
  color: #ffffff;
  letter-spacing: -.02em;
}
.vmp-title em {
  color: var(--gold);
  font-style: italic;
  font-weight: 600;
}
.vmp-desc {
  font-size: 15px;
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.72);
  max-width: 680px;
  margin: 0 auto;
}

/* 3-Card Grid */
.vmp-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  position: relative;
  z-index: 2;
}
.vmp-card {
  position: relative;
  background: linear-gradient(170deg, rgba(16, 38, 59, 0.88) 0%, rgba(8, 20, 32, 0.95) 100%);
  border: 1px solid rgba(184, 138, 56, 0.22);
  border-radius: 12px;
  padding: 34px 28px 30px;
  display: flex;
  flex-direction: column;
  transition: all .38s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 16px 45px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(12px);
  overflow: hidden;
}
.vmp-card:hover {
  transform: translateY(-8px);
  border-color: var(--gold);
  box-shadow: 0 24px 60px rgba(184, 138, 56, 0.22);
}
.vmp-card--featured {
  border-color: rgba(184, 138, 56, 0.6);
  background: linear-gradient(170deg, rgba(20, 46, 70, 0.94) 0%, rgba(9, 24, 38, 0.98) 100%);
  box-shadow: 0 20px 55px rgba(0, 0, 0, 0.45);
}

/* Ribbon & Card Top */
.vmp-ribbon {
  position: absolute;
  top: 18px;
  right: -32px;
  transform: rotate(45deg);
  background: var(--gold);
  color: #ffffff;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 4px 34px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .35);
  pointer-events: none;
}
.vmp-card-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.vmp-num {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gold);
}
.vmp-type-pill {
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.12);
}
.vmp-pill--gold {
  background: rgba(184, 138, 56, 0.2);
  color: var(--gold);
  border-color: rgba(184, 138, 56, 0.45);
}

/* Icon Row & Header */
.vmp-icon-row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}
.vmp-icon-wrap {
  position: relative;
  width: 54px;
  height: 54px;
  flex-shrink: 0;
}
.vmp-icon-ring {
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  border: 1.5px dashed rgba(184, 138, 56, 0.4);
  transition: transform .8s ease, border-color .3s;
}
.vmp-card:hover .vmp-icon-ring {
  transform: rotate(90deg);
  border-color: var(--gold);
  border-style: solid;
}
.vmp-icon {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, var(--gold), #8e6722);
  color: #ffffff;
  box-shadow: 0 8px 22px rgba(184, 138, 56, 0.35);
  border: 2px solid rgba(255, 255, 255, 0.2);
}
.vmp-card-header-meta {
  flex: 1;
}
.vmp-tag {
  display: block;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 4px;
}
.vmp-card-title {
  margin: 0;
  font: 700 19px/1.25 "Playfair Display", serif;
  color: #ffffff;
  letter-spacing: -.01em;
}

/* Body, Manifesto Quote & Copy */
.vmp-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.vmp-quote {
  margin: 0 0 14px;
  padding: 11px 13px;
  background: rgba(184, 138, 56, 0.08);
  border-left: 3px solid var(--gold);
  border-radius: 0 6px 6px 0;
  font-style: italic;
  font-size: 12.5px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
}
.vmp-copy {
  font-size: 12.5px;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.65);
  margin: 0 0 18px;
}

/* Pillars List */
.vmp-pillars {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: auto;
}
.vmp-pillar-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 9px 11px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 6px;
  transition: background .25s, border-color .25s;
}
.vmp-pillar-item:hover {
  background: rgba(184, 138, 56, 0.1);
  border-color: rgba(184, 138, 56, 0.35);
}
.vmp-check-icon {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgba(184, 138, 56, 0.2);
  color: var(--gold);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  margin-top: 1px;
}
.vmp-pillar-item strong {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 2px;
}
.vmp-pillar-item span {
  display: block;
  font-size: 10.5px;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1.35;
}
.vmp-card-border-glow {
  position: absolute;
  inset: 0;
  border-radius: 12px;
  pointer-events: none;
}

.team-section { background:#ffffff; }
.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:36px 28px; }
.team-card { display:flex; flex-direction:column; align-items:center; text-align:center; padding:42px 24px 36px; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; transition:box-shadow .3s, transform .3s, border-color .3s; }
.team-card:hover { transform:translateY(-8px); box-shadow:0 24px 60px rgba(0,0,0,.08); border-color:var(--gold); }
.team-photo-wrap { position:relative; width:160px; height:160px; margin-bottom:28px; flex-shrink:0; }
.team-photo-ring { position:absolute; inset:-5px; border-radius:50%; border:2px dashed rgba(184,138,56,.35); transition:transform .8s ease, border-color .3s; }
.team-card:hover .team-photo-ring { transform:rotate(90deg); border-color:var(--gold); border-style:solid; }
.team-photo { width:160px; height:160px; border-radius:50%; overflow:hidden; border:3px solid var(--gold); box-shadow:0 8px 30px rgba(0,0,0,.1); }
.team-photo img { width:100%; height:100%; object-fit:cover; object-position:top; display:block; transition:transform .55s ease; }
.team-card:hover .team-photo img { transform:scale(1.08); }
.team-info { display:flex; flex-direction:column; align-items:center; gap:8px; }
.team-info h4 { margin:0; color:#162430; font:700 21px/1.2 "Playfair Display",serif; }
.team-info .team-role { margin:0; color:var(--gold); text-transform:uppercase; letter-spacing:.18em; font-size:9.5px; font-weight:700; }

/* ===== Projects Portfolio Page ===== */
.project-filters-bar { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:45px; }
.filter-btn { padding:10px 20px; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#162430; background:#ffffff; border:1px solid #d4cfc4; border-radius:2px; cursor:pointer; transition:.2s; }
.filter-btn:hover, .filter-btn.active { background:var(--gold); color:#ffffff; border-color:var(--gold); }

.projects-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.project-item-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; overflow:hidden; display:flex; flex-direction:column; transition:transform .3s, box-shadow .3s, border-color .3s; }
.project-item-card:hover { transform:translateY(-6px); box-shadow:0 22px 55px rgba(0,0,0,.08); border-color:var(--gold); }
.card-thumb-wrap { position:relative; height:240px; overflow:hidden; }
.card-thumb-wrap img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.project-item-card:hover .card-thumb-wrap img { transform:scale(1.05); }

.project-num-tag { position:absolute; top:16px; left:16px; width:32px; height:32px; border-radius:50%; background:rgba(255,255,255,.94); color:var(--gold); font-size:11px; font-weight:700; display:grid; place-items:center; border:1px solid var(--gold); box-shadow:0 4px 12px rgba(0,0,0,.1); }
.project-status-badge { position:absolute; top:16px; right:16px; background:var(--gold); color:#ffffff; font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; padding:5px 11px; border-radius:2px; }
.project-status-badge.badge-completed { background:#186c2e; color:#ffffff; }
.project-type-badge { position:absolute; bottom:16px; left:16px; background:#ffffff; color:var(--gold); font-size:8.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; padding:4px 9px; border-radius:2px; border:1px solid var(--border-gold); }

.card-content { padding:28px 26px; display:flex; flex-direction:column; flex:1; }
.card-location-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; font-size:12px; }
.loc-pin { display:inline-flex; align-items:center; gap:5px; color:var(--muted); font-weight:500; }
.loc-pin svg { color:var(--gold); }
.rera-tag { font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#186c2e; background:#e8f7ec; padding:3px 7px; border-radius:2px; }
.project-card-title { margin:0 0 6px; font:700 22px/1.25 "Playfair Display",serif; }
.project-card-title a { color:#162430; transition:color .2s; }
.project-card-title a:hover { color:var(--gold); }
.project-card-subtitle { margin:0 0 16px; color:var(--gold); font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.project-card-desc { margin:0 0 20px; color:var(--muted); font-size:13.5px; line-height:1.65; flex:1; }
.project-card-actions { display:grid; grid-template-columns:1.2fr 1fr; gap:10px; margin-top:auto; }
.project-card-actions .button { padding:9px 12px; font-size:11px; text-align:center; justify-content:center; }

/* ===== Single Project Detail Page ===== */
.single-project-hero { position:relative; min-height:520px; display:flex; align-items:flex-end; padding:150px 8vw 70px; background-size:cover; background-position:center; color:#162430; background-color:var(--cream); }
.project-hero-container { position:relative; z-index:2; max-width:880px; }
.project-hero-badges { display:flex; gap:10px; margin-bottom:16px; flex-wrap:wrap; align-items:center; }
.badge-type { background:#ffffff; color:var(--gold); font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; padding:5px 11px; border-radius:2px; border:1px solid var(--border-gold); }
.badge-status { background:var(--gold); color:#ffffff; font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; padding:5px 11px; border-radius:2px; }
.badge-status.badge-completed { background:#186c2e; color:#ffffff; }
.badge-rera { font-size:11px; color:#64748b; font-family:monospace; background:#ffffff; padding:4px 10px; border-radius:2px; border:1px solid #e2e8f0; font-weight:600; }
.project-hero-title { margin:0 0 8px; font:700 clamp(34px,5vw,58px)/1.08 "Playfair Display",serif; color:#162430; }
.project-hero-subtitle { margin:0 0 18px; color:var(--gold); font-size:16px; font-weight:600; text-transform:uppercase; letter-spacing:.08em; }
.project-hero-summary { margin:0 0 28px; color:#475569; font-size:15.5px; line-height:1.7; max-width:760px; }
.project-hero-cta-row { display:flex; gap:14px; flex-wrap:wrap; }

.project-metrics-bar { background:var(--cream); color:#162430; border-top:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; }
.metrics-container { display:grid; grid-template-columns:repeat(4,1fr); padding:0 8vw; }
.metric-item { padding:28px 20px; border-right:1px solid #e8e4dc; text-align:center; }
.metric-item:last-child { border-right:0; }
.metric-label { display:block; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--gold); margin-bottom:6px; }
.metric-val { display:block; font:700 16px/1.3 "DM Sans",sans-serif; color:#162430; }

.project-detail-body { padding-top:80px; padding-bottom:80px; background:#ffffff; }
.project-detail-container { display:grid; grid-template-columns:1.8fr 1fr; gap:60px; align-items:start; }
.detail-block { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:38px 36px; margin-bottom:34px; box-shadow:0 8px 30px rgba(0,0,0,.03); }
.detail-block-header { margin-bottom:24px; padding-bottom:14px; border-bottom:1px solid #f0ede6; }
.block-eyebrow { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.15em; color:var(--gold); display:block; margin-bottom:6px; }
.detail-block-header h2 { margin:0; font:700 clamp(22px,2.5vw,30px)/1.2 "Playfair Display",serif; color:#162430; }
.detail-text-body p { margin:0 0 16px; color:#475569; font-size:15px; line-height:1.8; }
.project-highlights-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.highlight-pill-card { display:flex; align-items:flex-start; gap:12px; padding:16px 18px; background:var(--cream); border:1px solid #e8e4dc; border-radius:3px; font-size:13.5px; color:#334155; line-height:1.55; font-weight:500; }
.highlight-pill-card svg { color:var(--gold); flex-shrink:0; margin-top:2px; }

.floor-plans-table-wrap { overflow-x:auto; }
.floor-plans-table { width:100%; border-collapse:collapse; text-align:left; font-size:13.5px; }
.floor-plans-table th { padding:14px 16px; background:#f4f1ea; color:#162430; font-weight:700; text-transform:uppercase; letter-spacing:.08em; font-size:11px; border:1px solid #e2ddd3; }
.floor-plans-table td { padding:14px 16px; border:1px solid #e8e4dc; color:#475569; vertical-align:middle; }
.floor-plans-table tr:nth-child(even) td { background:#fbfaf7; }
.plan-enquire-btn { display:inline-block; padding:7px 14px; background:var(--gold); color:#ffffff; font-size:11px; font-weight:700; border-radius:2px; transition:.2s; text-transform:uppercase; letter-spacing:.06em; }
.plan-enquire-btn:hover { background:var(--gold-light); }

.amenities-cards-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.amenity-card { display:flex; align-items:center; gap:14px; padding:16px 20px; background:var(--cream); border:1px solid #e8e4dc; border-radius:3px; }
.amenity-icon { width:38px; height:38px; border-radius:50%; background:var(--gold-pale); color:var(--gold); border:1.5px solid var(--border-gold); display:grid; place-items:center; flex-shrink:0; }
.amenity-card span { font-size:13.5px; font-weight:600; color:#162430; }

.connectivity-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.connectivity-item { display:flex; align-items:center; gap:12px; padding:14px 18px; background:var(--cream); border:1px solid #e8e4dc; border-radius:3px; font-size:13.5px; color:#334155; font-weight:600; }
.connectivity-item svg { color:var(--gold); flex-shrink:0; }

/* Sticky Sidebar */
.project-sidebar { position:sticky; top:100px; }
.sidebar-enquiry-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:34px 28px; box-shadow:0 16px 45px rgba(0,0,0,.06); }
.sidebar-card-header { margin-bottom:22px; padding-bottom:14px; border-bottom:1px solid #f0ede6; }
.sidebar-tag { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); display:block; margin-bottom:6px; }
.sidebar-card-header h3 { margin:0 0 6px; font:700 22px "Playfair Display",serif; color:#162430; }
.sidebar-card-header p { margin:0; color:var(--muted); font-size:13px; line-height:1.5; }
.sidebar-form { display:flex; flex-direction:column; gap:14px; margin-bottom:24px; }
.sidebar-field { display:flex; flex-direction:column; gap:5px; }
.sidebar-field label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#162430; }
.sidebar-field label span { color:#d9534f; }
.sidebar-field input, .sidebar-field textarea { width:100%; padding:10px 14px; border:1px solid #d4cfc4; border-radius:3px; font-size:13.5px; background:#fbfaf7; color:#162430; outline:none; transition:.2s; }
.sidebar-field input:focus, .sidebar-field textarea:focus { border-color:var(--gold); background:#ffffff; box-shadow:0 0 0 3px rgba(184,138,56,.15); }
.sidebar-submit-btn { width:100%; height:46px; display:inline-flex; align-items:center; justify-content:center; gap:8px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; cursor:pointer; }
.sidebar-direct-contacts { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:24px; }
.sidebar-contact-btn { display:flex; align-items:center; justify-content:center; gap:6px; padding:10px; background:var(--gold-pale); border:1px solid var(--border-gold); border-radius:3px; font-size:11.5px; font-weight:700; color:var(--gold); transition:.2s; text-align:center; }
.sidebar-contact-btn:hover { background:var(--gold); color:#ffffff; }
.sidebar-contact-btn.wa { background:#e8f7ec; border-color:#a8dbb2; color:#186c2e; }
.sidebar-contact-btn.wa:hover { background:#186c2e; color:#ffffff; }
.sidebar-approvals-box { background:var(--cream); border:1px solid #e8e4dc; border-radius:3px; padding:18px 20px; }
.sidebar-approvals-box h4 { margin:0 0 10px; font:700 14px "Playfair Display",serif; color:#162430; }
.sidebar-approvals-box ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.sidebar-approvals-box li { font-size:12px; color:#555; line-height:1.5; }

/* ===== Clean Career / Partner List Layout ===== */
.career-list-container {
  max-width: 1050px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.career-list-item {
  position: relative;
  background: #ffffff;
  border: 1px solid #e8e4dc;
  border-radius: 6px;
  padding: 28px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  transition: all .25s ease;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02);
  border-left: 3px solid transparent;
}

.career-list-item:hover {
  background: #fbfaf7;
  border-color: #d8d2c4;
  border-left-color: var(--gold);
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
}

.career-item-main {
  flex: 1;
  min-width: 0;
}

.career-item-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.career-dept-badge {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--gold);
  background: var(--gold-pale);
  padding: 3px 8px;
  border-radius: 2px;
  border: 1px solid var(--border-gold);
}

.career-exp-badge, .career-type-badge, .career-loc-badge {
  font-size: 11.5px;
  font-weight: 600;
  color: #64748b;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.career-exp-badge svg, .career-type-badge svg, .career-loc-badge svg {
  color: var(--gold);
}

.career-item-title {
  margin: 0 0 8px;
  font: 700 21px "Playfair Display", serif;
  color: #162430;
}

.career-item-desc {
  margin: 0 0 12px;
  color: #64748b;
  font-size: 13.5px;
  line-height: 1.6;
  max-width: 720px;
}

.career-item-skills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.career-skill-tag {
  font-size: 10.5px;
  font-weight: 500;
  color: #475569;
  background: #f1f5f9;
  padding: 2px 8px;
  border-radius: 2px;
  border: 1px solid #e2e8f0;
}

.career-item-action {
  flex-shrink: 0;
}

.career-item-action .button {
  padding: 12px 28px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
  letter-spacing: .08em;
}

@media (max-width: 768px) {
  .career-list-item {
    flex-direction: column;
    align-items: flex-start;
    padding: 22px 20px;
    gap: 18px;
  }
  .career-item-action {
    width: 100%;
  }
  .career-item-action .button {
    width: 100%;
    justify-content: center;
  }
}

.career-dept-filters { display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin-bottom:40px; }
.dept-btn { padding:10px 18px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#162430; background:#ffffff; border:1px solid #d4cfc4; border-radius:3px; cursor:pointer; transition:.2s; }
.dept-btn:hover, .dept-btn.active { background:var(--gold); color:#ffffff; border-color:var(--gold); box-shadow:0 4px 12px rgba(184,138,56,.25); }

.career-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.job-card { position:relative; background:#ffffff; border:1px solid #e8e4dc; border-radius:6px; padding:34px 28px; display:flex; flex-direction:column; transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease; box-shadow:0 4px 16px rgba(0,0,0,.03); overflow:hidden; }
.job-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:transparent; transition:background .3s ease; }
.job-card:hover::before { background:var(--gold); }
.job-card:hover { transform:translateY(-6px); box-shadow:0 20px 48px rgba(0,0,0,.07); border-color:var(--gold); }
.job-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.job-meta-badges { display:flex; gap:6px; flex-wrap:wrap; }
.job-dept-badge { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--gold); background:var(--gold-pale); padding:4px 8px; border-radius:2px; border:1px solid var(--border-gold); }
.job-exp-badge { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#475569; background:#f1f5f9; padding:4px 8px; border-radius:2px; }
.job-id-tag { font-size:11px; font-family:monospace; color:#94a3b8; font-weight:600; }
.job-title { margin:0 0 12px; font:700 20px "Playfair Display",serif; color:#162430; }
.job-specs { display:flex; gap:16px; margin-bottom:14px; font-size:12.5px; color:var(--muted); }
.job-spec-item { display:inline-flex; align-items:center; gap:5px; }
.job-spec-item svg { color:var(--gold); }
.job-description { font-size:13.5px; line-height:1.65; color:var(--muted); margin:0 0 18px; }
.job-skills-list { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:24px; }
.skill-pill { font-size:11px; color:#475569; background:#f8fafc; border:1px solid #e2e8f0; padding:3px 8px; border-radius:2px; }
.job-card-actions { margin-top:auto; }
.job-card-actions .button { width:100%; justify-content:center; height:46px; }

.general-application-banner { margin-top:50px; padding:45px 50px; background:var(--cream); border:1px solid #e8e4dc; border-radius:6px; display:flex; justify-content:space-between; align-items:center; gap:30px; }
.general-app-tag { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.15em; color:var(--gold); display:block; margin-bottom:8px; }
.general-app-content h3 { margin:0 0 8px; font:700 24px "Playfair Display",serif; color:#162430; }
.general-app-content p { margin:0; color:var(--muted); font-size:14.5px; line-height:1.6; max-width:620px; }

/* Partner / Career Modal Popup */
.career-modal-backdrop { position:fixed; inset:0; z-index:200; background:rgba(22,36,48,.65); backdrop-filter:blur(6px); display:grid; place-items:center; padding:20px; opacity:0; visibility:hidden; pointer-events:none; transition:.3s ease; }
.career-modal-backdrop.open, .career-modal-backdrop.modal-open { opacity:1; visibility:visible; pointer-events:auto; }
.career-modal-dialog { position:relative; width:100%; max-width:680px; max-height:90vh; overflow-y:auto; background:#ffffff; border-radius:6px; padding:44px 40px 36px; box-shadow:0 24px 70px rgba(0,0,0,.2); border:1px solid #e8e4dc; }
.modal-close-btn { position:absolute; top:20px; right:20px; width:36px; height:36px; border-radius:50%; background:#f1f5f9; border:0; color:#64748b; display:grid; place-items:center; cursor:pointer; transition:.2s; }
.modal-close-btn:hover { background:#e2e8f0; color:#162430; }
.career-modal-header { margin-bottom:28px; }
.modal-badge-row { display:flex; gap:8px; align-items:center; margin-bottom:8px; }
.modal-tag { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); }
.modal-role-badge { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#162430; background:var(--gold-pale); padding:3px 8px; border-radius:2px; border:1px solid var(--border-gold); }
.career-modal-header h2 { margin:0 0 6px; font:700 24px "Playfair Display",serif; color:#162430; }
.career-modal-header p { margin:0; color:var(--muted); font-size:13.5px; line-height:1.55; }
.form-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form-group { display:flex; flex-direction:column; gap:5px; }
.form-group.full-width { grid-column:1/-1; }
.form-group label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#162430; }
.form-group label span { color:#d9534f; }
.form-group input, .form-group select, .form-group textarea { width:100%; padding:10px 14px; border:1px solid #d4cfc4; border-radius:3px; font-size:13.5px; background:#fbfaf7; color:#162430; outline:none; transition:.2s; }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color:var(--gold); background:#ffffff; box-shadow:0 0 0 3px rgba(184,138,56,.15); }
.file-upload-dropzone { position:relative; border:2px dashed #d4cfc4; border-radius:4px; padding:22px; text-align:center; background:#fbfaf7; cursor:pointer; transition:.2s; }
.file-upload-dropzone:hover { border-color:var(--gold); background:var(--gold-pale); }
.file-upload-dropzone input[type=file] { position:absolute; inset:0; opacity:0; cursor:pointer; width:100%; height:100%; }
.upload-icon-wrap { width:44px; height:44px; margin:0 auto 10px; border-radius:50%; background:#ffffff; color:var(--gold); display:grid; place-items:center; border:1px solid var(--border-gold); }
.dropzone-prompt { margin:0 0 4px; font-size:13px; color:#162430; }
.dropzone-hint { font-size:11px; color:#64748b; }
.selected-file-pill { display:flex; align-items:center; justify-content:center; gap:8px; background:#ffffff; border:1px solid var(--gold); padding:8px 14px; border-radius:20px; margin-top:8px; font-size:12px; font-weight:600; color:var(--gold); }
.selected-file-pill button { background:none; border:0; color:#ef4444; font-size:16px; cursor:pointer; line-height:1; }
.modal-footer { margin-top:24px; display:flex; flex-direction:column; gap:12px; }
.modal-footer .button { width:100%; justify-content:center; height:48px; }
.modal-privacy-note { margin:0; text-align:center; font-size:11.5px; color:#94a3b8; }
.career-alert { padding:14px 18px; border-radius:4px; display:flex; align-items:center; gap:12px; font-size:13.5px; font-weight:500; }
.career-alert.success { background:#e8f7ec; color:#186c2e; border:1px solid #b7e4c2; }
.career-alert.error { background:#fdeeee; color:#c9342b; border:1px solid #f6c4c4; }

/* ===== News & Events & Media ===== */
.media-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:26px; }
.media-card { display:flex; flex-direction:column; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; transition:box-shadow .3s, transform .3s, border-color .3s; overflow:hidden; }
.media-card:hover { transform:translateY(-6px); box-shadow:0 22px 55px rgba(0,0,0,.08); border-color:var(--gold); }
.media-card-img { position:relative; aspect-ratio:16/10; overflow:hidden; }
.media-card-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.media-card:hover .media-card-img img { transform:scale(1.08); }
.media-badge { position:absolute; top:14px; left:14px; padding:5px 10px; background:#ffffff; color:var(--gold); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; border:1px solid var(--border-gold); border-radius:2px; }
.media-card-content { padding:24px 22px 26px; display:flex; flex-direction:column; flex:1; }
.media-card-content time { color:var(--gold); font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin-bottom:8px; }
.media-card-content h3 { margin:0 0 12px; font:700 20px/1.3 "Playfair Display",serif; color:#162430; transition:color .2s; }
.media-card:hover .media-card-content h3 { color:var(--gold); }
.media-card-content p { margin:0 0 18px; color:var(--muted); font-size:13.5px; line-height:1.7; flex:1; }
.media-link { display:inline-flex; align-items:center; gap:6px; color:var(--gold); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; transition:color .2s, transform .2s; margin-top:auto; }
.media-link:hover { color:#162430; transform:translateX(3px); }

.event-header { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:24px; padding-bottom:16px; border-bottom:1px solid #e8e4dc; }
.event-tag { display:inline-block; margin-bottom:6px; color:var(--gold); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.16em; }
.event-header h3 { margin:0; font:700 28px/1.2 "Playfair Display",serif; color:#162430; }
.event-meta { margin:0; max-width:440px; color:var(--muted); font-size:14px; line-height:1.6; text-align:right; }
.event-photo-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.event-photo { position:relative; aspect-ratio:4/3; overflow:hidden; border-radius:4px; box-shadow:0 8px 24px rgba(0,0,0,.06); cursor:pointer; }
.event-photo img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.event-photo:hover img { transform:scale(1.1); }
.photo-overlay { position:absolute; inset:0; background:linear-gradient(0deg,rgba(22,36,48,.8) 0%,transparent 60%); display:flex; align-items:flex-end; padding:16px; opacity:0; transition:opacity .3s ease; }
.event-photo:hover .photo-overlay { opacity:1; }
.photo-overlay span { color:#ffffff; font-size:12.5px; font-weight:600; letter-spacing:.04em; }

.news-list-container { display:flex; flex-direction:column; gap:1px; background:#e8e4dc; border:1px solid #e8e4dc; border-radius:4px; overflow:hidden; }
.news-list-item { display:grid; grid-template-columns:120px 1fr 140px; gap:36px; align-items:center; padding:32px 36px; background:#ffffff; transition:background .25s; }
.news-list-item:hover { background:var(--gold-pale); }
.news-list-date { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:12px 8px; background:var(--gold-pale); color:#162430; border-radius:3px; text-align:center; border:1.5px solid var(--border-gold); }
.news-day { font:700 24px/1 "Playfair Display",serif; color:var(--gold); }
.news-month-year { font-size:9px; text-transform:uppercase; letter-spacing:.12em; margin-top:4px; color:#64748b; font-weight:700; }
.news-item-tag { display:inline-block; margin-bottom:6px; color:var(--gold); font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; }
.news-list-body h3 { margin:0 0 8px; font:700 22px/1.25 "Playfair Display",serif; color:#162430; }
.news-list-body p { margin:0; color:var(--muted); font-size:14px; line-height:1.65; max-width:700px; }
.news-list-action { display:flex; justify-content:flex-end; }
.news-action-btn { display:inline-flex; align-items:center; gap:8px; padding:10px 18px; border:1px solid #d4cfc4; color:#162430; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; transition:.25s; border-radius:2px; white-space:nowrap; background:#ffffff; }
.news-action-btn:hover { background:var(--gold); color:#ffffff; border-color:var(--gold); }

/* ===== Blogs Archive & Single Reader Page ===== */
.blogs-listing-page, .blogs-archive-page { background:#ffffff; }
.blog-filters-bar { background:#f4f1ea; padding:22px 8vw; border-top:1px solid #e2ddd3; border-bottom:1px solid #e2ddd3; }
.filters-wrapper { display:flex; justify-content:space-between; align-items:center; gap:20px; flex-wrap:wrap; }
.category-pills { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.cat-pill { padding:9px 18px; font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#162430; background:#ffffff; border:1px solid #d4cfc4; border-radius:3px; transition:.2s; text-decoration:none; display:inline-block; }
.cat-pill:hover, .cat-pill.active { background:var(--gold); color:#ffffff; border-color:var(--gold); box-shadow:0 4px 14px rgba(184,138,56,.2); }

.blog-search-form { position:relative; display:flex; align-items:center; min-width:280px; }
.blog-search-form input { width:100%; padding:10px 42px 10px 14px; border:1px solid #d4cfc4; border-radius:3px; font-size:13.5px; background:#ffffff; outline:none; transition:.2s; color:#162430; }
.blog-search-form input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(184,138,56,.15); }
.blog-search-form button { position:absolute; right:6px; top:50%; transform:translateY(-50%); width:32px; height:32px; background:var(--gold); border:0; border-radius:2px; color:#ffffff; display:grid; place-items:center; cursor:pointer; transition:.2s; }
.blog-search-form button:hover { background:var(--gold-light); }

.featured-blog-section { padding-top:60px; padding-bottom:40px; }
.featured-blog-card { display:grid; grid-template-columns:1.2fr 1fr; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; overflow:hidden; box-shadow:0 14px 45px rgba(0,0,0,.06); }
.featured-blog-thumb { position:relative; min-height:380px; display:block; overflow:hidden; }
.featured-blog-thumb img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.featured-blog-card:hover .featured-blog-thumb img { transform:scale(1.05); }
.spotlight-badge { position:absolute; top:20px; left:20px; background:var(--gold); color:#ffffff; font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; padding:6px 12px; border-radius:2px; box-shadow:0 4px 12px rgba(0,0,0,.15); }
.featured-blog-content { padding:48px 42px; display:flex; flex-direction:column; justify-content:center; }
.card-meta { display:flex; gap:8px; align-items:center; margin-bottom:12px; font-size:11.5px; color:#64748b; font-weight:600; }
.meta-cat { color:var(--gold); font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.featured-blog-content h2 { margin:0 0 16px; font:700 clamp(24px,2.8vw,36px)/1.2 "Playfair Display",serif; color:#162430; }
.featured-blog-content h2 a { color:#162430; transition:color .2s; }
.featured-blog-content h2 a:hover { color:var(--gold); }
.featured-blog-content p { color:var(--muted); font-size:15px; line-height:1.75; margin:0 0 24px; }
.featured-card-footer { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin-top:auto; padding-top:18px; border-top:1px solid #f1ece4; }
.author-name { font-size:12.5px; color:#64748b; font-weight:600; }

.blog-grid-section { padding-top:40px; padding-bottom:80px; }
.blog-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.blog-card-footer { display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:14px; border-top:1px solid #f1ece4; }
.author-tag { font-size:11px; color:#94a3b8; font-weight:600; }
.no-articles-found { text-align:center; padding:60px 20px; background:var(--cream); border:1px solid #e8e4dc; border-radius:4px; }
.no-articles-found h3 { font:700 24px "Playfair Display",serif; margin:0 0 10px; color:#162430; }
.no-articles-found p { color:var(--muted); margin:0 0 20px; }

.blog-newsletter-section { background:var(--cream); padding-top:60px; padding-bottom:60px; }
.newsletter-card { display:flex; justify-content:space-between; align-items:center; gap:30px; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:44px 48px; box-shadow:0 12px 40px rgba(0,0,0,.04); }
.newsletter-badge { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); display:block; margin-bottom:8px; }
.newsletter-card h3 { margin:0 0 8px; font:700 24px "Playfair Display",serif; color:#162430; }
.newsletter-card p { margin:0; font-size:14px; color:var(--muted); line-height:1.6; max-width:600px; }

/* Single Blog Reader */
.blog-single-page { background:#ffffff; }
.blog-header-meta { display:flex; gap:8px; margin-bottom:14px; flex-wrap:wrap; }
.blog-category-pill { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--gold); background:#ffffff; padding:4px 10px; border-radius:2px; border:1px solid var(--border-gold); }
.blog-time-pill { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#64748b; background:#ffffff; padding:4px 10px; border-radius:2px; }
.blog-byline { display:flex; gap:12px; align-items:center; margin-top:20px; font-size:13px; color:#475569; }
.byline-author { display:inline-flex; align-items:center; gap:6px; font-weight:600; color:#162430; }

.blog-reader-body { padding-top:80px; padding-bottom:80px; }
.blog-reader-container { display:grid; grid-template-columns:1.8fr 1fr; gap:60px; align-items:start; }
.blog-article-main { display:flex; flex-direction:column; }
.blog-featured-image-wrap { position:relative; border-radius:4px; overflow:hidden; margin-bottom:34px; box-shadow:0 14px 45px rgba(0,0,0,.08); }
.blog-featured-image-wrap img { width:100%; aspect-ratio:16/9; object-fit:cover; display:block; }
.blog-image-caption { display:flex; justify-content:space-between; padding:12px 18px; background:var(--cream); border:1px solid #e8e4dc; border-top:0; font-size:11.5px; color:#64748b; font-weight:500; }
.blog-category-label { color:var(--gold); font-weight:700; text-transform:uppercase; }

.blog-pull-quote { position:relative; padding:28px 32px; background:var(--gold-pale); border-left:4px solid var(--gold); border-radius:0 4px 4px 0; margin-bottom:32px; }
.blog-pull-quote p { margin:0; font:italic 500 18px/1.7 "Playfair Display",serif; color:#162430; }
.blog-text-content { font-size:16px; line-height:1.85; color:#334155; }
.blog-text-content p { margin:0 0 20px; }

.blog-highlights-box { margin:34px 0; padding:28px 32px; background:var(--cream); border:1px solid #e8e4dc; border-radius:4px; }
.blog-highlights-box h4 { margin:0 0 16px; font:700 18px "Playfair Display",serif; color:#162430; }
.blog-highlights-box ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.blog-highlights-box li { display:flex; align-items:flex-start; gap:10px; font-size:14.5px; color:#334155; line-height:1.55; }
.blog-highlights-box svg { color:var(--gold); flex-shrink:0; margin-top:2px; }

.blog-author-box { display:flex; gap:20px; align-items:center; padding:24px 28px; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; margin:34px 0; }
.author-avatar { width:58px; height:58px; border-radius:50%; background:var(--gold); color:#ffffff; font:700 20px "Playfair Display",serif; display:grid; place-items:center; flex-shrink:0; }
.author-details h5 { margin:0 0 6px; font:700 17px "Playfair Display",serif; color:#162430; }
.author-details p { margin:0; font-size:13px; line-height:1.6; color:var(--muted); }

.blog-share-bar { display:flex; justify-content:space-between; align-items:center; padding:18px 0; border-top:1px solid #e8e4dc; border-bottom:1px solid #e8e4dc; margin:24px 0 40px; flex-wrap:wrap; gap:14px; }
.share-label { font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:#162430; }
.share-buttons { display:flex; gap:10px; }
.share-btn { display:inline-flex; align-items:center; gap:6px; padding:7px 14px; font-size:11px; font-weight:700; border:1px solid #d4cfc4; border-radius:2px; background:#ffffff; color:#162430; transition:.2s; }
.share-btn:hover { background:var(--gold); color:#ffffff; border-color:var(--gold); }

.blog-nav-prev-next { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:20px; }
.blog-nav-card { padding:20px 24px; border:1px solid #e8e4dc; border-radius:4px; background:#ffffff; display:flex; flex-direction:column; gap:6px; transition:.2s; }
.blog-nav-card:hover { border-color:var(--gold); background:var(--gold-pale); transform:translateY(-3px); }
.blog-nav-card.disabled { opacity:.5; pointer-events:none; }
.nav-direction { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--gold); }
.blog-nav-card strong { font:700 15px "Playfair Display",serif; color:#162430; line-height:1.35; }
.blog-nav-card small { font-size:11px; color:#64748b; }

/* Blog / Media Sidebar Widgets */
.blog-sidebar, .media-sidebar { display:flex; flex-direction:column; gap:30px; position:sticky; top:100px; }
.sidebar-widget { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:28px 24px; }
.sidebar-widget-title { margin:0 0 18px; padding-bottom:12px; border-bottom:1px solid #f0ede6; font:700 17px "Playfair Display",serif; color:#162430; }
.sidebar-search-form .search-input-wrap { display:flex; gap:6px; }
.sidebar-search-form input { flex:1; padding:9px 12px; border:1px solid #d4cfc4; border-radius:2px; font-size:13px; outline:none; }
.sidebar-search-form button { padding:9px 14px; background:var(--gold); color:#ffffff; border:0; border-radius:2px; font-size:11px; font-weight:700; text-transform:uppercase; cursor:pointer; }
.sidebar-categories-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; }
.sidebar-categories-list a { display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px solid #f5f2eb; font-size:13.5px; color:#334155; font-weight:500; transition:.2s; }
.sidebar-categories-list a:hover { color:var(--gold); padding-left:4px; }
.sidebar-articles-list { display:flex; flex-direction:column; gap:16px; }
.sidebar-article-item { display:flex; gap:14px; align-items:center; }
.sidebar-article-thumb { width:70px; height:54px; border-radius:3px; overflow:hidden; flex-shrink:0; }
.sidebar-article-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.sidebar-article-info h5 { margin:0 0 4px; font:600 13.5px/1.3 "Playfair Display",serif; color:#162430; }
.sidebar-article-info time { font-size:10px; color:#94a3b8; }
.sidebar-tag { font-size:9px; font-weight:700; text-transform:uppercase; color:var(--gold); display:block; margin-bottom:2px; }
.blog-cta-widget, .media-contact-widget { background:linear-gradient(rgba(251,250,247,.97),rgba(244,241,234,.95)),url('../images/project-commercial.png') center/cover; }
.blog-cta-widget p, .media-contact-widget p { font-size:13px; line-height:1.6; color:var(--muted); margin:0 0 16px; }
.sidebar-contact-info { list-style:none; padding:0; margin:0 0 20px; display:flex; flex-direction:column; gap:12px; }
.sidebar-contact-info li { display:flex; flex-direction:column; gap:2px; font-size:13.5px; }
.sidebar-contact-info strong { font-size:10.5px; text-transform:uppercase; letter-spacing:.1em; color:var(--gold); }
.sidebar-contact-info a { color:#162430; font-weight:600; transition:.2s; }
.sidebar-contact-info a:hover { color:var(--gold); }
.full-btn { width:100%; justify-content:center; }
.back-link-btn { display:inline-flex; align-items:center; gap:8px; color:var(--gold); font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }

/* ===== Contact Us Page ===== */
.contact-page-wrapper { background:#ffffff; }
.contact-hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:24px; }
.contact-channels-section { padding-top:70px; padding-bottom:70px; }
.contact-channels-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.channel-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:32px 24px; display:flex; flex-direction:column; transition:transform .3s, box-shadow .3s, border-color .3s; text-align:left; }
.channel-card:not(.no-hover-link):hover { transform:translateY(-6px); box-shadow:0 18px 45px rgba(0,0,0,.08); border-color:var(--gold); }
.channel-icon { width:52px; height:52px; border-radius:4px; background:var(--gold-pale); color:var(--gold); border:1.5px solid var(--border-gold); display:grid; place-items:center; margin-bottom:18px; }
.channel-tag { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); margin-bottom:6px; display:block; }
.channel-card h3 { margin:0 0 8px; font:700 18px "Playfair Display",serif; color:#162430; word-break:break-word; }
.channel-card p { margin:0 0 16px; font-size:13px; line-height:1.55; color:var(--muted); flex:1; }
.channel-action { display:inline-flex; align-items:center; gap:5px; color:var(--gold); font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin-top:auto; }

.contact-split-section { padding-top:90px; padding-bottom:90px; }
.contact-split-container { display:grid; grid-template-columns:1.1fr 1.3fr; gap:60px; align-items:start; }
.contact-lead-text { font-size:16px; line-height:1.8; color:#475569; margin-bottom:30px; }
.contact-promises-box { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:28px 26px; margin-bottom:30px; }
.contact-promises-box h4 { margin:0 0 16px; font:700 17px "Playfair Display",serif; color:#162430; }
.contact-promises-box ul { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px; }
.contact-promises-box li { display:flex; align-items:flex-start; gap:10px; font-size:13.5px; line-height:1.55; color:#334155; }
.contact-promises-box svg { color:var(--gold); flex-shrink:0; margin-top:2px; }
.working-hours-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:24px 26px; }
.working-hours-card h4 { margin:0 0 12px; font:700 15px "Playfair Display",serif; color:#162430; }
.hours-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid #f5f2eb; font-size:13px; color:#475569; }
.hours-row:last-child { border-bottom:0; }

.contact-form-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:44px 38px; box-shadow:0 16px 50px rgba(0,0,0,.05); }
.form-card-header { margin-bottom:28px; padding-bottom:16px; border-bottom:1px solid #f0ede6; }
.form-card-header h3 { margin:0 0 6px; font:700 24px "Playfair Display",serif; color:#162430; }
.form-card-header p { margin:0; color:var(--muted); font-size:13.5px; }
.main-contact-form { display:flex; flex-direction:column; gap:18px; }
.form-row-2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form-field { display:flex; flex-direction:column; gap:6px; }
.form-field label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#162430; }
.form-field label span { color:#d9534f; }
.form-field input, .form-field select, .form-field textarea { width:100%; padding:11px 14px; border:1px solid #d4cfc4; border-radius:3px; font-size:13.5px; background:#fbfaf7; color:#162430; outline:none; transition:.2s; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-color:var(--gold); background:#ffffff; box-shadow:0 0 0 3px rgba(184,138,56,.15); }
.submit-contact-btn { height:50px; justify-content:center; }
.form-privacy-note { margin:8px 0 0; text-align:center; font-size:11px; color:#94a3b8; }
.contact-alert { padding:14px 18px; border-radius:4px; display:flex; align-items:center; gap:12px; margin-bottom:20px; font-size:13.5px; }
.contact-alert.success { background:#e8f7ec; color:#186c2e; border:1px solid #b7e4c2; }
.contact-alert.error { background:#fdeeee; color:#c9342b; border:1px solid #f6c4c4; }

.contact-map-section { padding-top:0; padding-bottom:70px; }
.contact-map-wrapper { position:relative; height:450px; border-radius:4px; overflow:hidden; border:1px solid #e8e4dc; }
.contact-map-iframe { width:100%; height:100%; border:0; display:block; }
.map-overlay-card { position:absolute; bottom:24px; left:24px; background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:24px 28px; max-width:340px; box-shadow:0 12px 40px rgba(0,0,0,.12); }
.map-card-badge { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:var(--gold); display:block; margin-bottom:6px; }
.map-overlay-card h4 { margin:0 0 8px; font:700 18px "Playfair Display",serif; color:#162430; }
.map-overlay-card p { margin:0 0 14px; font-size:13px; line-height:1.55; color:var(--muted); }

.contact-process-section { background:var(--cream); border-top:1px solid #e8e4dc; }
.process-steps-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.process-step-card { background:#ffffff; border:1px solid #e8e4dc; border-radius:4px; padding:36px 30px; display:flex; flex-direction:column; transition:.3s; }
.process-step-card:hover { transform:translateY(-5px); border-color:var(--gold); box-shadow:0 16px 45px rgba(0,0,0,.06); }
.step-num { font:700 36px/1 "Playfair Display",serif; color:var(--gold); margin-bottom:12px; }
.step-tag { font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:.14em; color:#64748b; margin-bottom:8px; }
.process-step-card h3 { margin:0 0 10px; font:700 20px "Playfair Display",serif; color:#162430; }
.process-step-card p { margin:0; font-size:13.5px; line-height:1.65; color:var(--muted); }

/* ===== Footer (Luxury Obsidian Black & Champagne Gold) ===== */
footer {
  background: linear-gradient(180deg, #0d1722 0%, #080f17 100%);
  color: #94a3b8;
  border-top: 1px solid rgba(184, 138, 56, 0.28);
}
.footer-top {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1.2fr 1.3fr;
  gap: 60px;
  padding: 80px 8vw 65px;
}
.footer-about .footer-brand { margin: 0 0 22px; }
.footer-brand strong { color: #ffffff !important; }
.footer-brand small { color: var(--gold-light, #d2aa68) !important; }
.footer-desc {
  margin: 0 0 28px;
  font-size: 14.5px;
  line-height: 1.85;
  color: #94a3b8;
  max-width: 330px;
}
.footer-social { display: flex; gap: 10px; }
.footer-social a {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  color: #cbd5e1;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50%;
  transition: all .24s ease;
}
.footer-social a:hover {
  color: #ffffff;
  border-color: var(--gold);
  background: var(--gold);
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(184, 138, 56, 0.35);
}
.footer-col-title {
  margin: 0 0 24px;
  color: #ffffff;
  font: 700 12px/1 "DM Sans", sans-serif;
  text-transform: uppercase;
  letter-spacing: .2em;
  padding-bottom: 14px;
  border-bottom: 1.5px solid rgba(184, 138, 56, 0.45);
}
.footer-nav-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.footer-nav-list li a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 0;
  color: #cbd5e1;
  font-size: 14.5px;
  font-weight: 500;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  transition: all .2s ease;
}
.footer-nav-list li:last-child a { border-bottom: 0; }
.footer-nav-list li a::before {
  content: "→";
  color: var(--gold-light, #d2aa68);
  font-size: 12px;
  opacity: 0;
  transform: translateX(-6px);
  transition: .2s;
}
.footer-nav-list li a:hover {
  color: var(--gold-light, #d2aa68);
  padding-left: 6px;
}
.footer-nav-list li a:hover::before { opacity: 1; transform: none; }
.footer-nav-list li a small {
  margin-left: auto;
  color: #64748b;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .1em;
  white-space: nowrap;
}

.footer-contact-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 20px; }
.footer-contact-list li { display: flex; align-items: flex-start; gap: 14px; }
.footer-contact-icon {
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  color: var(--gold-light, #d2aa68);
  background: rgba(184, 138, 56, 0.12);
  border: 1px solid rgba(184, 138, 56, 0.35);
  border-radius: 50%;
  margin-top: 1px;
}
.footer-contact-list li div { display: flex; flex-direction: column; gap: 4px; }
.footer-contact-list li strong {
  color: #ffffff;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 700;
}
.footer-contact-list li a, .footer-contact-list li span {
  color: #cbd5e1;
  font-size: 14.5px;
  transition: .2s;
}
.footer-contact-list li a:hover { color: var(--gold-light, #d2aa68); }
.footer-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(184, 138, 56, 0.35) 30%, rgba(184, 138, 56, 0.35) 70%, transparent);
  margin: 0 8vw;
}
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 8vw 28px;
  font-size: 12.5px;
  color: #64748b;
  background: #050a10;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}
.footer-bottom-links { display: flex; gap: 22px; }
.footer-bottom-links a { color: #8292a4; transition: .2s; }
.footer-bottom-links a:hover { color: var(--gold-light, #d2aa68); }

/* ===== Luxury Floating Action Buttons ===== */
.floating-actions { position:fixed; z-index:90; right:28px; bottom:28px; display:flex; flex-direction:column; align-items:center; gap:14px; pointer-events:none; }
.float-btn { position:relative; pointer-events:auto; width:52px; height:52px; border-radius:50%; display:grid; place-items:center; border:0; cursor:pointer; text-decoration:none; transition:transform .3s cubic-bezier(.34,1.56,.64,1), box-shadow .3s; }
.float-btn:hover { transform:scale(1.12); }
.float-btn-top { background:#ffffff; color:#162430; border:1.5px solid #d4cfc4; box-shadow:0 6px 20px rgba(0,0,0,.1); opacity:0; visibility:hidden; transform:translateY(15px); transition:opacity .3s, transform .3s, visibility .3s; }
.float-btn-top.visible { opacity:1; visibility:visible; transform:translateY(0); }
.float-btn-top:hover { background:var(--gold); color:#ffffff; border-color:var(--gold); box-shadow:0 8px 25px rgba(184,138,56,.35); }
.float-btn-call { background:#ffffff; color:var(--gold); border:1.5px solid var(--gold); box-shadow:0 6px 22px rgba(184,138,56,.2); }
.float-btn-call:hover { background:var(--gold); color:#ffffff; box-shadow:0 10px 28px rgba(184,138,56,.4); }
.float-btn-wa { background:#25d366; color:#ffffff; box-shadow:0 8px 25px rgba(37,211,102,.35); }
.float-btn-wa:hover { box-shadow:0 12px 32px rgba(37,211,102,.5); }
.float-pulse-ring { position:absolute; inset:-4px; border-radius:50%; border:2px solid #25d366; opacity:0; animation:floatPulse 2.4s infinite; }
@keyframes floatPulse { 0% { transform:scale(.95); opacity:.8; } 50% { transform:scale(1.3); opacity:0; } 100% { transform:scale(1.3); opacity:0; } }
.float-tooltip { position:absolute; right:calc(100% + 12px); top:50%; transform:translateY(-50%) translateX(6px); background:#162430; color:#ffffff; padding:6px 12px; border-radius:3px; font-size:11px; font-weight:700; letter-spacing:.04em; white-space:nowrap; opacity:0; visibility:hidden; pointer-events:none; transition:.2s ease; box-shadow:0 4px 14px rgba(0,0,0,.15); }
.float-tooltip::after { content:""; position:absolute; left:100%; top:50%; transform:translateY(-50%); border:5px solid transparent; border-left-color:#162430; }
.float-btn:hover .float-tooltip { opacity:1; visibility:visible; transform:translateY(-50%) translateX(0); }

/* ===== Responsive Breakpoints ===== */
@media (max-width:1180px) {
  .site-header { padding:0 24px; }
  .site-header nav { gap:12px; }
  .site-header nav>a,.nav-projects>a { font-size:11px; }
  .brand { min-width:175px; }
  .footer-top { grid-template-columns:1.2fr 1fr 1fr 1.2fr; gap:36px; }
  .contact-channels-grid { grid-template-columns:repeat(2,1fr); }
  .media-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:980px) {
  .site-header { height:90px; }
  .site-header nav {
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    height: auto;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 16px 5vw 32px;
    background: #ffffff;
    border-bottom: 2px solid var(--gold);
    box-shadow: 0 20px 45px rgba(0,0,0,.15);
    z-index: 99;
  }
  .site-header nav.nav-open { display: flex; animation: slideDownNav .28s ease both; }
  @keyframes slideDownNav { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:none; } }

  /* Mobile Top-Level Links */
  .site-header nav > a,
  .site-header nav .nav-projects-link {
    min-height: 50px;
    padding: 0 4px;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: .08em;
    border-bottom: 1px solid #f0ece3;
    color: #162430 !important;
    display: flex;
    align-items: center;
    text-transform: uppercase;
    transition: color .2s ease, padding-left .2s ease;
  }
  .site-header nav > a:after,
  .site-header nav .nav-projects-link:after { display: none !important; }
  .site-header nav > a:hover,
  .site-header nav .nav-projects-link:hover,
  .site-header nav > a.active,
  .site-header nav .nav-projects-link.active {
    color: var(--gold) !important;
    padding-left: 6px;
  }

  /* Projects Item on Mobile */
  .nav-projects {
    display: block;
    height: auto;
    border-bottom: 1px solid #f0ece3;
  }
  .nav-projects-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 50px;
  }
  .nav-projects-header .nav-projects-link {
    border-bottom: none;
    flex: 1;
    min-height: 50px;
  }
  .nav-projects-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: #fbfaf7;
    border: 1px solid #ede8df;
    border-radius: 4px;
    color: var(--gold);
    cursor: pointer;
    transition: all .25s ease;
    flex-shrink: 0;
    margin-left: 10px;
  }
  .nav-projects-toggle:hover,
  .nav-projects.is-expanded .nav-projects-toggle {
    background: var(--gold-pale);
    border-color: var(--gold);
  }
  .nav-projects.is-expanded .nav-caret {
    transform: rotate(180deg);
  }

  /* Hide Desktop Dropdown on Mobile */
  .mega-menu, .motiaz-dropdown { display: none !important; }

  /* Mobile Projects Accordion */
  .mobile-projects-accordion {
    display: none !important;
    padding: 10px;
    margin: 4px 0 14px;
    background: #fbfaf7;
    border: 1px solid #eee8dc;
    border-radius: 6px;
  }
  .nav-projects.is-expanded .mobile-projects-accordion {
    display: block !important;
    animation: fadeInAcc .25s ease both;
  }
  @keyframes fadeInAcc {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: none; }
  }

  .mobile-view-all-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 14px;
    margin-bottom: 8px;
    background: #ffffff;
    border: 1px solid #e8e3d8;
    border-radius: 4px;
    color: var(--gold) !important;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    transition: all .2s ease;
  }
  .mobile-view-all-main:hover {
    background: var(--gold-pale);
    border-color: var(--gold);
    padding-left: 16px;
  }
  .mobile-arrow {
    font-size: 14px;
    transition: transform .2s ease;
  }
  .mobile-view-all-main:hover .mobile-arrow {
    transform: translateX(3px);
  }

  /* Mobile Category Groups */
  .mobile-cat-group {
    margin-bottom: 6px;
    border: 1px solid #ede8de;
    border-radius: 4px;
    background: #ffffff;
    overflow: hidden;
  }
  .mobile-cat-group:last-child {
    margin-bottom: 0;
  }
  .mobile-cat-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    background: #ffffff;
    border: none;
    color: #1e293b;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .2s ease, color .2s ease;
  }
  .mobile-cat-group.active .mobile-cat-toggle {
    background: #fbf9f4;
    color: var(--gold);
    border-bottom: 1px solid #ede8de;
  }
  .mobile-cat-icon {
    color: var(--gold);
    display: inline-flex;
    align-items: center;
    transition: transform .25s ease;
  }
  .mobile-cat-group.active .mobile-cat-icon {
    transform: rotate(180deg);
  }

  /* Mobile Category Panel */
  .mobile-cat-panel {
    display: none;
    padding: 12px 14px 14px;
    background: #ffffff;
  }
  .mobile-cat-group.active .mobile-cat-panel {
    display: block;
    animation: fadeInAcc .2s ease both;
  }

  .mobile-sub-section {
    margin-bottom: 12px;
  }
  .mobile-sub-tag {
    display: inline-block;
    padding: 2px 8px;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    border-radius: 3px;
    margin-bottom: 6px;
  }
  .mobile-sub-tag.ongoing {
    background: rgba(34,197,94,.12);
    color: #15803d;
  }
  .mobile-sub-tag.delivered {
    background: rgba(184,138,56,.14);
    color: #93681d;
  }

  .mobile-sub-list {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .mobile-sub-list li {
    margin-bottom: 2px;
  }
  .mobile-sub-list li a {
    display: block;
    padding: 8px 10px;
    color: #334155 !important;
    font-size: 12px;
    font-weight: 600;
    border-radius: 3px;
    text-decoration: none;
    transition: all .2s ease;
  }
  .mobile-sub-list li a:hover {
    background: var(--gold-pale);
    color: var(--gold) !important;
    padding-left: 14px;
  }

  .mobile-cat-more {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-top: 4px;
    padding: 6px 0;
    color: var(--gold) !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
  }
  .mobile-cat-more:hover {
    text-decoration: underline;
  }

  /* Mobile Nav Footer */
  .mobile-nav-footer {
    display: flex !important;
    flex-direction: column;
    gap: 12px;
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1.5px solid #ede8df;
  }
  .mobile-enquire-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 13px 20px;
    background: var(--gold);
    color: #ffffff !important;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    border-radius: 4px;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(184,138,56,.25);
    transition: background .2s ease;
  }
  .mobile-enquire-btn:hover {
    background: var(--gold-light);
  }
  .mobile-quick-contacts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .mobile-quick-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 8px;
    background: #fbfaf7;
    border: 1px solid #e8e3d8;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    color: #334155 !important;
    text-decoration: none;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .mobile-quick-item.wa {
    color: #15803d !important;
    border-color: rgba(34,197,94,.3);
    background: rgba(34,197,94,.05);
  }
  .mobile-quick-item:hover {
    border-color: var(--gold);
    color: var(--gold) !important;
  }

  .menu-button { display:block; }
  .header-enquire { display:none; }

  .hero-content { width:75%; margin-left:6vw; }
  .hero-stats { right:2vw; width:205px; }
  .section { padding:80px 6vw; }
  .intro { grid-template-columns:1fr; gap:30px; }
  .section-label { writing-mode:initial; transform:none; }
  .category-showcase { grid-template-columns:1fr; }
  .category-card { min-height:480px; padding:50px 6vw; }
  .section-heading { grid-template-columns:1fr; gap:20px; margin-bottom:45px; }
  .reason-grid { grid-template-columns:1fr 1fr; }
  .project-grid { grid-template-columns:repeat(2,1fr); }
  .projects-cards-grid { grid-template-columns:repeat(2,1fr); }
  .project-detail-container { grid-template-columns:1fr; gap:45px; }
  .metrics-container { grid-template-columns:repeat(2,1fr); padding:0 5vw; }
  .metric-item:nth-child(2) { border-right:0; }
  .metric-item:nth-child(-n+2) { border-bottom:1px solid #e8e4dc; }
  .team-grid { grid-template-columns:repeat(2,1fr); gap:20px; }
  .vm-grid { grid-template-columns:1fr; gap:20px; }
  .about-intro { grid-template-columns:1fr; gap:50px; }
  .about-intro-badge { width:110px; height:110px; right:-10px; bottom:-20px; }
  .about-intro-badge strong { font-size:28px; }
  .event-photo-grid { grid-template-columns:repeat(2,1fr); gap:14px; }
  .event-header { flex-direction:column; align-items:flex-start; gap:10px; }
  .event-meta { text-align:left; max-width:100%; }
  .news-list-item { grid-template-columns:100px 1fr; gap:20px; padding:24px; }
  .news-list-action { grid-column:1/-1; justify-content:flex-start; }
  .featured-blog-card { grid-template-columns:1fr; }
  .blog-grid-3 { grid-template-columns:repeat(2,1fr); }
  .blog-reader-container { grid-template-columns:1fr; gap:45px; }
  .partner-pillars-grid { grid-template-columns:1fr; }
  .career-cards-grid { grid-template-columns:repeat(2,1fr); }
  .general-application-banner { flex-direction:column; align-items:flex-start; gap:22px; padding:34px 28px; }
  .contact-split-container { grid-template-columns:1fr; gap:45px; }
  .contact-panel { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr 1fr; gap:40px; padding:60px 5vw 50px; }
}

@media (max-width:720px) {
  .site-header { height:80px; padding:0 18px; }
  .site-header.is-scrolled { height:75px; }
  .site-header nav { top:80px; max-height:calc(100vh - 80px); padding:15px 5vw 30px; }
  .brand { min-width:auto; }
  .brand-mark { width:40px; height:40px; }
  .brand strong { font-size:18px; }

  .hero-slider { min-height:720px; height:100svh; }
  .hero-slide { align-items:flex-end; padding:0 18px 180px; }
  .hero-slide:after { display:none; }
  .hero-content { width:100%; margin:0; padding:0; background:transparent; }
  .hero-content h1 { font-size:clamp(40px,12vw,62px); }
  .hero-copy { font-size:14.5px; margin:18px 0 24px; }
  .hero-stats { left:18px; right:18px; bottom:30px; top:auto; width:auto; display:grid; grid-template-columns:repeat(3,1fr); border:0; }
  .hero-stats div { margin:0; padding:12px 6px; text-align:center; }
  .hero-stats strong { font-size:22px; }
  .hero-stats span { font-size:6.5px; }
  .slider-dots { top:auto; left:50%; bottom:135px; flex-direction:row; transform:translateX(-50%); }
  .slider-arrows,.scroll-cue { display:none; }

  .section { padding:60px 18px; }
  .intro-title>span { font-size:48px; }
  .reason-grid { grid-template-columns:1fr; border-left:0; }
  .reason-grid article { border-left:1px solid #e8e4dc; }
  .project-grid { grid-template-columns:1fr; }
  .projects-cards-grid { grid-template-columns:1fr; }
  .article-grid { grid-template-columns:1fr; }
  .media-grid { grid-template-columns:1fr; }
  .career-cards-grid { grid-template-columns:1fr; }
  .blog-grid-3 { grid-template-columns:1fr; }
  .contact-channels-grid { grid-template-columns:1fr; }
  .process-steps-grid { grid-template-columns:1fr; }
  .numbers { grid-template-columns:1fr 1fr; }
  .numbers article { padding:30px 18px; min-height:160px; }
  .numbers strong { font-size:32px; }

  .statement { padding:55px 18px; flex-direction:column; align-items:flex-start; gap:24px; }
  .testimonial { padding:60px 18px; }
  .testimonial blockquote { font-size:clamp(22px,6vw,34px); }

  .page-hero { min-height:440px; padding:125px 18px 60px; }
  .page-hero h1 { font-size:clamp(36px,10vw,54px); }

  .about-highlights { grid-template-columns:1fr; }
  .team-grid { grid-template-columns:1fr; gap:20px; }

  .project-highlights-grid, .amenities-cards-grid, .connectivity-grid { grid-template-columns:1fr; }
  .project-card-actions { grid-template-columns:1fr; }
  .detail-block { padding:26px 18px; }
  .sidebar-enquiry-card { padding:26px 18px; }
  .sidebar-direct-contacts { grid-template-columns:1fr; }

  .news-list-item { grid-template-columns:1fr; gap:14px; padding:20px 18px; }
  .news-list-date { width:max-content; padding:6px 14px; flex-direction:row; gap:8px; }
  .news-month-year { margin-top:0; }
  .event-photo-grid { grid-template-columns:1fr 1fr; gap:10px; }

  .blog-filters-bar { padding:18px 18px; }
  .filters-wrapper { flex-direction:column; align-items:stretch; gap:14px; }
  .category-pills { justify-content:flex-start; gap:6px; }
  .cat-pill { font-size:10.5px; padding:8px 12px; }
  .blog-search-form { width:100%; min-width:100%; }

  .featured-blog-content { padding:28px 20px; }
  .blog-nav-prev-next { grid-template-columns:1fr; }
  .blog-share-bar { flex-direction:column; align-items:flex-start; gap:12px; }
  .newsletter-card { flex-direction:column; align-items:flex-start; padding:32px 20px; }

  .form-grid-2, .form-row-2, .enquiry-form { grid-template-columns:1fr; gap:14px; padding:45px 18px; }
  .career-modal-dialog { padding:28px 18px 24px; max-height:94vh; }
  .contact-form-card { padding:28px 18px; }
  .contact-map-wrapper { height:340px; }
  .map-overlay-card { position:static; max-width:100%; margin-top:16px; }

  .footer-top { grid-template-columns:1fr; gap:36px; padding:50px 18px 40px; }
  .footer-bottom { flex-direction:column; align-items:flex-start; gap:12px; padding:20px 18px 28px; }
  .footer-bottom-links { flex-wrap:wrap; gap:14px; }
  .floating-actions { right:16px; bottom:16px; gap:10px; }
  .float-btn { width:46px; height:46px; }
  .float-tooltip { display:none!important; }
}

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

/* Utility helpers */
.mega-hidden { display:none!important; }
.honeypot { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.not-found { min-height:600px; padding:130px 20px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:var(--cream); }
.not-found h1 { margin:0; font:700 clamp(40px,6vw,72px) "Playfair Display",serif; color:#162430; }
.not-found>p:not(.eyebrow) { color:var(--muted); margin-bottom:28px; }

/* ============================================================
   VERA-STYLE HOMEPAGE SECTIONS
   ============================================================ */

/* ---- Section 1: Dual-Image Split Hero Slider (Vera Style) ---- */
.vr-hero {
  position:relative;
  height:100vh;
  height:100svh;
  min-height:640px;
  overflow:hidden;
  background:#09141f;
  display:flex;
  width:100%;
}
.vr-slide {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:flex;
  opacity:0;
  visibility:hidden;
  transition:opacity .9s cubic-bezier(.4,0,.2,1), visibility .9s;
  pointer-events:none;
}
.vr-slide.active {
  opacity:1;
  visibility:visible;
  z-index:2;
  pointer-events:auto;
}

/* Left / Base Image Layer (Zooms slowly on active) */
.vr-slide-bg-left {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  transform:scale(1.08);
  transition:transform 7s cubic-bezier(0.25, 1, 0.5, 1);
  z-index:1;
}
.vr-slide.active .vr-slide-bg-left {
  transform:scale(1);
}
.vr-slide-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(9,20,31,0.65) 0%, rgba(9,20,31,0.3) 50%, rgba(9,20,31,0.7) 100%),
             linear-gradient(90deg, rgba(9,20,31,0.82) 0%, rgba(9,20,31,0.4) 55%, transparent 100%);
  pointer-events:none;
}

/* Right Side Image Layer (Slides in dynamically from Right with Diagonal Mask) */
.vr-slide-bg-right {
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  width:55%;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  clip-path:polygon(18% 0, 100% 0, 100% 100%, 0% 100%);
  -webkit-clip-path:polygon(18% 0, 100% 0, 100% 100%, 0% 100%);
  transform:translateX(100px);
  opacity:0;
  transition:transform 1.15s cubic-bezier(0.16, 1, 0.3, 1), opacity .85s ease;
  z-index:3;
}
.vr-slide.active .vr-slide-bg-right {
  transform:translateX(0);
  opacity:1;
}
.vr-slide-right-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0.05) 50%, rgba(0,0,0,0.35) 100%);
  pointer-events:none;
}

/* Gold Diagonal Accent Cut on Right Image */
.vr-slide-gold-cut {
  position:absolute;
  inset:0;
  pointer-events:none;
}
.vr-slide-gold-cut::before {
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:100%;
  clip-path:polygon(17.2% 0, 18.2% 0, 0.8% 100%, 0% 100%);
  -webkit-clip-path:polygon(17.2% 0, 18.2% 0, 0.8% 100%, 0% 100%);
  background:linear-gradient(180deg, var(--gold-light, #d2aa68) 0%, var(--gold, #b88a38) 100%);
  box-shadow:0 0 25px rgba(184,138,56,0.6);
  z-index:4;
}

/* Top-Right Floating Luxury Badge */
.vr-hero-badge {
  position:absolute;
  top:125px;
  right:4vw;
  z-index:10;
  pointer-events:none;
  transform:translateY(-12px);
  opacity:0;
  transition:transform .85s cubic-bezier(0.16, 1, 0.3, 1) .35s, opacity .75s ease .35s;
}
.vr-slide.active .vr-hero-badge {
  transform:translateY(0);
  opacity:1;
}
.vr-hb-inner {
  background:rgba(9, 20, 31, 0.55);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border:1.5px solid rgba(184, 138, 56, 0.65);
  padding:16px 24px 18px;
  text-align:center;
  border-radius:2px;
  box-shadow:0 15px 40px rgba(0, 0, 0, 0.38);
  min-width:180px;
}
.vr-hb-title {
  display:block;
  font:700 17px/1 "Playfair Display",serif;
  letter-spacing:.14em;
  color:#ffffff;
}
.vr-hb-title-sub {
  display:block;
  font:italic 700 22px/1.15 "Playfair Display",serif;
  letter-spacing:.09em;
  color:var(--gold-light, #d2aa68);
  margin-top:4px;
}
.vr-hb-sep {
  width:55px;
  height:1px;
  background:rgba(184, 138, 56, 0.6);
  margin:10px auto;
}
.vr-hb-desc {
  display:block;
  font-size:8.5px;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(255, 255, 255, 0.82);
}
.vr-hb-count {
  display:block;
  font:700 16px/1.2 "Playfair Display",serif;
  letter-spacing:.08em;
  color:#ffffff;
  margin-top:5px;
}

/* Center Content (Title + Button) */
.vr-slide-center {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  z-index:6;
  padding:0 20px;
  pointer-events:none;
}
.vr-slide-center * {
  pointer-events:auto;
}
.vr-slide-title {
  font:700 clamp(36px, 6.2vw, 84px)/1.08 "Playfair Display",serif;
  color:#ffffff;
  text-transform:uppercase;
  letter-spacing:.05em;
  text-shadow:0 4px 30px rgba(0,0,0,0.6), 0 2px 12px rgba(0,0,0,0.45);
  margin:0 0 16px;
  max-width:980px;
  transform:translateY(36px);
  opacity:0;
  transition:transform .9s cubic-bezier(0.16, 1, 0.3, 1) .25s, opacity .75s ease .25s;
}
.vr-slide.active .vr-slide-title {
  transform:translateY(0);
  opacity:1;
}
.vr-slide-action {
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  justify-content:center;
  align-items:center;
  transform:translateY(30px);
  opacity:0;
  transition:transform .9s cubic-bezier(0.16, 1, 0.3, 1) .55s, opacity .75s ease .55s;
}
.vr-slide.active .vr-slide-action {
  transform:translateY(0);
  opacity:1;
}

.vr-btn-gold {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:52px;
  padding:0 40px;
  background:var(--gold, #b88a38);
  color:#ffffff !important;
  font-size:14px;
  font-weight:600;
  letter-spacing:.06em;
  border-radius:50px;
  transition:all .32s cubic-bezier(0.2, 0.8, 0.2, 1);
  box-shadow:0 10px 28px rgba(184,138,56,0.38);
  text-decoration:none;
}
.vr-btn-gold:hover {
  background:var(--gold-light, #c59b43);
  transform:translateY(-3px) scale(1.03);
  box-shadow:0 16px 36px rgba(184,138,56,0.52);
  color:#ffffff !important;
}

/* Hero Eyebrow tag (above title) */
.vr-slide-eyebrow {
  margin:0 0 14px;
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--gold, #b88a38);
  transform:translateY(24px);
  opacity:0;
  transition:transform .8s cubic-bezier(0.16, 1, 0.3, 1) .1s, opacity .65s ease .1s;
}
.vr-slide.active .vr-slide-eyebrow {
  transform:translateY(0);
  opacity:1;
}

/* Hero Subheadline (below title, above buttons) */
.vr-slide-subhead {
  margin:0 0 32px;
  font-size:clamp(15px, 1.5vw, 20px);
  font-weight:400;
  color:rgba(255,255,255,.82);
  max-width:720px;
  line-height:1.6;
  letter-spacing:.01em;
  transform:translateY(28px);
  opacity:0;
  transition:transform .9s cubic-bezier(0.16, 1, 0.3, 1) .38s, opacity .75s ease .38s;
}
.vr-slide.active .vr-slide-subhead {
  transform:translateY(0);
  opacity:1;
}

/* Dual CTA — no separate rule needed, merged above */


/* Ghost / outline button for hero */
.vr-btn-outline {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:52px;
  padding:0 36px;
  background:transparent;
  color:#ffffff !important;
  font-size:14px;
  font-weight:600;
  letter-spacing:.06em;
  border-radius:50px;
  border:2px solid rgba(255,255,255,.6);
  transition:all .32s cubic-bezier(0.2, 0.8, 0.2, 1);
  text-decoration:none;
}
.vr-btn-outline:hover {
  background:rgba(255,255,255,.12);
  border-color:#ffffff;
  transform:translateY(-3px) scale(1.03);
  color:#ffffff !important;
}


.vr-dots {
  position:absolute;
  z-index:10;
  left:3.5vw;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:14px;
}
.vr-dots button {
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  background:none;
  border:0;
  padding:0;
  cursor:pointer;
  transition:.25s;
}
.vr-dots button span {
  width:9px;
  height:9px;
  border-radius:50%;
  background:rgba(255,255,255,.4);
  transition:.28s;
  display:block;
}
.vr-dots button:hover span {
  background:rgba(255,255,255,.8);
  transform:scale(1.2);
}
.vr-dots button.active {
  border:1.5px solid var(--gold);
  border-radius:50%;
}
.vr-dots button.active span {
  background:var(--gold);
  transform:scale(1.1);
}

/* Arrow nav */
.vr-arrows {
  position:absolute;
  z-index:10;
  right:3.5vw;
  bottom:38px;
  display:flex;
  gap:10px;
}
.vr-arrows button {
  width:48px;
  height:48px;
  background:rgba(9,20,31,.45);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  color:#ffffff;
  border:1px solid rgba(255,255,255,.25);
  font-size:18px;
  cursor:pointer;
  transition:.28s;
  border-radius:4px;
  display:grid;
  place-items:center;
}
.vr-arrows button:hover {
  background:var(--gold);
  border-color:var(--gold);
  color:#ffffff;
  transform:translateY(-2px);
}

/* Scroll cue */
.vr-scroll-cue {
  position:absolute;
  z-index:10;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  color:var(--gold);
  opacity:.85;
  animation:vrScrollCue 1.5s ease-in-out infinite;
  text-decoration:none;
}
.vr-scroll-cue svg { margin-top:-16px; }
@keyframes vrScrollCue {
  0%,100%{transform:translateX(-50%) translateY(0)}
  50%{transform:translateX(-50%) translateY(8px)}
}

/* ---- Section 2: Stats Counter Strip ---- */
.vr-stats { padding:52px 8vw 0; background:#ffffff; border-bottom:1px solid var(--border-light); }
.vr-stats-label { color:var(--gold); font-size:11px; font-weight:700; letter-spacing:.22em; text-transform:uppercase; margin-bottom:28px; }
.vr-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.vr-stat-box { padding:28px 24px 32px; border:1px solid #e0dbd0; text-align:left; transition:.3s; background:#ffffff; }
.vr-stat-box:hover { border-color:var(--gold); box-shadow:0 8px 30px rgba(0,0,0,.06); }
.vr-stat-box strong { font:700 clamp(36px,4vw,58px)/1 "Playfair Display",serif; color:var(--gold); }
.vr-stat-box sup { font-size:22px; font-family:"Playfair Display",serif; color:var(--gold); vertical-align:super; font-weight:700; }
.vr-stat-box span { display:block; margin-top:12px; color:#475569; text-transform:uppercase; letter-spacing:.14em; font-size:9.5px; font-weight:700; }
.vr-gold-rule { width:50%; height:2px; background:linear-gradient(90deg,var(--gold),transparent); margin:40px auto 0; border:none; }

/* ---- Section 3: Legacy Section with Slider ---- */
.vr-legacy { display:grid; grid-template-columns:1fr 1fr; gap:7vw; align-items:center; background:#ffffff; }
.vr-legacy-eyebrow { color:var(--gold); text-transform:uppercase; letter-spacing:.22em; font-size:11px; font-weight:700; margin:0 0 10px; }
.vr-legacy-title { font:700 clamp(52px,8vw,110px)/1 "Playfair Display",serif; color:var(--gold); margin:0 0 14px; font-style:italic; }
.vr-legacy-years { display:flex; align-items:baseline; gap:16px; margin-bottom:24px; }
.vr-legacy-years strong { font:700 clamp(44px,6vw,80px)/1 "Playfair Display",serif; color:#162430; }
.vr-legacy-years span { font:600 clamp(16px,2vw,24px)/1.2 "Playfair Display",serif; color:#162430; max-width:260px; }
.vr-legacy-copy { color:var(--muted); font-size:15px; line-height:1.82; margin:0 0 14px; }
.vr-text-link { display:inline-flex; align-items:center; gap:10px; margin-top:18px; color:#162430; border-bottom:1.5px solid var(--gold); padding-bottom:6px; text-transform:uppercase; letter-spacing:.12em; font-size:10.5px; font-weight:700; transition:color .2s; text-decoration:none; }
.vr-text-link:hover { color:var(--gold); }
.vr-text-link span { color:var(--gold); font-size:16px; }

/* Legacy image slider */
.vr-legacy-slider { position:relative; width:100%; border-radius:6px; overflow:hidden; aspect-ratio:1.25; min-height:280px; box-shadow:0 20px 60px rgba(0,0,0,.12); }
.vr-ls-track { position:relative; width:100%; height:100%; min-height:inherit; }
.vr-ls-slide { position:absolute; inset:0; width:100%; height:100%; background-size:cover; background-position:center; opacity:0; visibility:hidden; transition:opacity .7s ease, visibility .7s; }
.vr-ls-slide.active { opacity:1; visibility:visible; }
.vr-ls-label { position:absolute; bottom:0; left:0; right:0; padding:16px 20px; background:linear-gradient(transparent, rgba(13,30,43,.88)); color:#ffffff; font:600 16px "Playfair Display",serif; z-index:3; }
.vr-ls-prev, .vr-ls-next { position:absolute; top:50%; z-index:5; transform:translateY(-50%); width:44px; height:44px; background:rgba(255,255,255,.92); border:0; color:#162430; font-size:24px; cursor:pointer; display:grid; place-items:center; transition:.22s; border-radius:2px; box-shadow:0 4px 16px rgba(0,0,0,0.15); }
.vr-ls-prev { left:14px; }
.vr-ls-next { right:14px; }
.vr-ls-prev:hover, .vr-ls-next:hover { background:var(--gold); color:#ffffff; }

/* ---- Section 4: Dark 3-Panel Showcase ---- */
.vr-dark-showcase { display:grid; grid-template-columns:1fr 1.1fr 1fr; min-height:480px; }
.vr-dsc-panel { background:#3a3a3a; color:#ffffff; display:flex; flex-direction:column; justify-content:center; padding:60px 48px; gap:18px; transition:.3s; }
.vr-dsc-panel:hover { background:#2e2e2e; }
.vr-dsc-icon { width:70px; height:70px; border:1.5px solid rgba(255,255,255,.25); display:grid; place-items:center; color:rgba(255,255,255,.85); margin-bottom:8px; }
.vr-dsc-panel h3 { margin:0; font:700 clamp(20px,2vw,28px)/1.25 "Playfair Display",serif; color:#ffffff; }
.vr-dsc-panel p { margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.72; }
.vr-dsc-panel a { display:inline-flex; align-items:center; gap:8px; color:var(--gold); text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:700; margin-top:6px; transition:.2s; }
.vr-dsc-panel a:hover { color:#ffffff; }
.vr-dsc-panel a span { font-size:14px; }
.vr-dsc-center { background-size:cover; background-position:center; position:relative; min-height:480px; }
.vr-dsc-center-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.5)); }

/* ---- Section 6: Explore Our Projects (Vera Style) ---- */
.vr-projects { background:#ffffff; }

/* Centered heading block */
.vr-projects-heading { text-align:center; max-width:780px; margin:0 auto 64px; }
.vr-projects-tag { color:var(--gold); text-transform:uppercase; letter-spacing:.24em; font-size:10.5px; font-weight:700; margin:0 0 12px; }
.vr-projects-heading h2 { margin:0 0 18px; font:700 clamp(30px,4vw,54px)/1.1 "Playfair Display",serif; color:#162430; }
.vr-projects-heading p { margin:0; color:var(--muted); font-size:15px; line-height:1.82; max-width:700px; margin-inline:auto; }

/* 2-column grid — 2 projects per row */
.vr-proj-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; }

/* Each card: image left (45%) + text right (55%) */
.vr-proj-card {
  display:flex;
  align-items:stretch;
  gap:0;
  padding:36px 28px;
  border-bottom:1px solid #ede9e0;
  transition:background .32s ease;
  position:relative;
}
.vr-proj-card:nth-child(odd) { border-right:1px solid #ede9e0; }
.vr-proj-card:hover { background:#faf9f6; }

/* ---- Image wrap ---- */
.vr-proj-img-wrap {
  position:relative;
  flex-shrink:0;
  width:260px;
  min-height:190px;
  overflow:hidden;
  border-radius:4px;
  display:block;
}

/* The actual bg-image div inside */
.vr-proj-img {
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transition:transform .65s cubic-bezier(.25,.46,.45,.94);
}
.vr-proj-card:hover .vr-proj-img { transform:scale(1.07); }

/* Status badge */
.vr-proj-status {
  position:absolute;
  top:12px;
  left:12px;
  background:var(--gold);
  color:#ffffff;
  font-size:8.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.14em;
  padding:5px 10px;
  border-radius:2px;
  z-index:3;
  transition:background .3s;
}
.vr-proj-card:hover .vr-proj-status { background:#162430; }

/* Gold border accent — slides up from bottom on hover */
.vr-proj-img-border {
  position:absolute;
  bottom:0; left:0; right:0;
  height:0;
  background:var(--gold);
  opacity:.85;
  transition:height .4s cubic-bezier(.4,0,.2,1);
  z-index:2;
}
.vr-proj-card:hover .vr-proj-img-border { height:4px; }

/* Left-side vertical gold accent line on image wrap */
.vr-proj-img-wrap::after {
  content:"";
  position:absolute;
  left:0; top:100%; bottom:0;
  width:3px;
  background:var(--gold);
  border-radius:0 0 0 4px;
  transition:top .42s cubic-bezier(.4,0,.2,1);
  z-index:4;
}
.vr-proj-card:hover .vr-proj-img-wrap::after { top:0; }

/* ---- Content panel ---- */
.vr-proj-content {
  flex:1;
  display:flex;
  flex-direction:column;
  padding:6px 0 6px 28px;
  gap:0;
}

/* Type / label */
.vr-proj-type {
  display:inline-block;
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:var(--gold);
  margin-bottom:10px;
}

/* Project name */
.vr-proj-name {
  margin:0 0 8px;
  font:700 clamp(18px,2vw,26px)/1.25 "Playfair Display",serif;
  position:relative;
}
.vr-proj-name a { color:#162430; transition:color .28s ease; }
.vr-proj-card:hover .vr-proj-name a { color:var(--gold); }

/* Animated underline on title */
.vr-proj-name::after {
  content:"";
  display:block;
  margin-top:8px;
  height:2px;
  width:0;
  background:var(--gold);
  border-radius:2px;
  transition:width .4s cubic-bezier(.4,0,.2,1);
}
.vr-proj-card:hover .vr-proj-name::after { width:48px; }

/* Location pin row */
.vr-proj-location {
  display:flex;
  align-items:center;
  gap:5px;
  color:#94a3b8;
  font-size:12px;
  font-weight:600;
  margin:0 0 12px;
  transition:color .28s ease;
}
.vr-proj-location svg { flex-shrink:0; color:#cbd5e1; transition:color .28s ease; }
.vr-proj-card:hover .vr-proj-location { color:var(--gold); }
.vr-proj-card:hover .vr-proj-location svg { color:var(--gold); }

/* Summary text */
.vr-proj-summary {
  margin:0 0 18px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.72;
  flex:1;
}

/* Read More link */
.vr-proj-readmore {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#162430;
  font-size:12.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-top:auto;
  padding-bottom:4px;
  border-bottom:1.5px solid #e2ddd3;
  transition:color .28s ease, border-color .28s ease;
  width:fit-content;
}
.vr-proj-readmore:hover,
.vr-proj-card:hover .vr-proj-readmore { color:var(--gold); border-color:var(--gold); }

/* Arrow inside Read More */
.vr-proj-arrow {
  display:inline-flex;
  align-items:center;
  transition:transform .35s cubic-bezier(.22,.68,0,1.3);
}
.vr-proj-card:hover .vr-proj-arrow { transform:translateX(6px); }

/* Footer: View All button */
.vr-proj-footer {
  margin-top:52px;
  display:flex;
  justify-content:center;
}
.vr-proj-viewall {
  display:inline-flex;
  align-items:center;
  gap:10px;
  height:52px;
  padding:0 38px;
  color:#162430;
  border:1.5px solid #d4cfc4;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:11px;
  font-weight:700;
  border-radius:2px;
  transition:background .28s ease, color .28s ease, border-color .28s ease, transform .28s ease;
}
.vr-proj-viewall:hover {
  background:var(--gold);
  color:#ffffff;
  border-color:var(--gold);
  transform:translateY(-3px);
  box-shadow:0 10px 28px rgba(184,138,56,.3);
}
.vr-proj-viewall svg { transition:transform .35s cubic-bezier(.22,.68,0,1.3); }
.vr-proj-viewall:hover svg { transform:translateX(5px); }

/* Responsive */
@media (max-width:1000px) {
  .vr-proj-grid { grid-template-columns:1fr; }
  .vr-proj-card { border-right:none !important; }
  .vr-proj-img-wrap { width:220px; }
}
@media (max-width:640px) {
  .vr-proj-card { flex-direction:column; gap:18px; padding:24px 16px; }
  .vr-proj-img-wrap { width:100%; min-height:220px; }
  .vr-proj-content { padding:0; }
}

/* ---- Section 5: Why Choose — Enhanced Colored Hover Animations ---- */

.vr-why { background:#f7f6f2; }
.vr-why-heading { text-align:center; max-width:820px; margin:0 auto 64px; }
.vr-why-tag { color:var(--gold); text-transform:uppercase; letter-spacing:.24em; font-size:10.5px; font-weight:700; margin:0 0 12px; }
.vr-why-heading h2 { margin:0 0 18px; font:700 clamp(30px,4vw,52px)/1.12 "Playfair Display",serif; color:#162430; }
.vr-why-heading p { margin:0; color:var(--muted); font-size:15px; line-height:1.8; }

/* Grid */
.vr-why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }

/* Base card */
.vr-why-card {
  position:relative;
  padding:38px 34px 42px;
  border:1px solid #e4dfd5;
  background:#ffffff;
  border-radius:6px;
  overflow:hidden;
  cursor:default;
  transition:transform .38s cubic-bezier(.22,.68,0,1.2),
             box-shadow .38s ease,
             border-color .32s ease;
}
.vr-why-card:hover {
  transform:translateY(-10px) scale(1.015);
  box-shadow:0 28px 60px rgba(var(--card-rgb),.18);
  border-color:var(--card-color);
}

/* Diagonal background sweep (pseudo fill from bottom-left) */
.vr-why-bg-sweep {
  position:absolute;
  inset:0;
  background:var(--card-color);
  clip-path:circle(0% at 0% 100%);
  opacity:.08;
  transition:clip-path .55s cubic-bezier(.4,0,.2,1), opacity .4s ease;
  pointer-events:none;
}
.vr-why-card:hover .vr-why-bg-sweep {
  clip-path:circle(150% at 0% 100%);
  opacity:.11;
}

/* Animated top border line */
.vr-why-card::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:100%;
  height:3px;
  background:var(--card-color);
  transition:right .42s cubic-bezier(.4,0,.2,1);
  border-radius:6px 6px 0 0;
}
.vr-why-card:hover::before { right:0; }

/* Card top bar */
.vr-why-card-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:28px;
}
.vr-why-label {
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.22em;
  color:#94a3b8;
  transition:color .3s ease;
}
.vr-why-card:hover .vr-why-label { color:var(--card-color); }

.vr-why-num {
  font:700 13px/1 "Playfair Display",serif;
  color:#e2ddd3;
  transition:color .3s ease, transform .3s ease;
}
.vr-why-card:hover .vr-why-num {
  color:var(--card-color);
  transform:scale(1.15);
}

/* Icon wrapper */
.vr-why-icon {
  width:68px;
  height:68px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1.5px solid #e4dfd5;
  background:#faf9f6;
  margin-bottom:22px;
  color:#94a3b8;
  transition:background .35s ease,
             border-color .35s ease,
             color .35s ease,
             transform .45s cubic-bezier(.22,.68,0,1.4),
             box-shadow .35s ease;
}
.vr-why-card:hover .vr-why-icon {
  background:var(--card-color);
  border-color:var(--card-color);
  color:#ffffff;
  transform:rotate(-8deg) scale(1.12);
  box-shadow:0 10px 30px rgba(var(--card-rgb),.35);
}

/* Heading */
.vr-why-card h3 {
  margin:0 0 12px;
  font:700 clamp(17px,1.8vw,21px)/1.25 "Playfair Display",serif;
  color:#162430;
  transition:color .3s ease;
}
.vr-why-card:hover h3 { color:var(--card-color); }

/* Body copy */
.vr-why-card p {
  margin:0 0 22px;
  color:var(--muted);
  font-size:14px;
  line-height:1.78;
  transition:color .3s ease;
}
.vr-why-card:hover p { color:#334155; }

/* Arrow indicator */
.vr-why-arrow {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border-radius:50%;
  border:1.5px solid #e4dfd5;
  color:#cbd5e1;
  margin-top:auto;
  transition:background .32s ease,
             border-color .32s ease,
             color .32s ease,
             transform .38s cubic-bezier(.22,.68,0,1.3);
}
.vr-why-card:hover .vr-why-arrow {
  background:var(--card-color);
  border-color:var(--card-color);
  color:#ffffff;
  transform:translateX(6px) rotate(-45deg);
}

/* ---- Experience Luxury & Commercial CTA Banner ---- */
.vr-exp-cta {
  position:relative;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  padding:15px 15px;
  text-align:center;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.vr-exp-cta-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(10,18,28,0.48) 0%, rgba(10,18,28,0.3) 45%, rgba(10,18,28,0.58) 100%),
             radial-gradient(ellipse at center, rgba(10,18,28,0.2) 0%, rgba(10,18,28,0.6) 100%);
  pointer-events:none;
}
.vr-exp-cta-container {
  position:relative;
  z-index:2;
  margin:0 auto;
  padding:15px 15px 15px; 
  border:1px solid rgba(255, 255, 255, 0.15);
  border-radius:12px;
  box-shadow:0 24px 60px rgba(0, 0, 0, 0.35);
}
.vr-exp-cta-tag {
  display:inline-block;
  color:var(--gold-light, #d2aa68);
  text-transform:uppercase;
  letter-spacing:.22em;
  font-size:11px;
  font-weight:700;
  margin:0 0 14px;
  text-shadow:0 2px 10px rgba(0,0,0,0.7);
}
.vr-exp-cta-title {
  margin:0 auto 16px;
  font:700 clamp(24px, 3.3vw, 42px)/1.22 "Playfair Display",serif;
  color:#ffffff;
  letter-spacing:-0.01em;
  text-shadow:0 3px 20px rgba(0,0,0,0.8), 0 1px 4px rgba(0,0,0,0.9);
}
.vr-exp-cta-desc {
  margin:0 auto 28px;
  max-width:760px;
  font-size:clamp(15px, 1.2vw, 17px);
  line-height:1.7;
  color:rgba(255,255,255,0.92);
  font-family:"DM Sans",sans-serif;
  text-shadow:0 2px 10px rgba(0,0,0,0.7);
}
.vr-exp-cta-features {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px 10px;
  margin:0 auto 34px;
  max-width:880px;
}
.vr-exp-feat {
  display:inline-flex;
  align-items:center;
  gap:7px;
  background:rgba(255, 255, 255, 0.08);
  border:1px solid rgba(255, 255, 255, 0.16);
  padding:6px 14px;
  border-radius:20px;
  color:#ffffff;
  font-size:12.5px;
  font-weight:500;
  letter-spacing:.02em;
  backdrop-filter:blur(4px);
}
.vr-exp-feat svg {
  color:var(--gold-light, #d2aa68);
  flex-shrink:0;
}
.vr-exp-cta-actions {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:14px;
}
.vr-exp-cta-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:15px 36px;
  background:var(--gold, #b88a38);
  color:#ffffff !important;
  font-size:14.5px;
  font-weight:600;
  letter-spacing:.02em;
  border-radius:50px;
  box-shadow:0 10px 25px rgba(184,138,56,0.38);
  transition:all .3s cubic-bezier(0.2,0.8,0.2,1);
  text-decoration:none;
}
.vr-exp-cta-btn:hover {
  background:var(--gold-light, #c59b43);
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 14px 34px rgba(184,138,56,0.5);
  color:#ffffff !important;
}
.vr-exp-cta-btn-alt {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:14px 30px;
  background:rgba(255, 255, 255, 0.08);
  color:#ffffff !important;
  font-size:14px;
  font-weight:600;
  letter-spacing:.02em;
  border:1px solid rgba(255, 255, 255, 0.28);
  border-radius:50px;
  transition:all .3s ease;
  text-decoration:none;
}
.vr-exp-cta-btn-alt:hover {
  background:rgba(255, 255, 255, 0.18);
  border-color:rgba(255, 255, 255, 0.5);
  transform:translateY(-2px);
  color:#ffffff !important;
}
.vr-exp-cta-btn-alt span {
  color:var(--gold-light, #d2aa68);
  transition:transform .25s ease;
}
.vr-exp-cta-btn-alt:hover span {
  transform:translateX(3px) translateY(-3px);
}


/* ---- Header: dark overlay on home route ---- */
.route-home .site-header.overlay { background:rgba(13,30,43,.88); border-bottom-color:rgba(184,138,56,.2); }
.route-home .site-header.overlay .brand strong { color:#ffffff; }
.route-home .site-header.overlay .brand small { color:var(--gold); }
@media (min-width: 981px) {
  .route-home .site-header.overlay nav > a,
  .route-home .site-header.overlay .nav-projects-link,
  .route-home .site-header.overlay .nav-projects > a { color:rgba(255,255,255,.9); }
  .route-home .site-header.overlay nav > a:hover,
  .route-home .site-header.overlay nav > a.active,
  .route-home .site-header.overlay .nav-projects-link:hover,
  .route-home .site-header.overlay .nav-projects-link.active,
  .route-home .site-header.overlay .nav-projects > a:hover,
  .route-home .site-header.overlay .nav-projects > a.active { color:var(--gold); }
}
.route-home .site-header.overlay .menu-button span { background:#ffffff; }
.route-home .site-header.overlay .header-enquire { background:transparent; color:var(--gold); border-color:var(--gold); }
.route-home .site-header.overlay .header-enquire:hover { background:var(--gold); color:#ffffff; }
.route-home .site-header.is-scrolled { background:rgba(255,255,255,.98)!important; }
.route-home .site-header.is-scrolled .brand strong { color:#162430!important; }
@media (min-width: 981px) {
  .route-home .site-header.is-scrolled nav > a,
  .route-home .site-header.is-scrolled .nav-projects-link,
  .route-home .site-header.is-scrolled .nav-projects > a { color:#2c3e50!important; }
}
.route-home .site-header.is-scrolled .menu-button span { background:#162430!important; }

/* ---- Section 6: Meet Our Awesome Team ---- */
.vr-team { background:#f9f8f5; }
.vr-team-heading { text-align:center; max-width:760px; margin:0 auto 64px; }
.vr-team-tag { color:var(--gold); text-transform:uppercase; letter-spacing:.24em; font-size:10.5px; font-weight:700; margin:0 0 12px; }
.vr-team-heading h2 { margin:0 0 18px; font:700 clamp(28px,4vw,50px)/1.12 "Playfair Display",serif; color:#162430; }
.vr-team-heading p { margin:0; color:var(--muted); font-size:15px; line-height:1.8; }

.vr-team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }

/* Individual card */
.vr-team-card {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:#ffffff;
  border:1px solid #e4dfd5;
  border-radius:8px;
  padding:44px 24px 36px;
  transition:transform .38s cubic-bezier(.22,.68,0,1.2),
             box-shadow .38s ease,
             border-color .32s ease;
  overflow:hidden;
  position:relative;
}
.vr-team-card::before {
  content:"";
  position:absolute;
  top:0; left:0; right:100%;
  height:3px;
  background:var(--gold);
  transition:right .45s cubic-bezier(.4,0,.2,1);
}
.vr-team-card:hover::before { right:0; }
.vr-team-card:hover {
  transform:translateY(-10px);
  box-shadow:0 28px 60px rgba(184,138,56,.14);
  border-color:var(--gold);
}

/* Photo wrap */
.vr-team-photo-wrap {
  position:relative;
  width:150px;
  height:150px;
  margin-bottom:26px;
  flex-shrink:0;
}

/* Dashed rotating ring */
.vr-team-photo-ring {
  position:absolute;
  inset:-7px;
  border-radius:50%;
  border:2px dashed rgba(184,138,56,.35);
  transition:transform .9s ease, border-color .35s ease, border-style .35s ease;
}
.vr-team-card:hover .vr-team-photo-ring {
  transform:rotate(90deg);
  border-color:var(--gold);
  border-style:solid;
}

/* Photo circle */
.vr-team-photo {
  width:150px;
  height:150px;
  border-radius:50%;
  overflow:hidden;
  border:3px solid var(--gold);
  box-shadow:0 10px 32px rgba(0,0,0,.12);
  position:relative;
  z-index:2;
}
.vr-team-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:top center;
  display:block;
  transition:transform .55s ease;
}
.vr-team-card:hover .vr-team-photo img { transform:scale(1.08); }

/* Social icons — slide up from bottom over photo on hover */
.vr-team-socials {
  position:absolute;
  bottom:-50px;
  left:50%;
  transform:translateX(-50%);
  z-index:5;
  display:flex;
  gap:8px;
  transition:bottom .38s cubic-bezier(.22,.68,0,1.2);
}
.vr-team-card:hover .vr-team-socials { bottom:-2px; }
.vr-team-socials a {
  width:34px;
  height:34px;
  border-radius:50%;
  background:var(--gold);
  color:#ffffff;
  display:grid;
  place-items:center;
  box-shadow:0 4px 14px rgba(0,0,0,.2);
  transition:background .22s ease, transform .22s ease;
}
.vr-team-socials a:hover { background:#162430; transform:scale(1.1); }

/* Text info */
.vr-team-info { display:flex; flex-direction:column; align-items:center; width:100%; }
.vr-team-num {
  font:700 11px/1 "Playfair Display",serif;
  color:#e2ddd3;
  margin-bottom:10px;
  transition:color .3s;
}
.vr-team-card:hover .vr-team-num { color:var(--gold); }
.vr-team-info h3 {
  margin:0 0 6px;
  font:700 clamp(16px,1.5vw,20px)/1.2 "Playfair Display",serif;
  color:#162430;
  transition:color .3s;
}
.vr-team-card:hover .vr-team-info h3 { color:var(--gold); }
.vr-team-role {
  margin:0;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--gold);
}
.vr-team-divider {
  width:40px;
  height:2px;
  background:var(--gold);
  border-radius:2px;
  margin:16px auto;
  transition:width .4s cubic-bezier(.4,0,.2,1);
}
.vr-team-card:hover .vr-team-divider { width:80px; }
.vr-team-quote {
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.75;
  font-style:italic;
}
.vr-team-footer { margin-top:52px; display:flex; justify-content:center; }

/* ---- Section 8: Contact With Background Image (Vera Style) ---- */
.vr-contact-bg {
  position:relative;
  min-height:620px;
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
  display:flex;
  align-items:center;
}
.vr-contact-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(105deg, rgba(10,22,35,.92) 0%, rgba(10,22,35,.78) 55%, rgba(10,22,35,.55) 100%);
}
.vr-contact-inner {
  position:relative;
  z-index:2;
  width:100%;
  max-width:1300px;
  margin:0 auto;
  padding:80px 6vw;
  display:grid;
  grid-template-columns:1fr 1.05fr;
  gap:60px;
  align-items:center;
}

/* Left text side */
.vr-contact-left { color:#ffffff; }
.vr-contact-eyebrow {
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.24em;
  font-size:10.5px;
  font-weight:700;
  margin:0 0 14px;
}
.vr-contact-heading {
  font:700 clamp(44px,6vw,88px)/.98 "Playfair Display",serif;
  color:#ffffff;
  margin:0 0 20px;
  letter-spacing:-.025em;
  line-height:1.05;
}
.vr-contact-dot { color:var(--gold); }
.vr-contact-sub {
  color:rgba(255,255,255,.75);
  font-size:15px;
  line-height:1.78;
  max-width:440px;
  margin:0 0 36px;
}
.vr-contact-details { display:flex; flex-direction:column; gap:14px; }
.vr-contact-detail-item {
  display:flex;
  align-items:center;
  gap:14px;
  color:rgba(255,255,255,.88);
  font-size:14.5px;
  font-weight:600;
  transition:color .25s;
}
.vr-contact-detail-item:hover { color:var(--gold); }
.vr-cd-icon {
  width:42px;
  height:42px;
  border-radius:50%;
  border:1.5px solid rgba(184,138,56,.5);
  background:rgba(184,138,56,.12);
  display:grid;
  place-items:center;
  color:var(--gold);
  flex-shrink:0;
  transition:background .25s, border-color .25s;
}
.vr-contact-detail-item:hover .vr-cd-icon { background:var(--gold); color:#ffffff; border-color:var(--gold); }

/* Right form panel */
.vr-contact-form-panel {
  background:#ffffff;
  border-radius:6px;
  padding:44px 40px;
  box-shadow:0 30px 80px rgba(0,0,0,.3);
}
.vr-contact-form-title {
  margin:0 0 28px;
  font:700 clamp(20px,2vw,28px)/1.2 "Playfair Display",serif;
  color:#162430;
  padding-bottom:16px;
  border-bottom:2px solid var(--gold);
}
/* Reuse existing enquiry-form styles inside this panel */
.vr-contact-form-panel .enquiry-form {
  padding:0;
  background:transparent;
}

/* ---- Section 9: Blog / News — Improved UI ---- */
.vr-blog { background:#ffffff; }
.vr-blog-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-bottom:52px;
}
.vr-blog-tag { color:var(--gold); text-transform:uppercase; letter-spacing:.24em; font-size:10.5px; font-weight:700; margin:0 0 12px; }
.vr-blog-heading h2 { margin:0; font:700 clamp(28px,4vw,50px)/1.1 "Playfair Display",serif; color:#162430; }
.vr-blog-all-link {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#162430;
  font-size:11.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  border-bottom:1.5px solid var(--gold);
  padding-bottom:4px;
  white-space:nowrap;
  transition:color .25s;
  flex-shrink:0;
}
.vr-blog-all-link:hover { color:var(--gold); }

/* 3-column blog grid */
.vr-blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }

/* Each blog card */
.vr-blog-card {
  display:flex;
  flex-direction:column;
  background:#ffffff;
  border:1px solid #e4dfd5;
  border-radius:6px;
  overflow:hidden;
  transition:transform .38s cubic-bezier(.22,.68,0,1.15),
             box-shadow .38s ease,
             border-color .32s ease;
}
.vr-blog-card:hover {
  transform:translateY(-8px);
  box-shadow:0 24px 60px rgba(0,0,0,.09);
  border-color:var(--gold);
}

/* Featured first card gets gold top border */
.vr-blog-card--featured { border-top:3px solid var(--gold); }

/* Thumbnail */
.vr-blog-thumb {
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:16/10;
}
.vr-blog-thumb img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .65s cubic-bezier(.25,.46,.45,.94);
}
.vr-blog-card:hover .vr-blog-thumb img { transform:scale(1.07); }
.vr-blog-thumb-overlay {
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(13,30,43,.55));
  opacity:0;
  transition:opacity .4s ease;
}
.vr-blog-card:hover .vr-blog-thumb-overlay { opacity:1; }

/* Tag badge */
.vr-blog-badge {
  position:absolute;
  top:14px;
  left:14px;
  background:#ffffff;
  color:var(--gold);
  font-size:9px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.16em;
  padding:5px 11px;
  border-radius:2px;
  border:1px solid rgba(184,138,56,.3);
  z-index:2;
  transition:background .25s, color .25s;
}
.vr-blog-card:hover .vr-blog-badge { background:var(--gold); color:#ffffff; }

/* Body */
.vr-blog-body {
  display:flex;
  flex-direction:column;
  flex:1;
  padding:26px 24px 30px;
}
.vr-blog-meta {
  display:flex;
  align-items:center;
  gap:6px;
  color:var(--gold);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin-bottom:12px;
}
.vr-blog-meta svg { color:var(--gold); flex-shrink:0; }
.vr-blog-dot { color:#cbd5e1; }
.vr-blog-body h3 {
  margin:0 0 10px;
  font:700 clamp(16px,1.6vw,20px)/1.3 "Playfair Display",serif;
}
.vr-blog-body h3 a { color:#162430; transition:color .25s ease; }
.vr-blog-card:hover .vr-blog-body h3 a { color:var(--gold); }
.vr-blog-body p {
  margin:0 0 20px;
  color:var(--muted);
  font-size:13.5px;
  line-height:1.72;
  flex:1;
}

/* Read More link */
.vr-blog-readmore {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#162430;
  font-size:11.5px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin-top:auto;
  padding-bottom:4px;
  border-bottom:1.5px solid #e2ddd3;
  width:fit-content;
  transition:color .25s ease, border-color .25s ease;
}
.vr-blog-readmore:hover,
.vr-blog-card:hover .vr-blog-readmore { color:var(--gold); border-color:var(--gold); }

/* ---- Responsive: Vera Sections ---- */
@media (max-width:1100px) {
  .vr-slide-bg-right { width:52%; clip-path:polygon(14% 0, 100% 0, 100% 100%, 0% 100%); -webkit-clip-path:polygon(14% 0, 100% 0, 100% 100%, 0% 100%); }
  .vr-slide-gold-cut::before { clip-path:polygon(13.2% 0, 14.2% 0, 0.8% 100%, 0% 100%); }
  .vr-hero-badge { top:115px; right:3vw; }
  .vr-dark-showcase { grid-template-columns:1fr 1fr; }
  .vr-dsc-center { display:none; }
  .vr-team-grid { grid-template-columns:repeat(2,1fr); }
  .vr-blog-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:900px) {
  /* 1. Hero Slider on Mobile/Tablet */
  .vr-hero { min-height:580px; height:100svh; }
  .vr-slide-bg-right { width:58%; clip-path:polygon(10% 0, 100% 0, 100% 100%, 0% 100%); -webkit-clip-path:polygon(10% 0, 100% 0, 100% 100%, 0% 100%); }
  .vr-slide-gold-cut::before { clip-path:polygon(9.2% 0, 10.2% 0, 0.8% 100%, 0% 100%); }
  .vr-slide-title { font-size:clamp(32px, 6vw, 56px); margin-bottom:12px; }
  .vr-slide-subhead { font-size:15px; margin-bottom:24px; }
  .vr-slide-action { gap:12px; }
  .vr-hero-badge { top:100px; right:3.5vw; }
  .vr-hb-inner { padding:12px 18px 14px; min-width:150px; }
  .vr-hb-title { font-size:14px; }
  .vr-hb-title-sub { font-size:18px; }
  .vr-hb-count { font-size:14px; }

  .vr-dots {
    left:5vw;
    bottom:24px;
    top:auto;
    transform:none;
    flex-direction:row;
    gap:8px;
  }
  .vr-dots button { width:20px; height:20px; }
  .vr-dots button span { width:7px; height:7px; }
  .vr-arrows { right:5vw; bottom:18px; gap:8px; }
  .vr-arrows button { width:42px; height:42px; font-size:16px; background:rgba(9,20,31,0.5); backdrop-filter:blur(6px); }
  .vr-scroll-cue { display:none; }

  /* 2. Stats */
  .vr-stats { padding:36px 6vw 0; }
  .vr-stats-grid { grid-template-columns:repeat(2,1fr); gap:16px; }

  /* 3. Legacy & Legacy Slider */
  .vr-legacy { grid-template-columns:1fr; gap:36px; padding:60px 6vw; }
  .vr-legacy-slider { aspect-ratio:16/11; min-height:280px; max-height:360px; }

  /* 4. Dark Showcase */
  .vr-dark-showcase { grid-template-columns:1fr; }
  .vr-dsc-center { min-height:260px; display:block; }
  .vr-dsc-panel { padding:45px 30px; }

  /* 5. Why Choose */
  .vr-why-grid { grid-template-columns:repeat(2,1fr); gap:20px; }

  /* 6. Team */
  .vr-team-grid { grid-template-columns:repeat(2,1fr); gap:20px; }

  /* 7. Projects */
  .vr-proj-grid { grid-template-columns:1fr; }
  .vr-proj-card { border-right:none !important; padding:28px 20px; }
  .vr-proj-img-wrap { width:230px; }

  /* 8. Contact */
  .vr-contact-inner { grid-template-columns:1fr; gap:36px; padding:60px 6vw; }
  .vr-contact-bg { background-attachment:scroll; }

  /* 9. Blog */
  .vr-blog-grid { grid-template-columns:repeat(2,1fr); gap:20px; }
  .vr-blog-heading { flex-direction:column; align-items:flex-start; gap:16px; }

  /* 10. Vision Mission Luxury Showcase */
  .vmp-luxury-section { padding:70px 5vw; }
  .vmp-grid { grid-template-columns:1fr; gap:24px; }
  .vmp-card { padding:30px 24px; }
}

@media (max-width:640px) {
  /* Hero on Mobile */
  .vr-hero { min-height:540px; }
  .vr-slide-bg-right { width:100%; height:55%; top:auto; bottom:0; clip-path:polygon(0 14%, 100% 0, 100% 100%, 0% 100%); -webkit-clip-path:polygon(0 14%, 100% 0, 100% 100%, 0% 100%); }
  .vr-slide-gold-cut::before { clip-path:polygon(0 13.2%, 100% 0, 100% 2%, 0% 15.2%); }
  .vr-slide-title { font-size:clamp(28px,8.5vw,42px); margin-bottom:10px; }
  .vr-slide-subhead { font-size:13.5px; margin-bottom:22px; max-width:90vw; }
  .vr-btn-gold { height:46px; padding:0 30px; font-size:12px; }
  .vr-btn-outline { height:46px; padding:0 26px; font-size:12px; }
  .vr-slide-action { flex-direction:column; gap:10px; }
  .vr-hero-badge { top:86px; right:3.5vw; }
  .vr-hb-inner { padding:8px 12px 10px; min-width:130px; }
  .vr-hb-title { font-size:12px; }
  .vr-hb-title-sub { font-size:15px; margin-top:2px; }
  .vr-hb-sep { width:35px; margin:5px auto; }
  .vr-hb-desc { font-size:7px; }
  .vr-hb-count { font-size:12px; margin-top:2px; }

  .vr-dots { left:5vw; bottom:20px; }
  .vr-arrows { right:5vw; bottom:14px; }
  .vr-arrows button { width:38px; height:38px; font-size:15px; }

  /* Stats */
  .vr-stats { padding:28px 5vw 0; }
  .vr-stats-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .vr-stat-box { padding:18px 12px 20px; }
  .vr-stat-box strong { font-size:clamp(28px,7vw,40px); }
  .vr-stat-box sup { font-size:16px; }
  .vr-stat-box span { font-size:8.5px; letter-spacing:.1em; margin-top:8px; }

  /* Legacy */
  .vr-legacy { padding:50px 5vw; gap:28px; }
  .vr-legacy-title { font-size:clamp(38px,11vw,64px); margin-bottom:8px; }
  .vr-legacy-years strong { font-size:clamp(32px,8vw,52px); }
  .vr-legacy-years span { font-size:14px; }
  .vr-legacy-slider { aspect-ratio:16/11; min-height:240px; }
  .vr-ls-prev, .vr-ls-next { width:38px; height:38px; font-size:20px; }
  .vr-ls-label { font-size:13.5px; padding:12px 16px; }

  /* Showcase */
  .vr-dsc-panel { padding:36px 20px; }
  .vr-dsc-icon { width:56px; height:56px; }
  .vr-dsc-panel h3 { font-size:22px; }

  /* Why Choose */
  .vr-why-grid { grid-template-columns:1fr; gap:16px; }
  .vr-why-card { padding:28px 20px; }
  .vr-why-icon { width:56px; height:56px; }

  /* Experience CTA Banner */
  .vr-exp-cta { padding:65px 16px; }
  .vr-exp-cta-container { padding:30px 18px 32px; border-radius:10px; }
  .vr-exp-cta-title { font-size:22px; line-height:1.28; }
  .vr-exp-cta-desc { font-size:13.5px; margin-bottom:20px; }
  .vr-exp-cta-features { gap:8px 8px; margin-bottom:22px; }
  .vr-exp-feat { font-size:11px; padding:5px 10px; }
  .vr-exp-cta-actions { flex-direction:column; width:100%; }
  .vr-exp-cta-btn, .vr-exp-cta-btn-alt { width:100%; max-width:320px; padding:13px 18px; font-size:13.5px; }

  /* Team */
  .vr-team-grid { grid-template-columns:repeat(2,1fr); gap:14px; }
  .vr-team-card { padding:28px 14px 22px; }
  .vr-team-photo-wrap { width:105px; height:105px; margin-bottom:18px; }
  .vr-team-photo { width:105px; height:105px; }
  .vr-team-photo-ring { inset:-5px; }
  .vr-team-info h3 { font-size:15px; }
  .vr-team-role { font-size:8.5px; }
  .vr-team-quote { font-size:12px; }
  .vr-team-socials a { width:30px; height:30px; }

  /* Projects */
  .vr-proj-card { flex-direction:column; gap:16px; padding:22px 14px; }
  .vr-proj-img-wrap { width:100%; min-height:210px; }
  .vr-proj-content { padding:0; }
  .vr-proj-name { font-size:20px; }
  .vr-proj-viewall { width:100%; justify-content:center; }

  /* Contact */
  .vr-contact-inner { padding:50px 5vw; }
  .vr-contact-heading { font-size:clamp(36px,10vw,60px); }
  .vr-contact-form-panel { padding:26px 18px; }
  .vr-contact-form-title { font-size:20px; }

  /* Blog */
  .vr-blog-grid { grid-template-columns:1fr; gap:20px; }
  .vr-blog-body { padding:20px 16px 24px; }
  .vr-blog-body h3 { font-size:18px; }

  /* Vision Mission Luxury */
  .vmp-luxury-section { padding:55px 4vw; }
  .vmp-card { padding:24px 18px; }
  .vmp-icon-row { gap:12px; }
  .vmp-icon-wrap { width:46px; height:46px; }
  .vmp-icon { width:46px; height:46px; }
  .vmp-card-title { font-size:17px; }
  .vmp-quote { font-size:12px; padding:9px 11px; }
}

@media (max-width:380px) {
  .mobile-quick-contacts { grid-template-columns: 1fr; }
  .vr-team-grid { grid-template-columns:1fr; }
  .vr-team-photo-wrap { width:120px; height:120px; }
  .vr-team-photo { width:120px; height:120px; }
}

