/*
 * Freespins Modern: sajtovergripande sidfot.
 * Navy botten, bla accent, gront anvands inte (reserverat for CTA).
 * ASCII i klassnamn och kommentarer, svenska i den synliga texten (i PHP).
 */

.fsp-fot {
	background: #0e2a1f;
	color: #cdd9d1;
	margin-top: 56px;
	padding: 56px 20px 28px;
	font-size: 0.95rem;
	line-height: 1.7;
}
.fsp-fot__inner {
	max-width: 1200px;
	margin: 0 auto;
}

/* Toppdel: brand plus tre lankkolumner */
.fsp-fot__topp {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 36px;
}
@media (max-width: 900px) {
	.fsp-fot__topp { grid-template-columns: 1fr 1fr; gap: 30px; }
}
@media (max-width: 560px) {
	.fsp-fot__topp { grid-template-columns: 1fr; gap: 28px; }
}

.fsp-fot a,
.fsp-fot a:link,
.fsp-fot a:visited {
	color: #cdd9d1;
	text-decoration: none;
}

/* Brand */
.fsp-fot__logo {
	display: inline-block;
	font-family: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	font-weight: 700;
	font-size: 1.55rem;
	letter-spacing: -0.02em;
	color: #fff;
}
.fsp-fot__logo b { color: #5cc98a; font-weight: 700; }
.fsp-fot__tagline {
	margin: 0.9em 0 1.3em;
	color: #9fb3a6;
	max-width: 36ch;
}

/* Sociala ikoner */
.fsp-fot__social {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
	padding: 0;
}
.fsp-fot__social a,
.fsp-fot__social a:link,
.fsp-fot__social a:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	transition: background 0.15s ease, transform 0.15s ease;
}
.fsp-fot__social a:hover,
.fsp-fot__social a:focus-visible {
	background: #1e874e;
	text-decoration: none;
	transform: translateY(-2px);
}
.fsp-fot__social svg {
	width: 19px;
	height: 19px;
	fill: currentColor;
	display: block;
}

/* Lankkolumner */
.fsp-fot__rubrik {
	font-family: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	font-size: 1rem;
	font-weight: 600;
	color: #fff;
	margin: 0 0 1.1em;
	padding-bottom: 0.55em;
	position: relative;
}
.fsp-fot__rubrik::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 34px;
	height: 3px;
	border-radius: 2px;
	background: linear-gradient(90deg, #1e874e, #145e37);
}
.fsp-fot__lista {
	list-style: none;
	margin: 0;
	padding: 0;
}
.fsp-fot__lista li { margin: 0 0 0.65em; }
.fsp-fot__lista a,
.fsp-fot__lista a:link,
.fsp-fot__lista a:visited { color: #c2d2c6; }

/* Ansvarsfullt spelande */
.fsp-fot__ansvar {
	margin-top: 44px;
	padding-top: 26px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.fsp-fot__markning {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 18px;
	margin: 0 0 14px;
	padding: 0;
	font-weight: 600;
	color: #e9f1eb;
}
.fsp-fot__markning li {
	position: relative;
	padding-right: 18px;
}
.fsp-fot__markning li:not(:last-child)::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.35);
}
.fsp-fot__markning a,
.fsp-fot__markning a:link,
.fsp-fot__markning a:visited { color: #e9f1eb; }
.fsp-fot__stod {
	margin: 0;
	color: #9fb3a6;
	font-size: 0.9rem;
}

/* Botten: copyright och disclaimer */
.fsp-fot__botten {
	margin-top: 26px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 0.85rem;
	color: #8ba394;
}
.fsp-fot__copy {
	margin: 0 0 0.6em;
	color: #c2d2c6;
}
.fsp-fot__disclaimer { margin: 0; }

/* Hover och fokus sist sa de vinner over :link och :visited i alla kolumner. */
.fsp-fot a:hover,
.fsp-fot a:focus-visible {
	color: #fff;
	text-decoration: underline;
}

/* Aldersmarkning under de sociala ikonerna: cirkel med 18+ och text. */
.fsp-fot .fsp-fot__alder { display: flex; align-items: center; gap: 12px; margin-top: 20px; }
.fsp-fot .fsp-fot__alder-symbol { display: flex; align-items: flex-start; justify-content: center; width: 46px; height: 46px; flex: 0 0 46px; border: 2px solid #ffffff; border-radius: 50%; color: #ffffff; font-weight: 800; font-size: 1.15rem; line-height: 42px; letter-spacing: 0.5px; }
.fsp-fot .fsp-fot__alder-symbol sup { font-size: 0.62em; line-height: 1; margin-top: 9px; }
.fsp-fot .fsp-fot__alder-text { color: #ffffff; font-weight: 700; font-size: 1.05rem; }
