/* ==========================================================================
   NOVALEX — design refresh 2026
   Vrstva nad style.css: ostřejší typografie (Barlow woff2 místo OTF Cooper
   Hewitt), zaoblení prvků a decentní přechodové efekty. Rozložení nemění.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1) Písmo: hintované woff2 s korektními vahami.
   Původní rodiny Cooper/CooperSemi/CooperHeavy přemapujeme na Barlow, takže
   všechna stávající pravidla ve style.css dostanou ostré glyfy a přestane
   syntetické ztučňování. Nadpisy drží kondenzovaný charakter přes
   Barlow Semi Condensed.
   -------------------------------------------------------------------------- */

@font-face {
	font-family: 'Barlow';
	src: url('../assets/font/barlow-v13-latin_latin-ext-regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Barlow';
	src: url('../assets/font/barlow-v13-latin_latin-ext-500.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Barlow';
	src: url('../assets/font/barlow-v13-latin_latin-ext-600.woff2') format('woff2');
	font-weight: 600 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Barlow Semi Condensed';
	src: url('../assets/font/barlow-semi-condensed-v16-latin_latin-ext-600.woff2') format('woff2');
	font-weight: 400 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Barlow Semi Condensed';
	src: url('../assets/font/barlow-semi-condensed-v16-latin_latin-ext-700.woff2') format('woff2');
	font-weight: 700 900;
	font-style: normal;
	font-display: swap;
}

/* Přemapování původních názvů rodin (style.css je používá na 12 000 řádcích) */

@font-face {
	font-family: 'Cooper';
	src: url('../assets/font/barlow-v13-latin_latin-ext-regular.woff2') format('woff2');
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: 'Cooper';
	src: url('../assets/font/barlow-v13-latin_latin-ext-500.woff2') format('woff2');
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: 'Cooper';
	src: url('../assets/font/barlow-v13-latin_latin-ext-600.woff2') format('woff2');
	font-weight: 600 900;
	font-display: swap;
}

@font-face {
	font-family: 'CooperSemi';
	src: url('../assets/font/barlow-semi-condensed-v16-latin_latin-ext-600.woff2') format('woff2');
	font-weight: 100 600;
	font-display: swap;
}

@font-face {
	font-family: 'CooperSemi';
	src: url('../assets/font/barlow-semi-condensed-v16-latin_latin-ext-700.woff2') format('woff2');
	font-weight: 700 900;
	font-display: swap;
}

@font-face {
	font-family: 'CooperHeavy';
	src: url('../assets/font/barlow-semi-condensed-v16-latin_latin-ext-700.woff2') format('woff2');
	font-weight: 100 900;
	font-display: swap;
}

/* --------------------------------------------------------------------------
   2) Tokeny
   -------------------------------------------------------------------------- */

:root {
	--nx-radius-sm: 0.5rem;
	--nx-radius: 0.8rem;
	--nx-radius-lg: 1.1rem;
	--nx-ease: cubic-bezier(0.33, 1, 0.68, 1);
	--nx-shadow-md: 0 6px 18px rgba(20, 22, 26, 0.1);
	--nx-shadow-lg: 0 16px 36px rgba(20, 22, 26, 0.16);
}

/* --------------------------------------------------------------------------
   3) Ostrost a čitelnost textu
   -------------------------------------------------------------------------- */

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
	letter-spacing: -0.01em;
	font-weight: 600;
}

.slider-headline {
	letter-spacing: -0.015em;
	text-shadow: 0 2px 24px rgba(0, 0, 0, 0.35);
}

::selection {
	background: var(--bs-primary);
	color: #fff;
}

:focus-visible {
	outline: 2px solid var(--bs-primary);
	outline-offset: 2px;
	border-radius: 2px;
}

/* --------------------------------------------------------------------------
   4) Zaoblení (méně hranatosti)
   -------------------------------------------------------------------------- */

.rounded {
	border-radius: var(--nx-radius) !important;
}

.btn {
	border-radius: 0.65rem;
}

.secondary-cta,
#contact-form .secondary-cta {
	border-radius: 0.65rem;
	padding: 11px 18px;
}

.primary-cta {
	border-radius: 0.65rem;
	padding: 9px 16px !important;
}

.tile,
.so-me {
	border-radius: var(--nx-radius-lg);
	overflow: hidden;
}

/* Khaki box s popisem ve slideru: flush u kraje, zaoblíme jen horní pravý roh */
.slider-info {
	border-radius: 0 var(--nx-radius-lg) 0 0;
}

/* Galerie na detailu reference */
a[data-fancybox] .ratio {
	border-radius: var(--nx-radius);
	overflow: hidden;
}

/* Rozbalovací menu služeb */
.dropdown-links {
	border-radius: var(--nx-radius-sm);
	box-shadow: var(--nx-shadow-md);
	padding: 6px 14px 10px 14px;
}

#contact-form #consent {
	border-radius: 0.3em;
}

/* --------------------------------------------------------------------------
   5) Decentní efekty (žádný karneval)
   -------------------------------------------------------------------------- */

/* Tlačítka: lehké nadzvednutí + posun šipky */
.primary-cta,
.secondary-cta,
.slider-cta,
.btn {
	transition:
		color 0.2s ease,
		background-color 0.2s ease,
		border-color 0.2s ease,
		transform 0.25s var(--nx-ease),
		box-shadow 0.25s var(--nx-ease);
}

.secondary-cta:hover,
.primary-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 20px rgba(255, 152, 0, 0.22);
}

.primary-cta img,
.secondary-cta img,
.slider-cta img {
	transition: transform 0.25s var(--nx-ease);
}

.primary-cta:hover img,
.secondary-cta:hover img,
.slider-cta:hover img {
	transform: translate(3px, -3px);
}

/* Dlaždice referencí: jemný zoom fotky a zvýraznění šipky */
.ref-tile .carousel {
	overflow: hidden;
}

.ref-tile .carousel-item {
	transition: transform 0.6s var(--nx-ease);
}

.ref-tile:hover .carousel-item {
	transform: scale(1.045);
}

.ref-arrow {
	transition: transform 0.25s var(--nx-ease), background-image 0.2s ease;
}

.ref-tile:hover .ref-arrow {
	background-image: url('/assets/arrow-up-right-orange.svg');
	transform: translate(3px, -3px);
}

.ref-tile:hover .ref-name {
	color: var(--bs-primary);
}

.ref-name {
	transition: color 0.2s ease;
}

/* Bannery (projekt zdarma, konzultace, sociální sítě) */
.tile {
	transition: transform 0.3s var(--nx-ease), box-shadow 0.3s var(--nx-ease);
}

.tile:hover {
	transform: translateY(-3px);
	box-shadow: var(--nx-shadow-lg);
}

/* Fotky v galerii detailu reference */
a[data-fancybox] .ratio {
	transition: transform 0.3s var(--nx-ease), box-shadow 0.3s var(--nx-ease);
}

a[data-fancybox]:hover .ratio {
	transform: translateY(-3px) scale(1.01);
	box-shadow: var(--nx-shadow-md);
}

/* Odkazy v patičce */
.footer-links a {
	transition: color 0.2s ease;
}
