.enterprise-home,
.yop-enterprise-page {
  width: min(var(--yop-container), calc(100% - 32px));
  margin-inline: auto;
  padding: clamp(38px, 7vw, 86px) 0;
}

.enterprise-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: clamp(24px, 5vw, 56px);
  align-items: center;
  min-height: 560px;
}

.enterprise-hero-copy {
  display: grid;
  gap: 1.25rem;
}

.enterprise-hero h1 {
  font-size: clamp(3.4rem, 7vw, 6.8rem);
  margin: 0;
}

.enterprise-hero-copy > p:not(.enterprise-kicker) {
  max-width: 680px;
  font-size: 1.08rem;
}

.enterprise-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.enterprise-pills a,
.enterprise-pills span {
  display: inline-flex;
  align-items: center;
  border-radius: var(--yop-radius-pill);
  padding: .55rem .85rem;
  background: #fff;
  border: 1px solid var(--yop-border);
  color: var(--yop-primary);
  font-weight: 650;
}

.enterprise-mockup {
  padding: 1rem;
  min-height: 360px;
}

.mockup-window {
  background: #fff;
  border: 1px solid var(--yop-border);
  border-radius: 22px;
  overflow: hidden;
  box-shadow: var(--yop-shadow-soft);
}

.mockup-top {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .9rem 1rem;
  border-bottom: 1px solid var(--yop-border);
}

.mockup-top strong { color: var(--yop-primary); margin-right: auto; }
.mockup-top span { width: 10px; height: 10px; border-radius: 999px; background: #dbeafe; }
.mockup-body { display: grid; grid-template-columns: 130px 1fr; gap: 1rem; padding: 1rem; }
.mockup-body nav { display: grid; gap: .5rem; align-content: start; }
.mockup-body nav span { border-radius: 12px; padding: .55rem .7rem; background: #f1f5f9; color: var(--yop-muted); font-weight: 650; }
.mockup-body nav span.active { background: rgba(37, 99, 255, .1); color: var(--yop-primary); }
.mockup-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; }
.mockup-cards article { border: 1px solid var(--yop-border); border-radius: 16px; padding: .65rem; display: grid; gap: .4rem; }
.mockup-cards img { aspect-ratio: 4 / 3; object-fit: cover; border-radius: 12px; background: #eef2ff; }

.enterprise-section-head {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
  align-items: end;
  margin: clamp(32px, 6vw, 72px) 0 1.25rem;
}

.enterprise-section-head h2 { font-size: clamp(2rem, 4vw, 3.6rem); margin: 0; }

.enterprise-why-grid,
.enterprise-stats,
.enterprise-popular-grid,
.enterprise-timeline {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem;
  margin-top: 1.25rem;
}

.enterprise-why-grid article,
.enterprise-stats article,
.enterprise-popular-grid a,
.enterprise-timeline article,
.enterprise-reviews article,
.enterprise-newsletter {
  background: rgba(255,255,255,.92);
  border: 1px solid var(--yop-border);
  border-radius: var(--yop-radius-lg);
  padding: 1.35rem;
  box-shadow: var(--yop-shadow-soft);
}

.enterprise-newsletter {
  margin-top: 2rem;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 1rem;
  background: var(--yop-gradient-primary);
  color: #fff;
}

.enterprise-newsletter p, .enterprise-newsletter strong { color: #fff; }
.enterprise-newsletter form { display: flex; gap: .5rem; }
.enterprise-newsletter button { background: #fff !important; color: var(--yop-primary) !important; }

/* Enterprise light-mode normalization for legacy category pages.
   Backend logic stays untouched; this layer aligns the visual system. */
body:has(.auto-page),
body:has(.ads-page),
body:has(.profis-page),
body:has(.jobs-shell),
body:has(.travel-page),
body:has(.education-page),
body:has(.estate-page),
body:has(.compare-hub-page),
body:has(.yop-compare-page),
body:has(.insurance-page),
body:has(.kfz-page) {
  background:
    radial-gradient(circle at 12% 10%, rgba(37, 99, 255, .12), transparent 34%),
    radial-gradient(circle at 86% 12%, rgba(138, 21, 56, .10), transparent 30%),
    var(--yop-bg) !important;
  color: var(--yop-text) !important;
}

.auto-page,
.ads-page,
.profis-page,
.jobs-shell,
.travel-page,
.education-page,
.estate-page,
.compare-hub-page,
.yop-compare-page,
.insurance-page,
.kfz-page {
  color: var(--yop-text) !important;
}

.auto-page h1, .auto-page h2, .auto-page h3,
.ads-page h1, .ads-page h2, .ads-page h3,
.profis-page h1, .profis-page h2, .profis-page h3,
.jobs-shell h1, .jobs-shell h2, .jobs-shell h3,
.travel-page h1, .travel-page h2, .travel-page h3,
.education-page h1, .education-page h2, .education-page h3,
.estate-page h1, .estate-page h2, .estate-page h3,
.compare-hub-page h1, .compare-hub-page h2, .compare-hub-page h3,
.yop-compare-page h1, .yop-compare-page h2, .yop-compare-page h3,
.insurance-page h1, .insurance-page h2, .insurance-page h3,
.kfz-page h1, .kfz-page h2, .kfz-page h3 {
  color: var(--yop-text) !important;
  font-weight: 700 !important;
  letter-spacing: -.04em;
}

.auto-page p, .auto-page span, .auto-page li,
.ads-page p, .ads-page span, .ads-page li,
.profis-page p, .profis-page span, .profis-page li,
.jobs-shell p, .jobs-shell span, .jobs-shell li,
.travel-page p, .travel-page span, .travel-page li,
.education-page p, .education-page span, .education-page li,
.estate-page p, .estate-page span, .estate-page li,
.compare-hub-page p, .compare-hub-page span, .compare-hub-page li,
.yop-compare-page p, .yop-compare-page span, .yop-compare-page li,
.insurance-page p, .insurance-page span, .insurance-page li,
.kfz-page p, .kfz-page span, .kfz-page li {
  color: var(--yop-muted) !important;
}

.auto-hero-copy, .auto-sell-card, .auto-search-panel, .auto-side-box, .auto-card, .auto-empty, .auto-services article,
.ads-hero-copy, .ads-search-card, .ads-category-card, .ads-filter-card, .ads-listing-card, .ads-empty,
.profis-hero, .profis-card, .profis-panel, .professional-card,
.jobs-hero, .job-card, .job-detail-panel,
.travel-card, .travel-result-card, .travel-panel,
.education-card, .education-panel, .education-offer-card,
.estate-card, .estate-panel, .property-card {
  background: rgba(255, 255, 255, .90) !important;
  border: 1px solid rgba(226, 232, 240, .95) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.auto-sell-card a,
.auto-price-box a,
.auto-search-form button,
.ads-search-card button,
.ads-listing-card a,
.profis-page a[class*="button"],
.profis-page button,
.professional-card a,
.jobs-search button,
.job-card button,
.job-detail-panel a,
.travel-page button,
.travel-page a[class*="button"],
.education-page button,
.education-page a[class*="button"],
.estate-page button {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 34px rgba(37, 99, 255, .20) !important;
}

.auto-sell-actions a:last-child,
.auto-active-filters a,
.auto-brand-list a,
.auto-side-box a,
.portal-topbar nav a,
.jobs-topbar nav a {
  color: var(--yop-primary) !important;
  background: rgba(255, 255, 255, .82) !important;
  border: 1px solid var(--yop-border) !important;
}

.auto-search-form input,
.auto-search-form select,
.ads-search-card input,
.ads-search-card select,
.jobs-search input,
.portal-search input,
.portal-search select,
.education-page input,
.education-page select,
.travel-page input,
.travel-page select {
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

/* Yop-Bildung marketplace and account flows */
.education-page,
.enterprise-form-page,
.enterprise-detail-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  color: var(--yop-text) !important;
}

.education-page .enterprise-hero,
.edu-advisor-card,
.edu-offer-card,
.enterprise-form-card,
.enterprise-upload-box,
.enterprise-detail-card,
.enterprise-side-card,
.enterprise-dashboard-grid .enterprise-panel,
.enterprise-inquiry-card {
  background: rgba(255, 255, 255, .94) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-lg) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.education-page .enterprise-hero,
.enterprise-form-card,
.enterprise-detail-card,
.enterprise-side-card {
  padding: clamp(1.4rem, 4vw, 3rem) !important;
}

.education-page .enterprise-hero {
  grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr) !important;
  min-height: auto !important;
}

.education-page h1,
.enterprise-form-page h1,
.enterprise-detail-page h1 {
  color: var(--yop-text) !important;
  font-weight: 760 !important;
  line-height: .98 !important;
}

.education-page p,
.education-page dd,
.enterprise-form-page p,
.enterprise-detail-page p,
.enterprise-inquiry-card small {
  color: var(--yop-muted) !important;
}

.enterprise-search-wide,
.enterprise-form-grid,
.edu-offer-grid,
.enterprise-dashboard-grid {
  display: grid !important;
  gap: 1rem !important;
}

.enterprise-search-wide {
  grid-template-columns: minmax(220px, 1fr) 220px minmax(180px, 1fr) auto !important;
  align-items: end !important;
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .85rem !important;
}

.enterprise-form-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
}

.edu-offer-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
}

.enterprise-dashboard-grid {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
}

.education-page input,
.education-page select,
.education-page textarea,
.enterprise-form-page input,
.enterprise-form-page select,
.enterprise-form-page textarea {
  width: 100% !important;
  min-height: 52px !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.education-page textarea,
.enterprise-form-page textarea {
  min-height: 140px !important;
}

.edu-offer-card {
  padding: 1.35rem !important;
  display: grid !important;
  gap: .9rem !important;
}

.edu-offer-card > span,
.edu-offer-card.demo > span {
  justify-self: start !important;
  border-radius: var(--yop-radius-pill) !important;
  background: rgba(37, 99, 255, .08) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  color: var(--yop-primary) !important;
  padding: .35rem .7rem !important;
  font-weight: 700 !important;
}

.edu-offer-card h3,
.enterprise-detail-card h2,
.enterprise-side-card h3,
.enterprise-panel h2 {
  color: var(--yop-text) !important;
}

.edu-offer-card dl,
.enterprise-data-list,
.enterprise-stats-row {
  display: grid !important;
  gap: .75rem !important;
}

.edu-offer-card dl {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.edu-offer-card dt,
.enterprise-data-list dt {
  color: var(--yop-text) !important;
  font-size: .78rem !important;
  font-weight: 750 !important;
  text-transform: uppercase !important;
}

.edu-offer-card dd,
.enterprise-data-list dd {
  margin: 0 !important;
}

.enterprise-card-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .7rem !important;
}

.enterprise-card-actions a,
.edu-offer-card > a,
.enterprise-side-card a,
.enterprise-section-head a,
.education-page button,
.enterprise-form-page button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  border-radius: 14px !important;
  padding: .8rem 1.1rem !important;
  background: var(--yop-gradient-primary) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 30px rgba(37, 99, 255, .20) !important;
}

.enterprise-media-strip,
.enterprise-gallery {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
  gap: .75rem !important;
}

.enterprise-media-strip img,
.enterprise-media-strip video,
.enterprise-gallery img,
.enterprise-gallery video {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  border-radius: 16px !important;
  background: #eff6ff !important;
}

.enterprise-detail-page {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 320px !important;
  gap: 1.25rem !important;
  align-items: start !important;
}

.enterprise-stats-row {
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
  margin: 1.4rem 0 !important;
}

.enterprise-stats-row span {
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .12) !important;
  border-radius: 16px !important;
  padding: .9rem !important;
  color: var(--yop-text) !important;
  font-weight: 750 !important;
}

.enterprise-stats-row small {
  display: block !important;
  color: var(--yop-muted) !important;
  font-weight: 500 !important;
}

.account-row,
.enterprise-inquiry-card {
  display: grid !important;
  gap: .45rem !important;
  padding: .95rem !important;
  border-radius: 16px !important;
  border: 1px solid var(--yop-border) !important;
  background: rgba(248, 250, 252, .82) !important;
  margin-bottom: .75rem !important;
}

.account-row b,
.enterprise-inquiry-card h3 {
  color: var(--yop-text) !important;
}

.yop-honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}

.auto-account-card,
.auto-account-intro,
.auto-dashboard-hero,
.auto-dashboard-grid article,
.auto-dashboard-list,
.auto-editor-hero,
.auto-editor-card,
.auto-contact-summary,
.auto-contact-card,
.auto-success-card,
.auto-detail-gallery,
.auto-detail-title aside,
.auto-detail-layout article,
.auto-detail-layout aside,
.auto-inquiry-card {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-lg) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.auto-account-shell,
.auto-dashboard-grid,
.auto-contact-shell,
.auto-detail-layout,
.auto-editor-form {
  gap: 1.25rem !important;
}

.auto-pro-form input,
.auto-pro-form select,
.auto-pro-form textarea,
.auto-editor-form input,
.auto-editor-form select,
.auto-editor-form textarea {
  width: 100%;
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-md) !important;
  min-height: 48px;
  padding: .85rem 1rem;
}

.auto-pro-form label span,
.auto-editor-form label span,
.auto-upload-box span {
  color: var(--yop-text) !important;
  font-weight: 600 !important;
}

.auto-pro-form small,
.auto-editor-form small,
.auto-editor-hint {
  color: var(--yop-muted) !important;
}

