:root { --bg:#1b1a17; --fg:#f4f1ea; --muted:#b5afa2; --line:#3a3731; --card:#24221e; --accent:#e9c46a; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--bg); color:var(--fg); font:17px/1.6 Georgia, "Times New Roman", serif; }
img { max-width:100%; height:auto; display:block; }
.wrap { max-width:60rem; margin:0 auto; padding:0 1.25rem; }
.eyebrow { font:600 .8rem/1 system-ui, sans-serif; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin:0 0 1rem; }
h1 { font-size:clamp(2.1rem, 8vw, 3.4rem); line-height:1.08; margin:0 0 1rem; font-weight:normal; text-wrap:balance; }
h2 { font-size:clamp(1.5rem, 5vw, 2rem); line-height:1.2; margin:0 0 1rem; font-weight:normal; text-wrap:balance; }
p { margin:0 0 1rem; max-width:40rem; }
.lede { font-size:1.15rem; }
section { padding:3rem 0; border-top:1px solid var(--line); }

/* Hero */
.hero { position:relative; }
.hero-photo { width:100%; aspect-ratio:779/525; object-fit:cover; }
.hero-text { padding-block:2rem 2.5rem; }
.hero-frame { position:relative; max-width:60rem; margin:0 auto; }
.hero-frame::after { content:""; position:absolute; inset:auto 0 0 0; height:45%; background:linear-gradient(180deg, rgba(27,26,23,0), var(--bg)); }
.hero-text { margin-top:-3.5rem; position:relative; }

/* Quick facts */
.facts { display:grid; grid-template-columns:repeat(2, 1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin:0; padding:0; list-style:none; }
.facts li { background:var(--bg); padding:1rem; }
.facts b { display:block; font-size:1.35rem; font-weight:normal; }
.facts span { font:.8rem/1.3 system-ui, sans-serif; color:var(--muted); }
@media (min-width:44rem) { .facts { grid-template-columns:repeat(4, 1fr); } }

/* Gallery */
.gallery { display:grid; gap:.75rem; grid-template-columns:1fr; margin:1.5rem 0 .75rem; }
.gallery img { width:100%; aspect-ratio:3/2; object-fit:cover; border-radius:3px; }
@media (min-width:36rem) { .gallery { grid-template-columns:1fr 1fr; } }
.caption { font:.85rem/1.4 system-ui, sans-serif; color:var(--muted); }

.uses { display:grid; gap:.75rem; grid-template-columns:1fr; padding:0; margin:1.5rem 0; list-style:none; }
.uses li { background:var(--card); border:1px solid var(--line); border-radius:3px; padding:1rem; }
.uses b { display:block; font-weight:normal; font-size:1.1rem; margin-bottom:.15rem; }
.uses span { font:.9rem/1.4 system-ui, sans-serif; color:var(--muted); }
@media (min-width:36rem) { .uses { grid-template-columns:1fr 1fr; } }

.plan { background:#fff; border-radius:3px; padding:1rem; margin:1.5rem 0 .75rem; }
.plan-labels { display:grid; grid-template-columns:1fr 1fr; text-align:center; font:.8rem/1 system-ui, sans-serif; letter-spacing:.1em; text-transform:uppercase; color:#5d5a52; padding-top:.75rem; }

table { width:100%; border-collapse:collapse; margin-top:1rem; }
th, td { text-align:left; vertical-align:top; padding:.7rem 0; border-bottom:1px solid var(--line); }
th { font:600 .8rem/1.6 system-ui, sans-serif; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); width:38%; padding-right:1rem; }

.contact { display:grid; gap:.75rem; grid-template-columns:1fr; margin-top:1.5rem; }
.contact div { background:var(--card); border:1px solid var(--line); border-radius:3px; padding:1.25rem; }
.contact .label { font:600 .8rem/1 system-ui, sans-serif; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:.5rem; }
.contact .value { font-size:1.4rem; color:var(--accent); }
@media (min-width:36rem) { .contact { grid-template-columns:1fr 1fr; } }

footer { border-top:1px solid var(--line); padding:1.5rem 0 2.5rem; font:.8rem/1.5 system-ui, sans-serif; color:var(--muted); }

/* Tabs: one per space, scrolls sideways on small screens */
.tabs { position:sticky; top:0; z-index:10; background:var(--bg); border-bottom:1px solid var(--line); }
.tabs ul { display:flex; gap:.25rem; margin:0 auto; padding:0 .75rem; max-width:60rem; list-style:none; overflow-x:auto; scrollbar-width:none; }
.tabs ul::-webkit-scrollbar { display:none; }
.tabs a { display:flex; align-items:center; gap:.5rem; white-space:nowrap; padding:.9rem .6rem; color:var(--muted); text-decoration:none; font:600 .85rem/1 system-ui, sans-serif; border-bottom:2px solid transparent; }
.tabs a:hover { color:var(--fg); }
.tabs a[aria-current="page"] { color:var(--fg); border-bottom-color:var(--accent); }
.pill { font:700 .65rem/1 system-ui, sans-serif; letter-spacing:.08em; text-transform:uppercase; color:#1b1a17; background:var(--accent); padding:.25rem .4rem; border-radius:2px; }

/* Tenant pages */
.button { display:inline-block; margin-top:.5rem; padding:.8rem 1.1rem; background:var(--accent); color:#1b1a17; text-decoration:none; border-radius:3px; font:600 .95rem/1 system-ui, sans-serif; }
.button:hover { filter:brightness(1.08); }
a { color:var(--accent); }
.next { background:var(--card); border:1px solid var(--line); border-radius:3px; padding:1.5rem; }
.next h2 { margin-bottom:.5rem; }
