:root {
    --primary-color: #004F9F;
    --secondary-color: #9CA9B1;
    --text-color: #0a0a0a;
    --link-color: #5C6E78;
    --essity-color: #00005A;
}

@font-face {
    font-display: swap;
    font-family: Asap;
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/asap.woff2") format("woff2")
}

@font-face {
    font-display: swap;
    font-family: "Asap Bold";
    font-style: normal;
    src: url("../fonts/asap-bold.woff2") format("woff2")
}

@font-face {
    font-display: swap;
    font-family: Icomoon;
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Icomoon.woff2") format("woff2")
}

@font-face {
    font-display: swap;
    font-family: RobotoRegular;
    src: url("../fonts/Roboto.woff2") format("woff2")
}

@font-face {
    font-display: swap;
    font-style: normal;
    font-weight: normal;
    font-family: Interstate;
    src: url("../fonts/InterstateRegular.otf") format("opentype")
}

@font-face {
    font-display: swap;
    font-style: normal;
    font-weight: bold;
    font-family: InterstateBold;
    src: url("../fonts/InterstateBold.otf") format("opentype")
}

@font-face {
    font-display: swap;
    font-style: normal;
    font-weight: normal;
    font-family: InterstateLight;
    src: url("../fonts/InterstateLight.otf") format("opentype")
}

@font-face {
    font-family: BlackDiamond;
    src: url("../fonts/BlackDiamond.otf") format("opentype")
}

@font-face {
    font-display: swap;
    font-family: Exo2;
    font-style: normal;
    font-weight: normal;
    src: url("../fonts/Exo2-Regular.woff") format("woff")
}