.auto-pro-form button,
.auto-editor-actions button,
.auto-editor-hero a,
.auto-dashboard-actions a,
.auto-dashboard-list > a,
.auto-inline-action,
.auto-success-actions a,
.auto-contact-card > a,
.auto-contact-card button,
.auto-detail-hero > a,
.auto-owner-edit,
.auto-detail-title aside a,
.auto-detail-layout aside a {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: var(--yop-radius-md) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.auto-editor-actions a,
.auto-success-actions a + a,
.auto-secondary-action {
  background: #fff !important;
  color: var(--yop-primary) !important;
  border: 1px solid var(--yop-border) !important;
}

.auto-dashboard-row,
.auto-inquiry-card {
  background: rgba(248,250,252,.88) !important;
  border: 1px solid var(--yop-border) !important;
}

.auto-form-error,
.auto-pro-form small {
  color: #B91C1C !important;
}

/* Yop-Immo enterprise pass */
.estate-topbar,
.estate-results-hero,
.estate-detail-main,
.estate-contact-card,
.estate-dashboard-hero,
.estate-dashboard-card,
.estate-contact-flow-card,
.estate-contact-success-card,
.estate-inbox-card,
.estate-editor-hero,
.estate-editor-card,
.estate-account-card,
.searchers-hero,
.searchers-search-card,
.searchers-services article,
.searchers-property-card,
.searchers-owner-strip {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.estate-topbar {
  border-radius: 0 !important;
  box-shadow: 0 10px 30px rgba(15,23,42,.05) !important;
}

.estate-nav a,
.estate-chip,
.estate-back,
.estate-brand,
.estate-inline-action,
.estate-secondary-link,
.searchers-actions a,
.searchers-owner-strip a {
  color: var(--yop-primary) !important;
  background: rgba(255,255,255,.86) !important;
  border: 1px solid var(--yop-border) !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.estate-nav a:hover,
.estate-nav a.active,
.estate-primary-link,
.estate-message-button,
.estate-contact-submit,
.estate-form button,
.estate-editor-actions button,
.searchers-search-card button,
.primary-action {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  text-decoration: none !important;
}

.estate-filter-form input,
.estate-filter-form select,
.estate-field input,
.estate-field select,
.estate-field textarea,
.estate-form input,
.estate-form select,
.estate-form textarea,
.estate-form-grid input,
.estate-form-grid select,
.estate-form-grid textarea,
.searchers-search-card input,
.searchers-search-card select {
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.estate-result-card,
.estate-table-row,
.estate-inbox-details div {
  background: rgba(255,255,255,.90) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
}

.estate-map-panel {
  background: rgba(255,255,255,.72) !important;
  border-left: 1px solid var(--yop-border) !important;
}

.estate-section,
.estate-keyfacts,
.estate-spec-grid,
.estate-location-row,
.estate-internet-box,
.estate-plus-box {
  background: transparent !important;
  border-color: var(--yop-border) !important;
}

/* Yop-Jobs and shared listing editor */
.yop-jobs-page,
.account-form-page {
  background:
    radial-gradient(circle at 14% 12%, rgba(37,99,255,.11), transparent 32%),
    radial-gradient(circle at 86% 10%, rgba(138,21,56,.08), transparent 28%),
    var(--yop-bg) !important;
  color: var(--yop-text) !important;
}

.portal-topbar.jobs-topbar,
.jobs-hero,
.job-card,
.job-detail-panel,
.account-hero,
.account-edit-form,
.yop-upload-panel {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.jobs-hero h1,
.job-card h2,
.job-detail-panel h2,
.account-hero h1 {
  color: var(--yop-text) !important;
  font-weight: 700 !important;
}

.jobs-search input,
.account-edit-form input,
.account-edit-form select,
.account-edit-form textarea,
.yop-upload-panel input {
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.jobs-search button,
.jobs-owner-action a,
.job-apply-link,
.job-detail-panel a,
.account-form-actions button {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.account-form-actions a,
.portal-topbar.jobs-topbar nav a {
  background: #fff !important;
  color: var(--yop-primary) !important;
  border: 1px solid var(--yop-border) !important;
  text-decoration: none !important;
}

.jobs-shell {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
}

.jobs-hero {
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(32px, 6vw, 68px) !important;
  display: grid !important;
  gap: 1.25rem !important;
}

.jobs-search {
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .8rem !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto !important;
  gap: .75rem !important;
}

.yopi-smart-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 20px 0;
}

.yopi-smart-steps article {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border: 1px solid #E6EAF2;
  border-radius: 18px;
  background: #fff;
  color: #64748B;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .06);
}

.yopi-smart-steps strong {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 999px;
  background: #EEF4FF;
  color: #155DFF;
}

.yopi-smart-steps .is-active strong,
.yopi-smart-steps .is-done strong {
  background: #155DFF;
  color: #fff;
}

.yopi-cv-step-card,
.yopi-consent-box {
  border: 1px solid #E6EAF2;
  border-radius: 18px;
  background: #F8FBFF;
  padding: 18px;
  margin: 14px 0;
}

.yopi-cv-step-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.yopi-cv-step-card p,
.yopi-consent-box p {
  margin: 6px 0 0;
  color: #64748B;
}

.yopi-cv-step-card a {
  font-weight: 800;
  color: #155DFF;
  text-decoration: none;
}

.yopi-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.yopi-field-grid p {
  margin: 0;
}

.yopi-consent-box h3 {
  margin: 0 0 12px;
  color: #0F172A;
}

.yopi-consent-box label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 12px 0;
  color: #0F172A;
  font-weight: 800;
}

.yopi-consent-box input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #155DFF;
  flex: 0 0 auto;
}

@media (max-width: 760px) {
  .yopi-smart-steps,
  .yopi-field-grid {
    grid-template-columns: 1fr;
  }

  .yopi-cv-step-card {
    align-items: flex-start;
    flex-direction: column;
  }
}

.jobs-search-advanced {
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto !important;
  align-items: end !important;
}

.jobs-search label {
  display: grid !important;
  gap: .35rem !important;
  margin: 0 !important;
  color: var(--yop-text) !important;
  font-weight: 800 !important;
}

.jobs-search label span {
  color: var(--yop-muted) !important;
  font-size: .84rem !important;
}

.jobs-search input,
.jobs-search select,
.jobs-search button,
.jobs-owner-action a,
.job-apply-link {
  min-height: 54px !important;
  border-radius: 16px !important;
  padding-inline: 1.2rem !important;
}

.jobs-search select {
  width: 100% !important;
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.jobs-owner-action {
  margin: 1.25rem 0 1.75rem !important;
  display: flex !important;
  justify-content: flex-end !important;
}

.jobs-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 340px !important;
  gap: 1.25rem !important;
  align-items: start !important;
}

.jobs-list {
  display: grid !important;
  gap: 1rem !important;
}

.job-card {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.35rem !important;
  display: grid !important;
  gap: .5rem !important;
}

.job-apply-link {
  width: fit-content !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: .5rem !important;
}

.job-detail-panel {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.35rem !important;
  position: sticky !important;
  top: 98px !important;
}

.account-form-page {
  width: min(920px, calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
}

.account-edit-form,
.account-hero,
.yop-upload-panel {
  border-radius: var(--yop-radius-lg) !important;
  padding: clamp(1.25rem, 3vw, 2rem) !important;
}

.account-edit-form {
  display: grid !important;
  gap: 1rem !important;
}

.account-edit-form label {
  display: grid !important;
  gap: .4rem !important;
  color: var(--yop-text) !important;
  font-weight: 650 !important;
}

.account-form-actions {
  display: flex !important;
  gap: .75rem !important;
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
}

.account-form-actions a,
.account-form-actions button {
  min-height: 50px !important;
  border-radius: 16px !important;
  padding: .85rem 1.25rem !important;
}

/* Yop-Profis marketplace, orders and request workflow */
.profis-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  background: transparent !important;
}

.profis-hero,
.profis-request-panel,
.profis-business-panel,
.profis-orders-head,
.profis-idea-box,
.profis-order-card,
.profis-empty-order,
.profis-detail-hero,
.profis-detail-card,
.profis-request-form-card,
.profis-request-aside,
.profis-result-card,
.profis-category-card,
.profis-flow > div,
.profis-stats > div,
.profis-hero-card {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.profis-hero,
.profis-request-shell,
.profis-detail-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, .7fr) !important;
  gap: 1.5rem !important;
  align-items: stretch !important;
}

.profis-hero,
.profis-request-panel,
.profis-business-panel,
.profis-orders-head,
.profis-detail-hero {
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(1.5rem, 4vw, 3rem) !important;
}

.profis-hero-card,
.profis-request-aside,
.profis-request-form-card,
.profis-detail-card,
.profis-result-card,
.profis-category-card,
.profis-order-card,
.profis-empty-order,
.profis-flow > div,
.profis-stats > div,
.profis-idea-box {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.35rem !important;
}

.profis-search,
.profis-form-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: .75rem !important;
  align-items: end !important;
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .85rem !important;
}

.profis-form-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.profis-search label,
.profis-form-grid label {
  display: grid !important;
  gap: .4rem !important;
  color: var(--yop-text) !important;
  font-weight: 650 !important;
}

.profis-search input,
.profis-search select,
.profis-form-grid input,
.profis-form-grid select,
.profis-form-grid textarea,
.yop-pro-form input,
.yop-pro-form select,
.yop-pro-form textarea {
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: 16px !important;
  min-height: 52px !important;
  padding: .85rem 1rem !important;
}

.profis-search button,
.profis-owner-action a,
.profis-primary-action,
.profis-request-actions a,
.profis-result-card a,
.profis-business-panel a,
.profis-orders-head a,
.profis-idea-box a,
.profis-empty-order a,
.profis-order-card footer a,
.profis-detail-hero nav a,
.account-submit {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 16px !important;
  min-height: 50px !important;
  padding: .85rem 1.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-weight: 650 !important;
  box-shadow: 0 14px 34px rgba(37, 99, 255, .20) !important;
}

.profis-secondary-action,
.profis-ghost-link,
.profis-order-card footer a + a,
.profis-detail-hero nav a + a {
  background: #fff !important;
  color: var(--yop-primary) !important;
  border: 1px solid var(--yop-border) !important;
  box-shadow: none !important;
}

.profis-owner-action,
.profis-request-actions,
.profis-order-card footer,
.profis-detail-hero nav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .75rem !important;
  align-items: center !important;
}

.profis-owner-action {
  justify-content: flex-end !important;
  margin: 1.25rem 0 !important;
}

.profis-stats,
.profis-category-grid,
.profis-card-grid,
.profis-flow,
.profis-order-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 1rem !important;
  margin-top: 1.25rem !important;
}

.profis-order-list {
  grid-template-columns: 1fr !important;
}

.profis-result-top,
.profis-order-main,
.profis-detail-hero {
  display: flex !important;
  gap: 1rem !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.profis-tags,
.profis-order-metrics,
.profis-step-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .55rem !important;
}

.profis-tags span,
.profis-order-metrics span,
.profis-step-list span,
.profis-rating {
  background: #f8fafc !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  color: var(--yop-muted) !important;
  padding: .45rem .7rem !important;
}

/* Yop-Anzeige marketplace and shared classified editor */
.ads-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  background: transparent !important;
  color: var(--yop-text) !important;
}

.ads-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr) !important;
  gap: 1.5rem !important;
  align-items: stretch !important;
}

.ads-hero-copy,
.ads-search-card,
.ads-quick-actions,
.ads-category-card,
.ads-filter-card,
.ads-listing-card,
.ads-empty {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-lg) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.ads-hero-copy,
.ads-search-card {
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(1.5rem, 4vw, 3rem) !important;
}

.ads-search-card {
  display: grid !important;
  gap: .9rem !important;
}

.ads-search-card label {
  display: grid !important;
  gap: .4rem !important;
  color: var(--yop-text) !important;
  font-weight: 650 !important;
}

.ads-search-card input,
.ads-search-card select {
  min-height: 52px !important;
  border-radius: 16px !important;
  padding: .85rem 1rem !important;
}

.ads-search-card button,
.ads-create-button,
.ads-listing-card a {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 16px !important;
  min-height: 50px !important;
  padding: .85rem 1.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-weight: 650 !important;
  box-shadow: 0 14px 34px rgba(37, 99, 255, .20) !important;
}

.ads-create-row {
  display: flex !important;
  justify-content: flex-end !important;
  margin: 1.25rem 0 !important;
}

.ads-quick-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .75rem !important;
  padding: .85rem !important;
  margin-bottom: 1.5rem !important;
}

.ads-quick-actions a {
  color: var(--yop-primary) !important;
  background: #fff !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  padding: .65rem .9rem !important;
  text-decoration: none !important;
  font-weight: 650 !important;
}

.ads-category-grid,
.ads-results-section {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
  gap: 1rem !important;
}

.ads-results-section {
  grid-template-columns: 280px minmax(0, 1fr) !important;
  align-items: start !important;
  margin-top: 1.5rem !important;
}

.ads-results {
  display: grid !important;
  gap: 1rem !important;
}

.ads-listing-card {
  display: grid !important;
  grid-template-columns: 120px minmax(0, 1fr) auto auto !important;
  gap: 1rem !important;
  align-items: center !important;
  padding: 1rem !important;
}

.ads-listing-thumb {
  min-height: 92px !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, rgba(37,99,255,.16), rgba(138,21,56,.10)) !important;
  color: var(--yop-primary) !important;
  display: grid !important;
  place-items: center !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
}

.ads-filter-card {
  padding: 1.2rem !important;
  position: sticky !important;
  top: 98px !important;
}

.ads-filter-card label {
  display: flex !important;
  gap: .5rem !important;
  align-items: center !important;
  color: var(--yop-muted) !important;
  margin-top: .75rem !important;
}

/* Yop-Reise */
.reise-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  background: transparent !important;
  color: var(--yop-text) !important;
}

.reise-hero,
.reise-tabs,
.reise-destination-card,
.reise-offer-card,
.reise-affiliate-card,
.reise-trust-panel,
.reise-deal-card {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.reise-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr) !important;
  gap: 1.5rem !important;
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(1.5rem, 4vw, 3rem) !important;
}

.reise-deal-card,
.reise-destination-card,
.reise-offer-card,
.reise-affiliate-card,
.reise-trust-panel {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.25rem !important;
}

.reise-search {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: .75rem !important;
  align-items: end !important;
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .85rem !important;
}

.reise-search .wide {
  grid-column: span 2 !important;
}

.reise-search label {
  display: grid !important;
  gap: .4rem !important;
  color: var(--yop-text) !important;
  font-weight: 650 !important;
}

.reise-search input,
.reise-search select {
  min-height: 52px !important;
  border-radius: 16px !important;
  padding: .85rem 1rem !important;
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.reise-search button,
.reise-price-box a,
.reise-affiliate-card a {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 16px !important;
  min-height: 50px !important;
  padding: .85rem 1.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-weight: 650 !important;
  box-shadow: 0 14px 34px rgba(37, 99, 255, .20) !important;
}

.reise-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .75rem !important;
  padding: .85rem !important;
  margin: 1.25rem 0 !important;
  border-radius: var(--yop-radius-lg) !important;
}

.reise-tabs a {
  color: var(--yop-primary) !important;
  background: #fff !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  padding: .65rem .9rem !important;
  text-decoration: none !important;
  font-weight: 650 !important;
}

.reise-destination-grid,
.reise-affiliate-grid,
.reise-trust-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 1rem !important;
}

.reise-offer-list {
  display: grid !important;
  gap: 1rem !important;
}

