:root { color-scheme: light; --ink:#18221f; --muted:#596863; --paper:#f8f8f3; --line:#d9dfd9; --accent:#356b58; --accent-soft:#e7eee9; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-synthesis:none; text-rendering:optimizeLegibility; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); }
a { color:inherit; }
.wrap { width:min(1160px,calc(100% - 48px)); margin-inline:auto; }
.topbar { border-bottom:1px solid var(--line); background:var(--paper); }
.nav { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:12px; text-decoration:none; font-size:13px; font-weight:760; line-height:1.15; letter-spacing:.04em; }
.brand small { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.12em; }
.mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--accent); color:var(--accent); font-family:Georgia,serif; font-size:25px; }
.navlinks { display:flex; align-items:center; gap:28px; font-size:13px; color:var(--muted); }
.navlinks a { text-decoration:none; }
.nav-cta,.button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:0 18px; border:1px solid var(--accent); border-radius:3px; color:white; background:var(--accent); text-decoration:none; font:inherit; font-size:13px; font-weight:700; }
.hero { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; gap:48px; min-height:610px; padding-block:68px; }
.eyebrow { margin:0 0 18px; color:var(--accent); font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
h1 { max-width:680px; margin:0; font-size:62px; line-height:1.04; font-weight:620; }
.lede { max-width:570px; margin:24px 0 30px; color:var(--muted); font-size:17px; line-height:1.75; }
.hero-actions { display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.text-link { font-size:13px; font-weight:700; text-underline-offset:4px; }
.investment-art { position:relative; min-height:390px; overflow:hidden; background:#e7eee9; }
.art-caption { position:absolute; z-index:2; top:30px; left:30px; display:grid; gap:9px; padding:0 12px 12px 0; color:#234438; background:#e7eee9; }
.art-caption span,.art-caption small { font-size:9px; font-weight:800; letter-spacing:.15em; }
.art-caption strong { font-family:Georgia,serif; font-size:24px; font-weight:500; line-height:1.05; }
.building { position:absolute; bottom:48px; border:1px solid #668373; background:repeating-linear-gradient(90deg,transparent 0 27px,#91aa9a 28px 29px),repeating-linear-gradient(0deg,#dbe7de 0 36px,#91aa9a 37px 38px); }
.building-back { right:46px; width:116px; height:212px; opacity:.8; }
.building-front { right:158px; width:140px; height:272px; background-color:#d1dfd5; }
.building-side { right:298px; width:78px; height:164px; opacity:.7; }
.art-ground { position:absolute; bottom:47px; left:0; right:0; border-top:1px solid #668373; }
.signal-row { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); }
.signal { padding:22px 28px; border-right:1px solid var(--line); }
.signal:last-child { border:0; }
.signal strong { display:block; margin-bottom:6px; font-size:13px; }
.signal span { color:var(--muted); font-size:12px; line-height:1.5; }
section.content { padding-block:92px; }
.section-head { display:grid; grid-template-columns:1fr 1fr; gap:38px; align-items:end; margin-bottom:38px; }
h2 { max-width:540px; margin:0; font-size:42px; font-weight:580; line-height:1.12; }
.section-head p { color:var(--muted); line-height:1.75; }
.tiles { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); }
.tile { min-height:190px; padding:26px 28px 28px 0; border-right:1px solid var(--line); }
.tile+.tile { padding-left:28px; }
.tile:last-child { border:0; }
.tile-index { color:var(--accent); font-size:11px; font-weight:800; }
.tile h3 { margin:27px 0 10px; font-size:18px; font-weight:650; }
.tile p { max-width:300px; margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.market-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--line); }
.market-card { min-width:0; padding:24px 24px 28px 0; border-right:1px solid var(--line); }
.market-card+.market-card { padding-left:24px; }
.market-card:last-child { border-right:0; }
.market-top { display:flex; justify-content:space-between; gap:12px; color:var(--accent); font-size:10px; font-weight:800; }
.market-top span:last-child { color:var(--muted); font-weight:600; }
.market-image { display:block; width:100%; aspect-ratio:16 / 10; margin-top:20px; object-fit:cover; background:#e7eee9; }
.market-image+h3 { margin-top:22px; }
.market-card h3 { margin:36px 0 12px; font-family:Georgia,serif; font-size:30px; font-weight:500; }
.market-card>p { color:var(--muted); font-size:13px; line-height:1.75; }
.market-detail { display:grid; gap:7px; margin-top:22px; padding-top:16px; border-top:1px solid var(--line); }
.market-detail strong { font-size:12px; }
.market-detail span { color:var(--muted); font-size:12px; line-height:1.65; }
.market-card .market-note { margin-top:18px; font-size:12px; }
.market-disclaimer { max-width:880px; margin:18px 0 0; color:var(--muted); font-size:12px; line-height:1.7; }
.review-note { display:grid; grid-template-columns:220px 1fr; gap:24px; margin-top:28px; padding:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.review-note strong { font-size:13px; }
.review-note p { margin:0; color:var(--muted); font-size:13px; line-height:1.75; }
.contact-band { padding:38px; background:var(--accent-soft); }
.contact-band h2 { font-size:30px; }
.contact-band p { margin:10px 0 0; color:var(--muted); font-size:14px; line-height:1.65; }
.email-slot { display:block; margin-top:8px; color:var(--accent); font-size:13px; font-weight:700; }
.address { font-size:13px!important; }
.notice { padding-bottom:46px; color:var(--muted); font-size:12px; line-height:1.7; }
footer { padding:34px 0; border-top:1px solid var(--line); }
.footer-inner { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.footer-brand { font-size:12px; font-weight:750; }
.footer-links { display:flex; gap:20px; font-size:12px; color:var(--muted); }
footer a { text-decoration:none; }
.legal { max-width:820px; padding-block:76px 96px; }
.legal h1 { max-width:740px; font-size:48px; }
.legal .updated { margin:14px 0 38px; color:var(--muted); font-size:13px; }
.legal h2 { margin:34px 0 12px; font-size:21px; }
.legal p,.legal li { color:var(--muted); line-height:1.8; }
.back-link { display:inline-block; margin-top:24px; color:var(--accent); font-size:13px; font-weight:700; text-underline-offset:4px; }
@media(max-width:760px) {
  .wrap { width:min(100% - 32px,560px); }
  .nav { min-height:72px; gap:12px; }
  .brand { font-size:11px; gap:8px; }
  .brand small { font-size:8px; }
  .mark { width:34px; height:34px; }
  .navlinks { gap:14px; font-size:12px; }
  .navlinks a:nth-child(3) { display:none; }
  .nav-cta { min-height:38px; padding-inline:12px; }
  .hero { grid-template-columns:1fr; gap:34px; min-height:auto; padding-block:58px 50px; }
  h1 { font-size:44px; }
  h2 { font-size:32px; }
  .lede { font-size:15px; }
  .investment-art { min-height:310px; }
  .building-front { right:100px; }
  .building-back { right:0; }
  .building-side { right:240px; }
  .signal-row { grid-template-columns:1fr; }
  .signal { padding:16px 0; border-right:0; border-bottom:1px solid var(--line); }
  .signal:last-child { border-bottom:0; }
  section.content { padding-block:66px; }
  .section-head { grid-template-columns:1fr; gap:14px; }
  .market-grid { grid-template-columns:1fr; }
  .market-card,.market-card+.market-card { padding:22px 0; border-right:0; border-bottom:1px solid var(--line); }
  .market-card:last-child { border-bottom:0; }
  .market-card h3 { margin-top:22px; }
  .market-image { margin-top:16px; }
  .review-note { grid-template-columns:1fr; gap:8px; }
  .tiles { grid-template-columns:1fr; }
  .tile,.tile+.tile { min-height:0; padding:22px 0; border-right:0; border-bottom:1px solid var(--line); }
  .tile:last-child { border-bottom:0; }
  .tile h3 { margin-top:16px; }
  .contact-band { padding:26px 22px; }
  .footer-inner { align-items:flex-start; flex-direction:column; }
  .legal { padding-block:54px 72px; }
  .legal h1 { font-size:40px; }
}
