#home { background:#fff; color:#1f1f1f; padding-bottom:60px; }
#home .image-box { display:flex; justify-content:center; align-items:center; width:100%; min-height:160px; background:#e7e7e7; color:#8a8a8a; font-size:13px; text-transform:uppercase; letter-spacing:0; }
#home .eyebrow { font-size:11px; font-weight:700; text-transform:uppercase; color:#e85c45; letter-spacing:0; }
#home p { line-height:1.7; }
#home .home-cta { display:inline-flex; justify-content:center; align-items:center; height:34px; margin-top:20px; padding:0 18px; border:1px solid #222; }
.home-panel { width:min(1280px, calc(100% - 40px)); margin:72px auto 0; padding:58px 30px; display:flex; flex-direction:column; align-items:center; text-align:center; background:#f7f7f7; }
.home-panel h2 { font-size:40px; letter-spacing:-1px; }
.home-intro { width:100%; min-height:calc(100vh - 160px); margin-top:0; justify-content:center; background-image:url('/img/speedsalesita_bg.png'); background-size:cover; background-position:center; }
.home-intro h1 { font-size:50px; }
.panel-brand { position:relative; overflow:hidden; background:linear-gradient(135deg, #fff4ee 0%, #fff 45%, #f6f8ff 100%); border:1px solid #f0dfd5; border-radius:20px; }
.panel-brand::before { content:""; position:absolute; top:-70px; left:-40px; width:220px; height:220px; border-radius:50%; background:radial-gradient(circle, rgba(232,92,69,.22) 0%, rgba(232,92,69,0) 72%); }
.panel-brand::after { content:""; position:absolute; right:-80px; bottom:-80px; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(92,129,232,.18) 0%, rgba(92,129,232,0) 74%); }
.panel-brand > * { position:relative; z-index:1; }
.panel-gentle { position:relative; background:#f8f6f1; border-radius:20px; border:1px solid #ebe4d9; }
.panel-gentle::before, .panel-gentle::after { content:""; position:absolute; top:50%; width:74px; height:2px; margin-top:-1px; background:#d8bca2; }
.panel-gentle::before { left:36px; }
.panel-gentle::after { right:36px; }
.panel-gentle .home-cta { background:#fff; border-color:#b99a7c; color:#6e5036; }
.panel-gentle .home-cta:hover { background:#f4ece3; }
.panel-join { background:#151a26; color:#f3f6ff; border-radius:20px; position:relative; overflow:hidden; }
.panel-join::before { content:"MEMBERSHIP"; position:absolute; top:18px; right:22px; font-size:11px; letter-spacing:1px; color:#85a0ff; }
.panel-join .eyebrow { color:#85a0ff; }
.panel-join p { color:#d3dbef; }
.panel-join .home-cta { background:#4f6bff; border-color:#4f6bff; color:#fff; }
.panel-join .home-cta:hover { background:#3d59ea; border-color:#3d59ea; }

.home-panel.home-mini { width:min(1280px, calc(100% - 40px)); padding:42px 30px; }
.home-section { width:min(1280px, calc(100% - 40px)); margin:72px auto 0; text-align:center; }
.home-card-grid { margin-top:24px; display:grid; gap:22px; text-align:left; }
.home-card-grid.col3 { grid-template-columns:repeat(3, minmax(0, 1fr)); }
.home-card-grid.col4 { grid-template-columns:repeat(4, minmax(0, 1fr)); }
.home-card-grid article > a { display:block; color:inherit; border:1px solid #e8e8e8; background:#fff; padding:14px; transition:transform .2s, box-shadow .2s; }
.home-card-grid article > a:hover { transform:translateY(-4px); box-shadow:0 12px 28px rgba(0,0,0,.08); }
.home-card-grid article h3 { margin-top:12px; font-size:17px; font-weight:700; line-height:1.45; word-break:keep-all; }
.home-card-grid .image-box { min-height:220px; overflow:hidden; background:#f2f2f2; }
.home-card-grid .image-box img { width:100%; height:100%; object-fit:cover; display:block; }
.home-card-grid article p { margin-top:6px; font-size:15px; font-weight:700; color:#1f1f1f; }
.home-banner { width:min(1280px, calc(100% - 40px)); margin:72px auto 0; padding:34px; display:grid; grid-template-columns:1fr 1.35fr; align-items:center; gap:34px; background:#ffd4f4; }
.home-banner .image-box { min-height:210px; background:#e8e8e8; }
.home-banner-soft { width:calc(100% - 40px); max-width:1280px; margin:72px auto 0; }
.home-banner-soft img { width:100%; height:auto; display:block; }
@media (max-width:560px){
	.home-panel { margin-top:48px; padding:42px 20px; }
	.home-panel h2 { font-size:30px; }
	.panel-gentle::before, .panel-gentle::after { display:none; }
	.home-section { margin-top:48px; }
	.home-card-grid.col3 { grid-template-columns:1fr; }
	.home-card-grid.col4 { grid-template-columns:1fr; }
	.home-card-grid .image-box { min-height:180px; }
	.home-banner { margin-top:48px; padding:28px 20px; grid-template-columns:1fr; }
	.home-banner-soft { margin-top:48px; }
}
#heom { background:#fff; color:#171717; padding:0 0 88px; }
#heom p { line-height:1.8; word-break:keep-all; }
#heom .heom-eyebrow { margin-bottom:12px; font-size:12px; font-weight:800; color:#d9573b; letter-spacing:0; text-transform:uppercase; }
#heom .heom-link { display:inline-flex; align-items:center; justify-content:center; height:38px; margin-top:24px; padding:0 22px; border:1px solid #171717; color:#171717; font-size:14px; font-weight:700; }
#heom .heom-link:hover { background:#171717; color:#fff; }
.heom-visual { width:min(1280px, calc(100% - 40px)); margin:0 auto; padding-top:46px; }
.heom-copy { padding:74px 30px 66px; text-align:center; background:#f7f7f7; }
.heom-copy h1 { font-size:44px; line-height:1.25; letter-spacing:0; }
.heom-copy p:not(.heom-eyebrow) { max-width:720px; margin:16px auto 0; color:#555; font-size:17px; }
.heom-image { height:480px; margin-top:48px; background:url('/img/allfitnessweb.png') center / cover no-repeat; }
.heom-section { width:min(1280px, calc(100% - 40px)); margin:82px auto 0; }
.heom-textbox { max-width:820px; margin:0 auto; padding:64px 54px; background:#f7f7f7; }
.heom-textbox h2, .heom-title h2, .heom-store-copy h2 { font-size:32px; line-height:1.35; letter-spacing:0; }
.heom-textbox p:not(.heom-eyebrow), .heom-store-copy p:not(.heom-eyebrow) { margin-top:16px; color:#555; font-size:16px; }
.heom-title { text-align:center; }
.heom-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:24px; margin-top:28px; }
.heom-grid article { min-width:0; }
.heom-thumb { aspect-ratio:4 / 3; background:#e5e5e5 center / cover no-repeat; }
.heom-thumb-1 { background-image:url('/img/item-1.png'); }
.heom-thumb-2 { background-image:url('/img/item-2.png'); }
.heom-thumb-3 { background-image:url('/img/item-3.png'); }
.heom-grid h3 { margin-top:14px; font-size:18px; line-height:1.45; letter-spacing:0; word-break:keep-all; }
.heom-grid p { margin-top:6px; color:#666; font-size:14px; }
.heom-store { display:grid; grid-template-columns:.85fr 1.15fr; gap:42px; align-items:center; padding:46px; background:#f7f7f7; }
.heom-store-copy { min-width:0; }
.heom-store-image { min-height:330px; background:#dcdcdc url('/img/item-4.png') center / cover no-repeat; }
@media (max-width:760px){
	#heom { padding-bottom:56px; }
	.heom-visual { width:calc(100% - 28px); padding-top:28px; }
	.heom-copy { padding:48px 20px; }
	.heom-copy h1 { font-size:32px; }
	.heom-copy p:not(.heom-eyebrow) { font-size:15px; }
	.heom-image { height:320px; margin-top:32px; }
	.heom-section { width:calc(100% - 28px); margin-top:56px; }
	.heom-textbox { padding:42px 24px; }
	.heom-textbox h2, .heom-title h2, .heom-store-copy h2 { font-size:26px; }
	.heom-grid { grid-template-columns:1fr; gap:28px; }
	.heom-store { grid-template-columns:1fr; gap:28px; padding:32px 24px; }
	.heom-store-image { min-height:230px; }
}
