/* Qlevel reference: navy #0B1B39, magenta #C4007A, Open Sans. */
@import url('/assets/qlevel-fonts-20261015.css');
html:root {
  --sans:'Open Sans',Arial,sans-serif; --serif:'Open Sans',Arial,sans-serif;
  --background:#fff!important; --paper:#fff!important; --foreground:#0b1b39!important;
  --ink:#0b1b39!important; --primary:#c4007a!important; --primary-foreground:#fff!important;
  --secondary:#f7eaf2!important; --secondary-foreground:#0b1b39!important;
  --muted:#f3f5f8!important; --muted-foreground:#536079!important;
  --accent:#f7eaf2!important; --accent-foreground:#0b1b39!important;
  --border:#dbe0e9!important; --input:#a7b0c1!important; --line:#dbe0e9!important;
  --ring:#c4007a!important; --olive:#c4007a!important; --lime:#c4007a!important;
  --card:#f3f5f8!important; --hero-tint:#f3f5f8!important; --on-accent:#fff!important;
  --deep:#0b1b39!important; --subtle-surface:#fff!important;
}
html[data-appearance=dark] {
  --background:#091329!important; --paper:#091329!important; --foreground:#f5f7fc!important;
  --ink:#f5f7fc!important; --primary:#e538a2!important;
  --muted:#13223d!important; --muted-foreground:#b5c1d5!important; --card:#13223d!important;
  --accent:#26304a!important; --accent-foreground:#fff!important;
  --border:#35435d!important; --input:#67738b!important; --line:#35435d!important;
  --olive:#f06fbd!important; --lime:#c4007a!important; --hero-tint:#13223d!important;
  --subtle-surface:#13223d!important;
}
body,button,input,select,textarea {font-family:var(--sans)}
h1,h2,h3 {font-family:var(--sans);font-weight:650;letter-spacing:-.035em}
h1 em,h2 em {font-style:normal}
.site-header {background:var(--paper);border-bottom:1px solid var(--line)}
.site-header .header-brand>.brand {margin-bottom:0}
.blog-header .header-inner {gap:22px}
.blog-header .desktop-nav {gap:18px}
.blog-header .header-actions {gap:15px}
.desktop-nav a:hover,.quiet-link:hover {color:var(--olive)}
.qlevel-badge {display:flex;align-items:center;gap:12px;flex-shrink:0}
.qlevel-badge img {width:54px;height:50px;object-fit:contain;background:#fff;border-radius:4px;padding:3px}
.qlevel-badge>span {font-size:10px;line-height:1.5;color:var(--muted-foreground)}
.qlevel-badge strong {display:block;font-size:15px;font-weight:700;color:var(--ink)}
.qlevel-header {padding-left:20px;border-left:1px solid var(--line)}
.hero {background:var(--card);border-radius:12px;gap:36px;padding:44px 40px}
.hero .regional-headline .hero-title {font-size:clamp(28px,4.05vw,56px);font-weight:650;line-height:1.16;letter-spacing:-.04em}
.hero .hero-title>em {font-style:normal;color:var(--olive);font-weight:600}
html[data-appearance] .hero .region-word {background:none;-webkit-text-fill-color:currentColor;color:var(--olive)}
.hero-image {border-radius:8px;height:480px}
.hero-image:after {display:none}
.hero-image img {object-position:68% 50%}
.home-job-photo {position:relative;align-self:start;aspect-ratio:1/1}
.home-job-photo img {object-position:50% 43%}
.hero .photo-caption {border-radius:6px;background:#0b1b39;color:#fff}
.hero .photo-caption p {color:#fff}
.hero .caption-check {background:#c4007a;color:#fff}
.hero-actions [data-ui-button],.header-cta[data-ui-button],.footer-invitation [data-ui-button] {background:#c4007a;color:#fff;box-shadow:none}
.hero-actions [data-ui-button][data-variant=default] {color:#fff}
[data-ui-button],.vacancy-cta {border-radius:6px}
.hero-actions [data-ui-button]:hover,.header-cta[data-ui-button]:hover,.footer-invitation [data-ui-button]:hover {background:#a90069}
.callback-panel {border-radius:8px;background:var(--paper);border:1px solid var(--line);padding:18px}
.hero-copy>div>p {margin-top:18px}
.hero-actions {margin-top:22px}
.hero-copy .contact-links {margin-top:20px}
.qlevel-partnership {margin-top:28px;margin-bottom:16px}
.qlevel-partnership-inner {display:flex;align-items:center;gap:32px;padding:26px 32px;background:#0b1b39;border-radius:10px;border-left:4px solid #c4007a;color:#fff}
.qlevel-partner-brands {display:flex;align-items:center;gap:18px;background:#fff;padding:5px 20px;border-radius:6px;flex-shrink:0}
.qlevel-partner-brands img {object-fit:contain;width:132px;height:70px}
.qlevel-partner-brands img:last-child {width:76px}
.qlevel-brand-divider {height:38px;width:1px;background:#dbe0e9}
.qlevel-partner-copy {flex:1;min-width:0}
.qlevel-partner-copy h2 {font-size:22px;line-height:1.3;letter-spacing:-.02em;color:#fff}
.qlevel-partner-copy p {font-size:12px;line-height:1.7;color:#c6d0e3;margin-top:8px}
.qlevel-partner-link {font-size:12px;color:#fff;text-decoration:underline;text-underline-offset:5px;flex-shrink:0;padding:12px 0}
.home-job-card,.job-card-editorial {background:var(--paper);border-radius:10px;border-color:var(--line);box-shadow:0 4px 18px #0b1b3905}
.home-job-photo,.home-job-student,.home-job-details,.vacancy-student {border-radius:6px}
.home-job-card .home-job-student,.vacancy-student {background:var(--accent);border-color:var(--line)}
.home-job-card .home-job-student,.home-job-card .home-job-student :is(p,strong,span,small) {color:var(--foreground)}
.home-job-card .home-job-student :is(p,.home-student-month) {border-color:var(--line)}
.home-job-card .home-job-pay>div:not(.home-job-month)>p {color:var(--foreground)}
html[data-appearance] .home-job-card .home-job-month p,.home-job-card .home-job-student .home-student-month-total :is(span,strong) {color:var(--olive)}
/* Detail pages have their own fixed legacy colors; theme them explicitly. */
.detail-unified .unified-pay {background:#0b1b39;color:#fff;border:1px solid #35435d;border-top:3px solid #c4007a;border-radius:10px}
.detail-unified .unified-pay .vacancy-pay {color:#fff}
.detail-unified .unified-pay :is(p,small,.vacancy-rate-label,.vacancy-pay-label) {color:#c6d0e3}
.detail-unified .unified-pay .vacancy-student {background:#f7eaf2;color:#0b1b39}
.detail-unified .unified-pay .vacancy-student :is(p,small,.vacancy-rate-label,.vacancy-rate) {color:#0b1b39}
.detail-unified .unified-pay .vacancy-student .vacancy-rate strong {color:#c4007a}
.detail-unified .vacancy-visual {background:var(--card)}
.detail-unified .unified-next {background:var(--card);border-radius:10px}
html[data-appearance=dark] .detail-unified .unified-pay {background:#13223d}
.audience-option.selected {background:var(--accent);border-color:var(--olive)}
.city-explorer {background:#0b1b39;--lime:#ef6fbd;--on-accent:#0b1b39}
.partners-panel,.faq [data-slot=accordion-item],.step-number {border-radius:8px}
.site-footer {--paper:#0b1b39;--ink:#fff;--foreground:#fff;--muted-foreground:#bcc7da;--line:#35435d;--card:#13223d;--olive:#f06fbd;--on-accent:#fff;background:#0b1b39;border-radius:0}
.qlevel-footer {margin:22px 0 8px}
.qlevel-footer>span {color:#bcc7da}
.qlevel-footer strong {color:#fff}
:focus-visible {outline:2px solid var(--olive);outline-offset:4px}
@media(min-width:1101px) and (max-width:1350px){.blog-header .header-cta{display:none}.blog-header .desktop-nav{gap:15px}.blog-header .header-inner{gap:18px}}
@media(max-width:1100px){.qlevel-header>span{display:none}.qlevel-header{padding-left:14px}.qlevel-partnership-inner{gap:22px;padding:22px}.qlevel-partner-link{display:none}.qlevel-partner-copy h2{font-size:20px}}
@media(max-width:760px){
 .blog-header .header-inner{height:auto;min-height:72px;flex-wrap:wrap;gap:8px 14px;padding-bottom:12px}
 .qlevel-header{order:3;width:100%;justify-content:center;padding:10px 0 0;border-left:0;border-top:1px solid var(--line);gap:10px}
 .qlevel-header>span{display:flex;align-items:baseline;gap:5px;font-size:11px}
 .qlevel-header strong{font-size:12px}
 .qlevel-header img{width:35px;height:32px;padding:1px}
 .blog-header .header-actions{margin-left:auto;gap:10px}
 .hero{padding:28px 22px;gap:26px;margin-top:20px;border-radius:8px}
 .hero .regional-headline .hero-title{font-size:clamp(27px,7.5vw,43px)}
 .hero-image{height:330px;border-radius:6px}
 .hero-actions{gap:16px}
 .hero-actions [data-ui-button]{padding-inline:18px}
 .qlevel-partnership{margin-top:20px;margin-bottom:8px}
 .qlevel-partnership-inner{flex-direction:column;align-items:flex-start;gap:20px;padding:24px}
 .qlevel-partner-brands{padding:2px 16px;gap:16px}
 .qlevel-partner-brands img{width:112px;height:62px}
 .qlevel-partner-brands img:last-child{width:65px}
 .qlevel-partner-copy h2{font-size:22px;max-width:250px}
 .qlevel-partner-link{display:block;padding:0}
 .home-job-card{border-radius:8px}
 .home-job-top .home-job-photo{display:block;aspect-ratio:3/2;width:100%;margin-bottom:20px}
}
