/*
    Theme Name: Fansport 2025/2026 ilma Wordpressita; 
    Author: Valju Aloel
    Author URI: http://aloel.ee/
    Description: Suusalaenutuse teema, üks tulp, sobib ka mobiilile
    Version: 3.0.0
*/

@font-face {
	font-family: "Impact";
	src: local("Impact"), url("https://use.typekit.net/af/865928/000000000000000077480974/31/l?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n4&v=3") format("woff2"), url("https://use.typekit.net/af/865928/000000000000000077480974/31/d?primer=7fa3915bdafdf03041871920a205bef951d72bf64dd4c4460fb992e3ecc3a862&fvd=n4&v=3") format("woff");
	font-display: swap;
	font-style: normal;
	font-weight: 400;
	font-stretch: normal;
}

:root {
	--punane: #FF4100;
	--logosinine: #0075bf;
	--kollane: #FFBC00;
	--hele: #edf8ff7d;
	--sinine: #34457c;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	color-scheme: light;
}

body {
	margin: 0;
	min-height: 100dvh;
	font-family: system-ui;
	font-weight: 400;
	background-color: var(--hele);
	color: #333;
}

img,
picture,
svg,
video {
	display: block;
	max-width: 100%;
	height: auto;
}

h1,
.varjatud {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

h2,
h3,
h4,
h5,
h6,
strong {
	text-wrap: balance;
	color: var(--sinine);
}

h2,
dt {
	font-size: 1.25rem;
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: -0.022em;
	margin-block-start: 2rem;
}

h3 {
	font-size: 140%;
}

h4 {
	font-size: 130%;
}

a,
a:visited {
	text-decoration: none;
}

p {
	margin-inline: 1rem;
}

figure {
	margin-inline: 0;
}

#kontakt {
	display: flex;
	gap: 2px;
	margin-block: 2px;
	justify-content: end;

	a {
		color: var(--logosinine);
		background: var(--kollane);
		padding-inline: 1rem;
		display: flex;
		min-height: 48px;
		place-items: center;
		min-width: max-content;
	}

	a:hover {
		background: var(--logosinine);
		color: #fff;
	}
}

.site-header {
	background-image: url(fotod/lumine-1000.avif);
	background-size: cover;
	background-position-x: center;
	background-position-y: bottom;
	display: grid;
	grid-template-columns: auto min-content;
	padding-block-start: 2vi;
	justify-content: center;
}

.logo {
	grid-column: span 2;
	margin-block-start: 15vh;

	& * {
		margin: 0;
		padding: 0;
	}
}



.site-description {
	font-family: Impact;
	font-size: min(20.5vw, 92px);
	letter-spacing: -0.01em;
	text-align: start;
	line-height: .9;
	display: flex;
	justify-content: center;
	text-transform: uppercase;
	font-style: italic;
}

.site-name {
	color: var(--sinine);
	text-align: center;
	margin-block-end: 1.6rem;
	font-size: min(3.6vw, 16px);
	text-transform: uppercase;
	padding-inline-end: .5rem;
	font-style: italic;
}

fan {
	color: var(--punane);
}

sport {
	color: var(--sinine);
}

#keeled {
	margin: 2px;
	display: flex;
	text-transform: uppercase;

	a {
		height: 52px;
		display: flex;
		place-items: center;
		color: #fff;
		background: var(--punane);
		aspect-ratio: 1;
		place-content: center;
	}

	a:hover {
		background: var(--sinine);
	}

	a:active {
		background: var(--kollane);
	}
}

main {
	padding-block: 2rem;
}

section {
	border: 1px solid #34457c4d;
	border-radius: 1rem;
	background: #d6d5d33d;
	display: grid;
	align-content: space-between;
	margin: min(2vi, 1rem);
}

.lingid {
	align-content: start;

	a {
		color: var(--logosinine);
	}
}

article {
	line-height: 1.62;
	display: grid;

	:is(h2, dt) {
		background: var(--sinine);
		color: #fff;
		padding-inline: 1rem;
		margin-block-start: 0;
		line-height: 2.3;
		width: max-content;
		border-start-start-radius: 1rem;
		border-end-end-radius: 1rem;
		box-sizing: border-box;
	}

	:is(p, li, dt) {
		text-wrap: pretty;
	}

	a {
		color: var(--punane);
		cursor: pointer;
	}

	img {
		padding-inline: 1rem;
	}

	li {
		list-style-type: circle;
	}
}

strong {
	color: var(--logosinine);
}

.ajad {
	font-size: 1.6rem;
	text-align: center;
}

address {
	padding-block-end: 1rem;
	text-align: center;
}

iframe {
	width: calc(100% - 2rem);
	min-height: 230px;
	border: none;
	filter: saturate(0);
	margin: 1rem;
}

.map-loader {
	margin: 1rem;

	iframe {
		margin: 0;
		width: 100%;
	}
}

table {
	margin-block: 1rem;
	border-collapse: collapse;
	width: 100%;
	line-height: 2;

	thead {
		border: 0;
		color: var(--sinine);
	}

	th {
		font-weight: normal;
		min-width: 4rem;
		border-bottom: 1px solid #34457c4d;
		color: var(--sinine);
	}

	td {
		text-align: end;
		padding-inline-end: .8rem;
		border: 1px solid #34457c21;
	}
}

.sisu {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	row-gap: 1rem;
	margin-block-end: 1rem;
}

.toidupada {
	background: #e4d3b773;

	h2 {
		width: fit-content;
	}

	a {
		color: var(--logosinine);
	}
}

.kontakt {
	display: flex;
	gap: .4rem;
	flex-flow: wrap;
	justify-content: space-between;
}

@media (width > 500px) {
	.site-header {
		background-position-y: center;
		background-size: 100% auto;
	}

	main {
		padding-inline: 0;
		margin-inline: 1.62rem;
	}

	article {
		grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
		align-content: center;
	}
}

@media (width > 1000px) {
	.site-header {
		background-image: url(fotod/lumine-lai.avif);
		height: 400px;
		background-size: auto 100%;
		background-position-x: left;
		align-content: center;
		grid-template-columns: 1fr 18%;
	}
}

@media (1223px < width) {
	.logo {
		margin-block-start: 100px;
		width: max-content;
		margin-inline-start: calc(500px + 20vw);
	}

	.toidupada {
		grid-column: span 2;
	}

	.sisu {
		grid-template-columns: repeat(2, 1fr);
	}
}