/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/0635e0b4-dd86-4a6f-b750-08400e101279.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/82c31cb0-0b76-4b79-ba20-2cf25d9c6580.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/f9bd6459-b840-4efb-81fd-8833c71595b5.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/0635e0b4-dd86-4a6f-b750-08400e101279.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/82c31cb0-0b76-4b79-ba20-2cf25d9c6580.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/f9bd6459-b840-4efb-81fd-8833c71595b5.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/0635e0b4-dd86-4a6f-b750-08400e101279.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/82c31cb0-0b76-4b79-ba20-2cf25d9c6580.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 700;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/f9bd6459-b840-4efb-81fd-8833c71595b5.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/0635e0b4-dd86-4a6f-b750-08400e101279.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/82c31cb0-0b76-4b79-ba20-2cf25d9c6580.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/f9bd6459-b840-4efb-81fd-8833c71595b5.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/0635e0b4-dd86-4a6f-b750-08400e101279.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/82c31cb0-0b76-4b79-ba20-2cf25d9c6580.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 900;
  font-stretch: 100%;
  font-display: swap;
  src: url("fonts/f9bd6459-b840-4efb-81fd-8833c71595b5.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/a50fa82a-6170-43da-a4ff-de87f0f5ca1b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/0e770ae4-ac95-4cd4-8fa8-b8218eb3a51c.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/83a89a1b-40e2-4ac7-9f7b-3ecf8db5777c.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/dea1b47e-52e0-4ea5-8ee2-879f0532191f.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/0b0150b5-5e93-4efe-809d-33d00a8b6121.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/c9dbf2fd-7fdb-4ddb-8eed-5a44a11522b5.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/142513c4-d98b-4c6d-9adf-30025efe6e9f.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/e7447fc3-ed60-45c9-a2bd-121ddacd8f57.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/bbeb5f2e-4388-48f9-a275-78ddd59b53b2.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/8872c3e4-2f36-4de3-9914-96a9ed76bdd8.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/c527a3f7-0ed4-45ef-85b5-1165c82f0226.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/6ae29128-00a6-4bd9-a7ac-827282a4b03d.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/c203c580-e026-4c66-9734-4ef01a97c917.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/24b3e807-6841-4181-a065-b7efbb9f4d42.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/2ec14022-1e7b-4e86-b9d5-f93b42dcabb9.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/dc38b65f-e42a-49ff-8172-46e71715cb9c.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/3515ee9e-3299-495b-b385-f4c4ca77a0c0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/f14712c9-938e-4a4a-a808-bdfe3db8b378.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/9746ae67-9a5a-4bf1-95fc-e4aebf9ae905.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/ed0d8dbb-8903-4245-b814-cf416b66c500.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/dc38b65f-e42a-49ff-8172-46e71715cb9c.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/3515ee9e-3299-495b-b385-f4c4ca77a0c0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/f14712c9-938e-4a4a-a808-bdfe3db8b378.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/9746ae67-9a5a-4bf1-95fc-e4aebf9ae905.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/ed0d8dbb-8903-4245-b814-cf416b66c500.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/45f4848e-75c0-450c-abcc-b6971c09520b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/4db016d8-5d08-4712-838e-4b026b171847.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/1378f361-4057-4a95-8615-66bdcc305831.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/7bfea5a0-3225-4f48-8682-60dc2d3039c0.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/efc8ffd5-f90c-4ee4-acbb-4878d1c16199.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/45f4848e-75c0-450c-abcc-b6971c09520b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/4db016d8-5d08-4712-838e-4b026b171847.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/1378f361-4057-4a95-8615-66bdcc305831.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/7bfea5a0-3225-4f48-8682-60dc2d3039c0.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/efc8ffd5-f90c-4ee4-acbb-4878d1c16199.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/45f4848e-75c0-450c-abcc-b6971c09520b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/4db016d8-5d08-4712-838e-4b026b171847.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/1378f361-4057-4a95-8615-66bdcc305831.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/7bfea5a0-3225-4f48-8682-60dc2d3039c0.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/efc8ffd5-f90c-4ee4-acbb-4878d1c16199.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/45f4848e-75c0-450c-abcc-b6971c09520b.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/4db016d8-5d08-4712-838e-4b026b171847.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/1378f361-4057-4a95-8615-66bdcc305831.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/7bfea5a0-3225-4f48-8682-60dc2d3039c0.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/efc8ffd5-f90c-4ee4-acbb-4878d1c16199.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}



:root{
  /* nachvolker brand */
  --brand:#F28C4B; --brand-600:#E0742E; --brand-700:#C75F1B; --brand-soft:#FCEEE0; --brand-tint:#FBF4EC;
  --navy:#193B5B; --navy-700:#12314E; --navy-800:#0C2438;
  --ink:#17314B;
  /* blue stays for the value-curve / "blauer Ozean" data domain */
  --ocean:#0E5A8A; --ocean-600:#0A4368; --azure:#1E9FD8; --foam:#E8F2F9;
  --coral:#C2503B; --coral-soft:#F3E0DB;
  --paper:#F6F8FA; --surface:#FFFFFF; --line:#E4E8EC; --muted:#5C6A78; --muted-2:#98A6B2;
  --ok:#2E8B6F; --shadow:0 4px 24px rgba(20,40,60,0.08); --shadow-lg:0 18px 50px rgba(16,34,52,0.18);
  --radius:14px; --radius-sm:9px;
  --display:"Archivo",system-ui,sans-serif;
  --serif:"Archivo",system-ui,sans-serif;
  --sans:"Mulish",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  font-family:var(--sans); color:var(--ink); background:var(--paper);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
  line-height:1.6; font-size:16px;
}
h1,h2,h3,h4{font-family:var(--display); font-weight:800; line-height:1.12; margin:0; color:var(--ink); letter-spacing:-.015em;}
button{font-family:inherit;}
input,textarea,select{font-family:inherit; color:var(--ink);}
::selection{background:var(--brand); color:#fff;}
a{color:var(--brand-700); text-decoration:none;}

/* ---- App chrome ---- */
.app{min-height:100vh; display:flex; flex-direction:column;}
.topbar{
  position:sticky; top:0; z-index:40; background:var(--navy);
  border-bottom:3px solid var(--brand);
}
.topbar-inner{max-width:1040px; margin:0 auto; padding:14px 28px; display:flex; align-items:center; justify-content:space-between; gap:18px;}
.brand{display:flex; align-items:center; gap:13px; min-width:0;}
.brand-logo-img{height:34px;width:auto;display:block;flex:none;}
.brand-divider{width:1px;height:28px;background:rgba(255,255,255,.18);flex:none;margin:0 3px;}
.brand-txt{display:flex;flex-direction:column;line-height:1.18;min-width:0;}
.brand-kicker{font-family:var(--sans);font-weight:700;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);}
.brand-title{font-family:var(--display);font-weight:800;font-size:17px;color:#fff;white-space:nowrap;letter-spacing:-.01em;}
.badgerow{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end;}
.badge{
  display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;letter-spacing:.01em;
  color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);padding:5px 10px;border-radius:999px;white-space:nowrap;
}
.badge svg{width:12px;height:12px;color:var(--brand);}
.demo-link{
  font-size:13px;font-weight:700;color:#fff;background:none;border:1px solid rgba(255,255,255,.28);
  padding:7px 13px;border-radius:999px;cursor:pointer;transition:.15s;white-space:nowrap;
}
.demo-link:hover{border-color:var(--brand);background:var(--brand);color:#fff;}

/* ---- Progress ---- */
.progress-wrap{position:sticky;top:var(--topbar-h,65px);z-index:35;width:100%;background:rgba(246,248,250,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.progress-inner{max-width:1040px;margin:0 auto;width:100%;padding:13px 28px 9px;}
.progress{display:flex;align-items:center;gap:0;}
.pseg{display:flex;align-items:center;flex:1;}
.pseg:last-child{flex:none;}
.pdot{
  width:26px;height:26px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;
  font-size:12px;font-weight:600;border:2px solid var(--line);background:var(--surface);color:var(--muted-2);
  transition:.2s;font-family:var(--mono);
}
.pdot.done{background:var(--brand);border-color:var(--brand);color:#fff;cursor:pointer;}
.pdot.current{border-color:var(--brand);color:var(--brand-700);box-shadow:0 0 0 4px rgba(242,140,75,.18);}
.pdot.clickable{cursor:pointer;}
.pline{height:2px;flex:1;background:var(--line);margin:0 6px;border-radius:2px;transition:.2s;}
.pline.done{background:var(--brand);}
.progress-label{font-size:12.5px;color:var(--muted);margin-top:8px;font-weight:500;letter-spacing:.02em;}
.progress-bar-mobile{display:none;}

/* ---- Stage / step ---- */
.stage{flex:1;width:100%;}
.wrap{max-width:1040px;margin:0 auto;padding:30px 28px 60px;width:100%;}
.wrap.wide{max-width:1040px;}
.step-q{font-size:33px;letter-spacing:-.01em;margin-bottom:6px;max-width:calc((100% - 13px)/2);text-wrap:pretty;}
.eval-head .step-q{max-width:none;}
.q-opt{font-family:var(--sans);font-weight:500;font-size:.55em;color:var(--muted-2);letter-spacing:0;vertical-align:middle;}
.step-sub{color:var(--muted);font-size:16.5px;margin:0 0 22px;max-width:60ch;}
.kicker{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--brand-700);margin-bottom:12px;}

/* ---- intro hero (navy) ---- */
.hero{width:100%;overflow:hidden;color:#fff;
  background:radial-gradient(125% 120% at 80% 12%, #234E73 0%, var(--navy) 48%, var(--navy-700) 100%);}
.hero-inner{max-width:1040px;margin:0 auto;padding:58px 28px 36px;display:grid;grid-template-columns:1.12fr .88fr;gap:28px;align-items:center;}
.hero-kicker{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin-bottom:18px;}
.hero-title{font-size:clamp(40px,5.6vw,66px);line-height:1.0;color:#fff;letter-spacing:-.025em;margin-bottom:20px;font-weight:800;}
.hero-sub{font-size:18px;line-height:1.6;color:#C2D0DC;max-width:44ch;margin:0 0 28px;}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;align-items:center;}
.hero-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px;}
.hero-right{display:flex;align-items:center;justify-content:center;}
.hero-portrait{position:relative;display:flex;align-items:center;justify-content:center;width:100%;}
.hero-portrait::before{content:"";position:absolute;width:78%;padding-bottom:78%;border-radius:50%;background:radial-gradient(circle, rgba(242,140,75,.34), rgba(242,140,75,0) 68%);}
.hero-portrait img{position:relative;width:100%;max-width:320px;height:auto;filter:drop-shadow(0 18px 38px rgba(0,0,0,.4));}
.btn-onnavy{background:rgba(255,255,255,.08);color:#fff;border:1.5px solid rgba(255,255,255,.32);}
.btn-onnavy:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.55);}
.hero-video{max-width:1040px;margin:0 auto;padding:0 28px 54px;}

/* ---- intro: heading over left box, Volker comic centered over video box ---- */
.intro-inner{display:block;padding:54px 28px 48px;}
.intro-head{display:grid;grid-template-columns:1fr 1fr;gap:13px;align-items:flex-end;margin-bottom:22px;}
.intro-title{margin-bottom:0;font-size:clamp(34px,4.4vw,52px);text-align:left;}
.intro-comic{justify-self:center;width:140px;height:auto;filter:drop-shadow(0 14px 30px rgba(0,0,0,.42));}
.intro-top{margin:0 0 30px;align-items:stretch;}
.intro-top .volker{margin:0;aspect-ratio:auto;height:auto;overflow:visible;align-items:flex-start;}
.intro-top .videoslot.intro{aspect-ratio:auto;height:auto;max-height:none;margin:0;}
.videoslot.dark{background:linear-gradient(160deg, rgba(255,255,255,.07), rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);max-height:none;}
.videoslot.dark::before{background-image:repeating-linear-gradient(0deg,transparent 0 26px,rgba(255,255,255,.05) 26px 27px);}
.videoslot.dark .videoslot-label{color:#C2D0DC;}
.videoslot.dark .videoslot-tag{color:rgba(255,255,255,.5);}

/* ---- Volker card ---- */
.volker{
  display:flex;gap:16px;background:var(--brand-soft);border:1px solid #f4dcc4;border-left:4px solid var(--brand);
  border-radius:var(--radius);padding:18px 20px 18px 18px;margin:20px 0;box-shadow:0 2px 10px rgba(70,45,20,.05);
}
.volker-av{
  width:56px;height:56px;border-radius:50%;flex:none;background:#fff;border:2px solid #fff;
  color:var(--brand-700);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:23px;
  box-shadow:0 3px 10px rgba(70,45,20,.18); overflow:hidden;
}
.volker-av img{width:100%;height:100%;object-fit:cover;object-position:center 38%;}
.volker-av img{width:100%;height:100%;object-fit:cover;}
.volker-body{font-size:15.5px;line-height:1.62;color:#274656;}
.volker-name{font-weight:700;color:var(--ink);font-size:13px;letter-spacing:.02em;margin-bottom:2px;display:flex;align-items:center;gap:7px;}
.volker-name::after{content:"begleitet dich";font-weight:500;color:var(--muted-2);font-size:11.5px;letter-spacing:.01em;}
.volker-body em{font-style:italic;color:var(--brand-700);font-weight:600;}

/* ---- Video slot ---- */
.videoslot{
  position:relative;width:100%;aspect-ratio:16/9;max-height:300px;border-radius:var(--radius);overflow:hidden;
  background:
    radial-gradient(120% 90% at 50% 0%, #fdf3ea 0%, var(--brand-soft) 55%, #f6ddc6 100%);
  border:1px solid #f2dcc6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  margin:4px 0 4px;
}
.videoslot.intro{margin-bottom:6px;}
.videoslot::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(0deg,transparent 0 26px,rgba(242,140,75,.06) 26px 27px);
}
.playbtn{
  width:64px;height:64px;border-radius:50%;background:var(--brand);display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 24px rgba(242,140,75,.4);position:relative;z-index:1;transition:.18s;cursor:pointer;border:none;
}
.playbtn:hover{transform:scale(1.06);background:var(--brand-600);}
.playbtn svg{width:24px;height:24px;margin-left:3px;fill:#fff;}
.videoslot-label{position:relative;z-index:1;font-size:13px;color:var(--brand-700);font-weight:700;letter-spacing:.01em;text-align:center;padding:0 16px;}
.videoslot-tag{position:absolute;top:12px;left:14px;font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;color:var(--muted-2);text-transform:uppercase;z-index:1;}

/* ---- generic card ---- */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);}
.field{margin-bottom:20px;}
.field-label{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:7px;letter-spacing:.01em;}
.field-hint{font-size:12.5px;color:var(--muted-2);margin-top:6px;}

/* ---- branch tiles ---- */
.branch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:4px;}
.branch-tile{
  display:flex;align-items:center;gap:13px;background:var(--surface);border:1.5px solid var(--line);
  border-radius:var(--radius);padding:16px 17px;cursor:pointer;transition:.15s;box-shadow:var(--shadow);
  text-align:left;min-height:84px;
}
.branch-tile:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:var(--shadow-lg);}
.branch-tile.sel{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 6px 20px rgba(242,140,75,.18);}
.branch-radio{
  width:24px;height:24px;border-radius:50%;flex:none;border:2px solid var(--muted-2);background:var(--surface);
  transition:.15s;position:relative;
}
.branch-tile:hover .branch-radio{border-color:var(--brand);}
.branch-tile.sel .branch-radio{border-color:var(--brand);background:var(--brand);}
.branch-tile.sel .branch-radio::after{
  content:"";position:absolute;left:50%;top:46%;width:6px;height:10px;border:solid #fff;border-width:0 2.5px 2.5px 0;
  transform:translate(-50%,-50%) rotate(45deg);
}
.branch-label{flex:1 1 auto;font-family:var(--display);font-weight:800;font-size:13.5px;line-height:1.18;color:var(--ink);letter-spacing:-.005em;min-width:0;overflow-wrap:anywhere;}
.branch-label .bl-line{display:block;}

/* ---- step 1 top row: text + video, each 2 of 4 branch columns ---- */
.setup-top{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:10px 0 28px;}
.setup-top > *{aspect-ratio:16/9;margin:0;}
.setup-top .volker{height:auto;align-items:center;overflow:auto;}
.setup-top .videoslot{max-height:none;height:auto;}

/* ---- step 3: Schlüsseleigenschaften ---- */
.branche-pill-row{margin:2px 0 18px;}
.branche-pill{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 15px;}
.branche-pill b{color:var(--brand-700);font-weight:700;}
.factors-layout{display:grid;grid-template-columns:1fr;gap:22px;align-items:start;}
.factors-layout.has-side{grid-template-columns:minmax(0,1fr) 306px;}
.factor-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:9px;}
.factor-chip{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1.5px solid var(--line);border-radius:999px;padding:9px 15px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:.14s;font-family:var(--sans);line-height:1.1;}
.factor-chip:hover{border-color:var(--brand);color:var(--brand-700);background:var(--brand-soft);}
.factor-chip.on{background:var(--brand);border-color:var(--brand);color:#fff;}
.factor-chip.on:hover{background:var(--brand-600);border-color:var(--brand-600);color:#fff;}
.factor-chip .fc-check{font-size:11px;font-weight:800;line-height:1;}
.factor-chip.custom .fc-x{color:rgba(255,255,255,.85);width:18px;height:18px;}
.factor-chip.custom .fc-x:hover{color:#fff;background:rgba(255,255,255,.22);}
.factor-add{display:flex;gap:9px;margin-top:18px;max-width:480px;}
.factor-count{font-size:12.5px;color:var(--muted-2);font-weight:600;margin-top:13px;}
.factors-side .volker{margin:0;position:sticky;top:88px;}
.chart-wrap{position:relative;}
.chart-hidebtn{position:absolute;top:14px;right:16px;z-index:3;}
.fb-actions{display:flex;gap:8px;align-items:center;flex:none;}
.entfernen-btn{font-size:11.5px;font-weight:700;padding:5px 12px;border-radius:999px;border:1.5px solid var(--muted-2);color:var(--muted);background:none;cursor:pointer;transition:.14s;white-space:nowrap;flex:none;}
.entfernen-btn:hover{border-color:var(--coral);color:var(--coral);background:var(--coral-soft);}

/* Eliminieren toggle-switch */
.elim-switch{position:relative;display:inline-block;width:132px;height:30px;border-radius:999px;border:1.5px solid var(--coral);background:var(--surface);cursor:pointer;padding:0;transition:.18s;flex:none;}
.elim-switch .es-label{display:block;line-height:27px;font-size:11px;font-weight:700;color:var(--coral);text-align:center;padding:0 6px 0 26px;transition:.18s;}
.elim-switch .es-knob{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--coral);transition:left .2s ease;}
.elim-switch.on{background:var(--coral-soft);}
.elim-switch.on .es-knob{left:calc(100% - 26px);}
.elim-switch.on .es-label{padding:0 26px 0 6px;}

/* Hold-to-delete */
.hold-del{position:relative;overflow:hidden;font-size:11.5px;font-weight:700;padding:5px 14px;border-radius:999px;border:1.5px solid var(--muted-2);color:var(--muted);background:none;cursor:pointer;white-space:nowrap;flex:none;user-select:none;touch-action:none;transition:border-color .15s,color .15s;}
.hold-del .hd-label{position:relative;z-index:1;}
.hold-del .hd-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--coral);z-index:0;}
.hold-del.holding{border-color:var(--coral);color:#fff;}
.hold-del.holding .hd-fill{width:100%;transition:width 2s linear;}
.inp,.txt,select.inp{
  width:100%;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;font-size:15.5px;
  background:var(--surface);transition:.15s;outline:none;
}
.inp:focus,.txt:focus,select.inp:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(242,140,75,.16);}
.txt{resize:vertical;min-height:70px;line-height:1.5;}
.inp::placeholder,.txt::placeholder{color:var(--muted-2);}

/* ---- buttons ---- */
.btn{
  display:inline-flex;align-items:center;gap:9px;font-size:15px;font-weight:600;padding:12px 22px;border-radius:var(--radius-sm);
  cursor:pointer;border:1.5px solid transparent;transition:.16s;line-height:1;white-space:nowrap;
}
.btn-primary{background:var(--brand);color:#fff;}
.btn-primary:hover{background:var(--brand-600);}
.btn-primary:disabled{background:#e8d5c4;cursor:not-allowed;color:#fbf3ec;}
.btn-ghost{background:transparent;color:var(--brand-700);border-color:var(--line);}
.btn-ghost:hover{border-color:var(--brand);background:var(--brand-soft);}
.btn-lg{padding:15px 30px;font-size:16.5px;}
.btn-text{background:none;border:none;color:var(--muted);font-weight:700;cursor:pointer;font-size:14px;padding:8px 4px;white-space:nowrap;text-align:left;}
.btn-text:hover{color:var(--brand-700);}

/* ---- confirmation modal ---- */
.modal-overlay{position:fixed;inset:0;background:rgba(11,42,58,.5);backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;}
.modal-card{background:var(--surface);border-radius:18px;width:100%;max-width:440px;padding:28px 28px 24px;box-shadow:var(--shadow-lg);text-align:center;animation:modalPop .18s ease;}
.modal-icon{width:54px;height:54px;border-radius:50%;background:var(--coral-soft);color:var(--coral);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;font-family:var(--display);margin:0 auto 15px;}
.modal-icon.has-img{width:92px;height:92px;background:var(--brand-soft);overflow:hidden;border:3px solid #fff;box-shadow:0 6px 18px rgba(70,45,20,.18);}
.modal-icon.has-img img{width:100%;height:100%;object-fit:cover;object-position:center;}
.modal-title{font-size:21px;color:var(--ink);margin-bottom:9px;line-height:1.25;}
.modal-body{font-size:14.5px;line-height:1.6;color:var(--muted);margin-bottom:23px;}
.modal-actions{display:flex;gap:11px;justify-content:center;}
.modal-actions .btn{flex:1;justify-content:center;max-width:185px;}
@keyframes modalPop{from{transform:translateY(10px) scale(.97);}to{transform:none;}}

/* ---- footer nav ---- */
.navbar{position:sticky;bottom:0;z-index:30;background:rgba(251,252,253,0.9);backdrop-filter:blur(10px);border-top:1px solid var(--line);}
.navbar-inner{max-width:1040px;margin:0 auto;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
.navbar-inner.wide{max-width:1040px;}

/* ---- chips ---- */
.chip{
  display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--line);
  border-radius:999px;padding:8px 13px;font-size:13.5px;font-weight:500;color:var(--ink);transition:.14s;
}
.chip-suggest{cursor:pointer;color:var(--muted);}
.chip-suggest:hover{border-color:var(--brand);color:var(--brand-700);background:var(--brand-soft);}
.chip-suggest::before{content:"+";font-weight:800;color:var(--brand);}
.chip-x{border:none;background:none;cursor:pointer;color:var(--muted-2);padding:0;display:flex;font-size:16px;line-height:1;border-radius:50%;width:18px;height:18px;align-items:center;justify-content:center;}
.chip-x:hover{color:var(--coral);background:var(--coral-soft);}

/* ---- slider rows ---- */
.slider-row{display:grid;grid-template-columns:1fr;gap:6px;padding:14px 0;border-bottom:1px solid var(--line);}
.slider-row:last-child{border-bottom:none;}
.slider-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;}
.slider-name{font-weight:600;font-size:14.5px;}
.slider-track-line{display:flex;align-items:center;gap:12px;}
.slider-tag{font-size:11px;font-weight:600;width:118px;flex:none;color:var(--muted);letter-spacing:.01em;}
.slider-tag.eigen{color:var(--ocean);}
.slider-val{font-family:var(--mono);font-size:13px;font-weight:600;width:26px;text-align:right;flex:none;}
.scale-ends{display:flex;justify-content:space-between;font-size:10.5px;color:var(--muted-2);font-family:var(--mono);letter-spacing:.04em;padding:0 2px;}

input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;background:var(--line);outline:none;cursor:pointer;}
input[type=range].eigen{background:linear-gradient(to right,var(--ocean) var(--pct,50%),var(--line) var(--pct,50%));}
input[type=range].std{background:linear-gradient(to right,var(--muted-2) var(--pct,50%),var(--line) var(--pct,50%));}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--ocean);border:2.5px solid #fff;box-shadow:0 1px 4px rgba(11,42,58,.3);cursor:pointer;}
input[type=range].std::-webkit-slider-thumb{background:var(--muted);}
input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--ocean);border:2.5px solid #fff;box-shadow:0 1px 4px rgba(11,42,58,.3);cursor:pointer;}

/* ---- differentiated role sliders (step 4) ---- */
.factor-block{padding:15px 2px;border-bottom:1px solid var(--line);}
.factor-block:last-child{border-bottom:none;}
.fb-name{font-weight:600;font-size:14.5px;margin-bottom:6px;}
.fb-scale,.rs-line{display:grid;grid-template-columns:152px 1fr 30px;align-items:center;gap:0 12px;}
.rs-line{padding:4px 0;}
.fb-scale{margin-bottom:2px;}
.fb-ends{display:flex;justify-content:space-between;font-size:10px;font-weight:600;color:var(--muted-2);font-family:var(--mono);letter-spacing:.03em;}
.rs-label{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rs-val{font-family:var(--mono);font-size:13px;font-weight:600;text-align:right;}
input[type=range].slider-dyn{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;outline:none;cursor:pointer;}
input[type=range].slider-dyn::-webkit-slider-thumb{-webkit-appearance:none;width:17px;height:17px;border-radius:50%;background:var(--thumb,#0E5A8A);border:2.5px solid #fff;box-shadow:0 1px 4px rgba(11,42,58,.3);cursor:pointer;}
input[type=range].slider-dyn::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:var(--thumb,#0E5A8A);border:2.5px solid #fff;box-shadow:0 1px 4px rgba(11,42,58,.3);cursor:pointer;}

/* ---- step 5: reduce / eliminate ---- */
.fb-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;}
.fb-name.elim{color:var(--muted-2);}
.factor-block.is-elim{opacity:.72;}
.elim-toggle{font-size:11.5px;font-weight:700;letter-spacing:.01em;padding:5px 13px;border-radius:999px;border:1.5px solid var(--coral);color:var(--coral);background:none;cursor:pointer;transition:.14s;white-space:nowrap;flex:none;}
.elim-toggle:hover{background:var(--coral-soft);}
.elim-toggle.on{background:var(--coral);border-color:var(--coral);color:#fff;}
.ref-toggle{display:block;margin:9px 0 0 auto;width:fit-content;background:none;border:1px dashed var(--line);color:var(--muted-2);font-size:11.5px;font-weight:600;padding:5px 12px;border-radius:8px;cursor:pointer;transition:.14s;white-space:nowrap;}
.ref-toggle:hover{border-color:var(--ocean);color:var(--ocean);background:var(--foam);}
.ref-toggle.on{border-style:solid;border-color:var(--ocean);color:var(--ocean);background:var(--foam);}

/* ---- step 6: raise / new + ghost motivation ---- */
.rs-trackwrap{position:relative;display:flex;align-items:center;}
.rs-trackwrap input{width:100%;}
.ghost-thumb{position:absolute;top:50%;width:17px;height:17px;border-radius:50%;background:var(--c);transform:translate(-50%,-50%);opacity:0;pointer-events:none;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.18);animation:ghostPop .9s ease-out 3;}
.ghost-q{position:absolute;top:-20px;font-family:var(--display);font-weight:800;font-size:15px;transform:translate(-50%,0);opacity:0;pointer-events:none;animation:qPulse .9s ease-out 3;}
@keyframes ghostPop{0%{opacity:0;}25%{opacity:.5;}70%{opacity:.5;}100%{opacity:0;}}
@keyframes qPulse{0%{opacity:0;transform:translate(-50%,4px) scale(.85);}30%{opacity:.9;transform:translate(-50%,-3px) scale(1.35);}65%{opacity:.9;transform:translate(-50%,0) scale(1);}100%{opacity:0;transform:translate(-50%,0) scale(.9);}}
.addnew-row{padding:15px 2px;border-bottom:1px solid var(--line);text-align:center;}
.addnew-control{min-width:0;}
.addnew-select{display:inline-block;width:268px;border:1.5px solid var(--brand);border-radius:9px;padding:10px 18px;font-size:13.5px;font-weight:700;color:var(--brand-700);background-color:transparent;cursor:pointer;font-family:var(--sans);appearance:none;-webkit-appearance:none;-moz-appearance:none;text-align:center;text-align-last:center;}
.addnew-select:hover{background-color:var(--brand-soft);}
.addnew-custom{display:flex;align-items:center;gap:6px;}
.addnew-custom .inp{padding:7px 10px;font-size:13px;max-width:180px;}
.addnew-empty{opacity:.45;}
.new-badge{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--azure);border-radius:5px;padding:2px 7px;margin-right:8px;vertical-align:middle;}
.factor-block.is-new{background:linear-gradient(90deg, rgba(30,159,216,.06), transparent 60%);border-radius:10px;}

/* ---- six paths ---- */
.paths-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.path-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:.18s;}
.path-card.open{box-shadow:var(--shadow);border-color:#f2dcc6;}
.path-head{display:flex;gap:13px;align-items:flex-start;padding:16px 18px;cursor:pointer;user-select:none;}
.path-num{width:30px;height:30px;border-radius:8px;flex:none;background:var(--brand-soft);color:var(--brand-700);font-family:var(--mono);font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center;}
.path-num.filled{background:var(--brand);color:#fff;}
.path-title{font-family:var(--serif);font-weight:600;font-size:16px;line-height:1.25;}
.path-chev{margin-left:auto;color:var(--muted-2);transition:.2s;flex:none;}
.path-card.open .path-chev{transform:rotate(180deg);}
.path-body{padding:0 18px 18px 61px;}
.path-lead{font-size:14px;color:var(--ink);margin-bottom:8px;line-height:1.5;}
.path-ex{font-size:13px;color:var(--muted);background:var(--paper);border-radius:8px;padding:9px 12px;margin-bottom:12px;line-height:1.5;border:1px solid var(--line);}
.path-ex b{color:var(--brand-700);font-weight:700;}

/* ---- ERRC ---- */
.errc-tray{background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);padding:15px;margin-bottom:18px;}
.errc-tray-label{font-size:12.5px;font-weight:600;color:var(--muted);margin-bottom:11px;letter-spacing:.01em;}
.errc-chips{display:flex;flex-wrap:wrap;gap:9px;min-height:24px;}
.errc-chip{
  display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;font-size:13.5px;font-weight:600;
  cursor:grab;border:1.5px solid var(--ocean);background:var(--foam);color:var(--ocean-600);transition:.13s;user-select:none;
}
.errc-chip:active{cursor:grabbing;}
.errc-chip.dragging{opacity:.4;}
.errc-chip .grip{color:var(--muted-2);font-size:13px;letter-spacing:-1px;}
.errc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.quad{border-radius:var(--radius);padding:15px 16px 16px;min-height:150px;border:1.5px solid transparent;transition:.15s;}
.quad.over{border-style:dashed;border-color:currentColor;transform:translateY(-1px);}
.quad-elim{background:var(--coral-soft);color:var(--coral);}
.quad-red{background:#f6ece3;color:#a9663f;}
.quad-raise{background:var(--foam);color:var(--ocean);}
.quad-new{background:#dff0fa;color:var(--azure);}
.quad-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:4px;}
.quad-title{font-family:var(--serif);font-size:17px;font-weight:600;}
.quad-arrow{font-size:12px;font-weight:700;font-family:var(--mono);}
.quad-sub{font-size:12px;color:var(--muted);margin-bottom:12px;line-height:1.4;min-height:32px;}
.quad-chips{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start;}
.quad-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.75);border:1px solid rgba(11,42,58,.12);color:var(--ink);padding:6px 10px;border-radius:999px;font-size:12.5px;font-weight:600;cursor:grab;}
.quad-chip .qx{cursor:pointer;color:var(--muted-2);font-size:14px;line-height:1;}
.quad-chip .qx:hover{color:var(--coral);}
.quad-empty{font-size:12px;color:var(--muted-2);font-style:italic;}
.newfactor-input{display:flex;gap:8px;margin-top:10px;}
.newfactor-input .inp{padding:8px 11px;font-size:13.5px;}
.errc-feedback{font-size:12.5px;font-weight:600;margin-top:8px;min-height:18px;transition:.2s;}

/* mobile sheet for errc */
.sheet-backdrop{position:fixed;inset:0;background:rgba(11,42,58,.4);z-index:90;display:flex;align-items:flex-end;justify-content:center;}
.sheet{background:var(--surface);border-radius:18px 18px 0 0;width:100%;max-width:520px;padding:20px 20px 28px;box-shadow:var(--shadow-lg);}
.sheet h4{font-size:17px;margin-bottom:4px;}
.sheet-opts{display:grid;gap:10px;margin-top:16px;}
.sheet-opt{text-align:left;padding:13px 15px;border-radius:11px;border:1.5px solid var(--line);background:var(--surface);cursor:pointer;font-weight:600;font-size:14.5px;display:flex;flex-direction:column;gap:2px;}
.sheet-opt small{font-weight:500;color:var(--muted);font-size:12px;}
.sheet-opt:hover{border-color:var(--brand);background:var(--brand-soft);}

/* ---- evaluation ---- */
.eval-head{text-align:center;margin-bottom:8px;}
.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;}
.profile-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow);}
.profile-card.cost{border-top:3px solid var(--coral);}
.profile-card.value{border-top:3px solid var(--ocean);}
.profile-label{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;}
.profile-card.cost .profile-label{color:var(--coral);}
.profile-card.value .profile-label{color:var(--ocean);}
.profile-list{display:flex;flex-wrap:wrap;gap:7px;}
.ptag{font-size:13px;font-weight:500;padding:6px 11px;border-radius:8px;background:var(--paper);border:1px solid var(--line);}
.errc-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0;}
.errc-sum-cell{border-radius:var(--radius);padding:14px 15px;}
.errc-sum-cell h4{font-size:14px;margin-bottom:9px;}
.errc-sum-cell ul{margin:0;padding-left:16px;font-size:13px;color:var(--ink);line-height:1.65;}
.errc-sum-cell li::marker{color:currentColor;}
.errc-sum-empty{font-size:12.5px;color:var(--muted-2);font-style:italic;}
.disclaimer{background:#fff9f1;border:1px solid #f0dcc4;border-radius:var(--radius);padding:16px 18px;font-size:13.5px;color:#7a5b2e;line-height:1.6;margin:22px 0;}
.disclaimer b{color:#8a4b1f;}
.cta-block{background:radial-gradient(120% 140% at 85% 0%, #234E73 0%, var(--navy) 55%, var(--navy-700) 100%);color:#fff;border-radius:var(--radius);padding:26px 28px;margin:22px 0;box-shadow:var(--shadow-lg);}
.cta-block h3{color:#fff;font-size:22px;margin-bottom:8px;}
.cta-block p{color:#C2D0DC;font-size:15px;margin:0 0 18px;max-width:54ch;}
.cta-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;}
.cta-form .inp{background:rgba(255,255,255,.95);border-color:transparent;}
.cta-form .full{grid-column:1/-1;}
.cta-actions{display:flex;align-items:center;gap:16px;margin-top:14px;flex-wrap:wrap;}
.cta-actions .btn-primary{background:var(--brand);color:#fff;}
.cta-actions .btn-primary:hover{background:var(--brand-600);}
.cta-ghost{color:#C2D0DC;background:none;border:none;cursor:pointer;font-weight:600;font-size:14px;}
.cta-ghost:hover{color:#fff;}
.cta-success{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:11px;padding:16px 18px;color:#fff;font-size:15px;font-weight:500;}
.cta-success .ok-circle{width:34px;height:34px;border-radius:50%;background:var(--ok);display:flex;align-items:center;justify-content:center;flex:none;}

.eval-section-title{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:30px 0 12px;}
.impulse-item{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);}
.impulse-item:last-child{border-bottom:none;}
.impulse-num{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--azure);flex:none;width:18px;}
.impulse-txt{font-size:14.5px;color:var(--ink);line-height:1.55;}

.tagline-edit{width:100%;border:1px dashed var(--line);background:var(--paper);border-radius:var(--radius-sm);padding:13px 15px;font-size:16px;font-family:var(--serif);font-style:italic;color:var(--ocean-600);line-height:1.5;resize:vertical;min-height:54px;}
.tagline-edit:focus{outline:none;border-color:var(--azure);border-style:solid;background:#fff;}

/* ---- chart ---- */
.chart-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px 10px;}
.chart-legend{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-bottom:6px;}
.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--ink);}
.legend-swatch{width:26px;height:0;border-top-width:3px;border-top-style:solid;border-radius:2px;}
.chart-tooltip{position:fixed;pointer-events:none;background:var(--ink);color:#fff;font-size:12px;padding:6px 10px;border-radius:7px;z-index:80;white-space:nowrap;box-shadow:var(--shadow-lg);opacity:0;transition:opacity .12s;}
.chart-tooltip .tt-name{font-weight:600;}
.chart-tooltip .tt-val{font-family:var(--mono);color:#9fd4ee;}

/* ---- transitions ---- */
@keyframes fadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}
.step-anim{animation:fadeUp .22s ease both;}
.fade-up{animation:fadeUp .3s ease both;}

/* ---- responsive ---- */
@media(max-width:760px){
  .topbar-inner{padding:11px 18px;flex-wrap:wrap;gap:10px;}
  .brand-title{font-size:16px;}
  .badgerow{order:3;width:100%;justify-content:flex-start;}
  .wrap{padding:22px 18px 50px;}
  .wrap.wide{padding:22px 18px 50px;}
  .step-q{font-size:26px;max-width:none;}
  .progress{display:none;}
  .progress-inner{padding:9px 18px 8px;}
  .progress-bar-mobile{display:block;height:6px;background:var(--line);border-radius:6px;overflow:hidden;}
  .progress-bar-mobile>div{height:100%;background:var(--ocean);border-radius:6px;transition:width .3s;}
  .paths-grid{grid-template-columns:1fr;}
  .errc-grid{grid-template-columns:1fr;}
  .branch-grid{grid-template-columns:1fr 1fr;gap:10px;}
  .branch-tile{min-height:72px;padding:13px 14px;}
  .setup-top{grid-template-columns:1fr;}
  .setup-top > *{aspect-ratio:auto;}
  .setup-top .videoslot{aspect-ratio:16/9;}
  .factors-layout.has-side{grid-template-columns:1fr;}
  .factors-side .volker{position:static;}
  .hero-inner{grid-template-columns:1fr;padding:38px 18px 28px;gap:14px;}
  .hero-right{order:-1;}
  .hero-portrait img{max-width:190px;}
  .hero-title{font-size:clamp(34px,9vw,46px);}
  .hero-video{padding:0 18px 40px;}
  .intro-inner{padding:36px 18px 34px;}
  .intro-head{grid-template-columns:1fr auto;align-items:flex-end;gap:14px;}
  .intro-comic{width:96px;}
  .result-grid{grid-template-columns:1fr;}
  .errc-summary{grid-template-columns:1fr 1fr;}
  .cta-form{grid-template-columns:1fr;}
  .navbar-inner{padding:12px 18px;}
}

/* ---- print ---- */
@media print{
  @page{margin:16mm;}
  body{background:#fff;font-size:12px;}
  .topbar,.progress-wrap,.navbar,.no-print,.videoslot,.cta-block,.demo-link{display:none !important;}
  .wrap,.wrap.wide{max-width:100%;padding:0;}
  .print-only{display:block !important;}
  .card,.profile-card,.chart-card{box-shadow:none !important;break-inside:avoid;}
  .result-grid,.errc-summary{break-inside:avoid;}
  .chart-card{border:1px solid #ccc;}
  .disclaimer{break-inside:avoid;}
  .print-header{display:flex !important;justify-content:space-between;border-bottom:1.5px solid var(--ink);padding-bottom:8px;margin-bottom:18px;align-items:baseline;}
  .print-footer{display:block !important;border-top:1px solid var(--line);margin-top:24px;padding-top:8px;font-size:10px;color:var(--muted);}
}
.print-only,.print-header,.print-footer{display:none;}
