:root{--ink:#18363c;--coast:#eaf3f2;--mist:#f7fbfa;--sand:#f2eadf;--stone:#d8c9b9;--terra:#b96f4d;--sea:#18363c;--sage:#879a80;--white:#fff;--line:#d9e2df;--dark:#18363c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--mist);line-height:1.6}h1,h2,h3,.serif{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.05}h1{font-size:clamp(3rem,8vw,7.4rem);letter-spacing:.02em;margin:0}h2{font-size:clamp(2.2rem,5vw,4.8rem);margin:0 0 1rem}h3{font-size:2rem;margin:.5rem 0}.eyebrow{letter-spacing:.22em;text-transform:uppercase;font-size:.76rem;color:var(--sea);font-weight:600}.hero-location{color:#fff;white-space:nowrap;margin-top:2.2rem}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;padding:.85rem 1.2rem;min-height:46px;text-decoration:none;color:inherit;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-family:Inter,Arial,sans-serif;line-height:1;transition:.25s;background:transparent;cursor:pointer;text-align:center}.btn:hover{background:var(--ink);color:var(--white)}.btn.light:hover{background:var(--white);color:var(--ink)}a{color:inherit}.site-header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:22px clamp(20px,4vw,60px);color:#fff;transition:.3s}.site-header.scrolled,.site-header.light{background:rgba(247,251,250,.96);color:var(--ink);box-shadow:0 2px 20px rgba(0,0,0,.06)}.brand-spacer{width:1px;height:1px}.brand img{height:70px;max-width:320px;object-fit:contain}.logo-white{filter:brightness(0) invert(1)}.site-header.scrolled .logo-white,.site-header.light .logo-white{filter:none}.nav{display:flex;gap:44px;align-items:center;font-size:.76rem;text-transform:uppercase;letter-spacing:.15em}.nav a{text-decoration:none}.menu-toggle{display:none;background:none;border:0;color:inherit;font-size:1.2rem}.hero{min-height:100vh;position:relative;display:grid;place-items:start center;text-align:center;color:#fff;overflow:hidden}.hero video,.hero .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(18,34,40,.34),rgba(18,34,40,.44))}.hero-content{position:relative;z-index:2;padding:100px 1.5rem 3rem;max-width:1120px;width:100%;margin-top:0}.hero-signature{display:block;width:min(620px,86vw);margin:0 auto 1.6rem;filter:brightness(0) invert(1);opacity:.98}.hero p{font-size:clamp(1.05rem,1.7vw,1.36rem);max-width:760px;margin:1.3rem auto 2rem}.hero .btn{min-width:190px;margin:.35rem .25rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px);align-items:center}.section{padding:clamp(70px,10vw,130px) clamp(22px,6vw,90px)}.section.light{background:#fff}.section.dark{background:linear-gradient(135deg,#20363d,#466f72);color:var(--white)}.section.sand{background:var(--sand)}.image-card{position:relative;overflow:hidden;min-height:540px;background:#ddd}.image-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.portrait-card img,.headshot-card img{object-fit:contain;background:var(--sand);position:absolute;inset:0}.local-knowledge-card img{object-fit:cover;object-position:center center}.headshot-card{background:var(--sand)}.stat-grid,.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.stat,.card{background:var(--white);padding:34px}.stat strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:3rem;font-weight:400;display:block;color:var(--terra)}.listings{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.listing{background:#fff;border:1px solid var(--line);box-shadow:0 16px 40px rgba(36,50,58,.06)}.listing-img{display:block;width:100%;height:270px;padding:0;border:0;background:#dce7e4;cursor:zoom-in;overflow:hidden}.listing-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.listing-img:hover img{transform:scale(1.04)}.listing div{padding:24px}.quote{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.8rem,3vw,3.4rem);line-height:1.1}.communities{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.community{min-height:260px;padding:24px;display:flex;align-items:end;background-size:cover;background-position:center;color:#fff;text-decoration:none;position:relative;overflow:hidden}.community:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68))}.community span{position:relative;font-family:'Cormorant Garamond',Georgia,serif;font-size:2.3rem}.c-sb{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-plaza.jpg')}.c-montecito{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-arcady.jpg')}.c-hope{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-camino.jpg')}.c-summerland{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-whitney.jpg')}.c-carp{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-humphrey.jpg')}.c-mission{background-image:linear-gradient(180deg,rgba(36,50,58,.12),rgba(36,50,58,.68)),url('assets/images/sale-cheltenham.jpg')}.search-box{border:1px solid var(--line);background:#fff;padding:30px;color:var(--ink)}.idx-frame{height:560px;border:1px dashed var(--sea);display:grid;place-items:center;text-align:center;padding:30px;background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.form input,.form textarea,.form select{width:100%;padding:14px;margin:0 0 12px;border:1px solid var(--line);background:#fff;font:inherit}.form textarea{min-height:130px}.footer{background:var(--ink);color:var(--coast);padding:55px clamp(22px,6vw,90px);display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:30px}.footer-brand{display:flex;gap:22px;align-items:flex-start}.footer-headshot{width:96px;height:124px;object-fit:cover;object-position:center top;border:1px solid rgba(255,255,255,.35)}.footer-logo{max-width:280px;filter:brightness(0) invert(1)}.fine{font-size:.78rem;color:#cdddda}.video-wrap video{width:100%;display:block;background:#000}.page-hero{padding:170px clamp(22px,6vw,90px) 90px;background:linear-gradient(135deg,#20363d,#5e8a8d);color:var(--white)}.doc-links{display:flex;gap:14px;flex-wrap:wrap}.lightbox{position:fixed;inset:0;background:rgba(12,22,28,.88);z-index:50;display:none;align-items:center;justify-content:center;padding:24px}.lightbox.open{display:flex}.lightbox img,.lightbox video{max-width:min(1100px,95vw);max-height:88vh;background:#000}.lightbox-close{position:absolute;top:18px;right:24px;background:transparent;color:#fff;border:0;font-size:2rem;cursor:pointer}.source-note{margin-top:18px}@media(max-width:900px){.split,.contact-grid,.footer{grid-template-columns:1fr}.footer-brand{flex-direction:row}.stat-grid,.card-grid,.listings{grid-template-columns:1fr}.communities{grid-template-columns:1fr 1fr}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--mist);color:var(--ink);padding:25px;flex-direction:column}.nav.open{display:flex}.menu-toggle{display:block}.brand img{height:54px}.image-card{min-height:430px}.hero-content{padding-top:120px}.hero-location{font-size:.62rem;letter-spacing:.12em}}@media(max-width:560px){.communities{grid-template-columns:1fr}h1{font-size:3.2rem}.site-header{padding:16px 20px}.hero-content{padding-top:110px}.hero-signature{width:92vw}.hero-location{white-space:normal}.footer-brand{flex-direction:column}.footer-headshot{width:110px;height:145px}}


/* Revision 4 fixes */
.footer-logo{max-width:330px;filter:none;}
.communities{gap:22px;}
.community{min-height:320px;align-items:flex-end;padding:28px;background-color:#dce7e4;}
.community div{position:relative;z-index:1;max-width:92%;}
.community h3{font-size:2.45rem;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35);margin:0 0 .35rem;}
.community p{margin:0;color:#fff;font-size:.96rem;line-height:1.45;text-shadow:0 1px 12px rgba(0,0,0,.5);}
.c-sb{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?santa-barbara,california,coast');}
.c-montecito{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?montecito,california,estate');}
.c-hope{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?equestrian,estate,california');}
.c-summerland{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?california,beach,village');}
.c-carp{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?carpinteria,beach');}
.c-goleta{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?goleta,california,coast');}
.c-riviera{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?santa-barbara,riviera,view');}
.c-upper{background-image:linear-gradient(180deg,rgba(36,50,58,.08),rgba(36,50,58,.74)),url('https://source.unsplash.com/1200x900/?santa-barbara,architecture');}
.testimonials-list{display:grid;grid-template-columns:1fr;gap:28px;}
.testimonial-card{border-top:1px solid var(--line);padding-top:34px;max-width:1050px;}
.testimonial-card .quote{font-size:clamp(1.9rem,3vw,3.2rem);margin:.2rem 0 1rem;}
.testimonial-card p:not(.quote):not(.eyebrow):not(.fine){max-width:900px;}
@media(max-width:900px){.footer-logo{max-width:260px}.community{min-height:280px}}


/* Revision 6 refinements */
body{color:var(--ink)}
.hero-title{font-size:clamp(2.8rem,6.3vw,6.1rem);line-height:.98;max-width:980px;margin:0 auto;}
.hero-title span{display:block;}
.hero .btn{min-width:205px;}
.lightbox{padding:0;}
.lightbox-content{width:100vw;height:100vh;display:grid;place-items:center;}
.lightbox img{max-width:96vw;max-height:92vh;}
.lightbox video{width:100vw;height:100vh;max-width:100vw;max-height:100vh;object-fit:contain;}
.footer{background:#18363c;}
.footer-brand{align-items:flex-end;}
.footer-headshot{width:122px;height:150px;border:0;align-self:flex-end;object-fit:cover;object-position:center top;}
.footer-brand > div{align-self:flex-end;}
.footer .fine{margin-bottom:0;}
.testimonial-card .fine,.section.light .fine,.testimonial-card p:last-child{color:#6f7779!important;}
.inside-branding{position:absolute;top:24px;left:0;right:0;z-index:12;text-align:center;pointer-events:none;}
.inside-branding a{pointer-events:auto;display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;gap:16px;}
.inside-bug{width:54px;height:auto;display:block;}
.inside-signature{width:min(520px,72vw);height:auto;display:block;}
.site-header.light{background:transparent;box-shadow:none;}
.site-header.light.scrolled{background:rgba(247,251,250,.96);box-shadow:0 2px 20px rgba(0,0,0,.06);}
.page-hero{padding-top:230px;background:linear-gradient(135deg,#18363c,#295d64);}
.about-split{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,640px);gap:50px;align-items:center;justify-content:center;}
.portrait-photo{width:100%;max-width:420px;background:var(--sand);}
.portrait-photo img{display:block;width:100%;height:auto;aspect-ratio:672/800;object-fit:contain;object-position:center top;}
.about-copy{max-width:640px;}
.sales-section{overflow:hidden;background:#fff;}
.sales-carousel{width:100%;overflow:hidden;margin-top:28px;}
.sales-track{display:flex;gap:24px;width:max-content;animation:sales-scroll 38s linear infinite;}
.sales-carousel:hover .sales-track{animation-play-state:paused;}
.sale-slide{width:min(78vw,620px);height:430px;flex:0 0 auto;background-size:cover;background-position:center;border:0;color:#fff;text-align:left;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;cursor:zoom-in;position:relative;overflow:hidden;}
.sale-slide:after{content:'Click to enlarge';position:absolute;top:22px;right:24px;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;opacity:.85;}
.sale-slide h3{font-size:3rem;line-height:1;margin:0 0 .45rem;text-shadow:0 2px 18px rgba(0,0,0,.45);}
.sale-slide p{margin:0;color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.6);font-weight:500;}
.sale-status{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;font-weight:700;margin-bottom:.4rem;}
@keyframes sales-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 12px))}}
strong.jackie-name{font-weight:700;}
@media(max-width:900px){.hero-title{font-size:clamp(2.4rem,11vw,4.6rem)}.about-split{grid-template-columns:1fr;gap:28px}.portrait-photo{max-width:360px;margin:0 auto}.inside-signature{width:min(420px,78vw)}.page-hero{padding-top:210px}.sale-slide{height:360px;width:86vw}.sale-slide h3{font-size:2.35rem}.footer-brand{align-items:flex-end;}}
@media(max-width:560px){.hero-title{font-size:3rem}.hero-title span{display:inline}.hero-title span:first-child:after{content:' ';}.inside-bug{width:44px}.inside-signature{width:80vw}.page-hero{padding-top:190px}.sale-slide{height:330px;padding:24px}.sale-slide h3{font-size:2rem}.footer-headshot{width:110px;height:138px}}


/* Revision 7 header/logo and lightbox refinements */
.site-header.light{
  background:rgba(234,243,242,.88);
  color:var(--ink);
  box-shadow:0 1px 0 rgba(24,54,60,.12);
  backdrop-filter:blur(10px);
}
.site-header.light.scrolled{
  background:rgba(234,243,242,.96);
  color:var(--ink);
  box-shadow:0 2px 20px rgba(0,0,0,.06);
}
.site-header.light .nav a{color:var(--ink);}
.site-header.light .btn.light{color:var(--ink);}
.inside-branding{
  top:112px;
  z-index:11;
}
.inside-branding a{display:inline-flex;align-items:center;justify-content:center;}
.inside-bug{display:none!important;}
.inside-signature{
  width:min(560px,72vw);
  filter:brightness(0) invert(1);
}
.page-hero{
  padding-top:285px;
}
.lightbox-content{cursor:zoom-out;}
.lightbox img{cursor:zoom-out;}
@media(max-width:900px){
  .inside-branding{top:100px;}
  .inside-signature{width:min(430px,78vw);}
  .page-hero{padding-top:245px;}
}
@media(max-width:560px){
  .inside-branding{top:88px;}
  .inside-signature{width:82vw;}
  .page-hero{padding-top:220px;}
}

/* Revision 8: inside page bug logo + community image cards */
.site-header.light{
  background:rgba(234,243,242,.94)!important;
  color:var(--ink)!important;
  min-height:86px;
}
.site-header.light .nav a{color:var(--ink)!important;}
.inside-branding{
  position:fixed!important;
  top:0!important;
  left:50%!important;
  right:auto!important;
  width:92px!important;
  height:86px!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:12!important;
  pointer-events:none!important;
}
.inside-branding a{display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:auto!important;}
.inside-signature{display:none!important;}
.inside-bug{display:block!important;width:54px!important;height:auto!important;filter:none!important;}
.page-hero{padding-top:168px!important;}
.communities{grid-template-columns:repeat(4,1fr);gap:18px;}
.community{min-height:330px;border:0;background-size:cover!important;background-position:center!important;transition:transform .35s ease, box-shadow .35s ease;}
.community:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(24,54,60,.18);}
.community div{position:relative;z-index:2;}
.community h3{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.45);}
.community p{color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.55);}
.c-montecito{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-montecito.jpg')!important;}
.c-sb{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-downtown.jpg')!important;}
.c-hope{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-hope-ranch.jpg')!important;}
.c-summerland{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-summerland.jpg')!important;}
.c-carp{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-carpinteria.jpg')!important;}
.c-goleta{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-goleta.jpg')!important;}
.c-riviera{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-riviera.jpg')!important;}
.c-upper{background-image:linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),url('assets/images/community-upper-east.jpg')!important;}
@media(max-width:1100px){.communities{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.communities{grid-template-columns:1fr}.community{min-height:300px}.inside-branding{height:76px!important}.inside-bug{width:48px!important}.page-hero{padding-top:145px!important}}


/* Revision 9 requested refinements */
@media (min-width: 901px){
  .hero-title{
    font-size:clamp(2.55rem,5.45vw,5.35rem)!important;
    line-height:1.02!important;
    max-width:900px!important;
  }
  .hero-title span{display:block!important;}
}
@media (max-width: 560px){
  .hero-title span{display:block!important;}
  .hero-title span:first-child:after{content:''!important;}
}
.nav a:hover{
  color:#000!important;
}
.site-header.light .nav a:hover{
  color:#000!important;
}
.site-header:not(.light) .nav a:hover{
  color:#000!important;
}
.inside-bug{width:68px!important;}
@media(max-width:650px){.inside-bug{width:60px!important;}}

/* Revision 11 mobile fixes */
@media (min-width: 901px){
  .hero-title{font-size:clamp(2.45rem,5.1vw,5.05rem)!important;line-height:1.02!important;max-width:980px!important;}
  .hero-title span{display:block!important;white-space:nowrap!important;}
}
@media (max-width: 900px){
  .local-knowledge-card{min-height:0!important;background:transparent!important;}
  .local-knowledge-card img{position:relative!important;display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;object-position:center center!important;}
}
@media (max-width: 560px){
  .footer{display:block!important;text-align:left!important;}
  .footer-brand{display:flex!important;flex-direction:row!important;align-items:flex-end!important;justify-content:center!important;gap:18px!important;width:100%!important;}
  .footer-brand > div{display:block!important;text-align:left!important;max-width:230px!important;}
  .footer-headshot{width:104px!important;height:132px!important;object-fit:cover!important;object-position:center top!important;border:0!important;flex:0 0 auto!important;}
  .footer-logo{max-width:210px!important;width:100%!important;height:auto!important;display:block!important;}
  .footer .fine{margin-top:10px!important;line-height:1.45!important;}
}
@media (max-width: 380px){
  .footer-brand{flex-direction:column!important;align-items:center!important;text-align:center!important;}
  .footer-brand > div{text-align:center!important;}
}


/* Revision 12: requested hero logo and mobile menu refinements */
.hero-signature{
  transform:translateY(-50px)!important;
}
@media (max-width:900px){
  .menu-toggle{
    font-size:2.4rem!important;
    line-height:1!important;
    padding:4px 8px!important;
  }
  .nav.open{
    background:rgba(234,243,242,.85)!important;
    backdrop-filter:blur(10px)!important;
  }
}
@media (max-width:560px){
  .hero-signature{
    transform:translateY(-50px)!important;
  }
  .menu-toggle{font-size:2.55rem!important;}
}


/* Final requested refinements */
@media (min-width: 901px){
  .hero-content{
    transform:translateY(-50px)!important;
  }
  .hero-location{
    font-size:.55rem!important;
    letter-spacing:.2em!important;
  }
}
.hero-signature{
  transform:translateY(-90px)!important;
}
@media (max-width:560px){
  .hero-content{
    transform:translateY(-50px)!important;
  }
  .hero-signature{
    transform:translateY(-90px)!important;
  }
  .hero-title .desktop-line{display:none!important;}
  .hero-title .mobile-line{display:block!important;}
  .hero-title span{display:block!important;}
  .hero-title{font-size:clamp(2.55rem,14vw,3.75rem)!important;line-height:.98!important;}
}
@media (min-width:561px){
  .hero-title .mobile-line{display:none!important;}
  .hero-title .desktop-line{display:block!important;}
}
@media (max-width:900px){
  .nav.open{
    background:rgba(234,243,242,.80)!important;
    backdrop-filter:blur(10px)!important;
  }
}
.inside-bug{width:88px!important;}
@media(max-width:650px){.inside-bug{width:78px!important;}}
.contact-vp-logo{width:245px;max-width:100%;display:block;margin:0 0 26px 0;}
.contact-grid{grid-template-columns:minmax(280px,460px) minmax(0,560px)!important;gap:50px!important;justify-content:start!important;align-items:start!important;}
.contact-grid .form{max-width:560px!important;justify-self:start!important;}
@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr!important;gap:32px!important;}
  .contact-vp-logo{margin-left:0!important;margin-right:0!important;}
}

/* Revision 14 refinements */
@media (max-width:560px){
  .hero-title{
    font-size:clamp(2.05rem,11.2vw,3.05rem)!important;
    line-height:1.02!important;
    max-width:96vw!important;
  }
  .hero-title .desktop-line{display:none!important;}
  .hero-title .mobile-line,
  .hero-title > span:last-child{
    display:block!important;
    white-space:nowrap!important;
  }
  .hero-signature{transform:translateY(-70px)!important;}
}
.section.dark .eyebrow{color:#fff!important;}
.section.dark h2,.section.dark p{color:#fff!important;}
@media (max-width:900px){
  .nav.open{background:rgba(234,243,242,.85)!important;}
}
.community{min-height:215px!important;}
@media (max-width:900px){.community{min-height:210px!important;}}
@media (max-width:650px){.community{min-height:220px!important;}}
.inside-branding{
  left:clamp(20px,4vw,60px)!important;
  right:auto!important;
  top:18px!important;
  height:88px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
.inside-bug{width:114px!important;}
@media(max-width:650px){
  .inside-branding{left:20px!important;top:16px!important;height:76px!important;}
  .inside-bug{width:101px!important;}
}
@media(max-width:560px){
  .contact-vp-logo{margin-left:0!important;margin-right:0!important;}
}

/* Revision 15 logo positioning fixes */
@media (min-width:901px){
  .hero-signature{
    width:min(520px,72vw)!important;
    transform:translateY(-90px)!important;
  }
}
@media (max-width:560px){
  .hero-signature{
    transform:translateY(-60px)!important;
  }
}
.site-header.light{
  min-height:96px!important;
}
.inside-branding{
  height:96px!important;
  top:0!important;
  align-items:center!important;
  justify-content:center!important;
}
.inside-bug{
  width:62px!important;
  max-height:72px!important;
  display:block!important;
}
@media (min-width:651px){
  .inside-branding{
    left:50%!important;
    transform:translateX(-50%)!important;
    width:110px!important;
  }
  .page-hero{padding-top:178px!important;}
}
@media (max-width:650px){
  .site-header.light{min-height:92px!important;}
  .inside-branding{
    left:50%!important;
    transform:translateX(-50%)!important;
    width:100px!important;
    height:92px!important;
  }
  .inside-bug{
    width:58px!important;
    max-height:68px!important;
  }
  .page-hero{padding-top:154px!important;}
}

/* Revision 16: requested JW bug, contrast, menu opacity, tighter green sections */
/* Small all-caps labels on green/dark areas should read white */
.page-hero .eyebrow,
.section.dark .eyebrow,
.hero .eyebrow,
section[style*='background'] .eyebrow{
  color:#fff!important;
}

/* Mobile hamburger menu: slightly less transparent / 90% opaque */
@media (max-width:900px){
  .nav.open{
    background:rgba(234,243,242,.90)!important;
    backdrop-filter:blur(10px)!important;
  }
}

/* Inside page JW bug: left on desktop, centered only on mobile; readable size without bleeding */
.site-header.light{min-height:94px!important;}
.inside-branding{
  position:absolute!important;
  top:0!important;
  height:94px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:12!important;
}
.inside-bug{
  width:82px!important;
  max-height:76px!important;
  display:block!important;
  object-fit:contain!important;
}
@media (min-width:651px){
  .inside-branding{
    left:clamp(24px,4vw,60px)!important;
    right:auto!important;
    transform:none!important;
    width:120px!important;
  }
}
@media (max-width:650px){
  .site-header.light{min-height:96px!important;}
  .inside-branding{
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    width:120px!important;
    height:96px!important;
  }
  .inside-bug{
    width:78px!important;
    max-height:74px!important;
  }
}

/* Tighten vertical space in green bars/green sections by about 30% */
.section.dark{
  padding-top:clamp(49px,7vw,91px)!important;
  padding-bottom:clamp(49px,7vw,91px)!important;
}
.page-hero{
  padding-top:150px!important;
  padding-bottom:63px!important;
}
@media (max-width:650px){
  .page-hero{
    padding-top:138px!important;
    padding-bottom:50px!important;
  }
}

/* Revision 17: requested header, page hero, testimonial, and fixed inside-page top areas */
@media (min-width:901px){
  /* Move full handwritten Jackie Walters homepage logo down 30px from previous position */
  .hero-signature{transform:translateY(-60px)!important;}
}

/* Inside page headline scale and tighter green hero bars */
.page-hero{
  position:sticky!important;
  top:94px!important;
  z-index:8!important;
  padding-top:120px!important;
  padding-bottom:50px!important;
}
.page-hero h1{
  font-size:clamp(1.7rem,3.5vw,3.36rem)!important;
  line-height:1.04!important;
  max-width:980px!important;
}
.page-hero .eyebrow{margin-bottom:.65rem!important;}

/* Keep inside-page top bar, nav, and JW bug locked in place */
.site-header.light{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:20!important;
}
.inside-branding{
  position:fixed!important;
  z-index:21!important;
}

/* Reduce extra vertical space in green/dark content bands */
.section.dark{
  padding-top:clamp(39px,5.6vw,73px)!important;
  padding-bottom:clamp(39px,5.6vw,73px)!important;
}

/* Testimonials: remove first separator and tighten top spacing */
.testimonials-list{padding-top:50px!important;}
.testimonial-card:first-child{
  border-top:0!important;
  padding-top:0!important;
}

@media (max-width:650px){
  .page-hero{
    top:96px!important;
    padding-top:96px!important;
    padding-bottom:40px!important;
  }
  .page-hero h1{
    font-size:clamp(1.8rem,9vw,2.65rem)!important;
  }
  .testimonials-list{padding-top:38px!important;}
}

/* Revision 18: precision corrections from 5/12 feedback */
@media (min-width:901px){
  /* Bring the full Jackie Walters logo DOWN 30px from v17 */
  .hero-signature{transform:translateY(-30px)!important;}
}

/* Inside-page green hero: larger than v17, but still reduced from the original; tighter top/bottom space */
.page-hero{
  padding-top:96px!important;
  padding-bottom:40px!important;
}
.page-hero h1{
  font-size:clamp(2.25rem,4.5vw,4.15rem)!important;
  line-height:1.03!important;
}
@media (max-width:650px){
  .page-hero{
    padding-top:78px!important;
    padding-bottom:32px!important;
  }
  .page-hero h1{
    font-size:clamp(2.15rem,10vw,3.2rem)!important;
  }
}

/* Hamburger open menu: much less translucent so page content only shows through faintly */
@media(max-width:900px){
  .nav.open{
    background:rgba(234,243,242,.97)!important;
    backdrop-filter:blur(14px)!important;
  }
}

/* Testimonials: no top rule, with breathing room below green bar */
.testimonials-list{padding-top:60px!important;}
.testimonial-card:first-child{border-top:0!important;padding-top:0!important;}
@media(max-width:650px){.testimonials-list{padding-top:50px!important;}}

/* Home mobile hero: lift content slightly and stack all three buttons */
@media(max-width:650px){
  .hero-content{transform:translateY(-35px)!important;}
  .hero .btn{
    display:flex!important;
    width:min(320px,86vw)!important;
    margin:.42rem auto!important;
  }
}

/* Revision 19 final tweaks */
@media (min-width:901px){
.hero-location{font-size:1.14rem!important;letter-spacing:.24em!important;}
.page-hero h1,.page-hero .hero-title{white-space:nowrap!important;font-size:clamp(2.8rem,4.2vw,4.6rem)!important;}
}



/* Revision 20: final interaction, active nav, community image, and mobile inside-page spacing fixes */

/* Full-window TV ad: make the entire overlay, including video area, close on click */
.lightbox,
.lightbox-content,
.lightbox img,
.lightbox video{
  cursor: zoom-out!important;
}

/* Active nav state: current page/category stays black */
.nav a.nav-active,
.nav a.nav-active:visited,
.site-header.light .nav a.nav-active,
.site-header:not(.light) .nav a.nav-active,
.nav a.nav-active.btn.light{
  color:#000!important;
  font-weight:700!important;
}

/* Keep hover behavior black */
.nav a:hover,
.site-header.light .nav a:hover,
.site-header:not(.light) .nav a:hover{
  color:#000!important;
}

/* Carpinteria community card: force local uploaded image */
.c-carp{
  background-image:
    linear-gradient(180deg,rgba(24,54,60,.05),rgba(24,54,60,.72)),
    url('assets/images/community-carpinteria.jpg')!important;
}

/* v19 refinement retained: make location line readable on desktop only */
@media (min-width:901px){
  .hero-location{
    font-size:1.14rem!important;
    letter-spacing:.24em!important;
  }
  .page-hero h1{
    white-space:nowrap!important;
    max-width:none!important;
    width:100%!important;
    font-size:clamp(2.8rem,4.2vw,4.6rem)!important;
  }
}

/* Fixed/sticky inside header correction:
   prevents mobile content from sliding underneath the green page banner */
.page-hero{
  margin-top:94px!important;
}
@media(max-width:650px){
  .page-hero{
    margin-top:96px!important;
  }
  .page-hero + .section{
    margin-top:0!important;
    position:relative!important;
    z-index:1!important;
  }
}

/* Revision 23: force visible spacing in homepage Connect with Jackie button */
.hero-actions a[href="contact.html"].btn{
  white-space: nowrap !important;
  word-spacing: .18em !important;
}

/* Revision 26: current listings placeholder consistency */
.current-listings-placeholder{
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.current-listings-placeholder h2{
  margin: 0;
}

/* Revision 27: force Current Listings desktop to use standard inside-page header, not homepage logo treatment */
.current-listings-page .hero-signature,
.current-listings-page .inside-signature,
.current-listings-page .page-signature,
.current-listings-page .full-signature,
.current-listings-page img[src*="jackie-walters-logo"]{
  display:none!important;
}

.current-listings-page .jw-bug,
.current-listings-page .brand-bug img{
  max-width:86px!important;
  width:86px!important;
  height:auto!important;
  display:block!important;
}

@media (min-width:901px){
  .current-listings-page .topbar{
    min-height:78px!important;
  }
  .current-listings-page .brand-bug{
    position:absolute!important;
    left:34px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
  }
  .current-listings-page .nav{
    display:flex!important;
  }
}

.current-listings-placeholder{
  min-height:360px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

.current-listings-placeholder h2{
  margin:0!important;
}


/* Revision 28: footer social icons */
.social-icons{
  display:flex;
  gap:12px;
  margin-top:18px;
  align-items:center;
}

.social-icon{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:16px;
  font-weight:600;
  transition:all .25s ease;
  opacity:.92;
}

.social-icon:hover{
  background:#fff;
  color:#1f3d3a;
  border-color:#fff;
}

.linkedin-icon{
  font-size:14px;
  letter-spacing:-.03em;
}

@media(max-width:768px){
  .social-icons{
    justify-content:center;
  }
}

.contact-social-icons{
  margin-top:24px;
}


/* Revision 30: force contact-page social icons visibility and left alignment */
.contact-social-icons{
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center;
  gap:12px;
  margin-top:22px;
  margin-bottom:10px;
}

@media(max-width:768px){
  .contact-social-icons{
    justify-content:flex-start !important;
  }

  .social-icons{
    justify-content:flex-start !important;
  }
}


/* Revision 33: updated About page portrait and layout refinements */

/* Reduce excessive vertical whitespace around center content */
.section{
  padding-top:70px !important;
  padding-bottom:70px !important;
}

/* About page content aligned left on desktop */
@media (min-width: 901px){

  .about-page .section,
  body.about-page .section,
  .about-content-wrap,
  .split{
    justify-content:flex-start !important;
    text-align:left !important;
    align-items:flex-start !important;
  }

  .split{
    gap:50px !important;
  }

  .split .image-card,
  .split img{
    max-width:420px !important;
    width:420px !important;
    object-fit:cover !important;
    object-position:center top !important;
    border-radius:0 !important;
  }

  .split > div:last-child{
    max-width:720px !important;
    margin-left:0 !important;
  }
}

/* Keep mobile portrait image natural */
@media (max-width:900px){
  .split .image-card,
  .split img{
    object-fit:cover !important;
    object-position:center top !important;
  }
}


/* Revision 34: footer boilerplate refinement only */

/* Reduce excessive green dead space */
.footer{
  padding-top:0 !important;
  padding-bottom:0 !important;
}

.footer-inner{
  min-height:220px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  align-items:stretch !important;
}

/* Full-height footer headshot flush to left/top/bottom */
.footer-brand{
  align-items:stretch !important;
  gap:28px !important;
}

.footer-headshot{
  height:220px !important;
  width:auto !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center top !important;
  margin-left:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  border-radius:0 !important;
  display:block !important;
}

/* Move logo/text content left closer to image */
.footer-brand > div{
  margin-left:0 !important;
  padding-left:0 !important;
}

/* Desktop refinement */
@media (min-width:901px){

  .footer{
    padding-left:0 !important;
  }

  .footer-inner{
    display:flex !important;
    align-items:center !important;
    gap:40px !important;
  }

  .footer-brand{
    min-width:520px !important;
  }

  .footer-logo{
    margin-top:26px !important;
  }
}


/* Revision 35: footer content positioning only — no redesign */

/* Keep the full-height left headshot from v34 */
.footer{
  padding-top:0 !important;
  padding-bottom:0 !important;
}

.footer-inner{
  min-height:220px !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
  align-items:stretch !important;
}

.footer-headshot{
  height:220px !important;
  width:auto !important;
  object-fit:cover !important;
  object-position:center top !important;
  border-radius:0 !important;
  margin:0 !important;
}

/* Raise the left logo/text block so it is not sitting at the bottom */
.footer-brand{
  align-items:center !important;
}

.footer-brand > div{
  align-self:center !important;
  transform:translateY(-6px) !important;
}

/* Lower the center and right footer columns so they are not hugging the top */
.footer-inner > div:not(.footer-brand){
  align-self:center !important;
  transform:translateY(10px) !important;
}

/* Keep spacing controlled inside footer */
.footer-logo{
  margin-top:0 !important;
}

@media (min-width:901px){
  .footer-inner{
    display:flex !important;
    align-items:stretch !important;
    gap:42px !important;
  }
}

/* Mobile: keep footer content natural and readable */
@media (max-width:900px){
  .footer-inner,
  .footer-brand{
    align-items:flex-start !important;
  }

  .footer-brand > div,
  .footer-inner > div:not(.footer-brand){
    transform:none !important;
  }
}


/* Revision 38: force homepage location line below buttons and move hero content up */
@media (min-width: 901px){
  .home-page .hero-content,
  body.home-page .hero-content,
  .hero .hero-content{
    transform: translateY(-40px) !important;
  }

  .hero-location-bottom{
    display:block !important;
    margin:28px auto 0 !important;
    text-align:center !important;
    width:100% !important;
    font-size:1rem !important;
    letter-spacing:.24em !important;
    color:#fff !important;
  }
}

/* Ensure the top location line does not reserve old space if any duplicate remains */
.hero-content > .hero-location:not(.hero-location-bottom):first-child{
  display:none !important;
}


/* Revision 39: homepage hero spacing refinement */
@media (min-width: 901px){

  .home-page .hero-content,
  body.home-page .hero-content,
  .hero .hero-content{
    transform: translateY(-70px) !important;
  }

  .hero-location-bottom{
    margin-top:43px !important;
  }
}


/* Revision 41: homepage logo/header positioning refinement */
@media (min-width: 901px){

  /* Move entire white hero content lower */
  .home-page .hero-content,
  body.home-page .hero-content{
    transform: translateY(55px) !important;
  }

  /* Reduce homepage full logo size */
  .home-page .hero-signature,
  body.home-page .hero-signature{
    width: 560px !important;
    max-width: 56vw !important;
    margin-bottom: 38px !important;
  }

  /* Ensure logo clears nav bar */
  .home-page .hero{
    padding-top: 70px !important;
  }
}


/* Revision 42: reduce homepage full logo size on desktop + mobile */

.home-page .hero-signature,
body.home-page .hero-signature{
  width: 70% !important;
  max-width: 480px !important;
  height:auto !important;
}

@media (min-width:901px){
  .home-page .hero-signature,
  body.home-page .hero-signature{
    width: 420px !important;
    max-width: 42vw !important;
  }
}

@media (max-width:900px){
  .home-page .hero-signature,
  body.home-page .hero-signature{
    width: 280px !important;
    max-width: 72vw !important;
  }
}


/* Revision 44: restore boxed CONTACT nav button */
.nav-contact-btn{
  border:1px solid currentColor !important;
  padding:10px 18px !important;
  border-radius:2px !important;
  display:inline-block !important;
  line-height:1 !important;
  transition:all .22s ease !important;
}

@media (min-width:901px){
  .home-page .nav-contact-btn{
    color:rgba(255,255,255,.82) !important;
  }

  .home-page .nav-contact-btn:hover,
  .home-page .nav-contact-btn.nav-active{
    color:#fff !important;
  }
}


/* Revision 45: move homepage logo down on mobile only */
@media (max-width:900px){

  .home-page .hero-signature,
  body.home-page .hero-signature{
    margin-top:25px !important;
  }
}


/* Revision 46: move homepage mobile logo lower */
@media (max-width:900px){

  .home-page .hero-signature,
  body.home-page .hero-signature{
    margin-top:55px !important;
  }
}


/* Revision 47: optimized homepage video background */
.hero video{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}


/* Revision 49: safe homepage video darkening — no gray overlay */
.hero video{
  filter: brightness(58%) !important;
  opacity: 1 !important;
  background: transparent !important;
}

/* Disable any pseudo overlay that could turn the hero gray */
.hero::after{
  display:none !important;
  content:none !important;
}


/* Revision 50: homepage headline update */
.hero-title-custom{
  text-align:center;
}

.desktop-line-full{
  display:block;
}

@media (min-width:901px){
  .desktop-line-full{
    display:block !important;
    white-space:nowrap !important;
  }

  .hero-title-custom .mobile-line{
    display:none !important;
  }
}

@media (max-width:900px){
  .desktop-line-full{
    display:none !important;
  }

  .hero-title-custom .mobile-line{
    display:block !important;
  }
}


/* Revision 51: fix duplicated mobile headline and desktop centering */
.hero-title-custom{
  width:100% !important;
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.hero-title-custom .desktop-line-full{
  width:100% !important;
  text-align:center !important;
}

@media (max-width:900px){

  .hero-title-custom{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
  }

  .hero-title-custom .mobile-line{
    display:block !important;
    width:100% !important;
    text-align:center !important;
  }
}


/* Revision 52: definitive homepage headline fix */
.hero-title-custom .desktop-headline{
  display:block !important;
  text-align:center !important;
  white-space:nowrap !important;
}

.hero-title-custom .mobile-headline{
  display:none !important;
}

@media (min-width:901px){
  .hero-title-custom{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    text-align:center !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (max-width:900px){
  .hero-title-custom .desktop-headline{
    display:none !important;
  }

  .hero-title-custom .mobile-headline{
    display:block !important;
    text-align:center !important;
  }

  .hero-title-custom .mobile-line,
  .hero-title-custom .desktop-line,
  .hero-title-custom .desktop-line-full{
    display:none !important;
  }
}


/* Revision 53 */
.hero-copy p,
.hero-description,
.hero-subcopy{
  font-size:85% !important;
  font-weight:300 !important;
  line-height:1.55 !important;
  letter-spacing:.01em !important;
}


/* Revision 54: DEFINITIVE homepage intro copy refinement */
.hero p,
.hero-copy,
.hero-copy p,
.hero-description,
.hero-subcopy,
.hero-text,
.hero-content p{
  font-size: 0.85rem !important;
  font-weight: 200 !important;
  line-height: 1.55 !important;
  letter-spacing: 0.01em !important;
}

@media (min-width:901px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    font-size: 0.84rem !important;
    font-weight: 200 !important;
  }
}

@media (max-width:900px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    font-size: 0.82rem !important;
    font-weight: 200 !important;
  }
}


/* Revision 55: homepage intro copy size adjusted between v53 and v54 */
.hero p,
.hero-copy,
.hero-copy p,
.hero-description,
.hero-subcopy,
.hero-text,
.hero-content p{
  font-size: 1.05rem !important;
  font-weight: 300 !important;
  line-height: 1.55 !important;
  letter-spacing: .01em !important;
}

@media (min-width:901px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    font-size: 1.08rem !important;
    font-weight: 300 !important;
  }
}

@media (max-width:900px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    font-size: .98rem !important;
    font-weight: 300 !important;
  }
}


/* Revision 56: widen homepage intro text block */
.hero p,
.hero-copy,
.hero-copy p,
.hero-description,
.hero-subcopy,
.hero-text,
.hero-content p{
  max-width: 980px !important;
  width: 82vw !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media (min-width:901px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    max-width: 980px !important;
    width: 72vw !important;
  }
}

@media (max-width:900px){
  .hero p,
  .hero-copy,
  .hero-copy p,
  .hero-description,
  .hero-subcopy,
  .hero-text,
  .hero-content p{
    width: 88vw !important;
  }
}


/* Revision 57: fix homepage consultation/local knowledge image on desktop */
@media (min-width:901px){

  .local-knowledge img,
  .consultation-image img,
  .home-feature-image img,
  .about-preview img{
    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    display:block !important;
    margin:0 auto !important;
  }

  .local-knowledge-image,
  .consultation-image,
  .home-feature-image,
  .about-preview-image{
    height:auto !important;
    overflow:visible !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
  }
}


/* Revision 58: exact fix for homepage local knowledge image */
@media (min-width:901px){

  .image-card.local-knowledge-card{
    height:auto !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    background:transparent !important;
    display:block !important;
  }

  .image-card.local-knowledge-card img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center center !important;
    display:block !important;
  }
}


/* Revision 59: restore proper homepage consultation image size */
@media (min-width:901px){

  .image-card.local-knowledge-card{
    width: 520px !important;
    max-width: 42vw !important;
    margin-left:auto !important;
    margin-right:0 !important;
  }

  .image-card.local-knowledge-card img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
    display:block !important;
  }
}


/* Revision 60: make local knowledge image actually large on desktop */
@media (min-width:901px){

  .image-card.local-knowledge-card{
    width: 720px !important;
    max-width: 720px !important;
    flex: 0 0 720px !important;
    align-self:flex-start !important;
  }

  .image-card.local-knowledge-card img{
    width: 720px !important;
    max-width: 720px !important;
    height: auto !important;
    display:block !important;
  }
}


/* Revision 61: enlarge local knowledge image ~25% */
@media (min-width:901px){

  .image-card.local-knowledge-card{
    width: 900px !important;
    max-width: 900px !important;
    flex: 0 0 900px !important;
  }

  .image-card.local-knowledge-card img{
    width: 900px !important;
    max-width: 900px !important;
    height:auto !important;
  }
}


/* Revision 62: make HOME nav white on homepage */
.home-page .nav a.nav-active,
.home-page .nav a[href="index.html"]{
  color:#ffffff !important;
}


/* Revision 63: force HOME nav item white on homepage desktop */
.home-page nav a.nav-active,
.home-page nav a[href="index.html"],
.home-page .nav a.nav-active,
.home-page .nav a[href="index.html"]{
  color:#ffffff !important;
  opacity:1 !important;
}

.home-page nav a.nav-active:hover,
.home-page nav a[href="index.html"]:hover{
  color:#ffffff !important;
}


/* Revision 64: override active HOME nav color on homepage */
html body.home-page header.site-header nav.nav a.home-nav-force-white,
html body.home-page header.site-header nav.nav a.home-nav-force-white.nav-active,
html body.home-page .site-header .nav a.home-nav-force-white,
html body.home-page .site-header .nav a.home-nav-force-white.nav-active,
html body.home-page a.home-nav-force-white,
html body.home-page a.home-nav-force-white.nav-active{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
}


/* Revision 66: move homepage hero content up */
@media (min-width:901px){

  .hero-content,
  .home-page .hero-content{
    transform: translateY(-30px) !important;
  }
}


/* Revision 67: reduce homepage main logo size on desktop only */
@media (min-width:901px){

  .hero-signature,
  .home-page .hero-signature{
    transform: scale(0.70) !important;
    transform-origin: top center !important;
  }
}


/* Revision 69: Current Listings luxury presentation */
.current-listings-hero h1{max-width:1100px;}
.current-listings-intro{padding-bottom:45px!important;}
.current-listings-intro h2{
  font-family:var(--serif);
  font-size:clamp(2.4rem,4vw,4.8rem);
  font-weight:400;
  margin:0 0 20px;
  color:var(--green);
}
.featured-listing-showcase{
  display:grid;
  grid-template-columns:1.28fr .72fr;
  background:var(--green);
  color:white;
  min-height:560px;
}
.featured-listing-image{position:relative;min-height:560px;overflow:hidden;}
.featured-listing-image>img{width:100%;height:100%;object-fit:cover;display:block;}
.featured-listing-copy{padding:70px 58px;display:flex;flex-direction:column;justify-content:center;}
.featured-listing-copy .eyebrow,.featured-listing-copy .listing-city{color:rgba(255,255,255,.78)!important;}
.featured-listing-copy h2{
  font-family:var(--serif);
  font-size:clamp(2.3rem,3.6vw,4.3rem);
  font-weight:400;
  line-height:1.02;
  margin:0 0 12px;
  color:#fff;
}
.listing-price{font-family:var(--serif);font-size:2rem;margin:20px 0;color:inherit;}
.listing-meta{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 28px;}
.listing-meta span{border:1px solid currentColor;padding:8px 12px;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;}
.featured-listing-thumbs{position:absolute;left:28px;bottom:28px;display:flex;gap:10px;z-index:2;}
.feature-dot,.listing-thumb{border:1px solid rgba(255,255,255,.75);background:transparent;padding:0;cursor:pointer;overflow:hidden;}
.feature-dot img{width:94px;height:62px;object-fit:cover;display:block;}
.current-listings-grid-section{padding-top:90px!important;}
.current-listings-grid{display:grid;gap:70px;}
.current-listing-card{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:58px;
  align-items:center;
  padding-bottom:70px;
  border-bottom:1px solid rgba(30,59,63,.22);
}
.current-listing-card:nth-child(even) .listing-media{order:2;}
.listing-main-img{width:100%;aspect-ratio:1.45/1;object-fit:cover;display:block;}
.listing-thumbs{display:flex;gap:8px;margin-top:10px;}
.listing-thumb{border-color:rgba(30,59,63,.25);}
.listing-thumb img{width:100px;height:68px;object-fit:cover;display:block;}
.listing-status{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--green);margin-bottom:18px;font-weight:700;}
.listing-info h2{
  font-family:var(--serif);
  font-size:clamp(2.2rem,3.8vw,4.1rem);
  line-height:1.02;
  font-weight:400;
  margin:0;
  color:var(--green);
}
.listing-city{margin:12px 0 0;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;color:rgba(30,59,63,.75);}
.listing-info .listing-price{color:var(--green);}
.listing-description{max-width:680px;}
@media(max-width:900px){
  .featured-listing-showcase,.current-listing-card{grid-template-columns:1fr;}
  .featured-listing-image{min-height:360px;}
  .featured-listing-copy{padding:46px 28px;}
  .current-listing-card,.current-listing-card:nth-child(even) .listing-media{display:block;order:initial;}
  .listing-info{margin-top:28px;}
  .listing-main-img{aspect-ratio:1.25/1;}
  .feature-dot img,.listing-thumb img{width:72px;height:50px;}
}


/* Revision 70: Current Listings refinements */

/* Make Current Listings hero headline match other inside-page hero typography */
.current-listings-hero h1{
  font-weight: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  max-width: inherit !important;
}

/* Remove extra spacing left behind by removed featured-top duplicate */
.current-listings-grid-section{
  padding-top:55px !important;
}

/* Reduce listing address type to about 80% */
.listing-info h2{
  font-size:clamp(1.75rem,3.05vw,3.3rem) !important;
}

/* Intro heading slightly restrained to match site tone */
.current-listings-intro h2{
  font-size:clamp(2.1rem,3.5vw,4.1rem) !important;
}


/* Revision 71: consistent Current Listings slideshow + inquiry layout */
.current-listings-feature-list{
  padding-top:45px!important;
}
.listing-feature-block{
  margin:0 auto 100px;
  max-width:1500px;
  border-bottom:1px solid rgba(30,59,63,.22);
  padding-bottom:90px;
}
.listing-feature-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) 390px;
  gap:34px;
  align-items:start;
}
.listing-gallery{
  width:100%;
}
.listing-slides{
  position:relative;
  width:100%;
  aspect-ratio:1.55/1;
  overflow:hidden;
  background:#1f3d3a;
}
.listing-slide{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  transition:opacity .35s ease;
}
.listing-slide.active{
  opacity:1;
}
.listing-image-overlay{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  padding:42px 48px 38px;
  color:#fff;
  background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.72));
  z-index:2;
}
.listing-image-overlay h2{
  color:#fff!important;
  font-family:var(--serif);
  font-size:clamp(2.05rem,3.1vw,3.7rem)!important;
  font-weight:400;
  line-height:1;
  margin:0;
}
.listing-image-overlay p{
  color:rgba(255,255,255,.86);
  margin:10px 0 0;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
}
.listing-status-white{
  font-size:.72rem!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  margin:0 0 14px!important;
}
.slide-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.75);
  background:rgba(0,0,0,.22);
  color:#fff;
  font-size:36px;
  line-height:38px;
  cursor:pointer;
}
.slide-arrow.prev{left:22px;}
.slide-arrow.next{right:22px;}
.slide-dots{
  display:flex;
  gap:8px;
  margin-top:14px;
  flex-wrap:wrap;
}
.slide-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  border:1px solid var(--green);
  background:transparent;
  padding:0;
  cursor:pointer;
}
.slide-dot.active{
  background:var(--green);
}
.listing-inquiry-card{
  background:#fff;
  border:1px solid rgba(30,59,63,.22);
  padding:34px 30px;
  position:sticky;
  top:125px;
  box-shadow:0 18px 45px rgba(0,0,0,.06);
}
.listing-inquiry-card h3{
  font-family:var(--serif);
  color:var(--green);
  font-weight:400;
  font-size:2rem;
  margin:0 0 22px;
}
.tour-date-row{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-bottom:18px;
}
.tour-date-row button{
  border:1px solid rgba(30,59,63,.22);
  background:#f6f3ef;
  color:var(--green);
  padding:10px 12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.68rem;
}
.listing-inquiry-card input,
.listing-inquiry-card textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(30,59,63,.22);
  padding:13px 12px;
  margin-bottom:10px;
  font-family:inherit;
}
.listing-inquiry-card textarea{
  min-height:92px;
}
.listing-inquiry-card .btn{
  width:100%;
  margin-top:6px;
}
.listing-link{
  display:block;
  text-align:center;
  margin-top:16px;
  color:var(--green);
  text-decoration:none;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.7rem;
}
.listing-feature-content{
  display:grid;
  grid-template-columns:390px 1fr;
  gap:34px;
  margin-top:28px;
}
.listing-feature-content .listing-price{
  color:var(--green);
  margin-top:0;
}
.listing-feature-content .listing-description{
  max-width:850px;
  font-size:1.08rem;
  line-height:1.65;
}
@media(max-width:1000px){
  .listing-feature-top,
  .listing-feature-content{
    grid-template-columns:1fr;
  }
  .listing-inquiry-card{
    position:static;
  }
}
@media(max-width:700px){
  .listing-slides{
    aspect-ratio:1.08/1;
  }
  .listing-image-overlay{
    padding:32px 24px 26px;
  }
  .listing-image-overlay h2{
    font-size:2.1rem!important;
  }
}


/* Revision 72: Current Listings typography/layout refinements */

/* Make top green-bar header match other inside pages */
.current-listings-hero h1{
  font-family: var(--serif) !important;
  font-size: clamp(3.1rem, 5.2vw, 5.6rem) !important;
  line-height: .98 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  max-width: 1100px !important;
  margin: 0 !important;
}

/* Tighten hero spacing slightly */
.current-listings-hero .hero-inner{
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Make prices bolder and stronger */
.listing-price{
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
}

/* Align price/meta/buttons flush left with address */
.listing-feature-content{
  grid-template-columns: 1fr !important;
  gap: 18px !important;
}

.listing-feature-content > div{
  width: 100% !important;
}

.listing-feature-content .listing-price,
.listing-feature-content .listing-meta,
.listing-feature-content .btn{
  margin-left: 0 !important;
  justify-content: flex-start !important;
}

/* Slightly larger buttons under pricing */
.listing-feature-content .listing-meta{
  margin-top: 18px !important;
}



.current-listings-hero h1{
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(3.6rem, 5.4vw, 6.2rem) !important;
  line-height: .98 !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  color: #fff !important;
  max-width: 1250px !important;
  margin: 0 !important;
}

/* Restore the same green-bar breathing room as the other inside pages */
.current-listings-hero .hero-inner{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media(max-width:900px){
  .current-listings-hero h1{
    font-size: clamp(2.6rem, 11vw, 4.5rem) !important;
    line-height: 1.02 !important;
  }
}


/* Revision 74: align price/meta flush with white overlay address text */
.listing-feature-content{
  padding-left: 48px !important;
  box-sizing: border-box !important;
}

@media(max-width:700px){
  .listing-feature-content{
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}


/* Revision 75: tighten Current Listings spacing throughout */

/* Reduce space between image and right-side webform */
.listing-feature-top{
  gap: 18px !important;
}

/* Reduce space below slideshow before pricing */
.listing-feature-content{
  margin-top: 12px !important;
  gap: 10px !important;
}

/* Tighten price spacing */
.listing-feature-content .listing-price{
  margin-bottom: 10px !important;
  margin-top: 0 !important;
}

/* Tighten button/meta spacing */
.listing-meta{
  margin: 10px 0 14px !important;
  gap: 8px !important;
}

/* Tighten description spacing */
.listing-description{
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  line-height: 1.5 !important;
}

/* Reduce whitespace above/below separator line */
.listing-feature-block{
  margin-bottom: 48px !important;
  padding-bottom: 42px !important;
}

/* Reduce separator spacing before next listing */
.current-listings-feature-list{
  padding-top: 20px !important;
}

/* Tighten inquiry card internals slightly */
.listing-inquiry-card{
  padding: 26px 24px !important;
}

.listing-inquiry-card h3{
  margin-bottom: 14px !important;
}

.tour-date-row{
  margin-bottom: 12px !important;
}




/* Neutralize the oversized/bold Current Listings-specific header overrides */
.current-listings-hero h1{
  font-family: var(--serif) !important;
  font-size: clamp(2.65rem, 4.4vw, 4.85rem) !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  color: #fff !important;
  max-width: 1180px !important;
  margin: 0 !important;
  white-space: normal !important;
}

/* Keep the green header bar consistent with the other inside pages */
.current-listings-hero{
  overflow: hidden !important;
}

.current-listings-hero .hero-inner{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media(max-width:900px){
  .current-listings-hero h1{
    font-size: clamp(2.25rem, 9.5vw, 3.65rem) !important;
    line-height: 1.05 !important;
  }
}



body .current-listings-hero .hero-inner h1,
body .page-hero.current-listings-hero .hero-inner h1,
html body section.current-listings-hero h1{
  font-family: "Cormorant Garamond", "Libre Baskerville", "Georgia", "Times New Roman", serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  font-size: clamp(3.2rem, 4.8vw, 5.3rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.01em !important;
  color: #ffffff !important;
  text-transform: none !important;
}

@media(max-width:900px){
  body .current-listings-hero .hero-inner h1,
  body .page-hero.current-listings-hero .hero-inner h1,
  html body section.current-listings-hero h1{
    font-size: clamp(2.5rem, 10vw, 4rem) !important;
    line-height: 1.05 !important;
  }
}



.current-listings-hero h1{
  font-family: Georgia, "Times New Roman", serif !important;
  font-weight: 400 !important;
  font-size: clamp(2.25rem, 4.5vw, 4.15rem) !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  text-transform: none !important;
}



.current-listings-hero h1{
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-weight: 400 !important;
  font-size: clamp(1.95rem, 3.55vw, 3.85rem) !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
  color: #ffffff !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
}

/* Ensure no inherited bold styling survives */
.current-listings-hero h1 strong,
.current-listings-hero h1 b{
  font-weight: 400 !important;
}


/* Revision 80: exact Sales page hero match for Current Listings */
.current-listings-hero h1{
  all: inherit;
}
