@font-face {
	font-family: 'Oswald';
	src: url('/fonts/oswald-regular.woff2?v=1.0.1') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'Montserrat';
	src: url('/fonts/montserrat-regular.woff2?v=1.0.1') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: block;
}

body {
  	margin: 0;
	padding: 0;
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 1.2em;
}
main {
	max-width: 100vh;
	margin: 0 auto;
	padding: 0 .2em;
}
footer {
	width: 100%;
	box-sizing: border-box;
	background-color: #222;
	margin: 0;
	padding: 1.25em .5em 0 .5em;
	display: flex;
	justify-content: center;
	align-items: center;
}
h1, h2, h3, h4, .top-contacts>a {
	font-family: "Oswald", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	text-transform: uppercase;
}
h1 {
	margin-bottom: 0;
	font-size: 2em;
	text-align: center;
}
a {
	color: #0096DA;
	text-decoration: none;
}
a:hover {
	color: #03AFED;
	text-decoration: underline;
}
main a {
	font-weight: bold;
}
.top-contacts {
	position: sticky;
	top: 0;
	left: 0;
	right: 0;
	margin: 0;
	padding: .2em;
	text-align: center;
	background-color: #222;
}
.top-contacts>a {
	display: inline-block;
	margin: .2em .1em;
	padding: .2em .3em .3em;
	background-color: #DDE;
	border-radius: .2em;
	text-decoration: none;
	color: #222;
}
.top-contacts>a>svg, .top-contacts>a>span {
	vertical-align: middle;
}
.top-contacts>a:hover {
	background-color: #03AFED;
}
.top-contacts::before {
    content: '';
    display: block;
    height: 100%;
    position: static;
    visibility: hidden;
    pointer-events: none;
}
#home-link {
	padding: .2em .1em .3em .1em;
}
#logo {
	display: block;
	margin: 1em auto 0 auto;
	padding: 0;
	text-align: center;
}
#logo>img {
	width: 91.5vw;
	height: 27vw;
}

/* Производи - ПОЧЕТАК */

.product-list {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem 0;
}

.product-card {
	text-align: center;
    margin-bottom: 1rem;
}

.product-card>a {
    display: block;
    padding: 1.5rem;
    text-decoration: none;
	font-size: bold;
    background: #F0F6FF;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: transform 0.2s, box-shadow 0.2s;
}

.product-list a:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.product-image {
	max-width: 100%;
	height: auto;
	margin: .5rem 0;
}

.modal {
	display: none; 
	position: fixed; 
	z-index: 1; 
	left: 0;
	top: 0;
	width: 100%; 
	height: 100%; 
	overflow: auto; 
	background-color: rgb(0,0,0); 
	background-color: rgba(0,0,0,0.4); 
}

.modal-content {
	background-color: #fefefe;
	margin: 15% auto; 
	padding: 20px;
	border: 1px solid #888;
	width: 80%; 
}

.modal-content input[type="submit"] {
	background: #0096DA;
	color: #FFF;
	font-weight: bold;
	border: none;
	cursor: pointer;
	transition: background 0.3s, color 0.3s, transform 0.1s;
}

.close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
}

.close:hover,
.close:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}

#orderBtn {
	margin-bottom: 1em;
}

.radio-option {
	display: flex;
	align-items: center;
	margin-bottom: .5em;
}

.radio-option input[type="radio"] {
	width: auto;
	margin-right: .5em;
}

/* Производи - КРАЈ */


#usluge li {
	list-style: none;
	padding: .5em;
}
#viber {
	position: fixed;
	right: .5em;
	bottom: -4.5em;
	transition: bottom 300ms cubic-bezier(.53,.4,.9,.64) 1200ms;
}
#viber svg {
	filter: drop-shadow(.1em .1em .1em rgba(0, 0, 0, .5));
}

#garant-mont, #garant-lom {
	width: 90vh;
	height: auto;
}

/* Образац - ПОЧЕТАК */
#kontakt-forma, #kontakt-inputi, textarea, input, button {
	width: 100%;
}
#kontakt-forma {
	display: flex;
	padding: 0 .5vh;
	flex-direction: column;
	gap: 0;
	margin-bottom: 2.5vh;
	text-align: center;
	font-size: 0;
}
#or-divider {
	font-size: 1.25vh;
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	height: 2.5vh;
	line-height: 2.5vh;
	color: #FFF;
}
textarea, input, button {
	box-sizing: border-box;
	padding: .5em;
	font-family: "Montserrat", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 2.5vh;
	border-radius: .25em;
}
textarea, input {
	background-color: #444;
	color: #FFF;
	border: 1px solid #555;
	transition: border-color 0.3s, background 0.3s;
}
textarea, input[type="email"] {
	margin-bottom: 1em;
}
textarea {
	resize: none;
}
input[type="tel"] {
	margin-bottom: 0;
}
textarea::placeholder, input::placeholder {
	color: #AAA;
}
textarea:focus, input:focus {
	outline: none;
	border-color: #0096DA;
	background: #555;
}
button {
	background: #0096DA;
	color: #FFF;
	font-weight: bold;
	border: none;
	cursor: pointer;
	transition: background 0.3s, color 0.3s, transform 0.1s;
}
button:hover {
	background: #03AFED;
}
button:active {
	transform: scale(0.98);
}
/* Образац - КРАЈ */

@media (min-aspect-ratio: 1/1) {
	main, #kontakt-forma {
		max-width: 100vh;
	}
	#logo>img {
		width: 100vh;
		height: auto;
	}
	h1 {
		flex: 1 1 100%;
		max-width: none;
		text-align: left;
	}

	.product-list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.5rem;
	}
	.product-card, .product-list a {
		height: 100%;
		box-sizing: border-box;
	}
	.product-card {
		margin-bottom: 0;
	}


	#viber svg {
		width: 4em;
	}
	#kontakt-forma {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 2.5vh;
		padding: 0;
	}
	textarea {
		height: 100%;
	}

	.modal-content {
		width: 40%;
	}
}