#home { background:#fff; color:#191f24; padding-bottom:110px; }
#home p { line-height:1.75; color:#5f6872; word-break:keep-all; }
#home h1, #home h2, #home h3 { color:#15191d; word-break:keep-all; }
.home-inner { width:min(1180px, calc(100% - 40px)); margin:0 auto; }
.home-visual { padding:110px 0 88px; background:#f6f8f5; }
.home-visual-grid { display:grid; grid-template-columns:1fr 1.08fr; align-items:center; gap:62px; }
.home-kicker { margin-bottom:14px; font-size:12px; font-weight:800; color:#4f8a62 !important; text-transform:uppercase; }
.home-copy h1 { max-width:620px; font-size:54px; line-height:1.16; font-weight:800; }
.home-copy h2 { max-width:560px; font-size:38px; line-height:1.28; font-weight:800; }
.home-copy p { max-width:600px; margin-top:18px; font-size:17px; }
.home-btn { display:inline-flex; align-items:center; justify-content:center; height:44px; margin-top:30px; padding:0 24px; background:#1f2b23; color:#fff; font-size:15px; font-weight:700; }
.home-visual-box { position:relative; min-height:430px; background:url("../img/green-hub_bg.png") center/cover no-repeat; border:1px solid #d2dbcf; }
.visual-window { position:absolute; display:flex; flex-direction:column; justify-content:space-between; padding:24px; background:#fff; box-shadow:0 18px 40px rgba(32,44,35,.12); }
.visual-window span { width:80px; height:8px; background:#d9e2d7; }
.visual-window strong { font-size:24px; color:#26322a; }
.visual-window em { width:100%; height:120px; background:linear-gradient(90deg, #edf2ea 0%, #edf2ea 34%, #c7d8c5 34%, #c7d8c5 100%); }
.visual-window.large { left:44px; top:58px; width:68%; height:285px; }
.visual-window.small { right:34px; bottom:38px; width:44%; height:190px; }
.home-section { padding-top:92px; }
.home-split { display:grid; grid-template-columns:.85fr 1fr; align-items:center; gap:60px; }
.home-placeholder { display:flex; align-items:center; justify-content:center; min-height:360px; overflow:hidden; background:#eef1ee; border:1px solid #dde5dd; color:#95a092; font-size:15px; font-weight:800; }
.home-placeholder img { width:100%; height:100%; min-height:360px; object-fit:cover; }
.home-list { display:grid; gap:10px; margin-top:24px; }
.home-list li { position:relative; padding-left:18px; color:#2c3339; font-size:16px; }
.home-list li::before { content:""; position:absolute; top:10px; left:0; width:6px; height:6px; background:#6ea47a; }
.home-section-head { max-width:680px; margin:0 auto 34px; text-align:center; }
.home-section-head h2 { font-size:40px; line-height:1.25; font-weight:800; }
.home-section-head p:last-child { margin-top:12px; font-size:16px; }
.home-card-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:22px; }
.home-card-grid article { padding:18px; border:1px solid #e2e7e2; background:#fff; }
.home-card-image { display:flex; align-items:center; justify-content:center; height:190px; overflow:hidden; background:#f1f4f0; color:#94a092; font-size:13px; font-weight:800; }
.home-card-image img { width:100%; height:100%; object-fit:cover; }
.home-card-grid h3 { margin-top:20px; font-size:22px; line-height:1.35; }
.home-card-grid p { margin-top:10px; font-size:15px; }
.home-platform-box { padding:62px; background:#f7f8f6; border:1px solid #e4e8e2; }
.platform-layout { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:50px; margin-top:38px; }
.platform-screen { overflow:hidden; background:#fff; border:1px solid #dfe6dd; box-shadow:0 18px 40px rgba(35,45,38,.08); }
.platform-screen img { display:block; width:100%; height:auto; }
.platform-top { height:92px; margin-bottom:18px; background:#d9e5d8; }
.platform-row { height:34px; margin-top:12px; background:#edf2ed; }
.platform-row.wide { width:100%; }
.platform-row.short { width:58%; }
.platform-points { display:grid; gap:14px; }
.platform-points li { padding:18px 20px; background:#fff; border:1px solid #e1e7e0; }
.platform-points strong { display:block; margin-bottom:6px; color:#1d2820; font-size:18px; }
.platform-points span { color:#66706a; font-size:15px; line-height:1.6; }
@media (max-width:560px){
	#home { padding-bottom:70px; }
	.home-visual { padding:64px 0 54px; }
	.home-visual-grid, .home-split, .home-card-grid, .platform-layout { grid-template-columns:1fr; gap:28px; }
	.home-copy h1 { font-size:36px; }
	.home-copy h2, .home-section-head h2 { font-size:29px; }
	.home-copy p { font-size:15px; }
	.home-visual-box { min-height:330px; }
	.visual-window { padding:18px; }
	.visual-window strong { font-size:18px; }
	.visual-window em { height:82px; }
	.visual-window.large { left:18px; top:34px; width:74%; height:220px; }
	.visual-window.small { right:16px; bottom:24px; width:52%; height:150px; }
	.home-section { padding-top:62px; }
	.home-placeholder { min-height:240px; }
	.home-card-image { height:150px; }
	.home-platform-box { padding:34px 20px; }
}
