@import url("https://fonts.googleapis.com/css2?family=Titillium+Web:wght@400;600;700&display=swap");

/* ============================================================
   VERTANICAL x Ashby
   Vollständiges Theme für Jobboard, Stellendetail und Bewerbung
   ============================================================ */

:root {
    --colorPrimary900: #a51f52;
    --colorPrimary600: #ca2e68;
    --widthMaxJobBoard: 68.75rem;
    --borderRadiusContainer: 0.875rem;
    --borderRadiusControl: 0.625rem;
    --borderRadiusButton: 999px;
    --fontFamily: "Titillium Web", "Helvetica Neue", Helvetica, Arial, sans-serif;
    --colorAppBackground: #ffffff;

    --vertanical-pink: #ca2e68;
    --vertanical-pink-dark: #a51f52;
    --vertanical-pink-light: #f9e9f0;
    --vertanical-pink-soft: #fff7fa;
    --vertanical-ink: #353535;
    --vertanical-copy: #4f4f4f;
    --vertanical-muted: #6f6f73;
    --vertanical-line: #e7dde1;
    --vertanical-white: #ffffff;
    --vertanical-success: #277a5a;
    --vertanical-error: #b42318;
    --vertanical-shadow: 0 1.25rem 3.75rem rgba(53, 53, 53, 0.1);
    --vertanical-content-edge: calc((100vw - var(--widthMaxJobBoard)) / 2 + 1.25rem);
}

/* ============================================================
   Basis
   ============================================================ */

html,
body {
    margin: 0;
    overflow-x: hidden;
    background: var(--vertanical-white) !important;
    color: var(--vertanical-ink);
    font-family: var(--fontFamily);
    font-size: 1.0625rem;
    line-height: 1.6;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    min-height: 100vh;
}

button,
input,
textarea,
select {
    font: inherit;
}

button,
a,
input,
textarea,
select,
[role="button"],
[role="combobox"] {
    -webkit-tap-highlight-color: transparent;
}

header,
nav,
main,
body > div {
    background: transparent !important;
}

body > div > div[class*="_container_"] {
    width: 100%;
    max-width: var(--widthMaxJobBoard);
}

::selection {
    background: var(--vertanical-pink);
    color: var(--vertanical-white);
}

/* ============================================================
   Navigation und Logo
   ============================================================ */

div[class*="_navRoot_"] {
    position: relative;
    z-index: 20;
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 1.75rem 0 1rem;
    background: var(--vertanical-pink) !important;
}

ul[class*="_navContainer_"] {
    width: 100%;
    max-width: var(--widthMaxJobBoard);
    margin: 0 auto;
    padding: 0 1.25rem;
}

a[class*="_navLogoLink_"] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: 11.75rem !important;
    min-width: 11.75rem !important;
    max-width: 11.75rem !important;
    min-height: 3rem;
    margin-right: auto !important;
    margin-left: 0 !important;
}

img[alt="VERTANICAL"],
img[alt="Vertanical"],
img[alt="VERTANICAL GmbH"] {
    position: static !important;
    display: block;
    width: 11.75rem !important;
    min-width: 11.75rem !important;
    max-width: 11.75rem !important;
    height: auto !important;
    margin: 0 auto 0 0 !important;
    transform: none !important;
}

/* Kompakter, fixierter Header auf Stellendetail und Formular */
div[class*="_navRoot_"].ashby-job-posting-header {
    position: sticky !important;
    top: 0;
    z-index: 1000;
    min-height: 5.75rem;
    padding: 1.25rem var(--vertanical-content-edge);
    justify-content: flex-start;
    background: rgba(202, 46, 104, 0.97) !important;
    box-shadow: 0 0.5rem 1.75rem rgba(53, 53, 53, 0.16);
}

div[class*="_navRoot_"].ashby-job-posting-header
ul[class*="_navContainer_"] {
    max-width: none;
    padding: 0;
}

div[class*="_navRoot_"].ashby-job-posting-header
a[class*="_navLogoLink_"] {
    width: 11.75rem !important;
    min-width: 11.75rem !important;
    max-width: 11.75rem !important;
    margin-right: auto !important;
    margin-left: 0 !important;
}

/* Zurück-Button */
.ashby-job-board-back-to-all-jobs-button {
    color: var(--vertanical-pink) !important;
    font-family: var(--fontFamily) !important;
    font-weight: 600 !important;
    transition: color 160ms ease, transform 160ms ease;
}

.ashby-job-board-back-to-all-jobs-button:hover {
    color: var(--vertanical-pink-dark) !important;
    transform: translateX(-0.1875rem);
}

div[class*="_navRoot_"].ashby-job-posting-header
.ashby-job-board-back-to-all-jobs-button {
    position: absolute !important;
    top: 50%;
    right: var(--vertanical-content-edge);
    bottom: auto !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0 !important;
    color: var(--vertanical-white) !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 0.0625rem solid rgba(255, 255, 255, 0.55) !important;
    border-radius: 50% !important;
    transform: translateY(-50%);
}

