/* Leaf-Note architectural editorial homepage. Scoped to the public homepage. */
body:has(.leaf-home) { --leaf-navy:#0E2A4F; --leaf-gold:#D9A227; --leaf-off-white:#F7F5EF; }
body:has(.leaf-home) #nav-inner { border-radius:4px; border-color:#D1D5DB; box-shadow:none; }
.leaf-home { --home-navy:#0E2A4F; --home-earth:#8C3B24; --home-green:#0F3822; --home-blue:#245B91; --home-ivory:#F7F5EF; --home-line:#D1D5DB; background:var(--home-ivory); color:var(--home-navy); }
.home-hero { max-width:1280px; margin:auto; padding:112px 24px 0; }
.home-hero-layout { display:grid; grid-template-columns:1.618fr 1fr; gap:48px; align-items:center; }
.home-eyebrow { color:var(--home-earth); font-size:11px; font-weight:700; letter-spacing:.18em; margin-bottom:24px; }
.home-intro h1 { font-family:Outfit,sans-serif; font-size:clamp(46px,5.8vw,82px); line-height:1.02; letter-spacing:-.055em; color:var(--home-navy); font-weight:700; }
.home-intro h1 span { color:var(--home-earth); }
.home-description { color:#475569; font-size:17px; line-height:1.75; max-width:470px; margin-top:24px; }
.home-intro-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.home-intro-links a { display:inline-flex; align-items:center; gap:22px; color:var(--home-navy); font-size:13px; font-weight:700; min-height:48px; padding:13px 20px; border:1px solid var(--home-navy); transition:background .2s,color .2s; }
.home-intro-links a:first-child { background:var(--home-navy); color:var(--home-ivory); }
.home-intro-links a:hover { background:var(--home-blue); border-color:var(--home-blue); color:var(--home-ivory); }
.home-location-line { display:flex; flex-wrap:wrap; gap:10px 22px; align-items:center; border-top:1px solid var(--home-line); margin-top:32px; padding-top:16px; font-size:12px; }
.home-location-line > span { color:var(--home-earth); font-weight:700; font-size:9px; letter-spacing:.15em; }
.home-photo { position:relative; overflow:hidden; min-width:0; background:var(--home-line); }
.home-photo img { display:block; width:100%; height:540px; object-fit:cover; object-position:50% 52%; }
.home-survey-overlay { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:var(--home-ivory); stroke-width:1; opacity:.65; pointer-events:none; }
.home-photo-caption { position:absolute; inset:auto 0 0; padding:54px 26px 28px; background:linear-gradient(transparent,rgba(14,42,79,.9)); color:var(--home-ivory); display:flex; flex-direction:column; gap:5px; }
.home-photo-caption span:first-child { font-family:Outfit,sans-serif; font-size:24px; font-weight:600; }
.home-photo-caption span:last-child { font-size:10px; letter-spacing:.09em; }
.home-search-panel { background:#fff; border:1px solid var(--home-line); border-top:3px solid var(--home-navy); margin-top:36px; padding:26px; }
.home-search-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:20px; }
.home-search-heading h2 { color:var(--home-navy); font-family:Outfit,sans-serif; font-size:24px; font-weight:600; letter-spacing:-.025em; }
.home-search-heading > span { color:#526176; font-size:12px; }
.leaf-home .home-search-panel .structured-search { background:transparent; border:0; box-shadow:none; padding:0; backdrop-filter:none; }
.leaf-home .home-search-panel .structured-search-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr auto; gap:14px; align-items:end; }
.leaf-home .home-search-panel .structured-search-field { min-width:0; display:flex; flex-direction:column; gap:8px; }
.leaf-home .home-search-panel .structured-search-label { color:var(--home-navy); font-size:10px; font-weight:700; letter-spacing:.12em; }
.leaf-home .home-search-panel input,.leaf-home .home-search-panel select { width:100%; min-width:0; height:48px; border:1px solid var(--home-line); border-radius:2px; padding:0 12px; background:var(--home-ivory); color:var(--home-navy); font-size:14px; }
.leaf-home .home-search-panel .structured-search-submit { height:48px; white-space:nowrap; background:var(--home-navy); color:#fff; border-radius:2px; box-shadow:none; }
.home-popular { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; margin-top:18px; font-size:12px; color:#526176; }
.home-popular a { color:var(--home-earth); text-decoration:underline; text-underline-offset:3px; padding:5px 0; }
.home-pathways { max-width:1280px; margin:24px auto 0; padding:0 24px; display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.home-pathways a { display:flex; align-items:center; gap:16px; padding:22px 18px; border-bottom:1px solid var(--home-line); color:var(--home-navy); transition:background .2s; }
.home-pathways a + a { border-left:1px solid var(--home-line); }
.home-pathways a:hover { background:#EAF0F7; }
.home-path-icon { color:var(--home-earth); font-size:12px; font-weight:700; }
.home-pathways strong { display:block; font-size:14px; }
.home-pathways small { display:block; color:#526176; font-size:12px; margin-top:5px; }
.home-pathways a > span:last-child { margin-left:auto; }
.leaf-home :is(a,button,input,select):focus-visible { outline:3px solid var(--home-earth); outline-offset:4px; }
.leaf-home .text-leaf { color:var(--home-navy); }
.leaf-home .text-leaf-accent,.leaf-home .section-eyebrow-dark { color:var(--home-earth); }
.leaf-home .bg-leaf { background-color:var(--home-navy); }
.leaf-home .font-display { letter-spacing:-.025em; }
.leaf-home h2.font-display { font-weight:600; }
.leaf-home .card-property { border:1px solid var(--home-line); border-radius:4px; box-shadow:none; }
.leaf-home .card-property:hover { box-shadow:0 8px 24px #0e2a4f10; }
.leaf-home .card-image { border-radius:3px 3px 0 0; }
.leaf-home .price-pill { background:var(--home-navy); color:#fff; border-radius:2px; }
.leaf-home .badge-hot { background:var(--home-earth); color:#fff; }
.leaf-home .btn-primary { background:var(--home-navy); border-radius:3px; box-shadow:none; }
.leaf-home .btn-primary:hover { background:var(--home-blue); }
.leaf-home .btn-secondary { color:var(--home-navy); border-color:var(--home-navy); border-radius:3px; }
.leaf-home .rounded-2xl,.leaf-home .rounded-3xl,.leaf-home .rounded-\[2rem\] { border-radius:4px; }
.leaf-home a[style*='border-left-color'] { border-left-color:var(--home-earth)!important; }
.home-field-notes { max-width:1232px; margin:80px auto 0; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--home-line); border-bottom:1px solid var(--home-line); }
.home-field-copy { padding:48px 40px 48px 0; }
.home-field-copy h2 { font:700 clamp(34px,3.5vw,48px)/1.08 Outfit,sans-serif; letter-spacing:-.045em; }
.home-field-copy h2 span { color:var(--home-earth); }
.home-field-copy > p:not(.home-eyebrow) { max-width:450px; margin-top:20px; color:#475569; font-size:15px; line-height:1.75; }
.home-field-checks { list-style:none; margin:24px 0; padding:0; }
.home-field-checks li { display:flex; align-items:baseline; gap:18px; padding:15px 0; border-top:1px solid var(--home-line); }
.home-field-checks li > span { font-size:11px; color:var(--home-earth); font-weight:700; }
.home-field-checks h3 { font-size:16px; font-weight:700; }
.home-field-checks p { font-size:13px; line-height:1.65; color:#475569; margin-top:4px; }
.home-field-link { display:inline-flex; align-items:center; gap:20px; min-height:44px; color:var(--home-earth); font-weight:700; font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.home-field-diagram { background:#EAF0F7; border-left:1px solid var(--home-line); display:flex; flex-direction:column; justify-content:center; padding:28px; }
.home-field-diagram svg { width:100%; height:auto; }
.home-field-diagram figcaption { border-top:1px solid #BBC8D8; margin-top:16px; padding-top:16px; display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; color:var(--home-navy); font-size:8px; font-weight:700; letter-spacing:.1em; }
.leaf-home .home-final-cta { background:var(--home-navy); background-image:none; border-radius:4px; }
.leaf-home .home-final-cta .text-slate-600 { color:#DCE5F0; }
.leaf-home .home-final-cta .text-emerald-400 { color:#DCE5F0; }
.leaf-home .home-final-cta .btn-primary { background:var(--home-ivory); color:var(--home-navy); }
.leaf-home .home-final-cta .btn-ghost { border:1px solid #9DAFC6; border-radius:3px; color:var(--home-ivory); }
@media (max-width:1000px) {
 .home-hero-layout { gap:28px; grid-template-columns:1.3fr 1fr; }
 .home-intro h1 { font-size:clamp(46px,6vw,66px); }
 .home-photo img { height:520px; }
 .leaf-home .home-search-panel .structured-search-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .leaf-home .home-search-panel .structured-search-submit { grid-column:1/-1; }
 .home-pathways a { padding:18px 12px; gap:10px; }
 .home-field-notes { margin-left:24px; margin-right:24px; }
 .home-field-copy { padding-right:24px; }
 .home-field-diagram { padding:16px; }
}
@media (max-width:760px) {
 .home-hero { padding:88px 16px 0; }
 .home-hero-layout { grid-template-columns:1fr; gap:28px; }
 .home-intro h1 { font-size:clamp(44px,9vw,66px); }
 .home-description { font-size:16px; margin-top:20px; }
 .home-location-line { margin-top:24px; }
 .home-photo img { height:360px; object-position:50% 62%; }
 .home-search-panel { padding:20px 16px; margin-top:24px; }
 .home-search-heading { align-items:start; flex-direction:column; gap:6px; }
 .home-search-heading h2 { font-size:23px; }
 .home-pathways { grid-template-columns:1fr; padding:0 16px; }
 .home-pathways a { padding:20px 0; }
 .home-pathways a + a { border-left:0; }
 .home-field-notes { grid-template-columns:1fr; margin:56px 16px 0; }
 .home-field-copy { padding:32px 0; }
 .home-field-diagram { padding:20px; border-left:0; border-top:1px solid var(--home-line); }
}
@media (max-width:380px) {
 .leaf-home .home-search-panel .structured-search-grid { grid-template-columns:minmax(0,1fr); }
 .home-intro-links { flex-direction:column; align-items:stretch; }
 .home-intro-links a { justify-content:space-between; }
 .home-photo img { height:300px; }
}

/* Keep the cadastral illustration aligned with the established blue identity. */
.home-field-diagram svg [stroke="#0F3822"]{stroke:#0E2A4F}
.home-field-diagram svg [fill="#0F3822"]{fill:#0E2A4F}
.home-field-diagram svg [stroke="#8C3B24"]{stroke:#8C3B24}
.home-field-diagram svg [fill="#8C3B24"]{fill:#8C3B24}

.home-location-line a{color:var(--home-green);text-underline-offset:4px;padding:6px 0}.home-location-line p{display:flex;flex-wrap:wrap;gap:12px}.home-field-checks h3{color:var(--home-green)}
