241 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
			
		
		
	
	
			241 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			SCSS
		
	
	
	
	
	
| @import "./media-queries.scss";
 | |
| @import "./variables.scss";
 | |
| 
 | |
| .top-banner {
 | |
|   position: sticky;
 | |
|   top: 0;
 | |
|   z-index: 1;
 | |
|   display: grid;
 | |
|   grid-template-columns: 0.5fr 1fr 0.5fr;
 | |
|   grid-template-areas: "menu logo clock";
 | |
|   grid-gap: 1em;
 | |
|   align-items: center;
 | |
|   justify-items: center;
 | |
|   background-color: $primary;
 | |
| 
 | |
|   // ios homescreen app whitespace above header fix.
 | |
|   &::before {
 | |
|     content: '';
 | |
|     width: 100%;
 | |
|     height: 3rem;
 | |
|     position: absolute;
 | |
|     top: -3rem;
 | |
|     background-color: inherit;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .company-logo {
 | |
|   grid-area: logo;
 | |
| }
 | |
| 
 | |
| .menu-toggle-container {
 | |
|   grid-area: menu;
 | |
|   color: #1e1e1e;
 | |
|   border-radius: 50% 50%;
 | |
|   z-index: 3;
 | |
|   width: 42px;
 | |
|   height: 42px;
 | |
|   background: white;
 | |
|   display: flex;
 | |
|   flex-direction: column;
 | |
|   justify-content: center;
 | |
|   align-items: center;
 | |
| 
 | |
|   &:hover {
 | |
|     cursor: pointer;
 | |
|   }
 | |
| 
 | |
|   span {
 | |
|     display: block;
 | |
|     position: relative;
 | |
|     border-radius: 3px;
 | |
|     height: 3px;
 | |
|     width: 18px;
 | |
|     background: #111;
 | |
|     z-index: 1;
 | |
|     transform-origin: 4px 0px;
 | |
|     transition:
 | |
|       transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
 | |
|       background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
 | |
|       opacity 0.55s ease;
 | |
|   }
 | |
| 
 | |
|   span:first-child {
 | |
|     transform-origin: 0% 0%;
 | |
|     margin-bottom: 4px;
 | |
|   }
 | |
| 
 | |
|   span:nth-last-child(2) {
 | |
|     transform-origin: 0% 100%;
 | |
|     margin-bottom: 4px;
 | |
|   }
 | |
| 
 | |
|   &.open {
 | |
|     span{
 | |
|       opacity: 1;
 | |
|       transform: rotate(-45deg) translate(2px, -2px);
 | |
|       background: #232323;
 | |
|     }
 | |
| 
 | |
|     span:nth-last-child(2) {
 | |
|       opacity: 0;
 | |
|       transform: rotate(0deg) scale(0.2, 0.2);
 | |
|     }
 | |
| 
 | |
|     span:nth-last-child(3) {
 | |
|       transform: rotate(45deg) translate(3.5px, -2px);
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   &.open {
 | |
|     background: #fff;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .menu {
 | |
|   position: fixed;
 | |
|   top: 0;
 | |
|   background-color: $primary;
 | |
|   width: 100%;
 | |
|   z-index: 2;
 | |
|   overflow: hidden;
 | |
|   transition: max-height 0.5s ease-out;
 | |
|   height: 100vh;
 | |
|   max-height: 100vh;
 | |
|   display: flex;
 | |
|   flex-direction: column;
 | |
|   align-items: center;
 | |
|   justify-content: center;
 | |
| 
 | |
|   &.collapsed {
 | |
|     max-height: 0%;
 | |
|   }
 | |
| 
 | |
|   a {
 | |
|     text-decoration: none;
 | |
|     position: relative;
 | |
| 
 | |
|     &:hover {
 | |
|       .icon {
 | |
|         opacity: 1;
 | |
|         right: -2.5rem;
 | |
|       }
 | |
|     }
 | |
| 
 | |
|     .icon {
 | |
|       opacity: 0;
 | |
|       position: absolute;
 | |
|       top: 35%;
 | |
|       right: 0;
 | |
|       color: $link-color;
 | |
|       font-size: 1.4rem;
 | |
|       transition: all 0.25s;
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   .single-route {
 | |
|     font-size: 3em;
 | |
|     outline: 0;
 | |
|     text-decoration: none;
 | |
|     color: #1e1e1e;
 | |
|     border-bottom: 4px solid transparent;
 | |
|     display: block;
 | |
| 
 | |
|     &.open {
 | |
|       -webkit-animation: fadeInFromNone 3s ease-out;
 | |
|       -moz-animation: fadeInFromNone 3s ease-out;
 | |
|       -o-animation: fadeInFromNone 3s ease-out;
 | |
|       animation: fadeInFromNone 3s ease-out;
 | |
|     }
 | |
| 
 | |
|     &:hover {
 | |
|       cursor: pointer;
 | |
|       border-color: $link-color;
 | |
| 
 | |
|     }
 | |
|   }
 | |
| }
 | |
| 
 | |
| @-webkit-keyframes fadeInFromNone {
 | |
|   0% {
 | |
|       display: none;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   10% {
 | |
|       display: block;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   100% {
 | |
|       display: block;
 | |
|       opacity: 1;
 | |
|   }
 | |
| }
 | |
| 
 | |
| @-moz-keyframes fadeInFromNone {
 | |
|   0% {
 | |
|       display: none;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   10% {
 | |
|       display: block;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   100% {
 | |
|       display: block;
 | |
|       opacity: 1;
 | |
|   }
 | |
| }
 | |
| 
 | |
| @-o-keyframes fadeInFromNone {
 | |
|   0% {
 | |
|       display: none;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   10% {
 | |
|       display: block;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   100% {
 | |
|       display: block;
 | |
|       opacity: 1;
 | |
|   }
 | |
| }
 | |
| 
 | |
| @keyframes fadeInFromNone {
 | |
|   0% {
 | |
|       display: none;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   10% {
 | |
|       display: block;
 | |
|       opacity: 0;
 | |
|   }
 | |
| 
 | |
|   100% {
 | |
|       display: block;
 | |
|       opacity: 1;
 | |
|   }
 | |
| }
 | |
| 
 | |
| .clock {
 | |
|   grid-area: clock;
 | |
|   text-decoration: none;
 | |
|   color: #333333;
 | |
|   display: flex;
 | |
|   font-family: Arial;
 | |
|   @include mobile {
 | |
|     font-size: 0.8em;
 | |
|     margin-right: 1rem;
 | |
|   }
 | |
|   h2 {
 | |
|     display: flex;
 | |
|   }
 | |
| }
 |