:root { --ink:#17202a; --muted:#667085; --line:#d8dee8; --green:#146c63; --green-dark:#0f514a; --surface:#fff; }
* { box-sizing:border-box; }
body { background:#edf2ef; color:var(--ink); display:grid; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; grid-template-rows:auto 1fr auto; margin:0; min-height:100vh; }
body.has-community-image { background-image:var(--community-image); background-position:center; background-size:cover; color:#fff; position:relative; }
body.has-community-image::before { background:rgba(18,31,27,.58); content:""; inset:0; position:fixed; z-index:0; }
.has-community-image > * { position:relative; z-index:1; }
.entry-header { align-items:center; display:flex; justify-content:space-between; padding:24px clamp(20px,5vw,72px); }
.entry-brand { color:inherit; font-size:18px; font-weight:850; text-decoration:none; }
.entry-header select { background:var(--surface); border:1px solid var(--line); border-radius:6px; color:var(--ink); padding:8px 10px; }
.entry-main { align-items:center; display:flex; padding:48px clamp(20px,9vw,140px); }
.entry-content { max-width:660px; }
.entry-kicker { color:var(--green); font-size:12px; font-weight:850; margin:0 0 12px; text-transform:uppercase; }
.has-community-image .entry-kicker { color:#c9e8dd; }
.entry-content h1 { font-size:clamp(48px,8vw,92px); letter-spacing:0; line-height:.98; margin:0; }
.entry-address { color:var(--muted); font-size:18px; line-height:1.6; margin:24px 0 30px; }
.has-community-image .entry-address { color:#e7efec; }
.entry-actions { display:flex; flex-wrap:wrap; gap:10px; }
.entry-button { border:1px solid transparent; border-radius:6px; font-weight:800; padding:12px 18px; text-decoration:none; }
.entry-button.primary { background:var(--green); color:#fff; }
.entry-button.primary:hover { background:var(--green-dark); }
.entry-button.secondary { background:var(--surface); border-color:var(--line); color:var(--ink); }
footer { color:var(--muted); font-size:12px; padding:24px clamp(20px,5vw,72px); }
.has-community-image footer { color:#dce7e3; }
.sr-only { clip:rect(0,0,0,0); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute; white-space:nowrap; width:1px; }
@media (max-width:600px) { .entry-header { padding:18px 20px; }.entry-main { align-items:flex-end; padding:40px 20px 12vh; }.entry-content h1 { font-size:52px; }.entry-actions { align-items:stretch; flex-direction:column; }.entry-button { text-align:center; } }
