:root { color-scheme: light; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #202c27; background: #f4f5f1; }
* { box-sizing: border-box; }
body { margin: 0; }
main { max-width: 520px; margin: 48px auto; background: #fff; }
header { padding: 38px 32px 30px; background: #202c27; color: #fff; border-top: 4px solid #9db89b; }
h1 { margin: 0 0 22px; font-size: clamp(32px, 8vw, 40px); font-weight: 650; letter-spacing: -1.3px; }
h1 span { color: #b9cdb0; font-weight: 400; }
a { color: inherit; text-underline-offset: 4px; }
address { font-style: normal; font-size: 16px; line-height: 1.6; color: #e0e6de; }
address a { display: inline-block; text-decoration: none; }
.business-phone { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; font-size: 17px; }
.business-email { display: flex; align-items: center; min-height: 44px; width: fit-content; font-size: 16px; overflow-wrap: anywhere; }
.contacts { padding: 0 32px; }
section { padding: 26px 0; border-bottom: 1px solid #e0e5df; }
section:last-child { border-bottom: 0; }
h2 { font-size: 21px; font-weight: 600; letter-spacing: -.35px; margin: 0; }
.role { font-size: 14px; color: #626c64; margin: 5px 0 0; }
.phone { display: flex; align-items: center; min-height: 44px; width: fit-content; font-size: 16px; }
.save { display: flex; align-items: center; justify-content: space-between; min-height: 46px; margin-top: 7px; padding: 11px 16px; border: 1px solid #d4dfd1; border-radius: 5px; background: #edf3e9; color: #29482f; font-size: 15px; font-weight: 600; text-decoration: none; }
.save span { font-size: 20px; line-height: 1; }
.save:hover { background: #dfead9; }
.save-all { margin-top: 18px; }
a:focus-visible { outline: 3px solid #7c9c6b; outline-offset: 4px; }
@media (max-width: 560px) { main { margin: 0 auto; min-height: 100svh; } header { padding: 28px 26px 22px; } .contacts { padding: 0 26px; } section { padding: 23px 0; } }
@media print { main { margin: 0 auto; } }
