/* Homepage rules deliberately contain the site's broad section/heading styles. */
.sg-public-home { width:min(1200px, calc(100% - 40px)); margin:28px auto 54px; color:var(--sg-text); }
.sg-public-home, .sg-public-home * { box-sizing:border-box; }
.sg-public-home section { max-width:none; width:100%; margin:0 0 38px; padding:0; border:0; background:none; border-radius:0; box-shadow:none; transition:none; transform:none; }
.sg-public-home section:hover { transform:none; }
.sg-public-home h1, .sg-public-home h2, .sg-public-home h3 { color:var(--sg-text); text-align:left; text-transform:none; letter-spacing:normal; text-shadow:none; margin:0; line-height:1.15; }
.sg-public-home h1 { font-size:clamp(1.8rem,3vw,2.8rem); max-width:850px; margin:12px 0 20px; }
.sg-public-home h2 { font-size:clamp(1.3rem,2.3vw,2rem); margin:8px 0 12px; }
.sg-public-home h3 { font-size:1.25rem; margin:8px 0; }
.sg-public-home p { color:var(--sg-muted); font-size:1rem; line-height:1.65; margin:0; }
.sg-public-home a { text-decoration:none; }
.sg-public-home .sg-home-hero { padding:clamp(26px,5vw,60px); border:1px solid var(--sg-border); border-radius:22px; background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--sg-accent) 18%,transparent),transparent 65%),var(--sg-surface); }
.sg-public-home .sg-home-lede { max-width:780px; font-size:clamp(1.05rem,2vw,1.25rem); }
.sg-public-home .sg-home-eyebrow { color:var(--sg-accent); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.sg-home-actions { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0 16px; }
.sg-public-home .sg-home-primary, .sg-public-home .sg-home-secondary { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:46px; margin:0; padding:12px 20px; border:1px solid var(--sg-border); border-radius:10px; font-size:.95rem; font-weight:750; }
.sg-public-home .sg-home-primary { background:var(--sg-accent); color:var(--button-text-color,#fff); border-color:var(--sg-accent); }
.sg-public-home .sg-home-secondary { background:var(--sg-surface); color:var(--sg-text); }
.sg-public-home a:hover { filter:brightness(1.08); }
.sg-public-home a:focus-visible { outline:3px solid var(--sg-accent); outline-offset:4px; }
.sg-public-home .sg-home-note { font-size:.88rem; }
.sg-home-heading { margin-bottom:20px; }
.sg-home-space-grid, .sg-home-work-grid { display:grid; gap:20px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.sg-home-work-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sg-home-space, .sg-home-work { min-width:0; overflow:hidden; border:1px solid var(--sg-border); border-radius:16px; background:var(--sg-surface); color:var(--sg-text); }
.sg-home-space > img { display:block; width:100%; height:auto; aspect-ratio:1188/568; object-fit:cover; }
.sg-home-work > img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; }
.sg-home-card-copy { padding:22px; }
.sg-home-card-copy strong { display:block; margin-top:20px; font-size:.9rem; color:var(--sg-accent); }
.sg-public-home .sg-home-start { padding:28px; background:var(--sg-surface); border:1px solid var(--sg-border); border-radius:16px; }
.sg-home-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding-left:24px; margin:0 0 24px; }
.sg-home-steps li { padding-left:4px; }
.sg-home-steps li::marker { color:var(--sg-accent); font-weight:bold; }
.sg-public-home .sg-home-discover { display:grid; grid-template-columns:1fr auto; align-items:center; gap:24px; }
.sg-home-discover .sg-home-actions { max-width:300px; margin:0; }
#example-spaces { scroll-margin-top:24px; }
@media(max-width:800px) { .sg-home-work-grid { grid-template-columns:1fr; } .sg-home-work { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.5fr); } .sg-home-work > img { height:100%; aspect-ratio:1; } .sg-public-home .sg-home-discover { grid-template-columns:1fr; } .sg-home-discover .sg-home-actions { max-width:none; } }
@media(max-width:600px) { .sg-public-home { width:calc(100% - 24px); margin-top:16px; } .sg-home-space-grid, .sg-home-steps { grid-template-columns:1fr; } .sg-home-work { display:block; } .sg-home-work > img { height:auto; aspect-ratio:4/3; } .sg-public-home .sg-home-start { padding:22px; } .sg-home-card-copy { padding:18px; } .sg-home-actions > a { width:100%; } }
