*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#050505;font-family:"Inter",system-ui,sans-serif}img{display:block;max-width:100%}a{color:inherit}.page{min-height:100vh;padding:24px 24px 16px}.page__inner{max-width:1392px;margin:0 auto}.topbar{width:min(100%,608px);margin:0 auto 78px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 10px 8px 16px;border-radius:24px;background:#fff;box-shadow:0 24px 60px rgba(228,223,217,.85)}.brand{color:#050505;text-decoration:none;font-family:"Roboto",sans-serif;font-size:28px;font-weight:700;line-height:70%;letter-spacing:.02em}.topbar__button{display:inline-flex;align-items:center;justify-content:center;min-width:109px;min-height:53px;padding:0 18px;border-radius:16px;background:#000;color:#fff;text-decoration:none;font-size:16px;font-weight:400;transition:transform .2s ease,background-color .2s ease}.topbar__button:hover{transform:translateY(-1px);background:#111}.hero{max-width:760px;margin:0 auto 49px;text-align:center}.hero h1{margin:0;font-size:clamp(32px,4.3vw,48px);line-height:120%;letter-spacing:-0.045em;font-weight:800}.hero h1 span{display:block}.hero p{max-width:720px;margin:28px auto 0;font-size:16px;line-height:1.8}.catalog{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:24px;align-items:end}.reference-card{margin:0}.reference-card img{width:100%;height:auto}.contacts{display:grid;gap:12px;align-self:end}.contact-card{padding:22px 24px 21px;border-radius:23px;background:#1f1f1f;color:#fff}.contact-card p{margin:0;font-size:17px;line-height:1.25}.contact-card a{color:#fff;text-decoration:underline;text-underline-offset:.12em}@media(max-width: 1180px){.page{padding-bottom:40px}.topbar{margin-bottom:56px}.hero{margin-bottom:40px}.catalog{grid-template-columns:repeat(2, minmax(0, 1fr));align-items:start}.contacts{grid-column:1/-1;grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(max-width: 720px){.page{padding:16px 16px 32px}.topbar{margin-bottom:44px;padding:10px 10px 10px 14px}.brand{font-size:42px}.topbar__button{min-width:100px;min-height:48px;font-size:16px}.hero{margin-bottom:28px}.hero p{margin-top:24px;font-size:16px;line-height:1.65}.catalog{grid-template-columns:1fr}.contacts{grid-column:auto;grid-template-columns:1fr}.contact-card{padding:20px 18px}.contact-card p{font-size:16px}}
