.thd {
--thd-teal: var(--toscano-brand-teal, #009a9d);
--thd-deep: var(--toscano-brand-deep, #032d35);
--thd-accent-dark: var(--toscano-text-accent, #007b7e);
--thd-muted: var(--toscano-neutral-muted, #7b7b7b);
--thd-ink: #343536; --thd-pre-bg: var(--thd-teal);
--thd-pre-color: #ffffff;
--thd-bar-bg: #ffffff;
--thd-logo: var(--thd-teal);
--thd-nav: var(--thd-ink);
--thd-nav-hover: var(--thd-teal);
--thd-accent: var(--thd-teal);
--thd-mega-bg: #ffffff;
--thd-intro: var(--thd-muted);
--thd-card-border: #e8eaeb;
--thd-card-icon: var(--thd-teal);
--thd-card-title: var(--thd-deep);
--thd-card-text: var(--thd-muted);
--thd-cat-bg: #f6f6f6;
--thd-cat: var(--thd-deep);
--thd-overlay: rgba(3, 45, 53, .28);
--thd-pre-h: 50px;
--thd-main-h: 80px;
--thd-logo-w: 165px;
--thd-top: 0px;
position: relative;
z-index: 1000;
font-family: "Inter", sans-serif;
-webkit-font-smoothing: antialiased;
}
.thd *,
.thd *::before,
.thd *::after {
box-sizing: border-box;
}
.thd button {
font-family: inherit;
} .thd .thd__bar button,
.thd .thd__drawer button,
.thd .thd__lang-btn,
.thd .thd__m-link,
.thd .thd__m-close {
text-transform: none;
letter-spacing: normal;
} .thd .thd__spacer {
height: var(--thd-h, 130px);
}
.thd.thd--static .thd__spacer {
display: none;
}
.thd .thd__bar {
position: relative;
z-index: 1001;
}
.thd.thd--hide .thd__bar,
.thd.thd--fixed .thd__bar {
position: fixed;
top: var(--thd-top);
left: 0;
right: 0;
transition: transform .5s cubic-bezier(.22, 1, .36, 1);
will-change: transform;
}
body.admin-bar .thd {
--thd-top: 32px;
}
@media (max-width: 782px) {
body.admin-bar .thd {
--thd-top: 46px;
}
}
@media (max-width: 600px) {
body.admin-bar .thd {
--thd-top: 0px;
}
} .thd.is-compact .thd__bar {
transform: translateY(calc(var(--thd-pre-real, var(--thd-pre-h)) * -1));
} .thd.is-hidden .thd__bar {
transform: translateY(calc(-100% - 12px));
} .elementor-editor-active .thd .thd__bar {
position: relative;
top: 0;
transform: none;
}
.elementor-editor-active .thd .thd__spacer {
display: none;
} .thd .thd__pre {
position: relative;
background: var(--thd-pre-bg);
color: var(--thd-pre-color);
} .thd .thd__pre-shader {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
opacity: 0;
transition: opacity 1.2s ease;
pointer-events: none;
}
.thd .thd__pre.is-gl .thd__pre-shader {
opacity: 1;
}
.thd .thd__pre-inner {
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 11px;
max-width: 1240px;
height: var(--thd-pre-h);
margin: 0 auto;
padding: 0 20px;
}
.thd .thd__pre-links {
display: flex;
align-items: center;
gap: 11px;
}
.thd .thd__pre a,
.thd .thd__pre .thd__lang-btn {
position: relative;
padding: 10px;
font-family: "Inter", sans-serif;
font-size: 16px; font-weight: 400;
line-height: 1.59;
letter-spacing: 0;
text-transform: none;
color: var(--thd-pre-color);
text-decoration: none;
} .thd .thd__pre-links a::after {
content: "";
position: absolute;
left: 10px;
right: 10px;
bottom: 8px;
height: 1px;
background: currentColor;
transform: scaleX(0);
transform-origin: 100% 50%;
transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__pre-links a:hover::after,
.thd .thd__pre-links a:focus-visible::after {
transform: scaleX(1);
transform-origin: 0 50%;
}
.thd .thd__pre a:hover,
.thd .thd__pre a:focus-visible {
color: var(--thd-pre-color);
} .thd .thd__lang {
position: relative;
}
.thd .thd__lang-btn {
display: inline-flex;
align-items: center;
gap: 10px;
margin: 0;
background: none;
border: 0;
border-radius: 0;
box-shadow: none;
cursor: pointer;
}
.thd .thd__lang-btn:hover,
.thd .thd__lang-btn:focus {
background: none;
color: var(--thd-pre-color);
}
.thd .thd__lang-list {
position: absolute;
top: calc(100% + 4px);
right: 0;
z-index: 5;
min-width: 160px;
margin: 0;
padding: 6px;
list-style: none;
background: #ffffff;
border-radius: 10px;
box-shadow: 0 16px 36px rgba(3, 45, 53, .16);
opacity: 0;
visibility: hidden;
transform: translateY(-6px);
transition: opacity .2s ease, transform .25s cubic-bezier(.22, 1, .36, 1), visibility 0s linear .25s;
}
.thd .thd__lang.is-open .thd__lang-list {
opacity: 1;
visibility: visible;
transform: none;
transition: opacity .2s ease, transform .25s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__lang-list li {
margin: 0;
padding: 0;
}
.thd .thd__lang-list a {
display: block;
padding: 8px 12px;
border-radius: 6px;
font-size: 15px;
color: var(--thd-ink);
}
.thd .thd__lang-list a:hover,
.thd .thd__lang-list a:focus-visible {
background: #f0f9f9;
color: var(--thd-teal);
}
.thd .thd__lang-list a.is-active {
font-weight: 700;
color: var(--thd-teal);
} .thd .thd__main {
position: relative;
background: var(--thd-bar-bg);
box-shadow: 0 6px 9.4px 0 rgba(0, 0, 0, .04);
transition: background-color .35s ease, box-shadow .35s ease;
} .thd.is-compact .thd__main {
background: color-mix(in srgb, var(--thd-bar-bg) 82%, transparent);
-webkit-backdrop-filter: blur(16px) saturate(1.6);
backdrop-filter: blur(16px) saturate(1.6);
box-shadow: 0 10px 30px rgba(3, 45, 53, .08);
}
.thd.is-mega .thd__main {
background: var(--thd-bar-bg);
}
.thd .thd__main-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
max-width: 1240px;
height: var(--thd-main-h);
margin: 0 auto;
padding: 0 20px;
transition: height .4s cubic-bezier(.22, 1, .36, 1);
}
.thd.is-compact .thd__main-inner {
height: calc(var(--thd-main-h) - 14px);
}
.thd .thd__logo {
display: block;
flex: 0 0 auto;
width: var(--thd-logo-w);
color: var(--thd-logo);
line-height: 0;
transition: transform .4s cubic-bezier(.22, 1, .36, 1);
transform-origin: 0 50%;
}
.thd.is-compact .thd__logo {
transform: scale(.88);
}
.thd .thd__logo > svg,
.thd .thd__logo > img {
display: block;
width: 100%;
height: auto;
max-width: none;
} .thd .thd__logo {
position: relative;
}
.thd .thd__logo-fx {
position: absolute;
inset: -14px -18px;
pointer-events: none;
}
.thd .thd__logo-fx svg {
display: block;
width: 100%;
height: 100%;
overflow: visible;
}
.thd .thd__spark {
fill: none;
stroke: #7fd8da;
stroke-width: 1.4;
stroke-linecap: round;
stroke-linejoin: round;
filter: drop-shadow(0 0 3px rgba(127, 216, 218, .95));
}
.thd .thd__spark--core {
stroke: #ffffff;
stroke-width: .7;
filter: none;
} .thd.thd--logo-fx .thd__logo.is-zap > svg {
animation: thd-logo-glow .9s ease;
}
.thd.thd--logo-fx .thd__logo.is-zap > svg path {
transform-box: fill-box;
transform-origin: 50% 100%;
animation: thd-letter .6s cubic-bezier(.34, 1.56, .64, 1) both;
}
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(2) { animation-delay: .045s; }
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(3) { animation-delay: .09s; }
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(4) { animation-delay: .135s; }
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(5) { animation-delay: .18s; }
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(6) { animation-delay: .225s; }
.thd.thd--logo-fx .thd__logo.is-zap > svg path:nth-child(7) { animation-delay: .27s; }
.thd.thd--logo-fx .thd__logo.is-zap > img {
animation: thd-logo-jolt .5s cubic-bezier(.34, 1.56, .64, 1), thd-logo-glow .9s ease;
}
@keyframes thd-letter {
0%,
100% {
transform: none;
}
35% {
transform: translateY(-3px) scaleY(1.06);
fill: #2fc4c7;
}
65% {
transform: translateY(.5px) scaleY(.98);
}
}
@keyframes thd-logo-glow {
0%,
100% {
filter: none;
}
30% {
filter: drop-shadow(0 0 6px rgba(127, 216, 218, .75));
}
}
@keyframes thd-logo-jolt {
0%,
100% {
transform: none;
}
30% {
transform: translateY(-2px) skewX(-4deg);
}
60% {
transform: translateY(0) skewX(2deg);
}
} .thd .thd__nav {
position: relative;
}
.thd .thd__menu {
display: flex;
align-items: center;
gap: 15px;
margin: 0;
padding: 0;
list-style: none;
}
.thd .thd__item {
margin: 0;
padding: 0;
}
.thd .thd__link {
display: inline-flex;
align-items: center;
gap: 6px;
margin: 0;
padding: 10px;
background: none;
border: 0;
border-radius: 0;
box-shadow: none;
font-family: "Inter", sans-serif;
font-size: 16px; font-weight: 400;
line-height: 1.59;
letter-spacing: 0;
text-transform: none;
color: var(--thd-nav);
text-decoration: none;
white-space: nowrap;
cursor: pointer;
transition: color .2s ease;
}
.thd .thd__link:hover,
.thd .thd__link:focus,
.thd .thd__link:focus-visible,
.thd .thd__item.is-open > .thd__link,
.thd .thd__item.is-current > .thd__link {
background: none;
color: var(--thd-nav-hover);
text-decoration: none;
}
.thd .thd__link:focus-visible {
outline: 2px solid var(--thd-accent);
outline-offset: 2px;
border-radius: 4px;
}
.thd .thd__link-icon {
display: inline-flex;
align-items: center;
color: var(--thd-accent);
font-size: 14px;
line-height: 1;
}
.thd .thd__link-icon svg {
width: 14px;
height: 14px;
fill: currentColor;
} .thd.thd--fx .thd__link:hover .thd__link-icon {
animation: thd-zap .6s ease;
}
@keyframes thd-zap {
0%,
100% {
transform: none;
filter: none;
}
30% {
transform: translateY(-2px) scale(1.25);
filter: drop-shadow(0 0 6px var(--thd-accent));
}
55% {
transform: scale(.95);
}
}
.thd .thd__chev {
display: block;
width: 9.5px;
height: 7px;
color: #c9c9c9;
transition: transform .35s cubic-bezier(.22, 1, .36, 1), color .2s ease;
}
.thd .thd__chev--down {
transform: rotate(180deg);
}
.thd .thd__item.is-open .thd__chev--down {
transform: rotate(0deg);
color: var(--thd-accent);
}
.thd .thd__pre .thd__chev {
color: currentColor;
}
.thd .thd__lang.is-open .thd__chev--down {
transform: rotate(0deg);
} .thd .thd__indicator {
position: absolute;
bottom: 6px;
left: 0;
width: var(--thd-ind-w, 0px);
height: 1.5px;
border-radius: 2px;
background: linear-gradient(90deg, transparent, var(--thd-accent) 30%, var(--thd-accent) 70%, transparent);
box-shadow: 0 0 6px 0 color-mix(in srgb, var(--thd-accent) 35%, transparent);
opacity: 0;
transform: translateX(var(--thd-ind-x, 0px));
transition: transform .45s cubic-bezier(.22, 1, .36, 1), width .45s cubic-bezier(.22, 1, .36, 1), opacity .3s ease;
pointer-events: none;
}
.thd .thd__indicator.is-on {
opacity: .8;
}
.thd .thd__indicator.no-anim {
transition: none;
}
.thd:not(.thd--fx) .thd__indicator {
display: none;
} .thd .thd__search {
flex: 0 0 auto;
width: 262px;
}
.thd .thd__search .dgwt-wcas-search-wrapp {
width: 100%;
min-width: 0;
max-width: none;
margin: 0;
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp {
position: relative;
padding: 0;
background: transparent;
border: 0;
border-radius: 0;
}
.thd .thd__search .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input {
width: calc(100% - 46px);
height: 40px;
margin: 0;
padding: 0 14px;
background: #ffffff;
border: 1px solid #d4cecd; border-radius: 4px;
box-shadow: none;
font-family: "Inter", sans-serif;
font-size: 15px;
font-style: normal;
line-height: 38px;
color: var(--thd-ink);
transition: border-color .2s ease, box-shadow .25s ease;
}
.thd .thd__search .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input::placeholder {
color: #b3adac;
font-style: normal;
opacity: 1;
}
.thd .thd__search .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input:focus {
border-color: var(--thd-accent);
box-shadow: 0 0 0 4px color-mix(in srgb, var(--thd-accent) 16%, transparent);
outline: none;
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit {
position: absolute;
top: 0;
right: 0;
left: auto;
display: flex;
align-items: center;
justify-content: center;
width: 39px;
min-width: 0;
height: 40px;
min-height: 0;
margin: 0;
padding: 0;
background: var(--thd-accent);
border: 0;
border-radius: 4px;
box-shadow: none;
opacity: 1;
transition: background-color .2s ease, transform .2s ease;
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit::before {
display: none;
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit:hover {
background: var(--thd-accent-dark);
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit svg {
width: 19px;
height: 19px;
fill: #ffffff;
transition: transform .3s cubic-bezier(.34, 1.56, .64, 1);
}
.thd .thd__search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit:hover svg {
transform: scale(1.12) rotate(-8deg);
}
.thd .thd__search .dgwt-wcas-preloader {
right: 52px;
} .thd .thd__progress {
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 2px;
overflow: visible;
pointer-events: none;
}
.thd .thd__progress span {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: calc(var(--thd-p, 0) * 100%);
background: linear-gradient(90deg, color-mix(in srgb, var(--thd-accent) 30%, transparent), var(--thd-accent) 60%, #7fd8da);
border-radius: 0 2px 2px 0;
} .thd .thd__progress span::after {
content: "";
position: absolute;
top: 50%;
right: -3px;
width: 6px;
height: 6px;
border-radius: 50%;
background: #ffffff;
box-shadow: 0 0 8px 3px #7fd8da, 0 0 18px 6px color-mix(in srgb, var(--thd-accent) 60%, transparent);
transform: translateY(-50%);
opacity: var(--thd-p-head, 0);
transition: opacity .3s ease;
} .thd .thd__mega {
position: absolute;
top: 100%;
left: 0;
right: 0;
background: var(--thd-mega-bg);
border-top: 1px solid #f0f0f0;
box-shadow: 0 30px 50px -10px rgba(3, 45, 53, .14);
opacity: 0;
visibility: hidden;
transition: opacity .25s ease, visibility 0s linear .3s;
}
.thd.is-mega .thd__mega {
opacity: 1;
visibility: visible;
transition: opacity .2s ease;
}
.thd .thd__mega-clip {
height: 0;
max-height: calc(100vh - var(--thd-mega-top, 130px));
overflow: hidden;
overscroll-behavior: contain;
}
.thd.is-mega .thd__mega-clip.is-settled {
overflow-y: auto;
}
.thd .thd__panel {
display: none;
}
.thd .thd__panel.is-active {
display: block;
}
.thd .thd__panel-inner {
max-width: 1240px;
margin: 0 auto;
padding: 44px 20px 52px;
}
.thd .thd__panel-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
margin-bottom: 24px;
}
.thd .thd__panel--products .thd__panel-head {
margin-bottom: 40px;
}
.thd .thd__intro {
margin: 0;
font-family: "Inter", sans-serif;
font-size: 16px;
font-weight: 400;
line-height: 1.59;
color: var(--thd-intro);
}
.thd .thd__panel-btn {
display: inline-flex;
flex: 0 0 auto;
align-items: center;
gap: 12px;
padding: 10px 24px;
background: #eef8f8;
border-radius: 8px;
font-family: "Inter", sans-serif;
font-size: 15px;
font-weight: 700;
line-height: 20px;
color: var(--thd-accent-dark);
text-decoration: none;
transition: background-color .2s ease, color .2s ease;
}
.thd .thd__panel-btn span:first-child {
text-decoration: underline;
text-underline-offset: 3px;
}
.thd .thd__panel-btn:hover,
.thd .thd__panel-btn:focus-visible {
background: var(--thd-accent);
color: #ffffff;
}
.thd .thd__panel-btn-arrow {
display: inline-block;
transition: transform .2s ease;
}
.thd .thd__panel-btn:hover .thd__panel-btn-arrow {
transform: translateX(4px);
} .thd .thd__cards {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 20px;
max-width: 1200px;
margin: 0;
padding: 0;
list-style: none;
}
.thd .thd__cards-item {
display: flex;
margin: 0;
padding: 0;
}
.thd .thd__card {
position: relative;
display: flex;
flex: 1 1 auto;
align-items: center;
gap: 18px;
min-width: 0;
padding: 22px 24px 22px 18px;
background: #ffffff;
border: 1px solid var(--thd-card-border);
border-radius: 12px;
color: inherit;
text-decoration: none;
transition: border-color .25s ease, box-shadow .3s ease, transform .3s cubic-bezier(.22, 1, .36, 1), background-color .25s ease;
}
.thd a.thd__card:hover,
.thd a.thd__card:focus-visible {
border-color: color-mix(in srgb, var(--thd-accent) 35%, #ffffff);
background: #fbfefe;
box-shadow: 0 14px 30px rgba(3, 45, 53, .08);
transform: translateY(-2px);
text-decoration: none;
}
.thd .thd__card-icon {
display: flex;
flex: 0 0 52px;
align-items: center;
justify-content: center;
width: 52px;
height: 52px;
border-radius: 12px;
background: #f0f9f9;
color: var(--thd-card-icon);
font-size: 22px;
line-height: 1;
transition: background-color .25s ease, color .25s ease, transform .4s cubic-bezier(.34, 1.56, .64, 1);
}
.thd .thd__card-icon svg,
.thd .thd__card-icon img {
width: 30px;
height: 30px;
max-width: none;
fill: currentColor;
}
.thd a.thd__card:hover .thd__card-icon {
background: var(--thd-accent);
color: #ffffff;
transform: rotate(-6deg) scale(1.05);
}
.thd .thd__card-body {
display: flex;
flex: 1 1 auto;
flex-direction: column;
gap: 4px;
min-width: 0;
}
.thd .thd__card-title {
font-family: "Inter", sans-serif;
font-size: 16px;
font-weight: 700;
line-height: 1.3;
color: var(--thd-card-title);
}
.thd .thd__card-text {
font-family: "Inter", sans-serif;
font-size: 15px;
font-weight: 400;
line-height: 1.47;
color: var(--thd-card-text);
}
.thd .thd__card-arrow {
flex: 0 0 auto;
font-size: 18px;
color: var(--thd-accent);
opacity: 0;
transform: translateX(-8px);
transition: opacity .25s ease, transform .3s cubic-bezier(.22, 1, .36, 1);
}
.thd a.thd__card:hover .thd__card-arrow {
opacity: 1;
transform: none;
} .thd .thd__brands {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 20px;
max-width: 1200px;
}
.thd .thd__brand {
min-width: 0;
}
.thd .thd__brand-name {
position: relative;
display: block;
margin: 0 0 24px;
padding: 0 0 14px;
color: var(--thd-brand);
text-decoration: none;
}
.thd .thd__brand-name::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 2px;
background: color-mix(in srgb, var(--thd-brand) 55%, #ffffff);
transform-origin: 0 50%;
transition: transform .5s cubic-bezier(.22, 1, .36, 1), background-color .3s ease;
}
.thd a.thd__brand-name:hover::after {
background: var(--thd-brand);
}
.thd .thd__brand-text {
font-family: "Inter", sans-serif;
font-size: 27px;
font-weight: 800;
line-height: 1.1;
letter-spacing: -.01em;
text-transform: uppercase;
color: var(--thd-brand);
}
.thd .thd__brand-text sup {
margin-left: 2px;
font-size: .42em;
font-weight: 700;
vertical-align: super;
}
.thd .thd__brand-logo {
display: block;
height: 30px;
width: auto;
max-width: 100%;
}
.thd .thd__cats {
display: flex;
flex-direction: column;
gap: 10px;
margin: 0;
padding: 0;
list-style: none;
}
.thd .thd__cat {
margin: 0;
padding: 0;
background: var(--thd-cat-bg);
border-radius: 10px;
transition: background-color .25s ease;
}
.thd .thd__cat:hover,
.thd .thd__cat.is-open {
background: color-mix(in srgb, var(--thd-brand) 7%, var(--thd-cat-bg));
}
.thd .thd__cat-row {
display: flex;
align-items: center;
}
.thd .thd__cat-link {
display: flex;
flex: 1 1 auto;
align-items: center;
gap: 12px;
min-width: 0;
padding: 8px 12px 8px 8px;
color: var(--thd-cat);
text-decoration: none;
}
.thd .thd__cat-icon {
display: flex;
flex: 0 0 34px;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
border-radius: 7px;
background: color-mix(in srgb, var(--thd-brand) 18%, #ffffff);
color: var(--thd-brand);
font-size: 15px;
line-height: 1;
transition: transform .4s cubic-bezier(.34, 1.56, .64, 1), background-color .25s ease, color .25s ease;
}
.thd .thd__cat-icon svg,
.thd .thd__cat-icon img {
width: 18px;
height: 18px;
max-width: none;
fill: currentColor;
}
.thd .thd__cat:hover .thd__cat-icon {
background: var(--thd-brand);
color: #ffffff;
transform: scale(1.06) rotate(-6deg);
}
.thd .thd__cat-title {
font-family: "Inter", sans-serif;
font-size: 16px;
font-weight: 700;
line-height: 1.3;
color: var(--thd-cat);
}
.thd .thd__cat-toggle {
display: flex;
flex: 0 0 40px;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
margin: 0 4px 0 0;
padding: 0;
background: none;
border: 0;
border-radius: 8px;
box-shadow: none;
color: #b9b9b9;
cursor: pointer;
}
.thd .thd__cat-toggle:hover,
.thd .thd__cat-toggle:focus {
background: none;
color: var(--thd-brand);
}
.thd .thd__cat-toggle:focus-visible {
outline: 2px solid var(--thd-brand);
outline-offset: -2px;
}
.thd .thd__chev--side {
transform: rotate(90deg);
color: currentColor;
}
.thd .thd__cat.is-open .thd__chev--side {
transform: rotate(180deg);
} .thd .thd__sub-wrap {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows .4s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__cat.is-open .thd__sub-wrap {
grid-template-rows: 1fr;
}
.thd .thd__sub {
min-height: 0;
margin: 0;
padding: 0 16px 0 54px;
overflow: hidden;
list-style: none;
transition: padding .4s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__cat.is-open .thd__sub {
padding-bottom: 12px;
}
.thd .thd__sub li {
margin: 0;
padding: 0;
}
.thd .thd__sub a {
display: block;
padding: 5px 0;
font-family: "Inter", sans-serif;
font-size: 15px;
line-height: 1.4;
color: var(--thd-muted);
text-decoration: none;
transition: color .2s ease, transform .25s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__sub a:hover,
.thd .thd__sub a:focus-visible {
color: var(--thd-brand);
transform: translateX(4px);
} .thd .thd__overlay {
position: fixed;
inset: 0;
z-index: 999;
background: var(--thd-overlay);
-webkit-backdrop-filter: blur(2px);
backdrop-filter: blur(2px);
opacity: 0;
visibility: hidden;
transition: opacity .35s ease, visibility 0s linear .35s;
}
.thd.is-mega .thd__overlay,
.thd.is-drawer .thd__overlay {
opacity: 1;
visibility: visible;
transition: opacity .35s ease;
} .thd .thd__mobile {
display: none;
align-items: center;
gap: 6px;
}
.thd .thd__burger {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 5px;
width: 44px;
height: 44px;
margin: 0;
padding: 0;
background: none;
border: 0;
border-radius: 8px;
box-shadow: none;
cursor: pointer;
}
.thd .thd__burger:hover,
.thd .thd__burger:focus {
background: none;
}
.thd .thd__burger:focus-visible {
outline: 2px solid var(--thd-accent);
}
.thd .thd__burger span {
display: block;
width: 22px;
height: 2px;
border-radius: 2px;
background: var(--thd-ink);
transition: transform .4s cubic-bezier(.22, 1, .36, 1), opacity .25s ease, width .3s ease;
}
.thd .thd__burger span:nth-child(3) {
width: 16px;
align-self: center;
transform: translateX(3px);
}
.thd.is-drawer .thd__burger span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.thd.is-drawer .thd__burger span:nth-child(2) {
opacity: 0;
transform: scaleX(.2);
}
.thd.is-drawer .thd__burger span:nth-child(3) {
width: 22px;
transform: translateY(-7px) rotate(-45deg);
} .thd .thd__search-m .dgwt-wcas-search-wrapp {
min-width: 0;
margin: 0;
}
.thd .thd__search-m .dgwt-wcas-search-icon svg,
.thd .thd__search-m .dgwt-wcas-ico-magnifier {
width: 22px;
height: 22px;
fill: var(--thd-ink);
} .thd .thd__search-m a.dgwt-wcas-search-icon,
.thd .thd__search-m a.js-dgwt-wcas-enable-mobile-form {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px;
min-height: 44px;
margin: -11px;
}
.thd .thd__drawer {
position: fixed;
top: var(--thd-drawer-top, 80px);
right: 0;
bottom: 0;
z-index: 1000;
display: none;
width: min(440px, 100%);
overflow-y: auto;
overscroll-behavior: contain;
background: #ffffff;
box-shadow: -20px 0 40px rgba(3, 45, 53, .12);
transform: translateX(100%);
visibility: hidden;
transition: transform .5s cubic-bezier(.22, 1, .36, 1), visibility 0s linear .5s;
}
.thd.is-drawer .thd__drawer {
transform: none;
visibility: visible;
transition: transform .5s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__drawer-inner {
padding: 8px 20px 40px;
}
.thd .thd__m-menu {
margin: 0;
padding: 0;
list-style: none;
}
.thd .thd__m-item {
margin: 0;
padding: 0;
border-bottom: 1px solid #f0f0f0;
}
.thd .thd__m-link {
display: flex;
align-items: center;
gap: 10px;
width: 100%;
margin: 0;
padding: 18px 4px;
background: none;
border: 0;
border-radius: 0;
box-shadow: none;
font-family: "Inter", sans-serif;
font-size: 18px;
font-weight: 500;
line-height: 1.3;
letter-spacing: 0;
text-align: left;
text-transform: none;
color: var(--thd-ink);
text-decoration: none;
cursor: pointer;
}
.thd .thd__m-link:hover,
.thd .thd__m-link:focus {
background: none;
color: var(--thd-teal);
}
.thd .thd__m-link .thd__chev {
margin-left: auto;
}
.thd .thd__m-item.is-open > .thd__m-link {
color: var(--thd-teal);
}
.thd .thd__m-item.is-open .thd__m-link .thd__chev--down {
transform: rotate(0deg);
color: var(--thd-teal);
}
.thd .thd__m-panel {
display: grid;
grid-template-rows: 0fr;
transition: grid-template-rows .45s cubic-bezier(.22, 1, .36, 1);
}
.thd .thd__m-item.is-open > .thd__m-panel {
grid-template-rows: 1fr;
}
.thd .thd__m-panel-inner {
min-height: 0;
overflow: hidden;
}
.thd .thd__m-panel .thd__panel-head {
flex-direction: column;
align-items: flex-start;
gap: 14px;
margin: 0 0 16px;
} .thd .thd__m-panel .thd__panel--products .thd__panel-head,
.thd .thd__m-panel .thd__panel-head:has(.thd__panel-btn) {
margin-bottom: 30px;
} .thd .thd__m-item.is-open > .thd__m-toggle {
position: sticky;
top: 0;
z-index: 2;
background: #ffffff;
box-shadow: 0 1px 0 #f0f0f0;
} .thd .thd__m-close {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
width: 100%;
margin: 4px 0 20px;
padding: 12px 16px;
background: #f0f9f9;
border: 1px solid #e0f4f4;
border-radius: 10px;
box-shadow: none;
font-family: "Inter", sans-serif;
font-size: 15px;
font-weight: 600;
line-height: 1.3;
letter-spacing: 0;
text-transform: none;
color: var(--thd-teal);
cursor: pointer;
transition: background-color .2s ease, color .2s ease;
}
.thd .thd__m-close:hover,
.thd .thd__m-close:focus {
background: var(--thd-teal);
border-color: var(--thd-teal);
color: #ffffff;
}
.thd .thd__m-close .thd__chev {
color: currentColor;
} .thd .thd__m-panel .thd__intro {
padding: 6px 2px 4px;
font-size: 15px;
line-height: 1.6;
}
.thd .thd__m-panel .thd__panel-head {
margin-bottom: 22px;
}
.thd .thd__m-panel .thd__cards {
grid-template-columns: minmax(0, 1fr);
gap: 10px;
padding-bottom: 18px;
}
.thd .thd__m-panel .thd__card {
gap: 14px;
padding: 12px 14px 12px 12px;
}
.thd .thd__m-panel .thd__card-icon {
flex-basis: 42px;
width: 42px;
height: 42px;
font-size: 18px;
}
.thd .thd__m-panel .thd__card-icon svg,
.thd .thd__m-panel .thd__card-icon img {
width: 24px;
height: 24px;
}
.thd .thd__m-panel .thd__card-title {
font-size: 15px;
}
.thd .thd__m-panel .thd__card-text {
font-size: 13px;
}
.thd .thd__m-panel .thd__brands {
grid-template-columns: minmax(0, 1fr);
gap: 22px;
padding-bottom: 20px;
}
.thd .thd__m-panel .thd__brand-name {
margin-bottom: 12px;
padding-bottom: 8px;
}
.thd .thd__m-panel .thd__brand-text {
font-size: 21px;
}
.thd .thd__m-panel .thd__cats {
gap: 8px;
}
.thd .thd__m-foot {
display: flex;
flex-wrap: wrap;
gap: 6px 20px;
margin-top: 26px;
}
.thd .thd__m-foot-link {
font-size: 15px;
color: var(--thd-muted);
text-decoration: none;
}
.thd .thd__m-foot-link:hover {
color: var(--thd-teal);
}
.thd .thd__m-langs {
display: flex;
flex-wrap: wrap;
gap: 8px;
width: 100%;
margin-top: 16px;
}
.thd .thd__m-langs a {
padding: 6px 14px;
border: 1px solid #e0e4e6;
border-radius: 999px;
font-size: 14px;
color: var(--thd-ink);
text-decoration: none;
}
.thd .thd__m-langs a.is-active {
background: var(--thd-teal);
border-color: var(--thd-teal);
color: #ffffff;
}
html.thd-lock,
html.thd-lock body {
overflow: hidden;
} .thd.thd--float .thd__main {
width: 100%;
margin: 0 auto;
transition:
width .5s cubic-bezier(.22, 1, .36, 1),
margin .5s cubic-bezier(.22, 1, .36, 1),
border-radius .5s cubic-bezier(.22, 1, .36, 1),
background-color .35s ease,
box-shadow .35s ease;
}
.thd.thd--float.is-compact .thd__main {
width: min(1240px, calc(100% - 32px));
margin-top: 12px;
border-radius: 18px;
box-shadow: 0 18px 44px rgba(3, 45, 53, .14), 0 0 0 1px rgba(3, 45, 53, .06);
}
.thd.thd--float.is-compact .thd__main-inner {
padding: 0 16px 0 24px;
}
.thd.thd--float.is-compact .thd__progress {
left: 18px;
right: 18px;
}
.thd.thd--float .thd__mega {
transition: opacity .25s ease, visibility 0s linear .3s, top .5s cubic-bezier(.22, 1, .36, 1);
}
.thd.thd--float.is-compact .thd__mega {
top: calc(100% + 10px);
left: 50%;
right: auto;
width: min(1240px, calc(100% - 32px));
overflow: hidden;
border-top: 0;
border-radius: 18px;
box-shadow: 0 30px 60px -10px rgba(3, 45, 53, .22), 0 0 0 1px rgba(3, 45, 53, .06);
transform: translateX(-50%);
}
.thd.thd--float.is-compact .thd__panel-inner {
padding: 32px 32px 36px;
}
.thd.thd--float.is-compact .thd__drawer {
top: calc(var(--thd-drawer-top, 80px) + 10px);
right: 16px;
bottom: 16px;
width: min(440px, calc(100% - 32px));
border-radius: 18px;
box-shadow: 0 30px 60px -10px rgba(3, 45, 53, .25), 0 0 0 1px rgba(3, 45, 53, .06);
transform: translateX(calc(100% + 24px));
}
.thd.thd--float.is-compact.is-drawer .thd__drawer {
transform: none;
}
@media (max-width: 767px) {
.thd.thd--float.is-compact .thd__main {
width: calc(100% - 20px);
margin-top: 8px;
border-radius: 14px;
}
.thd.thd--float.is-compact .thd__main-inner {
padding: 0 8px 0 16px;
}
.thd.thd--float.is-compact .thd__drawer {
top: calc(var(--thd-drawer-top, 80px) + 8px);
right: 10px;
bottom: 10px;
width: calc(100% - 20px);
border-radius: 14px;
}
}
@media (max-width: 1199px) {
.thd .thd__menu {
gap: 4px;
}
.thd .thd__search {
width: 220px;
}
.thd .thd__brand-text {
font-size: 23px;
}
}
@media (max-width: 1024px) {
.thd {
--thd-pre-h: 40px;
--thd-main-h: 68px;
--thd-logo-w: 132px;
}
.thd .thd__nav,
.thd .thd__search,
.thd .thd__mega {
display: none;
}
.thd .thd__mobile {
display: flex;
}
.thd .thd__drawer {
display: block;
}
.thd .thd__pre-inner {
gap: 4px;
}
.thd .thd__pre-links {
gap: 4px;
}
.thd .thd__pre a,
.thd .thd__lang-btn {
padding: 8px;
font-size: 14px;
}
.thd .thd__pre-links a::after {
left: 8px;
right: 8px;
bottom: 6px;
}
.thd.is-compact .thd__main-inner {
height: calc(var(--thd-main-h) - 8px);
}
}
@media (max-width: 480px) {
.thd .thd__pre-links a:nth-child(n+3) {
display: none; }
}
@media (prefers-reduced-motion: reduce) {
.thd .thd__bar,
.thd .thd__main-inner,
.thd .thd__logo,
.thd .thd__indicator,
.thd .thd__drawer,
.thd .thd__sub-wrap,
.thd .thd__m-panel,
.thd .thd__card,
.thd .thd__card-icon,
.thd .thd__cat-icon {
transition: none;
}
.thd.thd--fx .thd__link:hover .thd__link-icon {
animation: none;
}
}.tft {
--tft-base: var(--toscano-brand-deep, #032d35);
--tft-accent: var(--toscano-brand-teal, #009a9d);
--tft-logo: #ffffff;
--tft-logo-opacity: 1;
--tft-fade-bottom: .08; --tft-fade-stop: 100%; --tft-title: #ffffff;
--tft-text: rgba(255, 255, 255, .78);
--tft-link: #ffffff;
--tft-link-hover: #7fd8da;
--tft-line: rgba(255, 255, 255, .16);
--tft-social-border: rgba(255, 255, 255, .28);
--tft-social-hover-bg: #ffffff;
--tft-social-hover-color: var(--toscano-brand-deep, #032d35);
--tft-max: 1200px;
position: relative;
box-sizing: border-box;
width: 100%;
overflow: hidden;
isolation: isolate;
padding: 64px 20px 28px; background: var(--tft-base);
background:
radial-gradient(120% 90% at 30% 85%, color-mix(in srgb, var(--tft-accent) 55%, transparent) 0%, transparent 55%),
radial-gradient(90% 70% at 85% 70%, color-mix(in srgb, var(--tft-accent) 35%, transparent) 0%, transparent 60%),
var(--tft-base);
color: var(--tft-text);
font-family: "Inter", sans-serif;
-webkit-font-smoothing: antialiased;
word-break: break-word;
}
.tft *,
.tft *::before,
.tft *::after {
box-sizing: border-box;
}
.tft .tft__shader {
position: absolute;
inset: 0;
z-index: -1;
display: block;
width: 100%;
height: 100%;
opacity: 0;
transition: opacity .8s ease;
pointer-events: none;
}
.tft.tft--gl .tft__shader {
opacity: 1;
}
.tft .tft__inner {
position: relative;
max-width: var(--tft-max);
margin: 0 auto;
} .tft .tft__logo {
display: block;
width: 100%;
margin: 0 0 88px;
color: var(--tft-logo);
opacity: var(--tft-logo-opacity);
line-height: 0;
text-decoration: none;
}
.tft .tft__logo svg,
.tft .tft__logo img {
display: block;
width: 100%;
height: auto;
max-width: none; -webkit-mask-image: linear-gradient(to top, rgba(0, 0, 0, var(--tft-fade-bottom)) 0%, #000 var(--tft-fade-stop));
mask-image: linear-gradient(to top, rgba(0, 0, 0, var(--tft-fade-bottom)) 0%, #000 var(--tft-fade-stop));
}
.tft a.tft__logo:hover {
color: var(--tft-logo);
} .tft .tft__grid {
display: grid;
grid-template-columns: minmax(0, 1.35fr) repeat(var(--tft-cols, 4), minmax(0, 1fr));
gap: 40px;
align-items: start;
}
.tft .tft__title {
margin: 0 0 24px;
padding: 0;
font-family: "Inter", sans-serif;
font-size: 20px; font-weight: 700;
line-height: 1.2;
letter-spacing: 0;
text-transform: none;
color: var(--tft-title);
}
.tft .tft__about-text {
max-width: 320px;
margin: 0;
font-size: 16px; font-weight: 400;
line-height: 1.59;
color: var(--tft-text);
}
.tft .tft__social {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin: 28px 0 0;
padding: 0;
list-style: none;
}
.tft .tft__social a {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border: 1px solid var(--tft-social-border);
border-radius: 8px;
color: var(--tft-link);
font-size: 17px;
line-height: 1;
text-decoration: none;
transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}
.tft .tft__social a:hover,
.tft .tft__social a:focus-visible {
background: var(--tft-social-hover-bg);
border-color: var(--tft-social-hover-bg);
color: var(--tft-social-hover-color);
}
.tft .tft__social svg {
width: 17px;
height: 17px;
fill: currentColor;
}
.tft .tft__links {
display: flex;
flex-direction: column;
gap: 12px;
margin: 0;
padding: 0;
list-style: none;
}
.tft .tft__links li {
margin: 0;
padding: 0;
font-size: 16px; font-weight: 400;
line-height: 1.59;
color: var(--tft-text);
}
.tft .tft__links a {
color: var(--tft-link);
text-decoration: none;
transition: color .2s ease;
}
.tft .tft__links a:hover,
.tft .tft__links a:focus-visible {
color: var(--tft-link-hover);
text-decoration: underline;
text-underline-offset: 3px;
}
.tft a:focus-visible {
outline: 2px solid var(--tft-link-hover);
outline-offset: 3px;
} .tft .tft__bottom {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 12px 32px;
margin-top: 96px;
padding-top: 24px;
border-top: 1px solid var(--tft-line);
font-size: 13px; line-height: 1.47;
color: var(--tft-text);
}
.tft .tft__copy {
margin: 0;
}
.tft .tft__legal {
display: flex;
flex-wrap: wrap;
gap: 8px 24px;
margin: 0;
padding: 0;
list-style: none;
}
.tft .tft__legal a {
color: var(--tft-text);
text-decoration: none;
transition: color .2s ease;
}
.tft .tft__legal a:hover,
.tft .tft__legal a:focus-visible {
color: var(--tft-link);
text-decoration: underline;
text-underline-offset: 3px;
} @media (max-width: 1024px) {
.tft .tft__logo {
margin-bottom: 64px;
}
.tft .tft__grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 40px 32px;
}
.tft .tft__about {
grid-column: 1 / -1;
}
.tft .tft__about-text {
max-width: 520px;
}
}
@media (max-width: 767px) {
.tft {
padding-top: 48px;
}
.tft .tft__logo {
margin-bottom: 48px;
}
.tft .tft__title {
margin-bottom: 16px;
font-size: 18px;
}
.tft .tft__links {
gap: 8px;
}
.tft .tft__links li,
.tft .tft__about-text {
font-size: 15px;
}
.tft .tft__bottom {
flex-direction: column;
align-items: flex-start;
margin-top: 56px;
}
}
@media (max-width: 480px) {
.tft .tft__grid {
gap: 32px 20px; }
.tft .tft__links li {
font-size: 14px;
}
}
@media (max-width: 340px) {
.tft .tft__grid {
grid-template-columns: minmax(0, 1fr);
}
}.tas {
--tas-accent: var(--toscano-brand-teal, #009a9d);
--tas-accent-2: #2fc4c7;
--tas-deep: var(--toscano-brand-deep, #032d35);
--tas-text: #3d4f53;
--tas-muted: #7b8a8d;
--tas-bot: #f1f7f7;
--tas-line: #e3ecee;
--tas-bottom: 24px;
--tas-side: 24px;
position: fixed;
z-index: 9980;  --tas-b: calc(var(--tas-bottom) + var(--tas-extra, 0px));
bottom: var(--tas-b);
font-family: "Inter", sans-serif;
-webkit-font-smoothing: antialiased;
color: var(--tas-text);
}
.tas *,
.tas *::before,
.tas *::after {
box-sizing: border-box;
}
.tas--right {
right: var(--tas-side);
}
.tas--left {
left: var(--tas-side);
}
.tas button {
margin: 0;
font-family: "Inter", sans-serif;
letter-spacing: normal;
text-transform: none;
box-shadow: none;
cursor: pointer;
} .tas button.tas__launcher {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 60px;
padding: 0;
border: 0;
border-radius: 50%;
background: radial-gradient(circle at 30% 25%, #2fc4c7 0%, var(--tas-accent) 55%, #007b7e 100%);
box-shadow: 0 14px 30px -10px rgba(0, 123, 126, .65), 0 0 0 4px rgba(255, 255, 255, .9);
color: #ffffff;
transition: transform .35s cubic-bezier(.34, 1.56, .64, 1), box-shadow .3s ease;
}
.tas button.tas__launcher:hover,
.tas button.tas__launcher:focus-visible {
background: radial-gradient(circle at 30% 25%, #2fc4c7 0%, var(--tas-accent) 55%, #007b7e 100%);
color: #ffffff;
transform: scale(1.07);
box-shadow: 0 18px 36px -10px rgba(0, 123, 126, .8), 0 0 0 4px rgba(255, 255, 255, .95), 0 0 24px rgba(47, 196, 199, .55);
}
.tas button.tas__launcher:focus-visible {
outline: 2px solid var(--tas-deep);
outline-offset: 4px;
} .tas .tas__launcher-ring {
position: absolute;
inset: 0;
border-radius: 50%;
border: 2px solid var(--tas-accent-2);
opacity: 0;
animation: tas-ring 2.8s cubic-bezier(.2, .6, .3, 1) 1.5s infinite;
pointer-events: none;
}
.tas.is-open .tas__launcher-ring {
animation: none;
}
@keyframes tas-ring {
0% { opacity: .7; transform: scale(1); }
70%, 100% { opacity: 0; transform: scale(1.6); }
}
.tas .tas__launcher-ico {
position: absolute;
display: flex;
transition: opacity .25s ease, transform .35s cubic-bezier(.34, 1.56, .64, 1);
}
.tas .tas__launcher-ico svg {
display: block;
}
.tas .tas-toski {
display: block;
overflow: visible;
}  .tas--body button.tas__launcher,
.tas--body button.tas__launcher:hover,
.tas--body button.tas__launcher:focus-visible {
background: transparent;
box-shadow: none;
transform: none;
} .tas--body.is-open button.tas__launcher {
background: radial-gradient(circle at 30% 25%, #2fc4c7 0%, var(--tas-accent) 55%, #007b7e 100%);
box-shadow: 0 14px 30px -10px rgba(0, 123, 126, .65), 0 0 0 4px rgba(255, 255, 255, .9);
}
.tas--body .tas__launcher-ring {
display: none;
} .tas--body .tas__toski {
position: absolute;
bottom: -32px;
left: 50%;
display: block;
width: 88px;
height: 108px;
margin-left: -44px;
transform-origin: 50% 100%;
animation: tas-enter .9s cubic-bezier(.34, 1.4, .64, 1) .3s both;
} .tas--body .tas__toski::before {
content: "";
position: absolute;
bottom: 2px;
left: 50%;
width: 66px;
height: 10px;
margin-left: -33px;
border-radius: 50%;
background: radial-gradient(closest-side, rgba(3, 45, 53, .32), rgba(3, 45, 53, 0));
opacity: calc(1 - var(--tas-lift, 0) * .6);
transform: scale(calc(1 - var(--tas-lift, 0) * .45)); }
.tas--body .tas__toski .tas-toski {
position: relative;
width: 100%;
height: 100%;
filter: drop-shadow(0 6px 10px rgba(3, 45, 53, .18));
transform-origin: 50% 100%;
}
.tas--body button.tas__launcher:hover .tas-toski {
animation: tas-hop .7s cubic-bezier(.34, 1.4, .64, 1);
}
.tas--body button.tas__launcher:hover .tas__toski::before {
animation: tas-hop-shadow .7s cubic-bezier(.34, 1.4, .64, 1);
} @keyframes tas-enter {
0% { opacity: 0; transform: translateY(46px) scale(.5, .4); }
45% { opacity: 1; transform: translateY(-16px) scale(.92, 1.12); }
68% { transform: translateY(0) scale(1.12, .86); }
84% { transform: translateY(-4px) scale(.97, 1.03); }
100% { opacity: 1; transform: none; }
}
@keyframes tas-hop {
0% { transform: none; }
20% { transform: translateY(3px) scale(1.1, .86); }
50% { transform: translateY(-18px) scale(.94, 1.08) rotate(-3deg); }
75% { transform: translateY(0) scale(1.08, .9); }
90% { transform: translateY(-2px) scale(.98, 1.02); }
100% { transform: none; }
}
@keyframes tas-hop-shadow {
0%, 100% { transform: scale(1); opacity: 1; }
50% { transform: scale(.55); opacity: .4; }
} .tas--bust button.tas__launcher,
.tas--bust button.tas__launcher:hover,
.tas--bust button.tas__launcher:focus-visible {
background: radial-gradient(circle at 50% 38%, #f4fcfc 0%, #d3f0f0 58%, #9fdcdd 100%);
box-shadow: inset 0 -6px 12px -4px rgba(0, 123, 126, .35), 0 12px 26px -10px rgba(0, 92, 95, .55), 0 0 0 3px #ffffff;
color: var(--tas-deep);
transform: none;
}
.tas--bust.is-open button.tas__launcher {
background: radial-gradient(circle at 30% 25%, #2fc4c7 0%, var(--tas-accent) 55%, #007b7e 100%);
box-shadow: 0 14px 30px -10px rgba(0, 123, 126, .65), 0 0 0 3px #ffffff;
color: #ffffff;
}
.tas--bust .tas__launcher-ico--open,
.tas--bust.is-open .tas__launcher-ico--open {
opacity: 1;
transform: none;
}
.tas--bust .tas__toski {
position: absolute;
top: -120px;
left: -85px;
display: block;
width: 170px;
height: 150px; -webkit-mask-image: radial-gradient(circle at 85px 120px, #000 0 29.5px, transparent 30px), linear-gradient(#000 0 106px, transparent 119px);
mask-image: radial-gradient(circle at 85px 120px, #000 0 29.5px, transparent 30px), linear-gradient(#000 0 106px, transparent 119px);
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
pointer-events: none;
}
.tas--bust .tas__toski .tas-toski {
position: absolute;
top: 0;
left: 0;
width: 170px;
height: 150px;
pointer-events: none;
transition: transform .5s cubic-bezier(.34, 1.4, .64, 1), opacity .3s ease;
} .tas--bust .tas__toski .tas-t {
pointer-events: visiblePainted;
}
.tas--bust button.tas__launcher:hover .tas-toski {
transform: translateY(-5px);
} .tas--bust.is-open .tas__toski .tas-toski {
opacity: 0;
transform: translateY(78px);
transition: transform .38s cubic-bezier(.55, 0, .75, .1), opacity .2s ease .18s;
} .tas--bust .tas__launcher .tas-t {
animation: tas-peek .9s cubic-bezier(.34, 1.4, .64, 1) .3s both;
}
@keyframes tas-peek {
from { transform: translateY(480px); }
to { transform: none; }
}
.tas .tas__launcher-ico--close {
opacity: 0;
transform: rotate(-90deg) scale(.6);
}
.tas.is-open .tas__launcher-ico--open {
opacity: 0;
transform: rotate(90deg) scale(.6);
pointer-events: none;
}
.tas.is-open .tas__launcher-ico--close {
opacity: 1;
transform: none;
} .tas .tas__teaser {
position: absolute;
bottom: 74px;
display: flex;
align-items: flex-start;
gap: 4px;
width: max-content;
max-width: 240px;
animation: tas-pop .45s cubic-bezier(.34, 1.56, .64, 1) both;
}
.tas--right .tas__teaser {
right: 0;
transform-origin: bottom right;
}
.tas--left .tas__teaser {
left: 0;
transform-origin: bottom left;
} .tas--body .tas__teaser {
bottom: 120px;
}
.tas--bust .tas__teaser {
bottom: 94px;
}
.tas .tas__teaser[hidden] {
display: none;
}
.tas button.tas__teaser-msg {
padding: 12px 16px;
border: 1px solid var(--tas-line);
border-radius: 16px 16px 4px 16px;
background: #ffffff;
box-shadow: 0 18px 40px -16px rgba(3, 45, 53, .35);
color: var(--tas-deep);
font-size: 14px;
font-weight: 600;
line-height: 1.4;
text-align: left;
}
.tas--left button.tas__teaser-msg {
order: 2;
border-radius: 16px 16px 16px 4px;
}
.tas button.tas__teaser-msg:hover {
border-color: var(--tas-accent);
background: #ffffff;
color: var(--tas-deep);
}
.tas button.tas__teaser-x {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
padding: 0;
border: 1px solid var(--tas-line);
border-radius: 50%;
background: #ffffff;
color: var(--tas-muted);
}
.tas button.tas__teaser-x:hover {
background: #ffffff;
color: var(--tas-deep);
}
.tas button.tas__teaser-x svg {
width: 12px;
height: 12px;
}
@keyframes tas-pop {
from { opacity: 0; transform: translateY(10px) scale(.85); }
to { opacity: 1; transform: none; }
} .tas .tas__teaser.is-leaving {
animation: tas-unpop .3s ease-in both;
}
@keyframes tas-unpop {
to { opacity: 0; transform: translateY(8px) scale(.9); }
} .tas .tas__panel {
position: absolute;
bottom: 76px;
display: flex;
flex-direction: column;
width: 370px;
height: min(580px, calc(100vh - var(--tas-b) - 110px));
height: min(580px, calc(100dvh - var(--tas-b) - 110px));
overflow: hidden;
border-radius: 20px;
background: #ffffff;
box-shadow: 0 30px 70px -20px rgba(3, 45, 53, .45), 0 0 0 1px rgba(3, 45, 53, .06);
transform-origin: bottom right;
}
.tas--right .tas__panel {
right: 0;
}
.tas--left .tas__panel {
left: 0;
transform-origin: bottom left;
}
.tas .tas__panel[hidden] {
display: none;
}
.tas.is-opening .tas__panel {
animation: tas-open .45s cubic-bezier(.16, .84, .24, 1) both;
}
.tas.is-closing .tas__panel {
animation: tas-close .25s ease-in both;
}
@keyframes tas-open {
from { opacity: 0; transform: translateY(18px) scale(.9); }
to { opacity: 1; transform: none; }
}
@keyframes tas-close {
to { opacity: 0; transform: translateY(12px) scale(.94); }
} .tas .tas__head {
position: relative;
display: flex;
align-items: center;
gap: 12px;
padding: 16px 14px 16px 16px;
background:
radial-gradient(80% 140% at 100% 0%, rgba(47, 196, 199, .28) 0%, transparent 60%),
linear-gradient(135deg, var(--tas-deep) 0%, #064a54 100%);
color: #ffffff;
}
.tas .tas__head-edge {
position: absolute;
right: 0;
bottom: 0;
left: 0;
height: 2px;
background: linear-gradient(90deg, var(--tas-accent), var(--tas-accent-2), #ffffff, var(--tas-accent-2), var(--tas-accent));
background-size: 300% 100%;
animation: tas-edge 4s linear infinite;
}
@keyframes tas-edge {
to { background-position: -300% 0; }
}
.tas .tas__avatar {
position: relative;
display: flex;
flex: 0 0 42px;
align-items: center;
justify-content: center;
width: 42px;
height: 42px;
border-radius: 50%;
background: radial-gradient(circle at 50% 30%, #ffffff, #dff4f4);
box-shadow: 0 0 0 3px rgba(255, 255, 255, .14), 0 0 18px rgba(47, 196, 199, .45);
color: #ffffff;
}
.tas .tas__avatar svg {
width: 42px;
height: 42px;
clip-path: circle(50%);
} .tas .tas__avatar .tas-t-arm,
.tas .tas__avatar .tas-t-hand,
.tas .tas__avatar .tas-t-leg {
display: none;
} .tas .tas__avatar::after {
content: "";
position: absolute;
right: 0;
bottom: 1px;
width: 11px;
height: 11px;
border: 2px solid var(--tas-deep);
border-radius: 50%;
background: #3cc38a;
}
.tas .tas__who {
display: flex;
flex: 1 1 auto;
flex-direction: column;
min-width: 0;
}
.tas .tas__name {
font-size: 16px;
font-weight: 700;
line-height: 1.2;
}
.tas .tas__role {
margin-top: 2px;
font-size: 12px;
line-height: 1.3;
color: rgba(255, 255, 255, .7);
}
.tas button.tas__icon-btn {
display: flex;
flex: 0 0 34px;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
padding: 0;
border: 0;
border-radius: 50%;
background: rgba(255, 255, 255, .08);
color: #ffffff;
transition: background-color .2s ease, transform .35s ease;
}
.tas button.tas__icon-btn:hover,
.tas button.tas__icon-btn:focus-visible {
background: rgba(255, 255, 255, .18);
color: #ffffff;
}
.tas button.tas__restart:hover {
transform: rotate(-180deg);
}
.tas button.tas__icon-btn svg {
display: block;
} .tas .tas__log {
display: flex;
flex: 1 1 auto;
flex-direction: column;
gap: 8px;
padding: 18px 16px 10px;
overflow-y: auto;
overscroll-behavior: contain;
background:
linear-gradient(rgba(3, 45, 53, .025) 1px, transparent 1px) 0 0 / 24px 24px,
linear-gradient(90deg, rgba(3, 45, 53, .025) 1px, transparent 1px) 0 0 / 24px 24px,
#fbfdfd;
scroll-behavior: smooth;
}
.tas .tas__msg {
max-width: 86%;
margin: 0;
padding: 10px 14px;
font-size: 14px;
line-height: 1.5;
white-space: pre-line;
animation: tas-msg .35s cubic-bezier(.16, .84, .24, 1) both;
}
.tas .tas__msg--bot {
align-self: flex-start;
border: 1px solid var(--tas-line);
border-radius: 4px 16px 16px 16px;
background: #ffffff;
color: var(--tas-text);
}
.tas .tas__msg--bot + .tas__msg--bot {
border-top-left-radius: 16px;
}
.tas .tas__msg--user {
align-self: flex-end;
border-radius: 16px 16px 4px 16px;
background: var(--tas-accent);
color: #ffffff;
font-weight: 600;
}
@keyframes tas-msg {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: none; }
} .tas .tas__typing {
display: inline-flex;
align-self: flex-start;
gap: 4px;
padding: 12px 14px;
border: 1px solid var(--tas-line);
border-radius: 4px 16px 16px 16px;
background: #ffffff;
}
.tas .tas__typing i {
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--tas-accent);
opacity: .35;
animation: tas-dot 1s ease-in-out infinite;
}
.tas .tas__typing i:nth-child(2) { animation-delay: .15s; }
.tas .tas__typing i:nth-child(3) { animation-delay: .3s; }
@keyframes tas-dot {
0%, 100% { opacity: .35; transform: none; }
40% { opacity: 1; transform: translateY(-4px); }
} .tas .tas__actions {
display: flex;
flex-direction: column;
align-self: flex-start;
gap: 6px;
width: 86%;
animation: tas-msg .35s cubic-bezier(.16, .84, .24, 1) both;
}
.tas a.tas__action,
.tas button.tas__action {
position: relative;
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
width: 100%;
padding: 12px 14px;
overflow: hidden;
border: 0;
border-radius: 10px;
background: var(--tas-accent);
box-shadow: 0 10px 22px -12px rgba(0, 154, 157, .9);
color: #ffffff;
font-size: 14px;
font-weight: 700;
line-height: 1.3;
text-align: left;
text-decoration: none;
transition: background-color .25s ease, transform .2s ease;
}
.tas a.tas__action:hover,
.tas button.tas__action:hover,
.tas a.tas__action:focus-visible,
.tas button.tas__action:focus-visible {
background: var(--toscano-text-accent, #007b7e);
color: #ffffff;
text-decoration: none;
}
.tas .tas__action::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: -40%;
width: 30%;
background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .45), transparent);
transform: skewX(-18deg);
transition: left .7s ease;
}
.tas .tas__action:hover::before {
left: 120%;
}
.tas .tas__action svg {
flex: 0 0 auto;
transition: transform .25s ease;
}
.tas .tas__action:hover svg {
transform: translateX(3px);
} .tas .tas__choices {
display: flex;
flex-wrap: wrap;
gap: 8px;
padding: 12px 16px 16px;
border-top: 1px solid var(--tas-line);
background: #ffffff;
}
.tas .tas__choices:empty {
display: none;
}
.tas button.tas__chip {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 9px 14px;
border: 1px solid color-mix(in srgb, var(--tas-accent) 35%, var(--tas-line));
border-radius: 999px;
background: #ffffff;
color: var(--tas-deep);
font-size: 13px;
font-weight: 600;
line-height: 1.2;
text-align: left;
animation: tas-msg .3s cubic-bezier(.16, .84, .24, 1) both;
animation-delay: calc(var(--k, 0) * .05s);
transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .15s ease;
}
.tas button.tas__chip:hover,
.tas button.tas__chip:focus-visible {
border-color: var(--tas-accent);
background: var(--tas-accent);
color: #ffffff;
}
.tas button.tas__chip:active {
transform: scale(.96);
}
.tas button.tas__chip svg {
flex: 0 0 18px;
width: 18px;
height: 18px;
fill: none;
stroke: currentColor;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
color: var(--tas-accent);
transition: color .2s ease;
}
.tas button.tas__chip:hover svg,
.tas button.tas__chip:focus-visible svg {
color: #ffffff;
}
.tas button.tas__chip--back {
border-style: dashed;
color: var(--tas-muted);
}
.tas button.tas__chip--back svg {
color: var(--tas-muted);
} @media (max-width: 767px) {
.tas {
--tas-side: 16px;
--tas-bottom: 16px;
}
.tas button.tas__launcher {
width: 56px;
height: 56px;
}
.tas--body .tas__toski {
bottom: -30px;
width: 74px;
height: 92px;
margin-left: -37px;
}
.tas--body .tas__toski::before {
width: 54px;
margin-left: -27px;
} .tas--bust .tas__toski {
transform: scale(.9333);
transform-origin: 85px 120px;
}
.tas--body .tas__teaser {
bottom: 104px;
}
.tas--bust .tas__teaser {
bottom: 86px;
} .tas .tas__panel {
position: fixed;
right: 12px;
bottom: calc(var(--tas-b) + 66px);
left: 12px;
width: auto;
height: calc(100vh - var(--tas-b) - 90px);
height: calc(100dvh - var(--tas-b) - 90px);
max-height: 640px;
}
}
@media (prefers-reduced-motion: reduce) {
.tas *,
.tas.is-opening .tas__panel {
animation: none !important;
}
}