/* Raum Realty v14 — premium polish layer */
:root {
  --rr-v14-ink: #0b0f14;
  --rr-v14-gold: #b8873f;
  --rr-v14-gold-bright: #d4ad69;
  --rr-v14-ivory: #f6f2e9;
  --rr-v14-line: rgba(11,15,20,.11);
  --rr-v14-ease: cubic-bezier(.2,.72,.2,1);
}

/* Accessibility and tactile quality */
body.raum-realty-divi-site { overflow-x:hidden; }
body.raum-realty-divi-site a,
body.raum-realty-divi-site button,
body.raum-realty-divi-site input,
body.raum-realty-divi-site textarea,
body.raum-realty-divi-site select { -webkit-tap-highlight-color:transparent; }
body.raum-realty-divi-site a:focus-visible,
body.raum-realty-divi-site button:focus-visible,
body.raum-realty-divi-site input:focus-visible,
body.raum-realty-divi-site textarea:focus-visible,
body.raum-realty-divi-site select:focus-visible {
  outline:2px solid var(--rr-v14-gold-bright) !important;
  outline-offset:3px;
}

/* Navigation: subtle page progress + better premium restraint */
#rr-global-header.rr-global-header--direct {
  box-shadow:0 1px 0 rgba(11,15,20,.04);
}
#rr-global-header.rr-global-header--direct::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:1px;
  background:linear-gradient(90deg, transparent, var(--rr-v14-gold-bright) 8%, var(--rr-v14-gold-bright) 92%, transparent);
  transform:scaleX(var(--rr-page-progress, 0));
  transform-origin:left;
  pointer-events:none;
  opacity:.8;
}
#rr-global-header .rr-direct-menu a { position:relative; }
#rr-global-header .rr-direct-menu a::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:22px;
  height:1px;
  background:var(--rr-v14-gold);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .28s ease;
}
#rr-global-header .rr-direct-menu a:hover::after,
#rr-global-header .rr-direct-menu .current-menu-item > a::after,
#rr-global-header .rr-direct-menu .current_page_item > a::after { transform:scaleX(1); }
#rr-global-header .rr-direct-header-cta { transition:background .28s ease,color .28s ease,transform .28s ease !important; }
#rr-global-header .rr-direct-header-cta:hover { transform:translateY(-1px); }

/* Signature hero: cinematic architectural reveal without scroll hijacking */
.rr-signature-hero { position:relative; isolation:isolate; }
.rr-signature-hero::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.22;
  background:
    linear-gradient(rgba(212,173,105,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,173,105,.07) 1px, transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(90deg, #000 0%, #000 48%, transparent 86%);
}
.rr-cinematic-media { position:relative; isolation:isolate; }
.rr-cinematic-media::before {
  content:"";
  position:absolute;
  z-index:4;
  inset:0;
  pointer-events:none;
  border:1px solid rgba(212,173,105,.24);
  transform:translate(10px,10px);
  opacity:.62;
}
.rr-cinematic-media::after {
  content:"";
  position:absolute;
  z-index:3;
  top:0; bottom:0;
  left:-42%;
  width:34%;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,245,222,.17),transparent);
  transform:skewX(-14deg);
  animation:rrV14HeroSweep 1.55s var(--rr-v14-ease) .65s 1 both;
}
.rr-motion-ready .rr-v13-hero-image img {
  animation:rrV14HeroSettle 1.7s var(--rr-v14-ease) .12s 1 both;
}
@keyframes rrV14HeroSweep { from{left:-42%;opacity:0} 35%{opacity:.75} to{left:120%;opacity:0} }
@keyframes rrV14HeroSettle { from{transform:scale(1.085);filter:saturate(.74) brightness(.78)} to{transform:scale(1.025);filter:saturate(.96) brightness(.94)} }

/* Proof strip: numbers are proof, not decoration */
.rr-proof-item strong.rr-count { min-width:56px; font-variant-numeric:tabular-nums; }
.rr-proof-strip.rr-in-view .rr-proof-item { animation:rrV14ProofLift .7s var(--rr-v14-ease) both; }
.rr-proof-strip.rr-in-view .et_pb_column:nth-child(2) .rr-proof-item { animation-delay:.08s; }
.rr-proof-strip.rr-in-view .et_pb_column:nth-child(3) .rr-proof-item { animation-delay:.16s; }
@keyframes rrV14ProofLift { from{transform:translateY(12px);opacity:.45} to{transform:none;opacity:1} }

