*{box-sizing:border-box}body{margin:0;background:#f7f6f1;color:#203f3b;font:17px/1.7 system-ui,sans-serif}header,main,footer{max-width:1050px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center}a{color:#24594e}header a{text-decoration:none}.logo{font-size:28px;font-weight:750;letter-spacing:-1px}.badge{border:1px solid #c6d9cc;border-radius:30px;padding:6px 14px;font-size:13px}h1{font-size:clamp(38px,7vw,70px);line-height:1.12;letter-spacing:-2px;max-width:800px;margin:32px 0}h2{line-height:1.3}p{max-width:720px}.hero{padding:42px 0 60px}.lead{font-size:21px;color:#52665f}.button{display:inline-block;background:#24594e;color:white;text-decoration:none;padding:13px 22px;border-radius:12px;margin-top:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:white;border:1px solid #e0e6df;border-radius:18px;padding:24px}.card h2{font-size:21px}section{margin-bottom:40px}.info{background:#e8eee6;border-radius:18px;padding:28px}footer{border-top:1px solid #dce3da;font-size:14px;color:#52665f}footer a{margin-right:18px}.notice{background:#fff0cd;padding:20px;border-radius:12px}@media(max-width:700px){.grid{grid-template-columns:1fr}header{gap:10px;flex-wrap:wrap}.hero{padding-top:15px}h1{letter-spacing:-1px}}
.hero-personal{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center}.hero-personal h1{font-size:clamp(38px,6vw,62px)}.portrait{margin:0}.portrait img{display:block;width:100%;height:auto;border-radius:24px;box-shadow:0 20px 50px #203f3b18}.portrait figcaption{font-size:13px;text-align:center;margin-top:10px;color:#52665f}@media(max-width:700px){.hero-personal{grid-template-columns:1fr;gap:28px}.portrait{max-width:340px;margin:auto}}