.reise-offer-card {
  display: grid !important;
  grid-template-columns: 110px minmax(0, 1fr) auto !important;
  gap: 1rem !important;
  align-items: center !important;
}

.reise-offer-media {
  min-height: 96px !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(37,99,255,.16), rgba(138,21,56,.10)) !important;
  color: var(--yop-primary) !important;
  display: grid !important;
  place-items: center !important;
  font-size: 2rem !important;
}

.reise-tags,
.reise-ai-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .55rem !important;
}

.reise-tags span,
.reise-ai-list small,
.reise-rating,
.reise-trust-grid span {
  background: #f8fafc !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  color: var(--yop-muted) !important;
  padding: .45rem .7rem !important;
}

/* Yop-Vergleich, Versicherung and Kfz flows */
.compare-hub-page,
.yop-compare-page,
.insurance-page,
.kfz-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  background: transparent !important;
  color: var(--yop-text) !important;
}

.compare-button-dock,
.compare-hub-hero,
.compare-hub-card,
.compare-hub-quick,
.portal-topbar,
.portal-hero-card,
.portal-filter-card,
.portal-offer-row,
.portal-empty,
.insurance-topbar,
.insurance-hero,
.insurance-compare-card,
.insurance-need-box,
.insurance-step-grid article,
.insurance-product-card,
.insurance-stage-grid article,
.insurance-overview,
.insurance-guide,
.insurance-result-hero,
.insurance-result-form,
.insurance-result-benefits,
.insurance-summary-card,
.insurance-offers article,
.kfz-topbar,
.kfz-note,
.kfz-form-frame,
.kfz-choice-card,
.kfz-info-box,
.kfz-model-db,
.kfz-trust-strip > div {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.compare-hub-hero,
.portal-hero-card,
.insurance-hero,
.insurance-result-hero,
.kfz-form-frame {
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(1.5rem, 4vw, 3rem) !important;
}

.compare-button-dock,
.compare-hub-card,
.compare-hub-quick,
.portal-topbar,
.portal-filter-card,
.portal-offer-row,
.portal-empty,
.insurance-topbar,
.insurance-compare-card,
.insurance-need-box,
.insurance-step-grid article,
.insurance-product-card,
.insurance-stage-grid article,
.insurance-overview,
.insurance-guide,
.insurance-result-form,
.insurance-result-benefits,
.insurance-summary-card,
.insurance-offers article,
.kfz-topbar,
.kfz-note,
.kfz-choice-card,
.kfz-info-box,
.kfz-model-db,
.kfz-trust-strip > div {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.2rem !important;
}

.compare-hub-hero,
.portal-compare-grid,
.insurance-hero,
.insurance-result-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr) !important;
  gap: 1.25rem !important;
  align-items: stretch !important;
}

.compare-button-dock,
.compare-hub-grid,
.insurance-step-grid,
.insurance-product-grid,
.insurance-stage-grid,
.insurance-offer-grid,
.kfz-choice-row,
.kfz-trust-strip {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 1rem !important;
}

.compare-hub-search,
.portal-search,
.insurance-compare-card,
.insurance-result-form form,
.kfz-form {
  display: grid !important;
  gap: .85rem !important;
}

.compare-hub-search {
  grid-template-columns: minmax(0, 1fr) 240px auto !important;
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .85rem !important;
}

.portal-search {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
  background: rgba(37, 99, 255, .06) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: .85rem !important;
}

.compare-hub-search input,
.compare-hub-search select,
.portal-search input,
.portal-search select,
.insurance-page input,
.insurance-page select,
.kfz-page input,
.kfz-page select {
  min-height: 52px !important;
  border-radius: 16px !important;
  padding: .85rem 1rem !important;
  background: #fff !important;
  color: var(--yop-text) !important;
  border: 1px solid var(--yop-border) !important;
}

.compare-hub-search button,
.compare-hub-card,
.compare-hub-quick a,
.portal-search button,
.portal-offer-row a,
.portal-mini-filter button,
.insurance-page button,
.insurance-page a:not(.insurance-brand):not(.insurance-home),
.kfz-page button,
.kfz-login {
  background: linear-gradient(135deg, var(--yop-primary), #7C3AED) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 16px !important;
  min-height: 50px !important;
  padding: .85rem 1.15rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  font-weight: 650 !important;
  box-shadow: 0 14px 34px rgba(37, 99, 255, .20) !important;
}

.compare-button-dock a,
.portal-topbar nav a,
.insurance-topbar nav a,
.kfz-menu {
  background: #fff !important;
  color: var(--yop-primary) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  padding: .65rem .9rem !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.portal-offer-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto minmax(180px, .6fr) auto auto !important;
  gap: 1rem !important;
  align-items: center !important;
}

.portal-feature-list,
.insurance-trust-row,
.kfz-radio-group {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .55rem !important;
}

.portal-feature-list small,
.insurance-trust-row span,
.kfz-radio-group label,
.portal-rating {
  background: #f8fafc !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: var(--yop-radius-pill) !important;
  color: var(--yop-muted) !important;
  padding: .45rem .7rem !important;
}

/* Yop-Agri enterprise light migration */
.agri-page {
  width: min(var(--yop-container), calc(100% - 32px)) !important;
  margin-inline: auto !important;
  padding: clamp(36px, 6vw, 72px) 0 !important;
  background: transparent !important;
  color: var(--yop-text) !important;
  font-family: var(--yop-font) !important;
}

.agri-estate-topbar,
.agri-estate-hero,
.agri-hero-panel,
.agri-estate-filter-form,
.agri-start-box,
.agri-top-products,
.agri-price-compare,
.agri-category-card,
.agri-empty-state {
  background: rgba(255, 255, 255, .94) !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-text) !important;
  box-shadow: var(--yop-shadow-soft) !important;
}

.agri-estate-topbar,
.agri-estate-hero,
.agri-start-box,
.agri-top-products,
.agri-price-compare,
.agri-empty-state {
  border-radius: var(--yop-radius-xl) !important;
  padding: clamp(1.2rem, 3vw, 2.4rem) !important;
}

.agri-estate-topbar {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin-bottom: 1rem !important;
}

.agri-estate-nav,
.agri-chip-row,
.agri-offer-tabs,
.agri-compare-header,
.agri-payment-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .65rem !important;
  align-items: center !important;
}

.agri-estate-nav a,
.agri-chip,
.agri-offer-tabs a,
.agri-compare-header a,
.agri-payment-tags span {
  background: #fff !important;
  border: 1px solid var(--yop-border) !important;
  color: var(--yop-primary) !important;
  border-radius: var(--yop-radius-pill) !important;
  padding: .55rem .8rem !important;
  text-decoration: none !important;
  font-weight: 650 !important;
}

.agri-chip.active,
.agri-offer-tabs a.active {
  background: var(--yop-gradient-primary) !important;
  color: #fff !important;
  border-color: transparent !important;
}

.agri-logo-image {
  width: 120px !important;
  max-height: 58px !important;
  object-fit: contain !important;
}

.agri-estate-hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr) !important;
  gap: 1.25rem !important;
}

.agri-hero-panel {
  border-radius: var(--yop-radius-lg) !important;
  padding: clamp(1.4rem, 4vw, 3rem) !important;
}

.agri-page h1,
.agri-page h2,
.agri-page h3 {
  color: var(--yop-text) !important;
  font-weight: 760 !important;
  letter-spacing: -.04em !important;
}

.agri-page p,
.agri-page small,
.agri-page span {
  color: var(--yop-muted) !important;
}

.agri-page .eyebrow {
  display: inline-flex !important;
  width: max-content !important;
  color: var(--yop-primary) !important;
  background: rgba(37, 99, 255, .08) !important;
  border: 1px solid rgba(37, 99, 255, .14) !important;
  border-radius: var(--yop-radius-pill) !important;
  padding: .45rem .75rem !important;
  font-weight: 750 !important;
  text-transform: uppercase !important;
}

.agri-estate-filter-form {
  display: grid !important;
  gap: .85rem !important;
  border-radius: var(--yop-radius-lg) !important;
  padding: 1rem !important;
}

.agri-estate-filter-form input,
.agri-estate-filter-form select {
  min-height: 52px !important;
  border-radius: 16px !important;
  border: 1px solid var(--yop-border) !important;
  background: #fff !important;
  color: var(--yop-text) !important;
  padding: .85rem 1rem !important;
}

.agri-estate-filter-form button,
.agri-shop-button {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: var(--yop-gradient-primary) !important;
  color: #fff !important;
  padding: .8rem 1.1rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 30px rgba(37, 99, 255, .20) !important;
}

.agri-compare-layout {
  display: grid !important;
  grid-template-columns: 300px minmax(0, 1fr) !important;
  gap: 1.25rem !important;
  margin-top: 1.25rem !important;
}

.agri-top-products article,
.agri-compare-row {
  background: rgba(248, 250, 252, .88) !important;
  border: 1px solid var(--yop-border) !important;
  border-radius: 18px !important;
  color: var(--yop-text) !important;
  box-shadow: none !important;
}

.agri-top-products article {
  display: grid !important;
  grid-template-columns: auto auto 1fr !important;
  gap: .75rem !important;
  align-items: center !important;
  padding: .8rem !important;
  margin-bottom: .65rem !important;
}

.agri-top-thumb {
  width: 44px !important;
  height: 44px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  background: rgba(37, 99, 255, .10) !important;
  color: var(--yop-primary) !important;
  font-weight: 800 !important;
}

.agri-compare-table-head,
.agri-compare-row {
  display: grid !important;
  grid-template-columns: minmax(220px, 1.25fr) minmax(150px, .8fr) minmax(140px, .75fr) minmax(150px, .8fr) minmax(150px, .8fr) auto !important;
  gap: 1rem !important;
  align-items: center !important;
}

.agri-compare-table-head {
  padding: .8rem 1rem !important;
  color: var(--yop-muted) !important;
  font-weight: 750 !important;
}

.agri-compare-row {
  padding: 1rem !important;
  margin-bottom: .8rem !important;
}

.agri-offer-name a,
.agri-offer-price strong,
.agri-shop-rating strong,
.agri-top-products strong,
.agri-top-products b {
  color: var(--yop-text) !important;
}

.agri-offer-price em {
  display: inline-flex !important;
  margin-top: .35rem !important;
  border-radius: var(--yop-radius-pill) !important;
  background: rgba(34, 197, 94, .12) !important;
  color: #15803d !important;
  padding: .3rem .55rem !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

.agri-category-section {
  margin-top: clamp(32px, 6vw, 72px) !important;
}

.agri-category-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 1rem !important;
}

.agri-category-card {
  border-radius: var(--yop-radius-lg) !important;
  padding: 1.2rem !important;
}

.agri-category-card span {
  display: inline-grid !important;
  place-items: center !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 15px !important;
  background: rgba(37, 99, 255, .10) !important;
  color: var(--yop-primary) !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
}

@media (max-width: 900px) {
  .enterprise-hero { grid-template-columns: 1fr; min-height: auto; }
  .mockup-body { grid-template-columns: 1fr; }
  .mockup-cards { grid-template-columns: 1fr; }
  .enterprise-section-head { display: grid; }
  .enterprise-newsletter { grid-template-columns: 1fr; }
  .enterprise-newsletter form { flex-direction: column; }
  .jobs-search,
  .jobs-layout,
  .profis-hero,
  .profis-request-shell,
  .profis-detail-grid,
  .profis-search,
  .profis-form-grid,
  .ads-hero,
  .ads-results-section,
  .ads-listing-card,
  .reise-hero,
  .reise-search,
  .reise-offer-card,
  .compare-hub-hero,
  .compare-hub-search,
  .portal-compare-grid,
  .portal-offer-row,
  .insurance-hero,
  .insurance-result-grid,
  .education-page .enterprise-hero,
  .enterprise-search-wide,
  .enterprise-detail-page,
  .agri-estate-hero,
  .agri-compare-layout,
  .agri-compare-table-head,
  .agri-compare-row {
    grid-template-columns: 1fr !important;
  }
  .reise-search .wide {
    grid-column: auto !important;
  }
  .job-detail-panel {
    position: static !important;
  }
  .ads-filter-card {
    position: static !important;
  }
}

.yopi-career-shell {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: clamp(24px, 5vw, 64px) 0;
  color: var(--yop-text);
}

.yopi-narrow {
  width: min(820px, calc(100% - 32px));
}

.yopi-hero,
.yopi-public-hero,
.yopi-page-head,
.yopi-panel,
.yopi-card,
.yopi-status-card,
.yopi-score-card,
.yopi-career-strip article,
.yopi-form {
  border: 1px solid rgba(124, 58, 237, .18);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 20px 50px rgba(15, 23, 42, .08);
}

.yopi-hero,
.yopi-public-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, .8fr);
  gap: 1.2rem;
  align-items: stretch;
  border-radius: 22px;
  padding: clamp(22px, 4vw, 46px);
  background:
    linear-gradient(135deg, rgba(124, 58, 237, .12), rgba(37, 99, 255, .08)),
    #fff;
}

.yopi-public-hero {
  margin-bottom: 1.1rem;
}

.yopi-kicker {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  padding: .35rem .7rem;
  background: rgba(124, 58, 237, .10);
  color: #6d28d9;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.yopi-hero h1,
.yopi-public-hero h1,
.yopi-page-head h1 {
  margin: .7rem 0 .55rem;
  color: var(--yop-text);
  letter-spacing: 0;
}

.yopi-hero p,
.yopi-public-hero p,
.yopi-page-head p,
.yopi-panel p,
.yopi-card p,
.yopi-status-card p {
  color: var(--yop-muted);
}

.yopi-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  align-items: center;
  margin-top: 1rem;
}

.yopi-primary,
.yopi-secondary,
.yopi-actions button,
.yopi-row a,
.yopi-panel-head a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  padding: .75rem 1rem;
  font-weight: 800;
  text-decoration: none;
}

.yopi-primary,
.yopi-actions button {
  border: 0;
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
  color: #fff;
}

.yopi-secondary,
.yopi-row a,
.yopi-panel-head a {
  border: 1px solid rgba(124, 58, 237, .22);
  background: rgba(124, 58, 237, .08);
  color: #6d28d9;
}

.yopi-status-card,
.yopi-panel,
.yopi-card,
.yopi-score-card,
.yopi-form,
.yopi-page-head {
  border-radius: 18px;
  padding: 1.15rem;
}

.yopi-grid {
  display: grid;
  gap: 1rem;
  margin: 1rem 0;
}

.yopi-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.yopi-grid-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.yopi-card span,
.yopi-score-card span {
  display: block;
  color: var(--yop-muted);
  font-weight: 750;
}

