@font-face {
    font-family: Aleo;
    src: url('../dynamic/fonts/aleo/aleo.woff2') format('woff2');
    font-weight: 100 900;
    font-display: swap;
    font-style: normal;
}
@font-face {
    font-family: Aleo;
    src: url('../dynamic/fonts/aleo/aleo-italic.woff2') format('woff2');
    font-weight: 100 900;
    font-display: swap;
    font-style: italic;
}
:root {
    --page-margin: 10vmin;
    --page-width: 1440px;
    --entry-width: 66ch;
    --navbar-height: 3rem;
    --border-radius: 3px;
    --cards-gap: 1rem;
    --featured-image-height: 40vmin;
    --animated-lines-time: 8s;
    --gallery-gap: 0.5rem;
    --magic-number: 4rem;
    --baseline: .25rem;
    --font-body: 'Aleo', serif;
    --font-heading: 'Aleo', serif;
    --font-logo: var(--font-heading);
    --font-menu: var(--font-body);
    --font-size: clamp(1rem, 1rem + (0.1499999999999999 * ((100vw - 20rem) / 80)), 1.15rem);
    --font-weight-normal: 400;
    --font-weight-bold: 700;
    --line-height: 1.6;
    --letter-spacing: 0em;
    --headings-weight: 597;
    --headings-transform: none;
    --headings-style: normal;
    --headings-letter-spacing: -0.03em;
    --headings-line-height: 1.2;
    --card-image-height: calc(12rem + 13vmin);
    --white: #FFFFFF;
    --black: #000000;
    --green: #00C899;
    --blue: #3DBFE2;
    --red: #EB7F9B;
    --yellow: #FFC76B;
    --dark: #283149;
    --dark-rgb: 40, 49, 73;
    --gray-1: #5f5f74;
    --gray-2: #9196A2;
    --light: #d4d2e1;
    --lighter: #DBDDE6;
    --color: #6f689b;
    --color-rgb: 111, 104, 155;
    --page-bg: linear-gradient(110deg, rgba(215,218,227,1) 0%, rgba(242,243,248,1) 100%);
    --text-color: #343435;
    --headings-color: #283149;
    --link-color: #6f689b;
    --link-color-hover: #283149;
    --inline-code: 255, 81, 81;
    --box-shadow: 0px 4.4px 4.5px -100px rgba(var(--dark-rgb), 0.174), 0px 12.3px 12.5px -100px rgba(var(--dark-rgb), 0.25), 0px 29.5px 30.1px -100px rgba(var(--dark-rgb), 0.326), 0px 98px 100px -100px rgba(var(--dark-rgb), 0.5);
    --box-shadow-hover: 0px 5.4px 4.5px -100px rgba(var(--dark-rgb), 0.174), 0px 15px 12.5px -100px rgba(var(--dark-rgb), 0.25), 0px 36.2px 30.1px -100px rgba(var(--dark-rgb), 0.326), 0px 120px 100px -100px rgba(var(--dark-rgb), 0.5);
}
@media all and (min-width:56.25em) {
    :root {
        --magic-number: 6rem;
    }
}
@media all and (min-width:80.0625em) and (min-height:50em) {
    :root {
        --cards-gap: 1.8rem;
        --magic-number: 8rem;
    }
}
@media (prefers-color-scheme:dark) {
    :root {
        --white: #2f323d;
        --black: #000000;
        --green: #20c997;
        --blue: #339af0;
        --red: #f06595;
        --yellow: #FFC76B;
        --dark: #f1f3f5;
        --dark-rgb: 40, 49, 73;
        --gray-1: #82879e;
        --gray-2: #54596d;
        --light: #303845;
        --lighter: #262831;
        --color: #9775fa;
        --color-rgb: 151, 117, 250;
        --page-bg: linear-gradient(110deg, #111216 0%, #20222a 100%);
        --text-color: #ced4da;
        --headings-color: #f1f3f5;
        --link-color: #b197fc;
        --link-color-hover: #f1f3f5;
        --inline-code: 240, 101, 149;
    }
}
*, :after, :before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
article, aside, footer, header, hgroup, main, nav, section {
    display: block;
}
li {
    list-style: none;
}
img {
    height: auto;
    max-width: 100%;
    vertical-align: top;
}
button, input, select, textarea {
    font: inherit;
}
address {
    font-style: normal;
}
::-moz-selection {
    background: var(--color);
    color: var(--white);
}
::selection {
    background: var(--color);
    color: var(--white);
}
::-webkit-input-placeholder {
    color: var(--text-color);
}
::-moz-placeholder {
    color: var(--text-color);
}
:-ms-input-placeholder {
    color: var(--text-color);
}
::-ms-input-placeholder {
    color: var(--text-color);
}
::placeholder {
    color: var(--text-color);
}
html {
    font-size: var(--font-size);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
}
html.no-scroll {
    overflow: hidden;
}
body {
    background: var(--page-bg);
    color: var(--text-color);
    font-family: var(--font-body);
    font-variation-settings: "wght" var(--font-weight-normal);
    letter-spacing: var(--letter-spacing);
    line-height: var(--line-height);
    min-height: 100vh;
    padding: 0;
    -ms-scroll-chaining: none;
    overscroll-behavior: none;
}
.site-wrapper {
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto;
    max-width: calc(var(--page-width) + (var(--page-margin) * 2));
    padding: 0 var(--page-margin);
}
a {
    color: var(--link-color);
    text-decoration: none;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
}
a:hover {
    color: var(--link-color-hover);
}
a:active {
    color: var(--link-color-hover);
}
a:focus {
    color: var(--link-color-hover);
    outline: 0;
}
.invert {
    color: var(--link-color-hover);
    text-decoration: none;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
}
.invert:hover {
    color: var(--link-color);
}
.invert:active {
    color: var(--link-color);
}
.invert:focus {
    color: var(--link-color);
    outline: 0;
}
dl, ol, p, pre, ul {
    margin-top: calc(var(--baseline) * 7);
}
blockquote, figure, hr, pre, table {
    margin-top: calc(var(--baseline) * 9);
    margin-bottom: calc(var(--baseline) * 9);
}
h1, h2, h3, h4, h5, h6 {
    color: var(--headings-color);
    font-family: var(--font-heading);
    font-variation-settings: "wght" var(--headings-weight);
    font-style: var(--headings-style);
    -ms-hyphens: manual;
    hyphens: manual;
    letter-spacing: var(--headings-letter-spacing);
    line-height: var(--headings-line-height);
    margin-top: calc(var(--baseline) * 11);
    text-transform: var(--headings-transform);
}
.h1, h1 {
    font-size: clamp(1.8020324707rem, 1.8020324707rem + .7637520432 * (100vw - 20rem) / 80, 2.565784514rem);
}
.h2, h2 {
    font-size: clamp(1.423828125rem, 1.423828125rem + .6034584045 * (100vw - 20rem) / 80, 2.0272865295rem);
}
.h3, h3 {
    font-size: clamp(1.265625rem, 1.265625rem + .5364074707 * (100vw - 20rem) / 80, 1.8020324707rem);
}
.h4, h4 {
    font-size: clamp(1.125rem, 1.125rem + .298828125 * (100vw - 20rem) / 80, 1.423828125rem);
}
.h5, h5 {
    font-size: clamp(1rem, 1rem + .265625 * (100vw - 20rem) / 80, 1.265625rem);
}
.h6, h6 {
    font-size: clamp(1rem, 1rem + .125 * (100vw - 20rem) / 80, 1.125rem);
}
h1+*, h2+*, h3+*, h4+*, h5+*, h6+* {
    margin-top: calc(var(--baseline) * 4);
}
b, strong {
    font-variation-settings: "wght" var(--font-weight-bold);
}
blockquote {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin-left: auto;
    margin-right: auto;
    max-width: 80%;
    padding: calc(var(--baseline) * 22) 0 calc(var(--baseline) * 12);
    position: relative;
    font-size: clamp(1.265625rem, 1.265625rem + .158203125 * (100vw - 20rem) / 80, 1.423828125rem);
}
@media all and (min-width:37.5em) {
    blockquote {
        max-width: 60%;
    }
}
blockquote::before {
    color: var(--light);
    content: "“";
    font: var(--font-weight-normal) 720%/0.9 Georgia, Times, Times New Roman, serif;
    left: -15%;
    position: absolute;
    top: calc(var(--baseline) * 11);
}
@media all and (min-width:37.5em) {
    blockquote::before {
        left: -20%;
    }
}
blockquote>:first-child {
    margin-top: 0;
}
ol, ul {
    margin-left: 3ch;
}
ol>li, ul>li {
    list-style: inherit;
    padding: 0 0 calc(var(--baseline) * 2) 1ch;
}
ol ol, ol ul, ul ol, ul ul {
    margin-bottom: calc(var(--baseline) * 2);
    margin-top: calc(var(--baseline) * 2);
}
dl dt {
    font-variation-settings: "wght" var(--font-weight-bold);
}
code {
    background-color: rgba(var(--inline-code),.1);
    border-radius: 3px;
    color: rgb(var(--inline-code));
    font-size: 1rem;
    font-family: var(--monospace);
    padding: .25rem .5rem;
}
pre {
    background-color: var(--lighter);
    border-radius: var(--border-radius);
    font-size: 1rem;
    max-height: var(--pre-height);
    padding: calc(var(--baseline) * 6);
    white-space: pre-wrap!important;
    word-wrap: break-word;
    width: 100%;
}
pre code {
    background-color: var(--lighter);
    color: inherit!important;
    font-size: inherit;
    padding: 0;
}
table {
    border: 1px solid var(--light);
    border-left: none;
    border-collapse: collapse;
    border-spacing: 0;
    vertical-align: top;
    text-align: left;
    width: 100%;
}
table th {
    font-variation-settings: "wght" var(--font-weight-bold);
    padding: calc(var(--baseline) * 2.5) calc(var(--baseline) * 4);
}
table td {
    border-top: 1px solid var(--light);
    border-left: 1px solid var(--light);
    padding: calc(var(--baseline) * 2.5) calc(var(--baseline) * 4);
}
figcaption {
    color: var(--gray-1);
    font-family: var(--font-body);
    font-variation-settings: "wght" var(--font-weight-normal);
    font-size: .7901234568rem;
    margin-top: calc(var(--baseline) * 4);
    text-align: center;
}
kbd {
    background: var(--dark);
    border-radius: 3px;
    color: var(--white);
    font-family: var(--monospace);
    font-size: .8888em;
    padding: .125rem .375rem;
}
sub, sup {
    font-size: 65%;
}
small {
    font-size: .7901234568rem;
}
.separator, hr {
    background: 0 0;
    border: none;
    height: auto;
    line-height: 1;
    max-width: none;
    text-align: center;
}
.separator::before, hr::before {
    content: "***";
    color: var(--dark);
    font-size: 1.265625rem;
    font-variation-settings: "wght" var(--font-weight-bold);
    letter-spacing: 1.265625rem;
    padding-left: 1.265625rem;
}
.separator--dot::before {
    content: "*";
    color: var(--dark);
    font-size: 1.265625rem;
    font-variation-settings: "wght" var(--font-weight-bold);
    letter-spacing: 1.265625rem;
    padding-left: 1.265625rem;
}
.separator--long-line {
    position: relative;
}
.separator--long-line::before {
    content: "";
    height: 1.265625rem;
}
.separator--long-line::after {
    border-top: 1px solid var(--light);
    content: "";
    height: 1px;
    position: absolute;
    width: 100%;
    top: 50%;
    left: 0;
}
.btn, [type=button], [type=submit], button {
    background: var(--color);
    -webkit-box-shadow: 0 8px 20px -3px rgba(var(--dark-rgb),.12);
    box-shadow: 0 8px 20px -3px rgba(var(--dark-rgb),.12);
    border: none;
    border-radius: var(--border-radius);
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font: var(--font-weight-normal) 0.8888888889rem var(--font-heading);
    padding: .75rem 1rem;
    vertical-align: top;
    text-align: center;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    will-change: transform;
    width: 100%;
}
@media all and (min-width:20em) {
    .btn, [type=button], [type=submit], button {
        width: auto;
    }
}
.btn:focus, .btn:hover, [type=button]:focus, [type=button]:hover, [type=submit]:focus, [type=submit]:hover, button:focus, button:hover {
    color: #fff;
    -webkit-box-shadow: 0 12px 20px 0 rgba(var(--dark-rgb),.12);
    box-shadow: 0 12px 20px 0 rgba(var(--dark-rgb),.12);
    text-decoration: none;
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px);
}
.btn:focus, [type=button]:focus, [type=submit]:focus, button:focus {
    outline: 0;
}
.btn:disabled, [type=button]:disabled, [type=submit]:disabled, button:disabled {
    background-color: var(--light);
    color: var(--dark);
    cursor: not-allowed;
}
.btn--white {
    background: var(--white);
    color: var(--gray-1);
}
.btn--white:focus, .btn--white:hover {
    color: var(--color);
}
@media all and (max-width:19.9375em) {
    .btn+.btn, .btn+[type=button], .btn+[type=submit], .btn+button, [type=button]+.btn, [type=button]+[type=button], [type=button]+[type=submit], [type=button]+button, [type=submit]+.btn, [type=submit]+[type=button], [type=submit]+[type=submit], [type=submit]+button, button+.btn, button+[type=button], button+[type=submit], button+button {
        margin-top: calc(var(--baseline) * 2);
    }
}
[type=button], [type=submit], button {
    -webkit-appearance: none;
    -moz-appearance: none;
}
::-webkit-input-placeholder {
    color: var(--gray-2);
    opacity: 1;
}
::-moz-placeholder {
    color: var(--gray-2);
    opacity: 1;
}
:-ms-input-placeholder {
    color: var(--gray-2);
    opacity: 1;
}
::-ms-input-placeholder {
    color: var(--gray-2);
    opacity: 1;
}
::placeholder {
    color: var(--gray-2);
    opacity: 1;
}
fieldset {
    border: 1px solid var(--light);
    border-radius: 4px;
    margin: 0 0 calc(var(--baseline) * 6);
    padding: 1.5rem;
}
fieldset>legend {
    margin-left: -1rem;
    padding: 0 1rem;
}
legend {
    font-variation-settings: "wght" var(--headings-weight);
}
label {
    font-variation-settings: "wght" var(--headings-weight);
    margin: 0 1rem calc(var(--baseline) * 3) 0;
}
option {
    font-variation-settings: "wght" var(--font-weight-normal);
}
[type=email], [type=number], [type=search], [type=tel], [type=text], [type=url], select, textarea {
    background-color: var(--white);
    border: none;
    border: 1px solid var(--light);
    border-radius: var(--border-radius);
    color: var(--text-color);
    font-size: 1rem;
    outline: 0;
    padding: .5rem .74rem;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
}
@media all and (min-width:37.5em) {
    [type=email], [type=number], [type=search], [type=tel], [type=text], [type=url], select, textarea {
        width: auto;
    }
}
[type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=text]:focus, [type=url]:focus, select:focus, textarea:focus {
    border-color: var(--color);
}
input[type=checkbox], input[type=radio] {
    color: var(--text-color);
    opacity: 0;
    position: absolute;
}
input[type=checkbox]+label, input[type=radio]+label {
    display: block;
    font-variation-settings: "wght" var(--font-weight-normal);
    position: relative;
    margin-left: -1px;
    cursor: pointer;
    padding: 0 0 0 calc(var(--baseline) * 9);
}
input[type=checkbox]+label::before, input[type=radio]+label::before {
    background-color: var(--white);
    border: 1px solid var(--light);
    border-radius: 2px;
    content: "";
    display: block;
    height: calc(var(--baseline) * 5);
    left: 0;
    line-height: calc(var(--baseline) * 5);
    margin-right: calc(var(--baseline) * 5);
    position: absolute;
    text-align: center;
    top: var(--baseline);
    width: calc(var(--baseline) * 5);
}
input[type=checkbox]:checked+label::before, input[type=radio]:checked+label::before {
    background-image: none!important;
    content: "";
    border-color: var(--color);
}
input[type=checkbox]:checked+label::after, input[type=radio]:checked+label::after {
    content: "";
    display: block;
    width: 6px;
    height: 9px;
    border: solid var(--color);
    border-width: 0 2px 2px 0;
    left: calc(var(--baseline) * 1.1);
    position: absolute;
    top: calc(var(--baseline) * 3);
    -webkit-transform: rotate(45deg) translate(0,-50%);
    transform: rotate(45deg) translate(0,-50%);
}
input[type=radio]+label::before {
    border-radius: 50%;
}
[type=file] {
    margin-bottom: calc(var(--baseline) * 6);
    width: 100%;
}
select {
    border-radius: var(--border-radius);
    max-width: 100%;
    width: auto;
    position: relative;
}
select:not([multiple]) {
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 6 6"><polygon points="3 6 3 6 0 0 6 0 3 6" fill="%238a8b8c"/></svg>') no-repeat 90% 50%;
    background-size: 8px;
    padding-right: calc(var(--baseline) * 12);
}
select[multiple] {
    border: 1px solid var(--light);
    padding: calc(var(--baseline) * 6);
    width: 100%;
}
select[multiple]:hover {
    border-color: var(--light);
}
select[multiple]:focus {
    border-color: var(--color);
}
select[multiple]:disabled {
    background-color: var(--light);
    cursor: not-allowed;
}
select[multiple]:disabled:hover {
    border-color: var(--light);
}
textarea {
    display: block;
    overflow: auto;
    resize: vertical;
    max-width: 100%;
}
.header {
    align-items: center;
    display: flex;
    height: var(--navbar-height);
    margin-top: 2rem;
    max-width: var(--page-width);
    position: relative;
}
@media all and (min-width:80.0625em) and (min-height:50em) {
    .header {
        margin-top: 3rem;
    }
}
.logo {
    order: 1;
    color: var(--dark)!important;
    font-family: var(--font-logo);
    font-variation-settings: "wght" var(--font-weight-bold);
    font-size: 1.423828125rem;
    line-height: 1;
    margin-right: auto;
    white-space: nowrap;
}
@media all and (max-width:74.9375em) {
    .logo {
        text-align: center;
    }
}
.logo>img {
    height: 4rem;
    -o-object-fit: contain;
    object-fit: contain;
    padding: calc(var(--baseline) * 2) 0;
    width: auto;
}
.search {
    margin-right: 1.5rem;
    order: 2;
    text-align: right;
    z-index: 99;
}
@media all and (min-width:56.25em) {
    .search {
        margin: 0 0 0 1.5rem;
        order: 3;
    }
}
.search__btn {
    border: none;
    background: 0 0!important;
    -webkit-box-shadow: none!important;
    box-shadow: none!important;
    margin-bottom: 0;
    padding-right: 0;
    padding-left: 0;
    width: auto;
}
.search__btn:focus, .search__btn:hover {
    outline: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.search__btn:focus>svg, .search__btn:hover>svg {
    fill: var(--color);
}
.search__btn>svg {
    display: inline-block;
    fill: var(--gray-1);
    -webkit-transition: all .24s ease;
    transition: all .24s ease;
    vertical-align: middle;
}
.search__input {
    background: 0 0;
    border: none;
    font-size: .8888888889rem;
    padding: 0 1rem 0 0;
    width: 100%;
}
@media all and (min-width:37.5em) {
    .search__input {
        min-width: 18rem;
    }
}
.search__input:focus {
    color: var(--dark);
}
.search__input:focus::-webkit-input-placeholder {
    color: var(--gray-2)!important;
    opacity: .66;
}
.search__input:focus::-moz-placeholder {
    color: var(--gray-2)!important;
    opacity: .66;
}
.search__input:focus:-ms-input-placeholder {
    color: var(--gray-2)!important;
    opacity: .66;
}
.search__input:focus::-ms-input-placeholder {
    color: var(--gray-2)!important;
    opacity: .66;
}
.search__input:focus::placeholder {
    color: var(--gray-2)!important;
    opacity: .66;
}
.search__form {
    align-items: center;
    display: flex;
    justify-content: space-between;
}
.search__button {
    -webkit-box-shadow: unset;
    box-shadow: unset;
    width: auto!important;
}
.search__button:focus, .search__button:hover {
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.search__overlay {
    background: var(--lighter);
    border-radius: var(--border-radius);
    border: 2px solid var(--light);
    left: 0;
    opacity: 0;
    padding: calc(var(--baseline) * 1.5) calc(var(--baseline) * 1.5) calc(var(--baseline) * 1.5) calc(var(--baseline) * 4);
    position: absolute;
    right: 0;
    top: 0;
    -webkit-transition: all .24s ease-out;
    transition: all .24s ease-out;
    visibility: hidden;
    z-index: 100;
}
@media all and (min-width:56.25em) {
    .search__overlay {
        background: var(--lighter);
        border: none;
        left: auto;
        top: var(--navbar-height);
        -webkit-transform: translateY(calc(var(--baseline) * -3));
        transform: translateY(calc(var(--baseline) * -3));
    }
}
.search__overlay.expanded {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    display: block;
    visibility: visible;
}
.search__form {
    align-items: center;
    display: flex;
    justify-content: space-between;
}
.navbar {
    order: 3;
    position: relative;
}
@media all and (min-width:56.25em) {
    .navbar {
        order: 2;
    }
}
.navbar .navbar__menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
}
@media all and (max-width:56.1875em) {
    .navbar .navbar__menu {
        display: none;
    }
}
.navbar .navbar__menu li {
    display: block;
    font-size: .8888888889rem;
    font-family: var(--font-menu);
    line-height: var(--line-height);
    padding: 0;
    position: relative;
    white-space: nowrap;
}
.navbar .navbar__menu li a, .navbar .navbar__menu li span[aria-haspopup=true] {
    color: var(--link-color-hover);
    display: block;
    padding: 0 .75rem;
    -webkit-transition: all .24s ease-out;
    transition: all .24s ease-out;
}
.navbar .navbar__menu li a:active, .navbar .navbar__menu li a:focus, .navbar .navbar__menu li a:hover, .navbar .navbar__menu li span[aria-haspopup=true]:active, .navbar .navbar__menu li span[aria-haspopup=true]:focus, .navbar .navbar__menu li span[aria-haspopup=true]:hover {
    color: var(--link-color);
}
.navbar .navbar__menu li span {
    color: var(--dark);
    cursor: default;
    display: block;
    padding: 0 .5rem;
}
.navbar .navbar__menu>li {
    line-height: var(--navbar-height);
}
.navbar .navbar__menu>li:hover>a, .navbar .navbar__menu>li:hover>span[aria-haspopup=true] {
    color: var(--link-color);
}
.navbar .navbar__menu>li:hover>[aria-haspopup=true] {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.navbar .navbar__menu>li:hover.has-submenu::after {
    content: "";
    border-color: var(--link-color);
}
.navbar .navbar__menu>li.has-submenu {
    position: relative;
}
.navbar .has-submenu:active>.navbar__submenu, .navbar .has-submenu:focus>.navbar__submenu, .navbar .has-submenu:hover>.navbar__submenu {
    left: 0;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    visibility: visible;
    margin-top: 0;
}
.navbar .has-submenu:active>.navbar__submenu.is-right-submenu, .navbar .has-submenu:focus>.navbar__submenu.is-right-submenu, .navbar .has-submenu:hover>.navbar__submenu.is-right-submenu {
    left: auto;
    right: 0;
    -webkit-transform-origin: right top;
    transform-origin: right top;
}
.navbar .has-submenu .has-submenu:active>.navbar__submenu, .navbar .has-submenu .has-submenu:focus>.navbar__submenu, .navbar .has-submenu .has-submenu:hover>.navbar__submenu {
    top: 0;
    margin-top: 0;
}
.navbar .has-submenu .has-submenu:active>.navbar__submenu.is-right-submenu, .navbar .has-submenu .has-submenu:focus>.navbar__submenu.is-right-submenu, .navbar .has-submenu .has-submenu:hover>.navbar__submenu.is-right-submenu {
    top: 0;
    margin-top: 0;
}
.navbar .navbar__submenu {
    background: var(--lighter);
    border-radius: var(--border-radius);
    left: -9999px;
    list-style-type: none;
    margin: 0 0 .75rem;
    padding: .75rem 1.5rem;
    position: absolute;
    text-align: left;
    visibility: hidden;
    white-space: nowrap;
    z-index: 1;
    opacity: 0;
    -webkit-transform: scale(.8);
    transform: scale(.8);
    -webkit-transform-origin: 0 top;
    transform-origin: 0 top;
    -webkit-transition: opacity .15s, -webkit-transform .3s cubic-bezier(.275, 1.375, .8, 1);
    transition: opacity .15s, -webkit-transform .3s cubic-bezier(.275, 1.375, .8, 1);
    transition: opacity .15s, transform .3s cubic-bezier(.275, 1.375, .8, 1);
    transition: opacity .15s, transform .3s cubic-bezier(.275, 1.375, .8, 1), -webkit-transform .3s cubic-bezier(.275, 1.375, .8, 1);
    will-change: transform;
}
.navbar .navbar__submenu__submenu {
    z-index: 2;
}
.navbar .navbar__submenu li {
    line-height: 1.5;
    font-variation-settings: "wght" var(--font-weight-normal);
    padding: 0 .25rem;
    text-transform: none;
}
.navbar .navbar__submenu li:last-child {
    border: none;
}
.navbar .navbar__submenu li a, .navbar .navbar__submenu li span[aria-haspopup=true] {
    padding: .5rem 0;
    -webkit-transition: all .24s ease;
    transition: all .24s ease;
}
.navbar .navbar__submenu li span {
    padding: .5rem 1.25rem;
}
.navbar .navbar__toggle {
    background: var(--light);
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: var(--link-color);
    cursor: pointer;
    display: block;
    font-variation-settings: "wght" var(--font-weight-bold);
    line-height: 1;
    overflow: visible;
    text-transform: none;
    z-index: 2004;
}
@media all and (min-width:56.25em) {
    .navbar .navbar__toggle {
        display: none;
    }
}
.navbar .navbar__toggle:focus, .navbar .navbar__toggle:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    outline: 0;
    -webkit-transform: none;
    transform: none;
}
.navbar_mobile_sidebar {
    background: var(--page-bg);
    -webkit-box-shadow: 0 0 5px rgba(0,0,0,.25);
    box-shadow: 0 0 5px rgba(0,0,0,.25);
    height: 100vh;
    left: 0;
    max-width: 400px;
    overflow: auto;
    position: fixed;
    top: 0;
    -webkit-transition: all .3s cubic-bezier(0, 0, .3, 1);
    transition: all .3s cubic-bezier(0, 0, .3, 1);
    width: 80%;
    z-index: 1000;
}
.navbar_mobile_sidebar.is-hidden {
    left: -400px;
}
.navbar_mobile_sidebar .navbar__menu {
    margin: 24px;
}
.navbar_mobile_sidebar .navbar__menu li {
    font-family: var(--font-heading);
    font-size: 16px;
    list-style: none;
    line-height: 1.3;
    margin: 0;
    padding: 0;
}
.navbar_mobile_sidebar .navbar__menu li .is-separator, .navbar_mobile_sidebar .navbar__menu li a {
    color: var(--dark);
    display: block;
    padding: 10px 20px 10px 0;
    position: relative;
}
.navbar_mobile_sidebar .navbar__menu li .is-separator:active, .navbar_mobile_sidebar .navbar__menu li .is-separator:focus, .navbar_mobile_sidebar .navbar__menu li .is-separator:hover, .navbar_mobile_sidebar .navbar__menu li a:active, .navbar_mobile_sidebar .navbar__menu li a:focus, .navbar_mobile_sidebar .navbar__menu li a:hover {
    color: var(--color);
}
.navbar_mobile_sidebar .navbar__menu li .is-separator[aria-haspopup=true]::after, .navbar_mobile_sidebar .navbar__menu li a[aria-haspopup=true]::after {
    border-right: 1px solid var(--color);
    border-top: 1px solid var(--color);
    content: "";
    height: 6px;
    position: absolute;
    right: 6%;
    top: 47%;
    -webkit-transform: translate(0,-47%) rotate(135deg);
    transform: translate(0,-47%) rotate(135deg);
    width: 6px;
}
.navbar_mobile_sidebar .navbar__submenu {
    margin: 0 0 0 24px;
    padding: 0;
    visibility: hidden;
}
.navbar_mobile_sidebar .navbar__submenu[aria-hidden=false] {
    visibility: visible;
}
.navbar_mobile_sidebar .navbar__submenu_wrapper {
    height: 0;
    opacity: 0;
    overflow: hidden;
    -webkit-transition: all .3s cubic-bezier(.275, 1.375, .8, 1);
    transition: all .3s cubic-bezier(.275, 1.375, .8, 1);
}
.navbar_mobile_sidebar .navbar__submenu_wrapper.is-active {
    height: auto;
    opacity: 1;
}
.navbar_mobile_sidebar__overlay {
    background: rgba(0,0,0,.6);
    height: 100%;
    opacity: 1;
    pointer-events: auto;
    position: fixed;
    top: 0;
    -webkit-transition: all .3s cubic-bezier(0, 0, .3, 1);
    transition: all .3s cubic-bezier(0, 0, .3, 1);
    width: 100%;
    z-index: 1000;
}
.navbar_mobile_sidebar__overlay.is-hidden {
    opacity: 0;
    pointer-events: none;
}
.container {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    margin-left: auto;
    margin-right: auto;
    max-width: var(--page-width);
    overflow: hidden;
    padding: 0 var(--page-margin);
}
.container--narrow {
    max-width: var(--entry-width);
}
.main {
    margin-top: var(--magic-number);
}
.hero {
    color: var(--gray-1);
    font-size: clamp(1rem, 1rem + .125 * (100vw - 20rem) / 80, 1.125rem);
    padding-bottom: var(--magic-number);
    max-width: var(--entry-width);
}
.hero h1 {
    margin-top: 0;
}
.hero h1 sup {
    font-variation-settings: "wght" var(--font-weight-normal);
    font-size: 1.125rem;
    vertical-align: top;
}
.hero p {
    margin-top: calc(var(--baseline) * 2);
}
.hero--centered {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.hero--centered p {
    margin: calc(var(--baseline) * 4) auto 0;
}
.l-options {
    align-items: flex-start;
    display: flex;
    gap: 2rem;
    justify-content: space-between;
    margin-bottom: calc(var(--baseline) * 7);
}
@media all and (min-width:80.0625em) and (min-height:50em) {
    .l-options {
        margin-bottom: calc(var(--baseline) * 10);
    }
}
@media all and (max-width:37.4375em) {
    .l-options.nomobile {
        display: none;
    }
}
.filter {
    margin: 0 -.5rem;
    line-height: 1.4;
}
.filter__item {
    background: 0 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    font-family: var(--font-body);
    font-variation-settings: "wght" var(--font-weight-normal);
    font-size: .8888888889rem;
    margin: 0;
    padding: 0 .5rem;
    text-transform: none;
}
.filter__item:focus, .filter__item:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: none;
    transform: none;
}
.filter__item.is-active {
    color: var(--link-color);
    -webkit-text-stroke: 0.5px var(--link-color);
    pointer-events: none;
}
.switchers {
    align-items: center;
    display: flex;
    margin-left: auto;
}
@media all and (max-width:37.4375em) {
    .switchers {
        display: none;
    }
}
.switchers__item {
    background: 0 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: var(--gray-2);
    padding: 0 .5rem;
}
.switchers__item:focus, .switchers__item:hover {
    background: inherit;
    -webkit-box-shadow: inherit;
    box-shadow: inherit;
    color: var(--color);
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.switchers__item.is-active {
    color: var(--gray-1);
    cursor: default;
}
.l-grid {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    display: flex;
    flex-wrap: wrap;
    margin: calc(-1 * var(--cards-gap)) calc(-.5 * var(--cards-gap));
    position: relative;
}
.l-grid .c-card {
    width: 100%;
}
.l-grid .c-card__wrapper {
    margin: var(--cards-gap) calc(var(--cards-gap)/ 2);
}
@media all and (min-width:37.5em) {
    .l-grid--2 .c-card {
        width: 49.999%;
    }
}
@media all and (min-width:37.5em) {
    .l-grid--3 .c-card {
        width: 49.999%;
    }
}
@media all and (min-width:75em) {
    .l-grid--3 .c-card {
        width: 33.333%;
    }
}
@media all and (min-width:37.5em) {
    .l-grid--4 .c-card {
        width: 49.999%;
    }
}
@media all and (min-width:75em) {
    .l-grid--4 .c-card {
        width: 33.333%;
    }
}
@media all and (min-width:85em) {
    .l-grid--4 .c-card {
        width: 24.999%;
    }
}
@media all and (min-width:37.5em) {
    .l-grid--1 .c-card {
        width: 100%;
    }
}
.c-card {
    list-style: none;
    padding: 0;
}
@media all and (min-width:37.5em) {
    .c-card--rows .c-card__wrapper {
        display: flex;
        justify-content: space-between;
    }
    .c-card--rows .c-card__image {
        flex: 0 1 70%;
    }
    .c-card--rows .c-card__content {
        flex: 0 1 20%;
    }
}
.c-card__wrapper {
    height: 100%;
    position: relative;
}
.c-card__wrapper:hover .c-card__image {
    -webkit-box-shadow: var(--box-shadow-hover);
    box-shadow: var(--box-shadow-hover);
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
}
.c-card__image {
    background-color: var(--lighter);
    border-radius: var(--border-radius);
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    display: block;
    height: var(--card-image-height);
    margin: 0;
    overflow: hidden;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
    will-change: transform;
    width: 100%;
}
.c-card__image>img {
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    height: inherit;
    display: block;
    width: inherit;
}
.c-card__image--up>img {
    -o-object-position: top;
    object-position: top;
}
.c-card__image--down>img {
    -o-object-position: bottom;
    object-position: bottom;
}
.c-card__content {
    padding: calc(var(--baseline) * 7) 0;
}
.c-card__title {
    font-size: 1rem;
    margin: 0;
}
.c-card__title>a:after {
    background: 0 0;
    content: "";
    cursor: pointer;
    left: 0;
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}
.c-card__text {
    color: var(--gray-1);
    font-size: .8888888889rem;
    line-height: 1.4;
    margin: calc(var(--baseline) * 3) 0;
}
.c-card__meta {
    color: var(--gray-1);
    display: flex;
    font-size: .7901234568rem;
    margin-top: 0;
    position: relative;
    z-index: 1;
}
.c-card__meta a {
    color: var(--gray-1);
    text-decoration: none;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
}
.c-card__meta a:hover {
    color: var(--link-color);
}
.c-card__meta a:active {
    color: var(--link-color);
}
.c-card__meta a:focus {
    color: var(--link-color);
    outline: 0;
}
.c-card__meta a+a {
    margin-left: var(--baseline);
}
.content {
    position: relative;
}
.content__inner {
    max-width: var(--entry-width);
    margin: auto;
    max-width: var(--entry-width);
}
.content__header {
    padding-bottom: calc(var(--magic-number)/ 2);
}
.content__header+.content__featured-image {
    margin-top: calc(var(--magic-number)/ 3.5);
}
.content__featured-image {
    margin-top: 0;
    margin-bottom: calc(var(--magic-number)/ 1.5);
}
.content__featured-image__inner {
    background-color: var(--lighter);
    border-radius: var(--border-radius);
    -webkit-box-shadow: var(--box-shadow);
    box-shadow: var(--box-shadow);
    height: var(--featured-image-height);
}
.content__featured-image img {
    display: block;
    height: inherit;
    -o-object-fit: cover;
    object-fit: cover;
    max-width: var(--page-width);
    width: 100%;
}
.content__featured-image--full {
    margin-left: calc(-50vw + 50% + var(--page-margin));
    margin-right: calc(-50vw + 50% + var(--page-margin));
    padding: 0;
    text-align: center;
}
.content__featured-image--full img {
    max-width: 100%;
}
.content__title {
    margin-top: 0;
}
.content__title__company, .content__title__type {
    display: block;
}
.content__title__type {
    color: var(--gray-1);
    font-size: .45em;
    font-variation-settings: "wght" var(--font-weight-normal);
    letter-spacing: 0;
    line-height: 1.3;
    margin-top: .7rem;
}
.content__meta {
    color: var(--gray-1);
    font-size: .8888888889rem;
    margin-top: calc(var(--baseline) * 5);
}
@media all and (min-width:48em) {
    .content__meta__left, .content__meta__right {
        display: inline-block;
    }
}
@media all and (min-width:31.25em) {
    .content__meta__left *+::before, .content__meta__right *+::before {
        content: "•";
        padding-right: .5rem;
    }
}
@media all and (min-width:48em) {
    .content__meta__left+.content__meta__left::before, .content__meta__left+.content__meta__right::before, .content__meta__right+.content__meta__left::before, .content__meta__right+.content__meta__right::before {
        content: "•";
        padding-right: .5rem;
    }
}
.content__entry>:first-child {
    margin-top: 0;
}
.content__entry a:not(.btn):not([type=button]):not([type=submit]):not(button):hover {
    text-decoration: underline;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip: ink;
}
.content__author {
    font-variation-settings: "wght" var(--font-weight-bold);
    margin-right: .75rem;
}
.content__author>img {
    display: none;
}
@media all and (min-width:48em) {
    .content__author>img {
        border-radius: 50%;
        display: inline-block;
        height: calc(var(--baseline) * 6);
        margin-right: var(--baseline);
        width: calc(var(--baseline) * 6);
    }
}
.content__date, .content__updated {
    display: inline-block;
    margin: 0 .5rem 0 0;
}
.content__tag-share {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
}
.content__tag {
    font-size: .8888888889rem;
}
.content__tag__title {
    font-size: inherit;
    display: inline-block;
    margin: 0 .5rem 0 0;
}
.content__tag__list {
    display: inline;
    margin: 0;
}
.content__tag__list li {
    color: var(--gray-1);
    display: inline-block;
    list-style: none;
    margin-right: .5rem;
    padding: 0;
}
.content__share {
    flex: 0 0 auto;
    font-size: 1rem;
    margin-left: -1rem;
    position: relative;
}
.content__share>a {
    display: inline-block;
    margin: 0 0 0 1rem;
}
.content__share>a:hover {
    text-decoration: none;
}
.content__share>a svg {
    fill: var(--gray-1);
    height: 1rem;
    pointer-events: none;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
    width: 1rem;
}
.content__footer {
    margin-top: calc(var(--magic-number)/ 2);
}
.content__related {
    margin-top: var(--magic-number);
    margin-left: 12rem;
    margin-right: 12rem;
}
.content__related__title {
    font-size: 1rem;
    border-top: 1px solid var(--light);
    padding: 2rem 0 calc(2rem + 2vmin);
}
.post__image--left {
    float: left;
    margin-bottom: calc(var(--baseline) * 6);
    margin-right: calc(var(--baseline) * 6);
    max-width: 50%;
}
.post__image--right {
    float: right;
    margin-bottom: calc(var(--baseline) * 6);
    margin-left: calc(var(--baseline) * 6);
    max-width: 50%;
}
.post__image--center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
.post__image--wide {
    display: block;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding: 0 var(--page-margin);
    text-align: center;
}
.post__image--wide a, .post__image--wide img {
    display: block;
    height: auto;
    margin: auto;
    max-width: var(--page-width);
    width: 100%;
}
.post__image--full {
    display: block;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding: 0 var(--page-margin);
    text-align: center;
}
.post__image--full a, .post__image--full img {
    display: block;
    height: auto;
    width: 100%;
}
.post__image figcaption a {
    color: var(--gray-2);
    text-decoration: none;
    -webkit-transition: all .12s linear;
    transition: all .12s linear;
}
.post__image figcaption a:hover {
    color: var(--dark);
}
.post__image figcaption a:active {
    color: var(--dark);
}
.post__image figcaption a:focus {
    color: var(--dark);
    outline: 0;
}
.post__iframe, .post__video {
    display: block;
    margin-top: calc(var(--baseline) * 9);
    margin-bottom: calc(var(--baseline) * 9);
    overflow: hidden;
    padding: 0;
    position: relative;
    width: 100%;
}
.post__iframe::before, .post__video::before {
    display: block;
    content: "";
    padding-top: var(--embed-aspect-ratio);
}
.post__iframe iframe[height*="%"][width*="%"], .post__iframe iframe[height]:not([height*="%"])[width]:not([width*="%"]), .post__iframe video[height*="%"][width*="%"], .post__iframe video[height]:not([height*="%"])[width]:not([width*="%"]), .post__video iframe[height*="%"][width*="%"], .post__video iframe[height]:not([height*="%"])[width]:not([width*="%"]), .post__video video[height*="%"][width*="%"], .post__video video[height]:not([height*="%"])[width]:not([width*="%"]) {
    border: none;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}
.post__iframe:has(iframe:not([height]))::before, .post__iframe:has(iframe:not([width]))::before, .post__iframe:has(video:not([height]))::before, .post__iframe:has(video:not([width]))::before, .post__video:has(iframe:not([height]))::before, .post__video:has(iframe:not([width]))::before, .post__video:has(video:not([height]))::before, .post__video:has(video:not([width]))::before {
    display: none;
}
.post__toc {
    border: 2px solid var(--light);
    border-radius: var(--border-radius);
    font-size: .8888888889rem;
    color: var(--color);
    margin-bottom: calc(var(--baseline) * 9);
    padding: 2rem;
}
.post__toc h3 {
    color: var(--link-color);
    font-size: 1rem;
    margin: 0 0 calc(var(--baseline) * 3);
}
.post__toc ul {
    counter-reset: item;
    list-style: decimal;
    margin: 0;
    padding: 0 0 0 2ch;
}
.post__toc ul li {
    counter-increment: item;
    padding: 0 0 0 calc(var(--baseline) * 2);
}
.post__toc ul ul {
    margin-top: 0;
    padding: 0 0 0 calc(var(--baseline) * 2);
}
.post__toc ul ul li {
    display: block;
}
.post__toc ul ul li:before {
    content: counters(item, ".") ". ";
    margin-left: -1rem;
    margin-right: var(--baseline);
}
.banner--before-content {
    margin-bottom: var(--magic-number);
}
.banner--after-content {
    margin-top: var(--magic-number);
}
.page--author__avatar {
    -webkit-box-shadow: 1px 16px 18px -6px rgba(0,0,0,.2);
    box-shadow: 1px 16px 18px -6px rgba(0,0,0,.2);
    border-radius: 50%;
    height: 5rem;
    margin: 0 0 calc(var(--baseline) * 6);
    width: 5rem;
}
@media all and (min-width:37.5em) {
    .page--author__avatar {
        height: 6rem;
        width: 6rem;
    }
}
.page--author__details {
    align-items: center;
    border-top: 1px solid var(--light);
    font-size: .8888888889rem;
    display: inline-flex;
    margin-top: calc(var(--baseline) * 6);
    padding: calc(var(--baseline) * 4) 3rem 0;
}
@media all and (max-width:37.4375em) {
    .page--author__details {
        flex-wrap: wrap;
        justify-content: center;
        padding: calc(var(--baseline) * 4) 0 0;
    }
}
.page--author__details span {
    flex-basis: 100%;
}
@media all and (min-width:37.5em) {
    .page--author__details span {
        flex-basis: auto;
        margin-right: 2rem;
    }
}
.page--author__details a {
    margin-left: .3rem;
}
.page--error__title {
    font-size: clamp(6.583250172rem, 6.583250172rem + 8.4311510216 * (100vw - 20rem) / 80, 15.0144011936rem);
}
.page--error__btn {
    margin-top: calc(var(--baseline) * 7)!important;
}
.page--search form {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
}
@media all and (max-width:37.4375em) {
    .page--search input {
        margin-bottom: calc(var(--baseline) * 2);
    }
}
@media all and (min-width:20em) {
    .page--search input {
        flex: 1 0 auto;
        margin-right: calc(var(--baseline) * 2);
    }
}
@media all and (max-width:37.4375em) {
    .page--search button {
        width: 100%;
    }
}
.subpages {
    border-top: 1px solid var(--light);
    margin-top: var(--magic-number);
}
.subpages__list {
    list-style: initial;
    margin-left: 2ch;
}
.subpages__list ul {
    list-style: initial;
    margin: 0 0 0 2ch;
}
.subpages__list li {
    padding: 0 0 0 1ch;
}
.align-left {
    text-align: left;
}
.align-right {
    text-align: right;
}
.align-center {
    text-align: center;
}
.align-justify {
    text-align: justify;
}
.msg {
    background-color: var(--lighter);
    border-left: 4px solid transparent;
    border-radius: var(--border-radius);
    font-size: .8888888889rem;
    padding: calc(var(--baseline) * 6) calc(var(--baseline) * 8);
}
.msg--highlight {
    border-color: var(--yellow);
}
.msg--info {
    border-color: var(--blue);
}
.msg--success {
    border-color: var(--green);
}
.msg--warning {
    border-color: var(--red);
}
.dropcap:first-letter {
    float: left;
    font-family: var(--font-heading);
    font-size: 4.1098906729rem;
    line-height: .7;
    margin-right: calc(var(--baseline) * 2);
    padding: calc(var(--baseline) * 2) calc(var(--baseline) * 2) calc(var(--baseline) * 2) 0;
}
.pec-wrapper {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}
.pec-overlay {
    align-items: center;
    background-color: var(--light);
    font-size: 14px;
    display: none;
    height: inherit;
    justify-content: center;
    line-height: 1.4;
    padding: 1rem;
    position: relative;
    text-align: center;
}
@media all and (min-width:37.5em) {
    .pec-overlay {
        font-size: 16px;
        line-height: var(--line-height);
        padding: 1rem 2rem;
    }
}
.pec-overlay.is-active {
    display: flex;
}
.pec-overlay-inner p {
    margin: 0 0 1rem;
}
.is-img-loading {
    overflow: hidden;
    position: relative;
}
.is-img-loading::after, .is-img-loading::before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 2px;
    top: -100%;
    left: 20%;
    background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),color-stop(75%,rgba(var(--color-rgb),.15)),to(rgba(0,0,0,0)));
    background: linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(var(--color-rgb),.15) 75%,rgba(0,0,0,0) 100%);
    -webkit-animation: preloader 2s cubic-bezier(.4,.26,0,.97) 0s infinite;
    animation: preloader 2s cubic-bezier(.4,.26,0,.97) 0s infinite;
}
.is-img-loading::before {
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
    left: 80%;
}
@-webkit-keyframes preloader {
    0% {
        top: -100%;
    }
    100% {
        top: 100%;
    }
}
@keyframes preloader {
    0% {
        top: -100%;
    }
    100% {
        top: 100%;
    }
}
@media all and (min-width:56.25em) {
    .lines::after, .lines::before {
        content: "";
        display: block;
        position: absolute;
        height: 50vh;
        width: 2px;
        top: -50%;
        left: 20vw;
        background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),color-stop(75%,rgba(var(--color-rgb),.15)),color-stop(0,rgba(0,0,0,0)));
        background: linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(var(--color-rgb),.15) 75%,rgba(0,0,0,0) 0);
        -webkit-animation: run var(--animated-lines-time) cubic-bezier(.4,.26,0,.97) 0s infinite forwards;
        animation: run var(--animated-lines-time) cubic-bezier(.4,.26,0,.97) 0s infinite forwards;
        z-index: -1;
    }
}
.lines::before {
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
    left: 40vw;
}
@-webkit-keyframes run {
    0% {
        top: -50%;
    }
    100% {
        top: 100%;
    }
}
@keyframes run {
    0% {
        top: -50%;
    }
    100% {
        top: 100%;
    }
}
.lines--right::after {
    -webkit-animation-delay: 4s;
    animation-delay: 4s;
    left: 60vw;
}
.lines--right::before {
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
    left: 80vw;
}
.facebook:hover svg {
    fill: #0866FF;
}
.twitter:hover svg {
    fill: #000000;
}
.mix:hover svg {
    fill: #fd8235;
}
.instagram:hover svg {
    fill: #000000;
}
.vimeo:hover svg {
    fill: #1ab7ea;
}
.pinterest:hover svg {
    fill: #bd081c;
}
.youtube:hover svg {
    fill: #cd201f;
}
.linkedin:hover svg {
    fill: #007bb6;
}
.buffer:hover svg {
    fill: #333333;
}
.whatsapp:hover svg {
    fill: #25D366;
}
.pocket:hover svg {
    fill: #ED4255;
}
.pagination {
    clear: both;
    display: flex;
    flex-wrap: wrap;
    font-size: .8888888889rem;
    justify-content: center;
    margin-top: calc(2rem + 2vmin);
}
.pagination a {
    border: 2px solid transparent;
    border-radius: var(--border-radius);
    display: inline-block;
    color: var(--gray-1);
    margin: 0 .25rem;
    padding: .5rem 1rem;
    text-align: center;
}
.pagination a:hover {
    background-color: var(--lighter);
    color: var(--gray-1);
}
.pagination-active {
    background-color: var(--lighter);
    color: var(--color)!important;
    font-variation-settings: "wght" var(--font-weight-bold);
    pointer-events: none;
}
.pagination-inactive {
    border: 2px solid transparent;
    color: var(--gray-2)!important;
    margin: 0 .25rem;
    pointer-events: none;
    padding: .5rem 1rem;
    opacity: .6;
}
.pagination-first, .pagination-last {
    display: none;
}
@media all and (min-width:56.25em) {
    .pagination-first, .pagination-last {
        display: block;
    }
}
.view-more {
    display: flex;
    margin: .5rem auto 0;
}
.newsletter {
    background-color: var(--lighter);
    margin: var(--magic-number) 0;
    padding: calc(var(--magic-number)/ 1.5) var(--page-margin);
}
.newsletter__title {
    margin-top: 0;
}
.newsletter__desc {
    color: var(--gray-1);
    font-size: .8888888889rem;
}
@media all and (min-width:56.25em) {
    .newsletter__desc {
        max-width: 85%;
    }
}
.newsletter form {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 1rem;
    margin-top: calc(var(--baseline) * 5);
}
@media all and (min-width:37.5em) {
    .newsletter form {
        flex-direction: row;
    }
}
.newsletter input[type=email], .newsletter input[type=text] {
    flex: 1;
}
@media all and (max-width:37.4375em) {
    .newsletter input[type=submit] {
        width: 100%;
    }
}
.footer {
    border-top: 1px solid var(--light);
    color: var(--gray-1);
    font-size: .7901234568rem;
    margin-top: var(--magic-number);
    margin-bottom: calc(var(--magic-number)/ 2);
    padding-top: calc(var(--magic-number)/ 3);
}
@media all and (max-width:56.1875em) {
    .footer {
        padding-top: calc(var(--magic-number)/ 2);
        text-align: center;
    }
}
@media all and (min-width:56.25em) {
    .footer {
        display: flex;
        justify-content: space-between;
    }
}
.footer h3 {
    margin: 0 0 calc(var(--baseline) * 5);
}
.footer__copy {
    font-size: .7901234568rem;
}
.footer__nav {
    font-size: .8888888889rem;
    margin: 0 0 calc(var(--baseline) * 2);
}
@media all and (min-width:56.25em) {
    .footer__nav {
        font-size: .7901234568rem;
        margin: 0;
    }
}
.footer__nav li {
    display: inline-block;
    margin: 0 .4rem 0 0;
    padding: 0;
    position: relative;
}
.footer__nav li+li::before {
    content: "•";
    padding-right: .4rem;
}
@media all and (max-width:56.1875em) {
    .footer__left+.footer__right {
        margin-top: calc(var(--baseline) * 4);
    }
}
@media all and (min-width:56.25em) {
    .footer__right {
        flex: 0 0 auto;
        margin-left: auto;
    }
}
.footer__social a {
    display: inline-block;
    padding: 0 .75rem;
    vertical-align: middle;
}
@media all and (min-width:56.25em) {
    .footer__social a {
        padding: 0 0 0 1.5rem;
    }
}
.footer__social a>svg {
    display: inline-block;
    fill: var(--gray-1);
    height: .875rem;
    pointer-events: none;
    -webkit-transition: all .12s linear 0s;
    transition: all .12s linear 0s;
    width: .875rem;
}
.footer__social a:hover>svg {
    opacity: 1;
}
.footer__bttop {
    background: var(--color);
    border-color: var(--white)!important;
    bottom: calc(var(--baseline) * 5);
    border-radius: 50%;
    line-height: 1;
    opacity: 0;
    padding: .45rem;
    position: fixed;
    right: 2rem;
    text-align: center;
    width: auto!important;
    visibility: hidden;
    z-index: 999;
    -webkit-transform: translateY(1rem);
    transform: translateY(1rem);
}
@media all and (min-width:56.25em) {
    .footer__bttop {
        bottom: calc(var(--baseline) * 10);
    }
}
.footer__bttop:hover {
    opacity: 1;
}
.footer__bttop>svg {
    fill: var(--white);
    height: 23px;
    margin: 0;
    width: 23px;
}
.footer__bttop.is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.gallery {
    margin: calc(var(--baseline) * 9) calc(var(--gallery-gap) * -1) calc(var(--baseline) * 2);
}
@media all and (min-width:20em) {
    .gallery {
        display: flex;
        flex-wrap: wrap;
    }
}
@media all and (min-width:56.25em) {
    .gallery-wrapper--wide {
        display: flex;
        justify-content: center;
        margin-left: calc(-50vw + 50%);
        margin-right: calc(-50vw + 50%);
        padding: 0 var(--page-margin);
    }
    .gallery-wrapper--wide .gallery {
        max-width: calc(var(--page-width) + var(--gallery-gap) * 2);
        width: calc(100% + var(--gallery-gap) * 2);
    }
}
.gallery-wrapper--full {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    padding: 0 var(--page-margin);
}
@media all and (min-width:20em) {
    .gallery[data-columns="1"] .gallery__item {
        flex: 1 0 100%;
    }
}
@media all and (min-width:30em) {
    .gallery[data-columns="2"] .gallery__item {
        flex: 1 0 50%;
    }
}
@media all and (min-width:37.5em) {
    .gallery[data-columns="3"] .gallery__item {
        flex: 1 0 33.333%;
    }
}
@media all and (min-width:56.25em) {
    .gallery[data-columns="4"] .gallery__item {
        flex: 0 1 25%;
    }
}
@media all and (min-width:56.25em) {
    .gallery[data-columns="5"] .gallery__item {
        flex: 0 1 20%;
    }
}
@media all and (min-width:56.25em) {
    .gallery[data-columns="6"] .gallery__item {
        flex: 0 1 16.666%;
    }
}
@media all and (min-width:56.25em) {
    .gallery[data-columns="7"] .gallery__item {
        flex: 1 0 14.285%;
    }
}
@media all and (min-width:56.25em) {
    .gallery[data-columns="8"] .gallery__item {
        flex: 1 0 12.5%;
    }
}
.gallery__item {
    margin: 0;
    padding: var(--gallery-gap);
    position: relative;
}
@media all and (min-width:20em) {
    .gallery__item {
        flex: 1 0 50%;
    }
}
@media all and (min-width:30em) {
    .gallery__item {
        flex: 1 0 33.333%;
    }
}
@media all and (min-width:37.5em) {
    .gallery__item {
        flex: 1 0 25%;
    }
}
.gallery__item a {
    background-color: var(--lighter);
    display: block;
    height: 100%;
    width: 100%;
}
.gallery__item a::after {
    background: -webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.4)),to(rgba(0,0,0,0)));
    background: linear-gradient(to top,rgba(0,0,0,.4) 0,rgba(0,0,0,0) 100%);
    bottom: var(--gallery-gap);
    content: "";
    display: block;
    opacity: 0;
    left: var(--gallery-gap);
    height: calc(100% - var(--gallery-gap) * 2);
    position: absolute;
    right: var(--gallery-gap);
    top: var(--gallery-gap);
    -webkit-transition: all .24s ease-out;
    transition: all .24s ease-out;
    width: calc(100% - var(--gallery-gap) * 2);
}
.gallery__item a:hover::after {
    opacity: 1;
}
.gallery__item img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
}
.gallery__item figcaption {
    bottom: 1.2rem;
    color: #fff;
    left: 50%;
    opacity: 0;
    position: absolute;
    text-align: center;
    -webkit-transform: translate(-50%,1.2rem);
    transform: translate(-50%,1.2rem);
    -webkit-transition: all .24s ease-out;
    transition: all .24s ease-out;
}
.gallery__item:hover figcaption {
    opacity: 1;
    -webkit-transform: translate(-50%,0);
    transform: translate(-50%,0);
}
:root {
    --pcb-width: 42em;
    --pcb-popup-height: 36em;
    --pcb-font-base-size: 17px;
    --pcb-font-weight-normal: 400;
    --pcb-font-weight-bold: 700;
    --pcb-border-radius: 4px;
    --pcb-badge-border-radius: 100%;
    --pcb-link-transition: all 0.12s linear;
    --pcb-bg: #ffffff;
    --pcb-overlay: rgba(12, 13, 16, .8);
    --pcb-text-color: #343435;
    --pcb-headings-color: #283149;
    --pcb-border-color: #e1e1e1;
    --pcb-bg-light: #f6f6f9;
    --pcb-btn-primary-bg: #e7e8ea;
    --pcb-btn-primary-bg-hover: #cbcdd2;
    --pcb-btn-primary-text: #283149;
    --pcb-btn-primary-text-hover: #283149;
    --pcb-btn-secondary-bg: #1089ff;
    --pcb-btn-secondary-bg-hover: #0079f2;
    --pcb-btn-secondary-text: #ffffff;
    --pcb-btn-secondary-text-hover: #ffffff;
    --pcb-btn-link: #283149;
    --pcb-btn-link-hover: #0079f2;
    --pcb-badge-bg: #1089ff;
    --pcb-badge-bg-hover: #0079f2;
    --pcb-badge-color: #fff;
    --pcb-badge-color-hover: #fff;
}
@media (prefers-color-scheme:dark) {
    :root {
        --pcb-bg: #191a1f;
        --pcb-overlay: rgba(10, 10, 12, .8);
        --pcb-text-color: #a5a7b7;
        --pcb-headings-color: #d9d9e0;
        --pcb-border-color: #393a47;
        --pcb-bg-light: #f6f6f9;
        --pcb-btn-primary-bg: #32343e;
        --pcb-btn-primary-bg-hover: #3c3f4b;
        --pcb-btn-primary-text: #d9d9e0;
        --pcb-btn-primary-text-hover: #ffffff;
        --pcb-btn-secondary-bg: #1089ff;
        --pcb-btn-secondary-bg-hover: #0079f2;
        --pcb-btn-secondary-text: #ffffff;
        --pcb-btn-secondary-text-hover: #ffffff;
        --pcb-btn-link: #d9d9e0;
        --pcb-btn-link-hover: #42a0ff;
        --pcb-badge-bg: #1089ff;
        --pcb-badge-bg-hover: #0079f2;
        --pcb-badge-color: #fff;
        --pcb-badge-color-hover: #fff;
    }
}
.pcb {
    color: var(--pcb-text-color);
    font-weight: 400;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    scroll-behavior: smooth;
    text-rendering: optimizeLegibility;
    position: relative;
    z-index: 999999;
}
.pcb *, .pcb::after, .pcb::before {
    -webkit-animation: none;
    animation: none;
    background: 0;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    float: none;
    font-style: normal;
    font-variant: normal;
    font-weight: inherit;
    font-family: inherit;
    line-height: 1;
    font-size: 1em;
    margin: 0;
    opacity: unset;
    padding: 0;
    position: unset;
    text-transform: none;
    letter-spacing: unset;
    visibility: unset;
    -webkit-transform: none;
    transform: none;
    -webkit-transition: none;
    transition: none;
    text-decoration: none;
    text-align: left;
}
.pcb__banner {
    background: var(--pcb-bg);
    -webkit-box-shadow: 0 .625em 1.875em rgba(2,2,3,.28);
    box-shadow: 0 .625em 1.875em rgba(2,2,3,.28);
    border-radius: calc(1.5 * var(--pcb-border-radius));
    bottom: 1.25em;
    font-size: var(--pcb-font-base-size);
    left: 1em;
    max-width: var(--pcb-width);
    margin: 0 auto;
    overflow: hidden;
    padding: 1.5em 2em;
    opacity: 0;
    position: fixed;
    right: 1em;
    text-align: center;
    -webkit-transform: translateY(1.5em);
    transform: translateY(1.5em);
    -webkit-transition: all .25s ease-out;
    transition: all .25s ease-out;
    visibility: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 1;
}
.pcb__banner--left {
    margin-left: 0;
}
.pcb__banner--right {
    margin-left: auto;
    margin-right: 0;
}
.pcb__banner--bar {
    max-width: 100%;
    border-radius: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2.5em 2em;
}
@media all and (min-width:37.5em) {
    .pcb__banner--bar {
        font-size: 17px;
    }
}
.pcb__banner.is-visible {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    visibility: visible;
}
.pcb__inner {
    max-width: var(--pcb-width);
    margin: 0 auto;
}
.pcb__title {
    color: var(--pcb-headings-color);
    font-size: 1.05em;
    font-variation-settings: "wght" var(--pcb-font-weight-bold);
    font-weight: var(--pcb-font-weight-bold);
    margin-bottom: .75em;
}
.pcb__txt {
    font-size: .85em;
    font-variation-settings: "wght" var(--pcb-font-weight-normal);
    font-weight: var(--pcb-font-weight-normal);
    line-height: 1.5;
}
.pcb__txt a {
    color: var(--pcb-btn-link);
    font-variation-settings: "wght" var(--pcb-font-weight-normal);
    font-weight: var(--pcb-font-weight-normal);
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.2em;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
}
.pcb__txt a:active, .pcb__txt a:focus, .pcb__txt a:hover {
    color: var(--pcb-btn-link-hover);
}
.pcb__buttons {
    display: flex;
    flex-wrap: wrap;
    margin-top: .5em;
}
@media all and (min-width:30em) and (max-width:37.4375em) {
    .pcb__buttons {
        justify-content: space-between;
    }
}
@media all and (min-width:37.5em) {
    .pcb__buttons {
        margin-top: 1.25em;
    }
}
.pcb__btn {
    background: var(--pcb-btn-primary-bg);
    border: none;
    border-radius: var(--pcb-border-radius);
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: pointer;
    display: inline-block;
    color: var(--pcb-btn-primary-text);
    font-variation-settings: "wght" var(--pcb-font-weight-bold);
    font-weight: var(--pcb-font-weight-bold);
    font-size: .825em;
    flex: 1 1 100%;
    height: initial;
    padding: 1em 1.5em;
    text-align: center;
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
    -webkit-transform: none;
    transform: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
@media all and (min-width:37.5em) {
    .pcb__btn {
        flex: 0 10 auto;
    }
}
.pcb__btn:active, .pcb__btn:focus, .pcb__btn:hover {
    background: var(--pcb-btn-primary-bg-hover);
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: var(--pcb-btn-primary-text-hover);
    -webkit-transform: none;
    transform: none;
}
.pcb__btn--solid {
    background: var(--pcb-btn-secondary-bg);
    color: var(--pcb-btn-secondary-text);
}
.pcb__btn--solid:active, .pcb__btn--solid:focus, .pcb__btn--solid:hover {
    background: var(--pcb-btn-secondary-bg-hover);
    color: var(--pcb-btn-secondary-text-hover);
}
.pcb__btn--link {
    background: 0 0;
    color: var(--pcb-btn-link);
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
    text-align: left;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.2em;
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto;
}
@media all and (max-width:37.4375em) {
    .pcb__btn--link {
        margin-bottom: .25em;
    }
}
.pcb__btn--link:active, .pcb__btn--link:focus, .pcb__btn--link:hover {
    background: 0 0;
    color: var(--pcb-btn-link-hover);
}
.pcb__btn+.pcb__btn {
    margin: .25em 0;
}
@media all and (min-width:37.5em) {
    .pcb__btn+.pcb__btn {
        margin: 0 0 0 .5em;
    }
}
.pcb__overlay {
    background: var(--pcb-overlay);
    bottom: 0;
    display: none;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    visibility: hidden;
    z-index: 999999999;
}
.pcb__overlay.is-visible {
    display: block;
    opacity: 1;
    visibility: visible;
}
.pcb__popup {
    display: table;
    height: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    visibility: hidden;
    z-index: 9999999999;
    -webkit-transition: all .25s ease-out;
    transition: all .25s ease-out;
}
@media all and (min-width:37.5em) {
    .pcb__popup {
        left: 1em;
        right: 1em;
        -webkit-transform: translateY(1.5em);
        transform: translateY(1.5em);
        width: calc(100% - 2em);
    }
}
.pcb__popup.is-visible {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
.pcb__popup__wrapper {
    background: var(--pcb-bg);
    font-size: var(--pcb-font-base-size);
    height: 100%;
    max-height: 100%;
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
    padding: 1.5em 2em;
    pointer-events: auto;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
@media all and (min-width:37.5em) {
    .pcb__popup__wrapper {
        border-radius: calc(1.5 * var(--pcb-border-radius));
        -webkit-box-shadow: 0 .625em 1.875em rgba(2,2,3,.28);
        box-shadow: 0 .625em 1.875em rgba(2,2,3,.28);
        max-height: var(--pcb-popup-height);
        max-width: var(--pcb-width);
    }
}
.pcb__popup__inner {
    padding-top: 2.5em;
    padding-bottom: 10em;
    position: relative;
    height: 100%;
}
@media all and (min-width:37.5em) {
    .pcb__popup__inner {
        padding-bottom: 2.5em;
    }
}
.pcb__popup__heading {
    border-bottom: 1px solid var(--pcb-border-color);
    left: 0;
    height: 2.5em;
    padding-bottom: 2em;
    position: absolute;
    right: 0;
    top: 0;
}
.pcb__popup__close {
    background: 0 0;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: pointer;
    height: 1.3em;
    padding: .5em;
    position: absolute;
    right: 0;
    top: 0;
    width: 1.3em;
}
@media all and (min-width:37.5em) {
    .pcb__popup__close {
        display: none;
        visibility: hidden;
    }
}
.pcb__popup__close::after, .pcb__popup__close::before {
    background-color: var(--pcb-btn-link);
    content: " ";
    display: block;
    height: 1.3em;
    left: .65em;
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
    top: 0;
    width: 1px;
}
.pcb__popup__close::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.pcb__popup__close:hover {
    background: 0 0;
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transform: inherit;
    transform: inherit;
}
.pcb__popup__close:hover::after, .pcb__popup__close:hover::before {
    background-color: var(--pcb-btn-link-hover);
}
.pcb__popup__content {
    display: block;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    width: calc(100% + 1em);
    margin-right: -1em;
    padding-right: 1em;
}
.pcb__popup__txt {
    margin-top: 2em;
}
.pcb__popup__buttons {
    background-color: var(--pcb-bg);
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 1.25em 0 0;
    position: absolute;
    right: 0;
}
.pcb__popup__buttons::before {
    content: "";
    border-top: 1px solid var(--pcb-border-color);
    height: 1px;
    left: 0;
    width: 100%;
    position: absolute;
    top: 0;
}
.pcb__popup__buttons .pcb__btn:nth-child(3) {
    margin-left: auto;
}
.pcb__popup__switch {
    height: 100%;
    position: absolute;
    right: 1em;
    top: 0;
}
.pcb__popup__switch input[type=checkbox] {
    color: unset;
    display: inline-block;
    float: none;
    height: 0;
    opacity: unset;
    position: unset;
    width: 0;
    visibility: hidden;
}
.pcb__popup__switch input[type=checkbox]+label {
    background: var(--pcb-btn-primary-bg-hover);
    border-radius: 100px;
    -webkit-box-shadow: none;
    box-shadow: none;
    display: block;
    cursor: pointer;
    height: 24px;
    margin: unset;
    padding: unset;
    position: relative;
    text-indent: -9999px;
    width: 44px;
}
.pcb__popup__switch input[type=checkbox]+label::before {
    display: none;
}
.pcb__popup__switch input[type=checkbox]+label::after {
    content: "";
    background: var(--pcb-bg);
    border: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 20px;
    display: block;
    left: 2px;
    height: 20px;
    -webkit-mask: none;
    mask: none;
    position: absolute;
    width: 20px;
    top: 2px;
    -webkit-transition: .3s;
    transition: .3s;
}
.pcb__popup__switch input:checked+label {
    background: var(--pcb-btn-secondary-bg);
}
.pcb__popup__switch input:checked+label:after {
    left: calc(100% - 2px);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
}
.pcb__popup__switch.is-checked label {
    opacity: .5;
    pointer-events: none;
}
.pcb__groups {
    list-style: none;
    margin: 2em 0 1em;
}
.pcb__group {
    border: 1px solid var(--pcb-border-color);
    border-radius: var(--pcb-border-radius);
    margin-bottom: .5em;
    padding: 0 1em;
    position: relative;
}
.pcb__group__title {
    font-variation-settings: "wght" var(--pcb-font-weight-bold);
    font-weight: var(--pcb-font-weight-bold);
    font-size: .941em;
    color: var(--pcb-headings-color);
    cursor: pointer;
    display: block;
    padding: 1.25em 3.5em 1.25em 1.25em;
    position: relative;
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
}
.pcb__group__title:hover {
    color: var(--pcb-btn-link-hover);
}
.pcb__group__title:focus {
    outline: 0;
}
.pcb__group__title::-webkit-details-marker, .pcb__group__title::marker {
    display: none;
}
.pcb__group__title::before {
    content: "";
    border-right: 1px solid;
    border-bottom: 1px solid;
    border-color: inherit;
    left: 0;
    height: 5px;
    display: block;
    position: absolute;
    -webkit-transform: translate(0,-50%) rotate(-45deg);
    transform: translate(0,-50%) rotate(-45deg);
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
    top: 50%;
    width: 5px;
}
.pcb__group__title.no-desc {
    padding-left: 0;
    pointer-events: none;
}
.pcb__group__title.no-desc::before {
    content: none;
}
.pcb__group__txt {
    font-size: .85em;
    font-variation-settings: "wght" var(--pcb-font-weight-normal);
    font-weight: var(--pcb-font-weight-normal);
    line-height: 1.5;
    margin-top: -.5em;
    padding: .5em 0 1.25em 1.25em;
}
.pcb__group__txt:empty {
    display: none;
}
.pcb__group>details[open] .pcb__group__title::before {
    -webkit-transform: translate(0,-50%) rotate(45deg);
    transform: translate(0,-50%) rotate(45deg);
}
.pcb__badge {
    background: var(--pcb-badge-bg);
    border: none;
    border-radius: var(--pcb-badge-border-radius);
    -webkit-box-shadow: none;
    box-shadow: none;
    bottom: 1.25em;
    color: var(--pcb-badge-color);
    cursor: pointer;
    display: flex;
    font-size: initial;
    height: initial;
    left: 1.25em;
    padding: .55em;
    position: fixed;
    -webkit-transition: var(--pcb-link-transition);
    transition: var(--pcb-link-transition);
    -webkit-transform: none;
    transform: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    visibility: hidden;
    width: auto;
}
.pcb__badge:active, .pcb__badge:focus, .pcb__badge:hover {
    background: var(--pcb-badge-bg-hover);
    border: inherit;
    -webkit-box-shadow: inherit;
    box-shadow: inherit;
    color: var(--pcb-badge-color-hover);
    -webkit-transform: inherit;
    transform: inherit;
}
.pcb__badge.is-visible {
    visibility: visible;
}
.pswp--zoom-allowed .pswp__img {
    cursor: default!important;
}
img[loading] {
    opacity: 0;
}
img.is-loaded {
    opacity: 1;
    transition: opacity 1s cubic-bezier(.215, .61, .355, 1);
}
:root {
    --primary-color: #2a2a2a;
    --secondary-color: #4a90e2;
    --success-color: #28a745;
    --error-color: #dc3545;
    --bg-color: #f4f7ff;
}
.logo--atbottom {
    display: none;
}

.formcarry-container {
    box-sizing: border-box;
    margin: 40px auto 0 auto;
    padding: 0;
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: -.01em;
    width: 400px;
    --fc-border-color: #ECEFF9;
    --fc-normal-text-color: #0E0B3D;
    --fc-normal-placeholder-color: #B3B8D0;
    --fc-primary-color-hue: 220;
    --fc-error-color-hue: 356;
    --fc-primary-hsl: var(--fc-primary-color-hue), 100%, 54%;
    --fc-error-hsl: var(--fc-error-color-hue), 100%, 54%;
    --fc-field-hover-bg-color: #F7F9FC;
    --fc-border-hover-color: #DDE0EE;
    --fc-field-hover-text-color: #B3B8D0;
    --fc-border-active-color: #1463FF;
}
.formcarry-container * {
    box-sizing: border-box;
}
.formcarry-container label {
    display: block;
    cursor: pointer;
}
.formcarry-container .formcarry-block:not(:first-child) {
    margin-top: 16px;
}
.formcarry-container input, .formcarry-container select, .formcarry-container textarea {
    margin-top: 4px;
    width: 100%;
    height: 42px;
    border: 1px solid var(--fc-border-color);
    color: var(--fc-normal-text-color);
    border-radius: 6px;
    padding: 8px 12px;
    font-family: Inter, sans-serif;
    font-size: 14px;
    transition: 125ms background, 125ms color, 125ms box-shadow;
}
.formcarry-container textarea {
    min-height: 188px;
    max-width: 100%;
    padding-top: 12px;
}
.formcarry-container input::placeholder, .formcarry-container select::placeholder, .formcarry-container textarea::placeholder {
    color: var(--fc-normal-placeholder-color);
}
.formcarry-container input:hover, .formcarry-container select:hover, .formcarry-container textarea:hover {
    border-color: var(--fc-border-hover-color);
    background-color: var(--fc-field-hover-bg-color);
}
.formcarry-container input:hover::placeholder, .formcarry-container select:hover::placeholder, .formcarry-container textarea:hover::placeholder {
    color: var(--fc-field-hover-text-color);
}
.formcarry-container input:focus, .formcarry-container select:focus, .formcarry-container textarea:focus {
    background-color: #fff;
    border-color: hsl(var(--fc-primary-hsl));
    box-shadow: hsla(var(--fc-primary-hsl),8%) 0 0 0 3px;
    outline: 0;
}
.formcarry-container select {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.9997 14.5001L8.46387 10.9642L9.64303 9.78589L11.9997 12.1434L14.3564 9.78589L15.5355 10.9642L11.9997 14.5001Z' fill='%236C6F93'/%3E%3C/svg%3E%0A");
    background-size: 24px 24px;
    background-position: 98%;
    background-repeat: no-repeat;
    appearance: none;
    -webkit-appearance: none;
}
.formcarry-container button {
    font-family: Inter, sans-serif;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: -.02em;
    height: 42px;
    line-height: 40px;
    width: 100%;
    border-radius: 6px;
    box-sizing: border-box;
    border: 1px solid hsla(var(--fc-primary-hsl));
    background-color: hsla(var(--fc-primary-hsl));
    color: #fff;
    cursor: pointer;
}
.formcarry-container button {
    font-family: Inter, sans-serif;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: -.02em;
    height: 40px;
    line-height: 24px;
    width: 100%;
    border: 0;
    border-radius: 6px;
    box-sizing: border-box;
    background-color: hsla(var(--fc-primary-hsl));
    color: #fff;
    cursor: pointer;
    box-shadow: 0 0 0 0 transparent;
    transition: 125ms all;
}
.formcarry-container button:hover {
    background: linear-gradient(0deg,rgba(0,0,0,.1),rgba(0,0,0,.1)), hsla(var(--fc-primary-hsl));
}
.formcarry-container button:focus {
    background: linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.2)), hsla(var(--fc-primary-hsl));
    border-inline: 1px solid inline rgba(255,255,255,0.6);
    box-shadow: 0 0 0 3px rgba(var(--fc-primary-hsl),12%);
}
.formcarry-container button:active {
    background: linear-gradient(0deg,rgba(0,0,0,.2),rgba(0,0,0,.2)), hsla(var(--fc-primary-hsl));
}
.formcarry-container button:disabled {
    background-color: hsla(var(--fc-primary-hsl),40%);
    cursor: not-allowed;
}
.formcarry-container input:focus:invalid, .formcarry-container input:focus:required:invalid, .formcarry-container select:focus:invalid, .formcarry-container select:focus:required:invalid {
    color: hsl(var(--fc-error-hsl));
    border-color: hsl(var(--fc-error-hsl));
    box-shadow: 0 0 0 3px hsla(var(--fc-error-hsl),12%);
}
.content__entry, .content__entry figure, .content__entry img, .post-figure, .post-figure img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 100% !important;
    height: auto !important;
    overflow: visible !important;
}
.post-figure {
    margin: 0 0 1.5rem !important;
}
.post-figure img {
    width: 100% !important;
}

/* Dropdown submenu dark mode contrast override */
@media (prefers-color-scheme: dark) {
    .navbar .navbar__submenu {
        background-color: #20222a !important;
        border: 1px solid #303845 !important;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5) !important;
    }

    .navbar .navbar__submenu li a,
    .navbar .navbar__submenu li span,
    .navbar .navbar__menu li .navbar__submenu a {
        color: #f1f3f5 !important;
    }

    .navbar .navbar__submenu li a:hover,
    .navbar .navbar__submenu li a:focus {
        color: #b197fc !important;
        background-color: transparent !important;
    }
}