/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/*! modern-normalize | MIT License | https://github.com/sindresorhus/modern-normalize */
/*! KF Helpers */

/* Document
   ========================================================================== */

/**
 * Use a better box model (opinionated).
 */
*,
html {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
    outline: none;
}

/**
 * Use a more readable tab size (opinionated).
 */

:root {
    -moz-tab-size: 4;
    tab-size: 4;
}

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
    margin: 0;
}

/**
 * Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
 */

body {
    font-family: -apple-system,
    BlinkMacSystemFont,
    'Segoe UI',
    Roboto,
    Helvetica,
    Arial,
    sans-serif,
    'Apple Color Emoji',
    'Segoe UI Emoji',
    'Segoe UI Symbol';
}

/**
 * Render the `main` element consistently in IE.
 */

main {
    display: block;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct height in Firefox.
 */

hr {
    height: 0;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
    background-color: transparent;
    text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
    border-bottom: none; /* 1 */
    text-decoration: underline; /* 2 */
    text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
    font-weight: bolder;
}

/**
 * 1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp,
pre {
    font-family: SFMono-Regular, Consolas, 'Liberation Mono', Menlo, Courier, monospace; /* 1 */
    font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in all browsers.
 */

sub,
sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
    border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
    margin: 0; /* 2 */
    font-family: inherit; /* 1 */
    font-size: 100%; /* 1 */
    line-height: 1.15; /* 1 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
    overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
    text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type='button'],
[type='reset'],
[type='submit'] {
    -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
    outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
    display: table; /* 1 */
    box-sizing: border-box; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    color: inherit; /* 2 */
    white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome and Firefox.
 */

progress {
    vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
    overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */

[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
    height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type='search'] {
    outline-offset: -2px; /* 2 */
    -webkit-appearance: textfield; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type='search']::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
    font: inherit; /* 2 */
    -webkit-appearance: button; /* 1 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
    display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
    display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
    display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden],
.hidden {
    display: none;
}


/* Krapan Framework Helpers
   ========================================================================== */
a,
button,
input,
.tr {
    transition: all .3s ease-in-out;
}

/**
 * Text helpers
 */

/**
 * Alignment
 */
.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text-justify {
    text-align: justify
}

.text-transparent {
    color: transparent
}

/**
 * Colors
 */

.text-black {
    color: #000
}

.text-white {
    color: #fff
}

/**
 * Transform
 */
.upper,
.uppercase,
.text-uppercase,
.text--uppercase {
    text-transform: uppercase;
}

.lowercase,
.text-lowercase,
.text--lowercase {
    text-transform: lowercase;
}

.capitalize,
.text-capitalize,
.text--capitalize {
    text-transform: capitalize;
}

.normal-case {
    text-transform: none
}

/**
 * Decoration
 */
.underline {
    text-decoration: underline
}

.line-through {
    text-decoration: line-through
}

.no-underline {
    text-decoration: none
}

/**
 * Weight
 */

.font-weight--thin,
.font-weight--100 {
    font-weight: 100;
}

.font-weight--ultralight,
.font-weight--200 {
    font-weight: 200;
}

.font-weight--light,
.font-weight--300 {
    font-weight: 300;
}

.font-weight--normal,
.font-weight--regular,
.font-weight--400 {
    font-weight: 400;
}

.font-weight--medium,
.font-weight--500 {
    font-weight: 500;
}

b,
strong,
.bold,
.font-bold,
.font-weight--bold,
.font-weight--700 {
    font-weight: 700;
}

.font-weight--heavy,
.font-weight--800 {
    font-weight: 800;
}

.font-weight--black,
.font-weight--900 {
    font-weight: 900;
}

/**
 * Style
 */

em,
i,
.font-italic,
.font-style--italic {
    font-style: italic;
}

.not-italic {
    font-style: normal
}


/**
 * Whitespace
 */
.whitespace-normal {
    white-space: normal
}

.whitespace-no-wrap {
    white-space: nowrap
}

.whitespace-pre {
    white-space: pre
}

.whitespace-pre-line {
    white-space: pre-line
}

.whitespace-pre-wrap {
    white-space: pre-wrap
}

/**
 * Break
 */

.break-normal {
    word-break: normal;
    overflow-wrap: normal;
}

.break-words {
    overflow-wrap: break-word
}

.break-all {
    word-break: break-all
}

.truncate {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

/**
 * Headings
 */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-weight: 400;
}

/**
 * Position
 */

.abs,
.absolute,
.position--absolute {
    position: absolute;
}

.fixed,
.position--fixed {
    position: fixed;
}

.rel,
.relative,
.position--relative {
    position: relative;
}

.sticky,
.position--sticky {
    position: -webkit-sticky; /* Safari */
    position: sticky;
}

/**
 * Overflow
 */

.overflow--auto {
    overflow: auto;
}

.overflow--hidden {
    overflow: hidden;
}

.overflow--scroll {
    overflow: scroll;
}

.overflow--visible {
    overflow: visible;
}

/**
 * Display
 */

.tbl,
.display--table {
    display: table;
}

.display--block {
    display: block;
}

.display--inline-block {
    display: inline-block;
}

.display--inline {
    display: inline;
}

.flex,
.display--flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.display--inline-flex {
    display: inline-flex;
}

.display--grid {
    display: grid;
}

@supports not (display: grid) {
    .display--grid {
        display: table;
        width: 100%;
    }
}


/*
 * Absolute centering
 */

.cY {
    top: 50%;
    transform: translateY(-50%);
}

.cX {
    left: 50%;
    transform: translateX(-50%);
}

.cXY {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


/*
 * Border
 */

.border-solid {
    border-style: solid
}

.border-dashed {
    border-style: dashed
}

.border-dotted {
    border-style: dotted
}

.border-none {
    border-style: none
}

.border-0 {
    border-width: 0
}

.border {
    border-width: 1px
}

.border-2 {
    border-width: 2px
}

.border-4 {
    border-width: 4px
}

.border-8 {
    border-width: 8px
}

.border-t-0 {
    border-top-width: 0
}

.border-r-0 {
    border-right-width: 0
}

.border-b-0 {
    border-bottom-width: 0
}

.border-l-0 {
    border-left-width: 0
}

.border-t {
    border-top-width: 1px
}

.border-r {
    border-right-width: 1px
}

.border-b {
    border-bottom-width: 1px
}

.border-l {
    border-left-width: 1px
}

.border-t-2 {
    border-top-width: 2px
}

.border-r-2 {
    border-right-width: 2px
}

.border-b-2 {
    border-bottom-width: 2px
}

.border-l-2 {
    border-left-width: 2px
}

.border-t-4 {
    border-top-width: 4px
}

.border-r-4 {
    border-right-width: 4px
}

.border-b-4 {
    border-bottom-width: 4px
}

.border-l-4 {
    border-left-width: 4px
}

.border-t-8 {
    border-top-width: 8px
}

.border-r-8 {
    border-right-width: 8px
}

.border-b-8 {
    border-bottom-width: 8px
}

.border-l-8 {
    border-left-width: 8px
}


/*
 * Radius
 */

.radius-none {
    border-radius: 0;
}

.radius-4 {
    border-radius: 4px;
}

.radius-8 {
    border-radius: 8px;
}

.radius-10 {
    border-radius: 10px;
}

.radius-20 {
    border-radius: 20px;
}

.radius-full {
    border-radius: 9999px;
}


/*
 * Background
 * ------------------
 */
/*
 * Background position
 * ------------------
 */

.bg-bottom {
    background-position: bottom
}

.bg-center {
    background-position: center
}

.bg-left {
    background-position: left
}

.bg-left-bottom {
    background-position: left bottom
}

.bg-left-top {
    background-position: left top
}

.bg-right {
    background-position: right
}

.bg-right-bottom {
    background-position: right bottom
}

.bg-right-top {
    background-position: right top
}

.bg-top {
    background-position: top
}

/*
 * Background repeat
 * ------------------
 */
.bg-repeat {
    background-repeat: repeat
}

.bg-no-repeat {
    background-repeat: no-repeat
}

.bg-repeat-x {
    background-repeat: repeat-x
}

.bg-repeat-y {
    background-repeat: repeat-y
}

.bg-repeat-round {
    background-repeat: round
}

.bg-repeat-space {
    background-repeat: space
}

/*
 * Background size
 * ------------------
 */
.bg-auto {
    background-size: auto
}

.bg-cover {
    background-size: cover
}

.bg-contain {
    background-size: contain
}


/*
 * shadow
 */
.shadow-lg {
    box-shadow: 0 15px 50px rgba(0, 0, 0, .1);
}

.shadow-md {
    box-shadow: 0 10px 30px rgba(0, 0, 0, .1);
}

.shadow-sm {
    box-shadow: 0 5px 20px rgba(0, 0, 0, .1);
}

/**
 * Width and height
 */

.min-w-0 {
    min-width: 0
}

.min-w-1 {
    min-width: 1px
}

.min-w-full {
    min-width: 100%
}

.max-w-0 {
    max-width: 0
}

.max-w-full {
    max-width: 100%
}

.min-h-0 {
    min-height: 0
}

.min-h-1 {
    min-height: 1px
}

.min-h-full {
    min-height: 100%
}

.max-h-0 {
    max-height: 0
}

.max-h-full {
    max-height: 100%
}

.min-h-screen {
    min-height: 100vh
}

.w-full {
    width: 100%
}

.w-screen {
    width: 100vw
}

/**
 * z-index
 */

.z-0 {
    z-index: 0
}

.z-10 {
    z-index: 10
}

.z-20 {
    z-index: 20
}

.z-30 {
    z-index: 30
}

.z-40 {
    z-index: 40
}

.z-50 {
    z-index: 50
}

.z-auto {
    z-index: auto
}


/**
 * Object-fit
 */

.object-contain {
    -o-object-fit: contain;
    object-fit: contain
}

.object-cover {
    -o-object-fit: cover;
    object-fit: cover
}

.object-fill {
    -o-object-fit: fill;
    object-fit: fill
}

.object-none {
    -o-object-fit: none;
    object-fit: none
}

.object-scale-down {
    -o-object-fit: scale-down;
    object-fit: scale-down
}

.object-bottom {
    -o-object-position: bottom;
    object-position: bottom
}

.object-center {
    -o-object-position: center;
    object-position: center
}

.object-left {
    -o-object-position: left;
    object-position: left
}

.object-left-bottom {
    -o-object-position: left bottom;
    object-position: left bottom
}

.object-left-top {
    -o-object-position: left top;
    object-position: left top
}

.object-right {
    -o-object-position: right;
    object-position: right
}

.object-right-bottom {
    -o-object-position: right bottom;
    object-position: right bottom
}

.object-right-top {
    -o-object-position: right top;
    object-position: right top
}

.object-top {
    -o-object-position: top;
    object-position: top
}


/**
 * Pointer events
 */

.pointer-events-none {
    pointer-events: none
}

.pointer-events-auto {
    pointer-events: auto
}


/**
 * SVG currentColor
 */
.fill-current {
    fill: currentColor
}

.stroke-current {
    stroke: currentColor
}

p:empty {
    display: none;
}


/**
 * Code
 */

code, kbd, pre, samp {
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
}

pre {
    display: block;
    margin: 0 0 10px;
    padding: 9px;
    color: rgb(51, 51, 51);
    background-color: rgb(245, 245, 245);
    border: 1px solid rgb(204, 204, 204);
    border-radius: 4px;
    border-image: initial;
    font-size: 13px;
    line-height: 1.42857;
    word-wrap: break-word;
    word-break: break-all;
    overflow: auto;
}

/*
 * Grayscale
 */

.grayscale {
    filter: grayscale(1);
    -webkit-filter: grayscale(1);
    -moz-filter: grayscale(1);
    -o-filter: grayscale(1);
}

.grayscale:hover {
    filter: grayscale(0);
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -o-filter: grayscale(0);
}


/*
 * Vendor
 * b-lazy.js
 */

.b-lazy {
    max-width: 100%;
    opacity: 0;
    transition: opacity 500ms ease-in-out;
}

.b-lazy.b-error,
.b-lazy.b-loaded {
    opacity: 1;
}