@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=DM+Sans:ital,opsz,wght@0,9..40,400..700;1,9..40,400..700&display=swap");
/* Cahlil Canada — per-agent overrides (utilities) */
.placeholderCard{border:2px dashed rgba(11,18,32,.25)!important;background:var(--second-bg-color)!important;box-shadow:none!important;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:22rem;padding:3rem 2.4rem}
.placeholderStars{color:rgba(11,18,32,.25);display:flex;gap:.4rem;justify-content:center}
.placeholderTitle{font-family:"Playfair Display",serif;font-size:2.2rem;color:var(--text-color);margin:0}
.placeholderNote{font-size:1.45rem;color:var(--hovercolor);margin:0;max-width:28ch}
.placeholderListing{padding:0;overflow:hidden;cursor:default}
.placeholderListing .listInfo{padding:2.4rem;display:flex;flex-direction:column;gap:.8rem;align-items:center}
.placeholderImg{display:flex;align-items:center;justify-content:center;color:rgba(11,18,32,.3);background:rgba(11,18,32,.04);aspect-ratio:4/3;width:100%}
.clientProof{display:inline-flex!important;width:auto!important;padding:1rem 1.4rem!important}
.clientProof .clientChip{display:inline-block;padding:.8rem 1.6rem;border:2px dashed rgba(11,18,32,.25);border-radius:999px;font-family:"Google Sans",Arial,sans-serif;font-size:1.4rem!important;font-weight:500;line-height:1.2;color:var(--hovercolor)}
/* Instagram */
.instagramFeed{padding:2rem 8% 7rem;background:var(--second-bg-color)}
.igHeader{display:flex;justify-content:space-between;align-items:flex-end;gap:2.4rem;flex-wrap:wrap;margin-bottom:3.2rem}
.igEyebrow{font-size:1.2rem;letter-spacing:.2em;text-transform:uppercase;color:var(--hovercolor);margin:0 0 .6rem}
.igProfile{display:flex;align-items:center;gap:1.4rem;padding:1rem 1.4rem 1rem 1rem;border:1px solid rgba(11,18,32,.15);border-radius:999px;background:var(--second-bg-color);color:var(--text-color);text-decoration:none}
.igProfile img{width:4.8rem;height:4.8rem;border-radius:50%;object-fit:cover}
.igHandle{display:flex;flex-direction:column;font-weight:700;font-size:1.5rem;line-height:1.2}
.igHandle small{font-weight:400;font-size:1.2rem;color:var(--hovercolor)}
.igFollow{margin-left:.6rem;padding:.8rem 1.6rem;border-radius:999px;background:var(--contactcolor);color:#fff;font-size:1.3rem;font-weight:600}
.igGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.6rem}
.igTile{position:relative;display:flex;flex-direction:column;gap:1rem;color:var(--text-color);text-decoration:none}
.igTile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:1.2rem;transition:transform .25s}
.igTile:hover img{transform:scale(1.02)}
.igVideo{position:absolute;top:1rem;right:1rem;width:2.8rem;height:2.8rem;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;display:flex;align-items:center;justify-content:center}
.igCaption{margin:0;font-size:1.35rem;line-height:1.45;color:var(--aboutxtcolor);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:900px){.igGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.instagramFeed{padding:6rem 5%}}

.placeholderCard .featuredReviewRating svg{stroke:rgba(11,18,32,.3)!important;fill:none!important;color:rgba(11,18,32,.3)!important}


/* ===================== IVORY & GOLD LIGHT THEME =====================
   Base layout = Armijo-style light site (styles.css). This layer gives it
   Cahlil's own identity: ivory ground, white surfaces, charcoal type,
   brand gold accents, hairline borders, DM Sans body, charcoal footer. */
:root{
  --bg-color:#F7F3EC; --second-bg-color:#FFFDFA; --mainaboutcolor:#F7F3EC;
  --text-color:#15161A; --accentcolor:#15161A; --aboutxtcolor:#2B2D33;
  --hovercolor:#5B5E66; --contactcolor:#15161A;
  --ink:#15161A; --ink-2:#2B2D33; --mute:#5B5E66; --dim:#8A8D95;
  --ivory:#F7F3EC; --paper:#FFFDFA; --line:rgba(21,22,26,.12); --line-2:rgba(21,22,26,.22);
  --gold:#BA9731; --gold-2:#D9C27A; --gold-soft:rgba(186,151,49,.14);
  --radius:18px; --shadow:0 10px 30px rgba(21,22,26,.06); --shadow-hover:0 18px 40px rgba(21,22,26,.10);
  --serif:"Playfair Display",Georgia,"Times New Roman",serif; --sans:"DM Sans","Google Sans","Helvetica Neue",Arial,sans-serif;
}
html{background:var(--ivory)}
body{background:var(--ivory)!important;color:var(--ink)!important;font-family:var(--sans)!important;-webkit-font-smoothing:antialiased}
h1,h2,h3,.logo,.listingTitle,.serviceTitle,.callOut,.legalPage h1,.legalPage h2,.footerBrand h2{font-family:var(--serif)!important}
p,li,span,a,button,input,textarea,label,address,time,select{font-family:var(--sans)}
a{color:inherit}
::selection{background:var(--gold-2);color:var(--ink)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* header */
.header{background:rgba(247,243,236,.86)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.logo{color:var(--ink)!important;font-size:2.2rem!important;line-height:1.05}
.logoSpan{font-family:var(--sans)!important;font-size:1rem!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)!important;font-weight:600}
.dreNumber{font-family:var(--sans)!important;font-size:.95rem!important;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)!important}
.navbar a{font-size:1.5rem!important;font-weight:500;color:var(--ink-2)!important;border-bottom:2px solid transparent!important;padding-bottom:.4rem}
.navbar a:hover,.navbar a.active{color:var(--ink)!important;border-bottom-color:var(--gold)!important}
.navbar.active,.navbar.open{background:var(--paper)!important;border:1px solid var(--line);box-shadow:var(--shadow)}
#menu-icon{color:var(--ink)!important}

