* { margin: 0; padding: 0; box-sizing: border-box; } body { background-color: #eef2f5; font-family: 'Segoe UI', Roboto, system-ui, -apple-system, sans-serif; line-height: 1.5; color: #1a2634; padding: 2rem 1rem; } .resume-card { max-width: 1100px; margin: 0 auto; background-color: #ffffff; box-shadow: 0 10px 25px rgba(0, 35, 70, 0.1); border-radius: 12px; overflow: hidden; border-top: 6px solid #0b3b5c; } /* header section */ .header { background-color: #f9fcff; padding: 2rem 2.5rem 1.5rem 2.5rem; border-bottom: 1px solid #d9e4ed; } .name { font-size: 2.8rem; font-weight: 500; letter-spacing: -0.5px; color: #0b3b5c; margin-bottom: 0.5rem; line-height: 1.2; } .subhead { display: flex; flex-wrap: wrap; gap: 1.5rem 2.5rem; margin-top: 0.75rem; color: #2f4858; font-size: 1rem; } .subhead-item { display: flex; align-items: center; gap: 6px; } .subhead-item i { width: 20px; color: #1e5a7a; font-weight: 400; opacity: 0.8; } .badge { background-color: #e1edf7; color: #0b3b5c; padding: 0.3rem 1rem; border-radius: 30px; font-size: 0.85rem; font-weight: 600; display: inline-block; margin-right: 10px; margin-bottom: 6px; border: 1px solid #b9d1e4; } .job-title { font-size: 1.8rem; font-weight: 400; color: #1d4e6b; margin: 1rem 0 0.5rem 0; border-bottom: 2px solid #b0c8da; padding-bottom: 0.5rem; } .specialization-block { background: #e9f0f7; padding: 1rem 2rem; border-radius: 40px; margin: 0.5rem 0 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; } .specialization-block span { font-weight: 600; color: #0b3b5c; margin-right: 0.5rem; } .spec-list { display: flex; flex-wrap: wrap; gap: 0.6rem 1.5rem; } .spec-item { color: #1e3b4f; border-left: 3px solid #1e5a7a; padding-left: 10px; font-size: 0.98rem; } .grid-2 { display: grid; grid-template-columns: 1fr 2.2fr; gap: 2rem; } /* sidebar */ .sidebar { background-color: #f7fafd; padding: 2rem 1.8rem; border-right: 1px solid #cddeec; } .main-content { padding: 2rem 2rem 2rem 0.5rem; } .section-title { font-size: 1.35rem; font-weight: 600; color: #0b3b5c; border-bottom: 2px solid #b6d0e2; padding-bottom: 6px; margin: 1.8rem 0 1.2rem 0; letter-spacing: -0.2px; } .section-title:first-of-type { margin-top: 0; } .info-row { margin-bottom: 0.75rem; display: flex; align-items: baseline; } .info-label { width: 100px; font-weight: 500; color: #1e5a7a; } .info-value { color: #152b39; } .skill-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.5rem; } .skill-tag { background: white; border: 1px solid #b0c5d6; padding: 0.25rem 1rem; border-radius: 30px; font-size: 0.85rem; color: #0f3a52; font-weight: 500; box-shadow: 0 1px 2px rgba(0, 20, 40, 0.05); } .lang-item { display: flex; justify-content: space-between; border-bottom: 1px dashed #b8cbd9; padding: 0.5rem 0; } .lang-name { font-weight: 600; color: #0f3f5c; } .lang-level { color: #1d5b81; font-style: italic; } /* опыт */ .job-entry { margin-bottom: 1.8rem; } .job-header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; margin-bottom: 0.25rem; } .job-company { font-size: 1.2rem; font-weight: 700; color: #0b3b5c; } .job-period { background: #dbe7f2; padding: 0.2rem 1rem; border-radius: 30px; font-size: 0.75rem; font-weight: 600; color: #103a52; letter-spacing: 0.3px; } .job-position { font-weight: 600; color: #1f5777; margin: 0.15rem 0 0.4rem 0; font-size: 1.05rem; } .job-desc { color: #1e333f; font-size: 0.93rem; margin-left: 0.2rem; padding-left: 0.8rem; border-left: 3px solid #9bb7d0; white-space: pre-line; } .compact-mb { margin-bottom: 0.3rem; } hr { border: 0; border-top: 1px solid #c9dae7; margin: 1rem 0; } .about-text { background: #f0f6fc; padding: 1.5rem 2rem; border-radius: 50px 8px 50px 8px; color: #103c58; font-size: 1.1rem; border-left: 6px solid #1f6a92; margin: 2rem 0 1rem; } .footer-note { font-size: 0.8rem; color: #5e778a; text-align: right; border-top: 1px solid #b9cfdf; padding-top: 0.8rem; margin-top: 1rem; } a { color: #1b5f89; text-decoration: none; border-bottom: 1px dotted #8eb1c7; } a:hover { border-bottom: 2px solid #0b3b5c; } @media (max-width: 750px) { .grid-2 { grid-template-columns: 1fr; } .main-content { padding: 2rem 1.5rem; } .sidebar { border-right: 0; } .name { font-size: 2.2rem; } }