:root{
  --bg:#0b0b0a;--bg2:#11110f;--panel:#171714;--panel2:#1e1d19;
  --ivory:#f5f0e7;--paper:#ece6da;--muted:#aaa397;--gold:#b89a68;--gold2:#d1b684;
  --line:rgba(245,240,231,.12);--max:1240px;--radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ivory);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(var(--max),calc(100% - 44px));margin:auto}
.site-header{position:sticky;top:0;z-index:40;background:rgba(11,11,10,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}.header-row{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.15em;font-size:14px}.brand-mark{width:38px;height:38px;border:1px solid rgba(245,240,231,.75);border-radius:50%;display:grid;place-items:center;font-size:11px;color:var(--ivory)}.nav{display:flex;gap:28px;font-size:13px;color:#c9c3b8}.nav a{padding:28px 0 25px;border-bottom:1px solid transparent}.nav a:hover{color:#fff;border-bottom-color:var(--gold)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 18px;border:1px solid var(--gold);background:var(--gold);color:#111;font-weight:800;font-size:13px}.btn.secondary{background:transparent;color:var(--ivory);border-color:rgba(245,240,231,.34)}.mobile-toggle{display:none;background:none;border:0;color:#fff;font-size:26px}
.hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 82% 18%,rgba(184,154,104,.14),transparent 24%),linear-gradient(125deg,#0a0a09 0%,#11110f 62%,#181612 100%)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.055) 50%,transparent 50.3%),linear-gradient(0deg,transparent 69.7%,rgba(255,255,255,.04) 70%,transparent 70.3%);opacity:.55;pointer-events:none}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:end;padding:88px 0 74px}.hero-copy{max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.24em;font-size:10px;font-weight:800;color:var(--gold2)}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,5vw,68px);font-weight:400;line-height:1.02;letter-spacing:-.025em;margin:18px 0 22px;max-width:700px}.hero p{font-size:16px;line-height:1.72;color:#bbb4a9;max-width:600px;margin:0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-aside{display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-end}.hero-card{width:min(100%,430px);padding:30px;border:1px solid rgba(245,240,231,.14);background:rgba(255,255,255,.035);backdrop-filter:blur(12px);border-radius:24px}.hero-card .kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);margin-bottom:14px}.hero-card h2{font-family:Georgia,serif;font-size:30px;line-height:1.12;font-weight:400;margin:0 0 26px}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{padding:15px 12px;border-top:1px solid var(--line)}.metric strong{display:block;font-size:18px;margin-bottom:5px}.metric span{display:block;color:#969086;font-size:11px;line-height:1.45}
.search-band{position:relative;z-index:5;margin-top:-24px}.quick-search{background:#f3eee4;color:#1b1b18;border-radius:18px;padding:14px;display:grid;grid-template-columns:1.05fr 1.05fr 1.25fr 1fr auto;gap:9px;box-shadow:0 18px 50px rgba(0,0,0,.3)}.quick-search select,.quick-search input{width:100%;border:1px solid #d4ccbd;border-radius:11px;padding:13px 13px;background:#fffaf2;font:inherit;color:#26231e}.quick-search .btn{border-radius:11px;padding-inline:22px}
.section{padding:92px 0}.section.soft{background:#ede7db;color:#181714}.section.dark{background:#0f0f0d;color:var(--ivory)}.section-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:end;margin-bottom:36px}.section-head h2{font-family:Georgia,serif;font-size:42px;line-height:1.08;font-weight:400;margin:8px 0}.section-head p{max-width:590px;margin:0;color:#746f67;line-height:1.75}.dark .section-head p{color:#aaa397}.property-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.property-card{background:#151512;border:1px solid rgba(245,240,231,.09);border-radius:18px;overflow:hidden;transition:.2s transform,.2s border-color}.property-card:hover{transform:translateY(-4px);border-color:rgba(184,154,104,.55)}.soft .property-card{background:#f8f3ea;color:#171714;border-color:#d9d0c2}.property-image{aspect-ratio:4/3;background:#24231f;position:relative;overflow:hidden}.property-image img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;left:14px;top:14px;background:#111;color:#f3eee4;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.property-body{padding:18px}.property-title{font-family:Georgia,serif;font-size:20px;font-weight:400;line-height:1.25;margin:0 0 8px}.property-location{font-size:12px;color:#9f988d;margin-bottom:14px}.soft .property-location{color:#766f64}.property-price{font-size:20px;font-weight:800}.property-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:13px;color:#aaa397;font-size:11px}.soft .property-meta{color:#6f695f}
.split-showcase{display:grid;grid-template-columns:1fr 1fr;gap:20px}.showcase-card{min-height:360px;border-radius:24px;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid rgba(255,255,255,.08);background:linear-gradient(145deg,#171714,#222019)}.showcase-card.light{background:#f6f1e8;color:#181714;border-color:#d7cebf}.showcase-num{font-size:11px;letter-spacing:.18em;color:var(--gold2);text-transform:uppercase}.showcase-card h3{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:10px 0 12px}.showcase-card p{max-width:500px;color:#a9a397;line-height:1.7}.showcase-card.light p{color:#6d675e}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step{border-top:1px solid rgba(245,240,231,.16);padding-top:20px}.step span{color:var(--gold2);font-size:11px;letter-spacing:.14em}.step h3{font-size:18px;margin:10px 0}.step p{color:#9e988f;line-height:1.65;font-size:14px}.cta-band{border:1px solid rgba(184,154,104,.32);border-radius:24px;padding:44px;background:linear-gradient(120deg,#171612,#211e18);display:flex;justify-content:space-between;align-items:center;gap:28px}.cta-band h2{font-family:Georgia,serif;font-size:36px;font-weight:400;margin:0}.cta-band p{color:#aaa397;max-width:600px}
.empty{padding:54px 24px;border:1px dashed rgba(245,240,231,.18);border-radius:18px;text-align:center;color:#aaa397;background:#141411}.soft .empty{background:#f8f3ea;color:#6d675e;border-color:#cfc5b5}.filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:25px 0 30px}.filters input,.filters select,.form input,.form textarea,.form select{width:100%;padding:13px 14px;border:1px solid #d8d8d5;border-radius:12px;background:#fff;font:inherit}.page-hero{padding:70px 0 36px;background:#ece6da;color:#181714}.page-hero h1{font-family:Georgia,serif;font-size:48px;font-weight:400;margin:10px 0}.page-hero p{color:#68635b;max-width:720px;line-height:1.7}.detail-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:34px}.gallery-main{border-radius:18px;overflow:hidden;background:#24231f;aspect-ratio:4/3}.gallery-main img{width:100%;height:100%;object-fit:cover}.thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}.thumb{aspect-ratio:4/3;border-radius:10px;overflow:hidden;background:#24231f;border:0;padding:0;cursor:pointer}.thumb img{width:100%;height:100%;object-fit:cover}.detail-panel{position:sticky;top:100px;align-self:start;border:1px solid rgba(245,240,231,.12);border-radius:20px;padding:26px;background:#151512}.detail-panel h1{font-family:Georgia,serif;font-size:36px;font-weight:400;margin:8px 0 12px}.detail-price{font-size:30px;font-weight:800;margin:18px 0}.detail-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.detail-meta div{padding:13px;border-radius:12px;background:#1f1f1b}.detail-meta small{display:block;color:#918b82}.prose{line-height:1.8;color:#aaa397}.form{display:grid;gap:14px}.form textarea{min-height:140px;resize:vertical}.footer{background:#080807;color:#fff;padding:58px 0 24px;border-top:1px solid rgba(255,255,255,.06)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:30px}.footer p,.footer a{color:#938e86;line-height:1.7}.footer-bottom{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:#6f6a63;font-size:12px}.notice{padding:13px 15px;border-radius:12px;background:#1a1916;color:#aaa397;font-size:13px;margin:14px 0}.loading{min-height:180px;display:grid;place-items:center;color:#918b82}.search-summary{font-size:13px;color:#8e887f;margin:-10px 0 24px}
@media(max-width:980px){.hero-inner{grid-template-columns:1fr;align-items:start}.hero-aside{align-items:flex-start}.hero-card{width:100%}.quick-search{grid-template-columns:1fr 1fr}.section-head{grid-template-columns:1fr}.split-showcase{grid-template-columns:1fr}}
@media(max-width:900px){.nav{display:none}.mobile-toggle{display:block}.header-cta{display:none}.detail-wrap,.footer-grid{grid-template-columns:1fr}.property-grid,.steps{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.detail-panel{position:static}}
@media(max-width:600px){.container{width:min(var(--max),calc(100% - 28px))}.hero{min-height:auto}.hero-inner{padding:58px 0 48px;gap:38px}.hero h1{font-size:42px}.metric-row{grid-template-columns:1fr}.quick-search{grid-template-columns:1fr}.section{padding:64px 0}.property-grid,.steps,.filters{grid-template-columns:1fr}.page-hero h1{font-size:40px}.cta-band{display:block}.cta-band .btn{margin-top:18px}.thumbs{grid-template-columns:repeat(4,1fr)}}

/* === NASR AQARAT v0.7 — cinematic motion homepage === */
body{background:#090909;color:#f3eee7}
.site-header{background:rgba(8,8,8,.84)!important;border-bottom:1px solid rgba(204,166,107,.12)!important;color:#f4efe8}
.brand-mark{background:transparent!important;border-color:rgba(255,255,255,.55)!important;color:#fff!important}
.nav{color:#c8c1b8!important}
.nav a:after{background:#caa66d!important}
.header-cta{background:#caa66d!important;color:#111!important;border-color:#caa66d!important}
.cinematic-hero{position:relative;min-height:calc(100vh - 72px);overflow:hidden;background:#070707;border-bottom:1px solid rgba(202,166,109,.12)}
.cinematic-bg{position:absolute;inset:0;overflow:hidden}
.grid-lines{position:absolute;inset:0;background:
linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
background-size:120px 120px;mask-image:linear-gradient(to bottom,transparent 2%,#000 24%,#000 80%,transparent)}
.orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.33;will-change:transform}
.orb-a{width:48vw;height:48vw;right:-12vw;top:-12vw;background:radial-gradient(circle at 35% 35%,rgba(202,166,109,.55),rgba(63,46,30,.13) 45%,transparent 68%)}
.orb-b{width:38vw;height:38vw;left:-18vw;bottom:-14vw;background:radial-gradient(circle,rgba(138,106,67,.23),transparent 68%)}
.cinematic-inner{position:relative;z-index:2;min-height:calc(100vh - 72px);display:flex;flex-direction:column;justify-content:center;padding:70px 0 42px}
.hero-topline,.hero-kicker,.micro{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#caa66d;font-weight:800}
.hero-stage{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.72fr);gap:72px;align-items:center;margin-top:28px}
.cinematic-title{font-family:Georgia,serif;font-size:clamp(58px,7.2vw,112px);line-height:.88;letter-spacing:-.045em;font-weight:400;margin:16px 0 28px;max-width:850px}
.title-line{display:block;overflow:hidden;padding-bottom:.08em}
.title-line>span{display:block;transform:translateY(110%);opacity:0;animation:titleRise 1.05s cubic-bezier(.22,1,.36,1) forwards}
.title-line:nth-child(2)>span{animation-delay:.12s}
.title-line:nth-child(3)>span{animation-delay:.24s}
.accent-line{color:#caa66d;font-style:italic}
@keyframes titleRise{to{transform:translateY(0);opacity:1}}
.cinematic-lead{max-width:660px;font-size:18px;line-height:1.75;color:#bdb5aa}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.btn.gold{background:#caa66d;color:#111;border-color:#caa66d}
.btn.ghost{background:transparent;color:#eee;border-color:rgba(255,255,255,.28)}
.hero-portal{perspective:1100px}
.portal-frame{position:relative;min-height:470px;border:1px solid rgba(255,255,255,.13);border-radius:28px;padding:34px;background:linear-gradient(160deg,rgba(36,31,27,.9),rgba(13,13,13,.92));box-shadow:0 30px 80px rgba(0,0,0,.36);overflow:hidden;transform-style:preserve-3d}
.portal-glow{position:absolute;width:320px;height:320px;border-radius:50%;right:-90px;top:-100px;background:radial-gradient(circle,rgba(202,166,109,.26),transparent 70%)}
.portal-label{font-size:10px;letter-spacing:.22em;color:#caa66d;position:relative}
.portal-copy{position:absolute;left:34px;right:34px;bottom:150px}
.portal-index{font-family:Georgia,serif;color:#7d6a50;font-size:74px;line-height:1}
.portal-copy h2{font-family:Georgia,serif;font-size:38px;line-height:1.05;font-weight:400;margin:8px 0 12px}
.portal-copy p{color:#9f978c;margin:0}
.portal-metrics{position:absolute;left:34px;right:34px;bottom:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid rgba(255,255,255,.12);padding-top:18px}
.portal-metrics b{display:block;font-size:17px}.portal-metrics span{font-size:11px;color:#8f887f}
.scroll-cue{position:absolute;right:0;bottom:24px;display:flex;align-items:center;gap:10px;color:#777;font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.scroll-cue i{width:44px;height:1px;background:#caa66d;animation:pulseLine 1.6s ease-in-out infinite}
@keyframes pulseLine{0%,100%{transform:scaleX(.35);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}}
.marquee-band{overflow:hidden;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);background:#0d0d0d;padding:17px 0}
.marquee-track{width:max-content;display:flex;gap:28px;align-items:center;animation:marquee 22s linear infinite;color:#c3bbb0;font-size:12px;letter-spacing:.22em;font-weight:700}
.marquee-track i{color:#caa66d;font-style:normal}
@keyframes marquee{to{transform:translateX(-50%)}}
.search-scene{padding:100px 0;background:#efe9df;color:#161411}
.section-intro span{color:#8b7049;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:800}
.section-intro h2{font-family:Georgia,serif;font-size:clamp(38px,4vw,64px);font-weight:400;line-height:1.03;max-width:720px;margin:12px 0 34px}
.motion-search{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:12px;padding:16px;border:1px solid #d1c8ba;border-radius:20px;background:#f8f4ed;box-shadow:0 25px 70px rgba(73,55,30,.08)}
.motion-search label span{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#826d4f;margin:0 0 6px 4px}
.motion-search input,.motion-search select{width:100%;border:0;border-bottom:1px solid #d4cabb;background:transparent;padding:11px 4px;font:inherit;color:#1a1713;outline:0}
.featured-scene{padding:110px 0;background:#0a0a0a}
.featured-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}
.featured-heading h2{font-family:Georgia,serif;font-size:clamp(40px,4.3vw,68px);font-weight:400;margin:10px 0 0}
.featured-heading p{max-width:440px;color:#918a80;line-height:1.7}
.cinematic-grid .property-card{background:#121212;border-color:#28241f;color:#eee}
.cinematic-grid .property-location,.cinematic-grid .property-meta{color:#918a80}
.sticky-story{padding:120px 0;background:#13110f;color:#f5f0e8}
.sticky-wrap{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start}
.sticky-copy{position:sticky;top:120px}
.sticky-copy h2{font-family:Georgia,serif;font-size:58px;font-weight:400;line-height:1.02;margin:14px 0 22px}
.sticky-copy p{color:#a39b90;line-height:1.75;font-size:17px}
.story-cards{display:grid;gap:22px}
.story-card{min-height:270px;padding:34px;border-radius:24px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(145deg,#181614,#0f0e0d);display:flex;flex-direction:column;justify-content:flex-end}
.story-card span{color:#caa66d;font-family:Georgia,serif;font-size:42px}.story-card h3{font-size:26px;margin:10px 0}.story-card p{color:#978f84;max-width:520px}
.final-scene{min-height:78vh;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 15%,#2a2118,#080808 62%);padding:90px 0}
.final-inner{max-width:900px}.final-inner h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(48px,6vw,92px);line-height:.98;margin:20px 0 30px}
.reveal-up{opacity:0;transform:translateY(42px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.reveal-right{opacity:0;transform:translateX(54px);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1)}
.reveal-up.visible,.reveal-right.visible{opacity:1;transform:none}
@media(max-width:980px){.hero-stage,.sticky-wrap{grid-template-columns:1fr}.hero-portal{max-width:620px}.motion-search{grid-template-columns:1fr 1fr}.sticky-copy{position:static}.featured-heading{display:block}}
@media(max-width:640px){.cinematic-title{font-size:54px}.cinematic-inner{padding-top:45px}.hero-stage{gap:34px}.portal-frame{min-height:400px}.motion-search{grid-template-columns:1fr}.featured-heading h2{font-size:45px}.sticky-copy h2{font-size:44px}.final-inner h2{font-size:50px}.scroll-cue{display:none}}


/* === v0.7.1 refinement: compact search section === */
.search-scene{
  padding:72px 0 78px !important;
}
.section-intro{
  max-width:760px;
  margin-bottom:28px;
}
.section-intro span{
  font-size:10px !important;
  letter-spacing:.17em !important;
}
.section-intro h2{
  font-size:clamp(34px,3.35vw,52px) !important;
  line-height:1.02 !important;
  max-width:700px !important;
  margin:10px 0 0 !important;
  letter-spacing:-.025em;
}
.motion-search{
  grid-template-columns:1.02fr 1.02fr 1.02fr 1.02fr auto !important;
  gap:10px !important;
  padding:12px 14px !important;
  border-radius:18px !important;
  align-items:end;
  box-shadow:0 16px 42px rgba(73,55,30,.07) !important;
}
.motion-search label{
  padding:4px 8px 0;
}
.motion-search label span{
  font-size:9px !important;
  letter-spacing:.12em !important;
  margin:0 0 4px 1px !important;
}
.motion-search input,
.motion-search select{
  font-size:15px !important;
  padding:9px 2px 10px !important;
  min-height:42px;
}
.motion-search .btn{
  min-width:118px;
  height:48px;
  padding:0 24px !important;
  border-radius:14px !important;
  margin-bottom:1px;
}
@media(max-width:980px){
  .search-scene{padding:62px 0 66px !important}
  .motion-search{grid-template-columns:1fr 1fr !important}
  .motion-search .btn{grid-column:1/-1;width:100%}
}
@media(max-width:640px){
  .section-intro h2{font-size:38px !important}
  .motion-search{grid-template-columns:1fr !important}
}


/* === v0.7.2 refinement: footer, hero, search, CTA === */
.footer-bottom{
  text-align:center !important;
}

.hero-stage{
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.78fr) !important;
  gap:56px !important;
}
.cinematic-title{
  font-size:clamp(48px,6vw,92px) !important;
  line-height:.92 !important;
  max-width:720px !important;
  margin:14px 0 22px !important;
}
.cinematic-lead{
  max-width:610px !important;
  font-size:17px !important;
  line-height:1.68 !important;
}
.hero-copy-block{
  max-width:740px;
}
.portal-frame{
  min-height:430px !important;
  padding:30px !important;
}
.portal-copy{
  left:30px !important;
  right:30px !important;
  bottom:132px !important;
}
.portal-index{
  font-size:60px !important;
}
.portal-copy h2{
  font-size:30px !important;
  line-height:1.06 !important;
  margin:8px 0 10px !important;
}
.portal-copy p{
  font-size:15px;
  line-height:1.5;
}
.portal-metrics{
  left:30px !important;
  right:30px !important;
}
.portal-metrics b{
  font-size:16px !important;
}
.portal-metrics span{
  font-size:12px !important;
}

.motion-search{
  grid-template-columns:1fr 1.15fr 1.1fr .9fr .9fr auto !important;
  gap:12px !important;
}
.motion-search input,
.motion-search select{
  font-size:15px !important;
  min-height:44px !important;
}
.motion-search select{
  -webkit-appearance:none;
  appearance:none;
  padding-right:34px !important;
  background-image:linear-gradient(45deg,transparent 50%,#5e5345 50%),linear-gradient(135deg,#5e5345 50%,transparent 50%);
  background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.motion-search input:focus,
.motion-search select:focus{
  border-bottom-color:#b99562 !important;
}
.motion-search input::placeholder{
  color:#8f877a;
}

.final-scene{
  min-height:72vh !important;
  padding:86px 0 90px !important;
}
.final-inner{
  max-width:760px !important;
  margin:0 auto !important;
}
.final-inner h2{
  font-size:clamp(38px,4.8vw,68px) !important;
  line-height:1.03 !important;
  margin:16px 0 26px !important;
}
.final-inner .hero-actions{
  justify-content:center;
}

@media (max-width:1100px){
  .motion-search{
    grid-template-columns:1fr 1fr 1fr !important;
  }
  .motion-search .btn{
    grid-column:1/-1;
    width:100%;
  }
}

@media (max-width:980px){
  .hero-stage{
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .hero-portal{
    max-width:620px;
  }
  .cinematic-title{
    font-size:clamp(46px,10vw,76px) !important;
  }
}

@media (max-width:640px){
  .motion-search{
    grid-template-columns:1fr !important;
  }
  .cinematic-title{
    font-size:50px !important;
  }
  .portal-frame{
    min-height:390px !important;
  }
  .portal-copy h2{
    font-size:28px !important;
  }
  .final-inner h2{
    font-size:42px !important;
  }
}


/* === v0.8 premium hero refinement === */
:root{--mx:0;--my:0;--sy:0;--tiltX:0deg;--tiltY:0deg}
.cinematic-hero{
  position:relative;
  overflow:hidden;
  background:#080807;
  isolation:isolate;
}
.cinematic-bg{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.hero-media-layer,
.hero-light-sweep,
.cinematic-grain,
.grid-lines,
.orb{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.hero-media-layer{
  background:
    linear-gradient(90deg, rgba(8,8,7,.92) 0%, rgba(8,8,7,.84) 28%, rgba(8,8,7,.52) 54%, rgba(8,8,7,.72) 74%, rgba(8,8,7,.92) 100%),
    url('/assets/media/hero-luxury-bg.svg') center center / cover no-repeat;
  transform:scale(1.08) translate3d(calc(var(--mx) * 16px), calc(var(--my) * 18px + var(--sy) * -18px), 0);
  transform-origin:center;
  animation:heroPan 18s ease-in-out infinite alternate;
  will-change:transform;
}
.hero-light-sweep{
  background:linear-gradient(110deg, transparent 0%, rgba(202,166,109,.03) 40%, rgba(202,166,109,.12) 52%, rgba(202,166,109,.03) 64%, transparent 100%);
  transform:translateX(-18%) skewX(-10deg);
  mix-blend-mode:screen;
  opacity:.75;
  animation:lightSweep 14s ease-in-out infinite;
}
.cinematic-grain{
  background-image:radial-gradient(rgba(255,255,255,.08) .7px, transparent .8px);
  background-size:8px 8px;
  opacity:.03;
  mix-blend-mode:soft-light;
}
.grid-lines{
  background:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:170px 170px;
  opacity:.26;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.95));
  transform:translate3d(calc(var(--mx) * -8px), calc(var(--my) * -6px), 0);
}
.orb-a{width:52vw;height:52vw;right:-10vw;top:-16vw;left:auto;bottom:auto;background:radial-gradient(circle at 50% 50%,rgba(202,166,109,.34),rgba(202,166,109,.10) 32%,transparent 68%);filter:blur(10px);opacity:.46;transform:translate3d(calc(var(--mx) * 22px), calc(var(--my) * 10px + var(--sy) * 16px), 0)}
.orb-b{width:34vw;height:34vw;left:-12vw;bottom:-10vw;right:auto;top:auto;background:radial-gradient(circle at 50% 50%,rgba(110,82,47,.18),transparent 70%);filter:blur(18px);opacity:.45;transform:translate3d(calc(var(--mx) * -18px), calc(var(--my) * -10px + var(--sy) * -12px), 0)}
.cinematic-inner{
  min-height:calc(100vh - 76px);
  padding:84px 0 54px !important;
}
.hero-topline{opacity:.94;margin-bottom:10px}
.hero-kicker{margin-bottom:4px;color:#d4b27a !important}
.hero-stage{
  grid-template-columns:minmax(0,1.04fr) minmax(350px,.78fr) !important;
  gap:64px !important;
  align-items:center !important;
}
.hero-copy-block{
  max-width:740px;
  transform:translate3d(0, calc(var(--sy) * 8px), 0);
}
.cinematic-title{
  font-size:clamp(52px, 6.2vw, 98px) !important;
  line-height:.9 !important;
  letter-spacing:-.05em !important;
  max-width:760px !important;
  margin:14px 0 18px !important;
  text-wrap:balance;
}
.title-line{padding-bottom:.04em}
.accent-line{
  color:#d2ae73 !important;
  font-style:italic;
}
.cinematic-lead{
  max-width:620px !important;
  font-size:18px !important;
  line-height:1.72 !important;
  color:#c7beb2 !important;
}
.hero-actions{margin-top:34px !important;gap:16px !important}
.btn{transition:transform .28s ease, box-shadow .28s ease, background-color .28s ease, border-color .28s ease}
.btn:hover{box-shadow:0 12px 32px rgba(0,0,0,.22)}
.hero-portal{
  position:relative;
  transform:translate3d(0, calc(var(--sy) * -14px), 0);
}
.portal-frame{
  min-height:500px !important;
  padding:34px !important;
  border-radius:30px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0)),
    linear-gradient(160deg, rgba(34,28,22,.92), rgba(14,14,13,.96)) !important;
  box-shadow:0 45px 100px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.04) !important;
  transform:perspective(1200px) rotateX(var(--tiltX)) rotateY(var(--tiltY));
  transition:transform .18s ease-out;
}
.portal-frame::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(130deg, rgba(202,166,109,.14), transparent 28%, transparent 60%, rgba(202,166,109,.08) 100%);
  opacity:.8;
}
.portal-frame::after{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:29px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
  pointer-events:none;
}
.portal-glow{width:360px !important;height:360px !important;right:-110px !important;top:-120px !important;background:radial-gradient(circle, rgba(202,166,109,.34), rgba(202,166,109,.08) 42%, transparent 72%) !important;filter:blur(10px)}
.portal-label{font-size:10px !important;letter-spacing:.28em !important;color:#d0ac72 !important;position:relative;z-index:1}
.portal-copy{left:34px !important;right:34px !important;bottom:146px !important;z-index:1}
.portal-index{font-size:68px !important;color:#8f744e !important;margin-bottom:6px}
.portal-copy h2{font-size:34px !important;line-height:1.04 !important;max-width:420px}
.portal-copy p{font-size:15px !important;line-height:1.65 !important;max-width:390px;color:#b2a899 !important}
.portal-metrics{left:34px !important;right:34px !important;bottom:30px !important;gap:16px !important;z-index:1}
.portal-metrics div{padding-top:2px}
.portal-metrics b{font-size:17px !important}
.portal-metrics span{font-size:12px !important;color:#9a9082 !important}
.scroll-cue{bottom:18px !important;color:#a38d66 !important}

@keyframes heroPan{
  0%{transform:scale(1.08) translate3d(calc(var(--mx) * 12px), calc(var(--my) * 14px + var(--sy) * -10px), 0)}
  100%{transform:scale(1.12) translate3d(calc(var(--mx) * 18px + 10px), calc(var(--my) * 18px + var(--sy) * -18px - 8px), 0)}
}
@keyframes lightSweep{
  0%,100%{transform:translateX(-28%) skewX(-10deg);opacity:.28}
  50%{transform:translateX(18%) skewX(-10deg);opacity:.85}
}

@media (max-width:1180px){
  .hero-stage{grid-template-columns:minmax(0,1fr) minmax(320px,.88fr) !important;gap:42px !important}
  .cinematic-title{font-size:clamp(48px,6vw,82px) !important;max-width:680px !important}
  .portal-copy h2{font-size:31px !important}
}
@media (max-width:980px){
  .cinematic-inner{padding:68px 0 46px !important}
  .hero-stage{grid-template-columns:1fr !important;gap:34px !important}
  .hero-copy-block{max-width:700px}
  .hero-portal{max-width:620px;margin-left:auto;margin-right:auto}
  .portal-frame{min-height:454px !important}
}
@media (max-width:640px){
  .cinematic-inner{padding:54px 0 34px !important}
  .cinematic-title{font-size:46px !important;line-height:.95 !important}
  .cinematic-lead{font-size:16px !important;line-height:1.65 !important}
  .portal-frame{min-height:410px !important;padding:26px !important}
  .portal-copy{left:26px !important;right:26px !important;bottom:126px !important}
  .portal-index{font-size:54px !important}
  .portal-copy h2{font-size:28px !important}
  .portal-metrics{left:26px !important;right:26px !important;grid-template-columns:repeat(3,1fr) !important}
}


/* === v0.9 desktop video hero / mobile image fallback === */
.hero-video{
  position:absolute;
  inset:-4%;
  width:108%;
  height:108%;
  object-fit:cover;
  object-position:center center;
  opacity:.52;
  filter:saturate(1.03) contrast(1.04) brightness(.86);
  transform:scale(1.06);
  mix-blend-mode:screen;
  will-change:transform, opacity;
  animation:heroVideoFloat 16s ease-in-out infinite alternate;
}
.hero-media-layer{
  opacity:.95;
}
.cinematic-bg::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(5,5,5,.88) 0%, rgba(5,5,5,.72) 26%, rgba(5,5,5,.42) 50%, rgba(5,5,5,.62) 74%, rgba(5,5,5,.86) 100%),
    linear-gradient(180deg, rgba(0,0,0,.16) 0%, rgba(0,0,0,.28) 100%);
  pointer-events:none;
}
.hero-light-sweep{opacity:.58;animation:lightSweep 18s ease-in-out infinite;}
.portal-frame{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
@keyframes heroVideoFloat{
  0%{transform:scale(1.06) translate3d(-1.2%, -0.8%, 0)}
  100%{transform:scale(1.11) translate3d(1.2%, 1.0%, 0)}
}
@media (max-width: 900px){
  .hero-video{display:none}
  .hero-media-layer{opacity:1}
}

/* === v0.9.1 visible hero video fix === */
.hero-media-layer{z-index:0;opacity:.38!important}
.hero-video{
  z-index:1!important;
  opacity:.82!important;
  mix-blend-mode:normal!important;
  filter:saturate(1.08) contrast(1.06) brightness(.82)!important;
}
.hero-light-sweep,.orb,.grid-lines,.cinematic-grain{z-index:2}
.cinematic-bg::after{z-index:3}
.cinematic-inner{z-index:4!important}
@media (max-width:900px){
  .hero-video{display:none!important}
  .hero-media-layer{
    opacity:1!important;
    background:
      linear-gradient(90deg,rgba(7,7,7,.90),rgba(7,7,7,.55) 58%,rgba(7,7,7,.82)),
      url('/assets/media/hero-luxury-poster-v2.jpg') center/cover no-repeat!important;
  }
}


/* === v0.9.2: five user-requested refinements, forced with cache-busting === */

/* 1) Footer copyright centered */
.footer-bottom{
  text-align:center !important;
  width:100% !important;
}

/* 2) Final CTA headline smaller and centered */
.final-scene{
  min-height:64vh !important;
  padding:76px 0 82px !important;
}
.final-inner{
  max-width:720px !important;
  margin:0 auto !important;
  text-align:center !important;
}
.final-inner h2{
  font-size:clamp(34px,4vw,58px) !important;
  line-height:1.04 !important;
  letter-spacing:-.025em !important;
  margin:14px auto 24px !important;
  max-width:700px !important;
}
.final-inner .hero-actions{
  justify-content:center !important;
}

/* 3) Hero typography/card rebalanced */
.hero-stage{
  grid-template-columns:minmax(0,1fr) minmax(340px,.72fr) !important;
  gap:48px !important;
}
.hero-copy-block{
  max-width:690px !important;
}
.cinematic-title{
  font-size:clamp(46px,5.45vw,82px) !important;
  line-height:.94 !important;
  letter-spacing:-.045em !important;
  max-width:670px !important;
  margin:12px 0 18px !important;
}
.cinematic-lead{
  font-size:16px !important;
  line-height:1.68 !important;
  max-width:585px !important;
}
.portal-frame{
  min-height:445px !important;
  padding:30px !important;
}
.portal-index{
  font-size:54px !important;
}
.portal-copy{
  left:30px !important;
  right:30px !important;
  bottom:132px !important;
}
.portal-copy h2{
  font-size:28px !important;
  line-height:1.08 !important;
  max-width:370px !important;
}
.portal-copy p{
  font-size:14px !important;
  max-width:360px !important;
}
.portal-metrics{
  left:30px !important;
  right:30px !important;
}

/* 4 + 5) Search: better selects + more choices + min/max fields */
.motion-search{
  grid-template-columns:1fr 1.25fr 1.05fr .92fr .92fr auto !important;
  gap:10px !important;
  padding:14px !important;
}
.motion-search label{
  min-width:0;
}
.motion-search select,
.motion-search input{
  width:100% !important;
  font-size:14px !important;
  min-height:44px !important;
  padding:9px 28px 9px 2px !important;
  color:#1b1814 !important;
}
.motion-search select{
  cursor:pointer;
}
.motion-search input[type="number"]{
  appearance:textfield;
}
.motion-search input[type="number"]::-webkit-inner-spin-button,
.motion-search input[type="number"]::-webkit-outer-spin-button{
  -webkit-appearance:none;
  margin:0;
}
.motion-search .btn{
  height:48px !important;
  min-width:112px !important;
  padding:0 22px !important;
}

/* Cleaner search section proportions */
.search-scene{
  padding:62px 0 68px !important;
}
.section-intro{
  margin-bottom:22px !important;
}
.section-intro h2{
  font-size:clamp(32px,3vw,46px) !important;
  max-width:630px !important;
}

/* Responsive */
@media(max-width:1180px){
  .motion-search{
    grid-template-columns:1fr 1fr 1fr !important;
  }
  .motion-search .btn{
    grid-column:1/-1;
    width:100%;
  }
}
@media(max-width:980px){
  .hero-stage{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }
  .hero-portal{
    max-width:560px !important;
  }
}
@media(max-width:640px){
  .cinematic-title{
    font-size:44px !important;
  }
  .motion-search{
    grid-template-columns:1fr !important;
  }
  .final-inner h2{
    font-size:38px !important;
  }
}


/* === v0.9.6 stable hero reconstruction ===
   Fixes missing/hidden hero elements by removing JS-dependent visibility
   from critical hero content and uses a predictable fixed composition.
*/

.cinematic-hero{
  min-height:760px !important;
}

.cinematic-inner{
  min-height:760px !important;
  justify-content:flex-start !important;
  padding-top:54px !important;
  padding-bottom:48px !important;
}

.hero-topline{
  margin:0 0 20px !important;
}

.hero-stage{
  margin-top:0 !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,520px) !important;
  gap:54px !important;
  align-items:center !important;
}

.hero-copy-block{
  max-width:690px !important;
}

.cinematic-title{
  font-size:clamp(48px,5.45vw,82px) !important;
  line-height:.94 !important;
  max-width:665px !important;
  margin:12px 0 18px !important;
}

.cinematic-lead{
  max-width:590px !important;
  font-size:16px !important;
  line-height:1.68 !important;
}

.hero-actions{
  margin-top:28px !important;
}

.hero-portal{
  width:100% !important;
  max-width:520px !important;
  justify-self:end !important;
  transform:none !important;
}

.portal-frame{
  min-height:410px !important;
  padding:30px !important;
  transform:none !important;
}

.portal-copy{
  left:30px !important;
  right:30px !important;
  bottom:126px !important;
}

.portal-index{
  font-size:54px !important;
}

.portal-copy h2{
  font-size:28px !important;
  line-height:1.08 !important;
}

.portal-copy p{
  font-size:14px !important;
  line-height:1.58 !important;
}

.portal-metrics{
  left:30px !important;
  right:30px !important;
  bottom:26px !important;
}

/* Critical hero content is always visible. */
.hero-enter{
  opacity:1 !important;
  transform:none !important;
}

/* Optional first-load animation that never hides the content permanently. */
@keyframes heroEnterSafe{
  from{opacity:.001;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
.hero-enter{
  animation:heroEnterSafe .72s cubic-bezier(.22,1,.36,1) both;
}
.hero-enter-1{animation-delay:.03s}
.hero-enter-2{animation-delay:.09s}
.hero-enter-3{animation-delay:.18s}
.hero-enter-4{animation-delay:.26s}
.hero-enter-card{animation-delay:.14s}

/* Keep the actual video visible on desktop. */
.hero-video{
  opacity:.78 !important;
  mix-blend-mode:normal !important;
  z-index:1 !important;
}
.hero-media-layer{
  opacity:.32 !important;
  z-index:0 !important;
}
.hero-light-sweep,.orb,.grid-lines,.cinematic-grain{z-index:2 !important}
.cinematic-bg::after{z-index:3 !important}
.cinematic-inner{z-index:4 !important}

/* Preserve the requested footer and search refinements. */
.footer-bottom{text-align:center !important}
.final-inner{max-width:720px !important;margin:0 auto !important;text-align:center !important}
.final-inner h2{
  font-size:clamp(34px,4vw,58px) !important;
  line-height:1.04 !important;
}
.final-inner .hero-actions{justify-content:center !important}

@media(max-width:1180px){
  .hero-stage{
    grid-template-columns:minmax(0,1fr) minmax(320px,470px) !important;
    gap:38px !important;
  }
}

@media(max-width:980px){
  .cinematic-hero,
  .cinematic-inner{
    min-height:auto !important;
  }
  .cinematic-inner{
    padding-top:42px !important;
    padding-bottom:44px !important;
  }
  .hero-stage{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .hero-portal{
    justify-self:center !important;
    max-width:540px !important;
  }
}

@media(max-width:640px){
  .cinematic-inner{
    padding-top:30px !important;
  }
  .cinematic-title{
    font-size:44px !important;
  }
  .portal-frame{
    min-height:390px !important;
  }
}


/* === v0.9.7 recovery: all content always visible ===
   No homepage content depends on JavaScript reveal classes anymore.
*/
.reveal-up,
.reveal-right,
.hero-enter,
.reveal-up.visible,
.reveal-right.visible{
  opacity:1 !important;
  transform:none !important;
  animation:none !important;
  visibility:visible !important;
}

/* Ensure every main homepage section has normal flow and visible content */
.search-scene,
.featured-scene,
.sticky-story,
.final-scene{
  position:relative;
  overflow:visible;
}

.section-intro,
.motion-search,
.featured-heading,
.story-card,
.final-inner{
  opacity:1 !important;
  transform:none !important;
  visibility:visible !important;
}

/* Keep the stabilized hero from v0.9.6 */
.cinematic-inner{
  min-height:760px !important;
  justify-content:flex-start !important;
  padding-top:54px !important;
  padding-bottom:48px !important;
}
.hero-stage{
  margin-top:0 !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,520px) !important;
  gap:54px !important;
  align-items:center !important;
}
.hero-portal{
  width:100% !important;
  max-width:520px !important;
  justify-self:end !important;
  transform:none !important;
}
.portal-frame{
  min-height:410px !important;
  transform:none !important;
}

/* Search section: visible and compact */
.search-scene{
  padding:62px 0 68px !important;
}
.section-intro{
  margin-bottom:22px !important;
}
.section-intro h2{
  font-size:clamp(32px,3vw,46px) !important;
  max-width:630px !important;
}
.motion-search{
  display:grid !important;
  grid-template-columns:1fr 1.25fr 1.05fr .92fr .92fr auto !important;
  gap:10px !important;
  opacity:1 !important;
}
.motion-search .btn{
  min-width:112px !important;
}

/* Featured properties must always show its heading and grid */
.featured-heading{
  display:flex !important;
}
#featured{
  min-height:180px;
}

/* Working-process cards always render */
.story-cards{
  display:grid !important;
}
.story-card{
  opacity:1 !important;
  transform:none !important;
}

/* Final CTA always renders */
.final-inner{
  display:block !important;
  text-align:center !important;
}
.final-inner .hero-actions{
  justify-content:center !important;
}

/* Footer copyright centered */
.footer-bottom{
  text-align:center !important;
}

@media(max-width:1180px){
  .motion-search{
    grid-template-columns:1fr 1fr 1fr !important;
  }
  .motion-search .btn{
    grid-column:1/-1;
    width:100%;
  }
}

@media(max-width:980px){
  .cinematic-inner{
    min-height:auto !important;
    padding-top:42px !important;
    padding-bottom:44px !important;
  }
  .hero-stage{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }
  .hero-portal{
    justify-self:center !important;
    max-width:540px !important;
  }
  .featured-heading{
    display:block !important;
  }
}

@media(max-width:640px){
  .motion-search{
    grid-template-columns:1fr !important;
  }
}


/* === v0.9.8 HERO VIDEO VISIBILITY FIX === */
.hero-video{
  display:block !important;
  position:absolute !important;
  inset:-3% !important;
  width:106% !important;
  height:106% !important;
  object-fit:cover !important;
  object-position:center !important;
  opacity:.94 !important;
  filter:saturate(1.08) contrast(1.06) brightness(.92) !important;
  mix-blend-mode:normal !important;
  z-index:1 !important;
  animation:none !important;
}

/* Keep fallback image underneath the video */
.hero-media-layer{
  z-index:0 !important;
  opacity:.20 !important;
}

/* Lighter overlay so the architectural motion is actually visible */
.cinematic-bg::after{
  z-index:3 !important;
  background:
    linear-gradient(90deg,
      rgba(5,5,5,.78) 0%,
      rgba(5,5,5,.64) 28%,
      rgba(5,5,5,.24) 53%,
      rgba(5,5,5,.42) 76%,
      rgba(5,5,5,.65) 100%
    ),
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.24)) !important;
}

/* Decorative layers remain above video, below content */
.hero-light-sweep,.orb,.grid-lines,.cinematic-grain{
  z-index:2 !important;
}
.cinematic-inner{
  z-index:4 !important;
}

/* Mobile uses image fallback only */
@media(max-width:900px){
  .hero-video{display:none !important}
  .hero-media-layer{
    opacity:1 !important;
    background:
      linear-gradient(90deg,rgba(7,7,7,.88),rgba(7,7,7,.48) 58%,rgba(7,7,7,.76)),
      url('/assets/media/hero-luxury-poster-v2.jpg') center/cover no-repeat !important;
  }
}


/* =========================================================
   v1.0 — full-bleed cinematic luxury hero
   Inspired by premium editorial real-estate presentation.
   ========================================================= */

/* Header overlays the hero instead of sitting in a separate black bar. */
body{
  background:#080808;
}
.site-header{
  position:absolute !important;
  top:0;
  left:0;
  right:0;
  z-index:50 !important;
  background:linear-gradient(180deg,rgba(7,7,7,.72),rgba(7,7,7,.20),transparent) !important;
  border-bottom:0 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.header-row{
  height:104px !important;
}
.brand{
  color:#f3eee7 !important;
  font-size:16px !important;
  letter-spacing:.15em !important;
}
.brand-mark{
  width:44px !important;
  height:44px !important;
  background:rgba(0,0,0,.16) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.50) !important;
}
.nav{
  color:#d8d0c5 !important;
  gap:40px !important;
  font-size:13px !important;
  text-transform:uppercase;
  letter-spacing:.13em;
}
.header-cta{
  background:#d0aa6a !important;
  color:#17120c !important;
  border-color:#d0aa6a !important;
  border-radius:0 !important;
  padding:16px 24px !important;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:12px !important;
  font-weight:700 !important;
}

/* Full viewport visual */
.hero-aurelia-inspired{
  position:relative !important;
  min-height:100vh !important;
  height:100vh !important;
  overflow:hidden !important;
  background:#080808 !important;
  border:0 !important;
}
.hero-aurelia-inspired .cinematic-bg{
  position:absolute;
  inset:0;
}
.hero-aurelia-inspired .hero-video{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center 48% !important;
  opacity:1 !important;
  filter:saturate(1.10) contrast(1.05) brightness(.92) !important;
  mix-blend-mode:normal !important;
  transform:scale(1.02);
  z-index:0 !important;
}
.hero-aurelia-inspired .hero-media-layer{
  position:absolute;
  inset:0;
  z-index:-1 !important;
  opacity:1 !important;
  background:url('/assets/media/hero-luxury-poster-v2.jpg') center/cover no-repeat !important;
}
.hero-vignette{
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(90deg,rgba(6,6,6,.68) 0%,rgba(6,6,6,.46) 34%,rgba(6,6,6,.12) 70%,rgba(6,6,6,.32) 100%),
    linear-gradient(180deg,rgba(6,6,6,.20) 0%,rgba(6,6,6,.04) 45%,rgba(6,6,6,.46) 100%);
  pointer-events:none;
}
.hero-aurelia-inspired .cinematic-grain{
  z-index:3 !important;
  opacity:.025 !important;
}

/* Hero content */
.hero-full-content{
  position:relative;
  z-index:5;
  min-height:100vh;
  padding-top:150px;
  padding-bottom:54px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.hero-eyebrow{
  color:#d4ad6d;
  font-size:12px;
  font-weight:700;
  letter-spacing:.34em;
  text-transform:uppercase;
  margin-bottom:34px;
}
.hero-copy-full{
  max-width:1080px;
}
.hero-copy-full h1{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(72px,8.5vw,138px);
  line-height:.92;
  font-weight:400;
  letter-spacing:-.045em;
  color:#f6f1e9;
  text-wrap:balance;
  text-shadow:0 2px 24px rgba(0,0,0,.18);
}
.hero-copy-full h1 span{
  display:block;
}
.hero-script{
  margin:42px 0 0;
  max-width:900px;
  font-family:Georgia,"Times New Roman",serif;
  font-style:italic;
  font-size:clamp(20px,1.8vw,30px);
  line-height:1.45;
  color:#e7ddcf;
  text-shadow:0 2px 18px rgba(0,0,0,.25);
}
.hero-actions-full{
  margin-top:44px !important;
  gap:16px !important;
}
.hero-actions-full .btn{
  min-height:58px;
  padding:0 34px !important;
  border-radius:0 !important;
  text-transform:uppercase;
  letter-spacing:.15em;
  font-size:12px !important;
}
.hero-primary{
  background:#d0aa6a !important;
  border-color:#d0aa6a !important;
  color:#15110c !important;
}
.hero-secondary{
  background:rgba(0,0,0,.14) !important;
  border-color:rgba(212,173,109,.75) !important;
  color:#dfbf88 !important;
  backdrop-filter:blur(4px);
}
.hero-scroll-cue{
  position:absolute;
  left:50%;
  bottom:28px;
  transform:translateX(-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:9px;
  color:#b9aa98;
  font-size:10px;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.hero-scroll-cue i{
  display:block;
  width:1px;
  height:34px;
  background:linear-gradient(#d0aa6a,transparent);
  animation:scrollPulse 1.7s ease-in-out infinite;
}
@keyframes scrollPulse{
  0%,100%{transform:scaleY(.45);transform-origin:top;opacity:.55}
  50%{transform:scaleY(1);transform-origin:top;opacity:1}
}

/* Make the next section start cleanly after the cinematic viewport. */
.marquee-band{
  margin-top:0 !important;
}

/* Tablet/mobile */
@media(max-width:980px){
  .header-row{height:84px !important}
  .hero-full-content{
    padding-top:124px;
    justify-content:center;
  }
  .hero-copy-full h1{
    font-size:clamp(58px,10vw,96px);
  }
  .hero-script{
    max-width:700px;
  }
}
@media(max-width:760px){
  .nav{display:none !important}
  .header-cta{display:none !important}
  .mobile-toggle{
    display:block !important;
    color:#fff !important;
  }
  .hero-aurelia-inspired{
    min-height:88vh !important;
    height:88vh !important;
  }
  .hero-full-content{
    min-height:88vh;
    padding-top:106px;
    padding-bottom:42px;
  }
  .hero-eyebrow{
    font-size:10px;
    letter-spacing:.24em;
    margin-bottom:24px;
  }
  .hero-copy-full h1{
    font-size:clamp(48px,14vw,74px);
    line-height:.96;
  }
  .hero-script{
    margin-top:26px;
    font-size:18px;
  }
  .hero-actions-full{
    margin-top:30px !important;
    flex-direction:column;
    align-items:flex-start;
  }
  .hero-actions-full .btn{
    width:auto;
    min-width:230px;
  }
  .hero-aurelia-inspired .hero-video{
    display:none !important;
  }
  .hero-aurelia-inspired .hero-media-layer{
    z-index:0 !important;
    opacity:1 !important;
  }
}


/* =========================================================
   v1.1 — real luxury-property hero footage
   ========================================================= */

.hero-aurelia-inspired .hero-media-layer{
  background:
    linear-gradient(90deg,rgba(6,6,6,.56),rgba(6,6,6,.18) 58%,rgba(6,6,6,.24)),
    url("https://images.pexels.com/videos/39105127/aerial-view-architecture-cinematic-lighting-interior-design-39105127.jpeg?auto=compress&dpr=1&h=750&w=1260") center 48%/cover no-repeat !important;
  z-index:0 !important;
}

.hero-aurelia-inspired .hero-video{
  opacity:1 !important;
  filter:saturate(1.04) contrast(1.03) brightness(.96) !important;
  object-position:center center !important;
  transform:scale(1.002) !important;
}

.hero-vignette{
  background:
    linear-gradient(90deg,
      rgba(5,5,5,.58) 0%,
      rgba(5,5,5,.40) 28%,
      rgba(5,5,5,.10) 68%,
      rgba(5,5,5,.20) 100%
    ),
    linear-gradient(180deg,
      rgba(5,5,5,.10) 0%,
      rgba(5,5,5,.01) 46%,
      rgba(5,5,5,.28) 100%
    ) !important;
}

.hero-copy-full{
  max-width:980px !important;
}

.hero-copy-full h1{
  font-size:clamp(64px,7.5vw,122px) !important;
  line-height:.93 !important;
  max-width:970px !important;
}

.hero-script{
  margin-top:32px !important;
  max-width:860px !important;
  font-size:clamp(19px,1.55vw,27px) !important;
}

.hero-actions-full{
  margin-top:36px !important;
}

.site-header{
  background:linear-gradient(180deg,rgba(5,5,5,.52),rgba(5,5,5,.12),transparent) !important;
}

@media(max-width:760px){
  .hero-aurelia-inspired .hero-media-layer{
    background:
      linear-gradient(90deg,rgba(5,5,5,.66),rgba(5,5,5,.28) 58%,rgba(5,5,5,.48)),
      url("https://images.pexels.com/videos/39105127/aerial-view-architecture-cinematic-lighting-interior-design-39105127.jpeg?auto=compress&dpr=1&h=750&w=1260") center/cover no-repeat !important;
  }
  .hero-copy-full h1{
    font-size:clamp(46px,13vw,68px) !important;
  }
}


/* =========================================================
   v1.2 — hero proportion refinements
   Keeps the v1.1 full-screen layout and real footage.
   ========================================================= */

/* 1) Slightly smaller headline */
.hero-copy-full{
  max-width:930px !important;
}
.hero-copy-full h1{
  font-size:clamp(58px,6.85vw,112px) !important;
  line-height:.94 !important;
  max-width:920px !important;
  letter-spacing:-.04em !important;
}

/* 2) Move hero content a little higher */
.hero-full-content{
  padding-top:126px !important;
  padding-bottom:60px !important;
  justify-content:center !important;
  transform:translateY(-18px);
}

/* 3) Let more of the property/video show through */
.hero-vignette{
  background:
    linear-gradient(90deg,
      rgba(5,5,5,.52) 0%,
      rgba(5,5,5,.34) 30%,
      rgba(5,5,5,.07) 68%,
      rgba(5,5,5,.16) 100%
    ),
    linear-gradient(180deg,
      rgba(5,5,5,.07) 0%,
      rgba(5,5,5,.00) 45%,
      rgba(5,5,5,.22) 100%
    ) !important;
}
.hero-aurelia-inspired .hero-video{
  filter:saturate(1.05) contrast(1.02) brightness(1.00) !important;
}

/* 4) Shorter supporting line for a cleaner editorial feel */
.hero-script{
  max-width:760px !important;
  font-size:clamp(18px,1.45vw,25px) !important;
  line-height:1.42 !important;
  margin-top:28px !important;
}

/* 5) Raise CTA row slightly */
.hero-actions-full{
  margin-top:30px !important;
}

/* 6) Smaller, more precise scroll cue */
.hero-scroll-cue{
  bottom:20px !important;
  gap:7px !important;
  font-size:9px !important;
  letter-spacing:.20em !important;
}
.hero-scroll-cue i{
  height:26px !important;
}

/* Small header polish so it stays visually light over footage */
.header-row{
  height:96px !important;
}
.nav{
  gap:36px !important;
}
.header-cta{
  padding:15px 22px !important;
}

/* Responsive safeguards */
@media(max-width:980px){
  .hero-full-content{
    padding-top:110px !important;
    transform:translateY(-10px);
  }
  .hero-copy-full h1{
    font-size:clamp(54px,9vw,88px) !important;
    max-width:820px !important;
  }
  .hero-script{
    max-width:680px !important;
  }
}
@media(max-width:760px){
  .hero-full-content{
    transform:none !important;
    padding-top:100px !important;
  }
  .hero-copy-full h1{
    font-size:clamp(44px,12vw,64px) !important;
  }
  .hero-script{
    font-size:17px !important;
    max-width:560px !important;
  }
  .hero-scroll-cue{
    bottom:14px !important;
  }
}


/* =========================================================
   v1.3 — final hero polish
   Preserves the v1.2 layout and real video.
   ========================================================= */

/* 1) Reduce headline another ~6% */
.hero-copy-full{
  max-width:900px !important;
}
.hero-copy-full h1{
  font-size:clamp(55px,6.4vw,105px) !important;
  line-height:.95 !important;
  max-width:900px !important;
  letter-spacing:-.038em !important;
}

/* 2) Move headline/subtitle/CTA group slightly higher */
.hero-full-content{
  padding-top:116px !important;
  padding-bottom:66px !important;
  transform:translateY(-28px) !important;
}

/* 3) Subtitle slightly smaller and narrower */
.hero-script{
  max-width:700px !important;
  font-size:clamp(17px,1.32vw,23px) !important;
  line-height:1.42 !important;
  margin-top:24px !important;
}

/* 4) Make CTA buttons a little more compact */
.hero-actions-full{
  margin-top:26px !important;
  gap:14px !important;
}
.hero-actions-full .btn{
  min-height:54px !important;
  padding:0 28px !important;
  min-width:0 !important;
  width:auto !important;
  font-size:11px !important;
  letter-spacing:.14em !important;
}

/* 5) Let more of the property show through in the lower-left */
.hero-vignette{
  background:
    linear-gradient(90deg,
      rgba(5,5,5,.46) 0%,
      rgba(5,5,5,.28) 28%,
      rgba(5,5,5,.05) 68%,
      rgba(5,5,5,.14) 100%
    ),
    linear-gradient(180deg,
      rgba(5,5,5,.05) 0%,
      rgba(5,5,5,.00) 46%,
      rgba(5,5,5,.16) 100%
    ) !important;
}

/* Slightly brighter footage so the architecture remains the visual focus */
.hero-aurelia-inspired .hero-video{
  filter:saturate(1.05) contrast(1.015) brightness(1.035) !important;
}

/* Keep scroll cue visually quieter */
.hero-scroll-cue{
  bottom:18px !important;
  font-size:8px !important;
  letter-spacing:.18em !important;
}
.hero-scroll-cue i{
  height:24px !important;
}

/* Responsive safeguards */
@media(max-width:980px){
  .hero-full-content{
    padding-top:106px !important;
    transform:translateY(-18px) !important;
  }
  .hero-copy-full h1{
    font-size:clamp(50px,8.4vw,82px) !important;
    max-width:780px !important;
  }
  .hero-script{
    max-width:640px !important;
  }
}

@media(max-width:760px){
  .hero-full-content{
    transform:none !important;
    padding-top:96px !important;
  }
  .hero-copy-full h1{
    font-size:clamp(42px,11.5vw,60px) !important;
  }
  .hero-script{
    font-size:16px !important;
    max-width:520px !important;
  }
  .hero-actions-full .btn{
    min-width:218px !important;
    padding:0 24px !important;
  }
}


/* =========================================================
   v1.4 — NASR AQARAT CRM-style light theme + dark mode
   Default theme: LIGHT
   ========================================================= */

/* Shared theme variables */
:root,
:root[data-theme="light"]{
  --ui-bg:#f5f5f5;
  --ui-surface:#ffffff;
  --ui-surface-2:#fafafa;
  --ui-text:#171717;
  --ui-muted:#6f6f6f;
  --ui-line:#e5e5e5;
  --ui-soft:#eeeeee;
  --ui-accent:#171717;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --ui-bg:#090909;
  --ui-surface:#121212;
  --ui-surface-2:#181818;
  --ui-text:#f5f5f5;
  --ui-muted:#a1a1a1;
  --ui-line:#2b2b2b;
  --ui-soft:#202020;
  --ui-accent:#f1f1f1;
  color-scheme:dark;
}

/* Base page */
body{
  background:var(--ui-bg) !important;
  color:var(--ui-text) !important;
  transition:background-color .22s ease,color .22s ease;
}

/* Header — white CRM style by default */
.site-header{
  background:rgba(255,255,255,.96) !important;
  color:#171717 !important;
  border-bottom:1px solid #e5e5e5 !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}
.brand{color:#171717 !important}
.brand-mark{
  color:#171717 !important;
  border-color:#cfcfcf !important;
  background:#f7f7f7 !important;
}
.nav{color:#4f4f4f !important}
.nav a:hover{
  color:#111 !important;
  border-bottom-color:#a8a8a8 !important;
}
.header-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.header-cta{
  background:#171717 !important;
  color:#fff !important;
  border-color:#171717 !important;
}
.mobile-toggle{
  color:#171717 !important;
}

/* Theme toggle */
.theme-toggle{
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid #dedede;
  background:#f5f5f5;
  color:#1b1b1b;
  display:inline-grid;
  place-items:center;
  cursor:pointer;
  font:inherit;
  position:relative;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.theme-toggle:hover{
  background:#ececec;
  transform:translateY(-1px);
}
.theme-toggle span{
  position:absolute;
  line-height:1;
  font-size:18px;
}
.theme-moon{display:none}
:root[data-theme="dark"] .theme-sun{display:none}
:root[data-theme="dark"] .theme-moon{display:block}

/* Homepage header is still over the video, but uses CRM-white shell */
.hero-aurelia-inspired{
  margin-top:0 !important;
}
/* Since the header is absolute on homepage from v1.3, keep the white bar legible */
body:has(.hero-aurelia-inspired) .site-header{
  background:rgba(255,255,255,.95) !important;
  border-bottom:1px solid rgba(0,0,0,.08) !important;
}

/* Light-mode homepage sections */
.marquee-band{
  background:#fff !important;
  border-top:1px solid #e8e8e8 !important;
  border-bottom:1px solid #e8e8e8 !important;
}
.marquee-track{
  color:#5d5d5d !important;
}
.marquee-track i{
  color:#111 !important;
}

.search-scene{
  background:#f5f5f5 !important;
  color:#171717 !important;
}
.section-intro span,
.micro{
  color:#6f6f6f !important;
}
.section-intro h2,
.featured-heading h2,
.sticky-copy h2,
.final-inner h2{
  color:#171717;
}
.motion-search{
  background:#fff !important;
  border-color:#e2e2e2 !important;
  box-shadow:0 14px 36px rgba(0,0,0,.06) !important;
}
.motion-search label span{color:#777 !important}
.motion-search input,
.motion-search select{
  color:#171717 !important;
  border-bottom-color:#dddddd !important;
}
.motion-search input::placeholder{color:#999 !important}
.motion-search .btn,
.btn.gold{
  background:#171717 !important;
  border-color:#171717 !important;
  color:#fff !important;
}

.featured-scene{
  background:#fff !important;
  color:#171717 !important;
}
.featured-heading p{
  color:#777 !important;
}
.cinematic-grid .property-card,
.property-card{
  background:#fff !important;
  color:#171717 !important;
  border-color:#e5e5e5 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.035);
}
.property-card:hover{
  border-color:#c9c9c9 !important;
  box-shadow:0 12px 30px rgba(0,0,0,.07);
}
.property-location,
.property-meta{
  color:#777 !important;
}
.badge{
  background:#171717 !important;
  color:#fff !important;
  border-color:#171717 !important;
}

.sticky-story{
  background:#f5f5f5 !important;
  color:#171717 !important;
}
.sticky-copy p{
  color:#707070 !important;
}
.story-card{
  background:#fff !important;
  color:#171717 !important;
  border-color:#e5e5e5 !important;
  box-shadow:0 8px 26px rgba(0,0,0,.035);
}
.story-card span{color:#777 !important}
.story-card p{color:#777 !important}

.final-scene{
  background:#fff !important;
  color:#171717 !important;
  border-top:1px solid #ececec;
}
.final-inner .micro{color:#777 !important}
.final-inner .btn.ghost{
  color:#171717 !important;
  border-color:#cfcfcf !important;
  background:#fff !important;
}

/* Secondary pages */
.page-hero{
  background:#f3f3f3 !important;
  color:#171717 !important;
  border-bottom:1px solid #e6e6e6;
}
.page-hero p{color:#666 !important}
.section{
  background:var(--ui-bg);
  color:var(--ui-text);
}
.section.soft{
  background:#f3f3f3 !important;
  color:#171717 !important;
}
.section.dark{
  background:#f5f5f5 !important;
  color:#171717 !important;
}
.service-card,
.detail-panel,
.empty,
.notice{
  background:#fff !important;
  color:#171717 !important;
  border-color:#e3e3e3 !important;
}
.service-card p,
.prose,
.notice,
.search-summary,
.detail-meta small{
  color:#737373 !important;
}
.detail-meta div{
  background:#f3f3f3 !important;
}
.filters input,.filters select,
.form input,.form textarea,.form select{
  background:#fff !important;
  color:#171717 !important;
  border-color:#dddddd !important;
}
.filters input::placeholder,
.form input::placeholder,
.form textarea::placeholder{
  color:#999 !important;
}
.filters input:focus,.filters select:focus,
.form input:focus,.form textarea:focus,.form select:focus{
  outline:none;
  border-color:#a8a8a8 !important;
  box-shadow:0 0 0 3px rgba(0,0,0,.045);
}
.btn{
  background:#171717 !important;
  color:#fff !important;
  border-color:#171717 !important;
}
.btn.secondary{
  background:#fff !important;
  color:#171717 !important;
  border-color:#d8d8d8 !important;
}

/* Footer follows CRM light styling */
.footer{
  background:#fff !important;
  color:#171717 !important;
  border-top:1px solid #e5e5e5 !important;
}
.footer .brand{color:#171717 !important}
.footer .brand-mark{
  color:#171717 !important;
  border-color:#d2d2d2 !important;
  background:#f5f5f5 !important;
}
.footer p,.footer a{
  color:#6f6f6f !important;
}
.footer strong{color:#171717 !important}
.footer-bottom{
  border-top-color:#ececec !important;
  color:#8b8b8b !important;
  text-align:center !important;
}

/* ================= DARK MODE ================= */
:root[data-theme="dark"] body{
  background:#090909 !important;
  color:#f5f5f5 !important;
}
:root[data-theme="dark"] .site-header,
:root[data-theme="dark"] body:has(.hero-aurelia-inspired) .site-header{
  background:rgba(9,9,9,.96) !important;
  color:#f5f5f5 !important;
  border-bottom:1px solid #242424 !important;
}
:root[data-theme="dark"] .brand{color:#f5f5f5 !important}
:root[data-theme="dark"] .brand-mark{
  color:#f5f5f5 !important;
  border-color:#555 !important;
  background:#181818 !important;
}
:root[data-theme="dark"] .nav{color:#bdbdbd !important}
:root[data-theme="dark"] .nav a:hover{color:#fff !important;border-bottom-color:#666 !important}
:root[data-theme="dark"] .header-cta{
  background:#ededed !important;
  color:#111 !important;
  border-color:#ededed !important;
}
:root[data-theme="dark"] .mobile-toggle{color:#fff !important}
:root[data-theme="dark"] .theme-toggle{
  background:#1c1c1c;
  color:#f5f5f5;
  border-color:#343434;
}
:root[data-theme="dark"] .theme-toggle:hover{background:#252525}

/* Dark mode homepage */
:root[data-theme="dark"] .marquee-band,
:root[data-theme="dark"] .featured-scene,
:root[data-theme="dark"] .final-scene{
  background:#0b0b0b !important;
  color:#f5f5f5 !important;
  border-color:#222 !important;
}
:root[data-theme="dark"] .marquee-track{color:#b4b4b4 !important}
:root[data-theme="dark"] .marquee-track i{color:#eee !important}
:root[data-theme="dark"] .search-scene,
:root[data-theme="dark"] .sticky-story{
  background:#111 !important;
  color:#f5f5f5 !important;
}
:root[data-theme="dark"] .section-intro h2,
:root[data-theme="dark"] .featured-heading h2,
:root[data-theme="dark"] .sticky-copy h2,
:root[data-theme="dark"] .final-inner h2{
  color:#f5f5f5 !important;
}
:root[data-theme="dark"] .section-intro span,
:root[data-theme="dark"] .micro{
  color:#a0a0a0 !important;
}
:root[data-theme="dark"] .motion-search{
  background:#171717 !important;
  border-color:#2c2c2c !important;
  box-shadow:none !important;
}
:root[data-theme="dark"] .motion-search label span{color:#999 !important}
:root[data-theme="dark"] .motion-search input,
:root[data-theme="dark"] .motion-search select{
  color:#f5f5f5 !important;
  border-bottom-color:#373737 !important;
}
:root[data-theme="dark"] .motion-search input::placeholder{color:#777 !important}

:root[data-theme="dark"] .property-card,
:root[data-theme="dark"] .cinematic-grid .property-card,
:root[data-theme="dark"] .story-card,
:root[data-theme="dark"] .service-card,
:root[data-theme="dark"] .detail-panel,
:root[data-theme="dark"] .empty,
:root[data-theme="dark"] .notice{
  background:#151515 !important;
  color:#f5f5f5 !important;
  border-color:#2b2b2b !important;
  box-shadow:none !important;
}
:root[data-theme="dark"] .property-location,
:root[data-theme="dark"] .property-meta,
:root[data-theme="dark"] .story-card p,
:root[data-theme="dark"] .sticky-copy p,
:root[data-theme="dark"] .featured-heading p,
:root[data-theme="dark"] .service-card p,
:root[data-theme="dark"] .prose,
:root[data-theme="dark"] .notice,
:root[data-theme="dark"] .search-summary,
:root[data-theme="dark"] .detail-meta small{
  color:#9d9d9d !important;
}
:root[data-theme="dark"] .story-card span{color:#aaa !important}
:root[data-theme="dark"] .detail-meta div{background:#202020 !important}

:root[data-theme="dark"] .page-hero,
:root[data-theme="dark"] .section,
:root[data-theme="dark"] .section.soft,
:root[data-theme="dark"] .section.dark{
  background:#0d0d0d !important;
  color:#f5f5f5 !important;
  border-color:#242424 !important;
}
:root[data-theme="dark"] .page-hero p{color:#9d9d9d !important}

:root[data-theme="dark"] .filters input,
:root[data-theme="dark"] .filters select,
:root[data-theme="dark"] .form input,
:root[data-theme="dark"] .form textarea,
:root[data-theme="dark"] .form select{
  background:#171717 !important;
  color:#f5f5f5 !important;
  border-color:#333 !important;
}
:root[data-theme="dark"] .filters input::placeholder,
:root[data-theme="dark"] .form input::placeholder,
:root[data-theme="dark"] .form textarea::placeholder{
  color:#777 !important;
}
:root[data-theme="dark"] .btn{
  background:#ededed !important;
  color:#111 !important;
  border-color:#ededed !important;
}
:root[data-theme="dark"] .btn.secondary,
:root[data-theme="dark"] .final-inner .btn.ghost{
  background:#151515 !important;
  color:#f5f5f5 !important;
  border-color:#3a3a3a !important;
}

:root[data-theme="dark"] .footer{
  background:#080808 !important;
  color:#f5f5f5 !important;
  border-top-color:#242424 !important;
}
:root[data-theme="dark"] .footer .brand{color:#f5f5f5 !important}
:root[data-theme="dark"] .footer .brand-mark{
  color:#f5f5f5 !important;
  border-color:#555 !important;
  background:#161616 !important;
}
:root[data-theme="dark"] .footer p,
:root[data-theme="dark"] .footer a{color:#929292 !important}
:root[data-theme="dark"] .footer strong{color:#f5f5f5 !important}
:root[data-theme="dark"] .footer-bottom{
  color:#777 !important;
  border-top-color:#222 !important;
}

/* Hero stays cinematic in both themes; only the white/dark CRM navigation changes. */
:root[data-theme="light"] .hero-aurelia-inspired .hero-primary{
  background:#fff !important;
  color:#171717 !important;
  border-color:#fff !important;
}
:root[data-theme="light"] .hero-aurelia-inspired .hero-secondary{
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.55) !important;
}
:root[data-theme="dark"] .hero-aurelia-inspired .hero-primary{
  background:#f1f1f1 !important;
  color:#111 !important;
  border-color:#f1f1f1 !important;
}
:root[data-theme="dark"] .hero-aurelia-inspired .hero-secondary{
  background:rgba(0,0,0,.18) !important;
  color:#f5f5f5 !important;
  border-color:rgba(255,255,255,.42) !important;
}

/* Mobile header/actions */
@media(max-width:900px){
  .header-actions{gap:8px}
  .theme-toggle{width:40px;height:40px}
  .nav.open{
    background:var(--ui-surface) !important;
    color:var(--ui-text) !important;
    border-color:var(--ui-line) !important;
  }
}


/* =========================================================
   v2.3 — Reference-video hero recreation
   Full-screen luxury-house scene + liquid glass media card
   ========================================================= */

body:has(.norro-hero) .site-header{
  position:absolute !important;
  inset:0 0 auto 0;
  z-index:90 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
body:has(.norro-hero) .site-header .header-row{
  height:66px !important;
}
body:has(.norro-hero) .site-header .brand,
body:has(.norro-hero) .site-header .nav,
body:has(.norro-hero) .site-header .nav a{
  color:rgba(255,255,255,.77) !important;
}
body:has(.norro-hero) .site-header .brand{
  color:#f5f5f3 !important;
}
body:has(.norro-hero) .site-header .brand-mark{
  color:#fff !important;
  background:rgba(8,10,11,.12) !important;
  border-color:rgba(255,255,255,.28) !important;
}
body:has(.norro-hero) .site-header .nav{
  font-size:10px !important;
  gap:26px !important;
}
body:has(.norro-hero) .site-header .header-cta{
  background:#f4f4f1 !important;
  color:#111 !important;
  border-color:#f4f4f1 !important;
  border-radius:999px !important;
  min-height:36px !important;
  padding:0 18px !important;
}
body:has(.norro-hero) .site-header .theme-toggle{
  width:38px !important;height:38px !important;
  background:rgba(12,14,15,.22) !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.18) !important;
}
body:has(.norro-hero) .site-header .mobile-toggle{color:#fff !important}

.norro-filter-defs{position:absolute;pointer-events:none}
.norro-hero{
  position:relative;
  min-height:100vh;
  overflow:hidden;
  background:#090b0d;
  color:#fff;
}
.norro-bg{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  filter:saturate(.78) contrast(1.08) brightness(.74) !important;
  transform:scale(1.025);
  will-change:transform;
}
.norro-grade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,rgba(7,9,10,.78) 0%,rgba(7,9,10,.54) 27%,rgba(7,9,10,.15) 58%,rgba(7,9,10,.31) 100%),
    linear-gradient(180deg,rgba(6,8,9,.38) 0%,rgba(6,8,9,.02) 42%,rgba(6,8,9,.34) 100%);
}
.norro-stage{
  position:relative;
  z-index:3;
  min-height:100vh;
  padding-top:88px;
  padding-bottom:42px;
}
.norro-copy{
  position:absolute;
  left:0;
  top:30%;
  width:min(480px,38vw);
  z-index:8;
}
.norro-kicker{
  display:block;
  margin-bottom:13px;
  color:rgba(255,255,255,.47);
  font-size:8px;
  font-weight:600;
  letter-spacing:.23em;
  text-transform:uppercase;
}
.norro-copy h1{
  margin:0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(41px,4.1vw,68px);
  line-height:.91;
  font-weight:400;
  letter-spacing:-.035em;
  color:#f3f3f0;
}
.norro-copy h1 span{display:block;overflow:hidden}
.norro-copy p{
  width:min(390px,100%);
  margin:18px 0 0;
  font-size:11px;
  line-height:1.6;
  color:rgba(255,255,255,.54);
}
.norro-actions{
  display:flex;
  gap:10px;
  margin-top:21px;
}
.norro-btn{
  min-height:39px;
  padding:0 16px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:transform .28s ease,background .2s ease;
}
.norro-btn:hover{transform:translateY(-2px)}
.norro-btn.primary{
  background:#f3f3ef;
  color:#111;
}
.norro-btn.secondary{
  border:1px solid rgba(255,255,255,.20);
  color:#fff;
  background:rgba(5,7,8,.08);
}

.norro-right-stack{
  position:absolute;
  right:1.2%;
  top:18%;
  z-index:8;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.norro-mini-stat{
  width:92px;
  height:58px;
  padding:11px 12px;
  border-radius:13px;
  background:rgba(8,10,11,.48);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.norro-mini-stat span{
  display:block;
  font-size:6px;
  letter-spacing:.14em;
  color:rgba(255,255,255,.34);
}
.norro-mini-stat strong{
  display:block;
  margin-top:5px;
  font-size:9px;
  color:rgba(255,255,255,.70);
  font-weight:500;
}

.norro-water-card{
  position:absolute;
  left:40%;
  bottom:4.8%;
  width:390px;
  height:120px;
  z-index:10;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(129,217,224,.18);
  box-shadow:0 18px 45px rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.norro-water-media{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.norro-water-video{
  position:absolute;
  inset:-15%;
  width:130%;
  height:130%;
  object-fit:cover;
  filter:url(#norroWaterWarp) saturate(.75) brightness(.82);
  transform:scale(1.05);
  opacity:.76;
  will-change:transform,filter;
}
.norro-water-tint{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(104,206,216,.54),rgba(119,202,216,.26) 52%,rgba(83,149,169,.28)),
    linear-gradient(180deg,rgba(255,255,255,.13),transparent 48%,rgba(0,0,0,.08));
  mix-blend-mode:screen;
  opacity:.72;
}
.norro-water-copy{
  position:absolute;
  left:18px;
  top:16px;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:5px;
  color:#eaf9f8;
}
.norro-water-copy span{
  font-size:7px;
  letter-spacing:.16em;
  opacity:.68;
}
.norro-water-copy strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:18px;
  font-weight:400;
}
.norro-water-copy small{
  font-size:8px;
  opacity:.60;
}
.norro-wave-line{
  position:absolute;
  left:-4%;
  right:-4%;
  bottom:-10px;
  height:34px;
  border-radius:50%;
  border-top:1px solid rgba(255,255,255,.58);
  opacity:.54;
  transform:rotate(-1deg);
  animation:norroWaveLine 4.8s ease-in-out infinite alternate;
}
@keyframes norroWaveLine{
  from{transform:translateX(-10px) rotate(-1.5deg) scaleY(.92)}
  to{transform:translateX(12px) rotate(1deg) scaleY(1.08)}
}

.norro-thumb-card{
  position:absolute;
  left:calc(40% + 318px);
  bottom:5.6%;
  z-index:11;
  width:118px;
  height:102px;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  background:#111;
  box-shadow:0 16px 30px rgba(0,0,0,.22);
}
.norro-thumb-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(.82) brightness(.76);
}
.norro-thumb-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.55));
}
.norro-thumb-card span{
  position:absolute;
  left:10px;
  bottom:9px;
  z-index:2;
  font-size:7px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}

.norro-radar{
  position:absolute;
  left:1.5%;
  bottom:2.8%;
  width:86px;
  height:86px;
  z-index:7;
}
.norro-radar i{
  position:absolute;
  inset:0;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.11);
}
.norro-radar i:nth-child(2){inset:16px}
.norro-radar i:nth-child(3){inset:32px}
.norro-radar b{
  position:absolute;
  left:50%;
  top:50%;
  width:3px;height:3px;border-radius:50%;
  background:rgba(255,255,255,.64);
  transform:translate(-50%,-50%);
}
.norro-radar::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:41%;
  height:1px;
  transform-origin:left center;
  background:linear-gradient(90deg,rgba(255,255,255,.42),transparent);
  animation:norroRadar 5.5s linear infinite;
}
@keyframes norroRadar{to{transform:rotate(360deg)}}

.norro-index{
  position:absolute;
  right:2%;
  bottom:2.2%;
  z-index:8;
  display:flex;
  align-items:center;
  gap:10px;
  color:rgba(255,255,255,.62);
}
.norro-index span{
  font-family:Georgia,"Times New Roman",serif;
  font-size:31px;
  line-height:1;
}
.norro-index i{
  width:62px;height:1px;background:rgba(255,255,255,.24);
}
.norro-index small{
  font-size:7px;
  letter-spacing:.12em;
  opacity:.45;
}

/* entrance choreography */
.norro-kicker,.norro-copy h1 span,.norro-copy p,.norro-actions,
.norro-water-card,.norro-thumb-card,.norro-right-stack,.norro-radar,.norro-index{
  opacity:0;
  transform:translateY(18px);
}
.norro-hero.is-ready .norro-kicker{animation:norroUp .55s .12s ease forwards}
.norro-hero.is-ready .norro-copy h1 span:nth-child(1){animation:norroUp .72s .18s cubic-bezier(.16,1,.3,1) forwards}
.norro-hero.is-ready .norro-copy h1 span:nth-child(2){animation:norroUp .72s .24s cubic-bezier(.16,1,.3,1) forwards}
.norro-hero.is-ready .norro-copy h1 span:nth-child(3){animation:norroUp .72s .30s cubic-bezier(.16,1,.3,1) forwards}
.norro-hero.is-ready .norro-copy p{animation:norroUp .60s .40s ease forwards}
.norro-hero.is-ready .norro-actions{animation:norroUp .60s .48s ease forwards}
.norro-hero.is-ready .norro-water-card{animation:norroCard .85s .42s cubic-bezier(.16,1,.3,1) forwards}
.norro-hero.is-ready .norro-thumb-card{animation:norroCard .85s .52s cubic-bezier(.16,1,.3,1) forwards}
.norro-hero.is-ready .norro-right-stack{animation:norroCard .75s .58s ease forwards}
.norro-hero.is-ready .norro-radar{animation:norroUp .70s .62s ease forwards}
.norro-hero.is-ready .norro-index{animation:norroUp .70s .66s ease forwards}
@keyframes norroUp{to{opacity:1;transform:none}}
@keyframes norroCard{
  from{opacity:0;transform:translate3d(0,26px,0) scale(.97)}
  to{opacity:1;transform:none}
}

.fluid-section{
  opacity:0;
  transform:translate3d(0,26px,0);
  transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);
}
.fluid-section.in-view{opacity:1;transform:none}

@media(max-width:1000px){
  .norro-copy{width:43vw}
  .norro-water-card{left:38%;width:350px}
  .norro-thumb-card{left:calc(38% + 285px)}
}
@media(max-width:820px){
  .norro-copy{width:58vw;top:25%}
  .norro-right-stack{display:none}
  .norro-water-card{left:32%;width:330px}
  .norro-thumb-card{left:calc(32% + 267px)}
}
@media(max-width:640px){
  .norro-stage{min-height:92vh}
  .norro-copy{width:88%;top:20%}
  .norro-copy h1{font-size:clamp(38px,11.5vw,54px)}
  .norro-copy p{width:78%}
  .norro-water-card{
    left:8%;
    bottom:7%;
    width:76%;
    height:98px;
  }
  .norro-thumb-card{
    left:auto;
    right:4%;
    bottom:8%;
    width:90px;
    height:84px;
  }
  .norro-radar,.norro-index{display:none}
}
@media(prefers-reduced-motion:reduce){
  .norro-kicker,.norro-copy h1 span,.norro-copy p,.norro-actions,
  .norro-water-card,.norro-thumb-card,.norro-right-stack,.norro-radar,.norro-index{
    opacity:1 !important;transform:none !important;animation:none !important;
  }
  .norro-radar::after,.norro-wave-line{animation:none !important}
  .fluid-section{opacity:1;transform:none;transition:none}
}


/* =========================================================
   v2.4 — Reference UI STYLE only
   Rounded glass navigation + white capsule CTA + 9-dot menu
   + circular vertical social rail (Instagram / Facebook / X)
   ========================================================= */

.lux-site-header{
  position:fixed !important;
  inset:0 0 auto 0 !important;
  z-index:120 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.lux-header-row{
  min-height:72px;
  display:grid !important;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:22px;
}
.lux-brand{position:relative;z-index:2}

/* Glass pill navigation */
.lux-pill-nav{
  justify-self:center;
  display:flex !important;
  align-items:center;
  gap:2px !important;
  padding:4px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.14) !important;
  background:rgba(18,23,27,.42) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 10px 28px rgba(0,0,0,.12);
  backdrop-filter:blur(16px) saturate(125%) !important;
  -webkit-backdrop-filter:blur(16px) saturate(125%) !important;
}
.lux-nav-item{
  min-height:39px;
  padding:0 19px !important;
  border:0 !important;
  border-radius:999px !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:rgba(255,255,255,.72) !important;
  font-size:11px !important;
  font-weight:500 !important;
  letter-spacing:.01em !important;
  white-space:nowrap;
  transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.lux-nav-item:hover{
  color:#fff !important;
  background:rgba(255,255,255,.07) !important;
  transform:translateY(-1px);
}
.lux-nav-item.is-active{
  color:#fff !important;
  background:rgba(255,255,255,.14) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10);
}

/* White action capsule */
.lux-header-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.lux-book-btn{
  height:47px;
  padding:0 5px 0 20px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  gap:13px;
  background:#f7f7f4;
  color:#111 !important;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 8px 22px rgba(0,0,0,.13);
  font-size:10px;
  font-weight:800;
  letter-spacing:.035em;
  transition:transform .25s ease,box-shadow .25s ease;
}
.lux-book-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}
.lux-book-btn i{
  width:37px;
  height:37px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#d8f3f7;
  color:#183238;
  font-size:22px;
  line-height:1;
  font-style:normal;
  font-weight:400;
}

/* 9-dot circular menu */
.lux-grid-menu-btn{
  width:49px;
  height:49px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.19);
  background:rgba(9,13,15,.38);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:background .24s ease,border-color .24s ease,transform .24s ease;
}
.lux-grid-menu-btn:hover,
.lux-grid-menu-btn[aria-expanded="true"]{
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.34);
  transform:rotate(6deg);
}
.lux-grid-dots{
  width:19px;
  height:19px;
  display:grid;
  grid-template-columns:repeat(3,3px);
  grid-template-rows:repeat(3,3px);
  gap:4px;
  place-content:center;
}
.lux-grid-dots i{
  width:3px;height:3px;
  border-radius:50%;
  background:currentColor;
}

/* Quick menu opened by 9-dot button */
.lux-quick-menu{
  position:absolute;
  top:66px;
  right:max(22px,calc((100vw - var(--max))/2));
  width:248px;
  padding-top:8px;
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px) scale(.97);
  transform-origin:top right;
  transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
}
.lux-quick-menu.is-open{
  opacity:1;
  visibility:visible;
  transform:none;
}
.lux-quick-menu-inner{
  padding:10px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(12,16,18,.91);
  box-shadow:0 20px 56px rgba(0,0,0,.30);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.lux-quick-links{display:grid}
.lux-quick-links a{
  padding:11px 12px;
  border-radius:11px;
  color:rgba(255,255,255,.77);
  font-size:12px;
}
.lux-quick-links a:hover{
  color:#fff;
  background:rgba(255,255,255,.08);
}
.lux-theme-toggle{
  position:relative !important;
  width:100% !important;
  min-height:42px !important;
  margin-top:7px !important;
  padding:0 12px !important;
  border-radius:12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px;
  background:rgba(255,255,255,.07) !important;
  border-color:rgba(255,255,255,.10) !important;
  color:#fff !important;
}
.lux-theme-toggle span{
  position:static !important;
}
.lux-theme-toggle b{
  font-size:11px;
  font-weight:500;
}

/* Vertical social controls like reference */
.lux-social-rail{
  position:absolute;
  z-index:18;
  left:-54px;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:18px;
}
.lux-social-btn{
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(6,9,10,.22);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  transition:transform .25s ease,background .25s ease,border-color .25s ease;
}
.lux-social-btn:hover{
  transform:translateX(4px) scale(1.04);
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.38);
}
.lux-social-btn svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.lux-social-btn:nth-child(2) svg{
  width:20px;
  height:20px;
  fill:currentColor;
  stroke:none;
}

/* Non-home pages: keep same STYLE, adapted to white CRM theme */
body:not(:has(.norro-hero)) .lux-site-header{
  background:rgba(255,255,255,.94) !important;
  border-bottom:1px solid #e8e8e8 !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
}
body:not(:has(.norro-hero)) .lux-brand{
  color:#171717 !important;
}
body:not(:has(.norro-hero)) .lux-brand .brand-mark{
  color:#171717 !important;
  border-color:#d8d8d8 !important;
  background:#f8f8f8 !important;
}
body:not(:has(.norro-hero)) .lux-pill-nav{
  background:rgba(245,245,245,.92) !important;
  border-color:#dedede !important;
}
body:not(:has(.norro-hero)) .lux-nav-item{
  color:#666 !important;
}
body:not(:has(.norro-hero)) .lux-nav-item:hover,
body:not(:has(.norro-hero)) .lux-nav-item.is-active{
  color:#171717 !important;
  background:#fff !important;
}
body:not(:has(.norro-hero)) .lux-book-btn{
  background:#171717 !important;
  color:#fff !important;
  border-color:#171717 !important;
}
body:not(:has(.norro-hero)) .lux-book-btn i{
  background:#e8e8e8 !important;
  color:#171717 !important;
}
body:not(:has(.norro-hero)) .lux-grid-menu-btn{
  color:#171717 !important;
  background:#f5f5f5 !important;
  border-color:#ddd !important;
}

/* Dark mode for non-home pages */
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-site-header{
  background:rgba(9,9,9,.94) !important;
  border-bottom-color:#252525 !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-brand{
  color:#f5f5f5 !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-brand .brand-mark{
  color:#f5f5f5 !important;
  border-color:#484848 !important;
  background:#171717 !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-pill-nav{
  background:rgba(24,24,24,.92) !important;
  border-color:#333 !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-nav-item{
  color:#aaa !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-nav-item:hover,
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-nav-item.is-active{
  color:#fff !important;
  background:#2b2b2b !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-book-btn{
  background:#f0f0ee !important;
  color:#111 !important;
  border-color:#f0f0ee !important;
}
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-grid-menu-btn{
  color:#fff !important;
  background:#171717 !important;
  border-color:#353535 !important;
}

/* Give content on internal pages room for the fixed header */
body:not(:has(.norro-hero)) main{
  padding-top:72px;
}

@media(max-width:1120px){
  .lux-nav-item{padding:0 14px !important}
  .lux-pill-nav{gap:1px !important}
}
@media(max-width:960px){
  .lux-header-row{
    grid-template-columns:auto 1fr auto;
  }
  .lux-pill-nav{display:none !important}
  .lux-book-btn{display:none}
  .lux-social-rail{
    left:12px;
    top:auto;
    bottom:92px;
    transform:none;
  }
}
@media(max-width:640px){
  .lux-header-row{min-height:64px}
  .lux-brand{font-size:12px !important}
  .lux-brand .brand-mark{width:34px;height:34px}
  .lux-grid-menu-btn{width:44px;height:44px}
  .lux-social-rail{
    left:12px;
    bottom:20px;
    flex-direction:row;
    gap:10px;
  }
  .lux-social-btn{width:40px;height:40px}
  .lux-quick-menu{
    top:60px;
    right:14px;
    width:min(248px,calc(100vw - 28px));
  }
}


/* =========================================================
   v2.5 — remove hero CTAs + right status cards
   + properly position/distribute social icons
   ========================================================= */

/* Removed elements stay gone even if cached markup survives. */
.norro-actions,
.norro-right-stack{
  display:none !important;
}

/* Social rail: keep fully inside viewport and distribute cleanly. */
.lux-social-rail{
  position:fixed !important;
  left:22px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:125 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  padding:0 !important;
}

/* Slightly smaller and cleaner than v2.4 so the rail feels intentional. */
.lux-social-btn{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  border-radius:50% !important;
  background:rgba(7,10,11,.28) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 8px 20px rgba(0,0,0,.10) !important;
}
.lux-social-btn:hover{
  transform:translateX(3px) scale(1.035) !important;
}

/* Make sure no hero copy collides with the social rail. */
@media(min-width:961px){
  .norro-copy{
    left:24px !important;
    padding-left:36px;
  }
}

/* Tablet: move rail slightly inward but maintain vertical distribution. */
@media(max-width:960px){
  .lux-social-rail{
    left:14px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    flex-direction:column !important;
    gap:16px !important;
  }
  .lux-social-btn{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
  }
}

/* Mobile: use a compact horizontal dock at the bottom-left. */
@media(max-width:640px){
  .lux-social-rail{
    left:14px !important;
    top:auto !important;
    bottom:16px !important;
    transform:none !important;
    flex-direction:row !important;
    gap:10px !important;
  }
  .lux-social-btn{
    width:40px !important;
    height:40px !important;
    flex-basis:40px !important;
  }
}


/* =========================================================
   v2.6 — move social rail to right + remove mini-stat cards
   ========================================================= */

.norro-right-stack,
.norro-mini-stat{
  display:none !important;
}

/* Social icons on the RIGHT side of hero, evenly distributed. */
.lux-social-rail{
  position:fixed !important;
  left:auto !important;
  right:22px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  z-index:125 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
}

/* Hover moves slightly inward, not off-screen. */
.lux-social-btn:hover{
  transform:translateX(-3px) scale(1.035) !important;
}

/* Keep clear of the bottom page index and top navigation. */
@media(min-width:961px){
  .lux-social-rail{
    right:24px !important;
  }
}

@media(max-width:960px){
  .lux-social-rail{
    left:auto !important;
    right:14px !important;
    top:50% !important;
    bottom:auto !important;
    transform:translateY(-50%) !important;
    flex-direction:column !important;
    gap:16px !important;
  }
}

@media(max-width:640px){
  .lux-social-rail{
    left:auto !important;
    right:14px !important;
    top:auto !important;
    bottom:16px !important;
    transform:none !important;
    flex-direction:row !important;
    gap:10px !important;
  }
}


/* =========================================================
   v2.7 — replace 9-dot menu with direct dark-mode button
   ========================================================= */

.lux-grid-menu-btn,
.lux-quick-menu{
  display:none !important;
}

.lux-direct-theme-toggle{
  width:49px !important;
  height:49px !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  background:rgba(9,13,15,.38) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.19) !important;
  cursor:pointer !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  transition:background .24s ease,border-color .24s ease,transform .24s ease !important;
}
.lux-direct-theme-toggle:hover{
  background:rgba(255,255,255,.09) !important;
  border-color:rgba(255,255,255,.34) !important;
  transform:rotate(8deg);
}
.lux-direct-theme-toggle span{
  position:absolute !important;
  font-size:19px !important;
  line-height:1 !important;
}
.lux-direct-theme-toggle .theme-moon{display:none !important}
:root[data-theme="dark"] .lux-direct-theme-toggle .theme-sun{display:none !important}
:root[data-theme="dark"] .lux-direct-theme-toggle .theme-moon{display:block !important}

/* Light internal pages */
body:not(:has(.norro-hero)) .lux-direct-theme-toggle{
  color:#171717 !important;
  background:#f5f5f5 !important;
  border-color:#ddd !important;
}

/* Dark internal pages */
:root[data-theme="dark"] body:not(:has(.norro-hero)) .lux-direct-theme-toggle{
  color:#fff !important;
  background:#171717 !important;
  border-color:#353535 !important;
}

@media(max-width:640px){
  .lux-direct-theme-toggle{
    width:44px !important;
    height:44px !important;
  }
}


/* =========================================================
   v2.8 — 4-scene hero carousel
   ========================================================= */

.norro-bg-stack{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.norro-bg-stack .norro-bg{
  opacity:0 !important;
  transition:opacity .95s cubic-bezier(.16,1,.3,1) !important;
}
.norro-bg-stack .norro-bg.is-active{
  opacity:1 !important;
}
.norro-bg-stack .norro-bg.is-entering{
  opacity:1 !important;
}

/* Make the 01 — 04 control interactive but keep the reference look. */
.norro-index{
  user-select:none;
}
.norro-index button{
  appearance:none;
  width:27px;
  height:27px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.14);
  color:rgba(255,255,255,.65);
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:17px;
  line-height:1;
  padding:0;
  opacity:0;
  transform:scale(.88);
  transition:opacity .2s ease,transform .2s ease,background .2s ease;
}
.norro-index:hover button,
.norro-index:focus-within button{
  opacity:1;
  transform:scale(1);
}
.norro-index button:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.norro-index-current{
  min-width:38px;
  text-align:center;
}
.norro-index-total{
  min-width:16px;
}

/* Fade card copy when slide changes. */
.norro-water-copy{
  transition:opacity .28s ease,transform .28s ease;
}
.norro-water-copy.is-switching{
  opacity:0;
  transform:translateY(6px);
}
.norro-thumb-card img{
  transition:opacity .42s ease,transform .8s cubic-bezier(.16,1,.3,1);
}
.norro-thumb-card img.is-switching{
  opacity:.2;
  transform:scale(1.06);
}

@media(max-width:640px){
  .norro-index button{
    opacity:1;
    transform:none;
    width:25px;
    height:25px;
  }
}


/* =========================================================
   v2.9 — custom dropdowns that ALWAYS open downward
   ========================================================= */

.motion-search,
.filters{
  overflow:visible !important;
}

.drop-field,
.custom-drop{
  position:relative;
  min-width:0;
}

.custom-drop{
  width:100%;
}

.custom-drop-toggle{
  width:100%;
  min-height:45px;
  padding:0 34px 0 0;
  border:0;
  border-bottom:1px solid #cfcfcf;
  background:transparent;
  color:#202020;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
  font:inherit;
  cursor:pointer;
  position:relative;
}

.custom-drop-toggle i{
  position:absolute;
  right:7px;
  top:50%;
  width:0;
  height:0;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-top:8px solid currentColor;
  transform:translateY(-30%);
  opacity:.72;
  transition:transform .2s ease;
}

.custom-drop.is-open .custom-drop-toggle i{
  transform:translateY(-30%) rotate(180deg);
}

.custom-drop-menu{
  position:absolute;
  left:0;
  top:calc(100% + 8px);
  z-index:300;
  width:max(100%,220px);
  max-height:340px;
  overflow-y:auto;
  padding:6px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  color:#171717;
  box-shadow:0 18px 42px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}

.custom-drop.is-open .custom-drop-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.custom-drop-option{
  width:100%;
  min-height:38px;
  padding:8px 10px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:inherit;
  display:block;
  text-align:left;
  font:inherit;
  cursor:pointer;
}

.custom-drop-option:hover,
.custom-drop-option.is-selected{
  background:#f0f0f0;
}

.filters .custom-drop-toggle{
  min-height:48px;
  padding:0 38px 0 14px;
  border:1px solid #d8d8d5;
  border-radius:12px;
  background:#fff;
}

.filters .custom-drop-toggle i{
  right:14px;
}

:root[data-theme="dark"] .custom-drop-toggle{
  color:#f5f5f5;
  border-color:#3a3a3a;
}

:root[data-theme="dark"] .custom-drop-menu{
  background:#191919;
  color:#f5f5f5;
  border-color:#343434;
  box-shadow:0 18px 44px rgba(0,0,0,.38);
}

:root[data-theme="dark"] .custom-drop-option:hover,
:root[data-theme="dark"] .custom-drop-option.is-selected{
  background:#292929;
}

:root[data-theme="dark"] .filters .custom-drop-toggle{
  background:#171717;
  border-color:#333;
}

/* On small screens the menu still opens DOWN, with scroll if needed. */
@media(max-width:640px){
  .custom-drop-menu{
    top:calc(100% + 6px) !important;
    bottom:auto !important;
    max-height:280px;
    width:100%;
  }
}


/* =========================================================
   v3.0 — manual zone entry
   ========================================================= */

.zone-manual-input{
  display:none;
  width:100%;
  margin-top:8px;
  min-height:42px;
  padding:0 12px;
  border:1px solid #d8d8d5;
  border-radius:10px;
  background:#fff;
  color:#171717;
  font:inherit;
}

.zone-manual-input.is-visible{
  display:block;
}

.zone-manual-input:focus{
  outline:none;
  border-color:#aaa;
  box-shadow:0 0 0 3px rgba(0,0,0,.04);
}

.custom-drop-manual-option{
  margin-top:4px;
  border-top:1px solid #ececec;
  border-radius:0 0 8px 8px;
  font-weight:600;
}

:root[data-theme="dark"] .zone-manual-input{
  background:#171717;
  color:#f5f5f5;
  border-color:#333;
}

:root[data-theme="dark"] .custom-drop-manual-option{
  border-top-color:#303030;
}


/* =========================================================
   v3.1 — compact Zona combo: manual entry always active
   ========================================================= */

/* Hide old v3.0 manual-zone UI if any stale markup remains. */
.zone-manual-input,
.custom-drop[data-dropdown="zona"]{
  display:none !important;
}

.zone-combo{
  position:relative;
  width:100%;
}

.zone-combo-input{
  width:100%;
  min-height:45px;
  padding:0 38px 0 0;
  border:0;
  border-bottom:1px solid #cfcfcf;
  background:transparent;
  color:#202020;
  font:inherit;
  outline:none;
}

.zone-combo-input::placeholder{
  color:#8d8d8d;
}

.zone-combo-input:focus{
  border-bottom-color:#a9a9a9;
}

.zone-combo-toggle{
  position:absolute;
  right:0;
  top:0;
  width:34px;
  height:45px;
  border:0;
  background:transparent;
  color:#555;
  display:grid;
  place-items:center;
  cursor:pointer;
  padding:0;
}

.zone-combo-toggle i{
  width:0;
  height:0;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-top:8px solid currentColor;
  opacity:.78;
  transition:transform .2s ease;
}

.zone-combo.is-open .zone-combo-toggle i{
  transform:rotate(180deg);
}

.zone-combo-menu{
  position:absolute;
  left:0;
  top:calc(100% + 8px);
  z-index:320;
  width:max(100%,220px);
  max-height:300px;
  overflow-y:auto;
  padding:6px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  color:#171717;
  box-shadow:0 18px 42px rgba(0,0,0,.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}

.zone-combo.is-open .zone-combo-menu{
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto;
}

.zone-combo-option{
  width:100%;
  min-height:38px;
  padding:8px 10px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:inherit;
  display:block;
  text-align:left;
  font:inherit;
  cursor:pointer;
}

.zone-combo-option:hover{
  background:#f0f0f0;
}

/* /propiedades/ filter styling */
.filters .zone-combo-input{
  min-height:48px;
  padding:0 40px 0 14px;
  border:1px solid #d8d8d5;
  border-radius:12px;
  background:#fff;
}

.filters .zone-combo-toggle{
  right:6px;
  top:2px;
}

:root[data-theme="dark"] .zone-combo-input{
  color:#f5f5f5;
  border-color:#3a3a3a;
}

:root[data-theme="dark"] .zone-combo-input::placeholder{
  color:#858585;
}

:root[data-theme="dark"] .zone-combo-menu{
  background:#191919;
  color:#f5f5f5;
  border-color:#343434;
  box-shadow:0 18px 44px rgba(0,0,0,.38);
}

:root[data-theme="dark"] .zone-combo-option:hover{
  background:#292929;
}

:root[data-theme="dark"] .filters .zone-combo-input{
  background:#171717;
  border-color:#333;
}

@media(max-width:640px){
  .zone-combo-menu{
    width:100%;
    max-height:260px;
  }
}


/* =========================================================
   v3.2 — compact Zona label + currency symbols
   ========================================================= */

.zone-combo-input::placeholder{
  color:#8d8d8d;
}

/* Currency prefix */
.money-input{
  position:relative;
  width:100%;
}

.money-input > b{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  font-size:18px;
  line-height:1;
  font-weight:500;
  color:#4f4f4f;
  pointer-events:none;
}

.money-input input{
  padding-left:30px !important;
}

/* Homepage search uses underline inputs. */
.motion-search .money-input > b{
  left:0;
  color:#606060;
}

.motion-search .money-input input{
  padding-left:16px !important;
}

:root[data-theme="dark"] .money-input > b{
  color:#d2d2d2;
}

/* ================= v340 Nosotros editorial refresh ================= */
.about-studio-page{
  background:linear-gradient(180deg,#f4f1ec 0%,#efeae2 100%);
}
.about-studio-section{
  padding:44px 0 84px;
  background:
    radial-gradient(circle at 12% 22%, rgba(255,255,255,.9) 0 18%, rgba(255,255,255,0) 40%),
    linear-gradient(180deg,#f4f1ec 0%,#efeae2 100%);
}
.about-studio-shell{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:30px;
  align-items:stretch;
}
.about-studio-card{
  position:relative;
  z-index:1;
  background:rgba(255,255,255,.94);
  border:1px solid #e9e1d7;
  border-radius:34px;
  padding:42px 42px 38px;
  box-shadow:0 28px 60px rgba(88,74,56,.10);
  backdrop-filter:blur(8px);
}
.about-eyebrow{
  color:#7d7469 !important;
  letter-spacing:.22em;
  margin-bottom:14px;
}
.about-studio-card h1{
  margin:0;
  font-family:Georgia,serif;
  font-weight:400;
  font-size:clamp(40px,5vw,68px);
  line-height:.98;
  color:#171717;
}
.about-studio-lead{
  margin:18px 0 0;
  font-size:18px;
  line-height:1.75;
  color:#666055;
  max-width:700px;
}
.about-studio-stack{
  display:grid;
  gap:28px;
  margin-top:34px;
}
.about-studio-item{
  display:grid;
  grid-template-columns:68px 1fr;
  gap:18px;
  align-items:start;
  padding-top:26px;
  border-top:1px solid #eee4d7;
}
.about-studio-item:first-child{
  border-top:0;
  padding-top:0;
}
.about-studio-icon{
  width:58px;
  height:58px;
  border-radius:18px;
  border:1px solid #eadfce;
  background:#f7f2ea;
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:700;
  letter-spacing:.22em;
  color:#7c6b59;
}
.about-studio-item h2{
  margin:2px 0 10px;
  font-size:38px;
  line-height:1;
  font-weight:500;
  color:#1b1b1b;
}
.about-studio-item p{
  margin:0;
  color:#59544e;
  line-height:1.8;
  font-size:17px;
}
.about-values-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.about-values-row span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 16px;
  border-radius:999px;
  background:#f4eee5;
  border:1px solid #e7ddcf;
  color:#665d52;
  font-size:12px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.about-scene-panel{
  position:relative;
  min-height:860px;
  border-radius:38px;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.08)),
    linear-gradient(180deg,#ece7df 0%,#e4ddd4 100%);
  box-shadow:0 28px 60px rgba(88,74,56,.10);
  border:1px solid rgba(224,213,199,.95);
}
.about-scene-frame{
  position:absolute;
  inset:0;
  background:url('/assets/media/about-studio-scene.svg') center/cover no-repeat;
}
.about-scene-note{
  position:absolute;
  left:28px;
  bottom:28px;
  max-width:300px;
  padding:18px 20px;
  border-radius:22px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(232,224,213,.98);
  box-shadow:0 14px 28px rgba(70,57,41,.10);
  backdrop-filter:blur(10px);
}
.about-scene-note small{
  display:block;
  color:#857b70;
  font-size:12px;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.about-scene-note strong{
  display:block;
  color:#181818;
  font-size:20px;
  font-weight:600;
  line-height:1.35;
}

@media (max-width: 1100px){
  .about-studio-shell{grid-template-columns:1fr;}
  .about-scene-panel{min-height:620px;}
}
@media (max-width: 740px){
  .about-studio-section{padding:28px 0 60px;}
  .about-studio-card{padding:28px 22px 24px;border-radius:28px;}
  .about-studio-card h1{font-size:42px;}
  .about-studio-lead{font-size:17px;}
  .about-studio-item{grid-template-columns:1fr;gap:14px;padding-top:20px;}
  .about-studio-item h2{font-size:32px;}
  .about-scene-panel{min-height:420px;border-radius:28px;}
  .about-scene-note{left:18px;right:18px;bottom:18px;max-width:none;}
}

:root[data-theme="dark"] .about-studio-page{
  background:linear-gradient(180deg,#0a0a0a 0%,#111111 100%);
}
:root[data-theme="dark"] .about-studio-section{
  background:
    radial-gradient(circle at 12% 20%, rgba(255,255,255,.045) 0 18%, rgba(255,255,255,0) 42%),
    linear-gradient(180deg,#0a0a0a 0%,#111111 100%);
}
:root[data-theme="dark"] .about-studio-card{
  background:rgba(17,17,17,.90);
  border-color:#2a2a2a;
  box-shadow:none;
}
:root[data-theme="dark"] .about-eyebrow{color:#8e8a83 !important;}
:root[data-theme="dark"] .about-studio-card h1,
:root[data-theme="dark"] .about-studio-item h2,
:root[data-theme="dark"] .about-scene-note strong{
  color:#f5f5f5;
}
:root[data-theme="dark"] .about-studio-lead,
:root[data-theme="dark"] .about-studio-item p{
  color:#b2aca5;
}
:root[data-theme="dark"] .about-studio-item{
  border-top-color:#2c2c2c;
}
:root[data-theme="dark"] .about-studio-icon{
  background:#171717;
  border-color:#303030;
  color:#c2b5a7;
}
:root[data-theme="dark"] .about-values-row span{
  background:#171717;
  border-color:#2d2d2d;
  color:#beb6ab;
}
:root[data-theme="dark"] .about-scene-panel{
  background:
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01)),
    linear-gradient(180deg,#1a1714 0%,#121110 100%);
  border-color:#262626;
  box-shadow:none;
}
:root[data-theme="dark"] .about-scene-panel::after{
  content:'';
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.16);
}
:root[data-theme="dark"] .about-scene-note{
  background:rgba(14,14,14,.72);
  border-color:#2d2d2d;
  box-shadow:none;
}
:root[data-theme="dark"] .about-scene-note small{color:#a09a91;}

/* ================= v350 Nosotros cleanup ================= */
.about-studio-shell{
  display:block !important;
  max-width:1180px;
  margin:0 auto;
}
.about-studio-card{
  width:100%;
  max-width:none;
  padding:40px 44px 40px;
}
.about-studio-card h1{
  font-size:clamp(42px,4.2vw,60px) !important;
  line-height:1.02 !important;
  max-width:760px;
}
.about-studio-lead{
  max-width:860px !important;
  font-size:17px !important;
  line-height:1.65 !important;
}
.about-studio-stack{
  margin-top:30px !important;
  gap:24px !important;
}
.about-studio-item{
  grid-template-columns:64px minmax(0,1fr) !important;
  gap:18px !important;
  padding-top:22px !important;
}
.about-studio-item:first-child{padding-top:0 !important;}
.about-studio-item h2{
  font-size:34px !important;
}
.about-studio-item p{
  max-width:900px;
  font-size:16px !important;
  line-height:1.72 !important;
}
.about-values-row{
  margin-top:26px !important;
}
.about-scene-panel,
.about-scene-frame,
.about-scene-note{
  display:none !important;
}
@media (max-width:740px){
  .about-studio-card{padding:28px 22px 24px !important;}
  .about-studio-card h1{font-size:40px !important;}
  .about-studio-item{grid-template-columns:1fr !important;}
}

/* ================= v370 Nosotros office visual ================= */
.about-studio-section{
  padding:36px 0 84px;
}
.about-studio-shell{
  display:grid !important;
  grid-template-columns:minmax(0, 1.06fr) minmax(320px, .94fr);
  gap:32px;
  align-items:stretch;
  max-width:1360px;
  margin:0 auto;
}
.about-studio-card{
  width:100%;
  max-width:none;
  padding:42px 40px 38px;
  min-height:100%;
}
.about-office-visual{
  margin:0;
  position:relative;
  min-height:760px;
  border-radius:34px;
  overflow:hidden;
  border:1px solid #e6ddcf;
  background:#eae3d9;
  box-shadow:0 28px 60px rgba(88,74,56,.10);
}
.about-office-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
@media (max-width: 1180px){
  .about-studio-shell{
    grid-template-columns:1fr !important;
  }
  .about-office-visual{
    min-height:520px;
  }
}
@media (max-width: 740px){
  .about-studio-section{padding:28px 0 60px;}
  .about-studio-card{padding:28px 22px 24px !important;}
  .about-office-visual{
    min-height:340px;
    border-radius:28px;
  }
}
:root[data-theme="dark"] .about-office-visual{
  border-color:#2a2a2a;
  box-shadow:none;
  background:#171717;
}

/* ================= v380 Nosotros proportional office background ================= */
.about-studio-section{
  padding:46px 0 88px;
}
.about-studio-shell.about-office-background{
  position:relative;
  display:block !important;
  min-height:760px;
  max-width:1420px;
  margin:0 auto;
  padding:48px;
  border-radius:36px;
  overflow:hidden;
  background-image:
    linear-gradient(90deg, rgba(247,244,239,.12) 0%, rgba(247,244,239,.06) 42%, rgba(247,244,239,0) 68%),
    url('/assets/media/about-office-mission-v370.jpg');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  border:1px solid #e5dccf;
  box-shadow:0 28px 70px rgba(88,74,56,.12);
}
.about-studio-shell.about-office-background .about-studio-card{
  width:min(62%, 820px) !important;
  min-height:auto !important;
  padding:40px 42px 38px !important;
  background:rgba(255,255,255,.94) !important;
  border:1px solid rgba(230,221,208,.96) !important;
  box-shadow:0 24px 54px rgba(73,59,42,.14) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.about-studio-shell.about-office-background .about-studio-card h1{
  font-size:clamp(42px,4.3vw,62px) !important;
  max-width:700px;
}
.about-studio-shell.about-office-background .about-studio-lead{
  max-width:700px !important;
}
.about-studio-shell.about-office-background .about-studio-item p{
  max-width:690px;
}
.about-office-visual{display:none !important;}

@media (max-width:1180px){
  .about-studio-shell.about-office-background{
    min-height:690px;
    padding:34px;
    background-position:58% center;
  }
  .about-studio-shell.about-office-background .about-studio-card{
    width:min(68%,760px) !important;
  }
}
@media (max-width:900px){
  .about-studio-shell.about-office-background{
    min-height:auto;
    padding:24px;
    background-position:64% center;
  }
  .about-studio-shell.about-office-background .about-studio-card{
    width:100% !important;
    background:rgba(255,255,255,.93) !important;
  }
}
@media (max-width:640px){
  .about-studio-shell.about-office-background{
    padding:14px;
    border-radius:26px;
    background-position:70% center;
  }
  .about-studio-shell.about-office-background .about-studio-card{
    padding:26px 20px 22px !important;
    border-radius:22px;
  }
}

:root[data-theme="dark"] .about-studio-shell.about-office-background{
  border-color:#262626;
  box-shadow:none;
  background-image:
    linear-gradient(90deg, rgba(0,0,0,.20) 0%, rgba(0,0,0,.10) 42%, rgba(0,0,0,.02) 68%),
    url('/assets/media/about-office-mission-v370.jpg');
}
:root[data-theme="dark"] .about-studio-shell.about-office-background .about-studio-card{
  background:rgba(15,15,15,.92) !important;
  border-color:#2c2c2c !important;
  box-shadow:0 22px 48px rgba(0,0,0,.30) !important;
}

/* ================= v390 Nosotros: no duplicated mission content ================= */
.about-studio-section{
  padding:38px 0 82px !important;
}
.about-studio-shell,
.about-studio-shell.about-office-background{
  display:grid !important;
  grid-template-columns:minmax(0,1.12fr) minmax(330px,.88fr) !important;
  gap:30px !important;
  align-items:stretch !important;
  max-width:1380px !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.about-studio-shell.about-office-background::before,
.about-studio-shell.about-office-background::after{
  display:none !important;
  content:none !important;
}
.about-studio-shell.about-office-background .about-studio-card,
.about-studio-card{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:40px 42px 38px !important;
  border-radius:34px !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid #e8dfd2 !important;
  box-shadow:0 24px 55px rgba(91,75,54,.09) !important;
  backdrop-filter:none !important;
}
.about-office-clean{
  position:relative;
  min-height:100%;
  border-radius:34px;
  overflow:hidden;
  border:1px solid #e8dfd2;
  background:#e9e1d6;
  box-shadow:0 24px 55px rgba(91,75,54,.09);
}
.about-office-clean img{
  display:block;
  width:100%;
  height:100%;
  min-height:760px;
  object-fit:cover;
  object-position:center center;
}
.about-office-clean::after{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(38,28,20,.05));
}
@media(max-width:1100px){
  .about-studio-shell,
  .about-studio-shell.about-office-background{
    grid-template-columns:1fr !important;
  }
  .about-office-clean img{min-height:520px;}
}
@media(max-width:740px){
  .about-studio-section{padding:26px 0 58px !important;}
  .about-studio-shell.about-office-background .about-studio-card,
  .about-studio-card{padding:28px 22px 24px !important;border-radius:26px !important;}
  .about-office-clean{border-radius:26px;}
  .about-office-clean img{min-height:360px;}
}
:root[data-theme="dark"] .about-studio-shell.about-office-background .about-studio-card,
:root[data-theme="dark"] .about-studio-card{
  background:rgba(17,17,17,.94) !important;
  border-color:#2b2b2b !important;
  box-shadow:none !important;
}
:root[data-theme="dark"] .about-office-clean{
  border-color:#2b2b2b;
  background:#171717;
  box-shadow:none;
}


/* v4.0 about page: framed poster only, no floating card */
.about-office-poster-layout{
  grid-template-columns:minmax(0,1fr) !important;
  max-width:1380px !important;
}
.about-office-hanging-poster{
  width:100%;
  min-height:0 !important;
  border-radius:34px;
  overflow:hidden;
  border:1px solid #e8dfd2;
  background:#e9e1d6;
  box-shadow:0 24px 55px rgba(91,75,54,.09);
}
.about-office-hanging-poster img{
  display:block;
  width:100%;
  height:auto !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center top !important;
}
@media(max-width:1100px){
  .about-office-poster-layout{grid-template-columns:1fr !important;}
}
@media(max-width:740px){
  .about-office-hanging-poster{border-radius:26px;}
}
:root[data-theme="dark"] .about-office-hanging-poster{
  border-color:#2b2b2b;
  background:#171717;
  box-shadow:none;
}


/* v4.1 Nosotros full-width office frame presentation */
.about-studio-section > .container{
  width:min(100%, 1640px) !important;
  max-width:none !important;
  padding-left:28px !important;
  padding-right:28px !important;
}
.about-office-poster-layout{
  width:100% !important;
  max-width:none !important;
  display:block !important;
}
.about-office-hanging-poster{
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  border-radius:34px !important;
  overflow:hidden !important;
}
.about-office-hanging-poster img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:740px){
  .about-studio-section > .container{padding-left:14px !important;padding-right:14px !important;}
  .about-office-hanging-poster{border-radius:24px !important;}
}

/* ================= v4.2 Nosotros width/cache fix ================= */
.about-studio-section{
  padding:52px 0 72px !important;
  overflow:hidden;
}
.about-studio-section > .container{
  width:100% !important;
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
}
.about-studio-shell.about-office-poster-layout{
  display:block !important;
  width:calc(100vw - 64px) !important;
  max-width:1600px !important;
  margin:0 auto !important;
  padding:0 !important;
}
.about-office-hanging-poster{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 auto !important;
  border-radius:34px !important;
  overflow:hidden !important;
}
.about-office-hanging-poster img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
}
@media(max-width:740px){
  .about-studio-section{padding:28px 0 52px !important;}
  .about-studio-shell.about-office-poster-layout{
    width:calc(100vw - 28px) !important;
  }
  .about-office-hanging-poster{border-radius:24px !important;}
}

/* ================= v4.3 Nosotros final proportion refinement ================= */
.about-studio-shell.about-office-poster-layout{
  width:calc(100vw - 64px) !important;
  max-width:1600px !important;
}
.about-office-hanging-poster{
  width:100% !important;
  aspect-ratio:1951 / 650 !important;
  max-height:560px !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.about-office-hanging-poster img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center 42% !important;
}
@media (max-width:1100px){
  .about-office-hanging-poster{
    aspect-ratio:1951 / 690 !important;
    max-height:none !important;
  }
  .about-office-hanging-poster img{
    object-position:center 40% !important;
  }
}
@media (max-width:740px){
  .about-studio-shell.about-office-poster-layout{
    width:calc(100vw - 28px) !important;
  }
  .about-office-hanging-poster{
    aspect-ratio:1.55 / 1 !important;
    border-radius:24px !important;
  }
  .about-office-hanging-poster img{
    object-position:44% 38% !important;
  }
}

/* ================= v4.3.1 Nosotros frame emphasis ================= */
.about-studio-section{
  padding:44px 0 28px !important;
}
.about-office-hanging-poster{
  aspect-ratio:1951 / 760 !important;
  max-height:660px !important;
}
.about-office-hanging-poster img{
  object-position:48% 40% !important;
  transform:scale(1.03);
  transform-origin:center center;
}
@media (max-width:1100px){
  .about-studio-section{
    padding:38px 0 24px !important;
  }
  .about-office-hanging-poster{
    aspect-ratio:1951 / 860 !important;
    max-height:none !important;
  }
  .about-office-hanging-poster img{
    object-position:47% 39% !important;
    transform:scale(1.025);
  }
}
@media (max-width:740px){
  .about-studio-section{
    padding:24px 0 18px !important;
  }
  .about-office-hanging-poster{
    aspect-ratio:1.42 / 1 !important;
  }
  .about-office-hanging-poster img{
    object-position:43% 38% !important;
    transform:scale(1.015);
  }
}

/* ================= v4.3.4 Nosotros: full-width image, no extra empty space, square corners ================= */
.about-studio-section{
  padding:0 !important;
  min-height:auto !important;
  display:block !important;
  background:var(--bg-secondary) !important;
}
.about-studio-section > .container{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.about-studio-shell.about-office-poster-layout{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.about-office-hanging-poster{
  width:100% !important;
  height:clamp(520px, 57vh, 640px) !important;
  min-height:520px !important;
  max-height:640px !important;
  margin:0 !important;
  border-radius:0 !important;
  overflow:hidden !important;
  box-shadow:none !important;
}
.about-office-hanging-poster img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:0 !important;
  transform:none !important;
}
@media (max-width:1100px){
  .about-office-hanging-poster{
    height:clamp(420px, 52vh, 560px) !important;
    min-height:420px !important;
    max-height:560px !important;
  }
}
@media (max-width:740px){
  .about-studio-section{padding:0 !important;}
  .about-office-hanging-poster{
    height:56vh !important;
    min-height:320px !important;
    max-height:480px !important;
    border-radius:0 !important;
  }
  .about-office-hanging-poster img{
    object-position:center center !important;
  }
}