.yopi-card strong,
.yopi-score-card strong {
  display: block;
  margin: .35rem 0;
  color: var(--yop-text);
  font-size: clamp(1.3rem, 3vw, 2rem);
}

.yopi-score-card div {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(107, 114, 128, .16);
}

.yopi-score-card i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #10b981, #84cc16);
}

.yopi-main-score i {
  background: linear-gradient(90deg, #7c3aed, #10b981);
}

.yopi-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
  margin: 1rem 0;
}

.yopi-panel-head,
.yopi-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.yopi-list {
  display: grid;
  gap: .8rem;
  margin-top: 1rem;
}

.yopi-row {
  border: 1px solid rgba(148, 163, 184, .24);
  border-radius: 16px;
  padding: 1rem;
  background: #fff;
}

.yopi-row div {
  display: grid;
  gap: .2rem;
}

.yopi-row span,
.yopi-row small {
  color: var(--yop-muted);
}

.yopi-row b {
  color: #10b981;
  font-size: 1.35rem;
}

.yopi-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}

.yopi-tags span {
  border-radius: 999px;
  background: rgba(16, 185, 129, .12);
  color: #047857;
  padding: .38rem .65rem;
  font-weight: 750;
}

.yopi-tags-muted span {
  background: rgba(245, 158, 11, .14);
  color: #92400e;
}

.yopi-steps {
  display: grid;
  gap: .7rem;
  padding-left: 0;
  list-style: none;
}

.yopi-steps li {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: .75rem;
  align-items: center;
}

.yopi-steps span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: rgba(124, 58, 237, .10);
  color: #6d28d9;
  font-weight: 900;
}

.yopi-form {
  display: grid;
  gap: .8rem;
}

.yopi-form p {
  display: grid;
  gap: .35rem;
  margin: 0;
}

.yopi-form input,
.yopi-form select,
.yopi-form textarea {
  width: 100%;
  border: 1px solid rgba(148, 163, 184, .38);
  border-radius: 12px;
  padding: .75rem .85rem;
  font: inherit;
  background: #fff;
}

.yopi-question {
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 16px;
  padding: 1rem;
}

.yopi-question legend {
  padding: 0 .35rem;
  font-weight: 850;
}

.yopi-question label {
  display: block;
  margin-top: .55rem;
}

.yopi-privacy-note,
.yopi-warning {
  border-color: rgba(245, 158, 11, .35);
  background: rgba(255, 251, 235, .85);
  color: #78350f;
}

.yopi-privacy-note {
  border: 1px solid rgba(245, 158, 11, .35);
  border-radius: 14px;
  padding: .85rem;
}

.yopi-draft-text {
  white-space: pre-wrap;
  border-radius: 14px;
  padding: 1rem;
  background: #f8fafc;
  color: var(--yop-text);
  font: inherit;
}

.yopi-career-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}

.yopi-career-strip-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.jobs-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  margin: 1rem 0 0;
}

.jobs-pagination a,
.jobs-pagination span {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  padding: .65rem .9rem;
  border: 1px solid rgba(37, 99, 255, .18);
  background: #fff;
  color: #155DFF;
  font-weight: 850;
  text-decoration: none;
}

.yopi-app-dashboard {
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
  min-height: calc(100vh - 76px);
  background:
    radial-gradient(circle at 16% 8%, rgba(37, 99, 255, .08), transparent 30%),
    radial-gradient(circle at 92% 4%, rgba(124, 58, 237, .08), transparent 34%),
    #f8fbff;
  color: #0f172a;
}

.yopi-app-sidebar {
  position: sticky;
  top: 0;
  height: calc(100vh - 76px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 1.25rem;
  padding: 1.5rem .85rem;
  background: rgba(255, 255, 255, .92);
  border-right: 1px solid rgba(226, 232, 240, .9);
  box-shadow: 18px 0 42px rgba(15, 23, 42, .04);
}

.yopi-sidebar-brand {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-height: 48px;
  padding: .35rem .6rem;
  text-decoration: none;
  color: #0f172a;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.yopi-sidebar-brand img {
  width: 86px;
  height: auto;
  object-fit: contain;
}

.yopi-sidebar-brand span {
  font-size: .75rem;
  line-height: 1.35;
}

.yopi-app-sidebar nav {
  display: grid;
  align-content: start;
  gap: .35rem;
}

.yopi-app-sidebar nav a,
.yopi-sidebar-cta a,
.yopi-user-chip,
.yopi-card-head a,
.yopi-employer-toolbar a {
  text-decoration: none;
}

.yopi-app-sidebar nav a {
  display: flex;
  align-items: center;
  min-height: 44px;
  border-radius: 12px;
  padding: .75rem .9rem;
  color: #42526b;
  font-weight: 800;
}

.yopi-app-sidebar nav a.is-active,
.yopi-app-sidebar nav a:hover {
  background: linear-gradient(135deg, rgba(37, 99, 255, .13), rgba(124, 58, 237, .10));
  color: #2563ff;
}

.yopi-sidebar-cta {
  display: grid;
  gap: .65rem;
  border: 1px solid rgba(37, 99, 255, .14);
  border-radius: 18px;
  padding: 1rem;
  background: linear-gradient(180deg, #fff, rgba(239, 246, 255, .82));
}

.yopi-sidebar-cta strong {
  color: #0f172a;
}

.yopi-sidebar-cta p {
  margin: 0;
  color: #64748b;
  font-size: .9rem;
}

.yopi-sidebar-cta a,
.yopi-employer-toolbar a,
.yopi-card-head a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 12px;
  padding: .65rem .85rem;
  background: linear-gradient(135deg, #2563ff, #7c3aed);
  color: #fff;
  font-weight: 850;
}

.yopi-app-main {
  padding: clamp(1rem, 3vw, 2rem);
  display: grid;
  gap: 1.25rem;
  align-content: start;
}

.yopi-app-top,
.yopi-employer-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.yopi-app-top h1,
.yopi-employer-hero h1 {
  margin: .4rem 0 .25rem;
  color: #0f172a;
  letter-spacing: 0;
}

.yopi-app-top p,
.yopi-employer-hero p {
  margin: 0;
  color: #64748b;
}

.yopi-user-chip {
  display: grid;
  gap: .1rem;
  min-width: 160px;
  border: 1px solid rgba(226, 232, 240, .92);
  border-radius: 16px;
  padding: .75rem 1rem;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 18px 38px rgba(15, 23, 42, .06);
}

.yopi-user-chip small {
  color: #64748b;
}

.yopi-kpi-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
}

.yopi-kpi-card,
.yopi-dash-card,
.yopi-employer-hero,
.yopi-impact-row article {
  border: 1px solid rgba(226, 232, 240, .92);
  border-radius: 18px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 42px rgba(15, 23, 42, .06);
}

.yopi-kpi-card {
  display: grid;
  gap: .45rem;
  min-height: 136px;
  padding: 1.05rem;
}

.yopi-kpi-card span,
.yopi-kpi-card small {
  color: #64748b;
  font-weight: 750;
}

.yopi-kpi-card strong {
  color: #0f172a;
  font-size: clamp(1.7rem, 3vw, 2.35rem);
  line-height: 1;
}

.yopi-mini-progress {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5edff;
}

.yopi-mini-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563ff, #7c3aed);
}

.yopi-dashboard-grid,
.yopi-employer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
  gap: 1rem;
  align-items: start;
}

.yopi-dash-card {
  padding: 1.15rem;
}

.yopi-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .9rem;
}

.yopi-card-head h2 {
  margin: 0;
  font-size: 1.08rem;
  color: #0f172a;
}

.yopi-card-head a {
  min-height: 34px;
  padding: .45rem .75rem;
  background: rgba(37, 99, 255, .08);
  color: #2563ff;
  border: 1px solid rgba(37, 99, 255, .16);
}

.yopi-table-list,
.yopi-activity-list,
.yopi-check-list,
.yopi-quality-list {
  display: grid;
  gap: .55rem;
}

.yopi-table-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: .8rem;
  align-items: center;
  min-height: 58px;
  border-bottom: 1px solid rgba(226, 232, 240, .8);
  padding: .45rem 0;
  color: #0f172a;
  text-decoration: none;
}

.yopi-table-row:last-child {
  border-bottom: 0;
}

.yopi-table-row div {
  display: grid;
  gap: .15rem;
}

.yopi-table-row small {
  color: #64748b;
}

.yopi-table-row em {
  border-radius: 999px;
  padding: .35rem .6rem;
  background: rgba(16, 185, 129, .11);
  color: #047857;
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}

.yopi-company-mark,
.yopi-avatar-mark {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: linear-gradient(135deg, #eaf1ff, #f3e8ff);
  color: #2563ff;
  font-weight: 900;
}

.yopi-avatar-mark {
  border-radius: 50%;
  background: linear-gradient(135deg, #2563ff, #7c3aed);
  color: #fff;
}

.yopi-profile-score,
.yopi-quality-card {
  display: grid;
  justify-items: center;
}

.yopi-score-donut {
  --score: 0;
  width: 190px;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  margin: .25rem auto 1rem;
  background:
    radial-gradient(circle at center, #fff 0 58%, transparent 59%),
    conic-gradient(#2563ff calc(var(--score) * 1%), #e8eefb 0);
}

.yopi-score-donut strong,
.yopi-score-donut span {
  grid-area: 1 / 1;
}

.yopi-score-donut strong {
  transform: translateY(-.35rem);
  font-size: 2.45rem;
  color: #0f172a;
}

.yopi-score-donut span {
  transform: translateY(1.35rem);
  max-width: 110px;
  text-align: center;
  color: #64748b;
  font-size: .8rem;
  font-weight: 750;
}

.yopi-check-list,
.yopi-quality-list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

.yopi-check-list li,
.yopi-quality-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  min-height: 32px;
  color: #64748b;
  font-weight: 750;
}

.yopi-check-list li::after {
  content: "!";
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(245, 158, 11, .16);
  color: #d97706;
}

.yopi-check-list li.is-done::after {
  content: "✓";
  background: rgba(16, 185, 129, .14);
  color: #059669;
}

.yopi-activity-list div {
  display: grid;
  grid-template-columns: 34px 1fr;
  column-gap: .75rem;
  align-items: start;
}

.yopi-activity-list span {
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: linear-gradient(135deg, #2563ff, #10b981);
}

.yopi-activity-list p,
.yopi-activity-list small {
  grid-column: 2;
  margin: 0;
}

.yopi-activity-list p {
  color: #0f172a;
  font-weight: 800;
}

.yopi-activity-list small {
  color: #64748b;
}

.yopi-empty-line {
  border-radius: 14px;
  padding: 1rem;
  background: #f8fafc;
  color: #64748b;
  font-weight: 750;
}

.yopi-employer-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: 1.25rem;
  padding: clamp(1.4rem, 3vw, 2rem);
  background:
    linear-gradient(135deg, rgba(10, 18, 32, .94), rgba(30, 41, 59, .86)),
    radial-gradient(circle at 80% 20%, rgba(124, 58, 237, .35), transparent 40%);
}

.yopi-employer-hero h1,
.yopi-employer-hero p,
.yopi-employer-hero .yopi-kicker,
.yopi-employer-hero strong,
.yopi-employer-hero li {
  color: #fff;
}

.yopi-employer-hero aside {
  border-left: 1px solid rgba(255, 255, 255, .18);
  padding-left: 1.25rem;
}

.yopi-employer-hero ul {
  display: grid;
  gap: .7rem;
  margin: .8rem 0 0;
  padding: 0;
  list-style: none;
}

.yopi-impact-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.yopi-impact-row article {
  padding: 1rem;
}

.yopi-impact-row strong {
  color: #1d4ed8;
}

.yopi-impact-row p {
  margin: .45rem 0 0;
  color: #64748b;
}

.company-dashboard {
  --company-primary: #155DFF;
  --company-navy: #08142F;
  --company-bg: #F7F9FC;
  --company-card: #FFFFFF;
  --company-border: #E6EAF2;
  --company-muted: #64748B;
  display: grid;
  grid-template-columns: 284px minmax(0, 1fr);
  min-height: calc(100vh - 76px);
  background: var(--company-bg);
  color: #0F172A;
}

.company-sidebar {
  position: sticky;
  top: 0;
  height: calc(100vh - 76px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 1.25rem;
  padding: 1.5rem .9rem;
  background: #fff;
  border-right: 1px solid var(--company-border);
}

.company-logo {
  display: flex;
  align-items: center;
  min-height: 58px;
  padding: .35rem .65rem;
}

.company-logo img {
  width: 104px;
  max-height: 44px;
  object-fit: contain;
}

.company-sidebar nav {
  display: grid;
  align-content: start;
  gap: .35rem;
}

.company-sidebar nav a,
.company-logout,
.company-primary-action,
.company-card-head a {
  text-decoration: none;
}

.company-sidebar nav a {
  min-height: 44px;
  display: flex;
  align-items: center;
  border-radius: 12px;
  padding: .75rem .9rem;
  color: #334155;
  font-weight: 800;
}

.company-sidebar nav a.is-active,
.company-sidebar nav a:hover {
  background: #EEF4FF;
  color: var(--company-primary);
}

.company-sidebar-bottom {
  display: grid;
  gap: .7rem;
}

.company-mini-card {
  display: grid;
  gap: .15rem;
  border: 1px solid var(--company-border);
  border-radius: 14px;
  padding: .9rem;
  background: #fff;
}

.company-mini-card strong {
  color: var(--company-navy);
}

.company-mini-card span,
.company-logout {
  color: var(--company-muted);
  font-weight: 750;
}

.company-user-card {
  background: linear-gradient(180deg, #fff, #F9FBFF);
}

.company-logout {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: .65rem .9rem;
}

.company-main {
  display: grid;
  gap: 1.2rem;
  align-content: start;
  padding: clamp(1.2rem, 2.5vw, 2rem);
}

.company-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.company-topbar h1 {
  margin: 0 0 .35rem;
  color: var(--company-navy);
  letter-spacing: 0;
}

.company-topbar p {
  margin: 0;
  color: var(--company-muted);
}

.company-top-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .75rem;
  flex-wrap: wrap;
}

.company-notification,
.company-date-range,
.company-primary-action,
.company-card-head button {
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--company-border);
  background: #fff;
  color: var(--company-navy);
  font-weight: 850;
  padding: .7rem .95rem;
}

.company-notification {
  position: relative;
  width: 44px;
  padding: 0;
}

.company-notification::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  margin: 0 auto;
  border: 2px solid var(--company-primary);
  border-radius: 50% 50% 45% 45%;
}

.company-notification span {
  position: absolute;
  top: -6px;
  right: -6px;
  display: grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: var(--company-primary);
  color: #fff;
  font-size: .72rem;
}

.company-primary-action {
  background: linear-gradient(135deg, var(--company-primary), #2563FF);
  color: #fff;
  border-color: transparent;
  box-shadow: 0 14px 28px rgba(21, 93, 255, .22);
}

.company-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
}

.company-kpi-card,
.company-card {
  border: 1px solid var(--company-border);
  border-radius: 18px;
  background: var(--company-card);
  box-shadow: 0 18px 42px rgba(8, 20, 47, .06);
}

.company-kpi-card {
  min-height: 154px;
  padding: 1rem;
  display: grid;
  grid-template-columns: 46px 1fr;
  grid-template-rows: auto auto auto 34px;
  gap: .25rem .7rem;
  align-items: center;
}

.company-kpi-icon {
  grid-row: 1 / 4;
  width: 46px;
  height: 46px;
  border-radius: 15px;
  background:
    radial-gradient(circle at center, var(--accent), transparent 42%),
    color-mix(in srgb, var(--accent), white 86%);
}

.company-kpi-card small,
.company-kpi-card em {
  color: var(--company-muted);
  font-style: normal;
  font-weight: 760;
}

.company-kpi-card strong {
  color: var(--company-navy);
  font-size: clamp(1.55rem, 3vw, 2.1rem);
  line-height: 1;
}

.company-kpi-card em {
  color: #16A34A;
  font-size: .82rem;
}

.company-kpi-card svg {
  grid-column: 1 / -1;
  width: 100%;
  height: 34px;
}

.company-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
  gap: 1rem;
}

.company-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .95fr) minmax(330px, .8fr);
  gap: 1rem;
}