/* Projects: gallery-level presentation */
.rr-project-editorial-grid { gap:34px !important; }
.rr-project-editorial-card {
  position:relative;
  border:0 !important;
  box-shadow:0 26px 80px rgba(11,15,20,.09) !important;
  transition:transform .5s var(--rr-v14-ease),box-shadow .5s var(--rr-v14-ease) !important;
}
.rr-project-editorial-card::after {
  content:"";
  position:absolute;
  z-index:5;
  inset:0;
  pointer-events:none;
  background:var(--rr-v14-ivory);
  transform:scaleX(1);
  transform-origin:right;
  transition:transform .9s var(--rr-v14-ease);
}
.rr-project-editorial-card.rr-visible::after { transform:scaleX(0); }
.rr-project-editorial-grid > .et_pb_column:nth-child(even).rr-visible::after { transition-delay:.10s; }
.rr-project-editorial-card:hover {
  transform:translateY(-7px) !important;
  box-shadow:0 34px 96px rgba(11,15,20,.15) !important;
}
.rr-project-editorial-card .rr-project-image .et_pb_image_wrap { aspect-ratio:16/10 !important; }
.rr-project-editorial-copy { position:relative; }
.rr-project-editorial-copy::after {
  content:"";
  position:absolute;
  left:30px; right:30px; bottom:18px;
  height:1px;
  background:linear-gradient(90deg,var(--rr-v14-gold),transparent 72%);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .45s ease;
}
.rr-project-editorial-card:hover .rr-project-editorial-copy::after { transform:scaleX(1); }

/* Signature system: Technology -> Network -> Closing */
.rr-signature-system { position:relative; }
.rr-signature-system::after {
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--rr-v14-gold-bright),transparent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 1.4s var(--rr-v14-ease);
}
.rr-signature-system.rr-in-view::after { transform:scaleX(1); }
.rr-signature-system .rr-advantage-step {
  overflow:hidden;
  transition:background .45s ease,transform .45s var(--rr-v14-ease) !important;
}
.rr-signature-system .rr-advantage-step::after {
  content:"";
  position:absolute;
  width:150px;height:150px;
  right:-65px;bottom:-75px;
  border:1px solid rgba(212,173,105,.18);
  border-radius:50%;
  transform:scale(.55);
  opacity:0;
  transition:transform .7s var(--rr-v14-ease),opacity .7s ease;
}
.rr-signature-system.rr-in-view .rr-advantage-step::after { transform:scale(1);opacity:1; }
.rr-signature-system.rr-in-view .et_pb_column:nth-child(2) .rr-advantage-step::after { transition-delay:.14s; }
.rr-signature-system.rr-in-view .et_pb_column:nth-child(3) .rr-advantage-step::after { transition-delay:.28s; }
.rr-signature-system .rr-advantage-step:hover { background:rgba(255,255,255,.035);transform:translateY(-3px); }

/* Network lines carry the signal through Pakistan */
.rr-network-map-shell .rr-network-lines path {
  stroke-dasharray:8 10;
  animation:rrV14NetworkFlow 5s linear infinite;
}
.rr-network-map-shell .rr-network-nodes circle { transform-box:fill-box; transform-origin:center; }
.rr-v13-network.rr-in-view .rr-network-nodes circle { animation:rrV14NodePulse 2.6s ease-in-out infinite; }
.rr-v13-network.rr-in-view .rr-network-nodes g:nth-child(2) circle { animation-delay:.2s; }
.rr-v13-network.rr-in-view .rr-network-nodes g:nth-child(3) circle { animation-delay:.4s; }
.rr-v13-network.rr-in-view .rr-network-nodes g:nth-child(4) circle { animation-delay:.6s; }
@keyframes rrV14NetworkFlow { to{stroke-dashoffset:-72} }
@keyframes rrV14NodePulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.45)} }

/* Execution line: a single gold signal moves from Lead to Book */
.rr-execution-line::after {
  content:"";
  position:absolute;
  left:7.5%; top:41px;
  width:85%; height:2px;
  background:linear-gradient(90deg,var(--rr-v14-gold),var(--rr-v14-gold-bright));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 1.35s var(--rr-v14-ease) .12s;
  z-index:1;
}
.rr-v13-sales-process.rr-in-view .rr-execution-line::after { transform:scaleX(1); }
.rr-v13-sales-process.rr-in-view .rr-sales-stage::before {
  transition:background .32s ease,box-shadow .32s ease,transform .32s var(--rr-v14-ease);
}
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(1) .rr-sales-stage::before { transition-delay:.12s; }
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(2) .rr-sales-stage::before { transition-delay:.30s; }
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(3) .rr-sales-stage::before { transition-delay:.48s; }
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(4) .rr-sales-stage::before { transition-delay:.66s; }
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(5) .rr-sales-stage::before { transition-delay:.84s; }
.rr-v13-sales-process.rr-in-view .et_pb_column:nth-child(6) .rr-sales-stage::before { transition-delay:1.02s; }
.rr-v13-sales-process.rr-in-view .rr-sales-stage::before {
  background:var(--rr-v14-gold-bright);
  box-shadow:0 0 0 7px rgba(184,135,63,.10);
  transform:scale(1.08);
}

/* Buttons feel deliberate, not template-like */
.rr-button { position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,color .28s ease,background .28s ease !important; }
.rr-button::after {
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.16) 46%,transparent 70%);
  transform:translateX(-140%);
  transition:transform .65s var(--rr-v14-ease);
}
.rr-button:hover { transform:translateY(-2px); }
.rr-button:hover::after { transform:translateX(140%); }