/* buttons: charcoal pill, gold on hover */
.primary-btn,.ctaBtn,.buyHeroBtn,.sellHeroBtn,.investHeroBtn,.buyPageCtaBtn,.sellCtaBtn,.investCtaBtn,.contactBottomBtn,.openCalendarBtn,.messageSubmitBtn:not(:disabled),.bookAppointmentBtn:not(:disabled),.sidebarBtn,.igFollow,.firstBuyerBtn,.articleSidebarBtn,.connect-btn,.stickyContactCta,.aboutHero .contactBtn,.aboutHeroText .contactBtn,.listingInterestBtn,.servicesPage .primary-btn,.heroAgentBtn,.contactBtn{background:var(--ink)!important;color:#fff!important;border:1px solid var(--ink)!important;border-radius:999px!important;font-family:var(--sans)!important;font-weight:600!important;font-size:1.5rem!important;letter-spacing:.01em;text-transform:none;line-height:1!important;padding:1.4rem 2.4rem!important;transition:background .2s,border-color .2s,color .2s,transform .2s}
.primary-btn:hover,.ctaBtn:hover,.buyHeroBtn:hover,.sellHeroBtn:hover,.investHeroBtn:hover,.buyPageCtaBtn:hover,.sellCtaBtn:hover,.investCtaBtn:hover,.contactBottomBtn:hover,.openCalendarBtn:hover,.messageSubmitBtn:not(:disabled):hover,.bookAppointmentBtn:not(:disabled):hover,.sidebarBtn:hover,.igFollow:hover,.firstBuyerBtn:hover,.articleSidebarBtn:hover,.connect-btn:hover,.stickyContactCta:hover,.aboutHero .contactBtn:hover,.listingInterestBtn:hover,.heroAgentCta:hover .heroAgentBtn,.contactBtn:hover{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--ink)!important;transform:translateY(-1px)}
.primary-btn i,.primary-btn svg,.ctaBtn i,.stickyContactCta i,.stickyContactCta span,.connect-btn i,.igFollow i,.contactBtn i{color:inherit!important}
.secondary-btn,.aboutBtn,.listingTourBtn,.descriptionToggleBtn,.prevMonthBtn,.nextMonthBtn{background:transparent!important;color:var(--ink)!important;border:1.5px solid var(--ink)!important;border-radius:999px!important;font-family:var(--sans)!important;font-size:1.5rem!important;font-weight:600!important;text-transform:none;padding:1.4rem 2.4rem!important;line-height:1!important;transition:background .2s,color .2s,border-color .2s}
.secondary-btn:hover,.aboutBtn:hover,.listingTourBtn:hover,.descriptionToggleBtn:hover,.prevMonthBtn:hover,.nextMonthBtn:hover{background:var(--ink)!important;color:#fff!important}
.secondary-btn i,.secondary-btn svg,.aboutBtn i,.descriptionToggleBtn i,.descriptionToggleBtn span{color:inherit!important}
.prevMonthBtn,.nextMonthBtn{padding:.8rem 1.2rem!important}
.messageSubmitBtn:disabled,.bookAppointmentBtn:disabled,button:disabled{background:var(--ivory)!important;border:1px solid var(--line-2)!important;color:var(--dim)!important;cursor:not-allowed}
.listingsBtn,.learnMore,.postReadMore{background:transparent!important;border:0!important;color:var(--ink)!important;padding:0!important;font-weight:600}
.listingsBtn:hover,.learnMore:hover,.postReadMore:hover{color:var(--gold)!important}
.eyebrow,.sectionEyebrow,.sellEyebrow,.investEyebrow,.listingsEyebrow,.contactEyebrow,.blogEyebrow,.postCategory,.igEyebrow,.socialEyebrow,.servicesEyebrow,.aboutHeroText .eyebrow,.aboutContent h3{font-family:var(--sans)!important;color:var(--gold)!important;font-size:1.2rem!important;letter-spacing:.2em;text-transform:uppercase;font-weight:700}

/* hero */
.home{position:relative;overflow:hidden;isolation:isolate;background:var(--ivory)}
.home::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 78% 22%,rgba(186,151,49,.16),transparent 52%);z-index:-1;pointer-events:none}
.homeContent h1{font-size:clamp(4.2rem,5.8vw,7.2rem)!important;line-height:1.02!important;font-weight:600!important;letter-spacing:-.01em;color:var(--ink)!important}
.homeContent h1 span,.homeContent h1 em,.spanName,.aboutContent h2 span,.servicesHeroContent h1 span{color:var(--gold)!important;font-style:italic;font-weight:500}
.homeContent h3,.homeContent>h3{font-family:var(--sans)!important;font-size:1.9rem!important;font-weight:400!important;color:var(--mute)!important;line-height:1.55}
.clientProof{border:1px solid var(--line)!important;background:var(--paper)!important;color:var(--ink-2)!important;border-radius:999px!important;box-shadow:var(--shadow)!important}
.clientProof:hover{border-color:var(--gold)!important;color:var(--ink)!important}
.clientProof p{font-size:1.3rem!important;line-height:1.35!important;font-weight:500}
.clientFaces img{border:2px solid var(--paper)!important}
.socialCard{background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:2.4rem 2.4rem 2.8rem;display:flex;flex-direction:column;align-items:center}
.callOut{font-size:2.4rem!important;line-height:1.15!important;color:var(--ink)!important}
.socialText{color:var(--mute)!important;font-size:1.4rem!important}
.socialEyebrow{margin-top:1.6rem}
.socialIcons a{border:1px solid var(--line-2)!important;color:var(--ink)!important;background:var(--paper)!important;width:4.4rem!important;height:4.4rem!important;padding:0!important;margin:1.4rem .5rem!important;font-size:1.8rem!important}
.socialIcons a:hover{border-color:var(--gold)!important;color:var(--gold)!important;background:var(--gold-soft)!important}
/* hero reel: rounded portrait frame with gold ring (replaces the round headshot) */
.homeImg.homeReel{position:relative;overflow:hidden;width:320px!important;height:520px!important;aspect-ratio:auto!important;border-radius:26px!important;padding:4px!important;background:linear-gradient(135deg,var(--gold),var(--gold-2),var(--gold))!important;box-shadow:0 22px 50px rgba(21,22,26,.14)!important}
.homeImg.homeReel>*{border-radius:22px;overflow:hidden;background:#fff}
.homeReel video{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);object-fit:cover;object-position:center top;display:block;border-radius:22px}
.homeReel img{display:none!important}
.homeReelEmbed .instagram-media{margin:0!important;width:100%!important;min-width:0!important;max-width:none!important;height:100%!important}
.reelMuted{position:absolute;top:1.6rem;right:1.6rem;z-index:2;width:2.6rem;height:2.6rem;border-radius:50%;border:1px solid var(--gold);background:rgba(255,255,255,.85);color:var(--ink);display:flex;align-items:center;justify-content:center;pointer-events:none}
.reelChip{position:absolute;left:1.6rem;bottom:1.6rem;z-index:2;display:inline-flex;align-items:center;gap:.7rem;padding:.7rem 1.1rem;border:1px solid var(--line);background:rgba(255,255,255,.9);backdrop-filter:blur(4px);color:var(--ink)!important;font-size:1.1rem;font-weight:600;text-decoration:none;white-space:nowrap;border-radius:999px}
.reelChip svg{color:var(--gold);flex:none}
.reelChip:hover{background:var(--ink);color:#fff!important}.reelChip:hover svg{color:var(--gold-2)}
@media (prefers-reduced-motion:reduce){.homeReel video{display:none}.homeReel img{display:block!important}.reelMuted{display:none}}
/* hero agent CTA card */
.heroAgentCta{display:flex;align-items:center;gap:1.6rem;width:fit-content;max-width:100%;margin:2.4rem 0 1.2rem;padding:1.2rem 1.4rem 1.2rem 1.2rem;background:var(--paper);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow);color:var(--ink);text-decoration:none;transition:border-color .2s,box-shadow .2s}
.heroAgentCta:hover{border-color:var(--gold);box-shadow:var(--shadow-hover)}
.heroAgentCta img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:center top;border:2px solid var(--gold);flex:none}
.heroAgentCta .heroAgentText{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.heroAgentCta .heroAgentName{font-family:var(--serif)!important;font-size:1.8rem;line-height:1.1;color:var(--ink);font-weight:600}
.heroAgentCta .heroAgentRole{font-size:1.1rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.heroAgentCta .heroAgentBtn{margin-left:1rem;padding:1.1rem 1.6rem!important;font-size:1.3rem!important;white-space:nowrap;flex:none}
.homeContent .clientProof{margin-top:0!important}
@media (max-width:640px){.heroAgentCta{flex-wrap:wrap;width:100%;border-radius:20px}.heroAgentCta .heroAgentBtn{margin-left:0;width:100%;text-align:center}}
/* cap hero heights */
.home{min-height:min(88vh,820px)!important}
.aboutHero,.reviewsHero,.servicesHeroPage,.listingsHeroPage,.contactHero,.buyHero,.sellHero,.investHero{min-height:min(78vh,640px)!important}
.blogHero{min-height:auto!important}

/* city marquee strip */
.cityStrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.6rem 0;overflow:hidden;background:var(--paper)}
.cityStrip .row{display:flex;gap:5.6rem;white-space:nowrap;font-size:1.2rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;color:var(--mute);width:max-content;animation:cityMarquee 40s linear infinite}
.cityStrip .row i{color:var(--gold);font-style:normal}
@keyframes cityMarquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.cityStrip .row{animation:none}}

