/* Let the saved artwork lead. Vault: vault/System/Step 1 - Land on BlockTool.md. */
.home-page .hero { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:48px; padding:40px 0 48px; }
.home-page .hero-copy { padding-bottom:64px; }
.home-page .hero h1 { font-size:clamp(40px,4.5vw,62px); max-width:480px; }
.home-page .hero-sub { font-size:17px; max-width:380px; }
.home-page .hero-actions { gap:10px; margin-top:28px; }
.home-page .hero-actions .btn { padding:13px 18px; font-size:14px; }
.home-page .hero h1 .molten { text-shadow:none; }
.model-showcase { min-width:0; }
.home-page img[hidden] { display:none; }
.home-page .hero-scene { display:block; place-items:normal; width:100%; max-height:none; min-height:0; margin:0; overflow:hidden; border-radius:20px; }
.showcase-kicker { position:absolute; left:22px; top:20px; z-index:1; color:#adc2b5; font:500 12px 'Schibsted Grotesk',sans-serif; letter-spacing:.03em; pointer-events:none; }
.home-page .hero-model-link { width:100%; height:400px; aspect-ratio:auto; border-radius:0; margin:0; }
.home-page .hero-model { height:100%; max-height:none; object-fit:contain; border-radius:0; }
.home-page .hero-model-canvas { height:100%; }
.showcase-loading { display:grid; place-items:center; height:100%; padding:50px 24px; color:var(--muted); text-align:center; font-size:14px; }
.home-page .hero-motion-toggle { top:12px; right:14px; left:auto; bottom:auto; min-height:36px; padding:8px 12px; font-size:11px; }
.showcase-details { display:flex; width:100%; align-items:center; justify-content:space-between; gap:18px; min-height:86px; padding:18px 22px; background:#1c2521; border-top:1px solid #354139; }
.showcase-details > div { min-width:0; }
.showcase-type { display:block; margin-bottom:5px; color:#a6b5ac; font-size:11px; }
.showcase-details h2 { margin:0; font:700 20px/1.2 'Bricolage Grotesque',sans-serif; letter-spacing:-.02em; overflow-wrap:anywhere; }
.showcase-edit { flex-shrink:0; display:flex; gap:10px; align-items:center; color:var(--highlight); font-size:12px; font-weight:700; padding:12px 0; }
.showcase-edit:hover { color:#ffd9ba; }
.showcase-edit span { font-size:19px; }
.showcase-pick { margin:15px 0 9px; color:var(--muted); font-size:11px; }
.showcase-choices { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.showcase-choice { min-width:0; border:1px solid var(--line); border-radius:12px; padding:0; background:var(--panel); color:var(--muted); text-align:left; cursor:pointer; overflow:hidden; transition:border-color .15s,background .15s; }
.showcase-choice img { display:block; width:100%; height:86px; object-fit:contain; image-rendering:pixelated; background:#172620; }
.showcase-choice span { display:block; padding:8px 9px 10px; font:500 11px/1.3 'Schibsted Grotesk',sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.showcase-choice[aria-pressed="true"] { border-color:var(--primary); background:#35291f; color:#ffca9c; }
.showcase-choice:hover { border-color:#8e9b90; color:var(--copy); }
.showcase-choice[aria-pressed="true"]:hover { border-color:var(--primary); }
.home-page a:focus-visible,.showcase-choice:focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
.home-page .collection-section { padding:32px 24px 50px; border-top:1px solid var(--line); }
.collection-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:24px; }
.collection-eyebrow { color:#a8c5ab; font-size:12px; }
.collection-heading h2 { margin:10px 0; font:700 clamp(26px,3vw,36px)/1.1 'Bricolage Grotesque',sans-serif; letter-spacing:-.04em; }
.collection-heading p { margin:0; color:var(--muted); font-size:14px; line-height:1.5; }
.collection-browse { flex-shrink:0; color:var(--highlight); font-size:13px; padding:12px 0 4px; }
.collection-browse span { margin-left:10px; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.collection-card { display:block; min-width:0; border-radius:16px; }
.collection-art { overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#182722; }
.collection-art img { display:block; width:100%; aspect-ratio:1; object-fit:contain; image-rendering:pixelated; transition:transform .2s; }
.collection-card:hover .collection-art img { transform:scale(1.04); }
.collection-card:hover .collection-art { border-color:#779580; }
.collection-info { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 2px 4px; }
.collection-info h3 { font:700 16px/1.3 'Bricolage Grotesque',sans-serif; margin:0 0 4px; overflow-wrap:anywhere; }
.collection-info p { margin:0; color:var(--muted); font-size:11px; }
.collection-arrow { color:var(--highlight); font-size:21px; }
@media(min-width:1400px) { .home-page .hero-model-link { height:440px; } }
@media(max-width:1000px) {
 .home-page .hero { gap:28px; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); }
 .home-page .hero-copy { padding-bottom:0; }
 .home-page .hero-model-link { height:340px; }
 .showcase-details { padding:16px; gap:12px; }
 .showcase-details h2 { font-size:18px; }
 .showcase-edit { max-width:86px; }
 .showcase-choice img { height:70px; }
}
@media(max-width:720px) {
 .home-page .hero { grid-template-columns:minmax(0,1fr); gap:26px; padding:32px 0; }
 .home-page .hero h1 { max-width:500px; font-size:clamp(38px,8.5vw,54px); }
 .home-page .hero-sub { max-width:480px; font-size:16px; margin-bottom:0; }
 .home-page .hero-actions { display:flex; margin-top:22px; }
 .home-page .hero-meta { margin-top:12px; }
 .home-page .hero-model-link { height:340px; }
 .home-page .hero-scene { max-width:none; }
 .showcase-edit { max-width:none; }
 .showcase-choice img { height:76px; }
 .collection-heading { display:block; }
 .collection-browse { display:inline-block; margin-top:8px; }
 .collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }
 .collection-art { border-radius:12px; }
 .collection-art img { aspect-ratio:1; }
 .collection-info { padding-top:10px; }
 .collection-info h3 { font-size:14px; }
 .collection-arrow { display:none; }
}
@media(max-width:380px) {
 .home-page .nav .brand > span { display:none; }
 .showcase-kicker { left:14px; font-size:10px; }
 .showcase-details { padding:14px 12px; }
 .showcase-details h2 { font-size:16px; }
 .showcase-edit { font-size:11px; gap:4px; }
 .showcase-choice img { height:63px; }
 .showcase-choice span { padding:7px 6px; font-size:10px; }
 .home-page .hero-model-link { height:290px; }
}
@media(prefers-reduced-motion:reduce) { .collection-art img,.showcase-choice { transition:none; } }
