.cmn-toggle-switch {    display: block;    position: relative;    overflow: hidden;    margin: 0 0 0 15px;    padding: 0;    width: 45px;    background: transparent;    float: right;    height: 38px;    font-size: 0;    text-indent: -9999px;    -webkit-appearance: none;    -moz-appearance: none;    appearance: none;    box-shadow: none;    border-radius: none;    border: none;    cursor: pointer;    -webkit-transition: background 0.3s;    transition: background 0.3s;}.cmn-toggle-switch:focus {    outline: none;}.cmn-toggle-switch span {    display: block;    position: absolute;    top: 17px;    left: 5px;    right: 10px;    height: 4px;    background: #ffffff;    border-radius: 5px;}.cmn-toggle-switch span::before,.cmn-toggle-switch span::after {    position: absolute;    display: block;    left: 0;    width: 100%;    height: 4px;    background-color: #ffffff;    content: "";    border-radius: 5px;}.cmn-toggle-switch span::before {    top: -9px;}.cmn-toggle-switch span::after {    bottom: -9px;}/** * Style 1 * * Rotating hamburger icon (rot), that simply rotates 90 degrees when activated. * Nothing too fancy, simple transition. */.cmn-toggle-switch__rot {    background-color: #28aadc;}.cmn-toggle-switch__rot span {    -webkit-transition: -webkit-transform 0.3s;    transition: transform 0.3s;}/* active state, i.e. menu open */.cmn-toggle-switch__rot.active {    background-color: #166888;}.cmn-toggle-switch__rot.active span {    -webkit-transform: rotate(90deg);    -ms-transform: rotate(90deg);    transform: rotate(90deg);}/** * Style 2 * * Hamburger to "x" (htx). Takes on a hamburger shape, bars slide * down to center and transform into an "x". */.cmn-toggle-switch__htx {    background-color: #ff3264;}.cmn-toggle-switch__htx span {    -webkit-transition: background 0 0.3s;    transition: background 0 0.3s;}.cmn-toggle-switch__htx span::before,.cmn-toggle-switch__htx span::after {    -webkit-transition-duration: 0.3s, 0.3s;    transition-duration: 0.3s, 0.3s;    -webkit-transition-delay: 0.3s, 0;    transition-delay: 0.3s, 0;}.cmn-toggle-switch__htx span::before {    -webkit-transition-property: top, -webkit-transform;    transition-property: top, transform;}.cmn-toggle-switch__htx span::after {    -webkit-transition-property: bottom, -webkit-transform;    transition-property: bottom, transform;}/* active state, i.e. menu open */.cmn-toggle-switch__htx.active {    background-color: #cb0032;}.cmn-toggle-switch__htx.active span {    background: none;}.cmn-toggle-switch__htx.active span::before {    top: 0;    -webkit-transform: rotate(45deg);    -ms-transform: rotate(45deg);    transform: rotate(45deg);}.cmn-toggle-switch__htx.active span::after {    bottom: 0;    -webkit-transform: rotate(-45deg);    -ms-transform: rotate(-45deg);    transform: rotate(-45deg);}.cmn-toggle-switch__htx.active span::before,.cmn-toggle-switch__htx.active span::after {    -webkit-transition-delay: 0, 0.3s;    transition-delay: 0, 0.3s;}/** * Style 3 * * Hamburger to left-arrow (htla). Hamburger menu transforms to a left-pointing * arrow. Usually indicates an off canvas menu sliding in from left that * will be close on re-click of the icon. */.cmn-toggle-switch__htla {    background-color: #32dc64;}.cmn-toggle-switch__htla span {    -webkit-transition: -webkit-transform 0.3s;    transition: transform 0.3s;}.cmn-toggle-switch__htla span::before {    -webkit-transform-origin: top right;    -ms-transform-origin: top right;    transform-origin: top right;    -webkit-transition: -webkit-transform 0.3s, width 0.3s, top 0.3s;    transition: transform 0.3s, width 0.3s, top 0.3s;}.cmn-toggle-switch__htla span::after {    -webkit-transform-origin: bottom right;    -ms-transform-origin: bottom right;    transform-origin: bottom right;    -webkit-transition: -webkit-transform 0.3s, width 0.3s, bottom 0.3s;    transition: transform 0.3s, width 0.3s, bottom 0.3s;}/* active state, i.e. menu open */.cmn-toggle-switch__htla.active {    background-color: #18903c;}.cmn-toggle-switch__htla.active span {    -webkit-transform: rotate(180deg);    -ms-transform: rotate(180deg);    transform: rotate(180deg);}.cmn-toggle-switch__htla.active span::before,.cmn-toggle-switch__htla.active span::after {    width: 50%;}.cmn-toggle-switch__htla.active span::before {    top: 0;    -webkit-transform: translateX(42px) translateY(3px) rotate(45deg);    -ms-transform: translateX(42px) translateY(3px) rotate(45deg);    transform: translateX(42px) translateY(3px) rotate(45deg);}.cmn-toggle-switch__htla.active span::after {    bottom: 0;    -webkit-transform: translateX(42px) translateY(-3px) rotate(-45deg);    -ms-transform: translateX(42px) translateY(-3px) rotate(-45deg);    transform: translateX(42px) translateY(-3px) rotate(-45deg);}/** * Style 4 * * Hamburger to right-arrow (htra). Hamburger menu transforms to a * right-pointing arrow. Usually indicates an off canvas menu sliding in from * right that will be close on re-click of the icon. */.cmn-toggle-switch__htra span {    -webkit-transition: -webkit-transform 0.3s;    transition: transform 0.3s;}.cmn-toggle-switch__htra span::before {    -webkit-transform-origin: top left;    -ms-transform-origin: top left;    transform-origin: top left;    -webkit-transition: -webkit-transform 0.3s, width 0.3s, top 0.3s;    transition: transform 0.3s, width 0.3s, top 0.3s;}.cmn-toggle-switch__htra span::after {    -webkit-transform-origin: bottom left;    -ms-transform-origin: bottom left;    transform-origin: bottom left;    -webkit-transition: -webkit-transform 0.3s, width 0.3s, bottom 0.3s;    transition: transform 0.3s, width 0.3s, bottom 0.3s;}.cmn-toggle-switch__htra.active span {    -webkit-transform: rotate(180deg);    -ms-transform: rotate(180deg);    transform: rotate(180deg);}.cmn-toggle-switch__htra.active span::before,.cmn-toggle-switch__htra.active span::after {    width: 50%;}.cmn-toggle-switch__htra.active span::before {    top: 0;    -webkit-transform: translateX(-6px) translateY(3px) rotate(-45deg);    -ms-transform: translateX(-6px) translateY(3px) rotate(-45deg);    transform: translateX(-3px) translateY(1px) rotate(-45deg);}.cmn-toggle-switch__htra.active span::after {    bottom: 0;    -webkit-transform: translateX(-6px) translateY(-3px) rotate(45deg);    -ms-transform: translateX(-6px) translateY(-3px) rotate(45deg);    transform: translateX(-3px) translateY(-1px) rotate(45deg);}