/* section headings: gold hairline before the title */
.listingTitle,.serviceTitle,.reviewHeader h2,.aboutContent h2,.igHeader h2,.sectionHeader h2,.latestPosts h2,.whyWork h2,.areasServed h2,.contactReach h2,.buySectionHeader h2,.sellSectionHeader h2,.investSectionHeader h2{font-size:clamp(3rem,3.8vw,4.6rem)!important;line-height:1.05!important;font-weight:600!important;color:var(--ink)!important}
.listingTitle::before,.serviceTitle::before,.reviewHeader h2::before,.aboutContent h2::before,.igHeader h2::before{content:"";display:block;width:3.6rem;height:2px;background:var(--gold);margin-bottom:1.4rem;border-radius:2px}
.buySectionHeader span,.sellSectionHeader span,.investSectionHeader span,.listingsAccentLine,.contactReach h2::after{background:var(--gold)!important}

/* surfaces: alternate ivory / white */
.featuredListings,.servicesList,.reviewSection,.instagramFeed,.whyWork,.serviceTrustSection,.buySupport,.sellWhy,.investWhy,.contactMain,.reviewStats{background:var(--paper)!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.aboutPreview,.aboutStory,.buyProcess,.sellProcess,.investStrategy,.areasServed,.latestPosts,.blogMain,.articleMain,.listingsPageSection,.servicesPageCards,.serviceBottomSection{background:var(--ivory)!important}

/* cards: white, hairline, soft shadow (instead of heavy black outlines) */
.listingCard,.serviceBtn,.testimonialCard,.whyWorkCard,.whyCard,.postPreview,.featuredPost,.articleSidebarCard,.sidebarCard,.articleContent section,.faqBox,.consultationPanel,.messagePanel,.calendarBox,.selectedPropertyPreview,.trustItem,.buyProcessCard,.sellProcessCard,.investStrategyCard,.supportCard,.firstBuyerPanel,.igProfile,.clientFeedbackBox,.serviceBottomCta,.sellCta,.investCta,.buyPageCta{background:#fff!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow)!important;transition:transform .25s,box-shadow .25s,border-color .25s}
.listingCard:hover,.serviceBtn:hover,.testimonialCard:hover,.postPreview:hover,.whyWorkCard:hover,.igProfile:hover{border-color:var(--gold)!important;transform:translateY(-3px);box-shadow:var(--shadow-hover)!important}
.listInfo h3{font-family:var(--serif)!important;font-size:2.6rem!important;font-weight:600!important;color:var(--ink)!important}
.location .lilP,.listingDetails span,.listingsPageHeader p,.articleMeta,.postMeta,.areaList li,.modalDisclaimer,.secureNote,.calendarDays span,.listingModalStats span,.placeholderNote,.ph-sub,.igCaption,.igHandle small{color:var(--mute)!important}
.tag,.pendingTag,.closedTag{background:var(--ink)!important;border:1px solid var(--ink)!important;color:#fff!important;border-radius:999px!important;font-size:1.05rem!important;letter-spacing:.14em;text-transform:uppercase;padding:.6rem 1.2rem!important;font-weight:600!important}
.pendingTag{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--ink)!important}
.closedTag{background:var(--mute)!important;border-color:var(--mute)!important}
.serviceIcon,.whyIcon,.sidebarIcon,.buyProcessIcon,.sellProcessIcon,.investStrategyIcon,.reachIcon,.contactBottomIcon,.sellCtaIcon,.investCtaIcon,.buyPageCtaIcon{background:var(--gold-soft)!important;border:1px solid rgba(186,151,49,.35)!important;color:var(--gold)!important;border-radius:50%!important}
.serviceIcon svg,.serviceIcon svg path,.serviceIcon svg circle{stroke:var(--gold)!important}
.sellCtaIcon i,.investCtaIcon i,.buyPageCtaIcon i,.sellCtaIcon svg,.investCtaIcon svg,.buyPageCtaIcon svg,.investWhyContent li i,.sellWhyContent li i,.buyHelpContent li i,.firstBuyerPanel li i,.questionBox i,.reachIcon i,.contactBottomIcon,.listingModalStats i,.listingModalHighlights li::before,.faqBox>span,.faqQuestion i{color:var(--gold)!important}
.whyWorkItem span{background:var(--gold-soft)!important;border:1px solid rgba(186,151,49,.35);color:var(--gold)!important}
.aboutImg,.aboutStoryImage,.aboutHeroImage{border-radius:var(--radius)!important;overflow:hidden!important;box-shadow:var(--shadow-hover)}
.aboutImg img,.aboutStoryImage img,.aboutHeroImage img{border-radius:var(--radius)!important}

/* reviews */
.featuredReviewRating svg,.heroStars,.smallReviewCard .featuredReviewRating{color:var(--gold)!important;fill:var(--gold)!important;stroke:var(--gold)!important}
.testimonialCard p,.featuredReviewQuote,.feedbackQuote{font-family:var(--serif)!important;font-size:1.9rem!important;line-height:1.4;font-style:italic;color:var(--ink-2)!important}
.reviewText span{color:var(--mute)!important;font-size:1.2rem!important}
.reviewFaces img{border:2px solid var(--gold)!important}
.feedbackDot,.featuredReviewDot{background:var(--line-2)!important}.feedbackDot.active,.featuredReviewDot.active,.feedbackDot.active::before{background:var(--gold)!important}
.statNumber,.reviewStat strong,.reviewStat h3{color:var(--gold)!important;font-family:var(--serif)!important}
.placeholderCard{border:1px dashed var(--line-2)!important;background:var(--ivory)!important;box-shadow:none!important}
.placeholderCard .featuredReviewRating svg,.placeholderStars{color:var(--line-2)!important;fill:none!important;stroke:var(--line-2)!important}

/* instagram */
.igProfile{border-radius:999px!important;padding:1rem 1.4rem 1rem 1rem!important}
.igProfile img{border:2px solid var(--gold)}
.igTile img{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow)}
.igTile:hover img{transform:translateY(-3px);border-color:var(--gold)}
.igVideo{background:rgba(255,255,255,.9)!important;border:1px solid var(--gold);color:var(--ink)!important}
.socialThumbs a img,.proofThumb{border:2px solid var(--paper)!important;outline:1px solid var(--gold)}

/* CTA banner + page heroes: photo with charcoal wash, gold accents */
.ctaOverlay,.listingsHeroOverlay,.contactHeroOverlay{background:linear-gradient(90deg,rgba(21,22,26,.92) 0%,rgba(21,22,26,.72) 45%,rgba(21,22,26,.35) 100%)!important}
.servicesHeroPage{background-image:linear-gradient(90deg,rgba(21,22,26,.92) 0%,rgba(21,22,26,.74) 45%,rgba(21,22,26,.35) 100%),url("assets/images/backgrounds/widepalmdaleshot.webp")!important}
.ctaContent h2{font-size:clamp(3.4rem,4.6vw,5.6rem)!important;line-height:1.05!important;color:#fff!important}
.ctaContent p{color:rgba(255,255,255,.82)!important}
.buyHeroImage img,.sellHeroImage img,.investHeroImage img{border-radius:var(--radius)}

/* forms */
input,textarea,select,.modalForm input,.modalForm textarea,.formGroup input,.formGroup textarea,.contactForm input,.contactForm textarea{background:#fff!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;font-family:var(--sans)!important;border-radius:12px!important;padding:1.4rem 1.6rem!important}
input::placeholder,textarea::placeholder{color:var(--dim)!important}
input:focus,textarea:focus,select:focus{border-color:var(--gold)!important;outline:none!important;box-shadow:0 0 0 3px var(--gold-soft)!important}
.calendarDates button,.timeGrid button{background:#fff!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;border-radius:10px!important}
.calendarDates button:hover,.timeGrid button:hover{border-color:var(--gold)!important}
.calendarDates .selectedDate,.timeGrid button.selectedTime,.timeGrid button.selected,.calendarDates button.selected{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;font-weight:700}
.calendarDates button:disabled{color:var(--dim)!important;opacity:.5}
.faqQuestion{background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important;color:var(--ink)!important}
.faqItem.active .faqQuestion,.faqQuestion:hover{border-color:var(--gold)!important}
.modalBox,.listingModalBox{border-radius:var(--radius)!important;border:1px solid var(--line)!important}
.modalClose,.listingModalClose,.galleryPrev,.galleryNext,.galleryCount,.shareLinks a,.shareLinks button{background:#fff!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;border-radius:50%!important}
.modalClose:hover,.listingModalClose:hover,.galleryPrev:hover,.galleryNext:hover,.shareLinks a:hover,.shareLinks button:hover{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}
.modalFormMessage.success,.formMessage.success,.appointmentMessage.success{color:#2f7a4a!important}
.modalFormMessage.error,.formMessage.error,.appointmentMessage.error{color:#c0392b!important}

/* sticky cta */
.stickyContactCta{border-radius:999px!important;box-shadow:0 16px 40px rgba(21,22,26,.22)!important}

/* footer: charcoal with gold headings (the deliberate departure from Armijo's cream footer) */
footer{background:var(--ink)!important;color:rgba(255,255,255,.72)!important}
.footerContent{border-top:0!important}
.footerBrand h2{color:#fff!important;font-size:2.8rem!important}
.footerBrand span,.footerBrand p{color:rgba(255,255,255,.65)!important}
.footerBrand span{font-family:var(--sans)!important;font-size:1rem!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)!important}
.footerLinks h3,.footerResources h3,.footerContact h3{font-family:var(--sans)!important;font-size:1.1rem!important;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)!important;font-weight:700}
.footerLinks a,.footerResources a,.footerContact a,.footerContact p{color:rgba(255,255,255,.72)!important;font-size:1.4rem!important}
.footerLinks a:hover,.footerResources a:hover,.footerContact a:hover,.footerBottom a:hover{color:var(--gold-2)!important}
.footerBottom{border-top:1px solid rgba(255,255,255,.12)!important;color:rgba(255,255,255,.5)!important}
.footerBottom a{color:rgba(255,255,255,.6)!important}

/* legal */
.legalPage a{color:var(--gold)!important}

/* ===== Mobile hero: compact, CTA-first ===== */
@media (max-width:900px){
  .home{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:1.2rem!important;min-height:0!important;padding:2rem 5% 2.4rem!important}
  .home{padding-top:calc(var(--header-offset, 12rem) - 2.4rem)!important}
  .homeContent{order:2!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;text-align:left!important;gap:1.2rem!important;width:100%!important;max-width:none!important;margin:0!important}
  .home > .heroAgentCta{order:0!important;margin:0!important}
  .socialCard{order:1!important;width:100%!important;max-width:none!important;margin:0!important;display:flex!important;flex-direction:column!important;gap:1rem!important;padding:1.2rem!important;text-align:center!important;border-radius:22px}
  .socialCard .homeImg{width:100%!important;height:min(62vh,520px)!important;margin:0!important}
  .socialCard .followTag{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}
  .socialCard .socialIcons{justify-content:center!important;gap:.8rem!important}
  .socialCard .socialIcons a{width:38px!important;height:38px!important;font-size:1.4rem!important;margin:.6rem .3rem!important}
  .socialCard .callOut{font-size:1.8rem!important;line-height:1.15!important;margin:0!important}
  .socialCard .socialText{display:none!important}
  .socialCard .socialEyebrow{font-size:1rem!important;margin:0 0 .3rem!important}
  .homeReel .reelChip{left:10px!important;bottom:10px!important;padding:.6rem .9rem!important;font-size:.95rem!important}
  .homeReel .reelMuted{top:10px!important;right:10px!important;width:26px!important;height:26px!important}
  .homeContent h1{font-size:3.4rem!important;line-height:1.05!important;margin:0!important}
  .homeContent h3{font-size:1.5rem!important;line-height:1.45!important;margin:0!important}
  .heroAgentCta{order:-1!important;margin:0!important;width:100%!important;flex-wrap:nowrap!important;gap:1rem!important;padding:.9rem 1rem!important;border-radius:999px}
  .heroAgentCta img{width:44px!important;height:44px!important}
  .heroAgentCta .heroAgentName{font-size:1.5rem!important}
  .heroAgentCta .heroAgentRole{font-size:.85rem!important;letter-spacing:.1em!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .heroAgentCta .heroAgentText{flex:1 1 auto;min-width:0}
  .heroAgentCta .heroAgentBtn{width:auto!important;margin:0!important;padding:1rem 1.1rem!important;font-size:1.1rem!important}
  .homeBtns{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.8rem!important;margin:0!important;width:100%!important}
  .homeBtns a{width:100%!important;text-align:center!important;padding:1.3rem .6rem!important;font-size:1.2rem!important;white-space:nowrap}
  .clientProof{margin:0!important;width:100%!important;padding:.7rem .9rem!important;justify-content:flex-start!important}
  .clientFaces img{width:40px!important;height:40px!important}
  .clientProof p{font-size:1.2rem!important;line-height:1.3!important}
  .cityStrip{padding:1rem 0!important}
}
@media (max-width:430px){
  .homeContent h1{font-size:3rem!important}
  .heroAgentCta .heroAgentRole{display:none!important}
  .home{padding-top:9.5rem!important}
}

/* about page has no hero: clear the fixed header */
.aboutStory{padding-top:calc(var(--header-offset,12rem) + 3rem)!important;padding-bottom:7rem!important}
.aboutStory h2{font-size:clamp(3rem,3.8vw,4.6rem)!important}

/* charcoal "still thinking?" cards (contact + listings pages) */
.contactBottomCta,.listingsContactCta{background:var(--ink)!important;border:1px solid var(--ink)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-hover)!important;color:#fff!important}
.contactBottomText h3,.listingsContactCta .contactBottomText h3{color:#fff!important}
.contactBottomText p{color:rgba(255,255,255,.72)!important}
.contactBottomCta .contactBottomIcon,.listingsContactCta .contactBottomIcon{background:rgba(186,151,49,.18)!important;border-color:rgba(186,151,49,.5)!important}
.contactBottomCta .contactBottomBtn,.listingsContactCta .contactBottomBtn{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--ink)!important}
.contactBottomCta .contactBottomBtn:hover,.listingsContactCta .contactBottomBtn:hover{background:#fff!important;border-color:#fff!important}
/* page heroes: always cover */
.contactHero,.listingsHeroPage,.servicesHeroPage,.buyHero,.sellHero,.investHero{background-size:cover!important}

/* outline buttons sitting on dark photo heroes: white */
.servicesHeroPage .secondary-btn,.servicesHeroContent .secondary-btn,.ctaBanner .secondary-btn,.contactHero .secondary-btn,.listingsHeroPage .secondary-btn,.buyHero .secondary-btn,.sellHero .secondary-btn,.investHero .secondary-btn,.ctaContent .secondary-btn{color:#fff!important;border-color:rgba(255,255,255,.85)!important}
.servicesHeroPage .secondary-btn:hover,.ctaBanner .secondary-btn:hover,.contactHero .secondary-btn:hover,.listingsHeroPage .secondary-btn:hover,.buyHero .secondary-btn:hover,.sellHero .secondary-btn:hover,.investHero .secondary-btn:hover{background:#fff!important;color:var(--ink)!important;border-color:#fff!important}

/* ===== Instagram section polish ===== */
.instagramFeed{padding:7rem 8%!important}
.igHeader{align-items:center}
.igProfile{gap:1.2rem;box-shadow:var(--shadow)}
.igProfile img{width:5.2rem;height:5.2rem}
.igHandle{font-size:1.5rem}
.igHandle small{margin-top:.2rem}
.igFollow{background:var(--ink)!important;color:#fff!important;border-radius:999px;font-weight:600;transition:background .2s,color .2s}
.igProfile:hover .igFollow{background:var(--gold)!important;color:var(--ink)!important}
.igGrid{gap:2rem}
.igThumb{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);background:var(--ivory)}
.igThumb img{width:100%;height:100%;object-fit:cover;border-radius:0!important;border:0!important;box-shadow:none!important;transition:transform .4s ease}
.igTile:hover .igThumb img{transform:scale(1.04)}
.igThumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(21,22,26,.35));opacity:0;transition:opacity .3s}
.igTile:hover .igThumb::after{opacity:1}
.igVideo{position:absolute;top:1rem;right:1rem;width:2.8rem;height:2.8rem;border-radius:50%;background:rgba(255,255,255,.92)!important;border:1px solid var(--gold);color:var(--ink)!important;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(21,22,26,.18)}
.igVideo svg{margin-left:1px}
.igCaption{font-size:1.35rem;line-height:1.45;color:var(--ink-2)!important;margin-top:.2rem}
.igTile:hover .igCaption{color:var(--ink)!important}
/* hero social thumbs row + follow link */
.socialThumbs{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.2rem}
.socialThumbs a:not(.socialFollow){width:4.8rem!important;height:4.8rem!important;margin:1rem .2rem!important}
.socialThumbs .socialFollow{width:auto!important;height:auto!important;border:0!important;background:transparent!important;padding:.4rem 0!important;margin:.4rem 0 0!important;font-size:1.3rem!important;font-weight:600;color:var(--ink)!important;border-radius:0!important;flex-basis:100%;justify-content:center}
.socialThumbs .socialFollow:hover{color:var(--gold)!important}
/* anchors land below the fixed header; handle meta in sans */
section[id],footer[id]{scroll-margin-top:calc(var(--header-offset,12rem) - 4rem)}
.igHandle small{font-family:var(--sans)!important;font-style:normal!important;color:var(--mute)!important;letter-spacing:0}
/* hero reel: native video */
.homeImg.homeReel>video{position:absolute;inset:4px;width:calc(100% - 8px);height:calc(100% - 8px);border-radius:22px;object-fit:cover;background:#15161A}
.homeImg.homeReel{background:linear-gradient(135deg,var(--gold),var(--gold-2),var(--gold))!important}
.homeImg.homeReel::before{content:"";position:absolute;inset:4px;border-radius:22px;background:#15161A}
/* home "Meet Cahlil" — portrait headshot card */
.aboutPreview{align-items:center!important}
.aboutPreview .aboutImg{width:400px!important;flex-shrink:0}
.aboutPreview .aboutImg img{height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:var(--radius)!important}
@media (max-width:900px){.aboutPreview .aboutImg{width:100%!important;max-width:360px;margin:0 auto}}
/* hero agent card: tighter, face avatar */
.heroAgentCta{padding:.9rem 1rem .9rem .9rem!important;gap:1.3rem!important;margin:2.2rem 0 1.2rem!important}
.heroAgentCta img{width:60px!important;height:60px!important;object-position:center!important;border:2px solid var(--gold)!important}
.heroAgentCta .heroAgentText{gap:.25rem!important;line-height:1!important}
.heroAgentCta .heroAgentName{font-size:1.9rem!important;line-height:1.05!important}
.heroAgentCta .heroAgentRole{font-size:1.05rem!important;line-height:1.2!important;letter-spacing:.12em!important}
.heroAgentCta .heroAgentBtn{margin-left:.8rem!important;padding:1.1rem 1.5rem!important;font-size:1.3rem!important}
.heroAgentCta .heroAgentName,.heroAgentCta .heroAgentRole{margin:0!important;padding:0!important}
/* ===== Mobile: listings + reviews as a 2-up grid ===== */
@media (max-width:900px){
  .listingGrid,.testimonialGrid,.listingsPageGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.2rem!important;column-gap:1.2rem!important;row-gap:1.2rem!important;max-width:none!important;margin:0!important}
  .listingCard,.testimonialCard,.placeholderCard{min-width:0}
  /* listing cards */
  .listInfo{padding:1.1rem!important}
  .listInfo h3{font-size:1.7rem!important}
  .location .bigP{font-size:1.2rem!important}
  .location .lilP,.listingDetails span{font-size:1.05rem!important}
  .listingDetails{gap:.6rem!important;flex-wrap:wrap}
  .tag,.pendingTag,.closedTag{font-size:.9rem!important;padding:.45rem .8rem!important}
  /* placeholders */
  .placeholderCard{min-height:auto!important;padding:1.6rem 1rem!important;gap:.6rem!important}
  .placeholderListing{padding:0!important}
  .placeholderListing .listInfo{padding:1.2rem .8rem!important;gap:.4rem!important}
  .placeholderImg{aspect-ratio:4/3!important}
  .placeholderImg svg{width:34px;height:34px}
  .placeholderTitle{font-size:1.5rem!important;line-height:1.15}
  .placeholderNote{font-size:1.1rem!important;line-height:1.35;max-width:none}
  .placeholderStars{gap:.25rem!important}
  .placeholderStars svg,.placeholderCard .featuredReviewRating svg{width:14px!important;height:14px!important}
  /* review cards */
  .testimonialCard{padding:1.4rem 1.2rem!important;gap:.7rem!important}
  .testimonialCard p,.featuredReviewQuote{font-size:1.35rem!important;line-height:1.4!important}
  .reviewText h3{font-size:1.3rem!important}
  .reviewText span{font-size:1rem!important}
  .reviewFaces img,.reviewerInfo img{width:36px!important;height:36px!important}
}
@media (max-width:360px){
  .listInfo h3{font-size:1.5rem!important}
  .placeholderTitle{font-size:1.35rem!important}
}
/* (removed 2026-09-25) mobile used to hide an odd trailing card; every listing now shows */
/* ===== Mobile: service lanes as a 2-up grid (third lane spans full width) ===== */
@media (max-width:900px){
  .serviceGrid,div:has(> .serviceCard > .serviceBtn){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.2rem!important}
  .serviceCard{min-width:0}
  .serviceCard:nth-child(3):last-child{grid-column:1 / -1}
  .serviceBtn{flex-direction:column!important;gap:1rem!important;padding:1.4rem 1.2rem!important;height:100%!important}
  .serviceCard:nth-child(3):last-child .serviceBtn{flex-direction:row!important;align-items:center!important;gap:1.4rem!important}
  .serviceIcon{width:44px!important;height:44px!important}
  .serviceIcon svg{width:20px;height:20px}
  .serviceInfo h3{font-size:1.6rem!important;line-height:1.15!important;margin-bottom:.4rem!important}
  .serviceInfo p{font-size:1.2rem!important;line-height:1.4!important;margin-bottom:.6rem!important}
  .serviceInfo .learnMore,.serviceInfo a{font-size:1.15rem!important}
}
/* ===== Spacing pass: consistent section rhythm ===== */
/* desktop rhythm: 7.7rem vertical, 8% sides */
.featuredListings,.instagramFeed,.aboutPreview,.servicesList,.reviewSection{padding:7.7rem 8%!important}
.listingsPageSection{padding:6.4rem 8% 7.7rem!important}
/* about-page clearance only when the story section is the first thing on the page */
.aboutStory{padding-top:6.7rem!important}
.aboutStory:first-of-type{padding-top:calc(var(--header-offset,12rem) + 3rem)!important}
/* blog article + legal pages clear the fixed header */
.articleMain{padding-top:calc(var(--header-offset,12rem) + 2rem)!important}
.legalPage{padding-top:calc(var(--header-offset,12rem) + 2rem)!important}
@media (max-width:900px){
  :root{--header-offset:7.4rem}
  .featuredListings,.instagramFeed,.aboutPreview,.servicesList,.reviewSection,.servicesPageCards,.serviceTrustSection,.listingsPageSection,.contactMain,.contactReach,.whyWork,.areasServed,.reviewStats,.featuredReviewsSection,.buyProcess,.sellProcess,.investStrategy,.sellWhy,.buyPageCta,.sellCta,.investCta{padding:4.8rem 6%!important}
  .aboutStory{padding:4.8rem 6%!important}
  .aboutStory:first-of-type{padding-top:calc(var(--header-offset) + 2.4rem)!important}
  .articleMain{padding:calc(var(--header-offset) + 2.4rem) 5% 4.8rem!important}
  .legalPage{padding:calc(var(--header-offset) + 2.4rem) 6% 4.8rem!important}
  .aboutPreview .aboutImg{max-width:300px}
  .igHeader{margin-bottom:2rem}
}
/* ===== contrast + layout fixes found in spacing pass ===== */
.firstBuyerPanel,.firstBuyerPanel h2,.firstBuyerPanel h3,.firstBuyerPanel p,.firstBuyerPanel li,.firstBuyerPanel span{color:var(--ink)!important}
.firstBuyerPanel p,.firstBuyerPanel li{color:var(--ink-2)!important}
.firstBuyerPanel li i,.firstBuyerPanel li svg{color:var(--gold)!important}
.sellCtaText h2,.sellCtaText h3,.investCtaText h2,.investCtaText h3,.buyPageCta h2,.buyPageCta h3{color:var(--ink)!important}
.sellCtaText p,.investCtaText p,.buyPageCta p{color:var(--mute)!important}
.buyPageCta,.sellCta,.investCta{margin:0 8% 7rem!important;width:auto!important;max-width:none!important}
/* buttons on dark heroes: white pill */
.sellHero .sellHeroBtn,.investHero .investHeroBtn{background:#fff!important;border-color:#fff!important;color:var(--ink)!important}
.sellHero .sellHeroBtn:hover,.investHero .investHeroBtn:hover{background:var(--gold)!important;border-color:var(--gold)!important}
@media (max-width:900px){
  .listingsHeroPage,.contactHero,.servicesHeroPage,.aboutHero,.reviewsHero,.buyHero,.sellHero,.investHero{min-height:min(58vh,460px)!important}
  .buyPageCta,.sellCta,.investCta{margin:0 5% 4.8rem!important}
}
/* page heroes grow with their content instead of clipping */
.buyHero,.sellHero,.investHero,.servicesHeroPage,.listingsHeroPage,.contactHero,.aboutHero{height:auto!important;max-height:none!important;overflow:visible!important}
.investHero,.sellHero,.buyHero{padding-bottom:7.7rem!important}
@media (max-width:900px){ .buyHero,.sellHero,.investHero{padding-top:calc(var(--header-offset) + 2.4rem)!important} }
/* ===== Antelope Valley photography ===== */
.ctaBanner:not(.aboutCta){background-image:url("assets/images/backgrounds/av-cta.webp")!important;background-position:center 60%!important}
.aboutCta{background-image:url("assets/images/backgrounds/aboutCTA.webp")!important;background-position:center 55%!important}
.listingsHeroPage{background-image:url("assets/images/backgrounds/palmdale.webp")!important;background-position:center 40%!important}
.contactHero{background-position:center 45%!important}
.servicesHeroPage{background-position:center 55%!important}
.areaCard img{object-position:center 60%}
/* blog card meta line: plain text, not a bar */
.postMeta,.featuredPostMeta,.postPreview .postMeta{background:transparent!important;color:var(--mute)!important;padding:0!important;border:0!important}
.postMeta span,.featuredPostMeta span{color:var(--mute)!important;background:transparent!important}
#photo-credits{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--line)}
#photo-credits li{margin-bottom:.6rem}
#photo-credits{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;max-width:none!important}
/* ===== hero social card: thumbs + follow tag ===== */
.socialCard .followTag{margin-top:2rem}
.socialCard .socialText{margin-bottom:0}
.socialThumbs{display:flex!important;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.4rem!important;margin-top:2rem!important;padding:0!important}
.socialThumbs a:not(.socialFollow){width:58px!important;height:58px!important;margin:0!important;padding:3px!important;border:2px solid var(--gold)!important;background:#fff!important;border-radius:50%!important;box-shadow:0 6px 14px rgba(21,22,26,.10)!important;overflow:hidden;transition:transform .2s,box-shadow .2s}
.socialThumbs a:not(.socialFollow):hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(21,22,26,.16)!important}
.socialThumbs a:not(.socialFollow) img{width:100%!important;height:100%!important;object-fit:cover;border:0!important;outline:0!important;border-radius:50%!important;display:block}
.socialThumbs .socialFollow{flex-basis:100%;width:auto!important;height:auto!important;display:inline-flex!important;justify-content:center;align-items:center;gap:.7rem;margin:1.6rem auto 0!important;padding:1rem 1.8rem!important;border:1.5px solid var(--ink)!important;border-radius:999px!important;background:transparent!important;color:var(--ink)!important;font-size:1.3rem!important;font-weight:600;letter-spacing:.01em;max-width:max-content;transition:background .2s,color .2s,border-color .2s}
.socialThumbs .socialFollow:hover{background:var(--ink)!important;color:#fff!important}
.socialThumbs .socialFollow svg{flex:none}
@media (max-width:900px){
  .socialThumbs{gap:1rem!important;margin-top:1.2rem!important}
  .socialThumbs a:not(.socialFollow){width:50px!important;height:50px!important}
  .socialThumbs .socialFollow{margin-top:1.1rem!important;padding:.9rem 1.5rem!important;font-size:1.2rem!important}
}
/* ===== Type pass: lift the smallest text ===== */
@media (max-width:430px){ html{font-size:60%!important} }
.serviceInfo p,.buyProcessStep p,.sellProcessStep p,.investStrategyCard p,.featuredPostCard p,.postPreview p,.sidebarCard p,.articleSidebarCard p,.whyCard p,.reviewStat p,.trustItem p,.faqAnswer p,.tourBox p,.questionBox p,.questionBox a,.scheduleTourCard p,.blogHero p,.socialText,.clientProof p,.footerBrand p,.modalDisclaimer,.secureNote,.formMessage,.modalFormMessage,.directCallText,.buyHeroContent p,.sellHeroContent p,.investHeroContent p,.whyWorkCard p,.whyWorkItem p,.contactBottomText p,.reachItem p,.consultationPanel>p,.messagePanel>p,.igCaption,.placeholderNote,.listInfo p,.location .lilP,.listingDetails span,.testimonialCard p,.featuredReviewQuote{font-size:1.5rem!important;line-height:1.55!important}
.testimonialCard p,.featuredReviewQuote{font-size:1.7rem!important;line-height:1.45!important}
.buyProcessStep h3,.sellProcessStep h3,.investStrategyCard h3,.areaCard h3{font-size:1.7rem!important;line-height:1.2!important}
.footerLinks a,.footerResources a,.footerContact a,.footerContact p,.areaList li,.topicList a,.sidebarCard a{font-size:1.5rem!important}
.footerLinks h3,.footerResources h3,.footerContact h3{font-size:1.2rem!important}
.footerBrand span{font-size:1.1rem!important}
.footerBottom p,.footerBottom a{font-size:1.35rem!important}
.postMeta span,.postMeta time,.articleMeta span,.articleMeta time,.legalUpdated,.igHandle small,.reviewText span,.articleCategory{font-size:1.3rem!important}
.heroAgentRole{font-size:1.15rem!important}
.heroAgentCta .heroAgentBtn,.socialThumbs .socialFollow,.igFollow{font-size:1.4rem!important}
.reelChip{font-size:1.2rem!important}
.learnMore,.listingsBtn,.postReadMore,.serviceInfo .learnMore{font-size:1.4rem!important}
.timeGrid button,.calendarDates button{font-size:1.4rem!important}
.calendarGrid span,.calendarDays span{font-size:1.2rem!important}
.placeholderTitle{font-size:1.9rem!important}
.selectedPropertyLabel,.clientFeedbackBox span,.faqBox>span,.reviewsSectionLabel,.servicesSectionLabel{font-size:1.25rem!important}
@media (max-width:900px){
  .homeBtns a{font-size:1.3rem!important;padding:1.4rem .6rem!important}
  .serviceInfo p{font-size:1.4rem!important;line-height:1.5!important}
  .serviceInfo h3{font-size:1.7rem!important}
  .listInfo h3{font-size:1.8rem!important}
  .location .lilP,.listingDetails span{font-size:1.25rem!important}
  .placeholderNote{font-size:1.3rem!important;line-height:1.4!important}
  .placeholderTitle{font-size:1.6rem!important}
  .testimonialCard p,.featuredReviewQuote{font-size:1.45rem!important}
  .reviewText h3{font-size:1.4rem!important}
  .reviewText span{font-size:1.15rem!important}
  .igCaption{font-size:1.4rem!important}
  .heroAgentCta .heroAgentBtn{font-size:1.2rem!important}
  .heroAgentCta .heroAgentName{font-size:1.6rem!important}
  .clientProof p{font-size:1.3rem!important}
  .socialCard .callOut{font-size:1.9rem!important}
  .socialThumbs .socialFollow{font-size:1.3rem!important}
  .homeContent h3{font-size:1.6rem!important}
  .footerLinks a,.footerResources a,.footerContact a,.footerContact p{font-size:1.5rem!important}
}

/* script.js sets the "Keep Reading" toggle's [hidden] attribute for short
   listing descriptions, but styles.css's unconditional
   .descriptionToggleBtn{display:inline-flex} outranks the UA [hidden] rule
   (a class selector beats an attribute selector regardless of source
   order), so the button showed even with nothing to expand. */
.descriptionToggleBtn[hidden]{display:none!important}

/* partner spotlight card (reviews + home) */
.partnerCard{position:relative;align-items:flex-start!important;text-align:left}
.partnerLabel{display:inline-block;padding:.5rem 1.1rem;border-radius:999px;background:var(--gold-soft);border:1px solid rgba(186,151,49,.35);color:var(--gold);font-family:"DM Sans",Arial,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.partnerMeta{display:flex;flex-direction:column;gap:.3rem;margin-top:auto}
.partnerMeta strong{font-family:var(--serif);font-size:1.6rem;color:var(--ink)}
.partnerMeta span{font-size:1.25rem!important;color:var(--mute)}
.partnerMeta a{font-size:1.25rem;color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(186,151,49,.5)}
.partnerMeta a:hover{color:var(--ink);border-color:var(--ink)}
@media (max-width:900px){.partnerLabel{font-size:.95rem}.partnerMeta strong{font-size:1.4rem}.partnerMeta span,.partnerMeta a{font-size:1.1rem!important}}

/* launch polish */
img[src=""]{display:none!important}

/* testimonial grid: only real cards, no empty slots; centers 1 or 2 cards */
.testimonialGrid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(260px,460px))!important;justify-content:center!important;gap:2rem!important}
.testimonialGrid>*{display:flex!important}
@media (max-width:900px){.testimonialGrid{gap:1.2rem!important}}

/* sold listings: no tour / ask-about CTA, offer the next one instead */
.listingModal.isSold .tourBox:not(.soldBox){display:none!important}
.listingModal:not(.isSold) .soldBox{display:none!important}
.listingModalStats>[hidden]{display:none!important}

/* hero reel sound toggle */
button.reelMuted{cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;font:inherit;-webkit-appearance:none;appearance:none}
.reelMuted .icoOn{display:none}.reelMuted.unmuted .icoOn{display:block}.reelMuted.unmuted .icoOff{display:none}
.reelMuted:hover,.reelMuted.unmuted{background:var(--ink)!important;color:#fff!important}
@media (max-width:900px){.homeReel .reelMuted{width:34px!important;height:34px!important}}

/* sound toggle must receive taps (the old badge passed clicks through to the video) */
button.reelMuted{pointer-events:auto!important}

/* listing cards: one-line address and city everywhere so long addresses do not
   push the price/details down and break alignment with neighbouring cards */
.listingCard .location .bigP,.listingCard .location .lilP{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important;display:block!important}
@media (max-width:900px){
  .listingCard .location .bigP{font-size:1.1rem!important;letter-spacing:0!important}
  .listingCard .location .lilP{font-size:1rem!important}
}
/* phones: one detail per line on every card so short values (2 Beds / 1 Baths)
   do not pair up and break the stacked rhythm of the neighbouring cards */
@media (max-width:900px){.listingCard .listingDetails span{flex:0 0 100%!important;width:100%!important}}
/* template hid the 3rd listing wrapper on phones; show every listing */
@media (max-width:900px){.listingInfo:nth-child(3){display:block!important}}

/* hero reel on phones: fixed 9:16 box driven by width, never by viewport height
   (the browser bar collapsing used to change the frame and re-crop the video) */
@media (max-width:900px){
  .socialCard .homeImg.homeReel{width:min(100%,300px)!important;max-width:100%!important;height:auto!important;aspect-ratio:9/16!important;margin:0 auto!important}
}

/* fullscreen photo viewer */
.listingModalImage{cursor:zoom-in}
.lbOpen{position:absolute;right:1.2rem;top:1.2rem;z-index:3;display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(15,20,25,.72);color:#fff;font:600 1.15rem "DM Sans",Arial,sans-serif;cursor:pointer;-webkit-appearance:none;appearance:none}
.lbOpen:hover{background:var(--ink)}
.photoLightbox{position:fixed;inset:0;z-index:2147483000;background:#0b0c0e;display:flex;align-items:center;justify-content:center}
.photoLightbox[hidden]{display:none!important}
.photoLightbox .lbImg{max-width:100vw;max-height:100vh;width:auto;height:auto;object-fit:contain;display:block;user-select:none;-webkit-user-drag:none}
.photoLightbox .lbBtn{position:absolute;z-index:2;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-appearance:none;appearance:none;backdrop-filter:blur(6px)}
.photoLightbox .lbBtn:hover{background:rgba(255,255,255,.28)}
.photoLightbox .lbClose{top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));font-size:34px}
.photoLightbox .lbPrev{left:max(12px,env(safe-area-inset-left));top:50%;transform:translateY(-50%)}
.photoLightbox .lbNext{right:max(12px,env(safe-area-inset-right));top:50%;transform:translateY(-50%)}
.photoLightbox .lbCount{position:absolute;left:50%;bottom:max(16px,env(safe-area-inset-bottom));transform:translateX(-50%);color:#fff;font:600 1.3rem "DM Sans",Arial,sans-serif;letter-spacing:.08em;background:rgba(0,0,0,.45);padding:.5rem 1rem;border-radius:999px}
body.lbOpenBody{overflow:hidden}
@media (max-width:900px){.photoLightbox .lbBtn{width:40px;height:40px;font-size:26px}.lbOpen span{display:none}.lbOpen{padding:.6rem}}

/* single-review feedback box: no pager dot for one item */
.feedbackDots:has(> :only-child){display:none!important}
