html {font-size: clamp(15px, 1.2vw, 16px); box-sizing: border-box; scroll-behavior: smooth; scroll-padding-top: 7rem;}
* {padding: 0; margin: 0; box-sizing: inherit;}
body {color: #000; font-family: 'Jost', sans-serif; line-height: 1.5; font-weight: 400; overflow-y: scroll;}
h1 {font-size: 2rem; font-weight: 600; line-height: 1.1; padding: 0.4rem 0 0.4rem;}
h2 {font-size: 1.25rem; font-weight: 600; line-height: 1.1; padding: 1.4rem 0 1rem;}
h3 {font-size: 1rem; font-weight: 600; line-height: 1.1; padding: 1.4rem 0 0.25rem;}
h1 + h2 {padding-top: 0;}
h2 + h3 {padding-top: 0.5rem;}
a {color: rgba(0,0,0,0.5); text-decoration: none;}
p a, a[href^="mailto:"] {text-decoration: underline; color: #000;}
p.error {color: #ed1c24;}

.container {max-width: 75rem; margin: 0 auto; padding: 0 1rem; position: relative;}
.container .container {padding: 0;}
.container .hassubnav .container {padding: 0 1rem;}
.cart.notification {background: #000; display: block; color: white; top: 0; margin-top: -0.2rem; font-size: 0.7rem; min-width: 1rem; height: 1rem; line-height: 1rem; border-radius: 0.5rem; text-align: center; position: absolute; right: 0; margin-right: -0.2rem;  font-weight: 600; width: auto; padding-inline: 0.2rem;}
.notification.alert {background: #ed1c24;}

.single.textcolumn {max-width: 50rem; margin: 0 auto;}
.double.textcolumn {display: flex; flex-wrap: wrap; gap: 4rem;}
.double.textcolumn > div {flex-grow: 1; width: 25rem;}
.textcolumn h1 {line-height: 1; padding-bottom: 2rem; font-family: 'Jost', sans-serif; font-weight: 600; font-size: 2rem;}
.textcolumn h1 span {display: block;opacity: 0.4; padding: 0.25rem 0 0;}
p,
.textcolumn ol,
.textcolumn ul,
.textcolumn table,
.textcolumn p {padding-bottom: 1.4rem;}
.textcolumn ol {margin-left: 2rem;}
.textcolumn ul {margin-left: 1.4rem;}
.smallcolumn {max-width: 25rem; margin: 0 auto;}
img {max-width: 100%; height: auto; width: 100%;}

.body {padding-top: 3rem;}
.body > .container > ul {margin-left: 1rem;}

#header {background: white; z-index: 5; position: sticky; width: 100%; top: 0;}

#header #brand {height: 4rem; width: 100%; background: #e6e6e6; top: 0; z-index: 3;}
#header #brand .container {display: flex; justify-content: space-between;}
#header #brand .container > div {display: flex;}
#header #brand #search {display: flex; align-items: center;}
#header #brand #search input {width: 30rem; background: white url('../img/search.svg') calc(100% - 0.5rem) center / 1.4rem auto no-repeat; height: 2.25rem; line-height: 2.25rem; padding: 0 1rem; border: 0;}
#header #brand #logo {margin-right: 1.5rem;}
#header #brand #logo img {display: block; height: 2rem; margin: 1rem 0; max-width: initial; width: auto;}
#header #brand #menutoggle {display: none; background: url('../img/menu.svg') center center / 2rem auto no-repeat; border: 0; cursor: pointer; margin-left: -0.25rem; width: 2rem;}
body.mobilemenu #header #brand #menutoggle {background: url('../img/close.svg') center center / 2rem auto no-repeat;}
#header #brand ul {display: flex; align-items: center;}
#header #brand ul li {list-style: none; padding-left: 0.75rem;}
#header #brand ul li a {color: #000; text-decoration: none; position: relative;}
#header #brand ul li a img {width: 2rem; vertical-align: middle;}

#header #nav {background: white; width: 100%; z-index: 2;}
#header #nav > .container > div {border-bottom: 1px solid black; display: flex; justify-content: space-between;}
#header #nav > .container > div > ul {height: 3rem; display: flex; align-items: center; flex-wrap: wrap;}
#header #nav > .container > div > ul > li {list-style: none; padding-right: 2rem; height: 3rem; line-height: 3rem; position: relative; white-space: nowrap;}
#header #nav > .container > div > ul > li:first-child {padding-right: 1.7rem;}
#header #nav > .container > div > ul > li:first-child img {width: 2rem;}
#header #nav > .container > div > ul > li:last-child {padding-right: 0;}
#header #nav > .container > div > ul > li > ul {position: absolute; background: #fff; margin-left: -1rem; border-top: 1px solid black; opacity: 0; pointer-events: none; transition: all 0.2s ease-in-out;}
#header #nav > .container > div > ul > li:hover > ul {opacity: 1; pointer-events: auto;}
#header #nav > .container > div > ul > li > ul > li {list-style: none; height: 1.4rem; line-height: 1.4; border: 1px solid black; border-top: 0;}
#header #nav > .container > div > ul > li > ul > li a {color: #000; text-decoration: none; padding-inline: 1rem;}
#header #nav > .container > div > ul > li > div {display: none; position: fixed; left: 0; background: #edf7fa; width: 100%; z-index: 3; top: 7rem; padding: 2rem 0 1rem; line-height: 1.4;}
#header #nav > .container > div > ul > li.hassubnav:hover > div {display: block;}
#header #nav > .container > div > ul > li > div .container {display: flex; flex-wrap: wrap;}
#header #nav > .container > div > ul > li > div .container > div {flex-grow: 1; font-size: 0.9rem; min-width: 15rem;}
#header #nav > .container > div > ul > li > div .container > div h3 {margin-bottom: 0.3rem; color: #00a8e9;}
#header #nav > .container > div > ul > li > div .container > div ul {margin-bottom: 1.5rem;}
#header #nav > .container > div > ul > li.hassubnav:hover::after {content: ""; position: absolute; z-index: 99; width: 0rem; height: 0rem; left: 50%; margin-left: -1.5rem; bottom: 0; border: 0.5rem solid transparent; border-bottom: 0.5rem solid #edf7fa;}
#header #nav > .container > div > ul > li > a {color: #000; text-decoration: none; display: block; font-weight: 400; transition: all 0.15s ease-in-out; position: relative; display: flex; align-items: center; height: 100%;}
#header #nav > .container > div > ul > li:not(.active) > a:hover,
#header #nav > .container > div > ul > li:not(.active):hover > a {color: #777;}

body.home #breadcrumbs {display: none;}
#breadcrumbs {background: #fff; font-size: 0.9rem; color: rgba(0,0,0,0.25)}
#breadcrumbs ul {height: 2.5rem; display: flex; align-items: center; padding-bottom: 0.25rem;}
#breadcrumbs ul li {list-style: none; padding-right: 0.5rem;}
#breadcrumbs ul li::before {content: "/"; display: inline-block; color: rgba(0,0,0,0.25); margin-right: 0.5rem;}
#breadcrumbs ul li:first-child::before {content: none;}
#breadcrumbs ul li a {color: rgba(0,0,0,0.25); text-decoration: none;}
#breadcrumbs ul li a img {width: 1.1rem; vertical-align: middle; position: relative; top: 0.1rem;}
#breadcrumbs ul li.active a {color: rgba(0,0,0,0.25);}

#header select {
    border: 0; 
    font-family: 'Jost', sans-serif;
    line-height: 1.4; 
    font-weight: 400; 
    color: #000;
    font-size: 0.9rem;
    padding: 0;
    margin: 0;
}

.anchor {position: absolute; height: 9rem; width: 1px; transform: translateY(-100%); opacity: 0; pointer-events: none;}
@media only screen and (max-width: 950px) {
    .anchor {height: 2rem;}
}

.trustbar, .small {font-size: 0.9rem;}
p.small {margin-bottom: 1rem;}
.trustbar em {font-style: normal; color: #6dc148; font-weight: 600;}
.trustbar ul {padding-top: 0.75rem; height: 3rem; display: flex; align-items: center; flex-wrap: wrap; overflow: hidden; justify-content: center; width: 100%;}
.trustbar ul li {list-style: none; padding-right: 1.5rem; white-space: nowrap; height: 2.25rem;}
.trustbar ul li::before {content: "✔"; color: #6dc148; display: inline-block; margin-right: .1rem; font-size: 1.5rem; vertical-align: middle; position: relative; bottom: 0.1rem; line-height: 1.4;}
.trustbar ul.vertical {padding-top: 0; height: auto; display: block; align-items: left; width: auto; text-align: left; margin-bottom: 1.4rem;}
.trustbar ul.vertical li {height: 1.4rem;}
.trustbar ul.vertical li::before {line-height: 1.4rem;}

#brandimage {margin-top: 1.5rem;}
#brandimage .container > div {padding-bottom: 37%; width: 100%; position: relative; border-radius: 0.3rem; overflow: hidden; background: url('/p/uploads/banners/lifetime-smiles.jpg') left center / cover no-repeat;}

.fullscreen {height: 100lvh; width: 100%; top: 0; position: relative; overflow: hidden;}
.fullscreen > div {background: rgba(0,0,0,0.5); width: 100%; height: calc(100% - 7rem); position: relative; top: 7rem; display: flex; background-attachment: fixed; backdrop-filter: blur(1px);}
.fullscreen > div > div {margin: auto; color: white; text-align: center; font-size: 105%; position: relative; padding-block: 0 3rem;}
.fullscreen > div > div::before {
    content: ""; 
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.35);
    filter: blur(2rem);
    border-radius: 100%;
    animation: appearfrombottom 3s both; 
    animation-delay: 0.5s;
    z-index: -1;
}
.fullscreen > div > div h1 {font-weight: 900; font-size: 2.9rem; line-height: 1.1; display: flex; justify-content: center; flex-wrap: wrap; margin-inline: 1rem;}
.fullscreen > div > div h1 span:first-child {background-image: linear-gradient(to bottom, transparent calc(100% - 0.8rem), #21a4dd calc(100% - 0.8rem), #21a4dd 100%); }
.fullscreen > div > div h1 span {margin-inline: 0.45rem; white-space: nowrap;}
.fullscreen > div > div ul {display: flex; justify-content: center; gap: 1.5rem 3.75rem; padding: 4rem 2rem 0; flex-wrap: wrap;}
.fullscreen > div > div ul li {list-style: none; text-align: center;}
.fullscreen > div > div ul li img {height: 5rem;}
.fullscreen > div > div ul li a > * {display: inline-block; color: white; font-weight: 900; font-size: 85%; line-height: 1.7;}
.fullscreen > div > div ul li a {display: block; width: 7rem;}
.fullscreen > div > div ul li a img {transition: all 0.3s ease-in-out; display: inline-block; margin-bottom: 0.1rem;}
.fullscreen > div > div ul li a:hover img {transform: translateY(-0.6rem);}
.fullscreen > div > div ul li a span:last-child {opacity: 0.5; font-weight: 600; font-size: 70%; margin: 0.5rem -0.5rem; line-height: 1.45;}
.fullscreen.headerbar {min-height: 12rem; height: auto;} 
body.bu_Regeneration .fullscreen.headerbar {background: url(/img/regeneration.jpg) center center / cover no-repeat!important;}
body.bu_Equipment .fullscreen.headerbar {background: url(/img/equipment.jpg) center center / cover no-repeat!important;}
body.bu_Instruments .fullscreen.headerbar {background: url(/img/instruments.jpg) center center / cover no-repeat!important;}
body.bu_Surgical .fullscreen.headerbar {background: url(/img/surgical.jpg) center center / cover no-repeat!important;}

.fullscreen.headerbar > div {top: 0; height: 100%; position: absolute;}
.fullscreen.headerbar > div > div {padding-bottom: 1rem;}
@media only screen and (max-width: 500px) {
    .fullscreen > div > div > :nth-child(1) {font-size: 90%;}
    .fullscreen > div > div ul {display: none;}
    .fullscreen.headerbar {min-height: 8rem;} 
    .fullscreen.headerbar  > div > div h1 {font-size: 2rem;}
}


form > div {display: flex; margin-bottom: 1rem; position: relative;}
form > div label {line-height: 2.4rem; min-width: 8rem; white-space: nowrap; text-overflow: ellipsis; color: rgba(0,0,0,0.5);}
form > div input:not([type="submit"],[type="checkbox"]), form > div textarea, div.disabledinput {height: 2.4rem; line-height: 2.4rem; border: 1px solid rgba(0,0,0,0.15); flex-grow: 1; padding: 0 0.5rem;}
form > div textarea {height: 25rem; line-height: 1.4; padding: 0.5rem;}
form > div input[disabled], div.disabledinput {color: rgba(0,0,0,0.25); background: rgba(0,0,0,0.05);}
form > div input[type="checkbox"], form > div input[type="radio"] {height: 1rem;}

form > div.form-group {display: grid; grid-template-columns: 10rem auto;}
form > div.form-group .help-block {display: none;}
form > div.form-group.has-error .help-block {display: block; margin-top: 1rem; grid-column-start: 1; grid-column-end: 3; color: #ed1c24;}

input[type="checkbox"], input[type="checkbox"] + *::before {width: 0.95rem; height: 100%; overflow: hidden; left: 0; opacity: 0; display: inline-block; vertical-align: top; border: 0; padding: 0; margin: 0 0.35rem 0 0;}
input[type="checkbox"] + *::before {content: ""; position: absolute; background: url('/img/square-light.svg') center center / contain no-repeat; opacity: 1; cursor: pointer;}
input[type="checkbox"]:checked + *::before {background: url('/img/check-square.svg') center center / contain no-repeat;}

input[type="radio"], input[type="radio"] + *::before {width: 1rem; height: 100%; overflow: hidden; left: 0; opacity: 0; display: inline-block; vertical-align: top; border: 0; padding: 0; margin: 0 0.35rem 0 0;}
input[type="radio"] + *::before {content: ""; position: absolute; background: url('/img/circle-light.svg') center center / contain no-repeat; opacity: 1; cursor: pointer;}
input[type="radio"]:checked + *::before {background: url('/img/dot-circle.svg') center center / contain no-repeat;}

.form-group.checkbox > div {flex-grow: 1;}
.form-group.checkbox > div > div {position: relative; display: flex;}
.form-group.checkbox > div > div > label {display: flex; margin-left: 0.3rem;}
.form-group.checkbox > div > div > a {line-height: 2.4rem; cursor: pointer;}

form div[style*="flex-direction: column"] input {flex-grow: unset;}
form .error input, form .error :not(label){color: #ed1c24;}
form .error input {border: 1px solid #ed1c24!important;}

.fakeselect a {
    display: block;
    height: 2.4rem;
    line-height: 2.4rem;
    border: 1px solid rgba(0,0,0,0.15);
    width: 100%;
    border-radius: 0.3rem;
    padding: 0 0.5rem;
    color: #000;
}
.fakeselect + * {margin-top: 0.5rem;}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}
dl {position: relative; display: flex; flex-wrap: wrap;}
dl dt {clear: left; width: 40%; max-width: 200px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
dl dd {width: 60%;}



.imagemap {position: relative;}
.imagemap img {display: block;}
.imagemap .area {display: block; position: absolute; transition: box-shadow 0.15s ease-in-out;}
.imagemap .area.disabled {background: rgba(255,255,255,0.75); pointer-events: none;}
.imagemap .area:hover {background: rgb(0, 168, 233, 0); box-shadow: 0px 0px 0.5rem rgba(0,0,0,0.5);}

select, input[type="date"] {
    height: 2.4rem; 
    line-height: 2.4rem;
    width: 4.5rem; 
    border: 1px solid rgba(0,0,0,0.15); 
    padding: 0 0.5rem;
    font-family: 'Jost', sans-serif;
    font-size: 1rem;
    font-weight: 400;
    border-radius: 0.3rem;
    background: transparent;
    width: 100%;
    color: #000;
}
input, button, .button, textarea, .disabledinput {
    font-family: 'Jost', sans-serif;
    font-size: 1rem; 
    font-weight: 400; 
    border-radius: 0.3rem; 
    color: #000; 
    background: white; border: 1px solid rgb(0,0,0,0.1);
    text-decoration: none!important;
}
.disabledinput {overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
button, .button {cursor: pointer;}
input[type='checkbox'], input[type='radio'] {position: relative; top: 0.1rem; margin-right: 0.2rem;}
.adminform.search {max-width: 100%;}
.adminform.search label {display: none;}
.adminform.search + p, .adminform.search + script + p {opacity: 0.5; position: relative; bottom: 0.75rem;}

.button {
    font-size: 1.1rem; 
    border: 0; 
    cursor: pointer; 
    background: #000; 
    color: white; 
    display: block;
    line-height: 2.3rem; 
    text-align: center; 
    text-decoration: none;
    width: 100%; 
    display: block;
    border: 0;
    font-weight: 600;
    height: 2.8rem;
    line-height: 2.8rem;
}
.button img {height: 1.4rem; width: 1.4rem; vertical-align: middle; position: relative; bottom: 0.15rem; object-fit: contain; margin-right: 0.15rem;}
.button.primary {background: #67b938; color: white;}
.button.primary img {height: 1.75rem; width: 1.75rem; bottom: 0.2rem;}
.button.disabled, .button[disabled] {background: #bbb; pointer-events: none; border-color: #999;}
.button.small {height: 2.2rem; line-height: 2.2rem; padding-inline: 1rem;}


#footer {background: #e6e6e6; padding: 2rem 0 1rem; margin-top: 6rem;}
#footer .container {display: flex; flex-wrap: wrap;}
#footer .container > div {flex-grow: 1; font-size: 0.9rem; width: 12rem;}
#footer .container > div h3 {margin-block: 0.5rem;}
#footer .container > div ul {margin-bottom: 3rem;}
#footer .container > div ul li {list-style: none; line-height: 2;}
#footer .container > div ul li a {color: #000; text-decoration: none;}

#afterfooter {text-align: center; padding-bottom: 3rem; font-size: 0.8rem; color: gray; clear: both;}
#afterfooter .icons {border-bottom: 1px solid rgba(0,0,0,0.15); margin-bottom: 1.3rem;}
#afterfooter .icons img {display: inline-block; vertical-align: middle; margin: 0.8rem;}

.well {border: 1px solid rgba(0,0,0,0.15); padding: 2rem 1.75rem 2.5rem;}
.well.blue {background: #edf7fa;border: 0;}
.well *:first-child {padding-top: 0; margin-top: 0;}
.well *:last-child {margin-bottom: 0; padding-bottom: 0;}
div.well + .well {border-top: 0;}

.well.medium {padding: 1.5rem 1.75rem 1.65rem 1.75rem; position: relative;}
.floatlink {position: absolute; top: 0; right: 0; font-weight: bold;}
.well .floatlink {top: 1.5rem; right: 1.75rem;}

label.well {border-radius: 0.3rem; padding: 1rem 1.25rem 1.2rem 3rem; margin-bottom: 0.5rem; cursor: pointer; position: relative; line-height: 1.4;}
label.well span:first-child {float: right; font-weight: bold; color: #00a8e9;}
label.well.blue {border: 1px solid #00a8e9;}
label.well input {position: absolute; margin: 1.1rem 0 0 -1.75rem;}
label.well img {vertical-align: middle; display: inline-block; width: 2rem; margin-right: 0.3rem;}

label.well input[type="radio"] + *::before {top: 0; left: 1.2rem; background-position: center 1.25rem;}

hr {height: 1px; border: 0; background: rgba(0,0,0,0.15);}
h1.small {font-size: 2rem;}

.checkout #menutoggle, .checkout #search, .checkout #nav, .checkout #breadcrumbs {display: none!important;}
.checkout #header {height: 4rem; margin-bottom: 1rem;}
.checkout form > div {margin-bottom: 0.5rem;}
.checkout #header #brand {position: absolute;}

#checkout_steps {display: block; text-align: center; color: rgba(0,0,0,0.5); font-size: 0.9rem;}
#checkout_steps li {width: 110px; text-align: left; display: inline-block; border-top: 1px solid rgba(0,0,0,0.15); padding-top: 8px;}
#checkout_steps li.past {border-color: #000;}
#checkout_steps li:last-child {border: 0; width: 0px;}
#checkout_steps li > span > * {
    white-space: nowrap;
    display: inline-block;
    -ms-transform: translateX(-50%); /* IE 9 */
    -webkit-transform: translateX(-50%); /* Chrome, Safari, Opera */
    transform: translateX(-50%);
    padding-top: 0.1rem;
}
#checkout_steps li > span > a {color: #000; text-decoration: none;}
#checkout_steps li > span > a:before {content: ""; position: absolute; bottom: 0; width: 100%; height: 3.5rem;}
#checkout_steps li > *:before {position: absolute; margin: -16px 0 0 -5px; width: 11px; height: 11px; content: ""; 
    border-radius: 99px; border: 2px solid white; 
    box-shadow: 0px 0px 0.1px 1px #bbb; background: white;
}
#checkout_steps li.past > span:before,
#checkout_steps li.current > span:before {box-shadow: 0px 0px 0.1px 1px #000; background: #000;}

.hidden {display: none!important;}

.accountpage {display: flex; flex-direction: row-reverse;}
.accountpage .accountcontent {flex-grow: 1; padding-right: 3rem; width: 100%;}
.accountpage .accountcontent h2 {margin-top: 0;}
.accountpage .accountmenu {padding-top: 0.85rem; position: relative; width: 15rem; border-left: 1px solid rgba(0,0,0,0.15); padding-left: 2.25rem;}
.accountpage .accountmenu ul {margin-left: 0;}
.accountpage .accountmenu ul li {list-style: none;}
.accountpage .accountmenu ul li.selected a {color: #000;}



ul.paginationlinks {margin: 50px 0 0; padding: 0; text-align: center;}
ul.paginationlinks li {list-style: none; display: none;}
ul.paginationlinks li a {display: block; padding: 0 7px 2px; border: 1px solid #dcdcdc; line-height: 1.4em;}
ul.paginationlinks li:last-child,
ul.paginationlinks li:first-child {display: inline-block;}
ul.paginationlinks li.visible {display: inline-block;}
ul.paginationlinks li.current a {background: #009ac7; border-color: #009ac7;}
ul.paginationlinks li.current a {color: white;}


@media only screen and (max-width: 600px) {
    ul.paginationlinks li.visible {display: none;}
    ul.paginationlinks li.current,
    ul.paginationlinks li.isnearmobile,
    ul.paginationlinks li:last-child,
    ul.paginationlinks li:first-child {display: inline-block;}
}

@media only screen and (max-width: 1100px) {
    #header #brand ul li.management {display: none;}
}

@media only screen and (max-width: 975px) {
    html {scroll-padding-top: 0;}
    #header #brand #menutoggle {display: block;}
    #header {position: relative;}
    #header #brand #search {display: none; height: 5rem; position: absolute; top: 4rem; width: calc(100% - 2rem); z-index: 5;}
    #header #brand #search form, #header #brand #search input {width: 100%;}
    #header #nav {border-bottom: 1px solid black; display: none;}
    #header #subnav {margin-top: 0;}
    #header #breadcrumbs {margin-top: 0;}
    #header #nav {position: relative;}
    #header #nav > .container > div {padding-block: 4.5rem 1rem;}
    #header #nav > .container > div,
    #header #nav > .container > div > ul {flex-direction: column; height: auto; align-items: stretch;}
    #header #nav > .container > div > ul:first-child > li:first-child {display: none;}
    .mobilemenu #header #nav {display: block;}
    .mobilemenu #header #brand #search {display: flex;}
    #header #nav > .container > div {border: 0;}
    #header #nav > .container > ul > li.hassubnav:hover::after {content: none;}
    .imagemap .area:hover {box-shadow: 0px 0px 1.5vw rgba(0,0,0,0.5);}

    .accountpage {display: block;}
    .accountpage .accountcontent {padding-right: 0;}
    .accountpage .accountmenu {padding-left: 0; border: 0; padding-top: 0;}
}
@media only screen and (max-width: 600px) {
    .well.medium {padding-left: 0rem; padding-right: 0rem; border-left: 0; border-right: 0; border-bottom: 0; border-top: 1px solid rgba(0,0,0,0.15)!important;}
    .well .floatlink {right: 0rem;}
    #checkout_steps {margin: 0 auto; width: 9rem;}
    #checkout_steps li {display: block; width: auto; border-top: none; border-left: 1px solid rgba(0,0,0,0.15); margin-left: 8px;}
    #checkout_steps li > ::before {margin: -16px 0 0 -8px;}
    #checkout_steps li > span > * {transform: translate(17px, -20px);}
    #checkout_steps li > span > a:before {height: 100%; left: 0; width: 2rem; margin-left: -2rem;}
}

/*------------------------*/
/* docs
/*------------------------*/

section.docs {margin-top: -2rem;}
section.docs .container {display: flex; gap: 3rem;}
section.docs .container .menu {border-right: 1px solid rgba(0,0,0,0.1); min-width: 20rem; padding: 2rem 0 3.2rem;}
section.docs .container .content {min-width: 0; min-height: 0; padding: 2rem 0; flex-grow: 1; width: 100%; }
section.docs .container .content > * {max-width: 45rem;}
section.docs .container .content p img[src$=".svg"] {width: 100%; max-width: 30rem; margin: 3rem 0;}
section.docs .container .content .breadcrumbs {text-align: left;}
section.docs .container .content h1 {font-size: 2rem;}
section.docs .container .content h2 {clear: left;}
section.docs .container .content h3 a {color: black;}
section.docs .container .content table tr > * {text-align: left;}
section.docs .container .content table tr > *:not(:first-child) {padding-left: 2rem;}
section.docs .container .content table tr > th {font-weight: 600;}
section.docs .container .content strong {font-weight: 600;}
section.docs .container .content .featured_image {width: 13rem; display: block;}
section.docs .container .content .featured_image img {display: block; border: 1px solid rgba(0, 0, 0,0.1);}
@media only screen and (min-width: 600px) {
    section.docs .container .content .featured_image {float: right; margin-inline: 2rem 0;}
}

section.docs .container .menu h3 {display: none;}
section.docs .container .menu ul.nestedmenu {margin-left: 0; margin-right: 5rem; top: 9rem; position: sticky;}
header.sticky + section.docs .container .menu ul.nestedmenu {position: sticky;}
body:not(.mobilemenu) header.sticky + section.docs .container .menu ul.nestedmenu {animation: slidedown 1s ease-in-out;}
section.docs .container .menu ul.nestedmenu li {list-style: none; padding: 0.25rem 0;}
section.docs .container .menu ul.nestedmenu li > ul {display: none; padding-left: 1rem; }
section.docs .container .menu ul.nestedmenu li > a::before {content: " "; display: inline-block; margin-right: 0.75rem; width: 0.5rem; text-align: center;}
section.docs .container .menu ul.nestedmenu > li > a::before {content: "-";}
section.docs .container .menu ul.nestedmenu li.haschildren > a::before {content: "›";}
section.docs .container .menu ul.nestedmenu li.haschildren.active > a::before {transform: rotate(90deg) translateY(-0.1rem);}
section.docs .container .menu ul.nestedmenu li.active > ul {display: block; position: relative; top: 0.35rem;}
section.docs .container .menu ul.nestedmenu li.active > ul li:last-child {margin-bottom: 0.75rem;}
section.docs .container .menu ul.nestedmenu li > a {color: inherit; text-decoration: none; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; display: block;}
section.docs .container .menu ul.nestedmenu li.current > a {color: #000; font-weight: 600;}

@media (max-width: 65rem) {
    section.docs {margin-top: -2rem;}
    section.docs .container {flex-direction: column-reverse; gap: 3rem;}
    section.docs .container .menu {width: 100%; max-width: 100%; padding-bottom: 0; border: 0;}
    section.docs .container .menu h3 {display: block;}
    section.docs .container .content {padding-bottom: 0;}
    section.docs .container .menu ul.nestedmenu {margin-top: 0.75rem;}
}


.single.textcolumn table {text-align: center; margin: 0; border-collapse: collapse; margin-block: 1.5rem;}
.single.textcolumn table td, 
.single.textcolumn table th {padding: 0.3rem 0.5rem 0.4rem; line-height: 1.2; font-size: 0.9rem;}
.single.textcolumn table th {border: 1px solid black;}
.single.textcolumn table td {border: 1px solid rgba(0, 0, 0,0.1);}
.single.textcolumn table {border-bottom: 1px solid rgba(0, 0, 0,0.1);}
.single.textcolumn table th {
  background: black; color: white; position: relative; line-height: 1.1; padding: 0.4rem 0.75rem 0.5rem;
}
.single.textcolumn table tr:last-child td {border-bottom: 0;} 

ul.subitems {margin-left: 0!important;}
ul.subitems + ul.subitems {margin-top: -1.4rem;}
ul.subitems > li {display: flex; align-items: center; gap: 2rem;}
ul.subitems > li h3 {margin-top: 0;}
ul.subitems > li p.image {min-width: 13rem; width: 13rem;}
ul.subitems > li p.image img {border: 1px solid rgba(0, 0, 0,0.1);}


.singleproduct {width: calc(33.33% - 2rem); display: block; float: left; margin-right: 2rem; padding-block: 2rem; color: black;}

.singleproduct .imgholder {border: 1px solid rgba(0, 0, 0,0.1); margin: 0.25rem 0;}
.singleproduct .imgholder img {display: block;}
.singleproduct .title {color: rgba(0,0,0,0.5); display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.singleproduct > * {display: block;}
.singleproduct .buttonholder {display: flex; flex-direction: row-reverse; width: 100%; justify-content: space-between; margin-block: 0.5rem 0; align-items: center;}
.singleproduct .price {text-align: right; font-weight: 600;}
.singleproduct .text {display: none;}
.singleproduct .button {display: inline-block!important; width: auto;}

.singleproduct + h2 {padding-top: 3rem;}

@media (max-width: 700px) {
    .singleproduct {width: calc(50% - 1.5rem); margin-right: 1.5rem;}
}


.shortcode-youtube {
    position: relative; display: inline-block;
}
.shortcode-youtube::before, .shortcode-youtube::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
} 
.shortcode-youtube::before {
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgaGVpZ2h0PSIxMDAlIgogICB2ZXJzaW9uPSIxLjEiCiAgIHZpZXdCb3g9IjAgMCA2OCA0OCIKICAgd2lkdGg9IjEwMCUiCiAgIGlkPSJzdmc2IgogICBzb2RpcG9kaTpkb2NuYW1lPSJ5b3V0dWJlX2J1dHRvbi5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTIuNSAoMjA2MGVjMWY5ZiwgMjAyMC0wNC0wOCkiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEyIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzMTAiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxIgogICAgIG9iamVjdHRvbGVyYW5jZT0iMTAiCiAgICAgZ3JpZHRvbGVyYW5jZT0iMTAiCiAgICAgZ3VpZGV0b2xlcmFuY2U9IjEwIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSI3MzgiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iNDgwIgogICAgIGlkPSJuYW1lZHZpZXc4IgogICAgIHNob3dncmlkPSJmYWxzZSIKICAgICBpbmtzY2FwZTp6b29tPSI0LjE3NjQ3MDYiCiAgICAgaW5rc2NhcGU6Y3g9IjM0IgogICAgIGlua3NjYXBlOmN5PSIyNCIKICAgICBpbmtzY2FwZTp3aW5kb3cteD0iMCIKICAgICBpbmtzY2FwZTp3aW5kb3cteT0iMCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIwIgogICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9InN2ZzYiIC8+CiAgPHBhdGgKICAgICBjbGFzcz0ieXRwLWxhcmdlLXBsYXktYnV0dG9uLWJnIgogICAgIGQ9Ik02Ni41Miw3Ljc0Yy0wLjc4LTIuOTMtMi40OS01LjQxLTUuNDItNi4xOUM1NS43OSwuMTMsMzQsMCwzNCwwUzEyLjIxLC4xMyw2LjksMS41NSBDMy45NywyLjMzLDIuMjcsNC44MSwxLjQ4LDcuNzRDMC4wNiwxMy4wNSwwLDI0LDAsMjRzMC4wNiwxMC45NSwxLjQ4LDE2LjI2YzAuNzgsMi45MywyLjQ5LDUuNDEsNS40Miw2LjE5IEMxMi4yMSw0Ny44NywzNCw0OCwzNCw0OHMyMS43OS0wLjEzLDI3LjEtMS41NWMyLjkzLTAuNzgsNC42NC0zLjI2LDUuNDItNi4xOUM2Ny45NCwzNC45NSw2OCwyNCw2OCwyNFM2Ny45NCwxMy4wNSw2Ni41Miw3Ljc0eiIKICAgICBmaWxsPSIjMjEyMTIxIgogICAgIGZpbGwtb3BhY2l0eT0iMC44IgogICAgIGlkPSJwYXRoMiIgLz4KICA8cGF0aAogICAgIGQ9Ik0gNDUsMjQgMjcsMTQgMjcsMzQiCiAgICAgZmlsbD0iI2ZmZiIKICAgICBpZD0icGF0aDQiIC8+Cjwvc3ZnPgo=') center center / auto 4rem no-repeat;
}
.shortcode-youtube:hover::before {
    background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG9kaS5zb3VyY2Vmb3JnZS5uZXQvRFREL3NvZGlwb2RpLTAuZHRkIgogICB4bWxuczppbmtzY2FwZT0iaHR0cDovL3d3dy5pbmtzY2FwZS5vcmcvbmFtZXNwYWNlcy9pbmtzY2FwZSIKICAgaGVpZ2h0PSIxMDAlIgogICB2ZXJzaW9uPSIxLjEiCiAgIHZpZXdCb3g9IjAgMCA2OCA0OCIKICAgd2lkdGg9IjEwMCUiCiAgIGlkPSJzdmc2IgogICBzb2RpcG9kaTpkb2NuYW1lPSJ5b3V0dWJlX2J1dHRvbl9ob3Zlci5zdmciCiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTIuNSAoMjA2MGVjMWY5ZiwgMjAyMC0wNC0wOCkiPgogIDxtZXRhZGF0YQogICAgIGlkPSJtZXRhZGF0YTEyIj4KICAgIDxyZGY6UkRGPgogICAgICA8Y2M6V29yawogICAgICAgICByZGY6YWJvdXQ9IiI+CiAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9zdmcreG1sPC9kYzpmb3JtYXQ+CiAgICAgICAgPGRjOnR5cGUKICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPgogICAgICAgIDxkYzp0aXRsZT48L2RjOnRpdGxlPgogICAgICA8L2NjOldvcms+CiAgICA8L3JkZjpSREY+CiAgPC9tZXRhZGF0YT4KICA8ZGVmcwogICAgIGlkPSJkZWZzMTAiIC8+CiAgPHNvZGlwb2RpOm5hbWVkdmlldwogICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIKICAgICBib3JkZXJjb2xvcj0iIzY2NjY2NiIKICAgICBib3JkZXJvcGFjaXR5PSIxIgogICAgIG9iamVjdHRvbGVyYW5jZT0iMTAiCiAgICAgZ3JpZHRvbGVyYW5jZT0iMTAiCiAgICAgZ3VpZGV0b2xlcmFuY2U9IjEwIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwIgogICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSI3MzgiCiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iNDgwIgogICAgIGlkPSJuYW1lZHZpZXc4IgogICAgIHNob3dncmlkPSJmYWxzZSIKICAgICBpbmtzY2FwZTp6b29tPSI1LjE3MTY0NTIiCiAgICAgaW5rc2NhcGU6Y3g9IjExLjc2MzM2MyIKICAgICBpbmtzY2FwZTpjeT0iMjQiCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmc2IiAvPgogIDxwYXRoCiAgICAgY2xhc3M9Inl0cC1sYXJnZS1wbGF5LWJ1dHRvbi1iZyIKICAgICBkPSJNNjYuNTIsNy43NGMtMC43OC0yLjkzLTIuNDktNS40MS01LjQyLTYuMTlDNTUuNzksLjEzLDM0LDAsMzQsMFMxMi4yMSwuMTMsNi45LDEuNTUgQzMuOTcsMi4zMywyLjI3LDQuODEsMS40OCw3Ljc0QzAuMDYsMTMuMDUsMCwyNCwwLDI0czAuMDYsMTAuOTUsMS40OCwxNi4yNmMwLjc4LDIuOTMsMi40OSw1LjQxLDUuNDIsNi4xOSBDMTIuMjEsNDcuODcsMzQsNDgsMzQsNDhzMjEuNzktMC4xMywyNy4xLTEuNTVjMi45My0wLjc4LDQuNjQtMy4yNiw1LjQyLTYuMTlDNjcuOTQsMzQuOTUsNjgsMjQsNjgsMjRTNjcuOTQsMTMuMDUsNjYuNTIsNy43NHoiCiAgICAgZmlsbD0iI2ZmMDAwMCIKICAgICBpZD0icGF0aDIiIC8+CiAgPHBhdGgKICAgICBkPSJNIDQ1LDI0IDI3LDE0IDI3LDM0IgogICAgIGZpbGw9IiNmZmYiCiAgICAgaWQ9InBhdGg0IiAvPgo8L3N2Zz4K');
}
.shortcode-youtube::after {
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiCiAgIHhtbG5zOnNvZGlwb2RpPSJodHRwOi8vc29kaXBvZGkuc291cmNlZm9yZ2UubmV0L0RURC9zb2RpcG9kaS0wLmR0ZCIKICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiCiAgIHZpZXdCb3g9IjAgMCAzMTcuMTAwMDEgOTguMDk5OTk4IgogICB2ZXJzaW9uPSIxLjEiCiAgIGlkPSJzdmcxNSIKICAgc29kaXBvZGk6ZG9jbmFtZT0ieW91dHViZS5zdmciCiAgIHdpZHRoPSIzMTcuMTAwMDEiCiAgIGhlaWdodD0iOTguMDk5OTk4IgogICBpbmtzY2FwZTp2ZXJzaW9uPSIwLjkyLjUgKDIwNjBlYzFmOWYsIDIwMjAtMDQtMDgpIj4KICA8bWV0YWRhdGEKICAgICBpZD0ibWV0YWRhdGEyMSI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGU+PC9kYzp0aXRsZT4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGRlZnMKICAgICBpZD0iZGVmczE5IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMSIKICAgICBvYmplY3R0b2xlcmFuY2U9IjEwIgogICAgIGdyaWR0b2xlcmFuY2U9IjEwIgogICAgIGd1aWRldG9sZXJhbmNlPSIxMCIKICAgICBpbmtzY2FwZTpwYWdlb3BhY2l0eT0iMCIKICAgICBpbmtzY2FwZTpwYWdlc2hhZG93PSIyIgogICAgIGlua3NjYXBlOndpbmRvdy13aWR0aD0iMjU2MCIKICAgICBpbmtzY2FwZTp3aW5kb3ctaGVpZ2h0PSIxMzkxIgogICAgIGlkPSJuYW1lZHZpZXcxNyIKICAgICBzaG93Z3JpZD0iZmFsc2UiCiAgICAgZml0LW1hcmdpbi10b3A9IjAiCiAgICAgZml0LW1hcmdpbi1sZWZ0PSIwIgogICAgIGZpdC1tYXJnaW4tcmlnaHQ9IjAiCiAgICAgZml0LW1hcmdpbi1ib3R0b209IjAiCiAgICAgaW5rc2NhcGU6em9vbT0iMi43Njg5Mjc4IgogICAgIGlua3NjYXBlOmN4PSI3My43MjIzMDEiCiAgICAgaW5rc2NhcGU6Y3k9IjQ3LjgiCiAgICAgaW5rc2NhcGU6d2luZG93LXg9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjAiCiAgICAgaW5rc2NhcGU6d2luZG93LW1heGltaXplZD0iMSIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJzdmcxNSIgLz4KICA8ZwogICAgIGlkPSJnMTEiCiAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZiIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTczLC00LjcpIj4KICAgIDxwYXRoCiAgICAgICBkPSJtIDIyNy45LDk5LjcgYyAtMy4xLC0yLjEgLTUuMywtNS4zIC02LjYsLTkuNyAtMS4zLC00LjQgLTEuOSwtMTAuMiAtMS45LC0xNy41IHYgLTkuOSBjIDAsLTcuMyAwLjcsLTEzLjMgMi4yLC0xNy43IDEuNSwtNC41IDMuOCwtNy43IDcsLTkuNyAzLjIsLTIgNy4zLC0zLjEgMTIuNCwtMy4xIDUsMCA5LjEsMSAxMi4xLDMuMSAzLDIuMSA1LjMsNS4zIDYuNyw5LjcgMS40LDQuNCAyLjEsMTAuMyAyLjEsMTcuNiB2IDkuOSBjIDAsNy4zIC0wLjcsMTMuMSAtMi4xLDE3LjUgLTEuNCw0LjQgLTMuNiw3LjYgLTYuNyw5LjcgLTMuMSwyIC03LjMsMy4xIC0xMi41LDMuMSAtNS40LDAuMSAtOS42LC0xIC0xMi43LC0zIHogTSAyNDUuMiw4OSBjIDAuOSwtMi4yIDEuMywtNS45IDEuMywtMTAuOSBWIDU2LjggYyAwLC00LjkgLTAuNCwtOC41IC0xLjMsLTEwLjcgLTAuOSwtMi4zIC0yLjQsLTMuNCAtNC41LC0zLjQgLTIuMSwwIC0zLjUsMS4xIC00LjQsMy40IC0wLjksMi4zIC0xLjMsNS44IC0xLjMsMTAuNyB2IDIxLjMgYyAwLDUgMC40LDguNyAxLjIsMTAuOSAwLjgsMi4yIDIuMywzLjMgNC41LDMuMyAyLjEsMCAzLjYsLTEuMSA0LjUsLTMuMyB6IE0gNDY0LjQsNzIuNyB2IDMuNSBsIDAuNCw5LjkgYyAwLjMsMi4yIDAuOCwzLjggMS42LDQuOCAwLjgsMSAyLjEsMS41IDMuOCwxLjUgMi4zLDAgMy45LC0wLjkgNC43LC0yLjcgMC45LC0xLjggMS4zLC00LjggMS40LC04LjkgbCAxMy4zLDAuOCBjIDAuMSwwLjYgMC4xLDEuNCAwLjEsMi40IDAsNi4zIC0xLjcsMTEgLTUuMiwxNC4xIC0zLjUsMy4xIC04LjMsNC43IC0xNC42LDQuNyAtNy42LDAgLTEyLjksLTIuNCAtMTUuOSwtNy4xIC0zLC00LjcgLTQuNiwtMTIuMSAtNC42LC0yMiBWIDYxLjYgYyAwLjM0LC0xNyAzLjMzLC0yOS40NSAyMC45LC0yOS41IDUuMywwIDkuMywxIDEyLjEsMi45IDIuOCwxLjkgNC44LDQuOSA2LDkgMS4yLDQuMSAxLjcsOS43IDEuNywxNi45IHYgMTEuNyBoIC0yNS43IHogbSAyLC0yOC44IGMgLTAuOCwxIC0xLjMsMi41IC0xLjYsNC43IC0wLjMsMi4yIC0wLjQsMTAgLTAuNCwxMCB2IDQuOSBoIDExLjIgdiAtNC45IGMgMCw0LjkgLTAuMSwtNy43IC0wLjQsLTEwIC0wLjMsLTIuMyAtMC44LC0zLjkgLTEuNiwtNC44IC0wLjgsLTAuOSAtMiwtMS40IC0zLjYsLTEuNCAtMS43LDAuMSAtMi45LDAuNiAtMy42LDEuNSB6IE0gMTkwLjUsNzEuNCAxNzMsOC4yIGggMTUuMyBjIDAsMCA3LjE1LDMxLjcgOS42LDQ2LjYgaCAwLjQgYyAyLjc4LC0xNS44MiA5LjgsLTQ2LjYgOS44LC00Ni42IGggMTUuMyBsIC0xNy43LDYzLjEgdiAzMC4zIEggMTkwLjYgViA3MS40IFoiCiAgICAgICBpZD0icGF0aDYiCiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIgogICAgICAgc3R5bGU9ImZpbGw6I2ZmZmZmZiIgLz4KICAgIDxwYXRoCiAgICAgICBpZD0iQSIKICAgICAgIGQ9Im0gMzExLjUsMzMuNCB2IDY4LjMgaCAtMTIgbCAtMS4zLC04LjQgaCAtMC4zIGMgLTMuMyw2LjMgLTguMiw5LjUgLTE0LjcsOS41IC0xMS43NywtMC4wMyAtMTMuMDgsLTEwIC0xMy4yLC0xOC40IHYgLTUxIGggMTUuNCB2IDUwLjEgYyAwLDMgMC4zLDUuMiAxLDYuNSAxLjQyLDIuNzggNS4xLDIuMDcgNy4xLDAuNyBhIDgsOCAwIDAgMCAyLjcsLTMuMSBWIDMzLjQgWiIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmIiAvPgogICAgPHBhdGgKICAgICAgIGQ9Ik0gMzUzLjMsMjAuNiBIIDMzOCB2IDgxLjEgSCAzMjMgViAyMC42IEggMzA3LjcgViA4LjIgaCA0NS41IHYgMTIuNCB6IG0gODcuOSwyMy43IEMgNDQwLjMsNDAgNDM4LjgsMzYuOSA0MzYuNywzNC45IDQzNC42LDMzIDQzMS44LDMyIDQyOC4xLDMyIGEgMTQuMSwxNC4xIDAgMCAwIC03LjksMi40IGMgLTIuNSwxLjYgLTQuMywzLjcgLTUuNyw2LjMgaCAtMC4xIHYgLTM2IGggLTE0LjggdiA5Ni45IGggMTIuNyBsIDEuNiwtNi41IGggMC4zIGEgMTQsMTQgMCAwIDAgNS4zLDUuNSBjIDIuNCwxLjMgNSwyIDcuOSwyIDUuMiwwIDksLTIuNCAxMS41LC03LjIgMi40LC00LjggMy43LC0xMi4zIDMuNywtMjIuNCBWIDYyLjIgYyAwLC03LjYgLTAuNSwtMTMuNiAtMS40LC0xNy45IHogbSAtMTQuMSwyNy45IGMgMCw1IC0wLjIsOC45IC0wLjYsMTEuNyAtMC40LDIuOCAtMS4xLDQuOCAtMi4xLDYgLTEsMS4yIC0yLjMsMS44IC0zLjksMS44IC0zLjEsLTAuMSAtNC44NiwtMS41IC02LjEsLTMuNiBWIDQ5LjMgYyAwLjUsLTEuOSAxLjQsLTMuNCAyLjcsLTQuNiAyLjIsLTIuNDcgNS45NiwtMi41IDcuNywwIDAuOSwxLjIgMS40LDMuMyAxLjgsNi4yIDAuMywyLjkgMC41LDcgMC41LDEyLjQgeiIKICAgICAgIGlkPSJwYXRoOSIKICAgICAgIGlua3NjYXBlOmNvbm5lY3Rvci1jdXJ2YXR1cmU9IjAiCiAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmIiAvPgogIDwvZz4KICA8dXNlCiAgICAgeGxpbms6aHJlZj0iI0EiCiAgICAgeD0iNzguOTAwMDAyIgogICAgIGlkPSJ1c2UxMyIKICAgICB5PSIwIgogICAgIHdpZHRoPSIxMDAlIgogICAgIGhlaWdodD0iMTAwJSIKICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTczLC00LjcpIgogICAgIHN0eWxlPSJmaWxsOiNmZmZmZmYiIC8+Cjwvc3ZnPgo=') calc(100% - 1rem) calc(100% - 1rem) / auto 2rem no-repeat;
}
.shortcode-youtube img {
    display: block;
}
@media (max-width: 45rem) {
    .shortcode-youtube::before {background-size: auto 12vw;}
    .shortcode-youtube::after {background-position: calc(100% - 3vw) calc(100% - 3vw); background-size: auto 6vw;}
}

.smooth-on { border-radius: .5rem; background: #f5f5f5; padding: 1rem 1.5rem;  display: grid; gap: 0 2rem; grid-template-columns: auto auto; }
.smooth-on > a { display: flex; max-width: 12rem; grid-row: span 2/3; grid-column: 2; }

@media only screen and (max-width: 600px) {
    .smooth-on { grid-template-columns: 1fr; padding: 0 1rem 0 ;}
    .smooth-on > h2 { order: -2;}
    .smooth-on > a { grid-row: unset; grid-column: unset; order: -1; margin: 0 0 1rem;}
}