/*********************************************
 * CTA Button
**********************************************/
.cta-buttons {
    --size:62px; --icon-size:25px;
    position:fixed; bottom:20px; right:20px; z-index:45;
    transition:var(--twc-transition);
}
.cta-buttons ul {margin:0; list-style:none;}
.cta-buttons ul li {padding:0;}
.cta-buttons ul li:not(:last-child) {margin-bottom:20px;}
.cta-buttons a {
    width:var(--size); height:var(--size); background:var(--twc-color-primary);
    border-radius:50%;
    text-decoration:none; font-size:var(--icon-size);
    position:relative; color:#fff;
}
.cta-buttons__icon {line-height:1; position:relative;}
.cta-buttons__text {
    width:calc(2 * var(--size)); height:calc(2 * var(--size));
    border-radius:50%;
    position:absolute; top:50%; left:50%; transform:translate(-50%, -50%);
}
.cta-buttons__text svg textPath {
    fill:var(--twc-color-primary);text-transform:lowercase; font-size:.9em;
    transition:var(--twc-transition);
    pointer-events:none;
}


/*hover*/
@media (hover:hover) {
    .cta-buttons a:hover, .cta-buttons a:focus {color:#fff; background:var(--twc-color-primary-highlight);}
    .cta-buttons a:hover .cta-buttons__text svg textPath {fill:var(--twc-color-secondary); pointer-events:auto;}
}

/* hide when scroll top in home page or open menu mobile */
body.home.scroll-top .cta-buttons,
.menu-open .cta-buttons {opacity:0; pointer-events:none;}


/*********************************************
 * CTA Button Responsive
**********************************************/
@media only screen and (max-width:1024px) {
    .cta-buttons {--size:60px; --icon-size:20px;}
    .cta-buttons__text {display:none;}
}
@media only screen and (max-width:480px) {
    .cta-buttons {--size:50px; --icon-size:18px;}
}