:root{font-family:system-ui,sans-serif;color:#173335;background:#f4f7f6;line-height:1.6}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:1080px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;gap:20px;align-items:center}a{color:#006b60}header a{text-decoration:none;font-weight:750}.brand{font-size:22px}.hero{padding:42px 0 26px}h1{font-size:clamp(30px,5vw,48px);line-height:1.15;letter-spacing:-1px;margin:10px 0 20px}h2{line-height:1.3}p{max-width:720px}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:2px;color:#006b60;font-weight:700}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card,.panel{padding:25px;background:white;border:1px solid #dae4e1;border-radius:18px}.card h2{font-size:19px;margin-top:0}.tag{font-size:13px;background:#dff2ed;padding:4px 10px;border-radius:20px}.layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-weight:650}input{font:inherit;width:100%;padding:12px;border:1px solid #849b96;border-radius:8px;background:white}input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #df9d25;outline-offset:3px}button,.button{display:inline-block;font:inherit;background:#006b60;color:white;border:0;padding:13px 22px;border-radius:9px;font-weight:700;cursor:pointer;text-decoration:none}button{margin-top:24px}.result{margin-top:20px;padding:20px;background:#e4f4ee;border-radius:10px;min-height:80px;font-weight:650}.error{background:#fff1e8;color:#8b3017}.muted,small{color:#49615d}footer{font-size:13px;border-top:1px solid #dae4e1;margin-top:48px}.ad{border:1px dashed #93aaa3;padding:16px;border-radius:12px;margin:20px 0;background:#fff}.ad small{display:block;text-transform:uppercase}.ad img{max-width:100%;height:auto}.search{max-width:640px;margin-bottom:28px}[hidden]{display:none!important}@media(max-width:700px){header,main,footer{padding:18px}.grid,.layout{grid-template-columns:1fr}.hero{padding-top:20px}.fields{gap:12px}header{align-items:flex-start}.brand{font-size:18px}}

@media(max-width:480px){.fields{grid-template-columns:minmax(0,1fr)}.panel{padding:20px}}