/* Forms: calm and expensive */
.rr-contact-form input,
.rr-contact-form textarea,
.rr-contact-form select { transition:border-color .25s ease,box-shadow .25s ease,background .25s ease; }
.rr-contact-form input:focus,
.rr-contact-form textarea:focus,
.rr-contact-form select:focus {
  border-color:rgba(184,135,63,.72) !important;
  box-shadow:0 0 0 4px rgba(184,135,63,.08) !important;
  background:#fff !important;
}
.rr-contact-form .et_pb_contact_submit { transition:transform .28s ease,background .28s ease !important; }
.rr-contact-form .et_pb_contact_submit:hover { transform:translateY(-2px);background:#1a2028 !important; }

/* Premium footer */
.rr-footer-v14 { position:relative;overflow:hidden;background:#080b0f !important;padding:84px 0 28px !important; }
.rr-footer-v14::before {
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--rr-v14-gold-bright),transparent);
}
.rr-footer-v14::after {
  content:"";position:absolute;right:-140px;top:-170px;width:420px;height:420px;border:1px solid rgba(212,173,105,.08);border-radius:50%;pointer-events:none;
}
.rr-footer-grid--premium { display:grid !important;grid-template-columns:2fr 1fr 1.1fr;gap:clamp(36px,6vw,96px) !important;align-items:start; }
.rr-footer-grid--premium > .et_pb_column { float:none !important;width:auto !important;margin:0 !important; }
.rr-footer-kicker { color:var(--rr-v14-gold-bright) !important;font-size:10px !important;letter-spacing:.24em;text-transform:uppercase;font-weight:700;margin-bottom:20px !important; }
.rr-footer-brand-copy h2 { color:#fff !important;font-size:clamp(2.35rem,4vw,4.4rem) !important;line-height:.97 !important;max-width:620px;margin-bottom:24px; }
.rr-footer-brand-copy > div > p:not(.rr-footer-kicker):not(.rr-footer-address) { color:rgba(255,255,255,.54);max-width:420px;font-size:13px; }
.rr-footer-address { margin-top:26px !important; }
.rr-footer-address a { color:rgba(255,255,255,.68) !important;font-size:12px;line-height:1.6; }
.rr-footer-links a { position:relative;display:inline-block;color:rgba(255,255,255,.66) !important;line-height:2.15 !important;transition:color .24s ease,transform .24s ease; }
.rr-footer-links a:hover { color:#fff !important;transform:translateX(3px); }
.rr-footer-contact .rr-footer-cta { margin-top:24px !important; }
.rr-footer-contact .rr-footer-cta a { color:var(--rr-v14-gold-bright) !important;font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase; }
.rr-footer-contact .rr-footer-cta span { display:inline-block;transition:transform .25s ease; }
.rr-footer-contact .rr-footer-cta a:hover span { transform:translate(3px,-3px); }
.rr-footer-bottom { margin-top:70px !important;padding-top:20px !important;border-top:1px solid rgba(255,255,255,.09) !important; }
.rr-footer-bottom p { color:rgba(255,255,255,.32) !important;font-size:10px !important;letter-spacing:.08em;text-transform:uppercase; }

@media (max-width:980px) {
  #rr-global-header .rr-direct-menu a::after { display:none; }
  .rr-cinematic-media::before { transform:translate(6px,6px); }
  .rr-footer-grid--premium { grid-template-columns:1.4fr 1fr 1fr;gap:34px !important; }
}

@media (max-width:767px) {
  .rr-signature-hero::before { background-size:40px 40px;opacity:.15; }
  .rr-cinematic-media::after { display:none; }
  .rr-project-editorial-grid { gap:16px !important; }
  .rr-project-editorial-card::after { display:none; }
  .rr-project-editorial-card:hover { transform:none !important; }
  .rr-execution-line::after { display:none; }
  .rr-v13-sales-process.rr-in-view .rr-sales-stage::before { transform:none;box-shadow:none; }
  .rr-network-map-shell .rr-network-lines path { animation-duration:7s; }
  .rr-footer-v14 { padding:66px 0 90px !important; }
  .rr-footer-grid--premium { grid-template-columns:1fr;gap:34px !important; }
  .rr-footer-brand-copy h2 { font-size:clamp(2.5rem,12vw,3.8rem) !important; }
  .rr-footer-bottom { margin-top:44px !important; }
}

@media (prefers-reduced-motion: reduce) {
  #rr-global-header.rr-global-header--direct::after,
  .rr-cinematic-media::after,
  .rr-motion-ready .rr-v13-hero-image img,
  .rr-proof-strip.rr-in-view .rr-proof-item,
  .rr-network-map-shell .rr-network-lines path,
  .rr-v13-network.rr-in-view .rr-network-nodes circle,
  .rr-project-editorial-card::after,
  .rr-execution-line::after,
  .rr-button::after { animation:none !important;transition:none !important; }
  .rr-project-editorial-card::after { display:none; }
  .rr-execution-line::after { transform:scaleX(1); }
}
