*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1d2a27;background:#fff}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}a{color:#0b5d4b}
.nav{border-bottom:1px solid #e3ebe8;background:#fff;position:sticky;top:0;z-index:5}.navin{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 20px}
.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:19px;text-decoration:none;color:#1d2a27}
nav{display:flex;flex-wrap:wrap;gap:14px;align-items:center}nav a{text-decoration:none;color:#1d2a27;font-size:15px}
.btn{display:inline-block;background:#0b5d4b;color:#fff!important;border:0;border-radius:8px;padding:12px 20px;font-weight:600;text-decoration:none;cursor:pointer;font-size:16px}.btn.sm{padding:7px 14px;font-size:14px}
.hero{background:#0b5d4b;color:#fff;padding:64px 0}.hero h1{font-size:clamp(28px,5vw,46px);line-height:1.15;margin:0 0 14px}.hero p{font-size:19px;max-width:680px;margin:0 0 24px}.hero .btn{background:#fff;color:#0b5d4b!important}
section{padding:56px 0}h2{font-size:30px;margin:0 0 20px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.card{border:1px solid #e3ebe8;border-radius:12px;padding:20px}.card h3{margin:6px 0 8px}.step{display:inline-block;background:#0b5d4b;color:#fff;border-radius:50%;width:30px;height:30px;text-align:center;line-height:30px;font-weight:700}
.alt{background:#f3f8f6}.price{max-width:420px;text-align:center}.price .amt{font-size:48px;font-weight:800}.note{font-size:14px;color:#55635f}
details{border-bottom:1px solid #e3ebe8;padding:14px 0}summary{font-weight:600;cursor:pointer}
form{max-width:520px}label{display:block;font-weight:600;margin:14px 0 6px}input,select{width:100%;padding:11px;border:1px solid #b9c9c4;border-radius:8px;font-size:16px}
.hp{position:absolute;left:-9999px}.msg{padding:12px;border-radius:8px;margin:12px 0}.ok{background:#e1f4ec}.err{background:#fde8e8}
.pw{display:flex;gap:6px}.pw button{white-space:nowrap;padding:0 12px;border:1px solid #b9c9c4;background:#fff;border-radius:8px;cursor:pointer}
table{border-collapse:collapse;width:100%;font-size:14px}td,th{border:1px solid #e3ebe8;padding:6px;text-align:left}
.foot{text-align:center;font-size:12.5px;color:#6b7774;padding:22px 10px;border-top:1px solid #e3ebe8}
