*{margin:0;padding:0;box-sizing:border-box}
:root{color-scheme:light}
body{font-family:Arial,"Microsoft YaHei",sans-serif;background:#f5f8f5;color:#293b30;line-height:1.7;transition:background .3s,color .3s}
body.dark{background:#17221b;color:#edf5ef}
header{padding:18px 8%;background:#fff;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #00000008;gap:18px}
.dark header,.dark .card,.dark .contact-box{background:#25332a}
.logo{color:#5b8a68;font-size:23px;font-weight:bold;white-space:nowrap}
nav{display:flex;gap:20px;flex-wrap:wrap}nav a{text-decoration:none;color:inherit}nav a:hover{color:#5b8a68}
button{border:none;cursor:pointer;padding:11px 20px;border-radius:8px;background:#5b8a68;color:white;font-size:15px}
button:hover{filter:brightness(.95)}.theme-btn{padding:8px 12px}
.hero{text-align:center;padding:100px 20px;background:linear-gradient(135deg,#e5f0e5,#f8faf5)}
.dark .hero{background:linear-gradient(135deg,#263c2e,#17221b)}
.avatar{width:120px;height:120px;margin:0 auto 25px;border-radius:50%;background:#d2e6d5;display:flex;align-items:center;justify-content:center;font-size:60px}
.hero h1{font-size:40px;margin-bottom:12px}.hero p{color:#718075;margin-bottom:25px}.dark .hero p{color:#bdcbbf}
section{padding:65px 8%}.section-title{text-align:center;font-size:29px;margin-bottom:35px}
.about{max-width:750px;margin:auto;text-align:center}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.card{background:#fff;padding:28px;border-radius:15px;box-shadow:0 6px 24px #00000008;transition:transform .2s}
.card:hover{transform:translateY(-5px)}.card .emoji{font-size:35px;margin-bottom:12px}.card h3{margin-bottom:10px}.card p{color:#7a877d;font-size:14px}.dark .card p{color:#bdcbbf}
.contact-box{max-width:600px;margin:auto;padding:30px;background:#fff;border-radius:15px}
input,textarea{width:100%;padding:13px;margin:10px 0 18px;border:1px solid #dce5dc;border-radius:8px;background:transparent;color:inherit;font:inherit}
textarea{min-height:120px;resize:vertical}
footer{text-align:center;padding:25px;background:#e8efe8;color:#66756a}.dark footer{background:#25332a;color:#bdcbbf}
#topBtn{position:fixed;bottom:25px;right:25px;display:none;border-radius:50%;width:45px;height:45px;padding:0}
@media(max-width:700px){header{padding:15px 5%;flex-wrap:wrap}nav{width:100%;justify-content:space-between;gap:10px}nav a{font-size:14px}.hero h1{font-size:30px}.cards{grid-template-columns:1fr}section{padding:50px 6%}}
