
/* DAN FAUBION | LUXURY EDITORIAL ALTERNATIVE */
:root{--lux-gold:#d3c5a8;--lux-paper:#f5f2ed;--lux-night:#0b0d10}
html{scroll-behavior:smooth}
body{background:#0b0d10;font-family:Arial,Helvetica,sans-serif;letter-spacing:.004em}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}
.site-header{background:rgba(8,10,13,.93)!important;border-bottom:1px solid rgba(234,220,195,.17)!important;color:#fff!important;box-shadow:0 8px 26px rgba(0,0,0,.18)}
.brand-personal{gap:17px}
.brand-personal img{width:104px;height:50px;max-width:104px;object-fit:contain;background:#fff;border-radius:2px;padding:4px}
.brand-copy strong{font-size:clamp(30px,2.7vw,39px);color:#fff;font-weight:400;letter-spacing:.01em}
.brand-copy small{color:var(--lux-gold);font-size:10px;letter-spacing:.26em}
.brand-broker{color:#d6d6d6;font-weight:400;letter-spacing:.10em;font-size:11px;text-transform:uppercase}
.main-nav{gap:17px}
.main-nav a{color:#e2e2e2!important;font-size:12px;letter-spacing:.055em;text-transform:uppercase;font-weight:600}
.main-nav a:hover,.main-nav a.active{color:var(--lux-gold)!important}
.main-nav .nav-cta{border:1px solid rgba(211,197,168,.65);padding:9px 18px}
.menu-toggle{color:#fff;border-color:#9e9e9e}
.lux-hero{min-height:clamp(660px,84vh,970px);padding-top:94px;padding-bottom:110px}
.lux-hero .hero-media{filter:saturate(.96) brightness(.96);background-position:center 51%}
.lux-hero .minimal-overlay{background:linear-gradient(90deg,rgba(4,7,12,.84),rgba(5,8,11,.55) 43%,rgba(5,8,11,.05) 100%),linear-gradient(0deg,rgba(4,5,7,.4),transparent 33%)}
.lux-hero-copy{width:min(750px,70vw)}
.lux-hero-copy .eyebrow{color:#e5e5e5;font-weight:500;letter-spacing:.25em;font-size:11px}
.lux-hero h1{font-weight:400;font-size:clamp(55px,7.2vw,101px);line-height:1.02;letter-spacing:-.039em;max-width:730px;text-shadow:0 2px 24px rgba(0,0,0,.23)}
.lux-hero h1 em{color:var(--lux-gold);font-style:italic;font-weight:400}
.lux-hero .lead{font-weight:400;font-size:19px;max-width:570px;line-height:1.62;color:#f1f1ef}
.lux-hero .hero-actions{margin-top:33px;gap:16px}
.button{border-radius:2px;padding:15px 24px;letter-spacing:.08em;text-transform:uppercase;font-size:12px;box-shadow:none}
.button.primary{background:var(--lux-gold);color:#101010;box-shadow:none}
.button.primary:hover{background:#e6d8bd}
.button.ghost{background:transparent;border-color:rgba(238,232,218,.7);color:#fff}
.button.ghost:hover{background:rgba(255,255,255,.09)}
.hero-dots{gap:10px;margin-top:38px}
.hero-dot{width:30px;height:3px;border-radius:0;border:none;background:rgba(255,255,255,.34)}
.hero-dot.active{background:var(--lux-gold);box-shadow:none}
.lux-scroll-hint{position:absolute;right:5%;bottom:44px;z-index:2;color:#f0ebe0;font-size:10px;letter-spacing:.24em;text-decoration:none;display:flex;align-items:center;gap:14px}
.lux-scroll-hint span{font-size:25px;font-weight:300}
.lux-intro{margin:100px auto 44px;padding:0 0 60px;border-color:rgba(211,197,168,.25)}
.lux-intro .eyebrow,.section-heading .eyebrow{color:var(--lux-gold)}
.lux-intro h2{font-size:clamp(37px,4.4vw,65px);line-height:1.08}
.lux-intro p:last-child{font-size:17px;line-height:1.85;color:#bfc0c1}
.clean-choice-grid{background:transparent;border-color:rgba(211,197,168,.25)}
.clean-choice{background:transparent;padding:34px 35px;min-height:255px}
.clean-choice:hover{background:rgba(255,255,255,.04)}
.clean-choice span{color:var(--lux-gold);font-size:12px}
.clean-choice h3{font-weight:400;font-size:28px}
.clean-choice p{font-size:14px;line-height:1.7;color:#b3b6b8}
.cards-section{margin-top:84px;margin-bottom:90px}
.section-heading h2{font-size:clamp(35px,4.3vw,59px)}
.lux-featured .section-heading{margin-bottom:42px}
.lux-featured .neighborhood-preview-grid{gap:16px}
.neighborhood-card-image{background:#121519;border-radius:4px;border-color:rgba(211,197,168,.24);transition:transform .25s,border-color .25s}
.neighborhood-card-image .card-image{height:240px;transition:transform .5s;filter:saturate(.97)}
.neighborhood-card-image:hover .card-image{transform:scale(1.025)}
.card-copy{padding:26px 22px}
.card-copy h3{font-size:27px}
.card-copy p{font-size:14px;line-height:1.66}
.card-copy span,.neighborhood span{color:var(--lux-gold);font-size:12px;letter-spacing:.07em;text-transform:uppercase}
.card{border-radius:4px}
.card.interactive-card:hover{border-color:var(--lux-gold)}
.page-hero,.main-copy,.lead-form,.sidebar-card,.contact-card,.minimal-cta{background:linear-gradient(135deg,#15191e,#0f1216);border-radius:5px;border-color:rgba(211,197,168,.23)}
.page-hero{padding:58px}
.page-hero h1,.main-copy h1,.bio-hero h1{font-size:clamp(43px,5vw,70px)}
.main-copy h2{font-size:clamp(31px,3.8vw,49px)}
.page-visual-block .main-copy{padding:45px}
.card{background:#13161b;border-color:rgba(211,197,168,.18)}
.card:hover{border-color:var(--lux-gold)}
.red{color:var(--lux-gold)}
.text-link{border-color:var(--lux-gold)}
.eyebrow.red{color:var(--lux-gold)}
.step-card{background:#15191d;border-color:rgba(211,197,168,.20);border-radius:5px}
.step-card span,.clean-choice span,.numbered-list li:before{color:var(--lux-gold)}
.photo-panel{border-radius:5px}
input:focus,select:focus,textarea:focus{outline-color:var(--lux-gold)}
.lux-editorial-profile{width:min(var(--max),calc(100% - 44px));margin:105px auto 90px;display:grid;grid-template-columns: .83fr 1.17fr;gap:76px;align-items:center}
.lux-profile-photo{overflow:hidden;border:1px solid rgba(211,197,168,.22);max-height:590px;background:#15191d}
.lux-profile-photo img{height:590px;width:100%;object-fit:cover;object-position:top center}
.lux-profile-text h2{font-size:clamp(40px,5vw,71px);line-height:1.14}
.lux-profile-text h2 em{color:var(--lux-gold);font-weight:400}
.lux-profile-text p:not(.eyebrow){font-size:18px;line-height:1.85;color:#c9cacc;max-width:570px}
.lux-text-link{display:inline-flex;gap:18px;align-items:center;margin-top:20px;color:var(--lux-gold);text-transform:uppercase;text-decoration:none;letter-spacing:.12em;font-size:12px;border-bottom:1px solid var(--lux-gold);padding-bottom:12px}
.lux-text-link span{font-size:22px}
.minimal-cta{padding:64px 40px}
.minimal-cta p{font-size:16px;line-height:1.75}
.site-footer{background:#07080a;border-color:rgba(211,197,168,.23)}
.site-footer a:hover{color:var(--lux-gold)}
.footer-logo-dark{background:#fff;padding:5px}
@media(max-width:1100px){.main-nav{gap:9px}.main-nav a{font-size:11px}.brand-personal{min-width:260px}}
@media(max-width:960px){
  .main-nav{background:#0c0e11!important;border-color:rgba(211,197,168,.25)}
  .main-nav a{font-size:13px}
  .lux-hero-copy{width:100%}
  .lux-hero{min-height:680px;padding-top:90px}
  .lux-editorial-profile{grid-template-columns:1fr;gap:32px}
  .lux-profile-photo{max-height:480px}
  .lux-profile-photo img{height:480px}
}
@media(max-width:620px){.lux-hero h1{font-size:50px}.lux-hero .lead{font-size:16px}.lux-scroll-hint{display:none}.brand-personal img{width:90px}.brand-copy strong{font-size:25px}.lux-intro{margin-top:65px}.lux-featured .neighborhood-preview-grid{grid-template-columns:1fr}}

@media(max-width:1250px){
 .menu-toggle{display:block;color:#fff;border-color:rgba(211,197,168,.7)}
 .main-nav{position:absolute;top:100%;left:22px;right:22px;display:none;flex-direction:column;align-items:stretch;background:#0c0e11!important;border:1px solid rgba(211,197,168,.3);border-radius:6px;padding:15px 18px}
 .main-nav.open{display:flex}
 .main-nav a{font-size:12px;padding:7px 8px}
}


/* Refinements requested Nov 2026 */
.brand-personal img{width:132px;height:auto;max-width:132px;object-fit:contain;background:transparent!important;border-radius:0!important;padding:0!important;filter:brightness(1.18) contrast(1.08);}
.footer-logo-elite{background:transparent!important;padding:0!important;border-radius:0!important;object-fit:contain;width:250px;height:auto;display:block;border:0!important;box-shadow:none!important;}
.footer-grid{align-items:start;}

/* Footer-only final correction: transparent wordmark with inset spacing, no white box. */
.site-footer .footer-logo-elite{background:transparent!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;width:250px;max-width:100%;height:auto;object-fit:contain;}


/* Clear photography refinement: replace smoky full-image gradient with a restrained text-side veil. */
.lux-hero .hero-media {filter:none!important;}
.lux-hero .minimal-overlay {
 background:linear-gradient(90deg,rgba(5,8,12,.59) 0%,rgba(5,8,12,.39) 31%,rgba(5,8,12,.12) 59%,rgba(5,8,12,0) 84%),linear-gradient(0deg,rgba(5,8,12,.13),transparent 24%)!important;
}
.lux-hero h1,.lux-hero .lead,.lux-hero-copy .eyebrow {text-shadow:0 2px 14px rgba(0,0,0,.38)}
.neighborhood-card-image .card-image {filter:none!important;}
.neighborhood-card-image .card-image::after {background:linear-gradient(180deg,transparent 67%,rgba(0,0,0,.16) 100%)!important;}
.photo-panel img,.rich-sidebar img.sidebar-home-image {filter:none!important;}
.lux-hero-video {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3;opacity:0;transition:opacity .7s ease;pointer-events:none;}
.lux-hero.motion-on .lux-hero-video {opacity:1;}
.lux-hero.motion-on .hero-media {opacity:0;}
.lux-motion-controls {position:relative;z-index:4;margin-top:22px;display:flex;align-items:center;gap:10px;}
.lux-motion-toggle {background:rgba(7,11,15,.30);color:rgba(255,255,255,.93);border:1px solid rgba(255,255,255,.45);font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:9px 13px;cursor:pointer;border-radius:2px;}
.lux-motion-toggle:focus-visible {outline:2px solid var(--lux-gold);outline-offset:3px;}
.lux-motion-toggle:hover {background:rgba(7,11,15,.56);}
@media (prefers-reduced-motion:reduce) {
 .lux-hero-video {display:none;}
 .lux-hero.motion-on .hero-media {opacity:1;}
 .lux-motion-controls {display:none;}
 .neighborhood-card-image .card-image {transition:none;}
}

/* Hide inactive photo-carousel indicators when full-motion video is playing. */
.lux-hero.motion-on .hero-dots{opacity:0;pointer-events:none}


/* November 2026 resilient motion: playback OR animated-photo fallback */
.lux-hero .hero-media, .lux-hero .hero-media-next {
  z-index:-3;
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  opacity:0;
  will-change:opacity,transform;
  transition:opacity 1.1s ease-in-out;
  backface-visibility:hidden;
  transform:translateZ(0);
}
.lux-hero .hero-media-next {pointer-events:none;}
.lux-hero .hero-media.zoom-in,.lux-hero .hero-media-next.zoom-in {
  animation:lux-zoom-in 6.7s linear both;
}
.lux-hero .hero-media.zoom-out,.lux-hero .hero-media-next.zoom-out {
  animation:lux-zoom-out 6.7s linear both;
}
@keyframes lux-zoom-in {
  from{transform:translateZ(0) scale(1.00)}
  to{transform:translateZ(0) scale(1.075)}
}
@keyframes lux-zoom-out {
  from{transform:translateZ(0) scale(1.075)}
  to{transform:translateZ(0) scale(1.00)}
}
.lux-hero.motion-paused .hero-media,.lux-hero.motion-paused .hero-media-next {
  animation-play-state:paused!important;
}
.lux-hero .lux-hero-video {
  z-index:-2;
  opacity:0;
  visibility:hidden;
  transition:opacity .65s ease;
  background:#0b0d10;
}
.lux-hero.motion-on .lux-hero-video{opacity:1;visibility:visible;}
.lux-hero.motion-on .hero-media,.lux-hero.motion-on .hero-media-next {
  opacity:0!important;
}
.lux-hero .hero-overlay {z-index:-1;}
.lux-hero .lux-motion-controls{z-index:5;}
@media(prefers-reduced-motion: reduce){
  .lux-hero:not(.force-motion) .hero-media,.lux-hero:not(.force-motion) .hero-media-next {animation:none!important;transition:none;}
  .lux-hero .lux-hero-video {display:block;}
  .lux-hero.motion-on .lux-hero-video {opacity:1;}
}


/* IMPORTANT: final, reliable motion layering and controls.
   These declarations override older motion styles without changing branding. */
.lux-hero { position:relative; isolation:isolate; }
.lux-hero .hero-media,
.lux-hero .hero-media-next {
  position:absolute!important; inset:0; z-index:0!important;
  background-size:cover; background-position:center center;
  pointer-events:none; backface-visibility:hidden;
  transition:opacity 1.05s ease-in-out;
}
.lux-hero .lux-hero-video {
  display:block!important; visibility:visible!important;
  position:absolute!important; inset:0; width:100%; height:100%;
  object-fit:cover; z-index:1!important; opacity:0;
  pointer-events:none; transition:opacity .65s ease-in-out;
}
.lux-hero.video-active .lux-hero-video { opacity:1!important; }
.lux-hero .hero-overlay { position:absolute; inset:0; z-index:2!important; pointer-events:none; }
.lux-hero .hero-content, .lux-hero .lux-scroll-hint { z-index:3!important; }
.lux-hero .lux-motion-controls {
  display:flex!important; visibility:visible!important; opacity:1!important;
  position:relative!important; z-index:5!important;
  margin-top:24px; align-items:center; gap:10px;
}
.lux-hero .lux-motion-toggle {
  display:inline-flex!important; visibility:visible!important; opacity:1!important;
  align-items:center; justify-content:center; cursor:pointer;
  border:1px solid rgba(245,239,222,.85);
  background:rgba(7,10,13,.68); color:#fff;
  font:600 12px/1.1 Arial,Helvetica,sans-serif; letter-spacing:.12em;
  text-transform:uppercase; padding:13px 19px; min-height:43px;
}
.lux-hero .lux-motion-toggle:hover { background:rgba(7,10,13,.88); }
.lux-hero .lux-motion-toggle:focus-visible { outline:2px solid #e5d2aa; outline-offset:3px; }
.lux-hero .hero-media.zoom-in, .lux-hero .hero-media-next.zoom-in {animation:lux-zoom-in 6.7s linear both;}
.lux-hero .hero-media.zoom-out,.lux-hero .hero-media-next.zoom-out {animation:lux-zoom-out 6.7s linear both;}
.lux-hero.motion-paused .hero-media,.lux-hero.motion-paused .hero-media-next {animation-play-state:paused!important;}
@media (prefers-reduced-motion:reduce) {
  .lux-hero .lux-motion-controls,.lux-hero .lux-motion-toggle {display:flex!important;}
  .lux-hero.force-motion .hero-media.zoom-in, .lux-hero.force-motion .hero-media-next.zoom-in {animation:lux-zoom-in 6.7s linear both!important;}
  .lux-hero.force-motion .hero-media.zoom-out,.lux-hero.force-motion .hero-media-next.zoom-out {animation:lux-zoom-out 6.7s linear both!important;}
}

/* Position motion control where it can actually be seen without scrolling. */
.lux-hero .lux-motion-controls{
  position:absolute!important; right:5%; bottom:92px; left:auto;
  margin:0!important; z-index:9!important;
}
@media(max-width:700px){
  .lux-hero .lux-motion-controls{right:20px;bottom:22px;}
}


/* AUTOPLAY EDITION — smooth, hands-free motion on every property scene.
   These elements are independent of video autoplay, JS, and media-play permissions. */
.lux-hero{position:relative;isolation:isolate;overflow:hidden;}
.lux-hero .autoplay-scenery{
  position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:#111 url('assets/page-sell-hero.jpg') center/cover no-repeat;
}
.lux-hero .autoplay-scenery .scenery-frame{
  position:absolute;inset:-1.5%;opacity:0;pointer-events:none;
  background-size:cover;background-position:center;
  backface-visibility:hidden;
  will-change:transform,opacity;
  transform:translate3d(0,0,0);
  animation-duration:27.5s;
  animation-timing-function:linear;
  animation-iteration-count:infinite;
  animation-fill-mode:both;
}
/* Each shot has 5.5 seconds; each crossfade overlaps the next shot.
   Negative offsets bring the entire timeline into motion immediately. */
.lux-hero .scenery-frame--1{animation-name:lux-scene-zoom-in;animation-delay:0s;}
.lux-hero .scenery-frame--2{animation-name:lux-scene-zoom-out;animation-delay:-22s;}
.lux-hero .scenery-frame--3{animation-name:lux-scene-zoom-in;animation-delay:-16.5s;}
.lux-hero .scenery-frame--4{animation-name:lux-scene-zoom-out;animation-delay:-11s;}
.lux-hero .scenery-frame--5{animation-name:lux-scene-zoom-in;animation-delay:-5.5s;}
@keyframes lux-scene-zoom-in{
  0%   {opacity:0;transform:translate3d(-.5%,.18%,0) scale(1.012)}
  3%   {opacity:1}
  16%  {opacity:1}
  23%  {opacity:0;transform:translate3d(.3%,-.25%,0) scale(1.084)}
  100% {opacity:0;transform:translate3d(.3%,-.25%,0) scale(1.084)}
}
@keyframes lux-scene-zoom-out{
  0%   {opacity:0;transform:translate3d(.3%,-.25%,0) scale(1.084)}
  3%   {opacity:1}
  16%  {opacity:1}
  23%  {opacity:0;transform:translate3d(-.5%,.18%,0) scale(1.012)}
  100% {opacity:0;transform:translate3d(-.5%,.18%,0) scale(1.012)}
}
.lux-hero .hero-overlay{position:absolute;inset:0;z-index:1!important;pointer-events:none;}
.lux-hero .hero-content,.lux-hero .lux-scroll-hint{position:relative;z-index:2!important;}
/* Retire any old hidden video/controls if a cached file accidentally survives deployment. */
.lux-hero .lux-hero-video,.lux-hero .lux-motion-controls,.lux-hero .lux-motion-toggle{display:none!important;}
@media (max-width:700px){
  .lux-hero .autoplay-scenery .scenery-frame{background-position:center;}
}


/* 2026-11 photography and positioning refinements.
   Only the requested hero zoom, scroll hint placement and neighborhood clarity. */
@keyframes lux-scene-zoom-in {
  0% { opacity:0; transform:translate3d(-.68%,.27%,0) scale(1.018); }
  3% { opacity:1; }
  16% { opacity:1; }
  23% { opacity:0; transform:translate3d(.42%,-.35%,0) scale(1.145); }
  100% { opacity:0; transform:translate3d(.42%,-.35%,0) scale(1.145); }
}
@keyframes lux-scene-zoom-out {
  0% { opacity:0; transform:translate3d(.42%,-.35%,0) scale(1.145); }
  3% { opacity:1; }
  16% { opacity:1; }
  23% { opacity:0; transform:translate3d(-.68%,.27%,0) scale(1.018); }
  100% { opacity:0; transform:translate3d(-.68%,.27%,0) scale(1.018); }
}
/* Override the earlier relative-position rule that accidentally centered this link. */
.lux-hero a.lux-scroll-hint {
  position:absolute!important;
  top:auto!important;
  left:auto!important;
  right:clamp(18px,3.2vw,52px)!important;
  bottom:clamp(20px,2.5vw,38px)!important;
  z-index:8!important;
  display:inline-flex!important;
  align-items:center;
  gap:11px;
  background:rgba(4,6,9,.90);
  border:1px solid rgba(233,220,190,.36);
  border-radius:3px;
  padding:10px 16px;
  box-shadow:0 4px 20px rgba(0,0,0,.28);
  text-shadow:none;
  color:#f8f3e9;
}
.lux-hero a.lux-scroll-hint:hover { background:rgba(4,6,9,.98); border-color:var(--lux-gold); }
.lux-hero a.lux-scroll-hint:focus-visible {outline:2px solid var(--lux-gold);outline-offset:3px;}
/* Avoid image-transform resampling, which can soften neighborhood photo detail. */
.neighborhood-card-image .card-image {transform:none!important;filter:none!important;transition:none!important;}
.neighborhood-card-image:hover .card-image {transform:none!important;filter:none!important;}
@media(max-width:620px) {
  .lux-hero a.lux-scroll-hint {
    right:12px!important;
    bottom:12px!important;
    padding:8px 10px;
    font-size:9px;
    gap:6px;
  }
  .lux-hero a.lux-scroll-hint span {font-size:17px;}
}
