/* ==========================================================================
   AutoNet — Futuristic Global Theme
   Applied across all views (header, footer, buttons, global enhancements)
   ========================================================================== */


/* ───────────────────────── Global Enhancements ────────────────── */

/* Smooth scrolling */
html {
	scroll-behavior: smooth;
}

/* Better transitions on all buttons */
.btn {
	transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.btn:hover {
	transform: translateY(-1px);
}
.btn:active {
	transform: translateY(0);
}

/* Primary button glow */
.btn-primary:hover,
.btn-white:hover {
	box-shadow: 0 6px 20px rgba(var(--bs-primary-rgb), 0.2);
}

/* Links with arrows animate further on hover */
.icon-link-hover:hover i {
	transform: translateX(4px);
}

/* Rounded containers get subtle glow on dark theme */
[data-bs-theme="dark"] .bg-dark.rounded,
[data-bs-theme="dark"] .bg-dark.rounded-3,
[data-bs-theme="dark"] .bg-dark.rounded-4 {
	box-shadow: 0 0 80px rgba(var(--bs-primary-rgb), 0.03);
}

/* Sections get more breathing room */
section {
	position: relative;
}


/* ==========================================================================
   Header / Navbar — Futuristic
   ========================================================================== */

/* Glassmorphism sticky header */
.header-sticky.header-absolute {
	transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.header-sticky .navbar {
	backdrop-filter: blur(16px) saturate(1.6);
	-webkit-backdrop-filter: blur(16px) saturate(1.6);
	transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
.header-sticky.header-sticky-on .navbar {
	background: rgba(255,255,255,0.82) !important;
	box-shadow:
		0 1px 0 rgba(0,0,0,0.04),
		0 8px 40px rgba(0,0,0,0.06);
}
[data-bs-theme="dark"] .header-sticky.header-sticky-on .navbar {
	background: rgba(17,17,26,0.85) !important;
	box-shadow:
		0 1px 0 rgba(255,255,255,0.03),
		0 8px 40px rgba(0,0,0,0.3);
	border-bottom: 1px solid rgba(255,255,255,0.04);
}

/* Nav links — subtle underline animation */
.navbar-nav .nav-link {
	position: relative;
	transition: color 0.3s ease;
}
.navbar-nav .nav-link::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 2px;
	background: var(--bs-primary);
	border-radius: 2px;
	transition: all 0.35s cubic-bezier(0.22, 1, 0.36, 1);
	transform: translateX(-50%);
}
.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after {
	width: 60%;
}

/* Dropdown menus — glass effect */
.navbar .dropdown-menu {
	border: 1px solid rgba(0,0,0,0.06);
	border-radius: 16px !important;
	box-shadow:
		0 16px 48px rgba(0,0,0,0.08),
		0 0 0 1px rgba(0,0,0,0.02);
	backdrop-filter: blur(20px) saturate(1.4);
	-webkit-backdrop-filter: blur(20px) saturate(1.4);
	background: rgba(255,255,255,1.95) !important;
	padding: 0.75rem;
	animation: dropdownFadeIn 0.25s ease;
	overflow: hidden;
}
[data-bs-theme="dark"] .navbar .dropdown-menu {
	background: rgba(22,22,35,0.95) !important;
	border-color: rgba(255,255,255,0.06);
	box-shadow:
		0 16px 48px rgba(0,0,0,0.3),
		0 0 0 1px rgba(255,255,255,0.03);
}
@keyframes dropdownFadeIn {
	from { opacity: 0; transform: translateY(-6px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Dropdown items — smooth hover */
.navbar .dropdown-item {
	border-radius: 10px;
	padding: 0.55rem 0.85rem;
	transition: all 0.25s ease;
	position: relative;
}
.navbar .dropdown-item:hover {
	background: rgba(var(--bs-primary-rgb), 0.06);
	transform: translateX(3px);
}
.navbar .dropdown-item .menu-icon-x {
	transition: transform 0.3s ease, color 0.3s ease;
}
.navbar .dropdown-item:hover .menu-icon-x {
	color: var(--bs-primary);
	transform: scale(1.15);
}

/* Dropdown CTA section at bottom */
.navbar .dropdown-menu hr {
	border-color: rgba(var(--bs-primary-rgb), 0.08);
}

/* Logo hover glow */
.navbar-brand {
	transition: all 0.3s ease;
}
.navbar-brand:hover {
	filter: drop-shadow(0 0 8px rgba(var(--bs-primary-rgb), 0.15));
}

/* Header buttons */
.navbar .btn-light {
	border: 1px solid rgba(0,0,0,0.06);
	border-radius: 10px;
	transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.navbar .btn-light:hover {
	border-color: rgba(var(--bs-primary-rgb), 0.15);
	box-shadow: 0 4px 16px rgba(0,0,0,0.06);
	transform: translateY(-1px);
}
.navbar .btn-dark {
	border-radius: 10px;
	background: linear-gradient(135deg, #1a1a2e, #111) !important;
	border: 1px solid rgba(255,255,255,0.06);
	transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.navbar .btn-dark:hover {
	box-shadow:
		0 6px 20px rgba(0,0,0,0.15),
		0 0 12px rgba(var(--bs-primary-rgb), 0.08);
	transform: translateY(-1px);
	border-color: rgba(var(--bs-primary-rgb), 0.2);
}

/* Theme toggle button */
#bd-theme {
	border-radius: 10px;
	transition: all 0.3s ease;
}
#bd-theme:hover {
	background: rgba(var(--bs-primary-rgb), 0.06);
	transform: rotate(15deg);
}

/* Hamburger animation enhancement */
.navbar-toggler {
	border: 1px solid rgba(0,0,0,0.06) !important;
	border-radius: 10px !important;
	transition: all 0.3s ease;
}
.navbar-toggler:hover {
	border-color: rgba(var(--bs-primary-rgb), 0.15) !important;
	box-shadow: 0 0 12px rgba(var(--bs-primary-rgb), 0.06);
}


/* ==========================================================================
   Footer — Futuristic
   ========================================================================== */

/* Footer base — deeper gradient background */
footer.bg-dark {
	background: linear-gradient(180deg, #0d0d1a 0%, #111 40%, #0a0a14 100%) !important;
}

/* Subtle grid pattern overlay */
footer.bg-dark::after {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 50% 40% at 80% 10%, rgba(var(--bs-primary-rgb), 0.04) 0%, transparent 60%),
		radial-gradient(ellipse 40% 50% at 10% 90%, rgba(var(--bs-primary-rgb), 0.03) 0%, transparent 60%);
	pointer-events: none;
	z-index: 0;
}
footer.bg-dark > * {
	position: relative;
	z-index: 1;
}

/* Footer CTA box — glassmorphism */
footer .bg-light.border.rounded {
	border-radius: 16px !important;
	border: 1px solid rgba(0,0,0,0.06) !important;
	background: rgba(255,255,255,0.06) !important;
	backdrop-filter: blur(16px) saturate(1.3);
	-webkit-backdrop-filter: blur(16px) saturate(1.3);
	transition: all 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}
footer .bg-light.border.rounded:hover {
	border-color: rgba(var(--bs-primary-rgb), 0.12) !important;
	box-shadow: 0 12px 40px rgba(0,0,0,0.12);
	transform: translateY(-2px);
}
footer .bg-light.border.rounded .icon-lg {
	transition: all 0.35s ease;
}
footer .bg-light.border.rounded:hover .icon-lg {
	transform: scale(1.1);
	box-shadow: 0 0 20px rgba(var(--bs-primary-rgb), 0.15);
}
footer .bg-light.border.rounded h5 {
	color: #fff !important;
}
footer .bg-light.border.rounded p {
	color: rgba(255,255,255,0.7) !important;
}
footer .bg-light.border.rounded .btn-white {
	background: rgba(255,255,255,0.08) !important;
	border: 1px solid rgba(255,255,255,0.1);
	color: #fff !important;
	border-radius: 10px;
	transition: all 0.3s ease;
}
footer .bg-light.border.rounded .btn-white:hover {
	background: rgba(255,255,255,0.14) !important;
	border-color: rgba(var(--bs-primary-rgb), 0.3);
	box-shadow: 0 6px 20px rgba(var(--bs-primary-rgb), 0.1);
}

/* Footer headings */
footer h6 {
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.75rem;
	color: rgba(255,255,255,0.4) !important;
	margin-bottom: 1rem !important;
}

/* Footer nav links — hover slide */
footer .nav-link {
	color: rgba(255,255,255,0.55) !important;
	transition: all 0.25s ease;
	padding-left: 0 !important;
	position: relative;
}
footer .nav-link:hover {
	color: #fff !important;
	transform: translateX(4px);
}
footer .nav-link::before {
	content: '';
	position: absolute;
	left: -12px;
	top: 50%;
	width: 0;
	height: 2px;
	background: var(--bs-primary);
	border-radius: 2px;
	transition: width 0.25s ease;
	transform: translateY(-50%);
}
footer .nav-link:hover::before {
	width: 6px;
}

/* Social icon buttons — glow on hover */
footer .btn-xs.btn-icon.btn-light {
	border-radius: 10px;
	background: rgba(255,255,255,0.05) !important;
	border: 1px solid rgba(255,255,255,0.06) !important;
	color: rgba(255,255,255,0.5) !important;
	transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
footer .btn-xs.btn-icon.btn-light:hover {
	background: rgba(var(--bs-primary-rgb), 0.12) !important;
	border-color: rgba(var(--bs-primary-rgb), 0.25) !important;
	color: var(--bs-primary) !important;
	transform: translateY(-3px);
	box-shadow: 0 6px 20px rgba(var(--bs-primary-rgb), 0.12);
}

/* App store badges — hover lift */
footer a img[alt="app-store"],
footer a img[alt=""] {
	border-radius: 8px;
	transition: all 0.3s ease;
	opacity: 0.7;
}
footer a img[alt="app-store"]:hover,
footer a img[alt=""]:hover {
	opacity: 1;
	transform: translateY(-2px);
	filter: drop-shadow(0 4px 12px rgba(0,0,0,0.2));
}

/* Language switcher */
footer .dropdown .btn-light {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(255,255,255,0.06) !important;
	color: rgba(255,255,255,0.5) !important;
	border-radius: 10px;
	transition: all 0.3s ease;
}
footer .dropdown .btn-light:hover {
	background: rgba(255,255,255,0.08) !important;
	border-color: rgba(var(--bs-primary-rgb), 0.15) !important;
	color: #fff !important;
}

/* Footer divider — gradient */
footer hr {
	border: none;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(var(--bs-primary-rgb), 0.12), rgba(255,255,255,0.06), transparent);
}

/* Bottom bar */
footer .text-body {
	color: rgba(255,255,255,0.35) !important;
	font-size: 0.85rem;
}

/* "Laget med" badge in footer */
footer .text-body span[style*="background-color"] {
	background: rgba(255,255,255,0.04) !important;
	border: 1px solid rgba(255,255,255,0.06) !important;
	color: rgba(255,255,255,0.5) !important;
	border-radius: 50px !important;
	padding: 2px 12px !important;
	font-size: 0.75rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	transition: all 0.3s ease;
}
footer .text-body span[style*="background-color"]:hover {
	background: rgba(255,255,255,0.07) !important;
	border-color: rgba(var(--bs-primary-rgb), 0.12) !important;
}

/* Bottom legal links */
footer .list-inline .nav-link {
	font-size: 0.8rem;
	color: rgba(255,255,255,0.3) !important;
}
footer .list-inline .nav-link:hover {
	color: rgba(255,255,255,0.7) !important;
}
footer .list-inline .nav-link::before {
	display: none;
}

/* Footer company info */
footer .col-lg-3 a[style*="font-weight"] {
	color: #fff !important;
	font-size: 1.05rem;
	letter-spacing: -0.01em;
	transition: color 0.25s ease;
}
footer .col-lg-3 p {
	color: rgba(255,255,255,0.35) !important;
	font-size: 0.88rem;
}
