/* KFRE approved Home page - shared site styling remains in styles.css. */
:root{--c-midnight:#041425;--c-deep:#0c2236;--c-ink:#163149;--c-gold:#d58e34;--c-ivory:#f5f1e8;--c-warm:#eae4d8;}
.home-home{background:var(--c-ivory);color:#253849;}
.home-home img{max-width:100%;}
.home-home .brandnav{background:#0b2038;}
.home-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--c-midnight);color:#fff;}
.home-hero .home-hands{height:100%;width:auto;max-width:none;position:absolute;top:0;right:0;z-index:-2;object-fit:contain;object-position:right center;pointer-events:none;mask-image:linear-gradient(90deg,transparent 0%,#000 49%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 49%);}
.home-hero:before{content:"";inset:0;position:absolute;z-index:-1;background:linear-gradient(90deg,#041425 0%,rgba(4,20,37,.96) 23%,rgba(4,20,37,.8) 49%,rgba(4,20,37,.1) 100%);pointer-events:none;}
.home-hero-inner{position:relative;z-index:1;min-height:375px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:44px 0 40px;}
.home-hero h1{font:700 clamp(37px,4.7vw,66px)/1.07 Georgia,serif;letter-spacing:-1.3px;max-width:690px;margin:18px 0 18px;color:#fff;}
.home-hero p{font-size:17px;line-height:1.65;color:#d1dce6;max-width:580px;margin:0;}
.home-gold-bar{position:relative;background:linear-gradient(180deg,rgba(4,20,37,0),#041425 34%,#061a2c);border-bottom:1px solid rgba(218,151,65,.3);z-index:2;padding:0 0 16px;}
.home-gold-script{display:block;width:min(100%,1050px);height:auto;margin:0 auto;filter:drop-shadow(1px 2px 1px #0008) drop-shadow(1px 1px 0px #342009);}
.home-pageyebrow{font-weight:800;font-size:11px;line-height:1.6;letter-spacing:2px;color:#a86e27;text-transform:uppercase;}
.home-manifesto{background:#f4f0e9;}
.home-manifesto h2{font:700 clamp(32px,3.3vw,48px)/1.16 Georgia,serif;letter-spacing:-.8px;color:var(--c-ink);margin:10px 0 24px;}
.home-manifesto h2 span,.home-manifesto h2 em{color:#99642d;}
.home-manifesto p{font-size:16px;line-height:1.77;color:#455262;margin:0 0 13px;max-width:660px;}
.home-manifesto .declaration{font-size:20px;color:#152e46;margin:18px 0;}
.home-manifesto .declaration strong{font-family:Georgia,serif;}
.home-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px;}
.home-actions a{display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:3px;padding:12px 15px;font-weight:800;text-decoration:none;font-size:13px;border:1px solid #244763;background:#14324c;color:#fff;}
.home-actions a+a{background:transparent;border-color:#a9b4bc;color:#14324c;}
.home-actions a:hover{filter:brightness(1.15);}
.home-actions span{font-size:17px;}
.home-landmark-frame{margin:0;}
.home-landmark-frame img{display:block;width:100%;height:auto;box-shadow:0 13px 32px rgba(19,36,55,.16);border:8px solid #fff;}
.home-card-zone{background:#102940;padding:72px 0 86px;color:white;}
.home-section-heading{margin-bottom:24px;max-width:870px;}
.home-card-zone .home-pageyebrow{color:#e0a65f;display:flex;align-items:center;gap:14px;}
.home-accent-rule{display:inline-block;width:70px;height:1px;background:#b08045;}
.home-card-zone h2{font:700 clamp(32px,3.8vw,48px)/1.15 Georgia,serif;letter-spacing:-.7px;margin:10px 0 13px;color:white;}
.home-card-zone .home-section-heading p{color:#afc4d7;max-width:680px;font-size:16px;margin:0;}
.home-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;}
.home-cards .navcard{min-height:220px;border-radius:5px;box-shadow:none;border:1px solid #547087;background:#1b3852;transition:border-color .2s,transform .2s,background .2s;}
.home-cards .navcard::before{display:none;}
.home-cards .navcard::after{display:none;}
.home-cards .navcard:hover{transform:translateY(-3px);box-shadow:0 11px 18px #0002;border-color:#e5aa62;background:#224765;}
.home-cards .navcard-inner{padding:22px;display:flex;flex-direction:column;justify-content:flex-end;}
.home-cards .navcard .number{font-size:10px;letter-spacing:1.4px;color:#edba77;}
.home-cards .navcard h3{font:700 23px/1.17 Georgia,serif;color:#fff;margin:22px 0 9px;}
.home-cards .navcard p{color:#cfdeea;font-size:13px;line-height:1.47;}
.home-cards .navcard .more{color:#e8b977;font-size:12px;margin-top:20px;letter-spacing:.3px;}
.home-cards .card-neighborhoods{background:#1c405b;border-color:#9f794a;}
/* A: classic hero / split archival collage and buyer-first copy / solid dark cards. */
.home-hero-a .home-hero-inner{min-height:385px;}
.home-manifesto-a{padding:82px 0 90px;background:#f5f1e8;}
.home-split{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:6%;align-items:center;}
.home-manifesto-a .home-copy h2{font-size:clamp(32px,3vw,44px);}


@media(max-width:1080px){
  .home-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .home-split{gap:4%;}
}
@media(max-width:800px){
  .home-hero-inner{min-height:355px;}
  .home-hero .home-hands{right:-23%;opacity:.65;}
  .home-hero::before{background:linear-gradient(90deg,#041425 0%,rgba(4,20,37,.94) 45%,rgba(4,20,37,.36) 100%);}
  .home-split{grid-template-columns:1fr;gap:35px;}
  .home-manifesto-a{padding:55px 0 64px;}
  .home-landmark-frame{max-width:680px;}
}
@media(max-width:550px){
  .home-hero-inner{min-height:355px;padding:46px 0;}
  .home-hero .home-hands{right:-65%;opacity:.48;}
  .home-hero h1{font-size:clamp(33px,9vw,46px);letter-spacing:-.6px;}
  .home-hero p{font-size:15px;max-width:94%;}
  .home-gold-bar{padding:0 0 10px;}
  .home-gold-script{width:100%;}
  .home-manifesto h2{font-size:34px;}
  .home-manifesto p{font-size:15px;}
  .home-card-zone{padding:54px 0 62px;}
  .home-cards{grid-template-columns:1fr;gap:10px;}
  .home-cards .navcard{min-height:155px;}
  .home-cards .navcard-inner{padding:20px;}
  .home-cards .navcard h3{margin:15px 0 7px;}
  .home-section-heading h2{font-size:36px;}
}
@media(prefers-reduced-motion:reduce){.home-cards .navcard{transition:none;}.home-cards .navcard:hover{transform:none;}}

/* KFRE approved home layout: Version A layout, original hero, D copy, dimensional collage, unified midnight background. */
.home-page{background:#f5f1e8;}
.home-page .home-hero-a{background:#041425;}
.home-page .home-hero-a .home-hero-inner{min-height:500px;padding:65px 0 74px;}
.home-page .home-hero-a .eyebrow{font:800 12px/1.6 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:2.7px;color:#a8cde9;}
.home-page .home-hero-a h1{font:700 clamp(37px,5.3vw,70px)/1.09 Georgia,serif;letter-spacing:-1.9px;max-width:640px;margin:18px 0 16px;color:#fff;}
.home-page .home-hero-a p{color:#d9e7f4;font-size:clamp(16px,1.6vw,19px);line-height:1.55;max-width:545px;margin:0;}
.home-page .home-hero-a .cta{margin-top:26px;background:#edf3fa;color:#0e2a48;}
.home-page .home-hero-a .hero-note{font-size:12px;color:#c3d6e8;margin-top:15px;}
/* Exact placement of the gold sign lettering from Concept A. */
.home-page .home-gold-bar{background:linear-gradient(180deg,rgba(4,20,37,0),#041425 34%,#061a2c);}
/* Collage: substantial dimensional shadow and a gentle perspective; no caption underneath. */
.home-page .home-landmark-frame{margin:0;position:relative;isolation:isolate;transform:perspective(1200px) rotateY(-2.8deg) rotateX(1deg);transform-origin:center center;}
.home-page .home-landmark-frame::before{content:"";position:absolute;z-index:-1;inset:10px -7px -11px 11px;background:rgba(21,31,43,.35);filter:blur(16px);transform:translate(11px,12px);pointer-events:none;}
.home-page .home-landmark-frame img{display:block;width:100%;height:auto;border:10px solid #fff;border-radius:2px;background:#fff;box-shadow:1px 2px 2px rgba(13,24,37,.2), 0 16px 20px rgba(13,24,37,.22), 0 33px 54px rgba(13,24,37,.29), 10px 24px 65px rgba(13,24,37,.15);}
.home-page .home-manifesto-a{background:#f5f1e8;padding:86px 0 94px;}
.home-page .home-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%;align-items:center;}
.home-page .home-copy h2{font-size:clamp(32px,3.1vw,44px);line-height:1.16;}
.home-page .home-copy h2 em{color:#99642d;}
.home-page .home-copy .home-page-statement{margin-top:20px;padding-top:18px;border-top:1px solid #c3b39b;color:#1c3a52;font:italic 22px/1.44 Georgia,serif;max-width:560px;}
.home-page .home-copy .home-page-statement em{font-style:italic;}
.home-page .home-copy .home-actions{margin-top:18px;}
/* Keep the original A cards, only match the section and site footer to the hero midnight blue. */
.home-page .home-card-zone,.home-page .home-outro,.home-page .foot{background:#041425;}
.home-page .home-card-zone{border-top:1px solid #274055;}
@media(max-width:800px){
  .home-page .home-split{grid-template-columns:1fr;gap:42px;}
  .home-page .home-landmark-frame{max-width:680px;margin:0 auto;transform:perspective(1200px) rotateY(-1deg);}
  .home-page .home-hero-a .home-hero-inner{min-height:430px;padding:55px 0 61px;}
  .home-page .home-manifesto-a{padding:65px 0 75px;}
}
@media(max-width:550px){
  .home-page .home-hero-a h1{font-size:clamp(37px,9vw,49px);letter-spacing:-.9px;}
  .home-page .home-hero-a .home-hero-inner{min-height:420px;}
  .home-page .home-landmark-frame img{border-width:6px;box-shadow:0 10px 17px rgba(13,24,37,.19),0 22px 36px rgba(13,24,37,.27);}
  .home-page .home-copy .home-page-statement{font-size:21px;}
}
@media(prefers-reduced-motion:reduce){.home-page .home-landmark-frame{transform:none;}}

/* KFRE approved home refinements: Concept E layout + return of original community feature + individual card thumbnails. */
/* New public-facing brokerage positioning, without promoting commercial services. */
.home-page .brand small{color:#b8cede;letter-spacing:1.45px;font-size:10px;}
/* Matching slate-blue cards remain distinct against the midnight (#041425) field. */
.home-page .home-card-zone{background:#041425;}
.home-page .home-cards .navcard{
  min-height:256px;
  background:#17364f;
  border:1px solid #4b6580;
  border-top:3px solid #bd9461;
  border-radius:7px;
  box-shadow:0 10px 22px rgba(0,0,0,.24);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
.home-page .home-cards .navcard:hover,
.home-page .home-cards .navcard:focus-visible{
  background:#1e4260;
  border-color:#d4a46c;
  box-shadow:0 18px 32px rgba(0,0,0,.35);
  transform:translateY(-3px);
}
.home-page .home-cards .navcard:focus-visible{outline:3px solid #f1bb71;outline-offset:4px;}
.home-page .home-cards .navcard-inner{padding:18px 18px 19px;position:relative;display:flex;flex-direction:column;justify-content:flex-end;}
.home-page .home-cards .home-card-thumb{
  position:absolute;right:16px;top:15px;
  width:108px;height:79px;max-width:none;
  object-fit:cover;
  border:2px solid rgba(245,239,222,.83);
  border-radius:5px;
  box-shadow:0 5px 13px rgba(0,0,0,.43);
  filter:saturate(.88) contrast(1.03);
  transition:filter .2s ease;
}
.home-page .home-cards .navcard:hover .home-card-thumb{filter:saturate(1.07) contrast(1.04);}
.home-page .home-cards .navcard .number{
  position:relative;display:block;align-self:flex-start;
  max-width:calc(100% - 121px);
  min-height:81px;
  padding-top:2px;
  margin:0;
  font-size:10px;line-height:1.45;letter-spacing:1.1px;color:#e9b877;
}
.home-page .home-cards .navcard h3{margin:12px 0 8px;font-size:clamp(20px,1.7vw,23px);line-height:1.17;color:#fff;}
.home-page .home-cards .navcard p{color:#cfdeea;font-size:13px;line-height:1.48;margin:0;}
.home-page .home-cards .navcard .more{margin-top:17px;color:#f1c48d;font-size:12px;font-weight:700;}
/* Use the exact section and image from the original approved Home page. */
.home-page .feature{background:#102d4a;color:#fff;}
.home-page .feature .feature-photo{width:200px;height:160px;flex:0 0 200px;object-fit:cover;object-position:55% 42%;}
.home-page .feature .eyebrow{color:#a8cde9;}
.home-page .feature h2{color:#fff;}
.home-page .feature p{color:#d3e1ef;}
.home-page .feature a{background:#e9f1f8;color:#122d48;}
.home-page .feature a:hover,.home-page .feature a:focus-visible{background:#fff;color:#082034;}
.home-page .foot{background:#041425;}
@media(max-width:1080px){
  .home-page .home-cards .navcard{min-height:238px;}
}
/* Tablet portrait: give the feature and editorial text room to breathe. */
@media(max-width:980px){
  .home-page .home-split{grid-template-columns:1fr;gap:38px;}
  .home-page .home-landmark-frame{max-width:610px;margin:0 auto;}
  .home-page .home-copy{max-width:720px;margin:0 auto;}
  .home-page .featurewrap{flex-wrap:wrap;gap:22px 28px;}
  .home-page .feature-copy{flex:1 1 100%;}
  .home-page .feature .feature-photo{width:180px;height:144px;flex:0 0 180px;}
}
@media(max-width:940px){
  .home-page .feature .feature-photo{width:180px;height:144px;flex:0 0 180px;}
}
@media(max-width:620px){
  .home-page .home-cards .navcard{min-height:183px;}
  .home-page .home-cards .navcard-inner{padding:17px 18px;}
  .home-page .home-cards .home-card-thumb{width:102px;height:75px;right:14px;top:14px;}
  .home-page .home-cards .navcard .number{min-height:66px;max-width:calc(100% - 117px);}
  .home-page .home-cards .navcard h3{margin-top:5px;}
  .home-page .feature .feature-photo{width:min(100%,300px);height:auto;aspect-ratio:5/4;flex-basis:auto;}
}
@media(prefers-reduced-motion:reduce){
  .home-page .home-cards .navcard,.home-page .home-cards .home-card-thumb{transition:none;}
  .home-page .home-cards .navcard:hover{transform:none;}
}