@font-face {
    font-display: swap;
    font-family: "Cabin Condensed";
    font-style: normal;
    font-weight: bold;
    src: url("../fonts/Exo2-SemiBold.woff") format("woff")
}
/* cabin-condensed-regular - latin */
@font-face {
    font-family: 'Cabin Condensed';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/cabin-condensed-v19-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('../fonts/cabin-condensed-v19-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-condensed-v19-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-regular.woff') format('woff'), /* Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/cabin-condensed-v19-latin-regular.svg#CabinCondensed') format('svg'); /* Legacy iOS */
}
/* cabin-condensed-600 - latin */
@font-face {
    font-family: 'Cabin Condensed';
    font-style: normal;
    font-weight: 600;
    src: url('../fonts/cabin-condensed-v19-latin-600.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('../fonts/cabin-condensed-v19-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-condensed-v19-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-600.woff') format('woff'), /* Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/cabin-condensed-v19-latin-600.svg#CabinCondensed') format('svg'); /* Legacy iOS */
}
/* cabin-condensed-500 - latin */
@font-face {
    font-family: 'Cabin Condensed';
    font-style: normal;
    font-weight: 500;
    src: url('../fonts/cabin-condensed-v19-latin-500.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('../fonts/cabin-condensed-v19-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-condensed-v19-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-500.woff') format('woff'), /* Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/cabin-condensed-v19-latin-500.svg#CabinCondensed') format('svg'); /* Legacy iOS */
}
/* cabin-condensed-700 - latin */
@font-face {
    font-family: 'Cabin Condensed';
    font-style: normal;
    font-weight: 700;
    src: url('../fonts/cabin-condensed-v19-latin-700.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('../fonts/cabin-condensed-v19-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/cabin-condensed-v19-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-700.woff') format('woff'), /* Modern Browsers */
    url('../fonts/cabin-condensed-v19-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/cabin-condensed-v19-latin-700.svg#CabinCondensed') format('svg'); /* Legacy iOS */
}


html,
body {
    height: 100%;
    font-family: sans-serif;
}

main {
    width: 100%;
    display: flex;
    flex-direction: column;
    font-size: 18px;
    line-height: 22px;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
    color: var(--text-color);
    flex-grow: 1;
}

h1,h2,h3,h4,h5,h6 {
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
    color: var(--primary-color);
}

h1 {
    font-size: 30px;
    line-height: 30px;
    letter-spacing: -1px;
}

h2 {
    font-size: 25px;
    line-height: 25px;
    letter-spacing: -0.5px;
    margin-bottom: 20px;
}

h1,h2,h3 {
    text-transform: uppercase;
}

h3 {
    font-weight: 500;
    font-size: 24px;
}
@media (min-width: 640px) {
    h1 {
        font-size: 48px;
        line-height: 48px;
    }

    h2 {
        font-size: 40px;
        line-height: 44px;
    }
}

footer h1,footer h2,footer h3,footer h4,footer h5,footer h6 {
    color: #FFFFFF;
}

.is-homepage h1 {
    display: none !important;
}

main p {
    margin-bottom: 20px;
    font-size: 18px;
}

.meta-menu span,
.meta-menu a {
    color: var(--link-color);
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

main strong, b, .strong {
    font-weight: bold;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

a {
    color: var(--primary-color);
    font-size: 18px;
}
a:hover {
    color: var(--link-color);
    text-decoration: underline;
}

main ul:not(.accordion):last-child {
    margin-bottom: 0;
}

main ul:not(.accordion) {
    margin: 0 0 20px;
    padding: 0;
}

main ul:not(.accordion) li:not(.orbit-slide) {
    font-size: 18px;
    line-height: 22px;
    margin: 0 0 5px 45px;
    padding: 0;
}
.dropdown-pane {
    width: 100%;
    max-width: 85rem;
    margin: 0 auto !important;
    left: 0% !important;
    right: 0% !important;
}

.dropdown-pane a {
    color: var(--link-color);
}

.dropdown-pane a:hover {
    color: var(--primary-color);
    text-decoration: none;
}

.dropdown-pane .column {
    height: 6px;
}

.mega-menu .menu {
    background: none;
}

.mega-menu > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    margin-left: 10px;
    margin-top: 11%;
}

div[class^='youtube-player'] {
    position: relative;
    margin: 50px 0;
    width: 100%;
}

div[class^='youtube-player'] img,
div[class^='youtube-player'] > iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
}

div[class^='youtube-player'] .play {
    width: 100%;
    aspect-ratio: 16 / 9;
    left: 0;
    top: 0;
    position: absolute;
    background: url(../img/media-play-pause-resume.png) no-repeat;
    background-position: center center;
    background-size: 150px;
    cursor: pointer;
}

.btn {
    font-size: 18px;
    line-height: 22px;
    cursor: pointer;
    border-radius: 100px;
    display: inline-block;
    min-width: 130px;
    margin-bottom: 0;
    margin-top: 16px;
    text-align: center;
    background-color: var(--primary-color);
    border: 1px solid var(--primary-color);
    color: #fff;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
    font-weight: normal;
    padding: 8px 18px 8px;
    padding-right: 18px;
    position: relative;
    z-index: 1;
}

.btn:hover {
    background-color: #FFFFFF;
    color: var(--primary-color);
    text-decoration: none;
}

:not(.card) > .btn:not(.searchelement) {
    margin-bottom: 50px;
    margin-top: 0;
}

.accordion-content {
    background-color: #e6eff5;
    color: var(--text-color);
}

.accordion-title {
    font-size: 18px;
    line-height: 22px;
    background-color: var(--primary-color);
    color: rgb(255, 255, 255);
    cursor: pointer;height: 100%;
    position: relative;
    display: flex;
    padding: 15px;
    -webkit-box-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    align-items: center;
    margin: 0px;
    &:hover,
    &:active,
    &:focus {
        text-decoration: none;
        background-color: var(--essity-color) !important;
        color: #FFFFFF !important;
    }
}

.accordion-title::before {
    content: "\e600";
    font-size: 1rem;
    align-items: center;
    margin-right: 0.5rem;
    font-family: "Icomoon";
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-feature-settings: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    transition: transform 200ms ease-in-out;
}

.is-active>.accordion-title::before {
    content: "\e600";
    transform: rotateZ(180deg);
}

.top-bar {
    padding: 0 .9375rem;
}

.top-bar, .top-bar ul {
    background-color: #FFFFFF;
}

.top-bar ul {
    font-size: 16px;
    list-style: none;
    padding: 0;
}

.top-bar ul li {
    padding: 10px;
    width: auto;
}

.top-bar ul li:first-child {
    padding-left: 0;
}

.top-bar ul li a {
    float: left;
    margin-left: 0;
    margin-right: 5px;
    font-size: 20px;
    line-height: 26px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    text-align: left;
    color: rgb(92, 110, 120);
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", 微软雅黑, "Hiragino Sans GB", 冬青黑体, SimSun, 宋体, STXihei, 华文细黑, Amiri, sans-serif;
    text-decoration: none;
    padding-right: 2em !important;
    font-weight: bold;
}
.top-bar ul li a:first-child {
    padding-left: 0 !important;
}
.top-bar ul li a:hover {
    color: var(--primary-color);
}
@media (min-width: 640px) {
    #logo-container {
        justify-content: start !important;
    }
}

