/* Keep the page centered within a shared column, with generous side margins. */
.compact-ui .hero { grid-template-columns:1.05fr .95fr; gap:clamp(28px,4vw,48px); }
.compact-ui .hero-copy { max-width:680px; }
.compact-ui .hero h1 { white-space:normal; font-size:calc(clamp(36px,4.2vw,58px) * var(--type-scale,1)); line-height:1.13; letter-spacing:-1.8px; text-wrap:balance; }
.compact-ui .hero-description { max-width:46ch; font-size:calc(17px * var(--type-scale,1)); line-height:1.8; margin-bottom:27px; }
.compact-ui .hero-art { width:100%; max-width:560px; justify-self:end; }
.compact-ui .hero-kicker { flex-wrap:wrap; gap:12px; margin-bottom:23px; }
.compact-ui .proposal-badge { display:inline-flex; align-items:center; border:1px solid #d8cba4; background:#f2ebd6; color:#6a6247; border-radius:999px; padding:4px 10px; font-size:calc(10px * var(--type-scale,1)); font-weight:600; letter-spacing:.75px; line-height:1.5; }
.compact-ui #origin-button { min-height:54px; padding:8px 8px 8px 22px; gap:24px; border-radius:999px; border:1px solid #294b3c; box-shadow:0 6px 18px #233e3414; text-align:left; transition:background .2s,box-shadow .2s,transform .2s; }
.compact-ui #origin-button .origin-button-label { font-size:calc(14px * var(--type-scale,1)); line-height:1.4; }
.compact-ui #origin-button .origin-button-icon { display:grid; place-items:center; width:36px; height:36px; flex:none; border-radius:50%; background:#f1eedf; color:#294b3c; font-size:calc(20px * var(--type-scale,1)); transition:transform .2s,background .2s; }
.compact-ui #origin-button:hover { box-shadow:0 9px 24px #233e3425; }
.compact-ui #origin-button:hover .origin-button-icon { transform:rotate(8deg); background:#fff9e8; }
.compact-ui .community-intro { max-width:390px; }
.compact-ui .tools-intro { max-width:560px; }
.compact-ui .tools-intro>p:not(.eyebrow) { max-width:47ch; }
.compact-ui .site-footer { border-top:1px solid #d7ddce; padding-block:29px; gap:25px; }
.compact-ui .footer-note { max-width:670px; }
.compact-ui .footer-map-link { margin-top:6px; }
@media(min-width:801px) {
  .compact-ui .wrap,.compact-ui .header-inner { width:88%; max-width:1280px; }
}
@media(min-width:1000px) {
  .compact-ui .hero { padding-block:clamp(44px,3.7vw,65px); }
  .compact-ui .tools-section { grid-template-columns:.9fr 1.1fr; gap:clamp(40px,4vw,64px); }
}
@media(max-width:900px) { .compact-ui .hero { gap:24px; }.compact-ui .hero-description { font-size:calc(15px * var(--type-scale,1)); }.compact-ui .hero h1 { font-size:calc(clamp(34px,4.5vw,42px) * var(--type-scale,1)); } }
@media(max-width:600px) {
  .compact-ui .hero h1 { font-size:calc(clamp(32px,8.5vw,43px) * var(--type-scale,1)); letter-spacing:-1.2px; }
  .compact-ui .hero-kicker { gap:8px; margin-bottom:18px; }
  .compact-ui .hero-kicker>span:last-child { font-size:calc(8px * var(--type-scale,1)); letter-spacing:1.2px; }
  .compact-ui .hero-art { width:86%; align-self:center; }
  .compact-ui #origin-button { gap:19px; min-height:52px; }
  .compact-ui #origin-button .origin-button-label { font-size:calc(13px * var(--type-scale,1)); }
  .compact-ui .site-footer { gap:20px; }
}
@media print { .compact-ui .wrap { width:100%; max-width:none; } }
