.ways {
padding: 64px 0;
background: #fff;
}
.pillar {
scroll-margin-top: 84px;
}
.ways-grid {
display: grid;
grid-template-columns: 1fr;
gap: 18px;
}
.ways-card {
display: flex;
flex-direction: column;
padding: 30px 34px;
background: #F8F8FB;
border-top: 4px solid transparent;
color: #2B292D;
text-decoration: none;
transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.ways-card:hover,
.ways-card:focus {
color: #2B292D;
text-decoration: none;
background: #fff;
border-top-color: #00ffff;
box-shadow: 0 10px 34px rgba(0, 0, 0, .09);
}
.ways-card:focus-visible {
outline: 2px solid #0000ff;
outline-offset: 2px;
}
.ways-visual {
display: block;
position: relative;
margin: 0 0 22px;
aspect-ratio: 16 / 9;
}
.ways-card h2,
.ways-card h3 {
margin: 0 0 10px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 20px;
font-weight: 700;
letter-spacing: -0.4px;
line-height: 1.2;
color: #2B292D;
}
.ways-card p {
margin: 0 0 18px;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .72);
}
.ways-more {
margin-top: auto;
font-size: 14px;
font-weight: 700;
color: #0000ff;
}
.pillar {
padding: 64px 0;
background: #fff;
}
.pillar--band {
background: #F8F8FB;
}
.pillar-grid {
display: grid;
grid-template-columns: 1fr;
gap: 32px;
align-items: center;
}
.pillar-eyebrow {
display: flex;
align-items: center;
margin: 0 0 22px;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: .18em;
text-transform: uppercase;
color: rgba(43, 41, 45, .72);
}
.pillar-eyebrow:before {
content: "";
flex: 0 0 22px;
height: 5px;
margin-right: 10px;
background: #00ffff;
}
.pillar h2 {
margin-bottom: 18px;
}
.pillar-lead {
margin-bottom: 28px;
}
.pillar-list {
margin: 0;
padding: 0;
list-style: none;
}
.pillar-item {
display: block;
width: 100%;
margin: 0;
padding: 13px 0 13px 20px;
border: 0;
border-left: 3px solid transparent;
background: none;
text-align: left;
cursor: pointer;
transition: border-color .25s ease;
}
.pillar-item:focus-visible {
outline: 2px solid #0000ff;
outline-offset: -2px;
}
.pillar-item.is-active {
border-left-color: #00ffff;
}
.pillar-item-title {
display: block;
padding-bottom: 6px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 19px;
font-weight: 700;
line-height: 1.3;
color: rgba(43, 41, 45, .55);
transition: color .25s ease;
}
.pillar-item:hover .pillar-item-title,
.pillar-item.is-active .pillar-item-title {
color: #2B292D;
}
.pillar-item-text {
display: grid;
grid-template-rows: 1fr;
transition: grid-template-rows .3s ease-in-out, opacity .25s ease;
}
.pillar--js .pillar-item-text {
grid-template-rows: 0fr;
opacity: 0;
}
.pillar-item-text > span {
display: block;
overflow: hidden;
min-height: 0;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .7);
}
.pillar--js .pillar-item.is-active .pillar-item-text {
grid-template-rows: 1fr;
opacity: 1;
}
.pillar-item-link {
display: block;
margin: 0 0 16px 23px;
font-size: 15px;
font-weight: 700;
color: #0000ff;
text-decoration: none;
}
.pillar-item-link:hover {
color: #0000e0;
text-decoration: none;
}
.pillar--js .pillar-item-link {
display: none;
}
.pillar--js .pillar-item.is-active + .pillar-item-link {
display: block;
}
.pillar-more {
display: inline-block;
margin: 24px 0 0 23px;
font-size: 15px;
font-weight: 700;
color: #0000ff;
text-decoration: none;
transition: color .15s ease;
}
.pillar-more:hover {
color: #0000e0;
text-decoration: none;
}
.pillar-more + .pillar-more {
margin-left: 24px;
}
.pillar:not(.pillar--js) .pillar-item {
cursor: default;
}
.pillar-preview {
position: relative;
aspect-ratio: 16 / 9;
overflow: hidden;
background: #2B292D;
}
@supports not (aspect-ratio: 16 / 9) {
.pillar-preview {
height: 0;
padding-bottom: 56.25%;
}
}
.pillar-panel {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0;
visibility: hidden;
transition: opacity .35s ease, visibility .35s ease;
}
.pillar-panel.is-active {
opacity: 1;
visibility: visible;
}
.pillar-panel img,
.pillar-panel video {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.pillar-panel--empty {
display: flex;
align-items: center;
justify-content: center;
padding: 24px;
background: #2B292D;
color: rgba(255, 255, 255, .62);
font-size: 14px;
text-align: center;
}
.pillar-panel .pillar-badge {
top: 14px;
left: 14px;
z-index: 2;
}
.pillar-caption {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
overflow: hidden;
clip: rect(0 0 0 0);
clip-path: inset(50%);
white-space: nowrap;
border: 0;
}
@media (min-width: 768px) {
.ways {
padding: 84px 0;
}
.pillar {
padding: 84px 0;
}
.ways-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 992px) {
.ways,
.pillar {
padding: 108px 0;
}
.ways-grid {
grid-template-columns: repeat(2, 1fr);
gap: 22px;
}
.pillar-grid {
grid-template-columns: 430px minmax(0, 1fr);
gap: 72px;
}
.pillar--reverse .pillar-grid {
grid-template-columns: minmax(0, 1fr) 430px;
}
.pillar--reverse .pillar-media {
order: -1;
}
}
@media (prefers-reduced-motion: reduce) {
.ways-card,
.pillar-item,
.pillar-item-title,
.pillar-item-text,
.pillar-panel,
.pillar-more {
transition: none;
}
}
@media (max-width: 991px) {
.pillar-grid {
display: flex;
flex-direction: column;
align-items: stretch;
gap: 0;
}
.pillar-body {
display: contents;
}
.pillar-eyebrow { order: 1; }
.pillar h2 { order: 2; }
.pillar-lead { order: 3; }
.pillar-media { order: 4; margin: 4px 0 8px; }
.pillar-list,
.pillar-stages,
.pillar-note { order: 5; }
.pillar-more { order: 6; }
.pillar--strip .container {
display: flex;
flex-direction: column;
}
.pillar--strip .container::before,
.pillar--strip .container::after {
display: none;
}
.pillar--strip .pillar-grid {
display: contents;
}
.pillar--strip .pillar-strip {
order: 5;
margin-top: 24px;
}
}
.pillar-stages {
list-style: none;
margin: 0;
padding: 0;
counter-reset: stage;
}
.pillar-stage {
position: relative;
display: grid;
grid-template-columns: 42px minmax(0, 1fr);
padding: 9px 0 13px;
}
.pillar-stage::before {
counter-increment: stage;
content: counter(stage);
grid-column: 1;
grid-row: 1;
width: 26px;
height: 26px;
margin-top: -1px;
border-radius: 50%;
background: #2B292D;
color: #fff;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 12px;
font-weight: 800;
line-height: 26px;
text-align: center;
}
.pillar-stage::after {
content: "";
position: absolute;
left: 12.5px;
top: 36px;
bottom: 0;
width: 1px;
background: rgba(43, 41, 45, .16);
}
.pillar-stage:last-child::after {
display: none;
}
.pillar-stage-title {
display: block;
grid-column: 2;
padding-bottom: 6px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 19px;
font-weight: 700;
line-height: 1.3;
color: #2B292D;
}
.pillar-stage-text {
display: block;
grid-column: 2;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .7);
}
.pillar--timeline .pillar-more {
margin-left: 42px;
}
.pillar--timeline .pillar-note {
margin-left: 42px;
}
.pillar--facts .pillar-more {
margin-left: 0;
}
.pillar--facts .pillar-more {
margin-right: 24px;
}
.pillar--facts .pillar-more + .pillar-more {
margin-left: 0;
}
.pillar-facts {
display: grid;
grid-template-columns: 1fr;
gap: 40px;
margin: 64px 0 0;
padding: 0;
list-style: none;
counter-reset: fact;
}
@media (min-width: 768px) {
.pillar-facts {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 48px 32px;
}
}
@media (min-width: 992px) {
.pillar-facts {
gap: 48px 40px;
margin-top: 80px;
}
}
.pillar-fact {
padding: 0;
background: none;
}
.pillar-facts:not(.pillar-facts--numbered) .pillar-fact::before {
content: "";
display: block;
width: 24px;
height: 4px;
margin: 0 0 12px;
background: #2B292D;
}
.pillar-fact .pillar-tile-title {
margin: 0 0 8px;
font-size: 19px;
font-weight: 700;
letter-spacing: -0.4px;
line-height: 1.25;
text-wrap: balance;
}
.pillar-fact .pillar-tile-text {
margin: 0;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .7);
}
.pillar-facts--numbered .pillar-fact::before {
counter-increment: fact;
content: counter(fact);
display: block;
width: 24px;
height: 24px;
margin: 0 0 16px;
background: #2B292D;
color: #fff;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 12px;
font-weight: 800;
line-height: 24px;
text-align: center;
}
.pillar--strip .pillar-more {
margin-left: 0;
}
.pillar-strip {
display: grid;
grid-template-columns: 1fr;
gap: 28px;
margin-top: 44px;
}
.pillar-strip .pillar-panel {
opacity: 1;
visibility: visible;
transition: none;
}
.pillar-tile-title {
margin: 14px 0 6px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 17px;
font-weight: 700;
line-height: 1.3;
color: #2B292D;
}
.pillar-tile-text {
margin: 0;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .7);
}
.pillar-tile-text a {
color: #0000ff;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: text-decoration-thickness .15s ease;
}
.pillar-tile-text a:hover,
.pillar-tile-text a:focus-visible {
color: #0000ff;
text-decoration-thickness: 2px;
}
.pillar-tile-text a:focus-visible {
outline: 2px solid #0000ff;
outline-offset: 2px;
}
.pillar-tile-text a:focus:not(:focus-visible) {
outline: none;
}
@media (prefers-reduced-motion: reduce) {
.pillar-tile-text a {
transition: none;
}
}
@media (min-width: 768px) {
.pillar-strip {
grid-template-columns: repeat(3, 1fr);
gap: 32px;
}
}
.pillar-note {
margin: 10px 0 0 23px;
font-size: 14px;
line-height: 1.6;
color: rgba(43, 41, 45, .7);
}
.pillar-note--panel {
max-width: 760px;
margin: 48px auto 0;
padding: 28px 24px;
border: 0;
border-radius: 16px;
background: #F8F8FB;
text-align: center;
font-size: inherit;
color: inherit;
}
@media (min-width: 768px) {
.pillar-note--panel {
padding: 36px 40px;
}
}
.pillar--band .pillar-note--panel {
background: #fff;
}
.pillar-note-label {
margin: 0 0 12px;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: .18em;
text-transform: uppercase;
color: rgba(43, 41, 45, .72);
}
.pillar-note-body {
margin: 0;
font-size: 17px;
line-height: 1.7;
color: rgba(43, 41, 45, .85);
}
.ways-card,
.pillar-tile { position: relative; }
.ways-card::after,
.pillar-tile::after {
content: "";
position: absolute;
right: 0;
bottom: 0;
left: 0;
height: 2px;
background: #00ffff;
transform: scaleX(0);
transform-origin: 0 50%;
opacity: 0;
}
.ways-card.is-playing::after,
.pillar-tile.is-playing::after {
opacity: 1;
animation: ways-progress var(--ways-loop, 8s) linear forwards;
}
@keyframes ways-progress {
from { transform: scaleX(0); }
to   { transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
.ways-card.is-playing::after,
.pillar-tile.is-playing::after {
animation: none !important;
transition: none !important;
}
}
#customerExamples {
background: #fff;
}
#customerExamples {
padding: 64px 0;
}
@media (min-width: 992px) {
#customerExamples {
padding: 108px 0;
}
}
.faq {
background: #F8F8FB;
}
.faq,
.founder {
padding: 64px 0;
}
@media (min-width: 992px) {
.faq { padding: 108px 0; }
.founder { padding: 76px 0 88px; }
}
.ways-card:focus:not(:focus-visible),
.pillar-item:focus:not(:focus-visible),
.pillar-more:focus:not(:focus-visible) {
outline: none;
}
.section-main.hero {
padding-bottom: 0;
}
.proof {
margin-top: 40px;
padding: 12px 0 18px;
border-top: 1px solid rgba(43, 41, 45, .14);
}
@media (min-width: 992px) {
.proof {
margin-top: 90px;
padding: 17px 0;
}
}
.proof-inner {
display: flex;
flex-direction: column;
gap: 18px;
}
@media (min-width: 992px) {
.proof-inner {
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 32px;
}
}
@media (max-width: 991px) {
.proof-inner {
align-items: center;
}
.proof-stats {
text-align: center;
}
.proof-stat {
align-items: center;
}
.proof-logos {
align-items: center;
}
.proof-logos__list {
justify-content: center;
}
.proof-stat__value .toltip-text {
width: min(280px, calc(100vw - 32px));
transform: none;
}
.proof-stat:nth-child(odd) .toltip-text {
left: calc(100% + 15px - min(140px, calc(50vw - 16px)));
right: auto;
}
.proof-stat:nth-child(even) .toltip-text {
left: auto;
right: calc(100% + 15px - min(140px, calc(50vw - 16px)));
}
}
.proof-stats {
display: flex;
flex-wrap: wrap;
align-items: stretch;
margin: 0;
padding: 0;
list-style: none;
column-gap: 30px;
row-gap: 16px;
}
@media (min-width: 768px) {
.proof-stats {
column-gap: 44px;
}
}
.proof-stat {
position: relative;
display: flex;
flex-direction: column;
gap: 2px;
}
.proof-stat[hidden] {
display: none;
}
.proof-stat + .proof-stat:before {
content: '';
position: absolute;
top: 50%;
left: -15px;
width: 1px;
height: 30px;
margin-top: -15px;
background: rgba(43, 41, 45, .14);
}
@media (min-width: 768px) {
.proof-stat + .proof-stat:before {
left: -22px;
}
}
@media (max-width: 767px) {
.proof-stats {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
column-gap: 30px;
row-gap: 16px;
}
.proof-stat + .proof-stat:before {
display: none;
}
.proof-stat + .proof-stat:nth-child(even):before {
display: block;
}
}
.proof-stat__value {
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 18px;
font-weight: 700;
letter-spacing: -0.4px;
line-height: 1.15;
color: rgba(43, 41, 45, .8);
font-variant-numeric: tabular-nums;
font-feature-settings: 'tnum' 1;
}
@media (min-width: 992px) {
.proof-stat__value {
font-size: 20px;
}
}
.proof-stat__label {
font-size: 11px;
line-height: 1.35;
color: rgba(43, 41, 45, .55);
}
.proof-stat .proof-stat__link {
color: #2B292D;
text-decoration-color: rgba(43, 41, 45, .3);
}
.proof-stat .proof-stat__link:hover,
.proof-stat .proof-stat__link:focus {
color: #0000ff;
text-decoration-color: #0000ff;
}
.proof-stat__pulse {
position: relative;
display: inline-block;
vertical-align: .125em;
width: 9px;
height: 9px;
margin-right: 6px;
border-radius: 50%;
background: #00ffff;
box-shadow: 0 0 0 1px #2B292D;
}
.proof-stat__pulse:after {
content: '';
position: absolute;
top: -1px;
right: -1px;
bottom: -1px;
left: -1px;
border: 1px solid rgba(43, 41, 45, .5);
border-radius: 50%;
animation: heroLivePulse 2.6s cubic-bezier(.2, .6, .3, 1) infinite;
}
@media (prefers-reduced-motion: reduce) {
.proof-stat__pulse:after {
animation: none;
opacity: .5;
}
}
.proof.is-offscreen .proof-stat__pulse:after {
animation-play-state: paused;
}
.proof-logos {
position: relative;
display: flex;
flex-direction: column;
gap: 7px;
}
@media (min-width: 992px) {
.proof-logos {
flex-direction: row;
align-items: center;
flex: none;
gap: 16px;
padding-left: 28px;
}
.proof-logos__caption {
flex: none;
white-space: nowrap;
}
.proof-logos:before {
content: '';
position: absolute;
top: 50%;
left: 0;
width: 1px;
height: 38px;
margin-top: -19px;
background: rgba(43, 41, 45, .14);
}
}
.proof-logos__caption {
font-size: 10px;
letter-spacing: .06em;
text-transform: uppercase;
color: rgba(43, 41, 45, .45);
}
.proof-logos__list {
display: flex;
flex-wrap: wrap;
align-items: center;
margin: 0;
padding: 0;
list-style: none;
column-gap: 20px;
row-gap: 9px;
}
@media (min-width: 992px) {
.proof-logos__list {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
justify-items: center;
align-items: center;
column-gap: 22px;
row-gap: 9px;
max-width: 330px;
}
.proof-stats {
flex-wrap: nowrap;
}
}
.proof-logos__item a {
display: block;
filter: grayscale(100%);
opacity: .5;
transition: opacity .15s ease, filter .15s ease;
}
.proof-logos__item a:hover,
.proof-logos__item a:focus {
filter: grayscale(0);
opacity: 1;
}
.proof-logos__item img {
display: block;
height: 15px;
width: auto;
max-width: 84px;
object-fit: contain;
}
@media (min-width: 768px) {
.proof-logos__item img {
height: 16px;
max-width: 94px;
}
}
.proof-stat__value .toltip {
position: static;
width: 15px;
height: 15px;
margin-left: 6px;
padding: 0;
background: none;
border: 1px solid rgba(43, 41, 45, .35);
border-radius: 50%;
color: rgba(43, 41, 45, .72);
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 10px;
font-weight: 700;
line-height: 13px;
vertical-align: 3.5px;
-webkit-appearance: none;
appearance: none;
}
.proof-stat__value .toltip:focus {
outline: none;
border-color: #2B292D;
color: #2B292D;
box-shadow: 0 0 0 3px rgba(43, 41, 45, .18);
}
.proof-stat__value .toltip-text:after {
display: none;
}
.proof-stat__value .toltip-text {
top: calc(100% + 9px);
left: 0;
right: auto;
width: 280px;
max-width: calc(100vw - 32px);
font-size: 13px;
white-space: normal;
}
.proof-logos__item a:focus-visible,
.proof-stat__link:focus-visible {
outline: 2px solid #0000ff;
outline-offset: 3px;
}
.intro {
position: relative;
padding: 50px 0;
background: #F8F8FB;
}
@media (min-width: 992px) {
.intro { padding: 76px 0; }
}
.intro-cols {
display: grid;
grid-template-columns: 1fr;
gap: 36px;
align-items: start;
}
@media (min-width: 992px) {
.intro-cols { grid-template-columns: 1.25fr 1fr; gap: 40px; }
}
@media (min-width: 1200px) {
.intro-cols { gap: 56px; }
}
.intro-q {
margin: 0 0 22px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 22px;
font-weight: 800;
letter-spacing: -0.5px;
line-height: 1.15;
color: #2B292D;
}
@media (min-width: 992px) {
.intro-q { font-size: 26px; letter-spacing: -0.6px; }
}
.intro-what,
.intro-who {
margin: 0;
padding: 0;
list-style: none;
}
.intro-what li,
.intro-who li {
position: relative;
font-size: 17px;
color: #2B292D;
}
@media (min-width: 992px) {
.intro-what li,
.intro-who li { font-size: 19px; }
}
.intro-what li {
line-height: 1.65;
color: rgba(43, 41, 45, .82);
}
.intro-what li + li { margin-top: 24px; }
@media (min-width: 992px) {
.intro-what li + li { margin-top: 30px; }
}
.intro-who li {
padding-left: 24px;
line-height: 1.45;
}
.intro-who li + li { margin-top: 18px; }
@media (min-width: 992px) {
.intro-who li + li { margin-top: 22px; }
}
.intro-who li::before {
content: "";
position: absolute;
top: .42em;
left: 0;
width: 9px;
height: 9px;
background: #00ffff;
}
.intro-link {
color: #0000ff;
text-decoration: underline;
text-decoration-color: rgba(0, 0, 255, .3);
text-underline-offset: 3px;
transition: color .15s, text-decoration-color .15s;
}
.intro-link:hover,
.intro-link:focus {
color: #0000ff;
text-decoration: underline;
text-decoration-color: #0000ff;
}
.intro-link:focus-visible {
outline: 2px solid #0000ff;
outline-offset: 2px;
}
@media (prefers-reduced-motion: no-preference) {
html { scroll-behavior: smooth; }
}
.rvs {
position: relative;
padding: 50px 0;
background: #F8F8FB;
}
@media (min-width: 992px) { .rvs { padding: 108px 0; } }
.rvs-strip {
display: flex;
gap: 18px;
overflow-x: auto;
scroll-snap-type: x mandatory;
padding: 4px;
margin: -4px;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.rvs-strip::-webkit-scrollbar { display: none; }
@media (min-width: 992px) { .rvs-strip { gap: 22px; } }
.rvs-col {
display: flex;
flex-direction: column;
flex: 0 0 88%;
scroll-snap-align: start;
}
@media (min-width: 768px) { .rvs-col { flex: 0 0 calc((100% - 18px) / 2); } }
@media (min-width: 992px) { .rvs-col { flex: 0 0 calc((100% - 44px) / 3); } }
.rvs-col > .rvi { flex: 1 1 auto; }
.rvs-foot {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 14px;
margin-top: 22px;
}
.rvs-more {
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 15px;
font-weight: 700;
color: #0000ff;
text-decoration: none;
transition: color .15s ease;
}
.rvs-more:hover, .rvs-more:focus { color: #0000e0; text-decoration: none; }
.rvs-controls { display: flex; gap: 10px; }
.rvs-arrow {
width: 44px;
height: 44px;
padding: 0;
border: 1px solid rgba(0, 0, 255, .25);
border-radius: 50%;
background: #fff;
font-size: 17px;
line-height: 1;
color: #0000ff;
cursor: pointer;
transition: background-color .15s, border-color .15s;
}
.rvs-arrow:hover { background: #fff; border-color: #0000ff; }
.rvs-arrow:focus-visible { outline: 2px solid #0000ff; outline-offset: 2px; }
.rvs-strip:focus-visible { outline: 2px solid #0000ff; outline-offset: 2px; }
.rvs-arrow:focus:not(:focus-visible),
.rvs-strip:focus:not(:focus-visible),
.rvi-film:focus:not(:focus-visible),
.rvs-more:focus:not(:focus-visible),
.rvs-lb-close:focus:not(:focus-visible) {
outline: none;
}
.rvi {
display: flex;
flex-direction: column;
height: 100%;
margin: 0;
padding: 30px 26px;
background: #fff;
}
.rvi-stars { display: flex; gap: 2px; margin: 0 0 14px; line-height: 1; }
.rvi-stars img { display: block; width: 14px; height: 14px; }
.rvi-quote { margin: 0 0 20px; }
.rvi-quote p {
margin: 0;
font-size: 15px;
line-height: 1.6;
color: rgba(43, 41, 45, .72);
}
.rvi-quote p + p { margin-top: 12px; }
.rvi-quote b { font-weight: 700; color: #2B292D; }
@media (min-width: 992px) {
.rvi--s16 .rvi-quote p { font-size: 15px; }
.rvi--s18 .rvi-quote p { font-size: 17px; }
}
.rvi-by { display: flex; align-items: center; margin-top: auto; min-height: 58px; }
.rvi-photo {
flex: 0 0 auto;
width: 40px;
height: 40px;
margin-right: 12px;
border-radius: 50%;
object-fit: cover;
}
.rvi-mono {
display: flex;
align-items: center;
justify-content: center;
background: #e7e7ee;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 13px;
font-weight: 700;
letter-spacing: .02em;
color: rgba(43, 41, 45, .72);
}
.rvi-who { display: block; min-width: 0; }
.rvi-name {
display: block;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 15px;
font-weight: 700;
letter-spacing: -0.2px;
line-height: 1.3;
color: #2B292D;
}
@media (min-width: 992px) { .rvi-name { font-size: 16px; } }
.rvi-role {
display: block;
margin-top: 2px;
font-size: 12px;
line-height: 1.4;
color: rgba(43, 41, 45, .72);
}
@media (min-width: 992px) { .rvi-role { font-size: 13px; } }
.rvi-film {
display: block;
position: relative;
flex: 0 0 auto;
width: 64px;
margin: 0 0 0 10px;
padding: 0;
border: 0;
background: none;
cursor: pointer;
}
.rvi-film-poster {
display: block;
width: 100%;
height: auto;
border-radius: 4px;
aspect-ratio: 16 / 9;
object-fit: cover;
}
.rvi-film-play {
position: absolute;
top: 50%;
left: 50%;
width: 26px;
height: 18px;
margin: -9px 0 0 -13px;
border-radius: 4px;
background: rgba(43, 41, 45, .78);
transition: background-color .15s ease;
}
.rvi-film-play:after {
content: "";
position: absolute;
top: 50%;
left: 50%;
margin: -4px 0 0 -2px;
border-style: solid;
border-width: 4px 0 4px 7px;
border-color: transparent transparent transparent #fff;
}
@media (min-width: 768px) { .rvi-film { width: 96px; } }
.rvi-film:before {
content: "";
position: absolute;
top: -6px;
right: 0;
bottom: -6px;
left: 0;
}
.rvi-film:hover .rvi-film-play { background: #0000ff; }
.rvi-film:focus-visible { outline: 2px solid #0000ff; outline-offset: 2px; }
.rvs-lb {
position: fixed;
top: 0;
left: 0;
z-index: 1100;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
padding: 20px;
}
.rvs-lb[hidden] { display: none; }
.rvs-lb-veil {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(43, 41, 45, .82);
}
.rvs-lb-box {
position: relative;
width: 100%;
max-width: 880px;
}
.rvs-lb-frame {
position: relative;
height: 0;
padding-bottom: 56.25%;
background: #2B292D;
}
.rvs-lb-frame iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
.rvs-lb-cap {
margin: 12px 0 0;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 14px;
line-height: 1.5;
color: rgba(255, 255, 255, .82);
}
.rvs-lb-close {
position: absolute;
right: 0;
bottom: 100%;
margin: 0 0 8px;
padding: 0;
width: 36px;
height: 36px;
border: 0;
border-radius: 50%;
background: rgba(255, 255, 255, .14);
font-size: 24px;
line-height: 1;
color: #fff;
cursor: pointer;
transition: background-color .15s ease;
}
.rvs-lb-close:hover { background: rgba(255, 255, 255, .28); }
.rvs-lb-close:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.rvs-col--pair > .rvi + .rvi { margin-top: 14px; }
@media (min-width: 992px) {
.rvs-col--pair > .rvi + .rvi { margin-top: 18px; }
.rvs-col--pair > .rvi { padding: 16px 20px 15px; }
.rvs-col--pair .rvi .rvi-quote p { font-size: 15px; line-height: 1.6; }
}
.rvs-col--pair .rvi-quote { margin-bottom: 12px; }
.rvs-col--pair .rvi-stars { margin-bottom: 8px; }
.rvs-col--pair .rvi-stars img { width: 12px; height: 12px; }
.rvs-col--pair .rvi-by { min-height: 40px; }
.rvs-col--pair .rvi-photo { width: 32px; height: 32px; margin-right: 10px; }
.rvs-col--pair .rvi-name { font-size: 14px; }
.rvs-col--pair .rvi-role { font-size: 12px; }
.rvs .sr-only {
position: absolute;
width: 1px; height: 1px;
padding: 0; margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
border: 0;
}
.faq-list {
max-width: 820px;
margin: 0 auto;
}
.faq-item {
border-top: 1px solid rgba(43, 41, 45, .14);
}
.faq-q {
display: flex;
align-items: center;
gap: 20px;
padding: 22px 0;
list-style: none;
cursor: pointer;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 18px;
font-weight: 700;
line-height: 1.35;
color: #2B292D;
}
.faq-q::-webkit-details-marker { display: none; }
.faq-q-text {
flex: 1;
min-width: 0;
overflow-wrap: anywhere;
}
.faq-q:focus-visible {
outline: 2px solid #0000ff;
outline-offset: -2px;
}
.faq-q::after {
content: "";
flex: none;
width: 26px;
height: 26px;
background-color: rgba(43, 41, 45, .08);
background-image:
linear-gradient(#2B292D, #2B292D),
linear-gradient(#2B292D, #2B292D);
background-repeat: no-repeat;
background-position: center, center;
background-size: 11px 2px, 2px 11px;
transition: background-color .25s ease;
}
.faq-q:hover::after {
background-color: rgba(43, 41, 45, .16);
}
.faq-item[open] > .faq-q::after,
.faq-item[open] > .faq-q:hover::after {
background-color: #00ffff;
background-size: 11px 2px, 0 0;
}
.faq-a {
padding: 0 46px 24px 0;
}
.faq-a p {
margin: 0;
max-width: 62em;
font-size: 16px;
line-height: 1.7;
color: rgba(43, 41, 45, .72);
}
@supports (interpolate-size: allow-keywords) {
:root { interpolate-size: allow-keywords; }
.faq-item::details-content {
block-size: 0;
overflow: hidden;
transition: block-size .3s ease-in-out, content-visibility .3s allow-discrete;
}
.faq-item[open]::details-content { block-size: auto; }
}
@media (min-width: 768px) {
.faq-q { font-size: 20px; padding: 26px 0; }
.faq-a { padding: 0 46px 28px 0; }
.faq-a p { font-size: 17px; }
}
.founder {
background: #FFEE00;
}
.founder-card {
display: grid;
grid-template-columns: auto 1fr;
grid-template-areas:
"photo by"
"h     h"
"quote quote";
column-gap: 16px;
align-items: center;
padding: 28px 24px;
background: #fff;
border-radius: 14px;
}
.founder-photo {
grid-area: photo;
display: block;
width: 56px;
height: 56px;
border-radius: 50%;
object-fit: cover;
}
.founder-by { grid-area: by; }
.founder-name {
display: block;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 16px;
font-weight: 700;
line-height: 1.3;
color: #2B292D;
}
.founder-role {
display: block;
margin-top: 2px;
font-size: 14px;
line-height: 1.4;
color: rgba(43, 41, 45, .75);
}
.founder-h {
grid-area: h;
margin: 24px 0 16px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 24px;
font-weight: 800;
line-height: 1.25;
color: #2B292D;
}
.founder-quote {
grid-area: quote;
margin: 0;
padding: 0;
border: 0;
}
.founder-quote p {
margin: 0 0 15px;
font-size: 16.5px;
line-height: 1.7;
color: #2B292D;
}
.founder-quote p:last-child { margin-bottom: 0; }
@media (min-width: 768px) {
.founder-card {
grid-template-columns: 164px 1fr;
grid-template-rows: auto auto 1fr;
grid-template-areas:
"photo h"
"photo quote"
"by    quote";
column-gap: 40px;
padding: 40px;
align-items: start;
}
.founder-photo { width: 164px; height: 164px; border-radius: 16px; }
.founder-by { margin-top: 14px; }
.founder-h { margin: 0 0 18px; font-size: 28px; }
.founder-quote p { font-size: 17px; }
}
@media (min-width: 992px) {
.founder-card { padding: 48px 56px; column-gap: 48px; }
.founder-h { font-size: 30px; }
.founder-quote p { font-size: 17.5px; }
}
@media (min-width: 1200px) {
.founder-quote p { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
.faq-q,
.faq-q::after,
.faq-item {
transition: none;
}
@supports (interpolate-size: allow-keywords) {
.faq-item::details-content { transition: none; }
}
}
.fcta {
padding: 0 0 64px;
background: #FFEE00;
}
@media (min-width: 992px) {
.fcta { padding: 8px 0 108px; }
}
.fcta--standalone {
padding-top: 64px;
}
@media (min-width: 992px) {
.fcta--standalone { padding-top: 108px; }
}
.fcta-body {
text-align: center;
}
.fcta-h {
margin: 0 0 24px;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: clamp(34px, calc(25.34px + 2.71vw), 56px);
font-weight: 800;
line-height: 1;
letter-spacing: -0.029em;
color: #2B292D;
}
.fcta-lead {
max-width: 30em;
margin: 0 auto 30px;
font-size: clamp(18px, calc(15.5px + 0.78vw), 21px);
line-height: 1.6;
color: #2B292D;
}
.fcta-form {
width: 100%;
max-width: 470px;
margin: 0 auto;
}
.fcta .form-control {
height: 50px;
border-color: transparent;
background-clip: border-box;
}
.fcta .form-control:focus {
border-color: #0000ff;
box-shadow: 0 0 0 0.2rem rgba(0, 0, 255, .25);
}
.fcta .btn {
height: 50px;
padding: 0 22px;
}
.fcta-status {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
column-gap: 20px;
row-gap: 11px;
margin: 20px 0 0;
padding: 0;
list-style: none;
font-size: 13px;
line-height: 1.3;
color: #2B292D;
}
.fcta-status-item {
position: relative;
display: flex;
align-items: center;
gap: 7px;
white-space: nowrap;
}
.fcta-status-item + .fcta-status-item::before {
content: '';
position: absolute;
top: 50%;
left: -10px;
width: 1px;
height: 14px;
margin-top: -7px;
background: rgba(43, 41, 45, .22);
}
.fcta-icon {
flex: none;
width: 16px;
height: 16px;
color: #2B292D;
}
.fcta-pricing {
margin: 28px 0 0;
font-size: 15px;
line-height: 1.5;
}
.fcta-pricing-lead {
color: rgba(43, 41, 45, .72);
}
.fcta-pricing a {
font-weight: 700;
text-decoration: underline;
}
.film-box {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 10000;
display: flex;
align-items: center;
justify-content: center;
padding: 16px;
background: rgba(43, 41, 45, .93);
}
.film-box__frame {
position: relative;
width: 100%;
max-width: 960px;
background: #000;
}
.film-box__frame::before {
content: '';
display: block;
padding-top: 56.25%;
}
.film-box__frame iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0;
}
.film-box__close {
position: absolute;
top: 16px;
right: 16px;
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
padding: 0;
border: none;
border-radius: 50%;
background: rgba(255, 255, 255, .2);
color: #fff;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 26px;
line-height: 1;
cursor: pointer;
}
.film-box__close:hover,
.film-box__close:focus {
background: rgba(255, 255, 255, .35);
}
body.film-open .offer-bar {
visibility: hidden;
}
.dw-live {
position: absolute;
display: flex;
align-items: center;
overflow: hidden;
border-radius: .35em;
font-size: 8.5px;
font-weight: 700;
line-height: 1.4;
letter-spacing: .06em;
text-transform: uppercase;
white-space: nowrap;
color: #fff;
}
.dw-live-pill {
display: flex;
align-items: center;
gap: .47em;
padding: .35em .7em;
background: #E02020;
}
.dw-live-dot {
flex: 0 0 auto;
display: block;
width: .47em;
height: .47em;
border-radius: 50%;
background: #fff;
}
.dw-live-count {
display: flex;
align-items: center;
gap: .38em;
padding: .35em .7em;
background: rgba(43, 41, 45, .88);
letter-spacing: 0;
}
@keyframes dw-pulse {
0%, 100% { opacity: 1; }
50%      { opacity: .38; }
}
.dw-count {
--dw-count-ease: cubic-bezier(.4, .1, .4, .9);
display: block;
overflow: hidden;
height: 1.4em;
font-variant-numeric: tabular-nums;
}
.dw-count-roll { display: block; }
.dw-count-roll > span {
display: block;
height: 1.4em;
line-height: 1.4;
text-align: right;
}
.dw-cm {
position: absolute;
display: flex;
align-items: center;
gap: .5em;
width: max-content;
max-width: 100%;
overflow: hidden;
padding: .25em .75em .25em .25em;
border-radius: 1.15em;
background: rgba(43, 41, 45, .82);
font-size: 8px;
line-height: 1.5;
white-space: nowrap;
}
.dw-cm-av {
flex: 0 0 auto;
display: block;
width: 1.5em;
height: 1.5em;
border-radius: 50%;
overflow: hidden;
background: rgba(255, 255, 255, .18);
box-shadow: 0 0 0 1px rgba(255, 255, 255, .22);
}
.dw-cm-av img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 50%;
}
.dw-cm-name {
flex: 0 0 auto;
display: block;
font-weight: 700;
color: rgba(255, 255, 255, .62);
}
.dw-cm-msg {
flex: 0 1 auto;
min-width: 0;
display: block;
overflow: hidden;
text-overflow: ellipsis;
font-weight: 400;
color: #fff;
}
@media (min-width: 992px) {
.ways-card .ways-visual .dw-cm { font-size: 9px; }
}
.dw-cm--stack {
--dw-cm-wait: 160%;
--dw-cm-step: -125%;
opacity: 0;
transform: translateY(var(--dw-cm-wait));
}
.dw-label {
display: block;
font-size: .85em;
font-weight: 700;
letter-spacing: .07em;
line-height: 1.25;
text-transform: uppercase;
white-space: nowrap;
color: rgba(43, 41, 45, .42);
}
.dw-label--strong { color: rgba(43, 41, 45, .6); }
.dw-label--onmedia {
color: rgba(255, 255, 255, .72);
text-shadow: 0 1px 2px rgba(43, 41, 45, .5);
}
video.cast { opacity: 0; transition: opacity .22s linear; }
.pillar-panel.is-cast video.cast,
.ways-card.is-cast video.cast { opacity: 1; }
.vint, .vint * { box-sizing: border-box; }
.vint {
position: absolute;
inset: 0;
display: block;
border-radius: 6px;
overflow: hidden;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.vint-frame {
position: absolute; top: 6px; right: 6px; bottom: 6px; left: 6px;
display: flex; overflow: hidden; border-radius: 4px;
}
.vint-game {
flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column;
padding: 4% 5.5% 3.5%; background: rgba(43, 41, 45, .045);
}
.vint-top { flex: 0 0 auto; position: relative; display: flex; align-items: center; justify-content: space-between; height: 16px; }
.vint-round { display: block; width: 26px; height: 4px; border-radius: 2px; background: rgba(43, 41, 45, .2); }
.vint-next  { display: block; width: 30px; height: 4px; border-radius: 2px; background: rgba(43, 41, 45, .2);
opacity: 0; transform: translateY(4px); }
.vint-timer {
position: absolute; top: 0; left: 50%; margin-left: -8px;
display: block; width: 16px; height: 16px; overflow: hidden; border-radius: 50%;
background: #fff; box-shadow: inset 0 0 0 1.5px rgba(43, 41, 45, .16);
}
.vint-tick { display: block; transform: translateY(0); }
.vint-sec  { display: block; height: 16px; font-size: 9px; font-weight: 700; line-height: 16px; text-align: center; color: #2B292D; }
.vint-qwrap { flex: 1 1 auto; min-height: 0; display: flex; flex-direction: column; justify-content: center; }
.vint-qline { display: block; height: 5px; border-radius: 3px; background: rgba(43, 41, 45, .34); }
.vint-qline--1 { width: 92%; }
.vint-qline--2 { width: 58%; margin-top: 4px; background: rgba(43, 41, 45, .24); }
.vint-opts { flex: 0 0 61.5%; min-height: 0; display: flex; flex-direction: column; gap: 4px; }
.vint-opt {
flex: 1 1 0; min-height: 0; position: relative; display: flex; align-items: center; gap: 5px;
padding: 0 5px; overflow: hidden; border-radius: 4px; background: rgba(43, 41, 45, .075);
transform: scale(1);
}
.vint-bar {
position: absolute; top: 0; bottom: 0; left: 0; z-index: 0; display: block;
background: rgba(43, 41, 45, .2); transform: scaleX(0); transform-origin: left center;
}
.vint-opt--1 .vint-bar { width: 34%; }
.vint-opt--2 .vint-bar { width: 24%; }
.vint-opt--3 .vint-bar { width: 62%; }
.vint-opt--4 .vint-bar { width: 19%; }
.vint-opt--3 .vint-bar:before,
.vint-opt--3 .vint-badge:before {
content: ""; position: absolute; inset: 0; z-index: -1; display: block;
border-radius: inherit; background: #00ffff; opacity: 0;
}
.vint-badge {
position: relative; z-index: 1; flex: 0 0 auto; display: block; width: 13px; height: 13px;
border-radius: 50%; background: #fff; font-size: 8px; font-weight: 700; line-height: 13px;
text-align: center; color: #2B292D;
}
.vint-label { position: relative; z-index: 1; flex: 0 0 auto; display: block; height: 5px; border-radius: 3px; background: rgba(43, 41, 45, .38); }
.vint-opt--1 .vint-label { width: 38%; }
.vint-opt--2 .vint-label { width: 28%; }
.vint-opt--3 .vint-label { width: 34%; }
.vint-opt--4 .vint-label { width: 24%; }
.vint-res {
position: relative; z-index: 1; flex: 0 0 auto; margin-left: auto;
display: flex; align-items: center; gap: 3px;
opacity: 0; transform: translateY(4px);
}
.vint-faces { display: flex; }
.vint-faces > img { display: block; width: 10px; height: 10px; border-radius: 50%; object-fit: cover; }
.vint-faces > img + img { margin-left: 1.5px; }
.vint-count { display: block; font-size: 8px; font-weight: 700; line-height: 1; color: rgba(43, 41, 45, .55); }
.vint-opt--3 .vint-count { color: #2B292D; }
.vint-foot {
flex: 0 0 auto; display: block; margin-top: 5px; font-size: 8px; font-weight: 700;
line-height: 9px; text-align: center; color: rgba(43, 41, 45, .5);
}
.vint-cam { flex: 0 0 33%; position: relative; display: block; overflow: hidden; background: rgba(43, 41, 45, .12); }
.vint-shot { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.vint .dw-live { top: 6px; left: 6px; z-index: 2; }
.vint .dw-cm {
left: 6px; bottom: 6px; z-index: 2;
max-width: calc(100% - 12px);
transition: transform .5s cubic-bezier(.22, .72, .24, 1),
opacity   .5s cubic-bezier(.22, .72, .24, 1);
}
.vint .vint-cm--1 { transform: translateY(0);    opacity: 1; }
.vint .vint-cm--2 { transform: translateY(150%); opacity: 0; }
.vint .vint-cm--3 { transform: translateY(150%); opacity: 0; }
@keyframes vint-tick {
0%,     7%   { transform: translateY(0); }
8%,    15%   { transform: translateY(-16px); }
16%,   23%   { transform: translateY(-32px); }
24%,   31%   { transform: translateY(-48px); }
32%,   92%   { transform: translateY(-64px); }
92.5%, 100%  { transform: translateY(0); }
}
@keyframes vint-out {
0%,  38%  { opacity: 1; }
44%, 92%  { opacity: 0; }
99%, 100% { opacity: 1; }
}
@keyframes vint-in {
0%,  46%  { opacity: 0; transform: translateY(4px); }
56%, 90%  { opacity: 1; transform: translateY(0); }
95%, 100% { opacity: 0; transform: translateY(4px); }
}
@keyframes vint-fill {
0%,      40%  { transform: scaleX(0); opacity: 1; }
50%,     90%  { transform: scaleX(1); opacity: 1; }
95%           { transform: scaleX(1); opacity: 0; }
95.01%,  98%  { transform: scaleX(0); opacity: 0; }
100%          { transform: scaleX(0); opacity: 1; }
}
@keyframes vint-fill-win {
0%,      40%  { transform: scaleX(0); opacity: 1; }
50%,     54%  { transform: scaleX(1); opacity: 1; }
62%,     90%  { transform: scaleX(1); opacity: 1; }
95%           { transform: scaleX(1); opacity: 0; }
95.01%,  98%  { transform: scaleX(0); opacity: 0; }
100%          { transform: scaleX(0); opacity: 1; }
}
@keyframes vint-fill-win-cyan {
0%,      54%  { opacity: 0; }
62%,     95%  { opacity: 1; }
95.01%, 100%  { opacity: 0; }
}
@keyframes vint-correct {
0%,  54%  { opacity: 0; }
62%, 90%  { opacity: 1; }
96%, 100% { opacity: 0; }
}
@keyframes vint-pop {
0%,  54%  { transform: scale(1); }
61%       { transform: scale(1.05); }
70%, 100% { transform: scale(1); }
}
@keyframes vint-cm1 {
0%,     12%  { transform: translateY(0);     opacity: 1; }
18%,    25%  { transform: translateY(-115%); opacity: 1; }
31%,    88%  { transform: translateY(-230%); opacity: 1; }
93%          { transform: translateY(-230%); opacity: 0; }
93.01%, 96%  { transform: translateY(0);     opacity: 0; }
100%         { transform: translateY(0);     opacity: 1; }
}
@keyframes vint-cm2 {
0%,     13%  { transform: translateY(150%);  opacity: 0; }
18%,    25%  { transform: translateY(0);     opacity: 1; }
31%,    88%  { transform: translateY(-115%); opacity: 1; }
93%          { transform: translateY(-115%); opacity: 0; }
93.01%, 100% { transform: translateY(150%);  opacity: 0; }
}
@keyframes vint-cm3 {
0%,     26%  { transform: translateY(150%);  opacity: 0; }
31%,    88%  { transform: translateY(0);     opacity: 1; }
93%          { transform: translateY(0);     opacity: 0; }
93.01%, 100% { transform: translateY(150%);  opacity: 0; }
}
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-tick { animation: vint-tick 7.5s cubic-bezier(.45, 0, .15, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-timer,
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-label,
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-foot { animation: vint-out 7.5s ease-in-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-next { animation: vint-in 7.5s cubic-bezier(.2, .8, .2, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--1 .vint-bar { animation: vint-fill     7.5s cubic-bezier(.25, .9, .3, 1) 0s   infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--2 .vint-bar { animation: vint-fill     7.5s cubic-bezier(.25, .9, .3, 1) .07s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--3 .vint-bar { animation: vint-fill-win 7.5s cubic-bezier(.25, .9, .3, 1) .14s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--3 .vint-bar:before { animation: vint-fill-win-cyan 7.5s cubic-bezier(.25, .9, .3, 1) .14s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--4 .vint-bar { animation: vint-fill     7.5s cubic-bezier(.25, .9, .3, 1) .21s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--1 .vint-res { animation: vint-in 7.5s cubic-bezier(.2, .8, .2, 1) 0s   infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--2 .vint-res { animation: vint-in 7.5s cubic-bezier(.2, .8, .2, 1) .07s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--3 .vint-res { animation: vint-in 7.5s cubic-bezier(.2, .8, .2, 1) .14s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--4 .vint-res { animation: vint-in 7.5s cubic-bezier(.2, .8, .2, 1) .21s infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--3 { animation: vint-pop     7.5s cubic-bezier(.3, 1.4, .5, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-opt--3 .vint-badge:before { animation: vint-correct 7.5s ease-in-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-cm--1 { animation: vint-cm1 7.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-cm--2 { animation: vint-cm2 7.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint-cm--3 { animation: vint-cm3 7.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vint .dw-live .dw-live-dot { animation: dw-pulse 1.25s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
.vint, .vint *, .vint *:before,
.ways-card:hover .vint *,
.ways-card:hover .vint *:before {
animation: none !important;
transition: none !important;
}
}
.v247, .v247 * { box-sizing: border-box; }
.v247 {
position: absolute;
inset: 0;
display: block;
border-radius: 6px;
overflow: hidden;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.v247-stage { position: absolute; inset: 5% 10%; display: flex; flex-direction: column; }
.v247-screen {
position: relative; display: block; flex: 0 0 auto;
width: 83.3%; margin: 0 auto; aspect-ratio: 16 / 9;
overflow: hidden; border-radius: 3px; background: rgba(43, 41, 45, .07);
}
.v247-reel { position: absolute; inset: 0; display: flex; width: 500%; transform: translateX(0); }
.v247-panel { position: relative; flex: 0 0 20%; display: block; }
.v247-panel > img, .v247-panel > video {
position: absolute; inset: 0;
display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 38%;
}
.v247-sweep {
position: absolute; z-index: 2; top: 0; bottom: 0; left: 0; width: 100%;
transform: translateX(108%); pointer-events: none;
}
.v247-sweep:before {
content: ""; position: absolute; top: 0; bottom: 0; left: 0; display: block; width: 3px;
background: #00ffff; box-shadow: 0 0 10px 2px rgba(0, 255, 255, .55);
}
.v247-scrim {
position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; display: block; height: 58%;
background: linear-gradient(to bottom, rgba(43, 41, 45, 0), rgba(43, 41, 45, .74));
}
.v247-meta { position: absolute; right: 5%; bottom: 13%; left: 5%; z-index: 3; display: block; }
.v247-name {
display: block; width: 46%; height: 6px; border-radius: 3px;
background: rgba(255, 255, 255, .88);
transform: scaleX(1); transform-origin: left center;
}
.v247-sub {
display: block; width: 24%; height: 4px; margin-top: 4px; border-radius: 3px;
background: rgba(255, 255, 255, .5);
}
.v247-chip {
position: absolute; top: 7%; z-index: 3; display: flex; align-items: center;
overflow: hidden; border-radius: 3px; color: #fff;
font-size: 8.5px; font-weight: 700; letter-spacing: .06em; line-height: 1.4;
text-transform: uppercase; white-space: nowrap;
}
.v247-chip--always { right: 4%; padding: 3px 6px; background: rgba(43, 41, 45, .88); }
.v247 .dw-live { top: 7%; left: 4%; z-index: 3; }
.v247-rail { position: relative; display: block; flex: 1 1 auto; margin-top: 3%; overflow: hidden; }
.v247-strip { display: flex; width: 210%; height: 100%; transform: translateX(0); }
.v247-tile {
flex: 0 0 12.5%; display: block; overflow: hidden; border-right: 5px solid transparent;
border-radius: 3px; background: rgba(43, 41, 45, .15); background-clip: padding-box;
}
.v247-tile > img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 2px; }
.v247-veil {
position: absolute; z-index: 1; inset: 0; display: block; pointer-events: none;
background: linear-gradient(to right,
rgba(255, 255, 255, .82) 0%,
rgba(255, 255, 255, .55) 14%,
rgba(255, 255, 255, .55) 22%,
rgba(255, 255, 255, 0)   27.5%,
rgba(255, 255, 255, 0)   50.5%,
rgba(255, 255, 255, .55) 56%,
rgba(255, 255, 255, .55) 82%,
rgba(255, 255, 255, .86) 100%);
}
.v247-done {
position: absolute; z-index: 2; top: 50%; left: 13.1%; display: block; width: 13px; height: 13px;
margin: -6.5px 0 0 -6.5px; border-radius: 50%; background: rgba(43, 41, 45, .88);
}
.v247-done:after {
content: ""; position: absolute; top: 50%; left: 50%; display: block; width: 3.5px; height: 6.5px;
margin: -4.5px 0 0 -1.75px; border: solid #fff; border-width: 0 1.5px 1.5px 0;
transform: rotate(42deg);
}
.v247-onair {
position: absolute; z-index: 2; top: 0; bottom: 0; left: 26.25%; right: calc(47.5% + 5px);
display: block; border-radius: 3px; box-shadow: inset 0 0 0 2px #00ffff;
opacity: 1; transform: scale(1);
}
.v247-mini {
position: absolute; right: 9%; bottom: 11%; left: 9%; display: block; height: 3px;
overflow: hidden; border-radius: 2px; background: rgba(255, 255, 255, .34);
}
.v247-minifill {
display: block; width: 100%; height: 100%; background: #00ffff;
transform: scaleX(.565); transform-origin: left center;
}
.v247-next {
position: absolute; z-index: 2; top: 11%; left: 54.5%; display: block; padding: 2px 4px;
border-radius: 3px; background: rgba(43, 41, 45, .88); color: #fff;
font-size: 8px; font-weight: 700; letter-spacing: .06em; line-height: 1.4;
text-transform: uppercase; white-space: nowrap;
}
@keyframes v247-reel {
0%,  10%  { transform: translateX(0); }
15%, 35%  { transform: translateX(-20%); }
40%, 60%  { transform: translateX(-40%); }
65%, 85%  { transform: translateX(-60%); }
90%, 100% { transform: translateX(-80%); }
}
@keyframes v247-strip {
0%,  10%  { transform: translateX(0); }
15%, 35%  { transform: translateX(-12.5%); }
40%, 60%  { transform: translateX(-25%); }
65%, 85%  { transform: translateX(-37.5%); }
90%, 100% { transform: translateX(-50%); }
}
@keyframes v247-name {
0%,  10%  { transform: scaleX(1); }
15%, 35%  { transform: scaleX(.74); }
40%, 60%  { transform: scaleX(.92); }
65%, 85%  { transform: scaleX(.62); }
90%, 100% { transform: scaleX(1); }
}
@keyframes v247-fill {
0%     { transform: scaleX(.565); }
10%    { transform: scaleX(1); }
12.5%  { transform: scaleX(1); }
12.51% { transform: scaleX(.02); }
35%    { transform: scaleX(1); }
37.5%  { transform: scaleX(1); }
37.51% { transform: scaleX(.02); }
60%    { transform: scaleX(1); }
62.5%  { transform: scaleX(1); }
62.51% { transform: scaleX(.02); }
85%    { transform: scaleX(1); }
87.5%  { transform: scaleX(1); }
87.51% { transform: scaleX(.02); }
100%   { transform: scaleX(.565); }
}
@keyframes v247-sweep {
0%,     38%  { transform: translateX(108%); }
40%          { transform: translateX(100%); }
60%          { transform: translateX(0); }
63%          { transform: translateX(-8%); }
63.01%, 100% { transform: translateX(108%); }
}
@keyframes v247-ring {
0%,  40%  { opacity: 1; transform: scale(1); }
46%       { opacity: 0; transform: scale(1); }
58%       { opacity: 0; transform: scale(1.13); }
66%       { opacity: 1; transform: scale(1.13); }
78%, 100% { opacity: 1; transform: scale(1); }
}
@keyframes v247-mark {
0%,  40%  { opacity: 1; }
46%, 58%  { opacity: 0; }
70%, 100% { opacity: 1; }
}
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-reel { animation: v247-reel  10s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-strip { animation: v247-strip 10s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-name { animation: v247-name  10s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-minifill { animation: v247-fill  10s linear infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-sweep { animation: v247-sweep 2.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-onair { animation: v247-ring  2.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-done,
.ways-card:is(:hover, :focus-visible, .is-playing) .v247-next { animation: v247-mark  2.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .v247 .dw-live .dw-live-dot { animation: dw-pulse 2.5s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) {
.v247, .v247 *,
.ways-card:hover .v247 * {
animation: none !important;
transition: none !important;
}
}
.vpre, .vpre * { box-sizing: border-box; }
.vpre {
position: absolute;
inset: 0;
display: block;
border-radius: 6px;
overflow: hidden;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.vpre-app {
position: absolute; z-index: 1; inset: 0; display: block;
container-type: size;
transition: opacity .35s ease, transform .35s ease;
}
.vpre-desk {
position: absolute; top: 0; bottom: 0; left: 0; width: 34%;
display: block; background: rgba(43, 41, 45, .028);
border-right: 1px solid rgba(43, 41, 45, .07);
}
.vpre-tile {
position: absolute; top: 48%; width: 17%; height: 30.222%;
display: block; border-radius: 3px; background: rgba(43, 41, 45, .055);
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .07);
}
.vpre-tile--1 { left: 37%; }
.vpre-tile--2 { left: 57.75%; }
.vpre-tile--3 { left: 78.5%; }
.vpre-play {
position: absolute; top: 50%; left: 50%; display: block; width: 0; height: 0;
margin: -4px 0 0 -3px;
border-style: solid; border-width: 4px 0 4px 6.5px;
border-color: transparent transparent transparent rgba(43, 41, 45, .26);
}
.vpre-drop {
position: absolute; z-index: 2; top: 20%; right: 4.5%; left: 37%; height: 20%;
display: flex; align-items: center; justify-content: center; gap: 6%;
border: 1px dashed rgba(43, 41, 45, .26); border-radius: 4px;
background: rgba(43, 41, 45, .03);
transition: opacity .35s ease, border-color .35s ease, background-color .35s ease;
}
.vpre-arrow { position: relative; flex: 0 0 auto; display: block; width: 9px; height: 11px; }
.vpre-arrow:before {
content: ""; position: absolute; top: 4px; left: 3.5px; display: block;
width: 2px; height: 7px; border-radius: 1px; background: rgba(43, 41, 45, .34);
}
.vpre-arrow:after {
content: ""; position: absolute; top: 0; left: 0; display: block; width: 0; height: 0;
border-style: solid; border-width: 0 4.5px 5px 4.5px;
border-color: transparent transparent rgba(43, 41, 45, .34) transparent;
}
.vpre-hint { flex: 0 0 auto; display: block; width: 26%; height: 5px; border-radius: 3px; background: rgba(43, 41, 45, .16); }
.vpre-row1 {
position: absolute; z-index: 2; top: 20%; right: 4.5%; left: 37%; height: 20%;
display: block; border-radius: 4px; background: #fff; opacity: 0;
box-shadow: 0 1px 3px rgba(43, 41, 45, .07), inset 0 0 0 1px rgba(43, 41, 45, .1);
transition: opacity .35s ease;
}
.vpre-rmeta {
position: absolute; z-index: 3; top: 30%; right: 6.5%; left: 53.9%;
display: flex; flex-direction: column; gap: 5px;
transform: translateY(-50%);
opacity: 0; transition: opacity .35s ease;
}
.vpre-rtop  { display: flex; align-items: center; gap: 5px; }
.vpre-fname { flex: 1 1 auto; display: block; height: 5px; border-radius: 3px; background: rgba(43, 41, 45, .5); }
.vpre-pct {
flex: 0 0 auto; display: block; width: 24px; height: 1.3em; overflow: hidden;
font-size: 7.5px; font-weight: 700; line-height: 1.3em; letter-spacing: 0;
text-align: right; color: rgba(43, 41, 45, .72);
}
.vpre-pctroll { display: block; transform: translateY(0); }
.vpre-pct-n   { display: block; height: 1.3em; }
.vpre-track { display: block; width: 100%; height: 4px; overflow: hidden; border-radius: 2px; background: rgba(43, 41, 45, .1); }
.vpre-fill  { display: block; width: 100%; height: 100%; border-radius: 2px; background: #00ffff; transform: translateX(-100%); transition: transform .35s ease; }
.vpre-file {
position: absolute; z-index: 4; top: 30%; left: 3%; width: 29%;
display: block; padding: 2%; border-radius: 4px; background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
transition: opacity .35s ease, transform .4s ease;
}
.vpre-file:before,
.vpre-file:after {
content: ""; position: absolute; inset: 0; z-index: -1; display: block;
border-radius: inherit; transition: opacity .35s ease;
}
.vpre-file:before { box-shadow: 0 2px 7px rgba(43, 41, 45, .13); }
.vpre-file:after  { box-shadow: 0 11px 22px rgba(43, 41, 45, .2); opacity: 0; }
.vpre-slot { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 3px; background: rgba(43, 41, 45, .08); }
.vpre-name {
display: block; margin-top: 6px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
font-size: 8.5px; font-weight: 700; line-height: 1.2; color: #2B292D;
}
.vpre-meta {
display: block; margin-top: 3px; white-space: nowrap;
font-size: 7.5px; font-weight: 600; line-height: 1.2; color: rgba(43, 41, 45, .5);
}
.vpre-shot {
position: absolute; z-index: 5; top: 33.5556%; left: 5%; width: 25%; height: 25%;
display: block; overflow: hidden; border-radius: 3px; background: rgba(43, 41, 45, .07);
transition: top .4s ease, left .4s ease, width .4s ease, height .4s ease,
opacity .4s ease, border-radius .4s ease, transform .4s ease;
}
.vpre-shot > img,
.vpre-shot > video {
position: absolute; inset: 0;
display: block; width: 100%; height: 100%; object-fit: cover;
}
.vpre-kind {
position: absolute; bottom: 4px; left: 4px; display: block;
padding: 2px 3.5px; border-radius: 2px; background: rgba(43, 41, 45, .82);
color: #fff; font-size: 7px; font-weight: 700; line-height: 1; letter-spacing: .04em;
transition: opacity .35s ease;
}
.vpre-cursor {
position: absolute; z-index: 8; top: 0; left: 0; display: block; width: 100%; height: 100%;
pointer-events: none; opacity: 0; transform: translate(-8%, 104%) scale(1); transform-origin: 0 0;
transition: opacity .3s ease;
filter: drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff)
drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)
drop-shadow(0 1px 2.5px rgba(43, 41, 45, .5));
}
.vpre-cursor:before {
content: ""; position: absolute; top: 0; left: 0; display: block; width: 12px; height: 17px; background: #2B292D;
clip-path: polygon(0 0, 0 78%, 24% 60%, 39% 97%, 60% 88%, 45% 53%, 73% 53%);
}
.vpre .dw-live {
top: 8.8889%; left: 5%; z-index: 9;
opacity: 0; transform: translateY(6px) scale(.92);
transition: opacity .35s ease, transform .35s ease;
}
.vpre .dw-cm {
z-index: 9; left: 5%; bottom: 8.8889%;
max-width: 56%;
transition: opacity .35s ease, transform .35s ease;
}
.vpre-bar {
position: absolute; z-index: 9; right: 0; bottom: 0; left: 0;
display: block; height: 4px; overflow: hidden; background: rgba(43, 41, 45, .5); opacity: 0;
transition: opacity .35s ease;
}
.vpre-barfill { display: block; width: 100%; height: 100%; background: #00ffff; transform: translateX(-100%); transition: transform .35s ease; }
@keyframes vpre-shot {
0%, 10%     { top: 33.5556%; left: 5%;     width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
12%         { top: 31%;      left: 6.5%;   width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.55, 0, .75, .5); }
17.5%       { top: 20.5%;    left: 28%;    width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
24%         { top: 17.5%;    left: 53.75%; width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: rotate(-1.1deg) scale(1.03);
animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
25%         { top: 17.5%;    left: 53.75%; width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.3, .85, .35, 1); }
29%, 42%    { top: 23.5556%; left: 39%;    width: 12.889%; height: 12.889%; border-radius: 2px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.55, 0, .15, 1); }
50%         { top: 0;        left: 0;      width: 100%;    height: 100%;    border-radius: 6px; opacity: 1; transform: none;
animation-timing-function: linear; }
91%         { top: 0;        left: 0;      width: 100%;    height: 100%;    border-radius: 6px; opacity: 1; transform: scale(1.04);
animation-timing-function: ease-out; }
93.4%       { top: 0;        left: 0;      width: 100%;    height: 100%;    border-radius: 6px; opacity: 0; transform: scale(1.09); }
93.6%       { top: 33.5556%; left: 5%;     width: 25%;     height: 25%;     border-radius: 3px; opacity: 0; transform: translateY(5px);
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
97.5%, 100% { top: 33.5556%; left: 5%;     width: 25%;     height: 25%;     border-radius: 3px; opacity: 1; transform: none; }
}
@keyframes vpre-file {
0%, 10%     { opacity: 1; transform: translate(0, 0) rotate(0) scale(1);
animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
12%         { opacity: 1; transform: translate(1.5cqw, -2.5556cqh) rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.55, 0, .75, .5); }
17.5%       { opacity: 1; transform: translate(23cqw, -13.0556cqh) rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
24%         { opacity: 1; transform: translate(48.75cqw, -16.0556cqh) rotate(-1.1deg) scale(1.03);
animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
25%         { opacity: 1; transform: translate(48.75cqw, -16.0556cqh) rotate(0) scale(1);
animation-timing-function: ease-out; }
27%, 64%    { opacity: 0; transform: translate(48.75cqw, -16.0556cqh) rotate(0) scale(.94); }
66%, 100%   { opacity: 1; transform: translate(0, 0) rotate(0) scale(1); }
}
@keyframes vpre-file-rest {
0%, 10%     { opacity: 1; animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
12%         { opacity: 0; animation-timing-function: cubic-bezier(.55, 0, .75, .5); }
17.5%       { opacity: 0; animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
24%         { opacity: 0; animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
25%         { opacity: 1; animation-timing-function: ease-out; }
27%, 64%    { opacity: 0; }
66%, 100%   { opacity: 1; }
}
@keyframes vpre-file-lift {
0%, 10%     { opacity: 0; animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
12%         { opacity: 1; animation-timing-function: cubic-bezier(.55, 0, .75, .5); }
17.5%       { opacity: 1; animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
24%         { opacity: 1; animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
25%, 100%   { opacity: 0; }
}
@keyframes vpre-cursor {
0%, 3%      { transform: translate(-8%, 104%) scale(1);        opacity: 0;
animation-timing-function: cubic-bezier(.2, .7, .3, 1); }
6%          { opacity: 1; }
8%          { transform: translate(17.5%, 46.0556%) scale(1);  opacity: 1; }
9%          { transform: translate(17.5%, 46.0556%) scale(.82); }
10%         { transform: translate(17.5%, 46.0556%) scale(1);  opacity: 1;
animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
12%         { transform: translate(19%, 43.5%) scale(1);       animation-timing-function: cubic-bezier(.55, 0, .75, .5); }
17.5%       { transform: translate(40.5%, 33%) scale(1);       animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
24%         { transform: translate(66.25%, 30%) scale(1);      opacity: 1; }
25%         { transform: translate(66.25%, 30%) scale(.82); }
26%         { transform: translate(66.25%, 30%) scale(1);      opacity: 1;
animation-timing-function: cubic-bezier(.4, 0, .6, 1); }
30%         { transform: translate(95%, 78%) scale(1);         opacity: 0; }
32%, 100%   { transform: translate(-8%, 104%) scale(1);        opacity: 0; }
}
@keyframes vpre-app {
0%, 51%     { opacity: 1; transform: none; }
53%, 93.6%  { opacity: 0; transform: translateY(5px); }
97.5%, 100% { opacity: 1; transform: none; }
}
@keyframes vpre-drop {
0%, 21%     { opacity: 1; border-color: rgba(43, 41, 45, .26); background: rgba(43, 41, 45, .03); }
23.5%, 25%  { opacity: 1; border-color: rgba(0, 255, 255, 1);  background: rgba(0, 255, 255, .24); }
27%, 64%    { opacity: 0; border-color: rgba(0, 255, 255, 1);  background: rgba(0, 255, 255, .24); }
66%, 100%   { opacity: 1; border-color: rgba(43, 41, 45, .26); background: rgba(43, 41, 45, .03); }
}
@keyframes vpre-row1 {
0%, 26%     { opacity: 0; }
29%, 40%    { opacity: 1; }
42%, 100%   { opacity: 0; }
}
@keyframes vpre-fill {
0%, 29%     { transform: translateX(-100%); }
38%, 64%    { transform: translateX(0); }
66%, 100%   { transform: translateX(-100%); }
}
@keyframes vpre-kind {
0%, 24%     { opacity: 1; }
26%, 93.4%  { opacity: 0; }
93.6%, 100% { opacity: 1; }
}
@keyframes vpre-live {
0%, 49%     { opacity: 0; transform: translateY(6px) scale(.92); }
54%, 89%    { opacity: 1; transform: translateY(0)   scale(1); }
92%, 100%   { opacity: 0; transform: translateY(6px) scale(.92); }
}
@keyframes vpre-bar {
0%, 49%     { opacity: 0; }
53%, 89%    { opacity: 1; }
92%, 100%   { opacity: 0; }
}
@keyframes vpre-barfill {
0%, 51%     { transform: translateX(-100%); }
89%, 92%    { transform: translateX(-42%); }
93%, 100%   { transform: translateX(-100%); }
}
@keyframes vpre-pct {
0%,    31.4% { transform: translateY(0); }
32.1%, 34.7% { transform: translateY(-1.3em); }
35.4%, 37.1% { transform: translateY(-2.6em); }
37.8%, 64%   { transform: translateY(-3.9em); }
66%,   100%  { transform: translateY(0); }
}
@keyframes vpre-count {
0%,    55%   { transform: translateY(0); }
57.4%, 60%   { transform: translateY(-12.5%); }
62.4%, 65%   { transform: translateY(-25%); }
67.4%, 70%   { transform: translateY(-37.5%); }
72.4%, 75%   { transform: translateY(-50%); }
77.4%, 80%   { transform: translateY(-62.5%); }
82.4%, 85%   { transform: translateY(-75%); }
87.4%, 92%   { transform: translateY(-87.5%); }
92.1%, 100%  { transform: translateY(0); }
}
@keyframes vpre-cm1 {
0%,  56%     { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
60%, 66%     { opacity: 1; transform: translateY(0); }
70%, 76%     { opacity: 1; transform: translateY(var(--dw-cm-step)); }
80%, 91%     { opacity: 1; transform: translateY(calc(var(--dw-cm-step) * 2)); }
93.2%        { opacity: 0; transform: translateY(calc(var(--dw-cm-step) * 2)); }
93.6%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
@keyframes vpre-cm2 {
0%,  66%     { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
70%, 76%     { opacity: 1; transform: translateY(0); }
80%, 91%     { opacity: 1; transform: translateY(var(--dw-cm-step)); }
93.2%        { opacity: 0; transform: translateY(var(--dw-cm-step)); }
93.6%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
@keyframes vpre-cm3 {
0%,  76%     { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
80%, 91%     { opacity: 1; transform: translateY(0); }
93.2%        { opacity: 0; transform: translateY(0); }
93.6%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-app { animation: vpre-app     9.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-file { animation: vpre-file    9.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-file:before { animation: vpre-file-rest 9.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-file:after  { animation: vpre-file-lift 9.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-shot { animation: vpre-shot    9.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-kind { animation: vpre-kind    9.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-cursor { animation: vpre-cursor  9.5s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-drop { animation: vpre-drop    9.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-row1 { animation: vpre-row1    9.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-rmeta { animation: vpre-row1    9.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-fill { animation: vpre-fill    9.5s linear infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre .dw-live { animation: vpre-live    9.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-bar { animation: vpre-bar     9.5s ease-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-barfill { animation: vpre-barfill 9.5s linear infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre .dw-live .dw-live-dot { animation: dw-pulse    1.9s ease-in-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre .dw-live .dw-count-roll { animation: vpre-count  9.5s var(--dw-count-ease) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-pctroll { animation: vpre-pct    9.5s cubic-bezier(.45, 0, .15, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-cm--1 { animation: vpre-cm1    9.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-cm--2 { animation: vpre-cm2    9.5s cubic-bezier(.22, .72, .24, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vpre-cm--3 { animation: vpre-cm3    9.5s cubic-bezier(.22, .72, .24, 1) infinite; }
@media (prefers-reduced-motion: reduce) {
.vpre, .vpre *, .vpre *:before, .vpre *:after,
.ways-card:hover .vpre *,
.ways-card:hover .vpre *:before,
.ways-card:hover .vpre *:after {
animation: none !important;
transition: none !important;
}
}
.vstu, .vstu * { box-sizing: border-box; }
.vstu {
position: absolute;
inset: 0;
display: block;
border-radius: 6px;
overflow: hidden;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.vstu { --turn: 8.4s; }
.vstu-inner { position: absolute; inset: 7% 5%; display: block; }
.vstu-stage {
position: absolute; left: 0; right: 0; top: 0; height: 72%; display: block;
border-radius: 4px; background: rgba(43, 41, 45, .035);
overflow: hidden;
contain: layout paint;
}
.vstu-tile {
position: absolute; display: block; z-index: 0; background: #fff; border-radius: 3px;
transition: left .45s cubic-bezier(.65, 0, .35, 1), top .45s cubic-bezier(.65, 0, .35, 1),
width .45s cubic-bezier(.65, 0, .35, 1), height .45s cubic-bezier(.65, 0, .35, 1),
opacity .45s cubic-bezier(.65, 0, .35, 1);
}
.vstu-tile--host { left: 0;      top: 0; width: 49.25%; height: 100%; }
.vstu-tile--g1   { left: 50.75%; top: 0; width: 49.25%; height: 100%; }
.vstu-tile--g2   { left: 101%; top: 51.75%; width: 32.5%; height: 48.25%; opacity: 0; z-index: 1; }
.vstu-media {
position: absolute; inset: 0; display: block; border-radius: 3px;
background: rgba(43, 41, 45, .1); overflow: hidden;
}
.vstu-media img, .vstu-media video {
position: absolute; inset: 0; display: block; width: 100%; height: 100%;
object-fit: cover; border-radius: inherit;
}
.vstu-share {
position: absolute; left: 0; top: 0; width: 66%; height: 100%; z-index: 2;
display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
gap: 5px; padding: 0 12%; border-radius: 3px; background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .14);
opacity: 0; transform: scale(.985);
transition: opacity .45s cubic-bezier(.65, 0, .35, 1), transform .45s cubic-bezier(.65, 0, .35, 1);
}
.vstu-bar { display: block; height: 5px; border-radius: 3px; background: rgba(43, 41, 45, .16); }
.vstu-bar--title { width: 38%; margin-bottom: .4em; background: rgba(43, 41, 45, .24); }
.vstu-bar--long  { width: 74%; }
.vstu-bar--mid   { width: 60%; }
.vstu-bar--short { width: 41%; }
.vstu .dw-live { top: 6.5%; left: 2.5%; z-index: 3; }
.vstu-count {
position: absolute; right: 36%; bottom: 6.5%; width: 16%; height: 24%; z-index: 2;
display: flex; align-items: center; justify-content: center;
border-radius: 3px; background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .18);
color: #2B292D;
font-size: 8.5px; font-weight: 700; line-height: 1.4; letter-spacing: .01em;
white-space: nowrap;
opacity: 0; transform: scale(.985);
transition: opacity .45s cubic-bezier(.65, 0, .35, 1),
transform .45s cubic-bezier(.65, 0, .35, 1);
}
.vstu-count-lead { display: block; }
.vstu-count-win  { display: block; height: 1.4em; overflow: hidden; }
.vstu-count-roll { display: block; transform: translateY(0); }
.vstu-count-s    { display: block; height: 1.4em; text-align: center; }
.vstu-minicount {
position: absolute; right: 7%; bottom: 9%; display: block;
width: 30%; height: 30%; min-height: 4px; border-radius: 1px;
background: #fff; box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .26);
}
.vstu-strip {
position: absolute; left: 0; right: 0; bottom: 0; height: 22%;
display: flex; justify-content: space-between; align-items: stretch;
}
.vstu-scene {
position: relative; display: flex; justify-content: space-between; align-items: stretch;
width: 31.333%; height: 100%; padding: 3px; border-radius: 4px; background: rgba(43, 41, 45, .05);
}
.vstu-mini { display: block; border-radius: 2px; background: rgba(43, 41, 45, .14); }
.vstu-mini--half { width: 49.25%; height: 100%; }
.vstu-mini--big  { width: 66%;    height: 100%; position: relative; }
.vstu-mini--screen { width: 66%; height: 100%; background: #fff; box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .14); }
.vstu-col { display: flex; flex-direction: column; justify-content: space-between; width: 32.5%; height: 100%; }
.vstu-mini--s  { width: 100%; height: 48.25%; }
.vstu-mini--xs { width: 100%; height: 31%; }
.vstu-sel {
position: absolute; top: 0; bottom: 0; left: 0; z-index: 2; display: block; width: 31.333%;
border: 2px solid #00ffff; border-radius: 4px; box-shadow: 0 0 0 3px rgba(0, 255, 255, .18);
transition: transform .45s cubic-bezier(.65, 0, .35, 1);
}
@keyframes vstu-host {
0%, 14%   { left: 0;     top: 0; width: 49.25%; height: 100%; }
26%, 46%  { left: 0;     top: 0; width: 66%;    height: 100%; }
58%, 82%  { left: 67.5%; top: 0; width: 32.5%;  height: 31%; }
96%, 100% { left: 0;     top: 0; width: 49.25%; height: 100%; }
}
@keyframes vstu-g1 {
0%, 14%   { left: 50.75%; top: 0;     width: 49.25%; height: 100%; }
26%, 46%  { left: 67.5%;  top: 0;     width: 32.5%;  height: 48.25%; }
58%, 86%  { left: 67.5%;  top: 34.5%; width: 32.5%;  height: 31%; }
97%, 100% { left: 50.75%; top: 0;     width: 49.25%; height: 100%; }
}
@keyframes vstu-g2 {
0%, 18%   { left: 101%;  top: 51.75%; width: 32.5%; height: 48.25%; opacity: 0; }
30%, 46%  { left: 67.5%; top: 51.75%; width: 32.5%; height: 48.25%; opacity: 1; }
58%, 86%  { left: 67.5%; top: 69%;    width: 32.5%; height: 31%;    opacity: 1; }
94%, 100% { left: 101%;  top: 51.75%; width: 32.5%; height: 48.25%; opacity: 0; }
}
@keyframes vstu-share {
0%, 46%   { opacity: 0; transform: scale(.985); }
58%, 76%  { opacity: 1; transform: scale(1); }
82%, 100% { opacity: 0; transform: scale(.985); }
}
@keyframes vstu-sel {
0%, 12%   { transform: translateX(0); }
20%, 44%  { transform: translateX(109.5746%); }
52%, 80%  { transform: translateX(219.1492%); }
96%, 100% { transform: translateX(0); }
}
@keyframes vstu-count {
0%,  20%   { opacity: 0; transform: scale(.985); }
26%, 49%   { opacity: 1; transform: scale(1); }
55%, 100%  { opacity: 0; transform: scale(.985); }
}
@keyframes vstu-count-roll {
0%,    31.4% { transform: translateY(0); }
32.2%, 43%   { transform: translateY(-1.4em); }
43.8%, 59%   { transform: translateY(-2.8em); }
60%,   100%  { transform: translateY(0); }
}
.vstu .dw-cm {
left: 2.5%; bottom: 6.5%; z-index: 4;
max-width: 42%;
transition: transform .5s cubic-bezier(.22, .72, .24, 1),
opacity   .5s cubic-bezier(.22, .72, .24, 1);
}
.vstu .vstu-cm--1,
.vstu .vstu-cm--2 { transform: translateX(-112%); opacity: 0; }
@media (min-width: 992px) {
.vstu-count { border-radius: 4px; font-size: 11px; }
}
@keyframes vstu-cm1 {
0%,    0.6% { transform: translateX(-112%); opacity: 0; }
0.8%        { transform: translateX(-112%); opacity: 1; animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
3.4%        { transform: translateX(4%);    opacity: 1; animation-timing-function: cubic-bezier(.33, 0, .2, 1); }
5.4%, 29.5% { transform: translateX(0);     opacity: 1; animation-timing-function: cubic-bezier(.3, 0, .2, 1); }
31.5%       { transform: translateX(4%);    opacity: 1; animation-timing-function: cubic-bezier(.55, 0, .85, .4); }
35.3%       { transform: translateX(-112%); opacity: 1; }
35.5%, 100% { transform: translateX(-112%); opacity: 0; }
}
@keyframes vstu-cm2 {
0%,   50.6% { transform: translateX(-112%); opacity: 0; }
50.8%       { transform: translateX(-112%); opacity: 1; animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
53.4%       { transform: translateX(4%);    opacity: 1; animation-timing-function: cubic-bezier(.33, 0, .2, 1); }
55.4%, 79.5% { transform: translateX(0);    opacity: 1; animation-timing-function: cubic-bezier(.3, 0, .2, 1); }
81.5%       { transform: translateX(4%);    opacity: 1; animation-timing-function: cubic-bezier(.55, 0, .85, .4); }
85.3%       { transform: translateX(-112%); opacity: 1; }
85.5%, 100% { transform: translateX(-112%); opacity: 0; }
}
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-tile--host,
.pillar-panel .vstu-tile--host { animation: vstu-host  8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-tile--g1,
.pillar-panel .vstu-tile--g1 { animation: vstu-g1    8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-tile--g2,
.pillar-panel .vstu-tile--g2 { animation: vstu-g2    8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-share,
.pillar-panel .vstu-share { animation: vstu-share 8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-sel,
.pillar-panel .vstu-sel { animation: vstu-sel   8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu .dw-live .dw-live-dot,
.pillar-panel .vstu .dw-live .dw-live-dot { animation: dw-pulse  2.1s ease-in-out infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-count,
.pillar-panel .vstu-count { animation: vstu-count      8.4s cubic-bezier(.65, 0, .35, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-count-roll,
.pillar-panel .vstu-count-roll { animation: vstu-count-roll 8.4s cubic-bezier(.45, 0, .15, 1) infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-cm--1,
.pillar-panel .vstu-cm--1 { animation: vstu-cm1 16.8s linear infinite; }
.ways-card:is(:hover, :focus-visible, .is-playing) .vstu-cm--2,
.pillar-panel .vstu-cm--2 { animation: vstu-cm2 16.8s linear infinite; }
.pillar-preview:has(.vstu) {
background: #fff;
}
.pillar-panel .vstu {
border-radius: 0;
box-shadow: none;
container-type: inline-size;
}
.pillar-panel:not(.is-active) .vstu,
.pillar-panel:not(.is-active) .vstu * {
animation-play-state: paused;
}
.pillar-panel .vstu-count {
font-size: 8.5px;
font-size: calc(4px + .85cqw);
}
.pillar-panel .vstu-bar {
height: 5px;
height: calc(1px + .85cqw);
}
.pillar-panel .vstu-share {
gap: 5px;
gap: calc(1px + .85cqw);
border-radius: 3px;
border-radius: calc(1px + .3cqw);
}
.pillar-panel .vstu-mini {
border-radius: 2px;
border-radius: calc(1px + .16cqw);
}
.pillar-panel .vstu-sel {
border-width: 2px;
border-width: calc(1px + .16cqw);
}
@media (prefers-reduced-motion: reduce) {
.vstu, .vstu *,
.ways-card:hover .vstu *,
.pillar-panel .vstu * {
animation: none !important;
transition: none !important;
}
}
.panim, .panim * { box-sizing: border-box; }
.pillar-preview:has(.panim) {
background: #fff;
}
.panim {
position: absolute;
inset: 0;
overflow: hidden;
container-type: inline-size;
display: flex;
flex-direction: column;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43,41,45,.1);
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
line-height: 1.25;
}
.panim-head,
.panim-body {
font-size: 9px;
font-size: clamp(7.6px, 4px + 1.05cqw, 14px);
}
.panim-head {
flex: 0 0 auto;
display: flex;
align-items: center;
padding: 2.6% 4.2%;
border-bottom: 1px solid rgba(43,41,45,.08);
}
.panim-app { font-size: 1.18em; font-weight: 700; letter-spacing: -.01em; color: rgba(43,41,45,.88); }
.panim-modes {
display: flex;
align-items: center;
gap: .42em;
margin-left: auto;
}
.panim-chip {
display: flex;
align-items: center;
gap: .45em;
padding: .32em .58em;
border-radius: 3px;
box-shadow: inset 0 0 0 1px rgba(43,41,45,.16);
font-size: .88em;
font-weight: 700;
letter-spacing: .07em;
text-transform: uppercase;
white-space: nowrap;
color: rgba(43,41,45,.5);
}
.panim-chipdot {
flex: 0 0 auto;
width: .45em;
height: .45em;
border-radius: 50%;
box-shadow: inset 0 0 0 1px rgba(43,41,45,.3);
}
.panim-chip--on {
position: relative;
isolation: isolate;
background: rgba(0,255,255,.2);
box-shadow: none;
color: rgba(43,41,45,.74);
}
.panim-chip--on:before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
border-radius: inherit;
background: rgba(0,255,255,.35);
opacity: 0;
animation: panim-loopchip 14s linear infinite;
}
.panim-chip--on .panim-chipdot {
background: #00ffff;
box-shadow: 0 0 0 1px rgba(43,41,45,.12);
}
.panim-body {
flex: 1 1 auto;
min-height: 0;
display: flex;
align-items: stretch;
gap: 3.6%;
padding: 3.4% 4.2%;
}
.panim-player {
flex: 0 0 51%;
min-width: 0;
display: flex;
flex-direction: column;
justify-content: center;
}
.panim-screen {
position: relative;
flex: 0 0 auto;
width: 100%;
aspect-ratio: 16 / 9;
overflow: hidden;
border-radius: 4px;
background: rgba(43,41,45,.08);
box-shadow: inset 0 0 0 1px rgba(43,41,45,.06);
}
.panim-shot {
position: absolute;
inset: 0;
display: block;
}
.panim-shot > img,
.panim-shot > video {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.panim-shot--a { opacity: 1; animation: panim-turn-a 14s linear infinite; }
.panim-shot--b { opacity: 0; animation: panim-turn-b 14s linear infinite; }
.panim .dw-live {
top: 5.6%;
left: 4%;
z-index: 2;
font-size: .86em;
}
.panim-transport {
display: flex;
align-items: center;
gap: .75em;
margin-top: 4.2%;
}
.panim-play {
flex: 0 0 auto;
width: 0;
height: 0;
border-style: solid;
border-width: .42em 0 .42em .7em;
border-color: transparent transparent transparent rgba(43,41,45,.55);
}
.panim-track {
flex: 1 1 auto;
height: .4em;
overflow: hidden;
border-radius: .2em;
background: rgba(43,41,45,.11);
}
.panim-fill {
display: block;
width: 100%;
height: 100%;
background: #00ffff;
transform: scaleX(.28);
transform-origin: left center;
animation: panim-fill 7s linear infinite;
}
.panim-dur {
flex: 0 0 auto;
width: 3.1em;
height: 1.35em;
overflow: hidden;
font-size: .92em;
font-weight: 600;
text-align: right;
color: rgba(43,41,45,.5);
}
.panim-now {
position: absolute;
right: 0;
bottom: 0;
left: 0;
z-index: 2;
padding: 1.7em 4% 3.15%;
background: linear-gradient(to top,
rgba(43,41,45,.82) 0%,
rgba(43,41,45,.6) 42%,
rgba(43,41,45,0) 100%);
font-size: .94em;
}
.panim-nowtitle {
display: block;
height: 1.45em;
margin-top: -.3em;
overflow: hidden;
font-size: 1.2em;
font-weight: 700;
letter-spacing: -.01em;
color: #fff;
text-shadow: 0 1px 2px rgba(43,41,45,.5);
}
.panim-roll { display: block; animation: panim-roll 14s linear infinite; }
.panim-dur .panim-roll > span      { display: block; height: 1.35em; line-height: 1.35em; white-space: nowrap; }
.panim-nowtitle .panim-roll > span { display: block; height: 1.45em; line-height: 1.45em; white-space: nowrap; }
.panim-queue {
flex: 1 1 auto;
align-self: center;
min-width: 0;
height: 85%;
display: flex;
flex-direction: column;
padding: .8em .5em;
border-radius: 5px;
background: rgba(43,41,45,.045);
}
.panim-list {
position: relative;
flex: 1 1 auto;
}
.panim-row {
position: absolute;
right: 0;
left: 0;
height: 30.6%;
display: flex;
align-items: center;
gap: .42em;
padding: 0 .45em 0 .85em;
border-radius: 4px;
}
.panim-row:before {
content: "";
position: absolute;
inset: 0;
z-index: 0;
border-radius: inherit;
background: #fff;
box-shadow: 0 7px 16px rgba(43,41,45,.17);
opacity: 0;
}
.panim-row--e1 { top: 0;     z-index: 1; }
.panim-row--e2 { top: 34.7%; z-index: 1; animation: panim-row-e2 14s linear infinite, panim-row-e2-z 14s linear infinite; }
.panim-row--e3 { top: 69.4%; z-index: 1; animation: panim-row-e3 14s linear infinite, panim-row-e3-z 14s linear infinite; }
.panim-row--e2:before { animation: panim-row-e2-lift 14s linear infinite; }
.panim-row--e3:before { animation: panim-row-e3-lift 14s linear infinite; }
.panim-mark {
position: absolute;
top: 0;
right: 0;
left: 0;
z-index: 0;
height: 30.6%;
border-radius: 4px;
background: rgba(0,255,255,.22);
box-shadow: inset 3px 0 0 #00ffff;
animation: panim-mark 14s linear infinite;
}
.panim-thumb {
position: relative;
z-index: 1;
flex: 0 0 auto;
height: 60%;
aspect-ratio: 16 / 9;
overflow: hidden;
border-radius: 3px;
background: rgba(43,41,45,.14);
}
.panim-thumb > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.panim-rowtitle {
position: relative;
z-index: 1;
flex: 1 1 auto;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
font-size: 1em;
font-weight: 700;
letter-spacing: -.01em;
color: #2B292D;
}
.panim-rowdur {
position: relative;
z-index: 1;
flex: 0 0 auto;
font-size: .82em;
font-weight: 600;
font-variant-numeric: tabular-nums;
color: rgba(43,41,45,.48);
}
.panim-grip {
position: relative;
z-index: 1;
flex: 0 0 .5em;
margin-left: .3em;
height: 1.05em;
background:
linear-gradient(rgba(43,41,45,.32), rgba(43,41,45,.32)) 0 0 / 1px 100% no-repeat,
linear-gradient(rgba(43,41,45,.32), rgba(43,41,45,.32)) 100% 0 / 1px 100% no-repeat;
}
.panim-cursor {
position: absolute;
z-index: 5;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
opacity: 0;
transform: translate(106%, 132%) scale(1);
transform-origin: 0 0;
filter: drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff)
drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)
drop-shadow(0 1px 2.5px rgba(43,41,45,.45));
animation: panim-cursor 7s linear infinite;
}
.panim-cursor:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: clamp(10px, 1.1em, 15px);
height: clamp(14.2px, 1.56em, 21.3px);
display: block;
background: #2B292D;
clip-path: polygon(0 0, 0 78%, 24% 60%, 39% 97%, 60% 88%, 45% 53%, 73% 53%);
}
@keyframes panim-turn-a {
0%,  35%  { opacity: 1; }
37%, 85%  { opacity: 0; }
87%, 100% { opacity: 1; }
}
@keyframes panim-turn-b {
0%,  35%  { opacity: 0; }
37%, 85%  { opacity: 1; }
87%, 100% { opacity: 0; }
}
@keyframes panim-roll {
0%,  34%  { transform: translateY(0);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
38%, 84%  { transform: translateY(-50%);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
88%, 100% { transform: translateY(0); }
}
@keyframes panim-mark {
0%,   34%  { transform: translateY(0);
animation-timing-function: cubic-bezier(.65,0,.35,1); }
38%,  65%  { transform: translateY(113.3987%);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
73%,  83%  { transform: translateY(226.7974%);
animation-timing-function: cubic-bezier(.65,0,.35,1); }
89%, 100%  { transform: translateY(0); }
}
@keyframes panim-fill {
0%     { transform: scaleX(.28); }
72%    { transform: scaleX(1); }
72.01% { transform: scaleX(0); }
100%   { transform: scaleX(.28); }
}
@keyframes panim-row-e3 {
0%,  12%  { transform: translate(0, 0) scale(1);
animation-timing-function: cubic-bezier(.3,0,.5,1); }
14%       { transform: translate(-1.8%, 0) scale(1.02);
animation-timing-function: cubic-bezier(.5,0,.22,1); }
24%       { transform: translate(-1.8%, -113.3987%) scale(1.02);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
26%, 65%  { transform: translate(0, -113.3987%) scale(1);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
73%, 100% { transform: translate(0, 0) scale(1); }
}
@keyframes panim-row-e3-z {
0%,  12%  { z-index: 1; animation-timing-function: cubic-bezier(.3,0,.5,1); }
14%       { z-index: 3; animation-timing-function: cubic-bezier(.5,0,.22,1); }
24%       { z-index: 3; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
26%, 65%  { z-index: 1; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
73%, 100% { z-index: 1; }
}
@keyframes panim-row-e3-lift {
0%,  12%  { opacity: 0; animation-timing-function: cubic-bezier(.3,0,.5,1); }
14%       { opacity: 1; animation-timing-function: cubic-bezier(.5,0,.22,1); }
24%       { opacity: 1; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
26%, 65%  { opacity: 0; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
73%, 100% { opacity: 0; }
}
@keyframes panim-row-e2 {
0%,  15%  { transform: translate(0, 0) scale(1);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
23%, 62%  { transform: translate(0, 113.3987%) scale(1);
animation-timing-function: cubic-bezier(.3,0,.5,1); }
64%       { transform: translate(-1.8%, 113.3987%) scale(1.02);
animation-timing-function: cubic-bezier(.5,0,.22,1); }
74%       { transform: translate(-1.8%, 0) scale(1.02);
animation-timing-function: cubic-bezier(.22,.72,.24,1); }
76%, 100% { transform: translate(0, 0) scale(1); }
}
@keyframes panim-row-e2-z {
0%,  15%  { z-index: 1; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
23%, 62%  { z-index: 1; animation-timing-function: cubic-bezier(.3,0,.5,1); }
64%       { z-index: 3; animation-timing-function: cubic-bezier(.5,0,.22,1); }
74%       { z-index: 3; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
76%, 100% { z-index: 1; }
}
@keyframes panim-row-e2-lift {
0%,  15%  { opacity: 0; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
23%, 62%  { opacity: 0; animation-timing-function: cubic-bezier(.3,0,.5,1); }
64%       { opacity: 1; animation-timing-function: cubic-bezier(.5,0,.22,1); }
74%       { opacity: 1; animation-timing-function: cubic-bezier(.22,.72,.24,1); }
76%, 100% { opacity: 0; }
}
@keyframes panim-cursor {
0%,  12%  { transform: translate(106%, 132%) scale(1); opacity: 0;
animation-timing-function: cubic-bezier(.2,.7,.3,1); }
18%       { opacity: 1; }
24%       { transform: translate(calc(100% - .7em), 84.7%) scale(1); opacity: 1; }
26%       { transform: translate(calc(100% - .7em), 84.7%) scale(.82); }
28%       { transform: translate(calc(100% - .7em), 84.7%) scale(1); opacity: 1;
animation-timing-function: cubic-bezier(.5,0,.22,1); }
48%       { transform: translate(calc(100% - .7em), 50%) scale(1); opacity: 1; }
50%       { transform: translate(calc(100% - .7em), 50%) scale(.82); }
52%       { transform: translate(calc(100% - .7em), 50%) scale(1); opacity: 1;
animation-timing-function: cubic-bezier(.4,0,.6,1); }
62%       { transform: translate(108%, 124%) scale(1); opacity: 0; }
68%, 100% { transform: translate(106%, 132%) scale(1); opacity: 0; }
}
@keyframes panim-loopchip {
0%,  82%  { opacity: 0; }
86%       { opacity: 1; }
90%, 100% { opacity: 0; }
}
.pillar-panel:not(.is-active) .panim,
.pillar-panel:not(.is-active) .panim *,
.pillar-panel:not(.is-active) .panim *:before {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.panim *, .panim *:before { animation: none !important; }
}
.sanim, .sanim * { box-sizing: border-box; }
.pillar-preview:has(.sanim) {
background: #fff;
}
.sanim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.sanim-stage {
position: absolute;
inset: 7.3% 4.1%;
display: flex;
flex-direction: column;
font-size: 8.5px;
font-size: calc(5.2px + .82cqw);
color: #2B292D;
--sp-1: .5em;
--sp-2: .9em;
--sp-3: 1.5em;
--sanim-a: 24.5%;
--sanim-b: 64.5%;
--sanim-w: 35.5%;
--sanim-rowh: 23.3%;
--sanim-pad: 1.5%;
}
@container (max-width: 280px) {
.sanim .sanim-stage { inset: 5.8% 3.2625%; }
.sanim .sanim-shot  { flex-basis: 30%; }
.sanim .sanim-meta  { margin-left: var(--sp-2); }
.sanim .sanim-chip  { padding: .34em .46em; }
}
.sanim-head { display: flex; align-items: center; flex: 0 0 auto; }
.sanim-shot {
position: relative; flex: 0 0 32%; aspect-ratio: 16 / 9;
overflow: hidden; border-radius: .3em; background: rgba(43, 41, 45, .08);
}
.sanim-frame {
position: absolute; inset: 0; display: block; width: 100%; height: 100%;
object-fit: cover; object-position: 50% 50%;
}
.sanim .dw-live { top: 8.9%; left: 5%; z-index: 2; font-size: .86em; }
.sanim-meta { flex: 1 1 auto; min-width: 0; margin-left: var(--sp-3); }
.sanim-title { display: block; font-size: 1.45em; font-weight: 700; line-height: 1.25; }
.sanim-rule { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1); margin-top: var(--sp-2); }
.sanim-chip {
padding: .34em .62em; border-radius: .3em; background: rgba(43, 41, 45, .055);
font-size: .88em; font-weight: 600; line-height: 1.35; color: rgba(43, 41, 45, .5);
white-space: nowrap;
}
.sanim-chip--on { background: #00ffff; color: #2B292D; font-weight: 700; }
.sanim-cols {
position: relative; flex: 0 0 auto;
height: calc(1.0625em + var(--sp-1) + 1px);
margin-top: var(--sp-3);
padding-bottom: var(--sp-1);
border-bottom: 1px solid rgba(43, 41, 45, .1);
}
.sanim .sanim-col { position: absolute; top: 0; }
.sanim .sanim-col--a { left: calc(var(--sanim-a) + var(--sanim-pad)); }
.sanim .sanim-col--b { left: calc(var(--sanim-b) + var(--sanim-pad)); }
.sanim-list { position: relative; flex: 1 1 auto; margin-top: var(--sp-2); }
.sanim-row { position: absolute; right: 0; left: 0; height: var(--sanim-rowh); }
.sanim-row--1 { top: 0; }
.sanim-row--2 { top: calc(50% - var(--sanim-rowh) / 2); }
.sanim-row--3 { top: calc(100% - var(--sanim-rowh)); }
.sanim-date {
position: absolute; top: 50%; left: 0; width: 20%; transform: translateY(-50%);
font-size: .95em; font-weight: 600; line-height: 1.2; color: rgba(43, 41, 45, .62);
white-space: nowrap;
}
.sanim-slot {
position: absolute; top: 0; bottom: 0; width: var(--sanim-w);
display: flex; align-items: center;
padding-left: var(--sanim-pad);
overflow: hidden; border-radius: .25em;
background: rgba(43, 41, 45, .045); box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .16);
}
.sanim-slot--a { left: var(--sanim-a); }
.sanim-slot--b { left: var(--sanim-b); }
.sanim-slot-time {
position: relative;
font-size: .95em; font-weight: 700; line-height: 1.2; white-space: nowrap;
font-variant-numeric: tabular-nums;
}
.sanim-fill {
position: absolute; top: 0; bottom: 0; left: 0; width: 100%;
transform: scaleX(0); transform-origin: 0 50%; background: #00ffff;
}
.sanim-row--1 .sanim-fill { transform: none; opacity: .45; }
.sanim-row--2 .sanim-slot--a .sanim-fill { animation: sanim-fill-2a 14s linear infinite; }
.sanim-row--2 .sanim-slot--b .sanim-fill { animation: sanim-fill-2b 14s linear infinite; }
.sanim-row--3 .sanim-slot--a .sanim-fill { animation: sanim-fill-3a 14s linear infinite; }
.sanim-row--3 .sanim-slot--b .sanim-fill { animation: sanim-fill-3b 14s linear infinite; }
@keyframes sanim-fill-2a {
0%            { transform: scaleX(0); opacity: 1; }
14%, 15.5%    { transform: scaleX(1); opacity: 1; }
18%, 95%      { transform: scaleX(1); opacity: .45; }
97.2%, 97.4%  { transform: scaleX(1); opacity: 0; }
97.41%, 100%  { transform: scaleX(0); opacity: 1; }
}
@keyframes sanim-fill-2b {
0%, 20%       { transform: scaleX(0); opacity: 1; }
34%, 35.5%    { transform: scaleX(1); opacity: 1; }
38%, 95%      { transform: scaleX(1); opacity: .45; }
97.2%, 97.4%  { transform: scaleX(1); opacity: 0; }
97.41%, 100%  { transform: scaleX(0); opacity: 1; }
}
@keyframes sanim-fill-3a {
0%, 40%       { transform: scaleX(0); opacity: 1; }
54%, 55.5%    { transform: scaleX(1); opacity: 1; }
58%, 95%      { transform: scaleX(1); opacity: .45; }
97.2%, 97.4%  { transform: scaleX(1); opacity: 0; }
97.41%, 100%  { transform: scaleX(0); opacity: 1; }
}
@keyframes sanim-fill-3b {
0%, 60%       { transform: scaleX(0); opacity: 1; }
74%, 75.5%    { transform: scaleX(1); opacity: 1; }
78%, 95%      { transform: scaleX(1); opacity: .45; }
97.2%, 97.4%  { transform: scaleX(1); opacity: 0; }
97.41%, 100%  { transform: scaleX(0); opacity: 1; }
}
.pillar-panel:not(.is-active) .sanim,
.pillar-panel:not(.is-active) .sanim * {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.sanim *, .sanim *:before { animation: none !important; }
.sanim-row--2 .sanim-slot--a .sanim-fill { transform: scaleX(.55); }
}
.fanim, .fanim * { box-sizing: border-box; }
.pillar-preview:has(.fanim) {
background: #fff;
}
.fanim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.fanim-stage {
position: absolute;
inset: 7.3% 4.1%;
padding-bottom: 1.36em;
display: flex;
flex-direction: column;
justify-content: center;
font-size: 8px;
font-size: calc(4px + 1.78cqw);
color: #2B292D;
--fanim-x: 5%;
--fanim-y: 8.9%;
--fanim-on: .74em;
--fanim-key: 80ms;
}
.fanim-grid {
display: grid;
grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
grid-template-rows: auto auto;
grid-template-areas:
"la . lb"
"ca go cb";
column-gap: .6em;
}
.fanim .fanim-label--edit { grid-area: la; }
.fanim .fanim-label--live { grid-area: lb; }
.fanim-canvas {
position: relative;
width: 100%;
margin-top: .3em;
aspect-ratio: 16 / 9;
overflow: hidden;
border-radius: .3em;
background: rgba(43, 41, 45, .08);
}
.fanim-canvas--edit { grid-area: ca; }
.fanim-canvas--live { grid-area: cb; }
.fanim-frame {
position: absolute; inset: 0; display: block; width: 100%; height: 100%;
object-fit: cover; object-position: 50% 50%;
}
.fanim .dw-live { top: var(--fanim-y); left: var(--fanim-x); z-index: 2; font-size: var(--fanim-on); }
.fanim .dw-live .dw-live-dot { animation: dw-pulse 2.5s ease-in-out infinite; }
.fanim-banner {
position: absolute; left: var(--fanim-x); bottom: var(--fanim-y); z-index: 2;
display: flex; flex-direction: column;
padding: .45em .85em .5em;
border-radius: .35em;
background: rgba(255, 255, 255, .94);
font-size: var(--fanim-on);
white-space: nowrap;
}
.fanim-banner-name { display: flex; align-items: center; font-size: 1em; font-weight: 700; line-height: 1.25; }
.fanim-banner-role {
display: block;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: .78em; font-weight: 400; line-height: 1.35;
color: rgba(43, 41, 45, .62);
}
.fanim-canvas--edit .fanim-banner--b { opacity: 0; }
.fanim-canvas--live .fanim-banner--b { opacity: 0; transform: translateX(-110%); }
.fanim-txt { position: relative; min-height: 1.25em; }
.fanim-ch { position: relative; }
.fanim-banner--b .fanim-ch { opacity: 0; }
.fanim-sel {
position: absolute;
top: -.05em;
bottom: -.05em;
left: -.12em;
right: -.12em;
background: #00ffff;
transform: scaleX(0);
transform-origin: 0 50%;
}
.fanim-caret {
position: absolute;
top: 0;
bottom: 0;
left: calc(100% + .1em);
width: 1px;
background: #2B292D;
opacity: 0;
}
.fanim-hl {
position: absolute;
inset: -.3em;
border: 1px solid #2B292D;
opacity: 0;
}
.fanim-canvas--edit .fanim-banner--b .fanim-hl { opacity: 1; }
.fanim-hd {
position: absolute;
display: block;
width: .5em;
height: .5em;
background: #2B292D;
}
.fanim-hd--tl { top: -.25em; left: -.25em; }
.fanim-hd--tr { top: -.25em; right: -.25em; }
.fanim-hd--bl { bottom: -.25em; left: -.25em; }
.fanim-hd--br { bottom: -.25em; right: -.25em; }
.fanim-go {
position: relative;
isolation: isolate;
grid-area: go;
align-self: center;
justify-self: center;
display: flex;
align-items: center;
height: 2.2em;
padding: 0 .6em;
border-radius: .38em;
background: #2B292D;
color: #fff;
font-size: 1em;
font-weight: 700;
line-height: 1;
letter-spacing: .02em;
white-space: nowrap;
}
.fanim-canvas--edit .fanim-banner--a { animation: fanim-show-a 10s step-end infinite; }
.fanim-canvas--edit .fanim-banner--b { animation: fanim-show-b 10s step-end infinite; }
.fanim-banner--a .fanim-ch { animation: fanim-type-a 10s step-end calc(var(--i) * var(--fanim-key)) infinite; }
.fanim-banner--b .fanim-ch { animation: fanim-type-b 10s step-end calc(var(--i) * var(--fanim-key)) infinite; }
.fanim-banner--a .fanim-sel { animation: fanim-sel-a 10s linear infinite; }
.fanim-banner--b .fanim-sel { animation: fanim-sel-b 10s linear infinite; }
.fanim-banner--a .fanim-caret { animation: fanim-caret-a 10s step-end infinite; }
.fanim-banner--b .fanim-caret { animation: fanim-caret-b 10s step-end infinite; }
.fanim-banner--a .fanim-hl { animation: fanim-hl-a 10s linear infinite; }
.fanim-banner--b .fanim-hl { animation: fanim-hl-b 10s linear infinite; }
.fanim-go { animation: fanim-go 10s linear infinite; }
.fanim-go:before {
content: "";
position: absolute;
inset: 0;
z-index: -1;
border-radius: inherit;
background: #131115;
opacity: 0;
animation: fanim-go-ink 10s linear infinite;
}
.fanim-canvas--live .fanim-banner--a { animation: fanim-live-a 10s linear infinite; }
.fanim-canvas--live .fanim-banner--b { animation: fanim-live-b 10s linear infinite; }
@keyframes fanim-show-a {
0%   { opacity: 1; }
21%  { opacity: 0; }
71%  { opacity: 1; }
100% { opacity: 1; }
}
@keyframes fanim-show-b {
0%   { opacity: 0; }
21%  { opacity: 1; }
71%  { opacity: 0; }
100% { opacity: 0; }
}
@keyframes fanim-type-a {
0%   { opacity: 1; display: inline; }
21%  { opacity: 0; display: none; }
71%  { opacity: 1; display: inline; }
100% { opacity: 1; display: inline; }
}
@keyframes fanim-type-b {
0%   { opacity: 0; display: none; }
21%  { opacity: 1; display: inline; }
71%  { opacity: 0; display: none; }
100% { opacity: 0; display: none; }
}
@keyframes fanim-sel-a {
0%, 15%       { transform: scaleX(0); animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
17.5%, 21%    { transform: scaleX(1); }
21.01%, 100%  { transform: scaleX(0); }
}
@keyframes fanim-sel-b {
0%, 65%       { transform: scaleX(0); animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
67.5%, 71%    { transform: scaleX(1); }
71.01%, 100%  { transform: scaleX(0); }
}
@keyframes fanim-caret-a {
0%    { opacity: 0; }
9%    { opacity: 1; }
12%   { opacity: 0; }
13.5% { opacity: 1; }
15%   { opacity: 0; }
71%   { opacity: 1; }
81.5% { opacity: 0; }
83.5% { opacity: 1; }
88%   { opacity: 0; }
100%  { opacity: 0; }
}
@keyframes fanim-caret-b {
0%    { opacity: 0; }
21%   { opacity: 1; }
31.5% { opacity: 0; }
33.5% { opacity: 1; }
38%   { opacity: 0; }
59%   { opacity: 1; }
62%   { opacity: 0; }
63.5% { opacity: 1; }
65%   { opacity: 0; }
100%  { opacity: 0; }
}
@keyframes fanim-hl-a {
0%, 6%        { opacity: 0; }
7%, 88%       { opacity: 1; }
89.5%, 100%   { opacity: 0; }
}
@keyframes fanim-hl-b {
0%, 38%       { opacity: 1; }
39.5%, 56%    { opacity: 0; }
57%, 100%     { opacity: 1; }
}
@keyframes fanim-go {
0%, 38%       { transform: scale(1);   animation-timing-function: ease-out; }
39.2%         { transform: scale(.92); animation-timing-function: ease-out; }
41%, 88%      { transform: scale(1);   animation-timing-function: ease-out; }
89.2%         { transform: scale(.92); animation-timing-function: ease-out; }
91%, 100%     { transform: scale(1); }
}
@keyframes fanim-go-ink {
0%, 38%       { opacity: 0; animation-timing-function: ease-out; }
39.2%         { opacity: 1; animation-timing-function: ease-out; }
41%, 88%      { opacity: 0; animation-timing-function: ease-out; }
89.2%         { opacity: 1; animation-timing-function: ease-out; }
91%, 100%     { opacity: 0; }
}
@keyframes fanim-live-a {
0%, 39.5%     { transform: translateX(0);     opacity: 1; animation-timing-function: cubic-bezier(.5, 0, .85, .45); }
43.5%, 94.5%  { transform: translateX(-110%); opacity: 0; animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
99.5%, 100%   { transform: translateX(0);     opacity: 1; }
}
@keyframes fanim-live-b {
0%, 44.5%     { transform: translateX(-110%); opacity: 0; animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
49.5%, 89.5%  { transform: translateX(0);     opacity: 1; animation-timing-function: cubic-bezier(.5, 0, .85, .45); }
93.5%, 100%   { transform: translateX(-110%); opacity: 0; }
}
.pillar-panel:not(.is-active) .fanim,
.pillar-panel:not(.is-active) .fanim *,
.pillar-panel:not(.is-active) .fanim *:before {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.fanim *, .fanim *:before, .fanim *:after { animation: none !important; }
}
.manim, .manim * { box-sizing: border-box; }
.pillar-preview:has(.manim) {
background: #fff;
}
.manim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.manim-stage {
position: absolute;
inset: 7.3% 4.1%;
font-size: 9px;
font-size: calc(4px + 1.78cqw);
color: #2B292D;
--sp-1: .5em;
--manim-card: 40%;
--manim-x: 60%;
--manim-y1: 30%;
--manim-y2: 50%;
--manim-y3: 70%;
--manim-dot: .75em;
--manim-text: calc(var(--manim-x) + var(--manim-dot) / 2 + var(--sp-1));
}
.manim-shot {
position: absolute; top: 50%; left: 0; width: var(--manim-card); aspect-ratio: 16 / 9;
transform: translateY(-50%);
overflow: hidden; border-radius: .3em; background: rgba(43, 41, 45, .08);
}
.manim-frame {
position: absolute; inset: 0; display: block; width: 100%; height: 100%;
object-fit: cover; object-position: 50% 50%;
}
.manim .dw-live { top: 8.9%; left: 5%; z-index: 2; font-size: .8em; }
.manim .dw-live .dw-live-dot { animation: dw-pulse 2.25s ease-in-out infinite; }
.manim-wires {
position: absolute; inset: 0; display: block; width: 100%; height: 100%;
overflow: visible;
}
.manim-wires-ink { fill: none; stroke: #2B292D; stroke-width: 4.5; opacity: .16; }
.manim-pulse {
fill: none; stroke: #00ffff; stroke-width: 9; stroke-linecap: round;
stroke-dasharray: 16 200;
stroke-dashoffset: 17;
}
.manim .manim-head { position: absolute; top: 10%; left: var(--manim-text); transform: translateY(-50%); }
.manim-dest {
position: absolute; left: var(--manim-x); margin-left: calc(var(--manim-dot) / -2);
display: flex; align-items: center; gap: var(--sp-1);
transform: translateY(-50%);
white-space: nowrap;
}
.manim-dest--1 { top: var(--manim-y1); }
.manim-dest--2 { top: var(--manim-y2); }
.manim-dest--3 { top: var(--manim-y3); }
.manim-dot {
position: relative; flex: 0 0 auto;
width: var(--manim-dot); height: var(--manim-dot); border-radius: 50%;
background: #00ffff; box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .2);
}
.manim-ring {
position: absolute; inset: 0; display: block; border-radius: 50%;
background: #00ffff; opacity: 0;
}
.manim-name { font-size: 1.25em; font-weight: 800; line-height: 1.2; letter-spacing: -.01em; }
.manim-more {
position: absolute; top: 90%; left: var(--manim-text); transform: translateY(-50%);
font-size: .95em; font-weight: 700; line-height: 1.2; color: rgba(43, 41, 45, .45);
white-space: nowrap;
}
.manim-pulse--1 { animation: manim-pulse-1 9s linear infinite; }
.manim-pulse--2 { animation: manim-pulse-2 9s linear infinite; }
.manim-pulse--3 { animation: manim-pulse-3 9s linear infinite; }
.manim-dest--1 .manim-dot { animation: manim-beat-1 9s ease-in-out infinite; }
.manim-dest--2 .manim-dot { animation: manim-beat-2 9s ease-in-out infinite; }
.manim-dest--3 .manim-dot { animation: manim-beat-3 9s ease-in-out infinite; }
.manim-dest--1 .manim-ring { animation: manim-ping-1 9s linear infinite; }
.manim-dest--2 .manim-ring { animation: manim-ping-2 9s linear infinite; }
.manim-dest--3 .manim-ring { animation: manim-ping-3 9s linear infinite; }
@keyframes manim-pulse-1 {
0%, 3%       { stroke-dashoffset: 17;   animation-timing-function: cubic-bezier(.45, 0, .3, 1); }
17%, 100%    { stroke-dashoffset: -101; }
}
@keyframes manim-pulse-2 {
0%, 36.33%   { stroke-dashoffset: 17;   animation-timing-function: cubic-bezier(.45, 0, .3, 1); }
50.33%, 100% { stroke-dashoffset: -101; }
}
@keyframes manim-pulse-3 {
0%, 69.67%   { stroke-dashoffset: 17;   animation-timing-function: cubic-bezier(.45, 0, .3, 1); }
83.67%, 100% { stroke-dashoffset: -101; }
}
@keyframes manim-beat-1 {
0%, 16%      { transform: scale(1); }
19%          { transform: scale(1.4); }
26%, 100%    { transform: scale(1); }
}
@keyframes manim-beat-2 {
0%, 49.33%   { transform: scale(1); }
52.33%       { transform: scale(1.4); }
59.33%, 100% { transform: scale(1); }
}
@keyframes manim-beat-3 {
0%, 82.67%   { transform: scale(1); }
85.67%       { transform: scale(1.4); }
92.67%, 100% { transform: scale(1); }
}
@keyframes manim-ping-1 {
0%, 16%      { opacity: 0;  transform: scale(1); }
16.01%       { opacity: .5; transform: scale(1);   animation-timing-function: cubic-bezier(0, 0, .3, 1); }
30%, 100%    { opacity: 0;  transform: scale(2.8); }
}
@keyframes manim-ping-2 {
0%, 49.33%   { opacity: 0;  transform: scale(1); }
49.34%       { opacity: .5; transform: scale(1);   animation-timing-function: cubic-bezier(0, 0, .3, 1); }
63.33%, 100% { opacity: 0;  transform: scale(2.8); }
}
@keyframes manim-ping-3 {
0%, 82.67%   { opacity: 0;  transform: scale(1); }
82.68%       { opacity: .5; transform: scale(1);   animation-timing-function: cubic-bezier(0, 0, .3, 1); }
96.67%, 100% { opacity: 0;  transform: scale(2.8); }
}
.pillar-panel:not(.is-active) .manim,
.pillar-panel:not(.is-active) .manim * {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.manim *, .manim *:before, .manim *:after { animation: none !important; }
}
.uanim, .uanim * { box-sizing: border-box; }
.pillar-preview:has(.uanim) {
background: #fff;
}
.uanim {
position: absolute;
inset: 0;
overflow: hidden;
container-type: inline-size;
background: #fff;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
line-height: 1.25;
color: #2B292D;
}
.uanim-stage {
position: absolute;
inset: 0;
font-size: 9px;
font-size: clamp(8px, 4.4px + 1.06cqw, 14.5px);
container-type: size;
}
.uanim:after {
content: "";
position: absolute;
z-index: 9;
inset: 0;
pointer-events: none;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1);
}
.uanim-desk {
position: absolute;
z-index: 1;
top: 0;
bottom: 0;
left: 0;
width: 34%;
background: rgba(43,41,45,.05);
border-right: 1px solid rgba(43,41,45,.16);
}
.uanim .uanim-desklabel {
position: absolute;
z-index: 1;
top: calc(6.5% + .22em);
left: 4%;
}
.uanim-apptitle {
position: absolute;
z-index: 1;
top: 6.5%;
left: 38%;
font-size: 1.05em;
font-weight: 700;
letter-spacing: -.01em;
white-space: nowrap;
}
.uanim-drop {
position: absolute;
z-index: 2;
top: 20%;
left: 38%;
width: 58%;
height: 58%;
display: flex;
align-items: center;
justify-content: center;
border: 1px dashed rgba(43,41,45,.26);
border-radius: 4px;
background: rgba(43,41,45,.028);
box-shadow: inset 0 0 0 1px rgba(43,41,45,0);
animation: uanim-drop 13s linear infinite;
}
.uanim-hint {
font-size: .95em;
font-weight: 600;
color: rgba(43,41,45,.44);
animation: uanim-hint 13s linear infinite;
}
.uanim-go {
position: absolute;
z-index: 3;
bottom: 6.4%;
right: 4%;
display: flex;
align-items: center;
height: 2.65em;
padding: 0 1.2em;
border-radius: 4px;
background: rgba(43,41,45,.02);
box-shadow: inset 0 0 0 1px rgba(43,41,45,.16), 0 0 0 rgba(0,0,255,0);
color: rgba(43,41,45,.38);
font-size: .98em;
font-weight: 700;
letter-spacing: .02em;
white-space: nowrap;
animation: uanim-go 13s linear infinite;
}
.uanim-file {
position: absolute;
z-index: 4;
top: 34%;
left: 4%;
width: 25.6%;
padding: 1.8%;
border-radius: 5px;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43,41,45,.1);
animation: uanim-file 13s linear infinite;
}
.uanim-file:before,
.uanim-file:after {
content: "";
position: absolute;
inset: 0;
z-index: -1;
border-radius: inherit;
}
.uanim-file:before {
box-shadow: 0 2px 7px rgba(43,41,45,.13);
animation: uanim-file-rest 13s linear infinite;
}
.uanim-file:after {
box-shadow: 0 11px 22px rgba(43,41,45,.2);
opacity: 0;
animation: uanim-file-lift 13s linear infinite;
}
.uanim-slot {
display: block;
width: 100%;
aspect-ratio: 16 / 9;
border-radius: 3px;
background: rgba(43,41,45,.08);
}
.uanim-name {
display: block;
margin-top: .5em;
overflow: hidden;
font-size: 1.02em;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.01em;
text-overflow: ellipsis;
white-space: nowrap;
}
.uanim-meta {
display: block;
margin-top: .18em;
overflow: hidden;
font-size: .86em;
font-weight: 600;
line-height: 1.2;
color: rgba(43,41,45,.5);
text-overflow: ellipsis;
white-space: nowrap;
}
.uanim-shot {
position: absolute;
z-index: 5;
top: 37.2%;
left: 5.8%;
width: 22%;
height: 22%;
overflow: hidden;
border-radius: 3px;
background: rgba(43,41,45,.08);
animation: uanim-shot 13s linear infinite;
}
.uanim-frame {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 38%;
}
.uanim-up {
position: absolute;
z-index: 6;
top: 20%;
left: 38%;
width: 58%;
height: 58%;
display: flex;
flex-direction: column;
justify-content: center;
padding: 0 10%;
border-radius: 4px;
background: rgba(255,255,255,.88);
opacity: 0;
animation: uanim-up 13s linear infinite;
}
.uanim-uphead {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: .6em;
}
.uanim-uppct {
overflow: hidden;
height: 1.15em;
font-size: 1.45em;
font-weight: 700;
line-height: 1.15;
letter-spacing: -.02em;
font-variant-numeric: tabular-nums;
text-align: right;
}
.uanim-uproll {
display: block;
animation: uanim-uproll 13s linear infinite;
}
.uanim-uproll > span {
display: block;
height: 1.15em;
line-height: 1.15;
}
.uanim-uptrack {
flex: none;
margin-top: .9em;
height: .5em;
overflow: hidden;
border-radius: 99px;
background: rgba(43,41,45,.17);
}
.uanim-upfill {
display: block;
width: 100%;
height: 100%;
border-radius: 99px;
background: #00ffff;
transform: translateX(-100%);
animation: uanim-upfill 13s linear infinite;
}
.uanim-cursor {
position: absolute;
z-index: 7;
top: 0;
left: 0;
transform: translate(-8cqw, 106cqh) scale(1);
width: 12px;
width: clamp(11px, 2.1cqw, 19px);
aspect-ratio: 12 / 17;
opacity: 0;
transform-origin: 0 0;
filter: drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff)
drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff)
drop-shadow(0 1px 2.5px rgba(43,41,45,.5));
animation: uanim-cursor 13s linear infinite;
}
.uanim-cursor:before {
content: "";
position: absolute;
inset: 0;
display: block;
background: #2B292D;
clip-path: polygon(0 0, 0 78%, 24% 60%, 39% 97%, 60% 88%, 45% 53%, 73% 53%);
}
.uanim .dw-live {
z-index: 8;
top: 7.1%;
left: 4%;
font-size: .86em;
opacity: 0;
animation: uanim-pill 13s linear infinite;
}
.uanim .dw-live .dw-live-dot { animation: dw-pulse 3.25s ease-in-out infinite; }
.uanim .dw-live .dw-count-roll { animation: uanim-tick 13s var(--dw-count-ease) infinite; }
.uanim .dw-cm {
z-index: 8;
bottom: 7.1%;
left: 4%;
max-width: 54%;
font-size: 1em;
}
.uanim .uanim-cm--1 { animation: uanim-cm1 13s cubic-bezier(.22, .72, .24, 1) infinite; }
.uanim .uanim-cm--2 { animation: uanim-cm2 13s cubic-bezier(.22, .72, .24, 1) infinite; }
.uanim .uanim-cm--3 { animation: uanim-cm3 13s cubic-bezier(.22, .72, .24, 1) infinite; }
@keyframes uanim-shot {
0%, 11%      { top: 37.2%; left: 5.8%; width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
13%          { top: 34.6%; left: 7%;   width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.5, 0, .7, .55); }
24%          { top: 18.5%; left: 36%;  width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
30%          { top: 38%;   left: 56%;  width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: rotate(-1.1deg) scale(1.03);
animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
31.5%        { top: 38%;   left: 56%;  width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
37%, 55.5%   { top: 20%;   left: 38%;  width: 58%;  height: 58%;  border-radius: 4px; opacity: 1; transform: none;
animation-timing-function: cubic-bezier(.55, 0, .2, 1); }
64%, 69%     { top: 0;     left: 0;    width: 100%; height: 100%; border-radius: 0;   opacity: 1; transform: none;
animation-timing-function: linear; }
93%          { top: 0;     left: 0;    width: 100%; height: 100%; border-radius: 0;   opacity: 1; transform: scale(1.03);
animation-timing-function: ease-out; }
95.6%        { top: 0;     left: 0;    width: 100%; height: 100%; border-radius: 0;   opacity: 0; transform: scale(1.06); }
95.7%        { top: 37.2%; left: 5.8%; width: 22%;  height: 22%;  border-radius: 3px; opacity: 0; transform: none;
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
98.6%, 100%  { top: 37.2%; left: 5.8%; width: 22%;  height: 22%;  border-radius: 3px; opacity: 1; transform: none; }
}
@keyframes uanim-file {
0%, 11%      { opacity: 1; transform: translate(0, 0) rotate(0) scale(1);
animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
13%          { opacity: 1; transform: translate(1.2cqw, -2.6cqh) rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.5, 0, .7, .55); }
24%          { opacity: 1; transform: translate(30.2cqw, -18.7cqh) rotate(-2.2deg) scale(1.03);
animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
30%          { opacity: 1; transform: translate(50.2cqw, .8cqh) rotate(-1.1deg) scale(1.03);
animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
31.5%        { opacity: 1; transform: translate(50.2cqw, .8cqh) rotate(0) scale(1);
animation-timing-function: ease-out; }
35%, 89%     { opacity: 0; transform: translate(50.2cqw, .8cqh) rotate(0) scale(.96); }
89.01%, 95.7% { opacity: 0; transform: translate(0, 0) rotate(0) scale(1); }
98.6%, 100%  { opacity: 1; transform: translate(0, 0) rotate(0) scale(1); }
}
@keyframes uanim-file-rest {
0%, 11%       { opacity: 1; animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
13%           { opacity: 0; animation-timing-function: cubic-bezier(.5, 0, .7, .55); }
24%           { opacity: 0; animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
30%           { opacity: 0; animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
31.5%         { opacity: 1; animation-timing-function: ease-out; }
35%, 89%      { opacity: 0; }
89.01%, 100%  { opacity: 1; }
}
@keyframes uanim-file-lift {
0%, 11%       { opacity: 0; animation-timing-function: cubic-bezier(.3, 0, .5, 1); }
13%           { opacity: 1; animation-timing-function: cubic-bezier(.5, 0, .7, .55); }
24%           { opacity: 1; animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
30%           { opacity: 1; animation-timing-function: cubic-bezier(.3, .8, .4, 1); }
31.5%, 100%   { opacity: 0; }
}
@keyframes uanim-cursor {
0%, 6%       { transform: translate(-8cqw, 106cqh) scale(1);   opacity: 0;
animation-timing-function: cubic-bezier(.2, .7, .3, 1); }
9%           { opacity: 1; }
11%          { transform: translate(16.8cqw, 48.2cqh) scale(1); opacity: 1; }
12%          { transform: translate(16.8cqw, 48.2cqh) scale(.88); }
13%          { transform: translate(16.8cqw, 48.2cqh) scale(1); opacity: 1;
animation-timing-function: cubic-bezier(.5, 0, .7, .55); }
24%          { transform: translate(47cqw, 29.5cqh) scale(1);
animation-timing-function: cubic-bezier(.2, .65, .25, 1); }
30%          { transform: translate(67cqw, 49cqh) scale(1);     opacity: 1; }
31%          { transform: translate(67cqw, 49cqh) scale(.88); }
32%          { transform: translate(67cqw, 49cqh) scale(1);     opacity: 1;
animation-timing-function: cubic-bezier(.4, 0, .3, 1); }
33%          { transform: translate(67cqw, 49cqh) scale(1); }
45%, 54%     { transform: translate(93cqw, 88cqh) scale(1);     opacity: 1; }
55%          { transform: translate(93cqw, 88cqh) scale(.88); }
56%          { transform: translate(93cqw, 88cqh) scale(1); }
57%          { transform: translate(93cqw, 88cqh) scale(1);     opacity: 1;
animation-timing-function: cubic-bezier(.4, 0, .6, 1); }
62%          { transform: translate(100cqw, 104cqh) scale(1);   opacity: 0; }
63%, 100%    { transform: translate(-8cqw, 106cqh) scale(1);   opacity: 0; }
}
@keyframes uanim-drop {
0%, 26%      { border-color: rgba(43,41,45,.26); background: rgba(43,41,45,.028); box-shadow: inset 0 0 0 1px rgba(43,41,45,0); }
29%, 31%     { border-color: rgba(0,255,255,1);  background: rgba(0,255,255,.16); box-shadow: inset 0 0 0 1px rgba(0,255,255,0); }
37%, 89%     { border-color: rgba(43,41,45,0);   background: rgba(43,41,45,0);    box-shadow: inset 0 0 0 1px rgba(43,41,45,.11); }
89.01%, 100% { border-color: rgba(43,41,45,.26); background: rgba(43,41,45,.028); box-shadow: inset 0 0 0 1px rgba(43,41,45,0); }
}
@keyframes uanim-hint {
0%, 17%      { opacity: 1; }
22%, 89%     { opacity: 0; }
89.01%, 100% { opacity: 1; }
}
@keyframes uanim-go {
0%, 46%      { background: rgba(43,41,45,.02); color: rgba(43,41,45,.38);
box-shadow: inset 0 0 0 1px rgba(43,41,45,.16), 0 0 0 rgba(0,0,255,0); transform: none;
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
49%, 54%     { background: #0000ff;            color: #fff;
box-shadow: inset 0 0 0 1px rgba(0,0,255,0), 0 .3em .8em rgba(0,0,255,.34); transform: none; }
55%          { background: #0000c4;            color: #fff;
box-shadow: inset 0 0 0 1px rgba(0,0,255,0), 0 .1em .3em rgba(0,0,255,.4); transform: scale(.955); }
55.5%, 89%   { background: #0000ff;            color: #fff;
box-shadow: inset 0 0 0 1px rgba(0,0,255,0), 0 .3em .8em rgba(0,0,255,.34); transform: none; }
89.01%, 100% { background: rgba(43,41,45,.02); color: rgba(43,41,45,.38);
box-shadow: inset 0 0 0 1px rgba(43,41,45,.16), 0 0 0 rgba(0,0,255,0); transform: none; }
}
@keyframes uanim-up {
0%, 36.5%    { opacity: 0;
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
38.5%, 47.5% { opacity: 1; }
50.5%, 100%  { opacity: 0; }
}
@keyframes uanim-uproll {
0%, 40.2%    { transform: translateY(0); }
40.3%, 41.9% { transform: translateY(-25%); }
42%, 43.7%   { transform: translateY(-50%); }
43.8%, 89%   { transform: translateY(-75%); }
89.01%, 100% { transform: translateY(0); }
}
@keyframes uanim-upfill {
0%, 40.2%    { transform: translateX(-100%); }
40.7%, 41.9% { transform: translateX(-73%); }
42.5%, 43.7% { transform: translateX(-32%); }
44.3%, 89%   { transform: translateX(0); }
89.01%, 100% { transform: translateX(-100%); }
}
@keyframes uanim-pill {
0%, 64%      { opacity: 0; transform: translateY(.5em);
animation-timing-function: cubic-bezier(.22, .72, .24, 1); }
68%, 90%     { opacity: 1; transform: none; }
93.5%        { opacity: 0; transform: none; }
93.6%, 100%  { opacity: 0; transform: translateY(.5em); }
}
@keyframes uanim-tick {
0%,    68.4% { transform: translateY(0); }
70.1%, 71.9% { transform: translateY(-14.2857%); }
73.6%, 75.4% { transform: translateY(-28.5714%); }
77.1%, 78.9% { transform: translateY(-42.8571%); }
80.6%, 82.4% { transform: translateY(-57.1429%); }
84.1%, 85.9% { transform: translateY(-71.4286%); }
87.6%, 93.5% { transform: translateY(-85.7143%); }
93.6%, 100%  { transform: translateY(0); }
}
@keyframes uanim-cm1 {
0%,    69%   { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
71.9%, 76%   { opacity: 1; transform: translateY(0); }
78.9%, 83%   { opacity: 1; transform: translateY(var(--dw-cm-step)); }
85.9%, 90%   { opacity: 1; transform: translateY(calc(var(--dw-cm-step) * 2)); }
93%          { opacity: 0; transform: translateY(calc(var(--dw-cm-step) * 2)); }
93.1%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
@keyframes uanim-cm2 {
0%,    76%   { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
78.9%, 83%   { opacity: 1; transform: translateY(0); }
85.9%, 90%   { opacity: 1; transform: translateY(var(--dw-cm-step)); }
93%          { opacity: 0; transform: translateY(var(--dw-cm-step)); }
93.1%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
@keyframes uanim-cm3 {
0%,    83%   { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
85.9%, 90%   { opacity: 1; transform: translateY(0); }
93%          { opacity: 0; transform: translateY(0); }
93.1%, 100%  { opacity: 0; transform: translateY(var(--dw-cm-wait)); }
}
.pillar-panel:not(.is-active) .uanim,
.pillar-panel:not(.is-active) .uanim *,
.pillar-panel:not(.is-active) .uanim *:before,
.pillar-panel:not(.is-active) .uanim *:after {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.uanim *, .uanim *:before, .uanim *:after { animation: none !important; }
.uanim-cursor,
.uanim-up,
.uanim .dw-live,
.uanim .dw-cm { opacity: 0; }
}
.canim, .canim * { box-sizing: border-box; }
.pillar-preview:has(.canim) {
background: #fff;
}
.canim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.canim-board {
position: absolute;
inset: 7.3% 4.1%;
display: flex;
align-items: center;
font-size: 8.5px;
font-size: calc(5.4px + .82cqw);
color: #2B292D;
--sp-1: .5em;
--sp-2: .9em;
--sp-3: 1.5em;
}
.canim-band {
display: flex;
align-items: stretch;
width: 100%;
gap: 3.5%;
}
.canim-side {
flex: 0 0 auto;
display: flex;
flex-direction: column;
padding: .85em .9em;
border-radius: .3em;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .14);
}
.canim-list {
flex: 1 1 auto;
display: flex;
flex-direction: column;
margin-top: var(--sp-1);
}
.canim-row {
flex: 1 1 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--sp-1);
min-height: 1.9em;
}
.canim-row + .canim-row { border-top: 1px solid rgba(43, 41, 45, .08); }
.canim-name {
font-size: .92em;
font-weight: 700;
line-height: 1.2;
white-space: nowrap;
}
.canim-row--scr .canim-name { opacity: .45; }
.canim-tg {
position: relative;
flex: 0 0 auto;
width: 1.85em;
height: 1.1em;
border-radius: .55em;
background: rgba(43, 41, 45, .12);
}
.canim-knob {
position: absolute;
top: 50%;
left: .2em;
width: .7em;
height: .7em;
border-radius: 50%;
background: rgba(43, 41, 45, .32);
transform: translate(0, -50%);
}
.canim-tg--on { background: #00ffff; }
.canim-tg--on .canim-knob { background: #2B292D; transform: translate(.75em, -50%); }
.canim-row--scr .canim-tg:before,
.canim-row--scr .canim-knob:before {
content: "";
position: absolute;
inset: 0;
border-radius: inherit;
opacity: 0;
}
.canim-row--scr .canim-tg:before   { background: #00ffff; }
.canim-row--scr .canim-knob:before { background: #2B292D; }
.canim-stage {
position: relative;
flex: 1 1 0;
min-width: 0;
aspect-ratio: 16 / 9;
overflow: hidden;
border-radius: .3em;
background: rgba(43, 41, 45, .06);
}
.canim-cam {
position: absolute;
top: 0;
bottom: 0;
left: 0;
width: 100%;
z-index: 1;
overflow: hidden;
border-radius: .3em;
background: rgba(43, 41, 45, .1);
}
.canim-pic {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: 50% 50%;
}
.canim-share {
position: absolute;
top: 0;
bottom: 0;
left: 50.75%;
width: 49.25%;
z-index: 2;
display: flex;
flex-direction: column;
padding: .8em .9em;
border-radius: .3em;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .14);
transform: translateX(120%);
}
.canim-slide-title {
display: block;
flex: 0 0 auto;
font-size: 1em;
font-weight: 700;
line-height: 1.2;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.canim-chart {
flex: 1 1 auto;
min-height: 0;
display: flex;
align-items: flex-end;
gap: .4em;
margin-top: var(--sp-2);
border-bottom: 1px solid rgba(43, 41, 45, .16);
}
.canim-bar {
display: block;
flex: 1 1 0;
height: 42%;
border-radius: .15em .15em 0 0;
background: rgba(43, 41, 45, .14);
}
.canim-bar--2 { height: 66%; }
.canim-bar--on { height: 100%; background: #00ffff; }
.canim-meter {
position: absolute;
left: 5%;
bottom: 8.9%;
z-index: 3;
display: flex;
align-items: flex-end;
gap: .22em;
padding: .32em .45em;
border-radius: .35em;
background: rgba(43, 41, 45, .82);
}
.canim-vu {
display: block;
width: .3em;
border-radius: .1em;
background: #fff;
transform-origin: 50% 100%;
}
.canim-vu--1 { height: .55em; }
.canim-vu--2 { height: .9em; }
.canim-vu--3 { height: 1.15em; }
.canim-vu--4 { height: .7em; }
.canim .dw-live { top: 8.9%; left: 5%; z-index: 3; font-size: .9em; }
.canim-row--scr .canim-tg:before,
.canim-row--scr .canim-knob:before { animation: canim-tg   10s cubic-bezier(.4, 0, .2, 1) infinite; }
.canim-row--scr .canim-knob  { animation: canim-knob 10s cubic-bezier(.4, 0, .2, 1) infinite; }
.canim-row--scr .canim-name  { animation: canim-name 10s cubic-bezier(.4, 0, .2, 1) infinite; }
.canim-cam                   { animation: canim-cam   10s cubic-bezier(.65, 0, .35, 1) infinite; }
.canim-share                 { animation: canim-share 10s cubic-bezier(.65, 0, .35, 1) infinite; }
.canim-vu--1 { animation: canim-vu-1 1.25s ease-in-out infinite; }
.canim-vu--2 { animation: canim-vu-2 1.25s ease-in-out infinite; }
.canim-vu--3 { animation: canim-vu-3 1.25s ease-in-out infinite; }
.canim-vu--4 { animation: canim-vu-4 1.25s ease-in-out infinite; }
@keyframes canim-tg {
0%, 22%   { opacity: 0; }
26%, 64%  { opacity: 1; }
68%, 100% { opacity: 0; }
}
@keyframes canim-knob {
0%, 22%   { transform: translate(0, -50%); }
26%, 64%  { transform: translate(.75em, -50%); }
68%, 100% { transform: translate(0, -50%); }
}
@keyframes canim-name {
0%, 22%   { opacity: .45; }
26%, 64%  { opacity: 1; }
68%, 100% { opacity: .45; }
}
@keyframes canim-cam {
0%, 27%   { width: 100%; }
35%, 69%  { width: 49.25%; }
77%, 100% { width: 100%; }
}
@keyframes canim-share {
0%, 27%   { transform: translateX(120%); }
35%, 69%  { transform: translateX(0); }
77%, 100% { transform: translateX(120%); }
}
@keyframes canim-vu-1 {
0%, 100% { transform: scaleY(1); }
30%      { transform: scaleY(.45); }
65%      { transform: scaleY(.8); }
}
@keyframes canim-vu-2 {
0%, 100% { transform: scaleY(1); }
20%      { transform: scaleY(.7); }
50%      { transform: scaleY(.35); }
80%      { transform: scaleY(.9); }
}
@keyframes canim-vu-3 {
0%, 100% { transform: scaleY(1); }
40%      { transform: scaleY(.55); }
70%      { transform: scaleY(.85); }
}
@keyframes canim-vu-4 {
0%, 100% { transform: scaleY(1); }
25%      { transform: scaleY(.5); }
60%      { transform: scaleY(.3); }
85%      { transform: scaleY(.75); }
}
.pillar-panel:not(.is-active) .canim,
.pillar-panel:not(.is-active) .canim *,
.pillar-panel:not(.is-active) .canim *:before {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.canim *, .canim *:before, .canim *:after { animation: none !important; }
}
.lanim, .lanim * { box-sizing: border-box; }
.pillar-preview:has(.lanim) {
background: #fff;
}
.lanim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.lanim-ui {
position: absolute;
inset: 3.56% 2%;
display: flex;
flex-direction: column;
font-size: 8px;
font-size: calc(6px + .9cqw);
color: #2B292D;
--sp-1: .5em;
--sp-2: .9em;
--sp-3: 1.5em;
}
.lanim-head {
position: relative;
flex: 0 0 auto;
height: 1.89em;
display: flex;
align-items: center;
justify-content: flex-end;
gap: var(--sp-1);
}
.lanim .dw-live { top: 0; left: 0; font-size: .9em; }
.lanim .dw-live .dw-live-dot { animation: dw-pulse 2s ease-in-out infinite; }
.lanim-chip {
display: block;
padding: .34em .62em;
border-radius: .3em;
background: #00ffff;
color: #2B292D;
font-size: .88em;
font-weight: 700;
line-height: 1.35;
white-space: nowrap;
}
.lanim-win  { display: block; height: 1.35em; overflow: hidden; }
.lanim-roll { display: block; transform: translateY(0); }
.lanim-val  { display: block; height: 1.35em; text-align: center; }
.lanim-stage {
position: relative;
flex: 1 1 auto;
margin-top: var(--sp-2);
border-radius: .5em;
background: rgba(43, 41, 45, .045);
overflow: hidden;
contain: paint;
}
.lanim-cell {
position: absolute;
width: 32cqw;
aspect-ratio: 16 / 9;
overflow: hidden;
border-radius: .35em;
background: #fff;
}
.lanim-cell img,
.lanim-cell video {
position: absolute;
inset: 0;
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.lanim-cell:after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 48%;
background: linear-gradient(to top, rgba(43, 41, 45, .5), rgba(43, 41, 45, 0));
}
.lanim .lanim-cell .dw-label {
position: absolute;
left: .8em;
bottom: .65em;
z-index: 1;
}
.lanim-cell--a {
left: calc(50% - 32.75cqw);
top: calc(50% - 18.75cqw);
transform: translate(-6.75cqw, 9.75cqw) scale(1.40625);
animation: lanim-a 10s linear infinite;
}
.lanim-cell--b {
left: calc(50% + .75cqw);
top: calc(50% - 18.75cqw);
transform: translate(6.75cqw, 9.75cqw) scale(1.40625);
animation: lanim-b 10s linear infinite;
}
.lanim-cell--c {
left: calc(50% - 16cqw);
top: calc(50% + .75cqw);
transform: scale(.92);
opacity: 0;
animation: lanim-c 10s linear infinite;
}
.lanim-roll { animation: lanim-roll 10s linear infinite; }
@keyframes lanim-a {
0%, 24%   { transform: translate(-6.75cqw, 9.75cqw) scale(1.40625); animation-timing-function: cubic-bezier(.4, 0, .2, 1); }
32%, 72%  { transform: translate(0, 0) scale(1);                         animation-timing-function: cubic-bezier(.4, 0, .2, 1); }
80%, 100% { transform: translate(-6.75cqw, 9.75cqw) scale(1.40625); }
}
@keyframes lanim-b {
0%, 24%   { transform: translate(6.75cqw, 9.75cqw) scale(1.40625); animation-timing-function: cubic-bezier(.4, 0, .2, 1); }
32%, 72%  { transform: translate(0, 0) scale(1);                        animation-timing-function: cubic-bezier(.4, 0, .2, 1); }
80%, 100% { transform: translate(6.75cqw, 9.75cqw) scale(1.40625); }
}
@keyframes lanim-c {
0%, 29.5%    { opacity: 0; transform: scale(.92); animation-timing-function: cubic-bezier(.2, .7, .3, 1); }
34%, 68%     { opacity: 1; transform: scale(1);   animation-timing-function: cubic-bezier(.5, 0, .75, .5); }
71.5%, 71.9% { opacity: 0; transform: scale(.96); }
72%, 100%    { opacity: 0; transform: scale(.92); }
}
@keyframes lanim-roll {
0%, 28.5%    { transform: translateY(0);       animation-timing-function: cubic-bezier(.4, .1, .4, .9); }
31.5%, 76.5% { transform: translateY(-1.35em); animation-timing-function: cubic-bezier(.4, .1, .4, .9); }
79.5%, 100%  { transform: translateY(-2.7em); }
}
.pillar-panel:not(.is-active) .lanim,
.pillar-panel:not(.is-active) .lanim * {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.lanim *, .lanim *:before, .lanim *:after { animation: none !important; }
}
.banim, .banim * { box-sizing: border-box; }
.pillar-preview:has(.banim) {
background: #fff;
}
.banim {
position: absolute;
inset: 0;
overflow: hidden;
background: #fff;
container-type: inline-size;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
}
.banim-stage {
position: absolute;
inset: 7.3% 4.1%;
overflow: hidden;
border-radius: .45em;
background: rgba(43, 41, 45, .08);
font-size: 8px;
font-size: calc(3.6px + 1.95cqw);
color: #2B292D;
--banim-x: 5%;
--banim-y: 8.9%;
}
.banim-shot {
position: absolute; inset: 0; z-index: 0;
display: block; width: 100%; height: 100%;
object-fit: cover; object-position: 50% 50%;
}
.banim .dw-live { top: var(--banim-y); left: var(--banim-x); z-index: 2; font-size: .85em; }
.banim .dw-live .dw-live-dot { animation: dw-pulse 2.2s ease-in-out infinite; }
.banim-mark {
position: absolute; top: var(--banim-y); right: var(--banim-x); z-index: 2;
display: flex; align-items: center; justify-content: center;
width: 2.5em; height: 2.5em;
border-radius: .4em;
background: #2B292D;
color: #fff;
font-size: 1em; font-weight: 800; line-height: 1; letter-spacing: .03em;
}
.banim-banner {
position: absolute; left: var(--banim-x); bottom: var(--banim-y); z-index: 2;
display: flex; flex-direction: column;
padding: .45em .85em .5em;
border-radius: .35em;
background: rgba(255, 255, 255, .94);
white-space: nowrap;
}
.banim-banner-name { display: block; font-size: 1em; font-weight: 700; line-height: 1.25; }
.banim-banner-role {
display: block;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: .78em; font-weight: 400; line-height: 1.35;
color: rgba(43, 41, 45, .62);
}
.banim-banner--b { opacity: 0; transform: translateX(-110%); }
.banim-inset {
position: absolute; right: var(--banim-x); bottom: var(--banim-y); z-index: 2;
width: 31%; aspect-ratio: 16 / 9;
overflow: hidden; border-radius: .35em;
background: rgba(43, 41, 45, .2);
box-shadow: 0 0 0 1px rgba(255, 255, 255, .7);
}
.banim-clip { position: absolute; inset: 0; }
.banim-clip img,
.banim-clip video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
.banim-clip--b { opacity: 0; }
.banim-prog { position: absolute; left: 0; right: 0; bottom: 0; height: .25em; background: rgba(255, 255, 255, .32); }
.banim-prog-fill { position: absolute; inset: 0; background: #00ffff; transform: scaleX(0); transform-origin: 0 50%; }
.banim-banner--a { animation: banim-banner-a 11s linear infinite; }
.banim-banner--b { animation: banim-banner-b 11s linear infinite; }
.banim-clip--b { animation: banim-clip-b 11s linear infinite; }
.banim-clip--a .banim-prog-fill { animation: banim-prog-a 11s linear infinite; }
.banim-clip--b .banim-prog-fill { animation: banim-prog-b 11s linear infinite; }
@keyframes banim-banner-a {
0%, 20%       { transform: translateX(0);      opacity: 1; animation-timing-function: cubic-bezier(.5, 0, .85, .45); }
24%, 72%      { transform: translateX(-110%);  opacity: 0; animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
77%, 100%     { transform: translateX(0);      opacity: 1; }
}
@keyframes banim-banner-b {
0%, 26%       { transform: translateX(-110%);  opacity: 0; animation-timing-function: cubic-bezier(.2, .7, .25, 1); }
31%, 66%      { transform: translateX(0);      opacity: 1; animation-timing-function: cubic-bezier(.5, 0, .85, .45); }
70%, 100%     { transform: translateX(-110%);  opacity: 0; }
}
@keyframes banim-clip-b {
0%, 45%       { opacity: 0; animation-timing-function: ease-in-out; }
50%, 93%      { opacity: 1; animation-timing-function: ease-in-out; }
98%, 100%     { opacity: 0; }
}
@keyframes banim-prog-a {
0%            { transform: scaleX(0); }
43%, 52%      { transform: scaleX(1); }
52.01%, 100%  { transform: scaleX(0); }
}
@keyframes banim-prog-b {
0%, 50%       { transform: scaleX(0); }
91%, 98.5%    { transform: scaleX(1); }
98.51%, 100%  { transform: scaleX(0); }
}
.pillar-panel:not(.is-active) .banim,
.pillar-panel:not(.is-active) .banim * {
animation-play-state: paused;
}
@media (prefers-reduced-motion: reduce) {
.banim *, .banim *:before, .banim *:after { animation: none !important; }
.banim-clip--a .banim-prog-fill { transform: scaleX(.55); }
}
.qanim, .qanim * { box-sizing: border-box; }
.qanim {
position: absolute;
inset: 0;
overflow: hidden;
container-type: inline-size;
border-radius: 6px 6px 0 0;
background: #2B292D;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
line-height: 1.25;
text-align: left;
}
.qanim-clip {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
border-radius: 6px 6px 0 0;
}
.qanim-clip--1 { object-position: left center; }
.qanim-clip--2,
.qanim-clip--3 { opacity: 0; }
.qanim-panel {
position: absolute;
right: 10px;
bottom: 10px;
width: 15.2em;
padding: .8em .8em .9em;
border-radius: 5px;
background: #fff;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .1),
0 3px 12px rgba(43, 41, 45, .32);
font-size: 9.5px;
font-size: clamp(7.8px, 4.6px + 1.05cqw, 10.5px);
}
.qanim-title {
margin-bottom: .7em;
}
.qanim-list {
position: relative;
}
.qanim-row {
position: relative;
z-index: 1;
display: flex;
align-items: center;
height: 2.4em;
gap: .55em;
padding: 0 .5em;
}
.qanim-row + .qanim-row { margin-top: .25em; }
.qanim-num {
flex: 0 0 auto;
width: 1em;
font-size: .88em;
font-weight: 700;
font-variant-numeric: tabular-nums;
color: rgba(43, 41, 45, .32);
}
.qanim-name {
flex: 1 1 auto;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
font-weight: 700;
letter-spacing: -.01em;
color: #2B292D;
}
.qanim-mark {
position: absolute;
top: 0;
right: 0;
left: 0;
z-index: 0;
height: 2.4em;
overflow: hidden;
border-radius: 4px;
background: rgba(0, 255, 255, .22);
box-shadow: inset 3px 0 0 #00ffff;
}
.qanim-fill {
position: absolute;
right: 0;
bottom: 0;
left: 0;
display: block;
height: .22em;
background: #00ffff;
transform: scaleX(0);
transform-origin: left center;
}
@keyframes qanim-mark {
0%,       30%     { transform: translateY(0);      animation-timing-function: cubic-bezier(.65, 0, .35, 1); }
33.333%,  63.333% { transform: translateY(2.65em); animation-timing-function: cubic-bezier(.65, 0, .35, 1); }
66.667%,  96.667% { transform: translateY(5.3em);  animation-timing-function: cubic-bezier(.5, 0, .3, 1); }
100%              { transform: translateY(0); }
}
@keyframes qanim-fill {
0%       { transform: scaleX(0); }
30%      { transform: scaleX(1); }
30.001%  { transform: scaleX(0); }
33.333%  { transform: scaleX(0); }
63.333%  { transform: scaleX(1); }
63.334%  { transform: scaleX(0); }
66.667%  { transform: scaleX(0); }
96.667%  { transform: scaleX(1); }
96.668%  { transform: scaleX(0); }
100%     { transform: scaleX(0); }
}
@keyframes qanim-clip2 {
0%,      30%  { opacity: 0; }
33.333%, 70%  { opacity: 1; }
70.001%, 100% { opacity: 0; }
}
@keyframes qanim-clip3 {
0%,      63.333% { opacity: 0; }
66.667%, 96.667% { opacity: 1; }
100%             { opacity: 0; }
}
.carousel-item.active .qanim-mark    { animation: qanim-mark  6s linear infinite; }
.carousel-item.active .qanim-fill    { animation: qanim-fill  6s linear infinite; }
.carousel-item.active .qanim-clip--2 { animation: qanim-clip2 6s linear infinite; }
.carousel-item.active .qanim-clip--3 { animation: qanim-clip3 6s linear infinite; }
@keyframes qanim-cue {
0%, 100% { transform: none; }
}
.carousel-item.active .qanim-clip--1 { animation: qanim-cue 6s linear 0s infinite; }
.carousel-item.active .qanim-clip--2 { animation: qanim-clip2 6s linear infinite,
qanim-cue   6s linear 2s infinite; }
.carousel-item.active .qanim-clip--3 { animation: qanim-clip3 6s linear infinite,
qanim-cue   6s linear 4s infinite; }
@media (prefers-reduced-motion: reduce) {
.qanim, .qanim *,
.carousel-item.active .qanim-mark,
.carousel-item.active .qanim-fill,
.carousel-item.active .qanim-clip--1,
.carousel-item.active .qanim-clip--2,
.carousel-item.active .qanim-clip--3 {
animation: none !important;
transition: none !important;
}
.qanim-fill { transform: scaleX(.34); }
}
.hp {
width: 100%;
}
.hp-screen {
position: relative;
width: 100%;
padding-top: 56.25%;
overflow: hidden;
border-radius: 6px 6px 0 0;
background: #101012;
box-shadow: inset 0 0 0 1px rgba(43, 41, 45, .08);
}
.hp-body {
filter: drop-shadow(0 14px 30px rgba(43, 41, 45, .18));
}
.hp-carousel,
.hp-slides,
.hp-slide {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
.hp-slide > video,
.hp-slide > img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
.hp-slide > div {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
.hp-live {
position: absolute;
top: 12px;
left: 12px;
z-index: 3;
display: inline-flex;
align-items: center;
gap: 5px;
padding: 3px 7px 3px 6px;
border-radius: 4px;
background: #E02020;
color: #fff;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 10px;
font-weight: 700;
letter-spacing: .06em;
line-height: 12.5px;
}
.hp-live:before {
content: '';
flex: 0 0 auto;
width: 5px;
height: 5px;
border-radius: 50%;
background: #fff;
animation: heroLiveDot 2s ease-in-out infinite;
}
.hp-play {
position: absolute;
top: 12px;
right: 12px;
z-index: 3;
}
.hp-film-host {
max-width: none;
margin: 0;
background: none;
border-radius: 0;
overflow: visible;
}
.hp-bar {
position: relative;
padding: 0 14px 11px;
border-radius: 0 0 6px 6px;
background: #fff;
box-shadow: 0 1px 0 rgba(43, 41, 45, .06) inset;
}
.hp-track {
position: relative;
height: 3px;
margin: 0 -14px 11px;
background: rgba(43, 41, 45, .10);
}
.hp-track__fill {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: #E02020;
transform: scaleX(0);
transform-origin: 0 50%;
will-change: transform;
}
.hp-controls {
display: flex;
align-items: center;
gap: 16px;
}
.hp-icon {
display: inline-flex;
flex: 0 0 auto;
color: rgba(43, 41, 45, .72);
}
.hp-icon svg {
display: block;
width: 20px;
height: 20px;
}
.hp-icon--full svg {
width: 17px;
height: 17px;
}
.hp-now {
display: inline-flex;
align-items: center;
gap: 5px;
color: #2B292D;
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 12.5px;
font-weight: 700;
letter-spacing: .04em;
line-height: 1;
}
.hp-now__dot {
width: 9px;
height: 9px;
border-radius: 50%;
background: #E02020;
}
.hp-gap {
flex: 1 1 auto;
}
.hp-stream {
display: inline-flex;
flex: 0 0 auto;
align-items: center;
--hp-h: 20px;
}
.hp-dest {
display: block;
flex: 0 0 auto;
width: auto;
height: var(--hp-h);
overflow: visible;
}
.hp-dest__roll {
display: block;
position: relative;
height: var(--hp-h);
}
.hp-dest__item {
position: absolute;
top: 0;
right: 0;
left: auto;
width: auto;
display: flex;
align-items: center;
height: var(--hp-h);
opacity: 0;
transition: opacity .12s ease;
}
.hp-dest__item.is-on {
position: relative;
opacity: 1;
transition: opacity .16s ease .12s;
}
.hp-dest__text {
color: rgba(43, 41, 45, .72);
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
font-size: 11px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
line-height: var(--hp-h);
white-space: nowrap;
text-align: right;
}
.hp-stream,
.hp-dest {
flex-shrink: 1;
min-width: 0;
}
.hp-dest__text {
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
}
.hp-dots {
position: static;
margin: 18px 0 0;
padding: 0;
justify-content: center;
opacity: 1;
}
.hp-dots li:before {
background: rgba(43, 41, 45, .12);
transition: background .2s, box-shadow .2s;
}
.hp-dots li.active:before {
background: #00ffff;
box-shadow: 0 0 0 1px rgba(43, 41, 45, .5);
}
.hp:hover .hp-dots li:before {
background: rgba(43, 41, 45, .28);
}
.hp:hover .hp-dots li.active:before {
background: #00ffff;
box-shadow: 0 0 0 1px #2B292D;
}
.hp.is-offscreen *,
.hp.is-offscreen *:before,
.hp.is-offscreen *:after {
animation-play-state: paused !important;
}
@media (max-width: 767px) {
.hp-bar { padding: 0 10px 9px; }
.hp-track { margin: 0 -10px 9px; }
.hp-controls { gap: 11px; }
.hp-icon svg { width: 17px; height: 17px; }
.hp-icon--full svg { width: 14px; height: 14px; }
.hp-now { font-size: 11px; }
.hp-now__dot { width: 7px; height: 7px; }
.hp-stream { --hp-h: 16px; }
}
@media (prefers-reduced-motion: reduce) {
.hp-live:before { animation: none; }
.hp-dest__item,
.hp-dest__item.is-on { transition: none; }
}
.header .navbar-brand,
.header .btn--signup {
flex-shrink: 0;
}
.header .navbar-nav {
flex-wrap: nowrap;
}
@media (min-width: 992px) and (max-width: 1299px) {
.header .nav-item {
margin-left: 14px;
}
.header .nav-link {
padding: 10px 2px;
font-size: 15px;
}
.header .navbar .btn--signup {
margin-left: 18px;
padding-left: 20px;
padding-right: 20px;
}
.header .navbar-pic {
max-width: 132px;
height: auto;
}
}
@media (min-width: 992px) {
.lr-lang__current {
display: none;
}
.lr-lang__globe {
margin-right: 0;
}
.lr-lang .nav-arrow {
margin-left: 5px;
}
.lr-lang {
display: flex;
align-items: center;
}
.navbar-nav .js-signin-btn {
margin-left: 60px;
}
}
.lr-lang {
position: relative;
}
.lr-lang__toggle,
.lr-lang__toggle:hover,
.lr-lang__toggle:focus {
display: inline-flex;
align-items: center;
text-decoration: none;
}
.lr-lang__globe {
margin-right: 7px;
opacity: .65;
flex-shrink: 0;
}
.lr-lang__toggle:hover .lr-lang__globe {
opacity: 1;
}
.lr-lang .nav-arrow {
transition: fill .2s, transform .2s;
}
.lr-lang.is-open .nav-arrow {
transform: rotate(180deg);
}
.lr-lang__list {
display: none;
margin: 0;
padding: 0 0 4px 14px;
list-style: none;
}
.lr-lang.is-open .lr-lang__list {
display: block;
}
.lr-lang__link {
display: block;
padding: 7px 0;
color: #2B292D;
font-size: 18px;
line-height: 1.3;
text-decoration: none;
transition: color .2s;
}
.lr-lang__link:hover,
.lr-lang__link:focus {
color: #0000ff;
text-decoration: none;
}
.lr-lang__link.is-current {
font-weight: 700;
}
@media (min-width: 992px) {
.lr-lang__list {
display: block;
visibility: hidden;
position: absolute;
top: 100%;
right: -12px;
z-index: 60;
min-width: 156px;
margin-top: 12px;
padding: 8px 0;
border-radius: 8px;
background: #fff;
box-shadow: 0 13px 18px -8px rgba(0, 0, 0, .15),
0 29px 45px 4px rgba(0, 0, 0, .08),
0 11px 55px 10px rgba(0, 0, 0, .07);
opacity: 0;
transform: translateY(-10px);
transition: opacity .3s ease, transform .3s ease, visibility .3s;
}
.lr-lang.is-open .lr-lang__list {
visibility: visible;
opacity: 1;
transform: translateY(0);
}
body:not(.touch-device) .lr-lang:hover .lr-lang__list,
.lr-lang:focus-within .lr-lang__list {
visibility: visible;
opacity: 1;
transform: translateY(0);
}
.lr-lang__link {
padding: 8px 20px;
font-size: 16px;
}
}
.lr-lang-bar {
display: flex;
align-items: center;
flex-wrap: wrap;
position: fixed;
left: 20px;
bottom: 20px;
z-index: 58;
max-width: 300px;
padding: 12px 14px;
border: 1px solid #E3E3E3;
border-radius: 8px;
background: #fff;
box-shadow: 0 13px 18px -8px rgba(0, 0, 0, .15), 0 11px 40px 6px rgba(0, 0, 0, .07);
color: #2B292D;
font-size: 13px;
line-height: 1.45;
opacity: 0;
transform: translateY(8px);
transition: opacity .25s ease, transform .25s ease;
}
.lr-lang-bar.is-visible {
opacity: 1;
transform: translateY(0);
}
.lr-lang-bar[hidden] {
display: none;
}
.lr-lang-bar__text {
width: 100%;
margin-bottom: 8px;
}
.lr-lang-bar__accept,
.lr-lang-bar__accept:hover,
.lr-lang-bar__accept:focus {
margin-right: 14px;
color: #0000ff;
font-weight: 700;
text-decoration: none;
}
.lr-lang-bar__accept:hover {
text-decoration: underline;
}
.lr-lang-bar__dismiss {
padding: 0;
border: 0;
background: transparent;
color: #6b6a6e;
font-size: 14px;
cursor: pointer;
}
.lr-lang-bar__dismiss:hover {
color: #2B292D;
}
@media (max-width: 767px) {
.lr-lang-bar {
left: 12px;
right: 12px;
bottom: 12px;
max-width: none;
padding-right: 64px;
}
}
@media (min-width: 768px) and (max-width: 991px) {
.navbar-default .lr-lang__list {
display: block;
visibility: hidden;
position: absolute;
top: 100%;
right: 0;
z-index: 60;
min-width: 156px;
padding: 8px 0;
border-radius: 8px;
background: #fff;
box-shadow: 0 13px 18px -8px rgba(0, 0, 0, .15), 0 11px 40px 6px rgba(0, 0, 0, .07);
opacity: 0;
}
.navbar-default .lr-lang.is-open .lr-lang__list {
visibility: visible;
opacity: 1;
}
.navbar-default .lr-lang__link {
padding: 8px 20px;
font-size: 15px;
color: #2B292D;
}
}
@media (min-width: 992px) {
html[lang="es"] .price--featured:before {
content: '73% ELIGE ESTE PLAN';
}
html[lang="pt"] .price--featured:before {
content: '73% ESCOLHEM ESTE PLANO';
}
html[lang="ja"] .price--featured:before {
content: '73%がこのプランを選択';
}
html[lang="fr"] .price--featured:before {
content: '73\00a0% CHOISISSENT CE FORFAIT';
}
html[lang="it"] .price--featured:before {
content: 'IL 73% SCEGLIE QUESTO PIANO';
}
}
html[lang="ja"] body,
html[lang="ja"] button,
html[lang="ja"] input,
html[lang="ja"] select,
html[lang="ja"] textarea {
font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Yu Gothic Medium',
'Yu Gothic', Meiryo, 'Noto Sans JP', sans-serif;
}
html[lang="ja"] body {
line-height: 1.8;
}
html[lang="ja"] {
word-break: normal;
line-break: strict;
overflow-wrap: break-word;
}
html[lang="ja"] h1,
html[lang="ja"] h2,
html[lang="ja"] h3,
html[lang="ja"] .title,
html[lang="ja"] .subtitle {
word-break: auto-phrase;
}
html[lang="ja"] em,
html[lang="ja"] i {
font-style: normal;
font-weight: 700;
}
@media (max-width: 991px) {
.nav-drop {
visibility: hidden;
height: 0;
opacity: 0;
overflow: hidden;
}
.nav-drop.visible {
visibility: visible;
height: auto;
opacity: 1;
overflow: visible;
}
}
@media (max-width: 991px) {
.header .navbar-collapse {
max-height: calc(100vh - 53px);
overflow-y: auto;
overscroll-behavior: contain;
-webkit-overflow-scrolling: touch;
}
}
@media (min-width: 992px) {
.header--nav-groups .nav-drop {
right: auto;
left: 50%;
transform: translateX(-50%) translateY(-10px);
}
body:not(.touch-device) .header--nav-groups .nav-item:hover .nav-drop {
transform: translateX(-50%) translateY(0);
}
.header--nav-groups .nav-drop .row {
width: -moz-max-content;
width: max-content;
padding-top: 19px;
padding-bottom: 19px;
}
.header--nav-groups .nav-column-label {
margin-top: 11px;
}
.header--nav-groups .nav-drop:after {
right: auto;
left: 50%;
margin-left: -15px;
}
.header--nav-groups .nav-item {
margin-left: 18px;
}
.header--nav-groups .nav-link {
padding: 10px 4px;
}
.header--nav-groups .nav-drop .nav-group {
margin-bottom: 2px;
}
}
@media (min-width: 992px) {
.header--nav-groups .nav-drop.visible {
visibility: visible;
opacity: 1;
transform: translateX(-50%) translateY(0);
}
}
.header--nav-groups .nav-link.is-current,
.header--nav-groups .nav-entry.is-current,
.header--nav-groups .nav-group.is-current .nav-title {
color: #0000ff;
font-weight: 700;
}
.header--nav-groups .nav-group.is-current {
cursor: default;
}
.header--nav-groups .nav-column {
flex: 0 0 100%;
max-width: 100%;
padding: 0 15px;
}
.header--nav-groups .nav-column-label {
margin-bottom: 15px;
font-size: 12px;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
color: rgba(43, 41, 45, 0.55);
}
.header--nav-groups .nav-entry {
display: block;
width: -moz-fit-content;
width: fit-content;
font-family: 'Montserrat', 'Montserrat Fb', 'Montserrat Fb A', sans-serif;
font-size: 16px;
font-weight: 700;
line-height: 1.35;
color: #2B292D;
}
.header--nav-groups .nav-drop .nav-title {
margin-bottom: 6px;
font-size: 16px;
line-height: 1.35;
}
.header--nav-groups .nav-drop .nav-text {
font-size: 14px;
line-height: 1.5;
}
.header--nav-groups .nav-drop .nav-group,
.header--nav-groups .nav-entry {
margin-left: -12px;
margin-right: -12px;
padding: 11px 12px;
transition: background-color .15s;
}
.header--nav-groups .nav-drop .nav-group:last-child,
.header--nav-groups .nav-column .nav-entry:last-child {
margin-bottom: 0;
}
.header--nav-groups .nav-drop .nav-group:hover,
.header--nav-groups .nav-entry:hover,
.header--nav-groups .nav-entry:focus {
background: #F8F8FB;
}
.header--nav-groups .nav-drop .nav-group:hover .nav-title {
color: #2B292D;
}
@media (min-width: 992px) {
.header--nav-groups .nav-drop .row {
justify-content: flex-start;
flex-wrap: nowrap;
}
.header--nav-groups .nav-column {
flex: 0 1 auto;
max-width: none;
padding: 0;
}
.header--nav-groups .nav-column + .nav-column {
margin-left: 40px;
}
.header--nav-groups .nav-column--described {
flex: 0 0 215px;
}
.header--nav-groups .nav-drop--product .nav-column--described {
flex-basis: 245px;
}
}
@media (max-width: 991px) {
.header--nav-groups .nav-column-label {
margin-top: 6px;
padding-top: 14px;
border-top: 1px solid #E3E3E3;
}
}
.footer--columns .footer-top {
display: grid;
grid-template-columns: 300px 1fr;
gap: 56px;
align-items: start;
}
.footer--columns .footer-brand {
min-width: 0;
}
.footer--columns .footer-brand .footer-group {
margin-top: 34px;
}
.footer--columns .footer-preferred {
display: inline-flex;
align-items: center;
gap: 9px;
margin-top: 26px;
padding: 10px 14px;
max-width: 100%;
border: 1px solid rgba(43, 41, 45, 0.2);
border-radius: 3px;
font-size: 13.5px;
font-weight: 700;
line-height: 1.35;
color: #2B292D;
transition: background-color .15s, border-color .15s;
}
.footer--columns .footer-preferred:hover,
.footer--columns .footer-preferred:focus {
background: #F8F8FB;
border-color: rgba(43, 41, 45, 0.45);
color: #2B292D;
}
.footer--columns .footer-preferred-mark {
flex: 0 0 16px;
}
@media (max-width: 991px) {
.footer--columns .footer-brand {
text-align: center;
}
.footer--columns .footer-brand {
margin-bottom: 48px;
}
}
.footer--columns .footer-status-dot {
display: inline-block;
width: 7px;
height: 7px;
margin-right: 8px;
border-radius: 50%;
background: #1FA85E;
vertical-align: middle;
}
.footer--columns .footer-columns {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
gap: 28px 32px;
min-width: 0;
}
@media (max-width: 991px) {
.footer--columns .footer-top {
display: block;
}
}
.footer--columns .footer-column {
min-width: 0;
}
.footer--columns .footer-group + .footer-group {
margin-top: 34px;
}
.footer--columns .footer-category {
font-family: 'Open Sans', 'Open Sans Fb', 'Open Sans Fb A', sans-serif;
margin-bottom: 22px;
padding-top: 0;
font-size: 11px;
font-weight: 700;
line-height: 1.4;
letter-spacing: 0.18em;
text-transform: uppercase;
color: rgba(43, 41, 45, 0.4);
}
.footer--columns .footer-menu .footer-link {
margin-bottom: 13px;
font-size: 15px;
line-height: 1.45;
color: rgba(43, 41, 45, 0.65);
}
.footer--columns .footer-text {
max-width: 640px;
font-size: 16px;
line-height: 1.7;
}
.footer--columns .footer-menu .footer-link,
.footer--columns .footer-nav .footer-link {
text-decoration: none;
text-underline-offset: 3px;
transition: color .15s, text-decoration-color .15s;
}
.footer--columns .footer-menu .footer-link:hover,
.footer--columns .footer-menu .footer-link:focus,
.footer--columns .footer-nav .footer-link:hover,
.footer--columns .footer-nav .footer-link:focus {
color: #0000ff;
text-decoration: underline;
text-decoration-color: #0000ff;
}
@media (min-width: 992px) {
.footer--columns .footer-section {
padding-bottom: 0;
}
}
.footer--columns .footer-strip {
margin-top: 34px;
padding-top: 20px;
padding-bottom: 20px;
border-top: 1px solid #E3E3E3;
font-size: 14px;
line-height: 1.8;
}
.footer--columns .footer-strip-label {
margin-right: 6px;
font-weight: 700;
color: rgba(43, 41, 45, 0.55);
}
.footer--columns .footer-strip .footer-link {
display: inline;
font-size: 14px;
opacity: 0.75;
}
.footer--columns .footer-strip .footer-link {
transition: color .15s, opacity .15s;
}
.footer--columns .footer-strip .footer-link:hover,
.footer--columns .footer-strip .footer-link:focus {
opacity: 1;
color: #0000ff;
}
.footer--columns .footer-strip .footer-link:not(:last-child):after {
content: '\00b7';
margin: 0 4px 0 8px;
opacity: 0.5;
}
.footer--columns .footer-down {
padding-top: 28px;
padding-bottom: 28px;
}
.footer--columns .footer-down-inner {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
}
.footer--columns .footer-down .socials {
margin-right: -10px;
}
@media (max-width: 767px) {
.footer--columns .footer-down-inner {
flex-direction: column;
align-items: flex-start;
gap: 14px;
}
.footer--columns .footer-down .socials {
margin-left: -10px;
margin-right: 0;
}
}
@media (max-width: 575px) {
.footer--columns .footer-columns {
grid-template-columns: repeat(2, 1fr);
gap: 24px 16px;
}
}
.lr-link,
.link,
.intro-link,
.toltip a,
.contact-mail,
.aff-mail {
color: #0000ff;
border-bottom: none;
text-decoration: underline;
text-decoration-color: rgba(0, 0, 255, .3);
text-underline-offset: 3px;
transition: color .15s, text-decoration-color .15s;
}
.lr-link:hover,
.link:hover,
.intro-link:hover,
.toltip a:hover,
.contact-mail:hover,
.aff-mail:hover,
.lr-link:focus,
.link:focus,
.intro-link:focus,
.toltip a:focus,
.contact-mail:focus,
.aff-mail:focus {
color: #0000ff;
border-bottom: none;
text-decoration: underline;
text-decoration-color: #0000ff;
}
.lr-link:focus-visible,
.link:focus-visible,
.intro-link:focus-visible,
.toltip a:focus-visible {
outline: 2px solid #0000ff;
outline-offset: 2px;
}
.customer-example-iframe {
width: 480px;
height: 270px;
margin: 10px;
position: relative;
overflow: hidden;
}
.customer-video-thumbnail {
background-size: cover;
background-position: center;
cursor: pointer;
position: relative;
width: 100%;
height: 100%;
border-radius: 4px;
overflow: hidden;
}
.customer-video-header {
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 3;
background: linear-gradient(rgba(43, 41, 45, .72), transparent);
padding: 16px;
display: flex;
align-items: flex-start;
}
.customer-video-logo {
flex-shrink: 0;
width: 40px;
height: 40px;
border-radius: 50%;
overflow: hidden;
background-color: #fff;
margin-right: 10px;
}
.customer-video-logo img {
width: 100%;
height: 100%;
object-fit: cover;
}
.customer-video-text {
flex-grow: 1;
}
.customer-video-title {
color: white;
font-size: 14px;
font-weight: 700;
text-shadow: 0 1px 2px rgba(43, 41, 45, .55);
margin-bottom: -3px;
line-height: 1.2;
}
.customer-video-company {
color: white;
font-size: 13px;
text-decoration: none;
text-shadow: 0 1px 2px rgba(43, 41, 45, .55);
line-height: 1.2;
display: inline-block;
}
.customer-video-company:hover {
text-decoration: underline;
color: white;
}
.customer-video-play {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
background-color: rgba(43, 41, 45, .55);
border-radius: 50%;
border: 2px solid white;
padding: 0;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease;
z-index: 2;
}
.customer-video-play:focus-visible {
outline: 3px solid #00E5FF;
outline-offset: 3px;
}
.customer-video-thumbnail:hover .customer-video-play {
transform: translate(-50%, -50%) scale(1.1);
}
.customer-video-player {
width: 100%;
height: 100%;
object-fit: contain;
border-radius: 4px;
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
.customer-videos {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
@media (max-width: 768px) {
.customer-example-iframe {
width: 100%;
max-width: 480px;
margin: 10px auto;
}
}