.company-card {
  padding: 1.15rem;
}

.company-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.company-card-head h2 {
  margin: 0;
  font-size: 1.12rem;
  color: var(--company-navy);
}

.company-card-head span,
.company-card-head a,
.company-card-head button {
  color: var(--company-primary);
  font-weight: 850;
}

.company-card-head a {
  font-size: .85rem;
}

.company-funnel {
  display: grid;
  gap: .65rem;
}

.company-funnel-row {
  display: grid;
  grid-template-columns: 42px minmax(150px, 1fr) 80px minmax(180px, 1.3fr);
  gap: .8rem;
  align-items: center;
  min-height: 46px;
}

.company-stage-icon {
  display: block;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--accent, #155DFF), white 86%);
}

.company-funnel-row strong,
.company-funnel-row b {
  color: var(--company-navy);
}

.company-funnel-row i {
  display: block;
  height: 30px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(90deg, color-mix(in srgb, var(--accent), white 76%), color-mix(in srgb, var(--accent), white 28%));
}

.company-source-layout {
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  gap: 1.25rem;
  align-items: center;
}

.company-source-donut {
  width: 196px;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at center, #fff 0 54%, transparent 55%),
    conic-gradient(#155DFF 0 35%, #0284C7 35% 60%, #7C3AED 60% 74%, #F59E0B 74% 86%, #94A3B8 86% 94%, #CBD5E1 94% 100%);
}

.company-source-donut strong,
.company-source-donut span {
  grid-area: 1 / 1;
}

.company-source-donut strong {
  transform: translateY(-.4rem);
  font-size: 2.2rem;
  color: var(--company-navy);
}

.company-source-donut span {
  transform: translateY(1.2rem);
  color: var(--company-muted);
  font-weight: 800;
}

.company-source-list {
  display: grid;
  gap: .7rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.company-source-list li {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto;
  gap: .7rem;
  align-items: center;
  color: #334155;
  font-weight: 800;
}

.company-source-list i {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.company-source-list strong,
.company-insight,
.company-total {
  color: var(--company-muted);
}

.company-insight {
  margin: 1rem 0 0;
  border-radius: 12px;
  padding: .8rem;
  background: #F3F7FF;
  font-weight: 760;
}

.company-job-table {
  display: grid;
  gap: .55rem;
}

.company-job-table div {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 52px 52px;
  gap: .7rem;
  align-items: center;
  min-height: 48px;
}

.company-job-table strong {
  display: grid;
  gap: .15rem;
  color: var(--company-navy);
}

.company-job-table small {
  color: var(--company-muted);
}

.company-job-table b,
.company-job-table em {
  color: var(--company-navy);
  font-style: normal;
  text-align: right;
}

.company-line-chart {
  width: 100%;
  height: auto;
  border-radius: 14px;
  background:
    linear-gradient(#E6EAF2 1px, transparent 1px),
    linear-gradient(90deg, #E6EAF2 1px, transparent 1px);
  background-size: 72px 38px;
}

.company-chart-labels {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  color: var(--company-muted);
  font-weight: 800;
  text-align: center;
}

.company-timeline-bars {
  display: grid;
  gap: 14px;
  padding: 12px 0;
}

.company-timeline-bars div {
  display: grid;
  grid-template-columns: 42px 1fr 34px;
  gap: 12px;
  align-items: center;
}

.company-timeline-bars span,
.company-timeline-bars strong {
  color: var(--company-navy);
  font-weight: 800;
}

.company-timeline-bars i {
  display: block;
  height: 10px;
  border-radius: 999px;
  background: #E6EAF2;
  overflow: hidden;
}

.company-timeline-bars b {
  display: block;
  height: 100%;
  min-width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #155DFF, #7C3AED);
}

.company-departments {
  display: grid;
  gap: .75rem;
}

.company-departments div {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr) 28px;
  gap: .75rem;
  align-items: center;
}

.company-departments span {
  color: var(--company-navy);
  font-weight: 850;
}

.company-departments span::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: .45rem;
  background: var(--accent);
}

.company-departments i {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #E9EEF8;
}

.company-departments b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #BFD1FF, #155DFF);
}

.company-departments strong {
  text-align: right;
  color: var(--company-navy);
}

.company-total {
  display: flex;
  justify-content: space-between;
  margin: 1rem 0 0;
  font-weight: 900;
}

.seeker-dashboard {
  --seeker-primary: #155DFF;
  --seeker-navy: #08142F;
  --seeker-bg: #F7F9FC;
  --seeker-card: #FFFFFF;
  --seeker-border: #E6EAF2;
  --seeker-muted: #64748B;
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
  min-height: calc(100vh - 76px);
  background: var(--seeker-bg);
  color: #0F172A;
}

.seeker-sidebar {
  position: sticky;
  top: 0;
  height: calc(100vh - 76px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 1.2rem;
  padding: 1.45rem .85rem;
  background: #fff;
  border-right: 1px solid var(--seeker-border);
}

.seeker-logo {
  display: flex;
  align-items: center;
  min-height: 56px;
  padding: .35rem .65rem;
}

.seeker-logo img {
  width: 104px;
  max-height: 44px;
  object-fit: contain;
}

.seeker-sidebar nav {
  display: grid;
  align-content: start;
  gap: .3rem;
}

.seeker-sidebar nav a,
.seeker-boost-card a,
.seeker-logout,
.seeker-user-card,
.seeker-card-head a,
.seeker-card-link,
.seeker-profile-note a {
  text-decoration: none;
}

.seeker-sidebar nav a {
  min-height: 44px;
  display: flex;
  align-items: center;
  border-radius: 12px;
  padding: .75rem .9rem;
  color: #334155;
  font-weight: 850;
}

.seeker-sidebar nav a.is-active,
.seeker-sidebar nav a:hover {
  background: #EEF4FF;
  color: var(--seeker-primary);
}

.seeker-sidebar-bottom {
  display: grid;
  gap: .8rem;
}

.seeker-boost-card {
  display: grid;
  gap: .65rem;
  border: 1px solid var(--seeker-border);
  border-radius: 18px;
  padding: 1rem;
  background: linear-gradient(180deg, #fff, #F3F7FF);
}

.seeker-boost-card p {
  margin: 0;
  color: var(--seeker-muted);
  font-size: .92rem;
}

.seeker-boost-card a,
.seeker-profile-note a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 12px;
  padding: .65rem .85rem;
  background: linear-gradient(135deg, var(--seeker-primary), #2563FF);
  color: #fff;
  font-weight: 850;
}

.seeker-logout {
  min-height: 40px;
  display: flex;
  align-items: center;
  padding: .65rem .9rem;
  color: var(--seeker-muted);
  font-weight: 800;
}

.seeker-main {
  display: grid;
  gap: 1.2rem;
  align-content: start;
  padding: clamp(1.2rem, 2.5vw, 2rem);
}

.seeker-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.seeker-topbar h1 {
  margin: 0 0 .35rem;
  color: var(--seeker-navy);
  letter-spacing: 0;
}

.seeker-topbar p {
  margin: 0;
  color: var(--seeker-muted);
}

.seeker-user-area {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: .75rem;
}

.seeker-notification {
  position: relative;
  width: 44px;
  height: 44px;
  border: 1px solid var(--seeker-border);
  border-radius: 14px;
  background: #fff;
}

.seeker-notification::before {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  margin: 0 auto;
  border: 2px solid var(--seeker-primary);
  border-radius: 50% 50% 44% 44%;
}

.seeker-notification span {
  position: absolute;
  top: -6px;
  right: -6px;
  display: grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: var(--seeker-primary);
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
}

.seeker-user-card {
  display: grid;
  gap: .1rem;
  border: 1px solid var(--seeker-border);
  border-radius: 16px;
  padding: .7rem .95rem;
  background: #fff;
  color: var(--seeker-navy);
  box-shadow: 0 16px 34px rgba(8, 20, 47, .05);
}

.seeker-user-card small {
  color: var(--seeker-muted);
}

.seeker-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1rem;
}

.seeker-kpi-card,
.seeker-card {
  border: 1px solid var(--seeker-border);
  border-radius: 18px;
  background: var(--seeker-card);
  box-shadow: 0 18px 42px rgba(8, 20, 47, .06);
}

.seeker-kpi-card {
  display: grid;
  gap: .45rem;
  min-height: 136px;
  padding: 1rem;
}

.seeker-kpi-card span,
.seeker-kpi-card small {
  color: var(--seeker-muted);
  font-weight: 800;
}

.seeker-kpi-card strong {
  color: var(--seeker-navy);
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  line-height: 1;
}

.seeker-progress {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #E6EAF2;
}

.seeker-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--seeker-primary), #7C3AED);
}

.seeker-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(390px, .9fr);
  gap: 1rem;
  align-items: start;
}

.seeker-card {
  padding: 1.15rem;
}

.seeker-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.seeker-card-head h2 {
  margin: 0;
  color: var(--seeker-navy);
  font-size: 1.12rem;
}

.seeker-card-head a,
.seeker-card-link {
  color: var(--seeker-primary);
  font-weight: 850;
}

.seeker-list,
.seeker-activity-list {
  display: grid;
  gap: .55rem;
}

.seeker-list-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto auto;
  gap: .8rem;
  align-items: center;
  min-height: 58px;
  border-bottom: 1px solid rgba(230, 234, 242, .9);
  padding: .45rem 0;
}

.seeker-list-row:last-child {
  border-bottom: 0;
}

.seeker-company-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: linear-gradient(135deg, #EAF1FF, #F3E8FF);
  color: var(--seeker-primary);
  font-weight: 900;
}

.seeker-list-row div {
  display: grid;
  gap: .15rem;
}

.seeker-list-row strong {
  color: var(--seeker-navy);
}

.seeker-list-row small {
  color: var(--seeker-muted);
  font-weight: 760;
}

.seeker-list-row em {
  border-radius: 999px;
  padding: .35rem .62rem;
  background: rgba(21, 93, 255, .08);
  color: var(--seeker-primary);
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}

.seeker-card-link {
  display: flex;
  justify-content: center;
  margin-top: .85rem;
}

.seeker-profile-layout {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 1rem;
  align-items: center;
}

.seeker-score-circle {
  --score: 0;
  width: 186px;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at center, #fff 0 58%, transparent 59%),
    conic-gradient(var(--seeker-primary) calc(var(--score) * 1%), #E6EAF2 0);
}

.seeker-score-circle strong,
.seeker-score-circle span {
  grid-area: 1 / 1;
}

.seeker-score-circle strong {
  transform: translateY(-.35rem);
  font-size: 2.55rem;
  color: var(--seeker-navy);
}

.seeker-score-circle span {
  transform: translateY(1.35rem);
  color: var(--seeker-muted);
  font-weight: 800;
}

.seeker-check-list {
  display: grid;
  gap: .55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.seeker-check-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--seeker-muted);
  font-weight: 820;
}

.seeker-check-list li::after {
  content: "!";
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(245, 158, 11, .16);
  color: #D97706;
}

.seeker-check-list li.is-done::after {
  content: "✓";
  background: rgba(22, 163, 74, .12);
  color: #16A34A;
}

.seeker-profile-note {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
  margin-top: 1rem;
  border-radius: 14px;
  padding: .85rem;
  background: #F3F7FF;
}

.seeker-profile-note span {
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: rgba(21, 93, 255, .12);
}

.seeker-profile-note p {
  margin: 0;
  color: var(--seeker-navy);
  font-weight: 800;
}

.seeker-activity-list div {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: .1rem .75rem;
  align-items: start;
  padding: .35rem 0;
}

.seeker-activity-list span {
  grid-row: span 2;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--seeker-primary), #16A34A);
}

.seeker-activity-list p,
.seeker-activity-list small {
  margin: 0;
}

.seeker-activity-list p {
  color: var(--seeker-navy);
  font-weight: 820;
}

.seeker-activity-list small {
  color: var(--seeker-muted);
  font-weight: 760;
}