.site-navigation {
    border-bottom: 1px solid var(--secondary-color);
    background-color: #FFFFFF;
    padding: 27px 0;
}
@media (min-width: 640px) {
    .site-navigation {
        border-top: 1px solid var(--secondary-color);
        padding: 0;
    }
}

.site-navigation.no-bottom-border {
    border-bottom: none !important;
}

.home-link {
    font-size: 0px;
    color: transparent;
    user-select: none;
}

.home:hover {
    text-decoration: none;
}

.home-link::before {
    position: absolute;
    color: rgb(152, 158, 163);
    content: "";
    font-family: Icomoon;
    font-size: 23px;
    left: 36px;
}

.thebreadcrumbs {
    padding: 15px 0 50px 0;
    z-index: 1;
}

.thebreadcrumbs ul li:not(:first-child):before {
    content: "" !important;
    margin-right: 15px;
    font-family: "Icomoon";
    display: inline-block !important;
    position: relative;
    top: 1px;
}

.thebreadcrumbs li:not(:last-child)::after {
    display: none !important;
}

.thebreadcrumbs ul {
    float: left;
    margin: 0;
    padding: 0;
}

.thebreadcrumbs ul li {
    color: #989ea3;
    float: left;
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0.02em;
    list-style: none;
    margin-right: 0px !important;
    margin-left: 28px !important;
}

.thebreadcrumbs ul li a {
    color: #989ea3;
}

.thebreadcrumbs ul li a:not(.home) {
    text-decoration: underline;
}

.thebreadcrumbs ul li {
    display: none;
}

.thebreadcrumbs ul li:first-child,
.thebreadcrumbs ul li:nth-last-child(2) {
    display: block;
}


.is-homepage .thebreadcrumbs ul li:first-child {
    display: none;
}

@media (min-width: 640px) {
    .thebreadcrumbs ul li {
        display: block;
    }
}

.posrel {
    position: relative;
}

.posabs {
    position: absolute;
}

@media (max-width: 640px) {
    .is-homepage .thebreadcrumbs {
        height: 15px !important;
        font-size: 1px;
        padding: 0 !important;
    }
}

.sticky-container {
    z-index: 12;
}
.sticky {
    z-index: 12;
}

.mobile-logo {
    top: 68%;
    left: 52%;
    transform: translate(-50%, -50%);
}

.off-canvas {
    background: #FFFFFF;
    box-shadow: none !important;
}
.off-canvas ul li {
    margin-left: 0 !important;
}

main {
    width: 100%;
    background-color: #FFFFFF;
}

@media (min-width: 640px) {
    main {
        margin-top: 15px;
    }
}

footer {
    margin-top: 25px;
}
footer {
    position: relative;
    color: #fff;
}

.footer-columns {
    background-color: var(--secondary-color);
    padding: 55px 0 20px 0;
    font-size: 18px;
    line-height: 22px;
}

.footer-columns h3 {
    margin-bottom: 30px;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
    font-weight: normal;
    font-size: 28px;
    line-height: 0.9em;
}

