.ck-content .category {
    font-family: 'Oswald' !important;
    font-size: 20px !important;
    font-weight: bold !important;
    color: #555 !important;
    letter-spacing: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ck-content .document-title {
    font-family: 'Oswald' !important;
    font-size: 50px !important;
    font-weight: bold !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.ck-content .document-subtitle {
    font-family: 'Oswald' !important;
    font-size: 20px !important;
    color: #555 !important;
    margin: 0 0 1em !important;
    font-weight: bold !important;
    padding: 0 !important;
}

.ck-content p.info-box {
    --background-size: 30px !important;
    --background-color: #e91e63 !important;
    padding: 1.2em 2em !important;
    border: 1px solid var(--background-color) !important;
    background: linear-gradient(135deg, var(--background-color) 0%, var(--background-color) var(--background-size), transparent var(--background-size)), linear-gradient(135deg, transparent calc(100% - var(--background-size)), var(--background-color) calc(100% - var(--background-size)), var(--background-color)) !important;
    border-radius: 10px !important;
    margin: 1.5em 2em !important;
    box-shadow: 5px 5px 0 #ffe6ef !important;
}

.ck-content span.marker {
    background: yellow !important;
}

.ck-content span.spoiler {
    background: #000 !important;
    color: #000 !important;
}

.ck-content span.spoiler:hover {
    background: #000 !important;
    color: #fff !important;
}

.ck-content .button--green {
    background-color: #406b1e !important;
}

.ck-content .button {
    display: inline-block !important;
    width: 260px !important;
    border-radius: 8px !important;
    margin: 0 auto !important;
    padding: 12px !important;
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-decoration: none !important;
}

.ck-content .button--black {
    background-color: #141517 !important;
}

.decorative-style-01 {
    position: relative !important;
    padding: 1rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-01::before,
.decorative-style-01::after {
    position: absolute !important;
    width: 20px !important;
    height: 30px !important;
    content: '' !important;
}

.decorative-style-01::before {
    border-left: double 5px !important;
    border-top: double 5px !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-01::after {
    border-right: double 5px !important;
    border-bottom: double 5px !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-02 {
    position: relative !important;
    padding: 1rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-02::before,
.decorative-style-02::after {
    position: absolute !important;
    width: 20px !important;
    height: 30px !important;
    content: '' !important;
}

.decorative-style-02::before {
    border-left: dotted 3px !important;
    border-top: dotted 3px !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-02::after {
    border-right: dotted 3px !important;
    border-bottom: dotted 3px !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-03 {
    position: relative !important;
    padding: 1rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-03::before,
.decorative-style-03::after {
    position: absolute !important;
    width: 30px !important;
    height: 30px !important;
    content: '' !important;
}

.decorative-style-03::before {
    border-left: solid 3px !important;
    border-top: solid 3px !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-03::after {
    border-right: solid 3px !important;
    border-bottom: solid 3px !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-04 {
    padding: 1rem 0 2rem !important;
    margin-bottom: 0.5rem !important;
    background: linear-gradient(90deg, #66c5dd 0% 100%) !important;
    background-repeat: no-repeat !important;
    background-size: 40px 2px !important;
    background-position: left bottom !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-05 {
    padding: 1rem 1rem 1rem 2rem !important;
    margin-bottom: 0.2rem !important;
    background-image:
        linear-gradient(90deg, transparent 1rem, #353535 1rem),
        radial-gradient(#b2d5de 40%, #333 40%) !important;
    background-repeat: no-repeat, repeat !important;
    background-size: 100%, 5px 5px !important;
    color: white !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-06 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    background-color: #b2d5de !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-06::before {
    margin-right: 0.5rem !important;
    border-left: 10px solid !important;
    content: '' !important;
}

.decorative-style-07 {
    padding: 0.2rem !important;
    margin-bottom: 0.2rem !important;
    background: linear-gradient(transparent 60%, #16b5dd 60%) !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-08 {
    padding: 1rem 0rem !important;
    margin-bottom: 0.2rem !important;
    border-bottom: 3px solid #b2d5de !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-09 {
    margin-bottom: 0.2rem !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-09 {
    border-radius: 80% 50% 60% 5%/80% 75% 15% 75% !important;
    background: linear-gradient(transparent 60%, #52FD4D 60%) !important;
}

.decorative-style-10 {
    padding: 1rem 0 !important;
    margin-bottom: 0.2rem !important;
    border-bottom: 3px dotted #b2d5de !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-11 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    color: #353535 !important;
    border: 4px double !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-12 {
    padding: 1rem 1rem 1rem 1.5rem !important;
    background-color: #b2d5de !important;
    background-image: repeating-linear-gradient(45deg, #353535 0 2px, transparent 2px 6px) !important;
    background-repeat: no-repeat !important;
    background-size: 1rem 100% !important;
    background-position: left !important;
    font-weight: bold !important;
    font-size: 26px !important;
    color: #353535 !important;
}

.decorative-style-13 {
    margin-bottom: 0.2rem !important;
    padding: 0.7rem !important;
    color: #333 !important;
    border-radius: 1rem !important;
    border: 5px solid !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-14 {
    margin-bottom: 0.2rem !important;
    padding: 0.7rem !important;
    color: #353535 !important;
    border: 10px double !important;
    border-radius: 1rem !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-15 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    color: #353535 !important;
    border: 6px dotted !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-16 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    border-left: 30px solid #b2d5de !important;
    background-color: #efefef !important;
    color: #212121 !important;
    font-weight: bold !important;
    font-size: 23px !important;
}

.decorative-style-16::before {
    position: absolute !important;
    right: 1px !important;
    bottom: 10px !important;
    width: 40% !important;
    height: 50% !important;
    box-shadow: 0 5px 25px #333 !important;
    transform: rotate(4deg) !important;
    z-index: -1 !important;
    content: '' !important;
}

.decorative-style-17 {
    position: relative !important;
    padding: 0.5rem 1rem !important;
    color: black !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-17::before,
.decorative-style-17::after {
    position: absolute !important;
    top: -3px !important;
    width: 10px !important;
    height: 100% !important;
    content: '' !important;
    border-top: solid 3px !important;
    border-bottom: solid 3px !important;
}

.decorative-style-17::before {
    border-left: solid 3px !important;
    left: 0 !important;
}

.decorative-style-17::after {
    border-right: solid 3px !important;
    right: 0 !important;
}

.decorative-style-18 {
    position: relative !important;
    padding: 1rem 1.5rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-18::before,
.decorative-style-18::after {
    position: absolute !important;
    width: 20px !important;
    height: 30px !important;
    content: '' !important;
}

.decorative-style-18::before {
    border-left: solid 3px !important;
    border-top: solid 3px !important;
    border-radius: 5px 0 0 0 !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-18::after {
    border-right: solid 3px !important;
    border-bottom: solid 3px !important;
    border-radius: 0 0 5px 0 !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-19 {
    position: relative !important;
    padding: 1.5rem 1rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-19::before,
.decorative-style-19::after {
    position: absolute !important;
    width: 95% !important;
    height: 20px !important;
    content: '' !important;
}

.decorative-style-19::before {
    border-left: solid 3px !important;
    border-top: solid 3px !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-19::after {
    border-right: solid 3px !important;
    border-bottom: solid 3px !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-20 {
    position: relative !important;
    padding: 1rem !important;
    font-size: 24px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-20::before,
.decorative-style-20::after {
    position: absolute !important;
    width: 15px !important;
    height: 40px !important;
    content: '' !important;
}

.decorative-style-20::before {
    border-left: solid 3px !important;
    border-top: solid 3px !important;
    top: 0 !important;
    left: 0 !important;
}

.decorative-style-20::after {
    border-right: solid 3px !important;
    border-bottom: solid 3px !important;
    bottom: 0 !important;
    right: 0 !important;
}

.decorative-style-21 {
    margin-bottom: 0.2rem !important;
    padding: 0.7rem !important;
    border-left: 7px solid #353535 !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-22 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    color: #353535 !important;
    border: 7px solid #353535 !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-23 {
    position: relative !important;
    padding: 1rem 1.5rem !important;
    font-size: 1.5rem !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-23::before,
.decorative-style-23::after {
    position: absolute !important;
    top: 0.8rem !important;
    height: 1.8rem !important;
    content: '' !important;
}

.decorative-style-23::before {
    border-left: solid 3px !important;
    left: 0 !important;
    transform: rotate(-30deg) !important;
}

.decorative-style-23::after {
    border-right: solid 3px !important;
    right: 0 !important;
    transform: rotate(30deg) !important;
}

.decorative-style-24 {
    position: relative !important;
    padding: 1rem 1rem 1rem 1.5rem !important;
    border: 3px solid #333 !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-24:before,
.decorative-style-24:after {
    position: absolute !important;
    top: 100% !important;
    left: 30px !important;
    height: 0 !important;
    width: 0 !important;
    border: solid transparent !important;
    content: "" !important;
}

.decorative-style-24:before {
    margin-left: -12px !important;
    border-color: transparent !important;
    border-top-color: #333 !important;
    border-width: 12px !important;
}

.decorative-style-24:after {
    margin-left: -8px !important;
    border-color: transparent !important;
    border-top-color: white !important;
    border-width: 8px !important;
}

.decorative-style-25 {
    position: relative !important;
    padding: 0.5rem 0 !important;
    margin-bottom: 0.2rem !important;
    border-top: 7px double #353535 !important;
    border-bottom: 7px double #353535 !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-26 {
    position: relative !important;
    padding: 0.7rem 0 !important;
    margin-bottom: 0.2rem !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-26::before {
    position: absolute !important;
    left: -5px !important;
    bottom: 5px !important;
    width: 100% !important;
    height: 15px !important;
    transform: skew(-45deg) !important;
    background-image: repeating-linear-gradient(90deg, transparent 0 5px, #dcddb3 5px 12px) !important;
    content: '' !important;
    /* z-index: -1 !important; */
}

.decorative-style-27 {
    padding-left: 20px !important;
    font-weight: bold !important;
    font-size: 26px !important;
    color: #353535 !important;
    background-image: repeating-linear-gradient(45deg, #353535 0, #353535 2px, transparent 2px, transparent 4px) !important;
    background-repeat: no-repeat !important;
    background-size: 15px 15px !important;
    background-position: center left !important;
}

.decorative-style-28 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    border-radius: 0.5rem !important;
    box-shadow: 0 0 5px #353535, 10px 10px 0 #efefef !important;
    background-color: white !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-29 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    color: #353535 !important;
    border-left: 15px double #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-30 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1.2rem !important;
    border-radius: 2em .6em 3em .4em/.3em 4em .6em 2em !important;
    border: 3px solid #353535 !important;
    color: #353535 !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-30::before {
    position: absolute !important;
    top: -0.5rem !important;
    left: -0.5rem !important;
    border: 5px solid #353535 !important;
    border-radius: 2em .6em 3em .4em/.3em 4em .6em 2em !important;
    content: '' !important;
}

.decorative-style-31 {
    position: relative !important;
    padding: 0 1rem !important;
    font-weight: bold !important;
    color: #353535 !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-31::before,
.decorative-style-31::after {
    position: absolute !important;
    top: 48% !important;
    width: 3rem !important;
    height: 0.1rem !important;
    background-color: #353535 !important;
    content: '' !important;
}

.decorative-style-31::before {
    left: -3rem !important;
}

.decorative-style-31::after {
    right: -3rem !important;
}

.decorative-style-32 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    border-radius: 0.2em !important;
    border: 2px solid #353535 !important;
    background-color: #fff !important;
    color: #353535 !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-32::before {
    position: absolute !important;
    inset: 0 !important;
    transform: rotate(2deg) !important;
    border-radius: 0.2em !important;
    border: 2px solid #353535 !important;
    content: '' !important;
    z-index: -1 !important;
}

.decorative-style-33 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    border: 2px solid #353535 !important;
    background: linear-gradient(135deg, #353535 0 10px, transparent 10px),
        linear-gradient(-45deg, #353535 0 10px, transparent 10px) !important;
    color: #353535 !important;
    font-size: 26px !important;
    font-weight: bold !important;
    text-align: center !important;
}

.decorative-style-34 {
    position: relative !important;
    padding: 0.8rem 0 !important;
    margin-bottom: 0.2rem !important;
    border-bottom: 5px solid !important;
    color: black !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-34::before,
.decorative-style-34::after {
    position: absolute !important;
    top: 100% !important;
    left: 50% !important;
    content: "" !important;
    height: 0 !important;
    width: 0 !important;
}

.decorative-style-34::before {
    border: 16px solid !important;
    border-color: transparent !important;
    border-top-color: black !important;
    margin-left: -16px !important;
}

.decorative-style-34::after {
    border: 10px solid !important;
    border-color: transparent !important;
    border-top-color: white !important;
    margin-left: -10px !important;
}

.decorative-style-35 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    color: #353535 !important;
    background-color: #ddcfb3 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-35::before {
    position: absolute !important;
    inset: -5px 5px 5px -5px !important;
    border: 3px solid #353535 !important;
    content: '' !important;
}

.decorative-style-36 {
    padding: 1rem !important;
    border-left: 5px dotted black !important;
    border-right: 5px dotted black !important;
    color: black !important;
    font-size: 26px !important;
    font-weight: bold !important;
    background-color: white !important;
    outline: 5px solid black !important;
    outline-offset: 5px !important;
    text-align: center !important;
}

.decorative-style-37 {
    padding: 0.5rem !important;
    border-top: 2px dashed black !important;
    border-bottom: 2px dashed black !important;
    background-color: white !important;
    font-size: 26px !important;
    font-weight: bold !important;
    outline: 3px solid black !important;
    outline-offset: 7px !important;
    text-align: center !important;
}

.decorative-style-38 {
    padding: 0.5rem 1rem 0.5rem 1.5rem !important;
    margin-bottom: 0.2rem !important;
    background-image: linear-gradient(to top, #b2d5de 10%, #66c5dd 100%) !important;
    background-repeat: no-repeat !important;
    background-size: 0.5rem 100% !important;
    font-weight: bold !important;
    font-size: 26px !important;
}

.decorative-style-39 {
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    background-color: #ddd5b3 !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    position: relative !important;
}

.decorative-style-39::before {
    content: '' !important;
    border-left: 2px dotted !important;
    margin-right: 0.5rem !important;
    position: absolute !important;
    top: 1rem !important;
    left: 0 !important;
    height: calc(100% - 2rem) !important;
}

.decorative-style-40 {
    position: relative !important;
    padding-left: 25px !important;
    font-weight: bold !important;
    font-size: 26px !important;
    white-space: nowrap !important;
}

.decorative-style-40::before {
    position: absolute !important;
    top: -10px !important;
    left: 0 !important;
    border-right: 5px solid #1ac2d8 !important;
    color: black !important;
    font-size: 10px !important;
    writing-mode: vertical-rl !important;
    text-transform: uppercase !important;
    content: 'heading' !important;
}

.decorative-style-41 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1.5rem 1rem 1rem !important;
    background-image:
        linear-gradient(rgba(232, 211, 154, 0.5) 0 100%),
        linear-gradient(#b2d5de 0 100%) !important;
    background-repeat: no-repeat !important;
    background-size: 60px 20px, 100% calc(100% - 0.5rem) !important;
    background-position: center top, bottom !important;
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-41::before,
.decorative-style-41::after {
    content: '' !important;
    position: absolute !important;
    bottom: 10px !important;
    z-index: -1 !important;
    height: 50% !important;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.5) !important;
}

.decorative-style-41::before {
    left: 0 !important;
    width: 20% !important;
    transform: rotate(-4deg) !important;
}

.decorative-style-41::after {
    right: 0 !important;
    width: 30% !important;
    transform: rotate(4deg) !important;
}

.decorative-style-42 {
    position: relative !important;
    margin-bottom: 0.2rem !important;
    padding: 1rem !important;
    background-color: #ddb3dd !important;
    color: #212121 !important;
    font-weight: bold !important;
    font-size: 24px !important;
    text-align: center !important;
}

.decorative-style-42::before,
.decorative-style-42::after {
    position: absolute !important;
    bottom: 30px !important;
    width: 30% !important;
    height: 5px !important;
    background: transparent !important;
    box-shadow: 0 25px 20px #555 !important;
    content: "" !important;
    z-index: -1 !important;
}

.decorative-style-42::before {
    transform: rotate(-8deg) !important;
    left: 5px !important;
}

.decorative-style-42::after {
    transform: rotate(8deg) !important;
    right: 5px !important;
}

.decorative-style-43 {
    --x-gradient: linear-gradient(90deg, #333 0 100%) !important;
    --y-gradient: linear-gradient(#333 0 15px, transparent 0 calc(100% - 15px), #333 calc(100% - 15px)) !important;
    position: relative !important;
    padding: 1rem !important;
    margin-bottom: 0.2rem !important;
    background-image:
        var(--x-gradient),
        var(--y-gradient),
        var(--x-gradient),
        var(--y-gradient) !important;
    background-repeat: no-repeat !important;
    background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100% !important;
    background-position: top, right, bottom, left !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-44 {
    position: relative !important;
    display: inline-block !important;
    padding: 1rem 1rem 3rem 1.5rem !important;
    border-radius: 30px !important;
    background-color: var(--accent-color, #d9edf7) !important;
    /* fallback */
    color: #353535 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    overflow: visible !important;
}

.decorative-style-44::before,
.decorative-style-44::after {
    position: absolute !important;
    border-radius: 50% !important;
    background-color: var(--accent-color, #d9edf7) !important;
    content: "" !important;
    z-index: 0 !important;
}

.decorative-style-44::before {
    top: 100% !important;
    left: 40px !important;
    height: 15px !important;
    width: 15px !important;
}

.decorative-style-44::after {
    top: 130% !important;
    left: 50px !important;
    height: 10px !important;
    width: 10px !important;
}

.decorative-style-45 {
    position: relative !important;
    padding: 1rem !important;
    border-radius: 5px !important;
    background: repeating-linear-gradient(45deg, #dddbb3 0 3px, #fff 3px 8px) !important;
    color: #333 !important;
    font-weight: bold !important;
    font-size: 26px !important;
    text-align: center !important;
}

.decorative-style-45::before {
    position: absolute !important;
    bottom: -16px !important;
    left: calc(50% - 6px) !important;
    transform: translateX(calc(-50% + 6px)) !important;
    height: 20px !important;
    width: 2px !important;
    background-color: #333 !important;
    content: "" !important;
}

.decorative-style-45::after {
    position: absolute !important;
    top: -6px !important;
    left: -6px !important;
    width: 100% !important;
    height: 100% !important;
    border: 2px solid #353535 !important;
    content: '' !important;
}