div[class*="_navRoot_"].ashby-job-posting-header
.ashby-job-board-back-to-all-jobs-button:hover {
    color: var(--vertanical-pink) !important;
    background: var(--vertanical-white) !important;
    border-color: var(--vertanical-white) !important;
    transform: translateY(-50%) scale(1.04);
}

div[class*="_navRoot_"].ashby-job-posting-header
.ashby-job-board-back-to-all-jobs-button svg {
    width: 1rem;
    height: 1rem;
    fill: currentColor !important;
}

/* ============================================================
   Jobboard-Hero
   ============================================================ */

.ashby-job-board-heading {
    position: relative;
    width: 100%;
    height: 31rem;
    min-height: 31rem;
    margin: 0 0 3.5rem;
    padding: 0;
    overflow: visible;
    color: transparent !important;
    font-size: 0 !important;
}

/* Markentypische asymmetrische Bildform */
.ashby-job-board-heading .ashby-job-board-heading-count {
    position: absolute;
    top: 0;
    right: 0;
    left: 52%;
    z-index: 0;
    display: block;
    height: 27rem;
    overflow: hidden;
    border-radius: 0 13.5rem 0 13.5rem;
    background:
        linear-gradient(135deg, rgba(202, 46, 104, 0.05), rgba(53, 53, 53, 0.08)),
        url("https://vertanical.com/wp-content/uploads/home-hero.png") center / cover no-repeat;
    color: transparent !important;
    font-size: 0 !important;
    box-shadow: 0 1.5rem 3rem rgba(79, 22, 44, 0.18);
}