.footer-columns p {
    line-height: 1.4em;
    font-size: 18px;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

.footer-columns a {
    color: #FFFFFF;
}

.footer-columns a:hover {
    text-decoration: underline;
}

.footer-columns a.btn {
    color: #FFFFFF;
    background: transparent;
    border-color: #FFFFFF;
}

.footer-columns a.btn:hover {
    color: var(--secondary-color);
    background: #FFFFFF;
    text-decoration: none;
}

.footer-columns > .grid-container > .grid-x > .cell {
    margin-bottom: 50px;
}

.linkedin {
    margin-top:20px;
}

main.grid-container .grid-x:last-child,
main picture img {
    margin-bottom: 30px;
}

@media (min-width: 1024px) {
    .footer-columns > .grid-container > .grid-x > .cell {
        margin-bottom: 0;
    }

    .linkedin {
        margin-top:50px;
    }
}

.Button--backToTop {
    background-color: var(--primary-color);
    border-radius: 3px;
    bottom: 50px;
    color: #fff;
    cursor: pointer;
    display: none;
    padding: 10px;
    position: fixed;
    right: 50px;
    transition: transform 0.5s, opacity 0.3s;
    z-index: 50;
    transform: translateY(100px);
    opacity: 0;
    &:hover {
        color: #FFFFFF;
        text-decoration: none;
        &:after {
            transform: translateY(-10px);
        }
    }
}

.Button--backToTop:after {
    display: block;
    content: "\e61d";
    font-family: "Icomoon";
    color: #FFFFFF;
    text-decoration: none;
    transition: transform 0.3s ease-in-out;
}

.language-switcher {
    text-align: right;
    font-size: 18px;
}

.language-switcher a,
.country-switcher a {
    color: var(--link-color);
}
.language-switcher a.active,
.country-switcher a.active {
    font-weight: bold;
}
.language-switcher a:hover,
.country-switcher a:hover {
    color: var(--primary-color);
    text-decoration: none;
}

@media (min-width: 640px) {
    .language-switcher {
        padding-right: 15px;
    }
}

.brand-text {
    color: var(--primary-color);
    font-size: 26px;
    white-space: nowrap;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

.meta-menu {
    padding: 12px 0 0 0;
    background-color: #FFFFFF;
}

.btn.searchelement {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 18px;
    color: var(--primary-color);
    background-color: #FFFFFF;
    min-width: auto;
}

.searchelement {
    margin: 0;
}

.searchinput {
    border: 0 !important;
    box-shadow: none !important;
    margin-right: 0 !important;
}

.dropdown-pane {
    top: 55px !important;
    left: 0 !important;
    width: 100%;
}

.menu-mainitem {
    position: relative;
}

.arrow {
    height: 12px;
    position: absolute;
    width: 24px;
    z-index: 10001;
    bottom: -4px;
    left: 40%;
    transform: translateX(-40%);
    display: none;
}

.arrow:before {
    border-bottom: 12px solid #9CA9B1;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    content: "";
    height: 0;
    position: absolute;
    top: -1px;
    width: 0;
}

.arrow:after {
    border-bottom: 12px solid #fff;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    content: "";
    height: 0;
    position: absolute;
    width: 0;
}

.linkedin:hover {
    text-decoration: none !important;
}

.footer-toolbar {
    padding: 12px 0;
    border-bottom: 1px solid var(--secondary-color);
    border-top: 1px solid var(--secondary-color);
    font-size: 18px;
    color: var(--link-color);
}

.footer-textlinks a,
.linkedin {
    margin-bottom: 5px;
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

.copyright {
    text-align: right;
    color: var(--link-color);
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

.footer-navigation li a {
    padding-left: 0;
    color: var(--link-color);
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif;
}

.footer-navigation li a:hover {
    color: var(--primary-color);
    text-decoration: none !important;
}

.footer-bottom {
    padding: 35px 0;
}

#offCanvas {
}

#offCanvas .grid-container {
    padding-top: 22px;
}

.mobile-meta {
    background-color: #f8f9fa;
    width: 100% !important;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.footer-disclaimer p {
    color: var(--essity-color);
    font-size: 14px;
    line-height: 18px;
    font-family: RobotoRegular, Arial, Helvetica, "Microsoft Yahei", 微软雅黑, "Hiragino Sans GB", 冬青黑体, SimSun, 宋体, STXihei, 华文细黑, Amiri, sans-serif;
    margin: 0;
}

.footer-disclaimer a {
    color: var(--essity-color);
    text-decoration: underline;
    font-size: 14px;
}

.footer-disclaimer a:hover {
    color: var(--link-color);
}

.contact {
    text-align: right;
    margin-right: 0 !important;
}

.contact a {
    color: var(--link-color);
    font-size: 18px;
}

.contact a:hover {
    color: var(--primary-color);
    text-decoration: none;
}

.menu-icon {
    margin: 0 20px 0 10px;
}

.menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: var(--link-color);
    -webkit-box-shadow: 0 7px 0 var(--link-color), 0 14px 0 var(--link-color);
    box-shadow: 0 7px 0 var(--link-color), 0 14px 0 var(--link-color);
    content: "";
}

#primarynav {
    margin: 5px !important;
}
#primarynav li {
    margin-left: 0px !important;
}

