:root {
    --font-size-sm: clamp(0.7rem, 0.15vw + 0.68rem, 0.76rem);
    --font-size-base: clamp(0.9rem, 0.31vw + 0.82rem, 1.05rem);
    --font-size-md: clamp(1.1rem, 0.51vw + 0.92rem, 1.25rem);
    --font-size-lg: clamp(1.3rem, 0.9vw + 1.11rem, 1.8rem);
    --font-size-xl: clamp(1.6rem, 1.26vw + 1.26rem, 2.26rem);
    --font-size-xxl: clamp(2rem, 1.9vw + 1.45rem, 2.9rem);
    --font-size-xxxl: clamp(2.4rem, 2.7vw + 1.77rem, 4rem);

    --color-main: #1C2E46;
    --color-sec: #F3F1EF;
    --color-acc: #4169E1;
    --color-acc2: #A5A2A1;
}

/* latin-ext */
@font-face {
    font-family: 'DM Serif Display';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/dm_serif_display-0.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'DM Serif Display';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/dm_serif_display-1.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-1.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-2.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-3.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-4.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-5.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-6.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: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-7.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 100;
    font-display: swap;
    src: url('fonts/noto-sans-8.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-9.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-10.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-11.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-12.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-13.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-14.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: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-15.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 200;
    font-display: swap;
    src: url('fonts/noto-sans-16.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-17.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-18.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-19.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-20.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-21.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-22.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: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-23.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('fonts/noto-sans-24.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-25.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-26.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-27.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-28.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-29.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-30.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: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-31.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('fonts/noto-sans-32.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-33.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-34.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-35.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-36.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-37.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-38.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: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-39.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('fonts/noto-sans-40.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-41.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-42.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-43.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-44.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-45.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-46.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: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-47.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('fonts/noto-sans-48.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-49.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-50.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-51.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-52.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-53.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-54.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: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-55.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('fonts/noto-sans-56.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-57.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-58.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-59.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-60.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-61.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-62.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: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-63.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 800;
    font-display: swap;
    src: url('fonts/noto-sans-64.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-65.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-66.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* devanagari */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-67.woff2') format('woff2');
    unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF;
}
/* greek-ext */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-68.woff2') format('woff2');
    unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-69.woff2') format('woff2');
    unicode-range: U+0370-03FF;
}
/* vietnamese */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-70.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: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-71.woff2') format('woff2');
    unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
    font-family: 'Noto Sans';
    font-style: normal;
    font-weight: 900;
    font-display: swap;
    src: url('fonts/noto-sans-72.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}



html {font-size: var(--font-size-base);} /*16px*/

body {
    background: white;
    font-family: 'Noto Sans', sans-serif;
    font-weight: 400;
    line-height: 1.75;
    color: #000000;
    max-width: 100vw!important;
}

p {margin-bottom: 1rem; font-size: var(--font-size-base);}

h1, h2, h3, h4, h5 {
    margin: 3rem 0 1.38rem;
    font-family: 'DM Serif Display', sans-serif;
    font-weight: 400;
    line-height: 1.3;
}

h1 {
    margin-top: 0;
    font-size: var(--font-size-xxxl);
}

.small-h1 {
    font-size: var(--font-size-xxl);
}

h2 {font-size: var(--font-size-xxl);}

h3 {font-size: var(--font-size-xl);}

h4 {font-size: var(--font-size-lg);}

h5 {font-size: var(--font-size-md);}

small, .text_small {font-size: var(--font-size-sm);}

.active {
    color: var(--color-acc)!important;
}

/* Navbar */

nav {
    position: fixed!important;
    z-index: 1000;
    top: 50px;
    width: 100%;
    background-color: var(--color-sec);
}

.nav-name {
    margin-left: 220px;
    padding: 0;
    text-decoration: none;
    line-height: 100%;
    font-family: "DM Serif Display", sans-serif;
    font-size: var(--font-size-lg);
    color: var(--color-main);
}

.nav-name:hover {
    color: var(--color-acc);
}

.navbar-nav {
    font-family: 'DM Serif Display', sans-serif;
    font-weight: 400;
    line-height: 1.75;
}

.nav-link {
    color: var(--color-main);!important;
}

.nav-link:hover {
    color: var(--color-acc);!important;
}

.nav-logo {
    z-index: 1001;
    position: fixed;
    top: 10px;
    margin-left: 30px;
    height: 150px;
    width: 150px;
    background-color: #e8e6e5;
    border-radius: 25px;
    overflow: hidden;
}

.nav-logo img {
    position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 120px;
}

.navbar-toggler {
    border: none;
}

@media (max-width: 766px) {
    nav {
        top: 0;
    }

    .nav-name {
        font-size: var(--font-size-xxl);
        margin-left: 5px;
    }

    .nav-logo {
        visibility: hidden;
    }

}

.hero {
    background: var(--color-acc2);
    width: 100%;
    height: auto;
}

.hero img {
    max-width: 100%;
    height: auto;
}

.welcome {
    align-content: space-between;
    width: 100%;
    text-align: left;
    background: var(--color-main);
    color: var(--color-sec);
    overflow: hidden;
    padding: 150px 50px 100px;
    margin-bottom: 0;
}

@media (max-width: 766px) {
    .welcome {
        padding: 50px 20px 25px;
    }

    .wrapper-welcome-img {
        overflow: unset;
        height: auto;
    }

    .welcome img {
        width: 100%;
        height: auto;
        padding: 0;
        margin: 0;
    }

}

.welcome h1 {
    margin-bottom: 0;
}

.line {
    height: 1px;
    background: white;
    width: 90%;
    margin-bottom: 20px;
}

.wrapper-welcome-img {
    overflow: hidden;
    border-radius: 35px;
    height: 400px;
    width: 800px;
}

.welcome-img {
    position: center;
    max-width: 120%;
    height: auto;
}


.wine {
    overflow: hidden;
    width: 100%;
    margin-top: 0;
    padding-top: 20px;
    background-color: var(--color-sec);
    text-align: center;
}

.wine-img {
    height: 600px;
    width: auto;
}

.wine-img img {
    border-radius: 35px;
    width: auto;
    max-height: 100%;
}

.wine-img-container {
    margin-top: 50px;
    margin-left: 200px;
    margin-right: 200px;
}

.wine-img-container-mobile{
    display: none;
}

.wine-img-container-mobile img{
    max-width: 100%;
    height: auto;
}

@media (max-width: 766px) {

    .wine-img-container {
        display: none;
    }

    .wine-img-container-mobile {
        display: unset;
    }

}

.wine-hero {
    height: 20vh;
    overflow: hidden;
}

.wine-head-section {
    text-align: center;
    padding-top: 80px;
    padding-bottom: 20px;
}

.wine-head-section h1 {
    margin-bottom: 0;
}

.wine-head-section-line {
    width: 5rem;
    height: 2px;
    margin: 5px auto 10px;
    background: black;
}

.wine-list-section {
    background-color: var(--color-main);
    position: relative;
}

.wine-list-section-background {
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: multiply;
    background-image: url("assets/img/wine_background.png");
    background-size: 100% auto;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    opacity: 0.15;
}

.wine-list-section-content {
    z-index: 9;
    padding-left: 50px;
    padding-right: 50px;
    padding-top: 50px;
    color: white;
    overflow: hidden;
}

.wine-card {
    margin-left: 80px;
    margin-bottom: 75px;
    padding-bottom: 20px;
    padding-left: 25px;
    border-left: 2px solid white;
    height: 220px;
}

.wine-white {
    border-left: 2px solid white;
    height: 514px;
}

.wine-card h2 {
    font-size: var(--font-size-xl);
    margin: 0;
    position: relative;
    z-index: 11;
}

.wine-card p {
    margin-bottom: 2px;
}

.wine-card-underline {
    background: #0E1722;
    opacity: 0.5;
    height: 25px;
    position: relative;
    top: -25px;
    z-index: 1;
    width: 40rem;
    margin: 0;
    padding: 0;
}

@media (max-width: 766px) {

    .wine-list-section-background {
        background-image: url("assets/img/wine_background_mobile.png");
    }

    .wine-card {
        margin-left: 20px;
        height: 230px;
    }

    .wine-card-underline {
        height: 20px;
        top: -18px;
    }

    .wine-card .col-2 {
        margin-right: 150px;
    }

}

@media  (max-width:  700px) {

    .wine-card-underline {
        width: 30rem;
    }

}

@media  (max-width:  530px) {

    .wine-list-section-content {
        padding-left: 15px;
    }

    .wine-card-underline {
        width: 25rem;
    }

}

@media  (max-width:  415px) {

    .wine-card-underline {
        width: 15rem;
    }

}

footer {
    padding-top: 20px;
    padding-bottom: 20px;
    max-width: 100%;
    overflow: hidden;
    background-color: var(--color-main);
    text-align: end;
}

footer a {
    margin-right: 20px;
    text-decoration: none;
    font-family: 'Noto Sans', sans-serif;
    font-size: 0.8rem;
    color: white;
}

footer a:hover {
    color: var(--color-acc2);
}

.footer-copyright {
    text-align: center;
    font-family: 'Noto Sans', sans-serif;
    font-size: 0.7rem;
    color: white;
}

.footer-copyright img {
    width: 5rem;
    height: 5rem;
    padding: 0;
    margin: 0 0 5px;
}

.legal {
    margin-top: 50px;
    margin-bottom: 100px;
}

.legal h1 {
    font-size: var(--font-size-xl);
}

.legal h2 {
    font-size: var(--font-size-lg);
}

.legal h3 {
    font-size: var(--font-size-md);
}

.contact-line {
    margin-top: 0;
    background: black;
    height: 1px;
    width: 75%;
}

.contact-form {
    width: 75%;
}

input {
    background: var(--color-sec);
    border: none;
    border-bottom: black 1px solid;
    height: 50px;
    width: 250px;
    padding: 12px;
    margin-bottom: 10px;
}

select {
    background: var(--color-sec);
    border: none;
    border-bottom: black 1px solid;
    height: 50px;
    width: 250px;
    padding: 9px;
    margin-bottom: 10px;
}

textarea {
    background: var(--color-sec);
    border: none;
    border-bottom: black 1px solid;
    width: 100%;
    height: 100px;
    overflow: hidden;
    margin-left: 12px;
}

.contact-button {
    background: var(--color-acc);
    color: white;
    font-family: "DM Serif Display", sans-serif;
    border: none;
    padding-left: 25px;
    padding-right: 25px;
    margin-left: 12px;
}

button:active {
    background: var(--color-main);
}

@media (max-width: 766px) {

    .contact-form {
        width: 90%;
    }

    input {
        width: 290px;
    }

    select {
        width: 290px;
    }

    textarea {
        width: 290px;
    }

    .contact-button {
        height: 40px;
    }

}

.nutrition_table {
    color: white;
    padding-top: 20px;
    padding-bottom: 20px;
}

.nutrition_table table {
    width: 70%;
    margin-right: auto;
    margin-left: auto;
}
