@charset "UTF-8";

/* ============================================================
   1. LAPTOP-FIX (Under 1400px)
   ============================================================ */
@media screen and (max-width: 1400px) {
	body {
		padding-left: 5% !important;
		padding-right: 5% !important;
	}
	footer .logga {
		display: none !important;
	}
	footer .column {
		flex: 1 1 45% !important;
		margin-bottom: 2rem;
	}
}

/* ============================================================
   2. MOBIL & TABLET (Under 800px)
   ============================================================ */
@media screen and (max-width: 800px) {
	/* Fixar bredden så inget sticker ut */
	body {
		padding-left: 5% !important;
		padding-right: 5% !important;
		overflow-x: hidden; /* Förhindrar horisontell scroll */
	}

	.hero-image {
		height: 350px !important;
		background-position: center 5% !important;
	}

	.navbar {
		justify-content: space-between !important;
		padding: 0.8rem 2% !important;
		position: relative;
	}

	.nav-toggle-label {
		display: flex !important;
		position: absolute;
		top: 65px;
		right: 40px;
		z-index: 1010;
		cursor: pointer;
	}

	/* Hamburgersymbolen */
	.nav-toggle-label span,
	.nav-toggle-label span::before,
	.nav-toggle-label span::after {
		background-color: #ffffff !important;
		height: 3px;
		width: 30px;
		position: absolute;
	}
	.nav-toggle-label span {
		top: 13px;
	}
	.nav-toggle-label span::before {
		content: "";
		top: -10px;
	}
	.nav-toggle-label span::after {
		content: "";
		top: 10px;
	}

	/* --- KORRIGERAD MENY (Under 800px) --- */
	.nav-menu {
		display: none;
		flex-direction: column;
		position: absolute;
		top: 100%; /* Startar direkt under navbaren */
		left: 0;
		width: 100%;
		background-color: #1a1a1a !important; /* Helt solid färg för att dölja text bakom */
		padding: 0 !important;
		margin: 0 !important;
		gap: 0 !important; /* Tar bort 40px gapet från desktop */
		z-index: 1000;
		border-bottom: 3px solid var(--teal-light);
	}

	.nav-toggle:checked ~ .nav-menu {
		display: flex !important;
	}

	.nav-menu li {
		width: 100%;
		border-bottom: 1px solid rgba(255, 255, 255, 0.05); /* Tunn linje mellan valen */
	}

	.nav-menu a {
		padding: 1.2rem 5% !important;
		text-align: left;
		display: block;
		width: 100%;
		font-size: 1.1rem;
	}

	.img_index {
		width: 100% !important;
		float: none !important;
		margin: 1rem 0 !important;
	}
}

/* ============================================================
   3. IPHONE & SMÅ SKÄRMAR (Under 480px)
   ============================================================ */
@media screen and (max-width: 480px) {
	h1,
	.lead,
	p {
		text-align: left !important; /* Nu är texten vänsterställd igen! */
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	h1 {
		font-size: 1.8rem !important;
		line-height: 1.2;
	}

	.navbar {
		justify-content: flex-start !important;
	}

	/* --- KONTAKTSIDAN --- */
	.div1,
	.div2 {
		width: 100% !important;
		float: none !important;
		padding: 1rem 0 !important;
	}

	.gmap_canvas {
		width: 100% !important;
		height: 250px !important;
		margin: 1rem auto !important; /* Kartan förblir centrerad */
	}

	/* --- TEAM-SEKTIONEN --- */
	.flex-container {
		flex-direction: column !important;
		gap: 20px;
	}
	.flex-container div {
		width: 100% !important;
	}
	.flex-container div img {
		width: 60% !important;
		margin: 0 auto 1.5rem auto !important;
	}

	/* Gör länkar i listor lite större och tydligare på mobilen */
	li a {
		display: inline-block;
		padding: 5px 0; /* Ger en större träffyta för fingret */
		font-size: 1.2rem !important; /* Ökar storleken för mobilen */
	}

	/* --- FOOTER --- */
	footer {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important; /* Centrerar kolumnerna horisontellt */
		text-align: center !important; /* Centrerar all text inuti */
		padding: 2rem 5% !important;
	}

	footer .column {
		width: 100% !important;
		margin-bottom: 2.5rem;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important; /* Centrerar innehållet i varje kolumn */
	}

	.column.sociala-medier p {
		justify-content: center !important; /* Centrerar ikoner och text ihop */
	}

	.img_index:nth-of-type(2),
	.img_index:nth-of-type(3) {
		display: none;
	}
}