.orbit-container {
    position: relative;
}

.orbit-overlay {
    position: relative;
    padding: 20px;
    &.transparent {
        background-color: transparent;
    }
    &.semi-opaque {
        background-color: color-mix(in srgb, var(--primary-color) 70%, transparent);
        & .btn {
            border-color: #FFFFFF;
        }
    }
    &.opaque {
        background-color: var(--primary-color);
        & .btn {
            border-color: #FFFFFF;
        }
    }
    &.light {
        & h2,p {
            color: #FFFFFF !important;
        }
    }
    &.dark {
        & h2,p {
            color: var(--text-color);
        }
    }
    &.primary {
        & h2,p {
            color: var(--primary-color);
        }
    }
    &.initial {
        & h2 {
            color: var(--primary-color);
        }
        & p {
            color: var(--text-color);
        }
    }
}

.orbit-image {
    object-fit: cover;
    aspect-ratio: 1 / 1;
}
@media(min-width: 640px) {
    .orbit-image {
        object-fit: initial;
        aspect-ratio: 3 / 1;
    }
    .orbit-overlay {
        position: absolute;
        width: calc(50% - 45px);
        right: 45px;
        top: 50%;
        transform: translateY(-50%);
    }
}

.teaser:hover,
.teaser *:hover {
    text-decoration: none !important;
}

.teaser {
    margin-bottom: 50px;
}

.teaser .card {
    text-align: left;
    border: none;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding-top: 25px;
    margin-bottom: 25px;
}

.teaser .card .card-top {
    display: flex;
    flex-direction: column;
    justify-content: start;
    flex-grow: 1;
}

.teaser .card .btn {
    margin-top: -10px;
    flex-shrink: 1;
}

.teaser .card img {
    padding-bottom: 15px;
}

.teaser .card p {
    margin-bottom: 0;
}

.two-columns {
    margin-top: 25px;
    margin-bottom: 25px;
    & .bg-light {
        background-color: #FFFFFF;
        &.transparent {
            background-color: color-mix(in srgb, #FFFFFF 0%, transparent);
        }
        &.semi-opaque {
            background-color: color-mix(in srgb, #FFFFFF 75%, transparent);
        }
        &.opaque {
            background-color: color-mix(in srgb, #FFFFFF 100%, transparent);
        }
    }
    & .bg-dark {
        background-color: var(--secondary-color);
        &.transparent {
            background-color: color-mix(in srgb, var(--secondary-color) 0%, transparent);
        }
        &.semi-opaque {
            background-color: color-mix(in srgb, var(--secondary-color) 75%, transparent);
        }
        &.opaque {
            background-color: color-mix(in srgb, var(--secondary-color) 100%, transparent);
        }
    }
    & .bg-primary {
        background-color: var(--primary-color);
        &.transparent {
            background-color: color-mix(in srgb, var(--primary-color) 0%, transparent);
        }
        &.semi-opaque {
            background-color: color-mix(in srgb, var(--primary-color) 75%, transparent);
        }
        &.opaque {
            background-color: color-mix(in srgb, var(--primary-color) 100%, transparent);
        }
    }
    & .text-light {
        & h2,p {
            color: #FFFFFF !important;
        }
    }
    & .text-dark {
        & h2,p {
            color: var(--text-color);
        }
    }
    & .text-primary {
        & h2,p {
            color: var(--primary-color);
        }
    }
}

.product-gallery {
    background-color: #f8f9fa;
}

.product-description {
    padding: 25px 0;
}

@media (min-width: 640px) {
    .product-container {
        margin-bottom: 50px;
    }
    .product-gallery {
        margin-left: 15px;
        padding: 30px 20px;
    }
    .product-description {
        padding: 0;
    }
}

.thumbnail-slider {
    display: flex;
    gap: 0.5rem;
    margin-top: 1rem;
    overflow-x: auto;
}

.thumbnail-slider.vertical {
    flex-direction: column;
    height: 100%;
    overflow-y: auto;
    margin-top: 0;
}

.thumbnail-container {
    flex-shrink: 0;
}

.thumbnail-image {
    width: 60px;
    height: auto;
    cursor: pointer;
    border: 2px solid transparent;
    transition: border 0.2s;
}

.thumbnail-image.active {
    border-color: #0078d4;
}

.zoom-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    max-width: 410px;
    aspect-ratio: 1 / 1;
    border: 1px solid #ccc;
}

.zoom-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.1s ease;
    transform-origin: center center;
}

.display-title {
    padding-bottom: 25px;
}

.off-canvas-wrapper {
    height: 100%;
}

#mainImage:hover {
    cursor: pointer;
}