.ashby-job-board-heading::before {
    content: "A World free of Chronic Pain.";
    position: absolute;
    top: 5.25rem;
    left: 0;
    z-index: 2;
    display: block;
    width: 34rem;
    max-width: 48%;
    color: var(--vertanical-white);
    font-family: var(--fontFamily);
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.ashby-job-board-heading::after {
    content: "We want to give a new lease of life to chronic pain patients all over the world. With the development of VER-01, we have reached our first significant milestone.";
    position: absolute;
    top: 15rem;
    left: 0;
    z-index: 2;
    display: block;
    width: 35rem;
    max-width: 48%;
    color: rgba(255, 255, 255, 0.9);
    font-family: var(--fontFamily);
    font-size: 1.1875rem;
    font-weight: 400;
    line-height: 1.5;
}

/* ============================================================
   Filter
   ============================================================ */

div[class*="_filtersContainer_"] {
    padding: 0 !important;
}

.ashby-job-board-filters-label {
    color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.ashby-job-board-filters-label::before {
    content: "Open Positions";
    display: block;
    margin: 0 0 0.25rem;
    color: var(--vertanical-ink) !important;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.035em;
    text-transform: none;
}

.ashby-job-board-reset-filters-label {
    margin-left: auto !important;
    color: var(--vertanical-muted) !important;
    font-family: var(--fontFamily) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
}

.ashby-job-board-reset-filters-label:hover {
    color: var(--vertanical-pink) !important;
}

div[class*="_filters_"] {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.75rem !important;
}

div[class*="_filterContainer_"] {
    position: relative !important;
    display: flex !important;
    flex: 1 1 12rem !important;
    align-items: center !important;
    min-width: 10.5rem !important;
    height: 3.25rem !important;
    overflow: visible !important;
    background: var(--vertanical-white) !important;
    border: 0.0625rem solid var(--vertanical-line) !important;
    border-radius: 0.625rem !important;
    box-shadow: 0 0.25rem 1rem rgba(53, 53, 53, 0.05) !important;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

div[class*="_filterContainer_"]:hover {
    border-color: rgba(202, 46, 104, 0.5) !important;
    transform: translateY(-0.0625rem);
}



.ashby-job-board-filter,
select[name="departmentId"],
select[name="employmentType"],
select[name="locationId"],
select[name="workplaceType"] {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 2.75rem 0 1rem !important;
    appearance: none !important;
    cursor: pointer !important;
    outline: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0.5625rem !important;
    color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily) !important;
    font-size: 0.9375rem !important;
}

div[class*="_filterIconContainer_"] {
    position: absolute !important;
    top: 50% !important;
    right: 1rem !important;
    display: flex !important;
    width: 1rem !important;
    height: 1rem !important;
    pointer-events: none !important;
    transform: translateY(-50%) !important;
}

div[class*="_filterIconContainer_"] svg {
    width: 0.8125rem !important;
    height: 0.8125rem !important;
    fill: var(--vertanical-pink) !important;
    transition: transform 160ms ease;
}



/* ============================================================
   Stellenliste
   ============================================================ */

.ashby-department-heading {
    margin: 4.5rem 0 1rem;
    color: var(--vertanical-pink) !important;
    font-family: var(--fontFamily);
    font-size: 2.75rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

.ashby-department-heading-level {
    color: var(--vertanical-muted) !important;
    font-family: var(--fontFamily);
    font-size: 1rem;
    font-weight: 400;
}

.ashby-job-posting-brief-list {
    display: grid;
    gap: 0.75rem;
}

.ashby-job-posting-brief {
    position: relative;
    margin: 0;
    padding: 1.5rem 4rem 1.5rem 1.5rem;
    overflow: hidden;
    background: var(--vertanical-white) !important;
    border: 0.0625rem solid var(--vertanical-line) !important;
    border-radius: 0.75rem !important;
    box-shadow: 0 0.5rem 1.75rem rgba(53, 53, 53, 0.05);
    transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.ashby-job-posting-brief::after {
    content: "→";
    position: absolute;
    top: 50%;
    right: 1.5rem;
    color: var(--vertanical-pink);
    font-size: 1.75rem;
    font-weight: 600;
    transform: translateY(-50%);
    transition: transform 180ms ease;
}

.ashby-job-posting-brief:hover {
    border-color: rgba(202, 46, 104, 0.5) !important;
    box-shadow: 0 1rem 2.5rem rgba(53, 53, 53, 0.1);
    transform: translateY(-0.125rem);
}

.ashby-job-posting-brief:hover::after {
    transform: translate(0.25rem, -50%);
}

.ashby-job-posting-brief-title {
    margin: 0 0 0.25rem;
    color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily);
    font-size: 1.375rem;
    font-weight: 600;
}

.ashby-job-posting-brief:hover .ashby-job-posting-brief-title {
    color: var(--vertanical-pink) !important;
}

.ashby-job-posting-brief-details {
    color: var(--vertanical-muted) !important;
    font-family: var(--fontFamily);
    font-size: 0.9375rem;
}

/* Bottom Description */
div[class*="_bottomDescription_"] {
    margin: 5rem 0 2rem;
    padding: 3rem !important;
    overflow: hidden;
    background: var(--vertanical-pink-soft) !important;
    border-left: 0.375rem solid var(--vertanical-pink);
    border-radius: 0 5rem 0 5rem;
}

div[class*="_bottomDescription_"] h1 {
    margin: 0 0 1rem;
    color: var(--vertanical-pink) !important;
    font-size: 3rem;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

div[class*="_bottomDescription_"] p {
    max-width: 52rem;
    margin: 0;
    color: var(--vertanical-copy) !important;
}

/* ============================================================
   Stellendetail
   ============================================================ */

.ashby-job-posting-heading {
    color: var(--vertanical-pink) !important;
    font-family: var(--fontFamily);
    font-size: 3.75rem;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.04em;
}

.ashby-job-posting-left-pane,
.ashby-job-posting-right-pane {
    color: var(--vertanical-ink);
    font-family: var(--fontFamily);
}

.ashby-job-posting-left-pane h2,
.ashby-job-posting-left-pane h3,
.ashby-job-posting-left-pane h4 {
    color: var(--vertanical-ink) !important;
    line-height: 1.2;
}

.ashby-job-posting-left-pane a {
    color: var(--vertanical-pink) !important;
    text-decoration-thickness: 0.0625rem;
    text-underline-offset: 0.1875rem;
}

/* Tabs */
a[class*="_tab_"] {
    color: var(--vertanical-muted) !important;
    font-weight: 600 !important;
}

a[class*="_tab_"]:hover,
a[class*="_tab_"][aria-selected="true"] {
    color: var(--vertanical-pink) !important;
}

.ashby-job-posting-right-pane-tab-slider {
    background: var(--vertanical-pink) !important;
}

/* ============================================================
   Bewerbungsformular – Layout und Sektionen
   ============================================================ */

.ashby-job-posting-right-pane > div,
.ashby-application-form-container,
.ashby-application-form-autofill-pane,
.ashby-application-form-autofill-input-root {
    background: transparent !important;
}

.ashby-application-form-container {
    position: relative;
    padding: 2.5rem !important;
    background:
        linear-gradient(var(--vertanical-white), var(--vertanical-white)) padding-box,
        linear-gradient(135deg, rgba(202, 46, 104, 0.35), rgba(202, 46, 104, 0.04)) border-box !important;
    border: 0.0625rem solid transparent !important;
    border-radius: 0 3.5rem 0 3.5rem !important;
    box-shadow: var(--vertanical-shadow) !important;
}

/* Dezente Markenlinie statt dekorativer Standardkarte */
.ashby-application-form-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 3.5rem;
    width: 5rem;
    height: 0.375rem;
    background: var(--vertanical-pink);
    border-radius: 0 0 999px 999px;
}

.ashby-application-form-section-container {
    margin: 0 0 2.75rem !important;
    padding: 0 0 2.75rem !important;
    border-bottom: 0.0625rem solid var(--vertanical-line) !important;
}

.ashby-application-form-section-container:last-of-type {
    margin-bottom: 1rem !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

.ashby-application-form-section-header {
    margin-bottom: 1.5rem !important;
}

.ashby-application-form-section-header-title {
    position: relative;
    margin: 0 0 0.375rem !important;
    padding-left: 1rem;
    color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily) !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.ashby-application-form-section-header-title::before {
    content: "";
    position: absolute;
    top: 0.15em;
    bottom: 0.15em;
    left: 0;
    width: 0.25rem;
    background: var(--vertanical-pink);
    border-radius: 999px;
}

.ashby-application-form-question-title {
    color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

.ashby-application-form-section-header-description,
.ashby-application-form-question-description,
.ashby-application-form-texting-consent-description {
    color: var(--vertanical-muted) !important;
    font-family: var(--fontFamily) !important;
    font-size: 0.9375rem !important;
    line-height: 1.55 !important;
}

.ashby-application-form-field-entry {
    margin-bottom: 1.375rem !important;
}

/* Pflichtsternchen und Hilfstexte */
.ashby-application-form-container [aria-hidden="true"] {
    color: var(--vertanical-pink);
}

/* ============================================================
   Formularfelder
   ============================================================ */

.ashby-application-form-container input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.ashby-application-form-container textarea,
.ashby-application-form-container select,
.ashby-application-form-container [role="combobox"],
.ashby-application-form-container [aria-haspopup="listbox"],
.ashby-job-posting-right-pane input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.ashby-job-posting-right-pane textarea,
.ashby-job-posting-right-pane select,
.ashby-job-posting-right-pane [role="combobox"],
.ashby-job-posting-right-pane [aria-haspopup="listbox"] {
    width: 100% !important;
    min-height: 3.25rem !important;
    padding: 0.75rem 1rem !important;
    outline: none !important;
    background: var(--vertanical-white) !important;
    border: 0.0625rem solid #cfc5c9 !important;
    border-radius: 0.625rem !important;
    color: var(--vertanical-ink) !important;
    -webkit-text-fill-color: var(--vertanical-ink) !important;
    caret-color: var(--vertanical-pink) !important;
    font-family: var(--fontFamily) !important;
    font-size: 1rem !important;
    line-height: 1.4 !important;
    box-shadow: 0 0.125rem 0.375rem rgba(53, 53, 53, 0.035) !important;
    transition:
        border-color 160ms ease,
        box-shadow 160ms ease,
        background-color 160ms ease;
}

.ashby-application-form-container textarea,
.ashby-job-posting-right-pane textarea {
    min-height: 8.5rem !important;
    resize: vertical !important;
}

.ashby-application-form-container input:hover,
.ashby-application-form-container textarea:hover,
.ashby-application-form-container select:hover,
.ashby-application-form-container [role="combobox"]:hover,
.ashby-job-posting-right-pane input:hover,
.ashby-job-posting-right-pane textarea:hover,
.ashby-job-posting-right-pane select:hover,
.ashby-job-posting-right-pane [role="combobox"]:hover {
    border-color: rgba(202, 46, 104, 0.55) !important;
}



.ashby-application-form-container input::placeholder,
.ashby-application-form-container textarea::placeholder,
.ashby-job-posting-right-pane input::placeholder,
.ashby-job-posting-right-pane textarea::placeholder {
    color: #8a8185 !important;
    -webkit-text-fill-color: #8a8185 !important;
    opacity: 1 !important;
}

/* Custom Selects */
.ashby-application-form-container [role="combobox"] *,
.ashby-application-form-container [aria-haspopup="listbox"] *,
.ashby-job-posting-right-pane [role="combobox"] *,
.ashby-job-posting-right-pane [aria-haspopup="listbox"] * {
    color: var(--vertanical-ink) !important;
    -webkit-text-fill-color: var(--vertanical-ink) !important;
}

.ashby-application-form-container select option,
.ashby-job-posting-right-pane select option,
.ashby-application-form-container [role="listbox"],
.ashby-job-posting-right-pane [role="listbox"] {
    background: var(--vertanical-white) !important;
    color: var(--vertanical-ink) !important;
    -webkit-text-fill-color: var(--vertanical-ink) !important;
    font-family: var(--fontFamily) !important;
}

.ashby-application-form-container [role="listbox"],
.ashby-job-posting-right-pane [role="listbox"] {
    padding: 0.375rem !important;
    border: 0.0625rem solid var(--vertanical-line) !important;
    border-radius: 0.625rem !important;
    box-shadow: 0 1rem 2.5rem rgba(53, 53, 53, 0.16) !important;
}

.ashby-application-form-container [role="option"],
.ashby-job-posting-right-pane [role="option"] {
    padding: 0.625rem 0.75rem !important;
    border-radius: 0.375rem !important;
    background: var(--vertanical-white) !important;
    color: var(--vertanical-ink) !important;
    -webkit-text-fill-color: var(--vertanical-ink) !important;
}

.ashby-application-form-container [role="option"]:hover,
.ashby-job-posting-right-pane [role="option"]:hover {
    background: var(--vertanical-pink-light) !important;
}

.ashby-application-form-container [role="option"][aria-selected="true"],
.ashby-job-posting-right-pane [role="option"][aria-selected="true"] {
    background: var(--vertanical-pink) !important;
    color: var(--vertanical-white) !important;
    -webkit-text-fill-color: var(--vertanical-white) !important;
    font-weight: 600 !important;
}

/* Browser-Autofill */


/* ============================================================
   Checkboxen und Radio Buttons
   ============================================================ */

.ashby-application-form-container input[type="checkbox"],
.ashby-application-form-container input[type="radio"],
.ashby-job-posting-right-pane input[type="checkbox"],
.ashby-job-posting-right-pane input[type="radio"] {
    width: 1.25rem !important;
    height: 1.25rem !important;
    min-height: 0 !important;
    margin: 0.125rem 0.625rem 0 0 !important;
    padding: 0 !important;
    appearance: none !important;
    flex: 0 0 auto;
    cursor: pointer;
    background: var(--vertanical-white) !important;
    border: 0.125rem solid #b9adb2 !important;
    box-shadow: none !important;
}

.ashby-application-form-container input[type="checkbox"],
.ashby-job-posting-right-pane input[type="checkbox"] {
    border-radius: 0.3125rem !important;
}

.ashby-application-form-container input[type="radio"],
.ashby-job-posting-right-pane input[type="radio"] {
    border-radius: 50% !important;
}

.ashby-application-form-container input[type="checkbox"]:checked,
.ashby-job-posting-right-pane input[type="checkbox"]:checked {
    background:
        var(--vertanical-pink)
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5 8.3 14 15.5 6.5' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
        center / 100% 100% no-repeat !important;
    border-color: var(--vertanical-pink) !important;
}

.ashby-application-form-container input[type="radio"]:checked,
.ashby-job-posting-right-pane input[type="radio"]:checked {
    border-color: var(--vertanical-pink) !important;
    box-shadow: inset 0 0 0 0.25rem var(--vertanical-white) !important;
    background: var(--vertanical-pink) !important;
}



.ashby-application-form-container [class*="_checked_"],
.ashby-application-form-container [class*="_checked_"] *,
.ashby-application-form-container [class*="_selected_"],
.ashby-application-form-container [class*="_selected_"] *,
.ashby-job-posting-right-pane [class*="_checked_"],
.ashby-job-posting-right-pane [class*="_checked_"] *,
.ashby-job-posting-right-pane [class*="_selected_"],
.ashby-job-posting-right-pane [class*="_selected_"] * {
    color: var(--vertanical-ink) !important;
    -webkit-text-fill-color: var(--vertanical-ink) !important;
}

/* ============================================================
   CV-Autofill und Datei-Upload
   ============================================================ */

.ashby-application-form-autofill-pane {
    margin-bottom: 2rem !important;
    padding: 1.5rem !important;
    background: var(--vertanical-pink-soft) !important;
    border: 0.0625rem dashed rgba(202, 46, 104, 0.55) !important;
    border-radius: 0 2.25rem 0 2.25rem !important;
}

.ashby-application-form-autofill-input-root,
.ashby-application-form-autofill-uploader {
    border-radius: 0 1.5rem 0 1.5rem !important;
}

.ashby-application-form-autofill-input-title {
    color: var(--vertanical-ink) !important;
    font-weight: 700 !important;
}

.ashby-application-form-autofill-input-description {
    color: var(--vertanical-muted) !important;
}

.ashby-application-form-autofill-input-icon {
    color: var(--vertanical-pink) !important;
    fill: var(--vertanical-pink) !important;
}

.ashby-application-form-autofill-input-drag-layer,
.ashby-application-form-autofill-input-pending-layer,
.ashby-application-form-autofill-input-base-layer {
    background: transparent !important;
    border-color: rgba(202, 46, 104, 0.5) !important;
}



/* ============================================================
   Validierung, Hinweise und Status
   ============================================================ */

.ashby-application-form-container [aria-invalid="true"] {
    border-color: var(--vertanical-error) !important;
    background: #fff8f7 !important;
    box-shadow: 0 0 0 0.1875rem rgba(180, 35, 24, 0.1) !important;
}

.ashby-application-form-container [role="alert"],
.ashby-application-form-autofill-input-form-alert,
.ashby-application-form-failure-container,
.ashby-application-form-blocked-application-container {
    color: var(--vertanical-error) !important;
}

.ashby-application-form-failure-container,
.ashby-application-form-blocked-application-container {
    padding: 1.25rem !important;
    background: #fff5f4 !important;
    border: 0.0625rem solid #f1b7b2 !important;
    border-radius: 0.625rem !important;
}

.ashby-application-form-success-container {
    padding: 3rem !important;
    background: #f1fbf7 !important;
    border: 0.0625rem solid #a7d9c4 !important;
    border-radius: 0 3rem 0 3rem !important;
    color: var(--vertanical-success) !important;
    box-shadow: var(--vertanical-shadow) !important;
}

/* ============================================================
   Submit-Button
   ============================================================ */

.ashby-application-form-submit-button {
    position: relative;
    min-height: 3.5rem !important;
    padding: 0.875rem 2.25rem !important;
    cursor: pointer !important;
    overflow: hidden;
    background: var(--vertanical-pink) !important;
    border: 0.125rem solid var(--vertanical-pink) !important;
    border-radius: 999px !important;
    color: var(--vertanical-white) !important;
    font-family: var(--fontFamily) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em;
    box-shadow: 0 0.75rem 1.5rem rgba(202, 46, 104, 0.22) !important;
    transition:
        background-color 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
}

.ashby-application-form-submit-button:hover {
    background: var(--vertanical-pink-dark) !important;
    border-color: var(--vertanical-pink-dark) !important;
    box-shadow: 0 1rem 2rem rgba(165, 31, 82, 0.28) !important;
    transform: translateY(-0.125rem);
}



.ashby-application-form-submit-button:active {
    transform: translateY(0);
}

.ashby-application-form-submit-button[disabled] {
    cursor: not-allowed !important;
    opacity: 0.55 !important;
    box-shadow: none !important;
}

/* ============================================================
   Footer und Cookie Button
   ============================================================ */

footer {
    max-width: var(--widthMaxJobBoard) !important;
    margin: 4rem auto 0 !important;
    padding: 2rem 1.25rem !important;
    color: var(--vertanical-muted) !important;
    border-top: 0.0625rem solid var(--vertanical-line);
}

footer a {
    color: var(--vertanical-muted) !important;
}

footer a:hover {
    color: var(--vertanical-pink) !important;
}

button[aria-label="Cookie Preferences"] {
    color: var(--vertanical-ink) !important;
    background: var(--vertanical-white) !important;
    border: 0.0625rem solid var(--vertanical-line) !important;
    border-radius: 999px !important;
    box-shadow: 0 0.5rem 1.5rem rgba(53, 53, 53, 0.12) !important;
}

button[aria-label="Cookie Preferences"]:hover {
    color: var(--vertanical-pink) !important;
    border-color: var(--vertanical-pink) !important;
}

/* ============================================================
   Barrierefreiheit und reduzierte Bewegung
   ============================================================ */



@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* ============================================================
   Responsive
   ============================================================ */

@media (max-width: 56rem) {
    .ashby-job-board-heading {
        height: 34rem;
        min-height: 34rem;
    }

    .ashby-job-board-heading .ashby-job-board-heading-count {
        left: 48%;
    }

    .ashby-job-board-heading::before,
    .ashby-job-board-heading::after {
        width: 46%;
    }
}

@media (max-width: 43.75rem) {
    html,
    body {
        font-size: 1rem;
    }

    div[class*="_navRoot_"] {
        padding: 1.25rem 0 0.75rem;
    }

    a[class*="_navLogoLink_"] {
        width: 11.75rem !important;
        min-width: 11.75rem !important;
        max-width: 11.75rem !important;
        margin-right: auto !important;
        margin-left: 0 !important;
    }

    :root {
        --vertanical-content-edge: 1.25rem;
    }

    div[class*="_navRoot_"].ashby-job-posting-header {
        min-height: 4.75rem;
        padding: 1rem 1.25rem;
    }

    div[class*="_navRoot_"].ashby-job-posting-header
a[class*="_navLogoLink_"] {
        width: 11.75rem !important;
        min-width: 11.75rem !important;
        max-width: 11.75rem !important;
        margin-right: auto !important;
        margin-left: 0 !important;
    }

    div[class*="_navRoot_"].ashby-job-posting-header
.ashby-job-board-back-to-all-jobs-button {
        right: 1.25rem;
        width: 2.5rem;
        height: 2.5rem;
    }

    .ashby-job-board-heading {
        height: 43rem;
        min-height: 43rem;
        margin-bottom: 2rem;
    }

    .ashby-job-board-heading .ashby-job-board-heading-count {
        top: 1rem;
        right: 0;
        left: 0;
        height: 19rem;
        border-radius: 0 9.5rem 0 9.5rem;
        background-position: center;
    }

    .ashby-job-board-heading::before {
        top: 22.5rem;
        left: 0;
        width: 100%;
        font-size: 3.25rem;
    }

    .ashby-job-board-heading::after {
        top: 31.75rem;
        left: 0;
        width: 100%;
        font-size: 1.0625rem;
    }

    div[class*="_filters_"] {
        gap: 0.625rem !important;
    }

    div[class*="_filterContainer_"] {
        flex-basis: calc(50% - 0.3125rem) !important;
        min-width: 9rem !important;
    }

    .ashby-job-board-reset-filters-label {
        width: 100%;
        margin-top: 0.375rem !important;
    }

    .ashby-department-heading {
        margin-top: 3.5rem;
    }

    .ashby-job-posting-brief {
        padding: 1.25rem 3.25rem 1.25rem 1.125rem;
    }

    .ashby-job-posting-brief::after {
        right: 1rem;
    }

    div[class*="_bottomDescription_"] {
        margin-top: 3.5rem;
        padding: 2rem 1.5rem !important;
        border-radius: 0 3rem 0 3rem;
    }

    .ashby-application-form-container {
        padding: 1.5rem 1.125rem !important;
        border-radius: 0 2.25rem 0 2.25rem !important;
    }

    .ashby-application-form-container::before {
        left: 2.25rem;
        width: 3.5rem;
    }

    .ashby-application-form-section-container {
        margin-bottom: 2rem !important;
        padding-bottom: 2rem !important;
    }

    .ashby-application-form-autofill-pane {
        padding: 1.125rem !important;
        border-radius: 0 1.75rem 0 1.75rem !important;
    }

    .ashby-application-form-submit-button {
        width: 100% !important;
    }
}

@media (max-width: 28rem) {
    div[class*="_filterContainer_"] {
        flex-basis: 100% !important;
    }

    .ashby-job-board-heading::after {
        top: 32.5rem;
    }
}

/* ============================================================
   VERTANICAL Titelbar – verbindlicher Kompatibilitäts-Layer
   Stellt die ursprüngliche Bild-, Farb- und Schriftwelt auch dann her,
   wenn Ashby dynamische Wrapper-Klassen oder Hintergründe ergänzt.
   ============================================================ */

/* Jobübersicht: durchgehende pinke Titelbar hinter Logo und Hero. */
/* Exakte ursprüngliche VERTANICAL-Heroform mit dem Markenmotiv. */
.ashby-job-board-heading {
    background-color: #ca2e68 !important;
    box-shadow: 0 0 0 100vmax #ca2e68 !important;
    position: relative !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 35rem !important;
    min-height: 35rem !important;
    margin: 0 0 2.75rem !important;
    overflow: visible !important;
    color: transparent !important;
    font-family: "Titillium Web", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 0 !important;
}

.ashby-job-board-heading .ashby-job-board-heading-count {
    position: absolute !important;
    top: -0.9375rem !important;
    right: 0 !important;
    left: 52% !important;
    z-index: 0 !important;
    display: block !important;
    width: auto !important;
    height: 26.875rem !important;
    overflow: hidden !important;
    border-radius: 0 14.375rem 0 14.375rem !important;
    background-image: url("https://vertanical.com/wp-content/uploads/home-hero.png") !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
    color: transparent !important;
    font-size: 0 !important;
    box-shadow: none !important;
}

.ashby-job-board-heading::before {
    content: "A World free of Chronic Pain." !important;
    position: absolute !important;
    top: 6.875rem !important;
    left: 0 !important;
    z-index: 2 !important;
    display: block !important;
    width: 35.625rem !important;
    max-width: 48% !important;
    color: #ffffff !important;
    font-family: "Titillium Web", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 3.875rem !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.0625rem !important;
    white-space: normal !important;
    text-shadow: 0 0.125rem 0.75rem rgba(53, 53, 53, 0.18) !important;
}

.ashby-job-board-heading::after {
    content: "We want to give a new lease of life to chronic pain patients all over the world. With the development of VER-01, we have reached our first significant milestone." !important;
    position: absolute !important;
    top: 17.8125rem !important;
    left: 0 !important;
    z-index: 2 !important;
    display: block !important;
    width: 38.125rem !important;
    max-width: 49% !important;
    color: #ffffff !important;
    font-family: "Titillium Web", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
    font-size: 1.3125rem !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    white-space: normal !important;
}

/* Stellendetail und Bewerbung: Titelbar bleibt beim Scrollen sichtbar. */
div[class*="_navRoot_"].ashby-job-posting-header {
    position: sticky !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    z-index: 1000 !important;
    min-height: 5.75rem !important;
    background: #ca2e68 !important;
}

/* Dynamischer Stellentitel innerhalb der Titelbar. */
@media (min-width: 43.8125rem) {
    div[class*="_navRoot_"].ashby-job-posting-header
    + div[class*="_container_"]
    > div[class*="_titles_"]
    .ashby-job-posting-heading {
        position: fixed !important;
        top: 1.625rem !important;
        right: calc(var(--vertanical-content-edge) + 4rem) !important;
        left: calc(var(--vertanical-content-edge) + 14.5rem) !important;
        z-index: 1001 !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        overflow: hidden !important;
        color: #ffffff !important;
        font-family: "Titillium Web", "Helvetica Neue", Helvetica, Arial, sans-serif !important;
        font-size: 1.25rem !important;
        font-weight: 600 !important;
        line-height: 2.5rem !important;
        letter-spacing: 0 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    div[class*="_navRoot_"].ashby-job-posting-header
    + div[class*="_container_"]
    > div[class*="_titles_"] {
        min-height: 3.75rem !important;
    }
}

@media (max-width: 43.75rem) {
    .ashby-job-board-heading {
        height: 44rem !important;
        min-height: 44rem !important;
        margin-bottom: 2rem !important;
    }

    .ashby-job-board-heading .ashby-job-board-heading-count {
        top: 1.875rem !important;
        right: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 18.75rem !important;
        border-radius: 0 9.375rem 0 9.375rem !important;
        background-position: center center !important;
    }

    .ashby-job-board-heading::before {
        top: 23rem !important;
        left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        font-size: 2.4375rem !important;
        line-height: 1.08 !important;
        letter-spacing: -0.03125rem !important;
    }

    .ashby-job-board-heading::after {
        top: 31.5rem !important;
        left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        font-size: 1.0625rem !important;
        line-height: 1.4 !important;
    }
}

/* ============================================================
   VERTANICAL Website-Finishing
   Engere Anlehnung an vertanical.com: großzügige weiße Typografie,
   kräftige Pinkfläche und organisch asymmetrischer Bildausschnitt.
   ============================================================ */

/* Navigation: Logo linksbündig zur gemeinsamen Content-Kante. */
div[class*="_navRoot_"] {
    min-height: 6.75rem !important;
    padding-top: 1.75rem !important;
    padding-bottom: 0.75rem !important;
}

ul[class*="_navContainer_"] {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 68.75rem !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 1.25rem !important;
    padding-left: 1.25rem !important;
}

a[class*="_navLogoLink_"],
img[alt="VERTANICAL"],
img[alt="Vertanical"],
img[alt="VERTANICAL GmbH"] {
    width: 11.75rem !important;
    min-width: 11.75rem !important;
    max-width: 11.75rem !important;
}

a[class*="_navLogoLink_"] {
    display: flex !important;
    justify-content: flex-start !important;
    margin-right: auto !important;
    margin-left: 0 !important;
}

img[alt="VERTANICAL"],
img[alt="Vertanical"],
img[alt="VERTANICAL GmbH"] {
    margin-right: auto !important;
    margin-left: 0 !important;
}

/* Hero: näher an der Startseite und der bereitgestellten Referenz. */
.ashby-job-board-heading {
    height: 35.5rem !important;
    min-height: 35.5rem !important;
    margin-bottom: 4rem !important;
    box-shadow: 0 0 0 100vmax #ca2e68 !important;
}

.ashby-job-board-heading .ashby-job-board-heading-count {
    top: 1.125rem !important;
    right: 0 !important;
    left: 53% !important;
    height: 28.5rem !important;
    border-radius: 0 14.25rem 0 14.25rem !important;
    background-image: url("https://vertanical.com/wp-content/uploads/home-hero.png") !important;
    background-position: center center !important;
    background-size: cover !important;
}

.ashby-job-board-heading::before {
    top: 8.25rem !important;
    width: 31rem !important;
    max-width: 45% !important;
    font-size: 3.75rem !important;
    font-weight: 700 !important;
    line-height: 1.08 !important;
    letter-spacing: -0.075rem !important;
    text-shadow: none !important;
}

.ashby-job-board-heading::after {
    top: 19.75rem !important;
    width: 32rem !important;
    max-width: 45% !important;
    font-size: 1.125rem !important;
    line-height: 1.55 !important;
}

/* Website-nahe Inhaltsgestaltung: weniger Kartenoptik, klarere Linien. */
.ashby-department-heading {
    color: #353535 !important;
    font-size: 2.5rem !important;
    font-weight: 700 !important;
}

.ashby-job-posting-brief {
    padding: 1.5rem 3.5rem 1.5rem 0 !important;
    background-color: transparent !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0.0625rem solid #ded4d8 !important;
    border-left: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.ashby-job-posting-brief:hover {
    background-color: transparent !important;
    border-bottom-color: #ca2e68 !important;
    box-shadow: none !important;
}

.ashby-job-posting-brief-title {
    font-size: 1.5rem !important;
    font-weight: 600 !important;
}

/* Formular: Markenform beibehalten, aber näher an der reduzierten Website. */
.ashby-application-form-container {
    border-radius: 0 4rem 0 4rem !important;
}

.ashby-application-form-section-header-title {
    color: #353535 !important;
    font-size: 1.625rem !important;
}

.ashby-application-form-submit-button {
    min-width: 12rem !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 43.75rem) {
    div[class*="_navRoot_"] {
        min-height: 5.75rem !important;
        padding-top: 1.25rem !important;
    }

    ul[class*="_navContainer_"] {
        padding-right: 1.25rem !important;
        padding-left: 1.25rem !important;
    }

    a[class*="_navLogoLink_"],
    img[alt="VERTANICAL"],
    img[alt="Vertanical"],
    img[alt="VERTANICAL GmbH"] {
        width: 11.75rem !important;
        min-width: 11.75rem !important;
        max-width: 11.75rem !important;
    }

    .ashby-job-board-heading {
        height: 43.5rem !important;
        min-height: 43.5rem !important;
    }

    .ashby-job-board-heading .ashby-job-board-heading-count {
        top: 1rem !important;
        right: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 19rem !important;
        border-radius: 0 9.5rem 0 9.5rem !important;
    }

    .ashby-job-board-heading::before {
        top: 22.5rem !important;
        width: 100% !important;
        max-width: 100% !important;
        font-size: 2.75rem !important;
        letter-spacing: -0.04rem !important;
    }

    .ashby-job-board-heading::after {
        top: 31.25rem !important;
        width: 100% !important;
        max-width: 100% !important;
        font-size: 1rem !important;
    }

    .ashby-job-posting-brief {
        padding-left: 0 !important;
    }

    .ashby-application-form-container {
        border-radius: 0 2.5rem 0 2.5rem !important;
    }
}