@media (max-width: 900px) {
  .yopi-hero,
  .yopi-public-hero,
  .yopi-grid-4,
  .yopi-grid-3,
  .yopi-split,
  .yopi-career-strip,
  .yopi-career-strip-4,
  .jobs-search-advanced,
  .yopi-row,
  .yopi-app-dashboard,
  .yopi-kpi-grid,
  .yopi-dashboard-grid,
  .yopi-employer-grid,
  .yopi-employer-hero,
  .yopi-impact-row,
  .company-dashboard,
  .seeker-dashboard,
  .seeker-kpis,
  .seeker-dashboard-grid,
  .seeker-profile-layout,
  .company-kpis,
  .company-main-grid,
  .company-bottom-grid,
  .company-source-layout {
    grid-template-columns: 1fr;
  }

  .yopi-app-sidebar,
  .company-sidebar {
    position: static;
    height: auto;
  }

  .seeker-sidebar {
    position: static;
    height: auto;
  }

  .company-topbar,
  .seeker-topbar,
  .seeker-list-row,
  .seeker-profile-note,
  .company-funnel-row,
  .company-job-table div {
    align-items: flex-start;
    grid-template-columns: 1fr;
  }

  .yopi-panel-head,
  .yopi-row {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* YOP Jobs v3 public landing page */
.jobs-v3 {
  --jobs-blue: #155DFF;
  --jobs-navy: #08142F;
  --jobs-bg: #F7F9FC;
  --jobs-card: #FFFFFF;
  --jobs-border: #E6EAF2;
  --jobs-muted: #64748B;
  --jobs-success: #16A34A;
  --jobs-warning: #F59E0B;
  --jobs-purple: #7C3AED;
  background:
    radial-gradient(circle at 18% 12%, rgba(21, 93, 255, .08), transparent 32%),
    radial-gradient(circle at 82% 10%, rgba(124, 58, 237, .08), transparent 30%),
    var(--jobs-bg) !important;
  color: var(--jobs-navy) !important;
}

.jobs-v3 .jobs-shell {
  width: min(1880px, calc(100% - 56px)) !important;
  padding: 1.2rem 0 2rem !important;
}

.jobs-subnav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 1rem;
}

.jobs-subnav-links {
  display: flex;
  align-items: center;
  gap: 1.45rem;
  flex-wrap: wrap;
}

.jobs-subnav a,
.jobs-employer-pill,
.jobs-hero-actions a,
.jobs-persona-card a,
.jobs-feature-actions a,
.jobs-section-head a,
.jobs-premium-card a,
.jobs-match-card a,
.jobs-notification-card a,
.jobs-card-head a {
  text-decoration: none !important;
}

.jobs-subnav-links a {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  min-height: 40px;
  color: var(--jobs-navy) !important;
  background: transparent !important;
  border: 0 !important;
  font-weight: 850;
}

.jobs-subnav-links a.is-active,
.jobs-subnav-links a:hover {
  color: var(--jobs-blue) !important;
}

.jobs-subnav-links a.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -2px;
  height: 3px;
  border-radius: 999px;
  background: var(--jobs-blue);
}

.jobs-subnav-links span {
  margin-left: .35rem;
  border-radius: 999px;
  padding: .16rem .4rem;
  background: var(--jobs-blue);
  color: #fff !important;
  font-size: .68rem;
}

.jobs-employer-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 42px;
  border-radius: 12px;
  padding: .7rem 1rem;
  background: #fff !important;
  border: 1px solid var(--jobs-border) !important;
  color: var(--jobs-navy) !important;
  font-weight: 850;
  box-shadow: 0 12px 28px rgba(8, 20, 47, .06);
}

.jobs-nav-icon,
.jobs-filter-icon {
  position: relative;
  display: inline-block;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  color: currentColor;
}

.jobs-nav-icon::before,
.jobs-nav-icon::after,
.jobs-filter-icon::before,
.jobs-filter-icon::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
}

.jobs-nav-jobs::before {
  inset: 5px 2px 2px;
  border: 2px solid currentColor;
  border-radius: 4px;
}

.jobs-nav-jobs::after {
  left: 6px;
  top: 2px;
  width: 8px;
  height: 7px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
}

.jobs-nav-window::before {
  inset: 5px 2px 3px;
  border: 2px solid currentColor;
  border-radius: 2px 2px 5px 5px;
}

.jobs-nav-window::after {
  left: 2px;
  right: 2px;
  top: 4px;
  border-top: 4px solid currentColor;
  box-shadow: 4px 0 0 currentColor, 8px 0 0 currentColor, 12px 0 0 currentColor;
}

.jobs-nav-match::before {
  inset: 3px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.jobs-nav-match::after {
  left: 9px;
  top: 0;
  width: 10px;
  height: 10px;
  border-top: 2px solid currentColor;
  border-right: 2px solid currentColor;
  transform: rotate(45deg);
}

.jobs-nav-company::before {
  left: 5px;
  top: 2px;
  width: 11px;
  height: 17px;
  border: 2px solid currentColor;
  border-radius: 3px;
}

.jobs-nav-company::after {
  left: 8px;
  top: 6px;
  width: 2px;
  height: 2px;
  background: currentColor;
  box-shadow: 5px 0 0 currentColor, 0 5px 0 currentColor, 5px 5px 0 currentColor, 0 10px 0 currentColor, 5px 10px 0 currentColor;
}

.jobs-nav-employer::before {
  inset: 3px 4px;
  border: 2px solid currentColor;
  border-radius: 3px;
}

.jobs-nav-employer::after {
  left: 7px;
  top: 0;
  width: 7px;
  height: 7px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
}

.jobs-market-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 470px);
  gap: 1.5rem;
  align-items: start;
}

.jobs-market-main,
.jobs-market-sidebar {
  display: grid;
  gap: 1.35rem;
}

.jobs-market-sidebar {
  position: sticky;
  top: 92px;
}

.jobs-v3 .jobs-hero,
.jobs-search-panel,
.jobs-stat-row,
.jobs-feature-card,
.jobs-trust-row,
.jobs-results-section,
.jobs-market-sidebar > article {
  border: 1px solid var(--jobs-border) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .94) !important;
  color: var(--jobs-navy) !important;
  box-shadow: 0 18px 48px rgba(8, 20, 47, .07) !important;
}

.jobs-v3 .jobs-market-hero {
  grid-template-columns: minmax(320px, 1.18fr) minmax(235px, .72fr) minmax(235px, .72fr) !important;
  gap: 1.15rem !important;
  padding: clamp(1.4rem, 3vw, 2.35rem) !important;
  align-items: start !important;
  background:
    radial-gradient(circle at 60% 0%, rgba(21, 93, 255, .12), transparent 34%),
    radial-gradient(circle at 88% 15%, rgba(124, 58, 237, .10), transparent 30%),
    #fff !important;
}

.jobs-hero-copy {
  display: grid;
  align-content: center;
  gap: .9rem;
}

.jobs-v3 .yopi-kicker {
  background: transparent !important;
  color: var(--jobs-blue) !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-size: .78rem !important;
  letter-spacing: 0 !important;
}

.jobs-v3 .jobs-market-hero h1 {
  margin: 0 !important;
  color: var(--jobs-navy) !important;
  font-size: clamp(2.05rem, 2.25vw, 2.75rem) !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}

.jobs-v3 .jobs-market-hero h1 span {
  color: var(--jobs-blue) !important;
}

.jobs-v3 .jobs-market-hero p,
.jobs-feature-card p,
.jobs-trust-row p,
.jobs-match-card p,
.jobs-notification-card p,
.jobs-top-employers p {
  color: var(--jobs-muted) !important;
}

.jobs-hero-actions,
.jobs-feature-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .75rem;
}

.jobs-primary-action,
.jobs-secondary-action,
.jobs-persona-card a,
.jobs-premium-card a,
.jobs-match-card a,
.jobs-notification-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  border-radius: 12px;
  padding: .78rem 1.15rem;
  font-weight: 900;
}

.jobs-primary-action,
.jobs-persona-card a,
.jobs-premium-card a,
.jobs-match-card a,
.jobs-notification-card a {
  background: linear-gradient(135deg, var(--jobs-blue), var(--jobs-purple)) !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: 0 14px 28px rgba(21, 93, 255, .22);
}

.jobs-secondary-action,
.jobs-link-action {
  background: #fff !important;
  color: var(--jobs-blue) !important;
  border: 1px solid var(--jobs-border) !important;
}

.jobs-persona-card {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: .9rem;
  min-height: 300px;
  height: clamp(300px, 20vw, 330px);
  align-self: start;
  border-radius: 20px;
  border: 1px solid rgba(21, 93, 255, .12);
  padding: 1.2rem;
  overflow: hidden;
}

.jobs-persona-seeker {
  background: linear-gradient(135deg, #EEF5FF, #F7FBFF);
}

.jobs-persona-employer {
  background: linear-gradient(135deg, #F5F0FF, #F9F7FF);
}

.jobs-persona-card div:first-child {
  position: relative;
  z-index: 1;
  width: min(70%, 184px);
  display: grid;
  gap: .5rem;
  align-content: center;
}

.jobs-persona-card span,
.jobs-feature-card span,
.jobs-premium-card span,
.jobs-match-card > span,
.jobs-section-head span {
  color: var(--jobs-blue) !important;
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.jobs-persona-card h2,
.jobs-feature-card h2,
.jobs-premium-card h2,
.jobs-match-card h2,
.jobs-card-head h2,
.jobs-section-head h2 {
  margin: 0;
  color: var(--jobs-navy) !important;
  letter-spacing: 0 !important;
}

.jobs-persona-card h2 {
  font-size: clamp(1.45rem, 2vw, 2rem) !important;
  line-height: 1.12 !important;
}

.jobs-feature-card h2,
.jobs-premium-card h2,
.jobs-match-card h2,
.jobs-card-head h2,
.jobs-section-head h2 {
  font-size: clamp(1.2rem, 1.6vw, 1.55rem) !important;
  line-height: 1.18 !important;
}

.jobs-persona-card ul,
.jobs-feature-card ul,
.jobs-premium-card ul,
.jobs-match-card ul {
  display: grid;
  gap: .45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.jobs-persona-card li,
.jobs-feature-card li,
.jobs-premium-card li,
.jobs-match-card li {
  color: #31415F !important;
  font-weight: 780;
}

.jobs-persona-card ul {
  gap: .32rem;
}

.jobs-persona-card a {
  min-height: 42px;
  padding: .62rem .88rem;
  font-size: .88rem;
  white-space: nowrap;
}

.jobs-persona-card li::before,
.jobs-feature-card li::before,
.jobs-premium-card li::before {
  content: "";
  display: inline-block;
  width: .62rem;
  height: .34rem;
  margin-right: .45rem;
  border-left: 2px solid var(--jobs-blue);
  border-bottom: 2px solid var(--jobs-blue);
  transform: rotate(-45deg) translateY(-1px);
}

.jobs-persona-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.jobs-persona-visual img {
  height: 100%;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
}

.jobs-persona-seeker .jobs-persona-visual img,
.jobs-persona-employer .jobs-persona-visual img {
  object-position: right center;
}

.jobs-search-panel {
  padding: 1rem;
}

.jobs-v3 .jobs-search-advanced {
  grid-template-columns: minmax(180px, 1.1fr) minmax(160px, .8fr) minmax(180px, 1fr) minmax(150px, .8fr) minmax(140px, .75fr) auto !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}

.jobs-v3 .jobs-search label {
  gap: .35rem !important;
}

.jobs-v3 .jobs-search label span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: #334155 !important;
  font-size: .8rem !important;
  font-weight: 850 !important;
}

.jobs-filter-icon {
  width: 18px;
  height: 18px;
  color: var(--jobs-blue);
}

.jobs-icon-search::before {
  left: 2px;
  top: 2px;
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.jobs-icon-search::after {
  right: 2px;
  bottom: 2px;
  width: 7px;
  border-top: 2px solid currentColor;
  transform: rotate(45deg);
}

.jobs-icon-category::before {
  inset: 2px;
  border: 2px solid currentColor;
  border-radius: 4px;
  box-shadow: 8px 0 0 -2px #fff, 8px 0 0 0 currentColor, 0 8px 0 -2px #fff, 0 8px 0 0 currentColor, 8px 8px 0 -2px #fff, 8px 8px 0 0 currentColor;
}

.jobs-icon-location::before {
  left: 4px;
  top: 1px;
  width: 10px;
  height: 14px;
  border: 2px solid currentColor;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
}

.jobs-icon-location::after {
  left: 8px;
  top: 5px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
}

.jobs-icon-work::before {
  left: 2px;
  top: 4px;
  width: 14px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: 2px;
}

.jobs-icon-work::after {
  left: 6px;
  bottom: 1px;
  width: 8px;
  border-top: 2px solid currentColor;
}

.jobs-icon-filter::before {
  left: 2px;
  right: 2px;
  top: 4px;
  border-top: 2px solid currentColor;
  box-shadow: 0 6px 0 currentColor, 0 12px 0 currentColor;
}

.jobs-icon-filter::after {
  left: 5px;
  top: 1px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 7px 6px 0 currentColor, -2px 12px 0 currentColor;
}

.jobs-v3 .jobs-search input,
.jobs-v3 .jobs-search select,
.jobs-v3 .jobs-search button {
  min-height: 52px !important;
  border-radius: 12px !important;
}

.jobs-v3 .jobs-search button {
  align-self: end;
  background: linear-gradient(135deg, var(--jobs-blue), #2F5BFF) !important;
  color: #fff !important;
  border: 0 !important;
}

.jobs-popular-searches {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: .9rem;
}

.jobs-popular-searches strong {
  color: var(--jobs-navy);
  font-size: .82rem;
}

.jobs-popular-searches a {
  border-radius: 999px;
  padding: .34rem .72rem;
  background: #F2F4FF;
  color: var(--jobs-blue) !important;
  font-size: .82rem;
  font-weight: 850;
  text-decoration: none;
}

.jobs-stat-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  padding: 1rem 1.25rem;
}

.jobs-stat-row article {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  grid-template-rows: auto auto;
  gap: .1rem .75rem;
  align-items: center;
}

.jobs-stat-icon {
  grid-row: 1 / 3;
  width: 48px;
  height: 48px;
  object-fit: contain;
  border-radius: 15px;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.82) 0 24%, transparent 25%),
    linear-gradient(135deg, rgba(21, 93, 255, .16), rgba(124, 58, 237, .16));
}

.jobs-kicker-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: inline-block;
  object-fit: contain;
  border-radius: 7px;
}

.jobs-stat-row strong {
  color: var(--jobs-blue);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1;
}

.jobs-stat-row small {
  color: var(--jobs-navy);
  font-weight: 850;
}

.jobs-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.35rem;
}

.jobs-feature-card {
  position: relative;
  min-height: 285px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .9rem;
  align-items: center;
  padding: 1.4rem;
  overflow: hidden;
}

.jobs-feature-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  display: none;
  background: none;
}

.jobs-feature-card > div {
  position: relative;
  z-index: 2;
  width: min(74%, 350px);
  align-self: center;
  display: grid;
  gap: .48rem;
  align-content: center;
}

.jobs-feature-seeker {
  background:
    radial-gradient(circle at 74% 54%, rgba(21, 93, 255, .15), transparent 28%),
    #fff !important;
}