.showScrollBtn {
    transform: translateY(0);
    opacity: 1;
}
#ot-sdk-cookie-policy * {
    color: #000000 !important;
}
#ot-sdk-cookie-policy h1,
#ot-sdk-cookie-policy h2,
#ot-sdk-cookie-policy h3,
#ot-sdk-cookie-policy h4,
#ot-sdk-cookie-policy h5,
#ot-sdk-cookie-policy h6 {
    font-family: "Cabin Condensed", Arial, Helvetica, "Microsoft Yahei", "微软雅黑", "Hiragino Sans GB", "冬青黑体", "SimSun", "宋体", STXihei, "华文细黑", Amiri, sans-serif !important;
    font-weight: 500 !important;
    color: var(--primary-color) !important;
}

#ot-sdk-cookie-policy h3 {
    text-transform: uppercase !important;
    font-size: 24px !important;
    line-height: 33.6px !important;
    font-style: normal !important;
}

#ot-sdk-cookie-policy h4 {
    font-size: 25px !important;
    font-weight: 400 !important;
    line-height: 35px !important;
    font-style: normal !important;
}

.s-v > .grid-container > .grid-y > .cell {
    height: calc(100% - 75px);
}

.start-language-link {
    text-transform: uppercase;
    font-size: 24px;
}

.language-at,
.language-ch {
    text-align: center;
}

.language-at {
    margin-bottom: 25px;
}

.language-at > div:first-child,
.language-ch > div:first-child {
    margin-bottom: 15px;
}
.language-at > div:last-child,
.language-ch > div:last-child {
    max-height: 153px;
}

@media (min-width: 640px) {
    .language-at,
    .language-ch {
        text-align: left;
    }
    .language-at > div:first-child,
    .language-ch > div:first-child {
        margin-bottom: 0;
    }
}


.spacer-tiny {
    height: 50px;
}
.spacer-small {
    height: 100px;
}
.spacer-medium {
    height: 150px;
}
.spacer-large {
    height: 200px;
}
.spacer-huge {
    height: 250px;
}

.spacerimg {
    max-width: 100%;
}

@media (min-width: 640px) {

    .spacer-tiny {
        height: 0px;
    }
    .spacer-small {
        height: 25px;
    }
    .spacer-medium {
        height: 50px;
    }
    .spacer-large {
        height: 75px;
    }
    .spacer-huge {
        height: 100px;
    }
}

#offCanvas {
    box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.5) !important;
}

.off-canvas {
    z-index: 13;
}

.off-canvas.is-transition-push {
    z-index: 13;
}

body:not(.is-top-page) .grid-container.full {
    width: 100%;
}

figure.table {
    overflow-x: scroll;
}

#onetrust-banner-sdk .ot-sdk-container, #onetrust-pc-sdk .ot-sdk-container, #ot-sdk-cookie-policy .ot-sdk-container {
    padding: 0 !important;
}

@media (min-width: 400px) {
    #onetrust-banner-sdk .ot-sdk-container, #onetrust-pc-sdk .ot-sdk-container, #ot-sdk-cookie-policy .ot-sdk-container {
        width: 100% !important;
    }
}

@media (min-width: 640px) {
    figure.table {
        overflow-x: auto;
    }
}

.leuko-hp-fld {
    display: none;
}