#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; }
}
