/* Homepage section 04 · WORKSHOP — theme colour variables only (light/dark toggle works); section head from flux.css. */
.fws-home { --ink: var(--c000000, #000); --paper: var(--cffffff, #fff); --dim: var(--c555555, #555);
	--display: var(--flux-display, "Inter Display", "Helvetica Neue", Helvetica, Arial, sans-serif); }
.fws-home-grid { display: grid; grid-template-columns: 1fr; gap: 0; border: 1.5px solid var(--ink); border-top: 0; }
.fws-home-photo { display: block; border-bottom: 1.5px solid var(--ink); background: var(--cf2f2f2, #f2f2f2); }
.fws-home-photo:hover { background: none; }
.fws-home-photo img { display: block; width: 100%; height: 100%; max-height: 520px; object-fit: cover; contain: none; contain-intrinsic-size: none; }
.fws-home-body { padding: 22px 18px 24px; min-width: 0; }
html:not(#fws) .fws-home-kicker { font-size: 11px; letter-spacing: .16em; color: var(--dim); margin: 0 0 12px; text-transform: uppercase; }
html:not(#fws) .fws-home-title { font-family: var(--display); font-weight: 900; text-transform: uppercase; letter-spacing: -0.035em;
	font-size: clamp(40px, 7.5vw, 88px); line-height: .88; margin: 0 0 14px; padding: 0; border: 0; }
html:not(#fws) .fws-home-line { font-family: var(--display); font-weight: 700; font-size: clamp(19px, 2.4vw, 26px); line-height: 1.12; letter-spacing: -0.02em; margin: 0 0 10px; }
.fws-home-text { max-width: 36em; margin: 0 0 18px; }
html:not(#fws) .fws-home-facts { list-style: none; padding: 0; margin: 0 0 20px; display: grid; grid-template-columns: 1fr 1fr; border-top: 2px solid var(--ink); border-left: 1px solid var(--ink); }
.fws-home-facts li { margin: 0; padding: 9px 11px; border-right: 1px solid var(--ink); border-bottom: 1px solid var(--ink); display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.fws-home-facts span { font-size: 10px; letter-spacing: .16em; color: var(--dim); }
.fws-home-facts strong { font-size: 13.5px; line-height: 1.3; }
.fws-home-facts .is-price strong { font-family: var(--display); font-weight: 900; font-size: 30px; letter-spacing: -0.02em; line-height: 1.05; }
.fws-home-cta { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
.fws-home .fws-btn { display: inline-block; background: var(--ink); color: var(--paper) !important; border: 2px solid var(--ink); padding: 13px 18px;
	font-size: 12px; letter-spacing: .16em; text-transform: uppercase; text-decoration: none; }
.fws-home .fws-btn:hover, .fws-home .fws-btn:focus-visible { background: var(--paper); color: var(--ink) !important; }
.fws-home .fws-btn.is-outline { background: var(--paper); color: var(--ink) !important; }
.fws-home .fws-btn.is-outline:hover { background: var(--ink); color: var(--paper) !important; }
@media (max-width: 480px) { .fws-home .fws-btn { flex: 1 1 100%; text-align: center; } }
@media (min-width: 761px) {
	.fws-home-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }
	.fws-home-photo { border-bottom: 0; border-right: 1.5px solid var(--ink); }
	.fws-home-photo img { max-height: none; aspect-ratio: 2 / 3; }
	.fws-home-body { padding: 28px 30px 30px; align-self: end; }
	html:not(#fws) .fws-home-facts { grid-template-columns: repeat(3, 1fr); }
}
