/* Public site header (logo + menu), the same on every public page (U-10, PUB-17).
   Scoped to nav.rvg-public-nav and fully specified (margins, paddings, line heights, font), so the
   pages' own CSS can't move or wrap it. Menu on one line from 1101 px; hamburger menu up to 1100 px. */
nav.rvg-public-nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1030; width: 100%; margin: 0; padding: 0; background: #7480f0; box-shadow: 0 0 5px 0; font-family: 'Poppins', sans-serif; }
nav.rvg-public-nav .wrappers { position: relative; box-sizing: border-box; max-width: 1300px; height: 70px; margin: 0 auto; padding: 0 30px; display: flex; align-items: center; justify-content: space-between; line-height: 70px; }
nav.rvg-public-nav .logo { flex: 0 0 auto; margin: 0; padding: 0; line-height: 0; }
nav.rvg-public-nav .logo a { display: block; }
nav.rvg-public-nav .logo img { display: block; max-width: 130px; height: auto; }
nav.rvg-public-nav input { display: none; }
nav.rvg-public-nav .nav-links { display: flex; align-items: center; flex-wrap: nowrap; margin: 0; padding: 0; list-style: none; }
nav.rvg-public-nav .nav-links > br { display: none; }
nav.rvg-public-nav .nav-links li { position: relative; margin: 0; padding: 0; list-style: none; white-space: nowrap; }
nav.rvg-public-nav .nav-links li a, nav.rvg-public-nav .nav-links .desktop-item { display: inline-block; margin: 0; padding: 9px 14px; border-radius: 5px; color: #f2f2f2; font-size: 17px; font-weight: 500; line-height: 1.4; text-decoration: none; white-space: nowrap; cursor: pointer; transition: background .3s ease; }
nav.rvg-public-nav .nav-links li a:hover { background: #8c97ff; color: #fff; }
nav.rvg-public-nav .nav-links li a i { display: none; }
nav.rvg-public-nav .nav-links .mobile-item { display: none; }
nav.rvg-public-nav .nav-links .drop-menu { position: absolute; top: 85px; left: 0; width: 190px; margin: 0; padding: 0; background: #7480f0; line-height: 45px; box-shadow: 0 6px 10px rgba(0, 0, 0, .15); opacity: 0; visibility: hidden; }
nav.rvg-public-nav .nav-links li:hover .drop-menu { top: 50px; opacity: 1; visibility: visible; transition: all .3s ease; }
nav.rvg-public-nav .drop-menu li a { display: block; width: 100%; box-sizing: border-box; padding: 0 0 0 15px; border-radius: 0; font-size: 16px; font-weight: 400; line-height: 45px; }
nav.rvg-public-nav .wrappers .btn { display: none; margin: 0; padding: 10px; color: #fff; font-size: 22px; line-height: 1; cursor: pointer; background: none; border: 0; }
nav.rvg-public-nav .wrappers .btn.close-btn { position: absolute; top: 10px; right: 20px; }
nav.rvg-public-nav .desktop-login-btn { display: block; }
nav.rvg-public-nav .mob-login-btn { display: none; }
/* Laptops: smaller font and gaps so the menu stays on one line. */
@media screen and (min-width: 1101px) and (max-width: 1366px) {
	nav.rvg-public-nav .wrappers { padding: 0 20px; }
	nav.rvg-public-nav .nav-links li a, nav.rvg-public-nav .nav-links .desktop-item { padding: 8px 10px; font-size: 15px; }
}
/* Tablets and phones: hamburger menu sliding in from the left. */
@media screen and (max-width: 1100px) {
	nav.rvg-public-nav .wrappers { padding: 0 16px; }
	nav.rvg-public-nav .wrappers .btn.menu-btn { display: block; }
	nav.rvg-public-nav .nav-links { position: fixed; top: 0; left: -100%; display: block; box-sizing: border-box; width: 100%; max-width: 350px; height: 100vh; padding: 50px 10px; overflow-y: auto; background: #242526; line-height: 50px; box-shadow: 0 15px 15px rgba(0, 0, 0, .18); transition: left .3s ease; }
	nav.rvg-public-nav #menu-btn:checked ~ .nav-links { left: 0; }
	nav.rvg-public-nav #menu-btn:checked ~ .btn.menu-btn { display: none; }
	nav.rvg-public-nav .nav-links .btn.close-btn { display: block; }
	nav.rvg-public-nav .nav-links li { margin: 10px; }
	nav.rvg-public-nav .nav-links li a { display: block; padding: 0 20px; font-size: 18px; line-height: 50px; }
	nav.rvg-public-nav .nav-links li a i { display: inline-block; margin-right: 10px; }
	nav.rvg-public-nav .nav-links .desktop-item { display: none; }
	nav.rvg-public-nav .nav-links .mobile-item { display: flex; align-items: center; padding-left: 20px; color: #f2f2f2; font-size: 18px; font-weight: 500; line-height: 50px; border-radius: 5px; cursor: pointer; }
	nav.rvg-public-nav .nav-links .mobile-item i { margin-right: 10px; }
	nav.rvg-public-nav .nav-links .mobile-item:hover { background: #3a3b3c; }
	nav.rvg-public-nav .nav-links .drop-menu { position: static; width: 100%; max-height: 0; padding-left: 20px; overflow: hidden; opacity: 1; visibility: visible; background: transparent; box-shadow: none; transition: max-height .3s ease; }
	nav.rvg-public-nav #showDrop:checked ~ .drop-menu, nav.rvg-public-nav #showDrop1:checked ~ .drop-menu { max-height: 400px; }
	nav.rvg-public-nav .drop-menu li { margin: 0; }
	nav.rvg-public-nav .drop-menu li a { border-radius: 5px; font-size: 16px; }
	nav.rvg-public-nav .desktop-login-btn { display: none; }
	nav.rvg-public-nav .mob-login-btn { display: block; }
}
.rvg-public-header-spacer { height: 70px; }
