/*-------------------------------------------------------------- # Navigation --------------------------------------------------------------*/ header { position: absolute; width: 100%; top: 0; @include media-query(1025px) { position: unset; } } .main-menu { padding: 10px 0; background-color: $white; width: 100%; z-index: 9999; .main-menu__block { display: flex; align-items: center; position: relative; justify-content: space-between; border-radius: $br-24; background: $white; } .main-menu__left { display: flex; align-items: center; gap: $gap-20; .main-menu__logo { align-items: center; position: relative; } .main-menu__nav { margin-left: auto; margin-right: auto; .main-menu__list, .main-menu__list ul, .stricky-header .main-menu__list, .stricky-header .main-menu__list ul { margin: 0; padding: 0; list-style-type: none; align-items: center; display: none; @include media-query-min(1200px) { display: flex; gap: $gap-20; } } .dropdown { a { display: inline-flex; align-items: center; gap: $gap-8; i { padding-top: 3px; } } } .main-menu__list, .stricky-header .main-menu__list { >li { padding-top: 8px; padding-bottom: 8px; position: relative; >a { padding: clamp(3px, 0.313vw, 14px) clamp(4px, 0.417vw, 18px); font-size: clamp(10px, 0.729vw, 48px); display: flex; align-items: center; font-family: $font-primary; color: $black; font-weight: 400; line-height: 120%; text-transform: capitalize; position: relative; transition: all 500ms ease; border-radius: $br-48; @include media-query(1399px) { font-size: clamp(12px, 0.833vw, 32px); } &.active, &:hover { border-radius: $br-48; color: $white; background-color: $black; } } } li { ul { position: absolute; top: 100%; left: -25px; min-width: clamp(190px, 12.5vw, 492px); flex-direction: column; justify-content: flex-start; align-items: flex-start; opacity: 0; visibility: hidden; transform-origin: top center; transform: scaleY(0) translateZ(100px); z-index: 99; transition: 0.3s cubic-bezier(0.18, 0.55, 1, 1); background-color: $white; box-shadow: 1px 1px 12px 0px rgba(0,0,0,0.58); -webkit-box-shadow: 1px 1px 12px 0px rgba(0,0,0,0.58); -moz-box-shadow: 1px 1px 12px 0px rgba(0,0,0,0.58); padding: 5px; border-radius: $br-8; gap: $gap-4 !important; li { flex: 1 1 100%; width: 100%; position: relative; >a { font-size: clamp(6px, 0.833vw, 38px); line-height: 26px; color: black; font-weight: 400; font-family: $font-primary; display: flex; padding: clamp(3px, 0.313vw, 42px) clamp(16px, 1.042vw, 58px); transition: 400ms; border-radius: 5px; @include media-query(1399px) { font-size: clamp(12px, 0.833vw, 32px); } &.active{ background-color: $black; color: $white; } } &.active, &:hover { >a { background-color: $black; color: $white; } } >ul { top: 0; left: calc(100% + 20px); &.right-align { top: 0; left: auto; right: 100%; } ul { display: none; } } } } &:hover { >ul { opacity: 1; visibility: visible; gap: 6px; transform: scaleY(1) translateZ(0px); } } &:nth-last-child(1), &:nth-last-child(2) { ul { li { >ul { @include short-query(1200px, 1399px) { left: auto; right: calc(100% + 20px); } } } } } } } } } } .main-menu__right { .search-heart-icon { .search-block { position: relative; display: inline-block; .input-search { display: none; position: absolute; left: -213px; bottom: -2px; width: 200px; padding: 8px; background: transparent; border: 1px solid $light-black; border-radius: $br-12; &:focus { border: none; background: transparent; } } #magnifying-btn { display: flex; width: clamp(32px, 2.083vw, 54px); height: clamp(32px, 2.083vw, 54px); justify-content: center; align-items: center; background-color: $lightest-gray; border-radius: 50%; } i { color: $light-black; font-size: clamp(12px, 1.042vw, 40px); } } .shop-icon { position: relative; width: clamp(32px, 2.083vw, 54px); height: clamp(32px, 2.083vw, 54px); display: flex; justify-content: center; align-items: center; background-color: $black; border-radius: 50%; svg { width: clamp(10px, 1.042vw, 40px); height: clamp(10px, 1.042vw, 40px); } .num-icon { position: absolute; width: clamp(11px, 0.833vw, 32px); height: clamp(11px, 0.833vw, 32px); right: -2px; top: -2px; display: flex; justify-content: center; align-items: center; border-radius: 50%; background-color: $accent-3; font-size: clamp(7px, 0.625vw, 24px); font-weight: 400; line-height: 120%; color: $white; font-family: $font-primary; } } .user-icon { position: relative; cursor: pointer; img { width: clamp(29px, 2.5vw, 68px); height: clamp(29px, 2.5vw, 68px); } .menu { position: absolute; top: calc(100% + 20px); right: 0px; width: 200px; z-index: 10; border-radius: $br-12; min-height: 100px; background-color: $medium-black; box-shadow: 0 10px 20px rgba(0, 0, 0, .2); opacity: 0; transform: translateY(-10px); visibility: hidden; transition: 300ms; &::before { content: ''; position: absolute; top: -8px; right: 12px; width: 16px; height: 16px; background: $medium-black; transform: rotate(45deg); z-index: -1; } &.active { opacity: 1; transform: translateY(0); visibility: visible; } ul { position: relative; display: flex; flex-direction: column; z-index: 10; padding-left: 0; margin-bottom: 0; li { list-style: none; &:hover { background-color: rgba(22, 151, 187, 0.2); } a { text-decoration: none; color: $white; display: flex; align-items: center; padding: 8px 16px; gap: 6px; } } } } } } } .stricky-header { position: fixed; z-index: 9999; top: 0; left: 0; width: 100%; transform: translateY(-120%); transition: transform 500ms ease; box-shadow: 0 2px 2px rgba(0, 0, 0, .1); // display: none; @include media-query(1199px) { display: none; } &.main-menu { padding: 16px 0 !important; .main-menu__block { display: flex; align-items: center; position: relative; justify-content: space-between; background: $white; } } .menu { display: none; top: calc(100% + 30px); } &.stricky-fixed { transform: translateY(0); .menu { display: block; } } .sticky-header__content { width: 100%; background-color: $white; } } .mobile-nav__toggler { font-size: 24px; font-weight: 300; color: $black; cursor: pointer; transition: 500ms; @include media-query-min(1200px) { display: none; } &:hover { color: $accent-1; } } /*-------------------------------------------------------------- # Mobile Nav --------------------------------------------------------------*/ .mobile-nav__wrapper { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 9999; transform: translateX(-100%); transform-origin: left center; transition: transform 500ms ease 500ms, visibility 500ms ease 500ms; visibility: hidden; position: fixed; .container { padding-left: 0; padding-right: 0; } &.expanded { opacity: 1; transform: translateX(0%); visibility: visible; transition: transform 500ms ease 0ms, visibility 500ms ease 0ms; .mobile-nav__content { opacity: 1; visibility: visible; transform: translateX(0); transition: opacity 500ms ease 500ms, visibility 500ms ease 500ms, transform 500ms ease 500ms; } } .mobile-nav__overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: $black; opacity: 0.3; cursor: auto; } .mobile-nav__content { width: 300px; background-color: $white; z-index: 10; position: relative; height: 100%; overflow-y: auto; padding-top: 30px; padding-bottom: 30px; padding-left: 15px; padding-right: 15px; opacity: 0; visibility: hidden; transform: translateX(-100%); transition: opacity 500ms ease 0ms, visibility 500ms ease 0ms, transform 500ms ease 0ms; .main-menu__nav { display: block; padding: 0; } .logo-box { margin-bottom: 40px; display: flex; } .main-menu__list, .main-menu__list ul { margin: 0; padding: 0; list-style-type: none; } .main-menu__list { ul { display: none; border-top: 1px solid RGBA(255, 255, 255, 0.1); li { >a { padding-left: 1em; } &:not(:last-child) { border-bottom: 1px solid RGBA(255, 255, 255, 0.1); } } } li { &:not(:last-child) { border-bottom: 1px solid RGBA(255, 255, 255, 0.1); } a { display: flex; justify-content: space-between; line-height: 30px; color: $black; font-size: 16px; font-family: $font-primary; text-transform: capitalize; font-weight: 600; height: 46px; letter-spacing: 0.48px; align-items: center; transition: 500ms; i { display: none; } &.expanded { color: $accent-3; } button { width: 30px; height: 30px; background-color: $accent-3; border: none; outline: none; color: $white; display: flex; align-items: center; justify-content: center; text-align: center; transform: rotate(-90deg); transition: transform 500ms ease; border-radius: 50%; i { display: block; } &.expanded { transform: rotate(0deg); background-color: $black; color: $white; } } } } } } .mobile-nav__close { position: absolute; top: 20px; right: 15px; font-size: 18px; color: $accent-3; cursor: pointer; } } .mobile-nav__social { display: flex; align-items: center; a { font-size: 16px; color: $black; transition: 500ms; +a { margin-left: 20px; } &:hover { color: $accent-1; } } } .mobile-nav__contact { margin-bottom: 0; margin-top: 20px; margin-bottom: 20px; li { color: $black; font-size: 14px; font-weight: 500; position: relative; display: flex; align-items: center; +li { margin-top: 15px; } a { color: inherit; transition: 500ms; &:hover { color: $accent-1; } } i { width: 30px; height: 30px; border-radius: 50%; background-color: $accent-3; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 14px; margin-right: 10px; color: $white; } } } .mobile-nav__container .main-menu__logo, .mobile-nav__container .main-menu__right { display: none; } .main-menu__logo { a { @include media-query(766px) { img { width: 70%; } } } }