.menu{padding:10rem 0 20vh 0;position:relative;display:flex;flex-direction:column;text-align:right;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;counter-reset:menucounter}.menu a{color:#fff}.menu a:hover{color:#000}.menu__item{flex:none;display:flex;justify-content:flex-end;position:relative;padding-left:5rem}.menu__item::before{counter-increment:menucounter;content:counters(menucounter,".",decimal-leading-zero);position:absolute;left:0;border-left:3px solid currentColor;top:20%;height:60%;padding-left:1rem;display:flex;align-items:center;line-height:1;font-weight:700;opacity:0;transform:translateX(-1rem);transition:transform 0.3s,opacity 0.3s}.menu__item:hover::before{opacity:1;transform:translateX(0)}.menu__item-text{position:relative;cursor:pointer;padding:.5rem;display:block;overflow:hidden;font-size:36px}.menu__item-textinner{display:block;font-weight:300;white-space:nowrap;color:var(--color-menu)}.js .menu__item-textinner{transform:translateY(100%)}.menu__item:hover .menu__item-textinner{color:var(--color-menu-hover)}.menu__item-sub{display:none;font-weight:700;white-space:nowrap;align-items:center;position:relative;margin-left:2rem;padding-left:3rem;opacity:0;transform:translateX(-1rem);transition:transform 0.3s,opacity 0.3s}.menu__item:hover .menu__item-sub{opacity:1;transform:translateX(0);font-size:16px}.menu__item-sub::before{content:'';position:absolute;left:0;top:5%;width:1px;height:80%;background:currentColor;transform-origin:0 100%;transform:rotate(22.5deg) scale3d(1,0,1);transition:transform 0.3s}.menu__item:hover .menu__item-sub::before{transform:rotate(22.5deg) scale3d(1,1,1)}.hover-reveal{position:absolute;z-index:-1;width:220px;height:320px;top:0;left:0;pointer-events:none;opacity:0}.hover-reveal__inner{overflow:hidden}.hover-reveal__inner,.hover-reveal__img{width:100%;height:100%;position:relative}.hover-reveal__img{background-size:cover;background-position:50% 50%}@media screen and (min-width:53em){.menu{padding-top:0vh;padding-bottom:0vh}.menu__item{padding-left:20vw;justify-content:initial}.menu__item-text{padding:1vh 0}.menu__item-sub{display:flex}}@media screen and (max-width:992px){.menu__item{padding:.2rem 0 .2rem 1rem}.menu__item-text{font-size:22px}.hover-reveal{display:none}}