/* Current vacancies */
.vacancies-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.vacancy-card{min-width:0;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s}.vacancy-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #10253e0b}.vacancy-card-photo{display:block;height:185px;position:relative;overflow:hidden;background:#eaf0f8}.vacancy-card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10253e80,transparent 60%);pointer-events:none}.vacancy-card-photo img{object-position:center 45%;transition:transform .5s}.vacancy-card:hover .vacancy-card-photo img{transform:scale(1.035)}.vacancy-card-photo>span{position:absolute;bottom:15px;left:20px;right:15px;color:white;z-index:1;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:500}.vacancy-card-photo .ui-icon{width:16px;height:16px}.vacancy-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.vacancy-card-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#8190a4;font-size:9px;margin-bottom:15px}.vacancy-card-meta>span:first-child{color:var(--blue);font-weight:600}.vacancy-card h3{font-size:21px;line-height:1.35;min-height:57px}.vacancy-card h3 a:hover{color:var(--blue)}.vacancy-card-summary{font-size:12px;line-height:1.85;margin:14px 0 20px;min-height:67px}.vacancy-card-pay{font-family:Manrope,sans-serif;font-size:21px;letter-spacing:-.035em;color:var(--navy);line-height:1.35;margin-top:auto}.vacancy-card-shift{font-size:10px;color:#7c8ba0;margin-top:10px;margin-bottom:19px;line-height:1.7}.vacancy-card-legal{background:#f3f6fa;border:1px solid #e9eef5;border-radius:3px;padding:11px 12px;color:#677b96;font-size:9px;line-height:1.75;margin-bottom:19px}.vacancy-card-legal>span{display:block}.vacancy-card-legal>span:first-child{font-weight:600;color:#496586}.vacancy-card-legal b{font-weight:600}.vacancy-card-link{display:flex;justify-content:space-between;align-items:center;font-size:12px}.vacancy-card-link .arrow{font-size:20px}.vacancy-hero{background:#10253e;color:white;padding:28px 0 44px}.vacancy-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:10px;color:#91a9c7;margin-bottom:30px}.vacancy-breadcrumb a:hover{color:white}.vacancy-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;gap:75px}.vacancy-hero .eyebrow{font-size:9px;letter-spacing:.12em;color:#99b8e2;margin-bottom:16px}.vacancy-hero h1{font-size:clamp(32px,3.5vw,44px);line-height:1.2;letter-spacing:-.04em;max-width:760px}.vacancy-location{display:flex;align-items:center;gap:8px;font-size:13px;color:#c9d8ec;margin:18px 0}.vacancy-location .ui-icon{height:17px;width:17px;color:#8fb7f5}.vacancy-intro{font-size:13px;color:#aabed8;line-height:1.9;max-width:570px;margin:18px 0 22px}.vacancy-hero-pay{font-family:Manrope,sans-serif;font-size:27px;font-weight:600;letter-spacing:-.025em;color:#9dc3ff}.vacancy-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:24px}.vacancy-hero-actions .btn{font-size:12px;padding:15px 21px;gap:18px}.vacancy-hero-actions>a:not(.btn){display:flex;align-items:center;gap:8px;color:#bdcee5;font-size:11px}.vacancy-hero-actions>a:not(.btn) .ui-icon{height:14px;width:14px}.vacancy-hero-photo{height:310px;position:relative;border-radius:5px;overflow:hidden;background:#183451}.vacancy-hero-photo img{object-position:center 45%;filter:saturate(.8)}.vacancy-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10253e90,transparent 50%);pointer-events:none}.vacancy-hero-photo>span{position:absolute;bottom:17px;left:20px;color:#e1eaf7;z-index:1;font-size:8px;letter-spacing:.14em}.job-legal-banner{border:1px solid #dce7f7;background:#f2f6fc;border-radius:4px;padding:19px 24px;margin:27px 0 0;display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:11px;color:#526d91}.job-legal-banner>div{display:flex;flex-direction:column;gap:3px}.job-legal-banner>div>span:first-child{font-weight:650;font-size:12px;color:#2e527e}.job-legal-banner>div>span+span{font-size:10px;color:#8194ad}.job-legal-banner>p{color:#526d91;font-size:11px;margin:0;line-height:1.8}.job-legal-banner strong{font-weight:600}.vacancy-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:85px;padding-top:38px;padding-bottom:75px;align-items:start}.vacancy-detail-main{min-width:0}.vacancy-contract{display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:30px}.vacancy-contract>span{font-size:10px;color:#8391a6}.vacancy-contract>strong{font-size:14px;font-weight:600;line-height:1.7}.vacancy-section{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid #e7edf4;scroll-margin-top:20px}.vacancy-section h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin-bottom:17px}.vacancy-section p{font-size:14px;line-height:1.95;color:#536980;margin:12px 0}.vacancy-section ul{padding-left:21px;margin:16px 0}.vacancy-section li{font-size:14px;line-height:1.9;color:#536980;padding-left:4px;margin:10px 0}.vacancy-section li::marker{color:#89a5ce}.vacancy-section .vacancy-pay-note{font-size:12px;line-height:1.85;color:#8290a4;margin-top:20px;padding-top:17px;border-top:1px solid #e9eef5}.vacancy-section .text-link{font-size:12px;display:inline-block;margin-top:8px}.vacancy-clarification{padding:20px 23px;background:#f0f5ff;border-left:2px solid #6e9be8;margin-bottom:33px;border-radius:0 4px 4px 0}.vacancy-clarification h2{font-size:17px;line-height:1.4;letter-spacing:-.02em}.vacancy-clarification p{font-size:13px;color:#5d7697;line-height:1.85;margin:12px 0 0}.vacancy-sidebar{position:sticky;top:25px}.vacancy-sidebar-offer{background:#10253e;color:white;border-radius:5px;padding:25px;margin-bottom:22px}.vacancy-sidebar-offer>.eyebrow{font-size:8px;color:#8fb0dd;margin-bottom:15px}.vacancy-sidebar-offer h2{font-size:23px;line-height:1.35;letter-spacing:-.035em}.vacancy-sidebar-offer>p{color:#9eb6d3;font-size:12px;margin:17px 0}.vacancy-sidebar-offer>strong{font-family:Manrope,sans-serif;display:block;color:#a5c9ff;font-size:23px;line-height:1.4;letter-spacing:-.04em}.vacancy-sidebar-contract{display:block;font-size:10px;color:#91a9c6;margin-top:11px}.vacancy-sidebar-offer>.btn{width:100%;font-size:11px;gap:14px;padding:14px 17px;margin-top:25px;min-height:48px;white-space:normal}.vacancy-sidebar-offer small{display:block;font-size:9px;line-height:1.9;color:#9eb6d3;margin-top:17px}.vacancy-sidebar .recruiter-card{padding:22px}.vacancy-sidebar .recruiter-monogram{width:53px;height:61px;font-size:33px}.vacancy-sidebar .recruiter-identity{gap:13px;padding-bottom:20px}.vacancy-sidebar .recruiter-identity h3{font-size:23px}.vacancy-sidebar .recruiter-identity .eyebrow{font-size:8px}.vacancy-sidebar .language-badges{gap:4px}.vacancy-sidebar .language-badges>span{font-size:7px;padding:2px 4px}.vacancy-sidebar .language-badges>.ui-icon{width:12px;height:12px}.vacancy-sidebar .recruiter-phone{font-size:19px;gap:10px}.vacancy-sidebar .recruiter-mail{font-size:11px;gap:10px}.vacancy-sidebar .recruiter-phone>.ui-icon,.vacancy-sidebar .recruiter-mail>.ui-icon{width:15px;height:15px}.vacancy-sidebar .recruiter-phone>.arrow,.vacancy-sidebar .recruiter-mail>.arrow{font-size:13px}.vacancy-bottom-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px}.vacancy-bottom-actions>.btn{font-size:12px}.vacancy-bottom-actions>.text-link{font-size:11px}.job-application-context{border-left:2px solid var(--blue);padding:14px 16px;background:#edf3fd;border-radius:0 4px 4px 0;margin:23px 0}.job-application-context>span{display:block;font-size:9px;color:#6b85a9;margin-bottom:7px}.job-application-context>strong{display:block;font-size:14px;font-weight:600;line-height:1.6}.job-application-context>small{display:block;margin-top:9px;font-size:10px;color:#6d85a5;line-height:1.7}
@media(max-width:1150px){.vacancies-grid{gap:18px}.vacancy-card-body{padding:21px}.vacancy-card h3{font-size:19px;min-height:52px}.vacancy-card-pay{font-size:19px}.vacancy-card-summary{font-size:11px;min-height:82px}.vacancy-card-legal{font-size:8px}.vacancy-hero-grid{gap:45px}.vacancy-hero h1{font-size:38px}.vacancy-detail-grid{gap:50px;grid-template-columns:minmax(0,1fr) 300px}.vacancy-hero-photo{height:295px}.vacancy-sidebar-offer{padding:23px}.vacancy-sidebar-offer h2{font-size:21px}.vacancy-sidebar .recruiter-card{padding:20px}.vacancy-sidebar .recruiter-phone{font-size:18px}.vacancy-sidebar .recruiter-mail{font-size:10px}}
@media(max-width:900px){.vacancies-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vacancy-card-summary{min-height:65px}.vacancy-card h3{font-size:21px;min-height:57px}.vacancy-card-pay{font-size:21px}.vacancy-card-legal{font-size:9px}.vacancy-hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:30px}.vacancy-hero h1{font-size:32px}.vacancy-hero-photo{height:290px}.vacancy-hero-pay{font-size:24px}.vacancy-detail-grid{grid-template-columns:minmax(0,1fr) 260px;gap:35px}.vacancy-sidebar-offer h2{font-size:19px}.vacancy-sidebar-offer>strong{font-size:20px}.vacancy-sidebar .recruiter-card{padding:18px}.vacancy-sidebar .recruiter-monogram{display:none}.vacancy-sidebar .recruiter-phone{font-size:17px}.job-legal-banner{gap:20px}}
@media(max-width:700px){.vacancy-hero-grid{grid-template-columns:1fr}.vacancy-hero-photo{display:none}.vacancy-hero h1{font-size:36px}.vacancy-hero .vacancy-intro{max-width:none}.vacancy-detail-grid{grid-template-columns:1fr;gap:40px;padding-bottom:50px}.vacancy-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:20px}.vacancy-sidebar-offer{margin:0}.vacancy-sidebar .recruiter-card{height:fit-content}.vacancy-sidebar .recruiter-monogram{display:flex}.vacancy-sidebar .recruiter-identity{gap:10px}.vacancy-sidebar .recruiter-identity h3{font-size:22px}.vacancy-sidebar .recruiter-phone{font-size:17px}.vacancy-sidebar .recruiter-mail{font-size:10px}.job-legal-banner{align-items:flex-start;flex-direction:column;gap:13px}}
@media(max-width:560px){.vacancies-grid{grid-template-columns:1fr;gap:23px}.vacancy-card-photo{height:190px}.vacancy-card-body{padding:24px}.vacancy-card-meta{font-size:10px;gap:12px}.vacancy-card h3{font-size:23px;min-height:0}.vacancy-card-summary{min-height:0;font-size:13px;line-height:1.85;margin:15px 0 22px}.vacancy-card-pay{font-size:24px}.vacancy-card-shift{font-size:11px;margin-bottom:20px}.vacancy-card-legal{font-size:10px;padding:12px 13px;line-height:1.8}.vacancy-card-link{font-size:13px}.vacancy-card-photo>span{font-size:12px}.vacancy-hero{padding:23px 0 32px}.vacancy-breadcrumb{font-size:9px;gap:8px;margin-bottom:26px}.vacancy-hero .eyebrow{font-size:8px;margin-bottom:16px}.vacancy-hero h1{font-size:33px;line-height:1.23}.vacancy-location{font-size:12px;margin:17px 0}.vacancy-intro{font-size:12px;line-height:1.9;margin-bottom:22px}.vacancy-hero-pay{font-size:26px}.vacancy-hero-actions{gap:17px;margin-top:24px}.vacancy-hero-actions .btn{font-size:11px;gap:14px;padding:14px 17px;min-height:47px}.vacancy-hero-actions>a:not(.btn){font-size:10px;gap:7px}.job-legal-banner{margin-top:20px;padding:18px 20px;gap:11px}.job-legal-banner>div>span:first-child{font-size:12px}.job-legal-banner>div>span+span{font-size:10px}.job-legal-banner>p{font-size:10px}.vacancy-detail-grid{padding-top:26px}.vacancy-contract{margin-bottom:25px;padding-bottom:23px}.vacancy-contract strong{font-size:13px}.vacancy-section{padding-bottom:22px;margin-bottom:25px}.vacancy-section h2{font-size:24px;margin-bottom:15px}.vacancy-section p,.vacancy-section li{font-size:14px;line-height:1.9}.vacancy-section li{margin:10px 0}.vacancy-section .vacancy-pay-note{font-size:11px;line-height:1.9;margin-top:18px}.vacancy-section .text-link{font-size:11px}.vacancy-clarification{padding:19px 21px;margin-bottom:27px}.vacancy-clarification h2{font-size:18px}.vacancy-clarification p{font-size:12px}.vacancy-bottom-actions{gap:20px}.vacancy-bottom-actions>.btn{width:100%;justify-content:space-between;font-size:12px}.vacancy-bottom-actions>.text-link{font-size:12px}.vacancy-sidebar{grid-template-columns:1fr;gap:20px}.vacancy-sidebar-offer{padding:25px}.vacancy-sidebar-offer h2{font-size:23px}.vacancy-sidebar-offer>strong{font-size:25px}.vacancy-sidebar-offer small{font-size:10px}.vacancy-sidebar .recruiter-card{padding:25px}.vacancy-sidebar .recruiter-monogram{width:66px;height:75px;font-size:39px}.vacancy-sidebar .recruiter-identity{gap:18px}.vacancy-sidebar .recruiter-identity h3{font-size:27px}.vacancy-sidebar .recruiter-phone{font-size:23px}.vacancy-sidebar .recruiter-mail{font-size:13px}.vacancy-sidebar .language-badges>span{font-size:8px;padding:3px 5px}.vacancy-sidebar .language-badges{gap:5px}.vacancy-sidebar .language-badges>.ui-icon{width:14px;height:14px}.job-application-context{padding:14px 15px}.job-application-context strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.vacancy-card,.vacancy-card-photo img{transition:none}.vacancy-card:hover,.vacancy-card:hover .vacancy-card-photo img{transform:none}}
/* Keep agency identification readable on every card. */
.vacancy-card-legal{font-size:11px;color:#4b6382}.vacancy-card-legal>span:first-child{color:#31527b}@media(max-width:1150px){.vacancy-card-legal{font-size:10px}}@media(max-width:560px){.vacancy-card-legal{font-size:11px}}