.jobs-feature-employer {
  background:
    radial-gradient(circle at 75% 54%, rgba(124, 58, 237, .15), transparent 28%),
    #fff !important;
}

.jobs-profile-preview,
.jobs-candidate-preview {
  align-self: center;
  display: grid;
  gap: .6rem;
  border: 1px solid var(--jobs-border);
  border-radius: 18px;
  padding: 1rem;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 18px 36px rgba(8, 20, 47, .07);
}

.jobs-profile-preview strong {
  justify-self: end;
  display: grid;
  place-items: center;
  width: 58px;
  aspect-ratio: 1;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #fff 0 57%, transparent 58%),
    conic-gradient(#16A34A 0 85%, #E6EAF2 85% 100%);
  color: var(--jobs-blue);
}

.jobs-profile-preview i {
  height: 14px;
  border-radius: 999px;
  background: linear-gradient(90deg, #DCE7FF 0 70%, #F1F5F9 70% 100%);
}

.jobs-candidate-preview div {
  border: 1px solid var(--jobs-border);
  border-radius: 12px;
  padding: .65rem;
}

.jobs-candidate-preview b {
  color: var(--jobs-success);
}

.jobs-candidate-preview small {
  display: block;
  color: var(--jobs-muted);
}

.jobs-feature-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 0;
  object-fit: cover;
  object-position: right center;
  opacity: 1;
  filter: none;
}

.jobs-feature-card p {
  font-size: .92rem;
  line-height: 1.42;
}

.jobs-feature-card ul {
  gap: .28rem;
}

.jobs-feature-card li {
  font-size: .92rem;
  line-height: 1.35;
}

.jobs-feature-card .jobs-feature-actions {
  gap: .6rem;
  flex-wrap: nowrap;
}

.jobs-feature-card .jobs-primary-action {
  min-height: 42px;
  padding: .62rem .9rem;
  font-size: .9rem;
  white-space: nowrap;
}

.jobs-feature-card .jobs-link-action {
  min-height: auto;
  padding: .2rem 0;
  background: transparent !important;
  border: 0 !important;
  color: var(--jobs-blue) !important;
  box-shadow: none !important;
  white-space: nowrap;
}

.jobs-trust-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  padding: 1.1rem;
}

.jobs-trust-row article {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: .1rem .8rem;
  align-items: center;
}

.jobs-trust-icon {
  grid-row: 1 / 3;
  width: 46px;
  height: 46px;
  display: block;
  object-fit: contain;
  border-radius: 15px;
  background: linear-gradient(135deg, rgba(21, 93, 255, .10), rgba(124, 58, 237, .08));
}

.jobs-trust-row span {
  position: relative;
  grid-row: 1 / 3;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: rgba(21, 93, 255, .10);
}

.jobs-trust-icon::before,
.jobs-trust-icon::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
}

.jobs-trust-icon.shield::before {
  left: 13px;
  top: 9px;
  width: 18px;
  height: 22px;
  border: 2px solid var(--jobs-blue);
  border-radius: 9px 9px 12px 12px;
}

.jobs-trust-icon.shield::after {
  left: 17px;
  top: 18px;
  width: 11px;
  height: 6px;
  border-left: 2px solid var(--jobs-blue);
  border-bottom: 2px solid var(--jobs-blue);
  transform: rotate(-45deg);
}

.jobs-trust-icon.fast::before {
  inset: 11px;
  border: 2px solid var(--jobs-blue);
  border-radius: 50%;
}

.jobs-trust-icon.fast::after {
  left: 10px;
  top: 20px;
  width: 24px;
  border-top: 2px solid var(--jobs-blue);
  transform: rotate(-30deg);
}

.jobs-trust-icon.current::before {
  inset: 10px;
  border: 2px solid var(--jobs-blue);
  border-radius: 50%;
}

.jobs-trust-icon.current::after {
  left: 21px;
  top: 12px;
  height: 12px;
  border-left: 2px solid var(--jobs-blue);
  box-shadow: 5px 9px 0 -1px var(--jobs-blue);
  transform: rotate(0deg);
}

.jobs-trust-icon.free::before {
  left: 10px;
  top: 12px;
  width: 24px;
  height: 18px;
  border: 2px solid var(--jobs-blue);
  border-radius: 50%;
}

.jobs-trust-icon.free::after {
  content: "FREE";
  left: 9px;
  top: 18px;
  color: var(--jobs-blue);
  font-size: 8px;
  font-weight: 900;
}

.jobs-trust-row strong {
  color: var(--jobs-navy);
}

.jobs-trust-row p {
  margin: 0;
}

.jobs-results-section {
  padding: 1.2rem;
}

.jobs-section-head,
.jobs-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.jobs-section-head h2 {
  font-size: 1.35rem;
}

.jobs-section-head a,
.jobs-card-head a {
  color: var(--jobs-blue) !important;
  font-weight: 850;
}

.jobs-v3 .jobs-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(285px, 1fr)) !important;
  gap: 1rem !important;
}

.jobs-v3 .job-card {
  border-radius: 18px !important;
  padding: 1rem !important;
  gap: .75rem !important;
  box-shadow: 0 14px 34px rgba(8, 20, 47, .06) !important;
}

.job-card-top {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
}

.job-card-top > span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 13px;
  background: linear-gradient(135deg, #EAF1FF, #F3E8FF);
  color: var(--jobs-blue) !important;
  font-weight: 900;
}

.job-card-top h3 {
  margin: 0;
  color: var(--jobs-navy);
  font-size: 1rem;
  letter-spacing: 0;
}

.job-card-top strong {
  color: var(--jobs-muted);
  font-size: .88rem;
}

.job-card-top em {
  border-radius: 999px;
  padding: .35rem .55rem;
  background: #F2F4FF;
  color: var(--jobs-blue);
  font-style: normal;
  font-size: .78rem;
  font-weight: 850;
}

.jobs-v3 .job-card p {
  margin: 0;
  color: var(--jobs-muted) !important;
}

.job-card-actions {
  display: flex;
  justify-content: flex-start;
}

.jobs-v3 .job-apply-link {
  min-height: 42px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--jobs-blue), var(--jobs-purple)) !important;
  color: #fff !important;
}

.jobs-empty-card {
  grid-column: 1 / -1;
}

.jobs-v3 .jobs-pagination {
  margin-top: 1rem;
}

.jobs-premium-card {
  position: relative;
  min-height: 305px;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
  padding: 1.35rem;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 46%, rgba(124, 58, 237, .16), transparent 35%),
    #fff !important;
}

.jobs-premium-card div:first-child {
  position: relative;
  z-index: 1;
  width: min(62%, 280px);
  display: grid;
  gap: .7rem;
}

.jobs-premium-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
  filter: drop-shadow(0 20px 34px rgba(76, 29, 149, .16));
}

.jobs-match-card,
.jobs-top-employers,
.jobs-notification-card {
  padding: 1.2rem;
}

.jobs-match-card {
  position: relative;
  min-height: 285px;
  overflow: hidden;
  background: #fff !important;
}

.jobs-match-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  display: none;
  background: none;
}

.jobs-match-card > span,
.jobs-notification-card strong {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
}

.jobs-match-card > span,
.jobs-match-card h2,
.jobs-match-card p,
.jobs-match-card .jobs-match-layout,
.jobs-match-card a {
  position: relative;
  z-index: 2;
}

.jobs-match-card h2,
.jobs-match-card p {
  max-width: 68%;
}

.jobs-match-layout {
  display: block;
  width: min(62%, 260px);
  margin: .9rem 0 1rem;
}

.jobs-match-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 0;
  object-fit: cover;
  object-position: right center;
  opacity: 1;
  filter: none;
}

.jobs-match-card ul {
  margin: 0;
}

.jobs-match-card li::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: .45rem;
  border-radius: 50%;
  background: var(--jobs-blue);
}

.jobs-employer-list {
  display: grid;
  gap: .8rem;
}

.jobs-employer-list div {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: .75rem;
  align-items: center;
}

.jobs-employer-list span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #F2F4FF;
  color: var(--jobs-blue) !important;
  font-weight: 900;
}

.jobs-employer-list strong {
  display: grid;
  color: var(--jobs-navy);
}

.jobs-employer-list small {
  color: var(--jobs-muted);
  font-weight: 750;
}

.jobs-employer-list em {
  border-radius: 999px;
  padding: .34rem .55rem;
  background: #F2F4FF;
  color: var(--jobs-muted);
  font-style: normal;
  font-size: .76rem;
  font-weight: 850;
}

.jobs-notification-card {
  position: relative;
  min-height: 152px;
  display: block;
  padding: 1.05rem 1.2rem;
  overflow: hidden;
  background: #15106B !important;
}

.jobs-notification-card div {
  position: relative;
  z-index: 2;
  width: min(56%, 255px);
  display: grid;
  gap: .42rem;
}

.jobs-notification-card strong,
.jobs-notification-card p {
  color: #fff !important;
}

.jobs-notification-card strong {
  max-width: 255px;
  font-size: .88rem;
  line-height: 1.16;
  white-space: nowrap;
}

.jobs-notification-card p {
  opacity: .88;
  margin: 0;
  max-width: 235px;
  font-size: .76rem;
  line-height: 1.34;
}

.jobs-notification-card form {
  margin: .05rem 0 0;
}

.jobs-notification-card a,
.jobs-notification-card button {
  width: fit-content;
  max-width: 100%;
  min-height: 34px;
  border: 0;
  border-radius: 9px;
  padding: .48rem .65rem;
  background: #fff !important;
  color: var(--jobs-blue) !important;
  box-shadow: none;
  font-size: .72rem;
  line-height: 1.16;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}

.jobs-notification-card.is-active button {
  color: #047857 !important;
}

.jobs-notification-visual {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 0;
  object-fit: fill;
  object-position: right center;
  opacity: 1;
  filter: none;
}

@media (max-width: 1280px) {
  .jobs-market-layout {
    grid-template-columns: 1fr !important;
  }

  .jobs-market-sidebar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 1080px) {
  .jobs-v3 .jobs-market-hero,
  .jobs-feature-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 980px) {
  .jobs-v3 .jobs-shell {
    width: min(100% - 28px, 760px) !important;
  }

  .jobs-subnav,
  .jobs-section-head,
  .jobs-card-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .jobs-v3 .jobs-search-advanced,
  .jobs-stat-row,
  .jobs-feature-card,
  .jobs-trust-row,
  .jobs-market-sidebar,
  .jobs-premium-card,
  .jobs-match-layout {
    grid-template-columns: 1fr !important;
  }

  .jobs-persona-card {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 260px;
  }

  .jobs-feature-card {
    min-height: 320px;
  }

  .jobs-feature-card > div {
    width: min(76%, 360px);
  }

  .jobs-match-visual,
  .jobs-match-card ul {
    grid-column: auto;
  }

  .jobs-persona-visual {
    min-height: 145px;
  }

  .jobs-trust-row article,
  .jobs-stat-row article,
  .jobs-employer-list div,
  .job-card-top {
    grid-template-columns: 1fr;
  }
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-hero-copy,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-sidebar article {
  text-align: left !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-primary-action,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-premium-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .job-apply-link {
  width: fit-content !important;
  max-width: 100% !important;
  background: linear-gradient(135deg, var(--jobs-blue), var(--jobs-purple)) !important;
  color: #fff !important;
  border: 0 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-hero-actions a.jobs-secondary-action,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-actions a.jobs-link-action,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-section-head a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-card-head a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-popular-searches a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-employer-pill {
  background: #fff !important;
  color: var(--jobs-blue) !important;
  border: 1px solid var(--jobs-border) !important;
  box-shadow: none !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-popular-searches a {
  background: #F2F4FF !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card h2 {
  font-size: clamp(1.2rem, 1.25vw, 1.45rem) !important;
  line-height: 1.12 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card h2,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-premium-card h2,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card h2,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-card-head h2,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-section-head h2 {
  font-size: clamp(1.15rem, 1.25vw, 1.45rem) !important;
  line-height: 1.18 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-hero #jobs-hero-title {
  margin: 0 !important;
  max-width: 100% !important;
  font-size: clamp(2.05rem, 2.35vw, 2.6rem) !important;
  line-height: 1.06 !important;
  letter-spacing: 0 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-link-action {
  min-height: auto !important;
  padding: .2rem 0 !important;
  background: transparent !important;
  border-color: transparent !important;
  color: var(--jobs-blue) !important;
  box-shadow: none !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card button {
  min-height: 34px !important;
  border-radius: 9px !important;
  padding: .48rem .65rem !important;
  background: #fff !important;
  color: var(--jobs-blue) !important;
  border: 0 !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card.is-active button {
  color: #047857 !important;
}

/* Jobs v3 final visual polish */
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-subnav {
  min-height: 48px;
  padding: 0 .35rem;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-sidebar {
  align-items: start !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-subnav-links {
  gap: 1.25rem;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-subnav-links a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-employer-pill {
  font-size: .92rem !important;
  line-height: 1 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-nav-icon,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-filter-icon {
  width: 18px !important;
  height: 18px !important;
  overflow: hidden !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-nav-window::after {
  left: 4px !important;
  right: 4px !important;
  top: 5px !important;
  border-top-width: 2px !important;
  box-shadow: none !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-icon-category::before {
  inset: 2px !important;
  border-radius: 3px !important;
  box-shadow:
    7px 0 0 -2px #fff,
    7px 0 0 0 currentColor,
    0 7px 0 -2px #fff,
    0 7px 0 0 currentColor,
    7px 7px 0 -2px #fff,
    7px 7px 0 0 currentColor !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search-panel {
  padding: 1.15rem 1.25rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search-advanced {
  align-items: end !important;
  gap: .85rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search label {
  min-width: 0 !important;
  gap: .42rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search label span {
  min-height: 20px !important;
  white-space: nowrap !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search input,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search select {
  width: 100% !important;
  font-size: .94rem !important;
  border: 1px solid var(--jobs-border) !important;
  box-shadow: none !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search button {
  min-width: 132px !important;
  padding-inline: 1.1rem !important;
  white-space: nowrap !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-row {
  align-items: center !important;
  padding: 1.05rem 1.45rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-row article {
  grid-template-columns: 58px minmax(0, 1fr) !important;
  column-gap: .82rem !important;
  min-width: 0 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-icon,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-trust-icon {
  width: 52px !important;
  height: 52px !important;
  border-radius: 16px !important;
  padding: 0 !important;
  object-fit: contain !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-row strong {
  color: var(--jobs-navy) !important;
  font-size: clamp(1.5rem, 1.8vw, 2rem) !important;
  line-height: .95 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-row small {
  color: #475569 !important;
  font-size: .84rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card {
  min-height: 300px !important;
  padding: 1.55rem !important;
  background-color: #fff !important;
  overflow: hidden !important;
  isolation: isolate !important;
  align-items: stretch !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card > div {
  position: relative !important;
  z-index: 2 !important;
  width: min(55%, 340px) !important;
  gap: .58rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.96) 36%, rgba(255,255,255,.28) 62%, rgba(255,255,255,0) 100%) !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card h2 {
  max-width: 330px !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card p {
  max-width: 330px !important;
  font-size: .94rem !important;
  line-height: 1.43 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card ul {
  gap: .32rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card li {
  font-size: .92rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-feature-actions {
  align-items: center !important;
  gap: .7rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-primary-action {
  min-height: 44px !important;
  border-radius: 12px !important;
  padding: .68rem 1rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-link-action,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-section-head a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-card-head a {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 32px !important;
  border-radius: 999px !important;
  padding: .36rem .72rem !important;
  background: #F2F4FF !important;
  border: 1px solid rgba(21, 93, 255, .12) !important;
  color: var(--jobs-blue) !important;
  box-shadow: none !important;
  font-size: .86rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-visual {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: right center !important;
  opacity: 1 !important;
  border-radius: inherit !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-seeker .jobs-feature-visual {
  object-position: 72% center !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-employer .jobs-feature-visual {
  object-position: 78% center !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card {
  min-height: 154px !important;
  padding: 1.05rem 1.15rem !important;
  background: #fff !important;
  border-radius: 18px !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-visual {
  object-fit: fill !important;
  object-position: center center !important;
  opacity: 1 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card > span {
  gap: .35rem !important;
  font-size: .68rem !important;
  line-height: 1 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card .jobs-kicker-icon {
  width: 18px !important;
  height: 18px !important;
  border-radius: 6px !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card h2 {
  max-width: 205px !important;
  margin: .32rem 0 .28rem !important;
  font-size: 1.02rem !important;
  line-height: 1.16 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card p {
  max-width: 218px !important;
  margin: 0 !important;
  font-size: .73rem !important;
  line-height: 1.32 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card .jobs-match-layout {
  display: none !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card a {
  min-height: 32px !important;
  margin-top: .58rem !important;
  border-radius: 9px !important;
  padding: .46rem .78rem !important;
  font-size: .76rem !important;
  box-shadow: 0 12px 22px rgba(21, 93, 255, .22) !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card {
  min-height: 134px !important;
  padding: .86rem 1.02rem !important;
  background: #15106B !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 36px rgba(21, 16, 107, .20) !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-visual {
  object-fit: fill !important;
  object-position: center center !important;
  opacity: 1 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card div {
  width: min(49%, 220px) !important;
  gap: .32rem !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card strong {
  max-width: 210px !important;
  color: #fff !important;
  font-size: .82rem !important;
  line-height: 1.14 !important;
  white-space: normal !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card p {
  max-width: 198px !important;
  color: rgba(255, 255, 255, .92) !important;
  font-size: .68rem !important;
  line-height: 1.25 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card a,
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card button {
  min-height: 30px !important;
  border-radius: 8px !important;
  padding: .42rem .58rem !important;
  background: #fff !important;
  color: var(--jobs-blue) !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: .66rem !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}

@media (max-width: 1280px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card {
    min-height: 168px !important;
  }
}

@media (max-width: 1500px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-layout {
    grid-template-columns: 1fr !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-sidebar {
    position: static !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card > div,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card h2,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-match-card p,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card div {
    width: 100% !important;
    max-width: 100% !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-notification-card p {
    max-width: 260px !important;
  }
}

/* Jobs product cards, Smart Apply strip and public detail page */
.jobs-v3 *,
.job-detail-page * {
  box-sizing: border-box;
}

.jobs-smart-apply-strip {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .95fr) auto;
  align-items: center;
  gap: 1rem;
  padding: 1.15rem 1.25rem;
  border: 1px solid rgba(21, 93, 255, .16);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(21, 93, 255, .08), rgba(124, 58, 237, .10)),
    #fff;
  box-shadow: 0 18px 46px rgba(8, 20, 47, .07);
}

.jobs-smart-apply-strip span {
  color: var(--jobs-blue);
  font-size: .75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.jobs-smart-apply-strip h2 {
  margin: .15rem 0 .25rem;
  color: var(--jobs-navy);
  font-size: clamp(1.1rem, 1.25vw, 1.35rem);
  line-height: 1.16;
}

.jobs-smart-apply-strip p {
  margin: 0;
  color: var(--jobs-muted);
}

.jobs-smart-apply-strip ol {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.jobs-smart-apply-strip li {
  display: grid;
  place-items: center;
  min-height: 42px;
  border-radius: 12px;
  background: #F2F4FF;
  color: var(--jobs-blue);
  font-size: .78rem;
  font-weight: 900;
  text-align: center;
}

.jobs-smart-apply-strip a,
.job-detail-page .jobs-primary-action,
.job-detail-page .jobs-link-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 12px;
  padding: .72rem 1rem;
  text-decoration: none;
  font-weight: 900;
  white-space: nowrap;
}

.jobs-smart-apply-strip a,
.job-detail-page .jobs-primary-action {
  background: linear-gradient(135deg, var(--jobs-blue), var(--jobs-purple));
  color: #fff !important;
}

.jobs-v3 .jobs-job-card {
  display: grid;
  align-content: start;
  min-height: 260px;
}

.jobs-company-mark {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 13px;
  background: linear-gradient(135deg, #EAF1FF, #F3E8FF);
  color: var(--jobs-blue) !important;
  font-weight: 900;
  text-decoration: none;
}

.jobs-v3 .job-card-top > span {
  display: none;
}

.jobs-v3 .job-card-top h3 a {
  color: var(--jobs-navy) !important;
  text-decoration: none;
}

.jobs-company-link {
  color: var(--jobs-muted) !important;
  font-size: .88rem;
  font-weight: 850;
  text-decoration: none;
}

.jobs-job-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
}

.jobs-job-meta span {
  border-radius: 999px;
  padding: .28rem .5rem;
  background: #F2F4FF;
  color: var(--jobs-blue);
  font-size: .72rem;
  font-weight: 900;
}

.jobs-card-score {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: .18rem .55rem;
  align-items: center;
  padding: .65rem .75rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(21, 93, 255, .07), rgba(16, 185, 129, .07));
}

.jobs-card-score strong {
  grid-row: 1 / 3;
  color: var(--jobs-blue);
  font-size: 1.25rem;
  line-height: 1;
}

.jobs-card-score span {
  color: var(--jobs-navy);
  font-size: .8rem;
  font-weight: 900;
}

.jobs-card-score i {
  display: block;
  height: 7px;
  border-radius: 999px;
  overflow: hidden;
  background: #E6EAF2;
}

.jobs-card-score b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--jobs-blue), #10B981);
}

.job-card-actions {
  gap: .55rem;
  flex-wrap: wrap;
}

.jobs-v3 .job-detail-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 12px;
  padding: .7rem .9rem;
  background: #F2F4FF !important;
  color: var(--jobs-blue) !important;
  font-weight: 900;
  text-decoration: none;
}

.jobs-v3 .job-apply-link {
  padding: .7rem .95rem !important;
  text-decoration: none !important;
}

.job-detail-page {
  --jobs-blue: #155DFF;
  --jobs-navy: #08142F;
  --jobs-bg: #F7F9FC;
  --jobs-card: #FFFFFF;
  --jobs-border: #E6EAF2;
  --jobs-muted: #64748B;
  --jobs-purple: #7C3AED;
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
  padding: 1.35rem 0 2.5rem;
  color: var(--jobs-navy);
}

.job-detail-back {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  margin-bottom: 1rem;
  border-radius: 999px;
  padding: .55rem .85rem;
  background: #fff;
  color: var(--jobs-blue) !important;
  border: 1px solid var(--jobs-border);
  text-decoration: none;
  font-weight: 900;
}

.job-detail-hero,
.job-detail-panel {
  border: 1px solid var(--jobs-border);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(8, 20, 47, .07);
}

.job-detail-hero {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr) minmax(170px, 220px);
  gap: 1rem;
  align-items: center;
  padding: 1.35rem;
}

.job-detail-company-mark {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background: linear-gradient(135deg, #EAF1FF, #F3E8FF);
  color: var(--jobs-blue);
  font-size: 1.2rem;
  font-weight: 950;
}

.job-detail-hero h1 {
  margin: .2rem 0 .35rem;
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.05;
}

.job-detail-hero p {
  margin: 0;
  color: var(--jobs-muted);
}

.job-detail-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  margin-top: .75rem;
}

.job-detail-badges span {
  border-radius: 999px;
  padding: .34rem .62rem;
  background: #F2F4FF;
  color: var(--jobs-blue);
  font-weight: 900;
  font-size: .78rem;
}

.job-detail-score {
  display: grid;
  gap: .2rem;
  justify-items: center;
  padding: 1rem;
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(21, 93, 255, .08), rgba(16, 185, 129, .08));
  text-align: center;
}

.job-detail-score strong {
  color: var(--jobs-blue);
  font-size: 2.2rem;
  line-height: 1;
}

.job-detail-score span {
  color: var(--jobs-navy);
  font-weight: 950;
}

.job-detail-score small {
  color: var(--jobs-muted);
}

.job-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 1.2rem;
  margin-top: 1.2rem;
  align-items: start;
}

.job-detail-main,
.job-detail-side {
  display: grid;
  gap: 1.2rem;
}

.job-detail-panel {
  padding: 1.2rem;
}

.job-detail-panel h2 {
  margin: 0 0 .65rem;
  font-size: 1.18rem;
}

.job-detail-panel p {
  color: var(--jobs-muted);
}

.job-detail-media {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: .8rem;
}

.job-detail-media img,
.job-detail-media video {
  width: 100%;
  border-radius: 18px;
  border: 1px solid var(--jobs-border);
  background: #fff;
}

.job-detail-related {
  display: grid;
  gap: .65rem;
}

.job-detail-related a {
  display: grid;
  gap: .15rem;
  padding: .75rem;
  border-radius: 14px;
  background: #F7F9FC;
  text-decoration: none;
}

.job-detail-related strong {
  color: var(--jobs-navy);
}

.job-detail-related span {
  color: var(--jobs-muted);
  font-size: .84rem;
}

@media (max-width: 980px) {
  .jobs-smart-apply-strip,
  .job-detail-grid,
  .job-detail-hero {
    grid-template-columns: 1fr;
  }

  .jobs-smart-apply-strip ol {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 {
    overflow-x: clip;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-shell {
    width: min(100% - 20px, 760px) !important;
    padding-top: .85rem !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-subnav-links,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-hero-actions,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-feature-actions,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .job-card-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    gap: .55rem !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-hero-actions a,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-feature-card .jobs-feature-actions a,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .job-card-actions a,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-smart-apply-strip a {
    width: 100% !important;
    max-width: 100% !important;
    justify-content: center !important;
    white-space: normal !important;
    text-align: center !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search-panel,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-results-section {
    padding: .9rem !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search-advanced {
    grid-template-columns: 1fr !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search input,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search select,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-search button {
    min-width: 0 !important;
    width: 100% !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-stat-row,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-trust-row,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-sidebar,
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-smart-apply-strip {
    grid-template-columns: 1fr !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-list {
    grid-template-columns: 1fr !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .job-card-top {
    grid-template-columns: 44px minmax(0, 1fr) !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .job-card-top em {
    grid-column: 1 / -1;
    justify-self: start;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-smart-apply-strip ol {
    grid-template-columns: 1fr 1fr !important;
  }

  .job-detail-page {
    width: min(100% - 20px, 720px);
  }
}

/* Jobs hero readability repair: persona cards use integrated background visuals. */
html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-hero {
  align-items: stretch !important;
  overflow: hidden !important;
}

@media (min-width: 1281px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-hero {
    grid-template-columns: minmax(320px, .9fr) repeat(2, minmax(340px, 1fr)) !important;
  }
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card {
  display: block !important;
  min-height: 330px !important;
  height: auto !important;
  padding: 1.55rem 1.45rem !important;
  isolation: isolate !important;
  background-color: #F7FAFF !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card > div:first-child {
  position: relative !important;
  z-index: 2 !important;
  width: min(48%, 245px) !important;
  max-width: 245px !important;
  min-width: 0 !important;
  display: grid !important;
  gap: .56rem !important;
  align-content: center !important;
  min-height: 278px !important;
  padding: .15rem .25rem .15rem 0 !important;
  border-radius: 18px !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 34%, rgba(255,255,255,.18) 56%, rgba(255,255,255,0) 100%) !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card h2 {
  max-width: 235px !important;
  font-size: clamp(1.34rem, 1.7vw, 1.95rem) !important;
  line-height: 1.08 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card ul {
  max-width: 235px !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card li {
  color: #42526F !important;
  font-size: .95rem !important;
  line-height: 1.28 !important;
  font-weight: 760 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card a {
  margin-top: .25rem !important;
  min-height: 44px !important;
  padding: .68rem 1.05rem !important;
  border-radius: 12px !important;
  white-space: nowrap !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-visual {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-visual img {
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: right center !important;
  border-radius: 0 !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-seeker .jobs-persona-visual img {
  object-position: 76% center !important;
}

html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-employer .jobs-persona-visual img {
  object-position: 82% center !important;
}

@media (max-width: 1280px) and (min-width: 861px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-market-hero {
    grid-template-columns: repeat(2, minmax(320px, 1fr)) !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-hero-copy {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 860px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card {
    min-height: 305px !important;
    padding: 1.2rem !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card > div:first-child {
    width: min(56%, 260px) !important;
    max-width: 260px !important;
    min-height: 250px !important;
  }
}

@media (max-width: 560px) {
  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card {
    min-height: 345px !important;
    padding: 1.05rem !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card > div:first-child {
    width: min(62%, 235px) !important;
    max-width: 235px !important;
    min-height: 300px !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-card::before {
    background:
      linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 48%, rgba(255,255,255,.25) 72%, rgba(255,255,255,0) 100%) !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-seeker .jobs-persona-visual img {
    object-position: 78% center !important;
  }

  html[data-yop-theme="light"] body .yop-page-main .jobs-v3.jobs-v3 .jobs-persona-employer .jobs-persona-visual img {
    object-position: 84% center !important;
  }
}
