/* Zmienne CSS */
:root {
	--primary: #1a4d7a;
	--primary-dark: #0d3a5f;
	--secondary: #1a1a1a;
	--accent: #1a4d7a;
	--light: #f8f9fa;
	--gray: #6c757d; 
	--dark: #0a0a0a;
	--bg-dark: #151515;
	--bg-darker: #0f0f0f;
	--text-light: #e0e0e0;
	--transition: all 0.3s ease;
	--shadow: 0 8px 24px rgba(0,0,0,0.3);
	--shadow-lg: 0 12px 40px rgba(0,0,0,0.4);
	--radius: 8px;
}

/* Local Font Awesome subset: only glyphs used by this presentation */
@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:swap;src:url("webfonts/fa-solid-900.woff2") format("woff2")}
@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:swap;src:url("webfonts/fa-brands-400.woff2") format("woff2")}
.fa,.fas,.fab,.fa-solid{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;-webkit-font-smoothing:antialiased}.fa,.fas,.fa-solid{font-family:"Font Awesome 6 Free";font-weight:900}.fab{font-family:"Font Awesome 6 Brands";font-weight:400}
.fa-times:before{content:"\f00d"}.fa-home:before{content:"\f015"}.fa-star:before{content:"\f005"}.fa-user:before{content:"\f007"}.fa-phone:before{content:"\f095"}.fa-certificate:before{content:"\f0a3"}.fa-bars:before{content:"\f0c9"}.fa-envelope:before{content:"\f0e0"}.fa-building:before{content:"\f1ad"}.fa-history:before{content:"\f1da"}.fa-industry:before{content:"\f275"}.fa-id-card:before{content:"\f2c2"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-shield-alt:before{content:"\f3ed"}.fa-user-cog:before{content:"\f4fe"}.fa-user-tie:before{content:"\f508"}.fa-award:before{content:"\f559"}.fa-hammer:before{content:"\f6e3"}.fa-tools:before{content:"\f7d9"}.fa-cogs:before{content:"\f085"}.fa-fire:before{content:"\f06d"}.fa-comments:before{content:"\f086"}.fa-facebook-f:before{content:"\f39e"}.fa-youtube:before{content:"\f167"}

/* POLFIRMS verification extension — original body styles remain unchanged */
[hidden]{display:none!important}
.lang-toggle{display:flex;align-items:center;gap:.55rem}.lang-list a{display:flex;align-items:center;gap:.65rem}.lang-list img{flex:0 0 auto;border:1px solid rgba(255,255,255,.28)}
.verification-section{padding:96px 0;background:#f3f5f7;color:#172231}.verification-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;margin-bottom:34px}.verification-heading .section-title{text-align:left;margin-bottom:0;max-width:820px}.verification-kicker{margin:0 0 10px;color:#0068a8;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem}.verification-date{min-width:190px;background:#005d9b;color:#fff;padding:17px 21px;border-radius:4px;box-shadow:0 10px 25px rgba(0,49,83,.18)}.verification-date span,.verification-date strong{display:block}.verification-date span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.verification-date strong{font-size:1.08rem}.verification-notice{background:#fff;border-left:6px solid #005d9b;padding:26px 30px;margin-bottom:40px;box-shadow:0 8px 26px rgba(15,36,54,.08)}.verification-notice h3{margin-top:0;color:#003f69}.verification-notice p{margin-bottom:0}.verification-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:50px;align-items:start;margin-bottom:45px}.verification-identity h3{font-size:1.55rem;color:#003f69}.verification-data{margin:0;background:#fff;border:1px solid #dbe3e9;border-radius:4px;overflow:hidden}.verification-data div{display:grid;grid-template-columns:145px 1fr;gap:14px;padding:13px 17px;border-bottom:1px solid #e3e8ec}.verification-data div:last-child{border-bottom:0}.verification-data dt{font-weight:800;color:#314455}.verification-data dd{margin:0}.verification-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.verification-cards article{display:flex;flex-direction:column;min-height:280px;background:#fff;padding:27px;border-top:5px solid #005d9b;border-radius:3px;box-shadow:0 8px 25px rgba(15,36,54,.07)}.verification-cards h3{margin:12px 0 9px;color:#17364d;font-size:1.25rem}.verification-cards p{margin:0 0 20px}.verification-cards a{margin-top:auto;color:#005d9b;font-weight:800}.verification-label{color:#0068a8;font-size:.75rem;font-weight:900;letter-spacing:.12em}.verification-source-card{background:#eaf4fa!important}.verification-important{margin-top:28px;padding:28px 30px;background:#102536;color:#fff;border-radius:4px}.verification-important h3{margin-top:0;color:#fff}.verification-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.verification-secondary{background:transparent!important;border:2px solid #fff!important}.presentation-disclosure{margin-top:35px;padding:24px 26px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.18)}.presentation-disclosure p{margin:.45rem 0}.presentation-disclosure a{color:#fff;text-decoration:underline}.copyright a{color:inherit}
@media(max-width:980px){.verification-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.verification-identity{grid-template-columns:1fr}.verification-heading{display:block}.verification-date{display:inline-block;margin-top:18px}}
@media(max-width:640px){.verification-section{padding:66px 0}.verification-cards{grid-template-columns:1fr}.verification-data div{grid-template-columns:1fr;gap:3px}.verification-cards article{min-height:0}.verification-notice,.verification-important{padding:22px}.verification-heading .section-title{font-size:2rem}}
/* Reset i podstawowe style */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
body {
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	line-height: 1.6;
	color: var(--dark);
	background-color: #fff;
	overflow-x: hidden;
}
.container {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}
section {
	padding: 80px 0;
}
.section-title {
	text-align: center;
	margin-bottom: 50px;
	font-size: 2.5rem;
	font-weight: 700;
	color: var(--dark);
	position: relative;
}
.section-title::after {
	content: '';
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 80px;
	height: 4px;
	background: var(--primary);
}
.btn {
	display: inline-block;
	padding: 12px 30px;
	background: var(--primary);
	color: white;
	border: none;
	border-radius: var(--radius);
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: var(--transition);
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.btn:hover {
	background: var(--primary-dark);
	transform: translateY(-3px);
	box-shadow: var(--shadow);
}
.btn-secondary {
	background: var(--secondary);
}
.btn-secondary:hover {
	background: #000;
}
.btn-accent {
	background: var(--accent);
}
.btn-accent:hover {
	background: #f57c00;
}
/* Header */
header {
	background: white;
	box-shadow: var(--shadow);
	position: sticky;
	top: 0;
	z-index: 1000;
}
.header-top {
	background: var(--secondary);
	color: white;
	padding: 10px 0;
	font-size: 0.9rem;
}
.header-top-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* Language selector in header-top */
.header-top-lang {
	display: flex;
	align-items: center;
}
.lang-select {
	position: relative;
	margin-left: 15px;
}
.lang-toggle {
	background: transparent;
	color: white;
	border: 1px solid rgba(255,255,255,0.15);
	padding: 6px 10px;
	border-radius: 4px;
	cursor: pointer;
	font-weight: 700;
	letter-spacing: 0.6px;
}
.lang-toggle:focus {
	outline: 2px solid rgba(255,255,255,0.18);
}
.lang-list {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	background: white;
	color: var(--dark);
	min-width: 220px;
	max-height: 300px;
	overflow-y: auto;
	border-radius: 8px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.2);
	padding: 8px 0;
	list-style: none;
	transform-origin: top right;
	transition: transform 0.15s ease, opacity 0.15s ease;
	opacity: 0;
	visibility: hidden;
	z-index: 2000;
}
.lang-list:not([hidden]) {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.lang-list li {
	padding: 6px 14px;
}
.lang-list li a {
	color: var(--dark);
	text-decoration: none;
	display: block;
	width: 100%;
}
.lang-list li a:hover,
.lang-list li a.active {
	background: rgba(26,77,122,0.06);
	color: var(--primary);
}

@media (max-width: 768px) {
	.header-top-content {
		flex-direction: column;
		gap: 8px;
		align-items: flex-start;
	}
	.header-top-social {
		order: 3;
	}
	.header-top-lang {
		order: 2;
	}
}
.header-top-contact a {
	color: white;
	text-decoration: none;
	margin-right: 15px;
}
.header-top-contact a:hover {
	color: var(--accent);
}
.header-main {
	padding: 15px 0;
}
.header-content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.logo {
	display: flex;
	align-items: center;
}
.logo img {
	height: 60px;
	margin-right: 15px;
}
.logo-text {
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--primary);
}
.logo-text span {
	color: var(--secondary);
}
nav ul {
	display: flex;
	list-style: none;
}
nav ul li {
	margin-left: 25px;
}
nav ul li a {
	text-decoration: none;
	color: var(--dark);
	font-weight: 600;
	transition: var(--transition);
	position: relative;
}
nav ul li a:hover {
	color: var(--primary);
}
nav ul li a::after {
	content: '';
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 0;
	height: 2px;
	background: var(--primary);
	transition: var(--transition);
}
nav ul li a:hover::after {
	width: 100%;
}
.mobile-menu-btn {
	display: none;
	background: none;
	border: none;
	font-size: 1.5rem;
	color: var(--dark);
	cursor: pointer;
}
/* Hero section */
.hero {
	background: linear-gradient(135deg, rgba(6, 18, 29, 0.66), rgba(0, 68, 111, 0.52)), url('../img/optimized/hero.webp') center/cover no-repeat;
	color: white;
	text-align: center;
	padding: 180px 0 120px;
	position: relative;
	overflow: hidden;
}
.hero::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: radial-gradient(circle at 30% 50%, rgba(26, 77, 122, 0.3) 0%, transparent 60%);
	pointer-events: none;
}
.hero-content {
	max-width: 900px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
	animation: fadeInUp 1s ease-out;
}
.hero h1 {
	font-size: 4rem;
	margin-bottom: 30px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 2px;
	line-height: 1.2;
	text-shadow: 0 4px 20px rgba(0,0,0,0.5);
}
.hero p {
	font-size: 1.3rem;
	margin-bottom: 40px;
	opacity: 0.95;
	line-height: 1.8;
	font-weight: 300;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.hero .btn {
	padding: 16px 40px;
	font-size: 1.1rem;
	box-shadow: 0 8px 24px rgba(255, 149, 0, 0.3);
	margin-bottom: 50px;
}
.hero .btn:hover {
	box-shadow: 0 12px 32px rgba(255, 149, 0, 0.5);
}
.hero-badges {
	display: flex;
	justify-content: center;
	gap: 30px;
	margin-top: 50px;
	flex-wrap: wrap;
}
.badge {
	background: rgba(26, 77, 122, 0.4);
	padding: 15px 30px;
	border-radius: 50px;
	font-weight: 600;
	backdrop-filter: blur(15px);
	border: 1px solid rgba(255, 149, 0, 0.3);
	font-size: 0.95rem;
	letter-spacing: 0.5px;
	transition: var(--transition);
	box-shadow: 0 4px 15px rgba(0,0,0,0.3);
}
.badge:hover {
	background: rgba(26, 77, 122, 0.6);
	border-color: var(--accent);
	transform: translateY(-3px);
	box-shadow: 0 8px 20px rgba(255, 149, 0, 0.4);
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@media (max-width: 992px) {
	.hero h1 {
		font-size: 3rem;
	}
}

@media (max-width: 768px) {
	.hero {
		padding: 120px 0 80px;
	}
	.hero h1 {
		font-size: 2.5rem;
		letter-spacing: 1px;
	}
	.hero p {
		font-size: 1.1rem;
	}
	.hero-badges {
		flex-direction: column;
		align-items: center;
		gap: 15px;
	}
}
/* About section */
.about {
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
	position: relative;
	overflow: hidden;
}
.about::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 40%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(26, 77, 122, 0.03));
	pointer-events: none;
}
.about-content {
	display: flex;
	align-items: center;
	gap: 80px;
	position: relative;
}
.about-text {
	flex: 1;
	z-index: 2;
}
.about-text h2 {
	font-size: 2.5rem;
	margin-bottom: 25px;
	color: #1a1a1a;
	line-height: 1.3;
}
.about-text h2::after {
	content: '';
	display: block;
	width: 60px;
	height: 4px;
	background: var(--accent);
	margin-top: 15px;
}
.about-text p {
	margin-bottom: 20px;
	color: #2b2b2b; /* darker for better contrast */
	opacity: 1;
	line-height: 1.8;
}
.about-features {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 25px;
	margin-top: 40px;
}
.feature-item {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	padding: 20px;
	background: white;
	border-radius: var(--radius);
	border-left: 3px solid var(--accent);
	transition: var(--transition);
	box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}
.feature-item:hover {
	background: #fff;
	transform: translateX(5px);
	box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}
.feature-item h3 {
	color: #1a1a1a;
	margin-bottom: 5px;
	font-size: 1.1rem;
}
.feature-item p {
	color: #3a3a3a; /* darker than #6c757d */
	opacity: 1;
	font-size: 0.95rem;
	margin: 0;
}
.feature-icon {
	color: var(--accent);
	font-size: 1.8rem;
	margin-top: 5px;
	flex-shrink: 0;
}
.about-image {
	flex: 1;
	position: relative;
	z-index: 1;
}
.about-image::before {
	content: '';
	position: absolute;
	top: -30px;
	right: -30px;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, var(--primary), var(--accent));
	opacity: 0.2;
	border-radius: var(--radius);
	z-index: -1;
}
.about-image img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--radius);
	box-shadow: 0 10px 40px rgba(0,0,0,0.15);
	border: 2px solid rgba(26, 77, 122, 0.2);
	transform: translateX(30px) translateY(-20px);
	transition: var(--transition);
}
.about-image img:hover {
	transform: translateX(35px) translateY(-25px);
	box-shadow: 0 15px 50px rgba(0,0,0,0.25);
}
@media (max-width: 992px) {
	.about-content, .guide-content {
		flex-direction: column;
	}
	.about-image img {
		transform: translateX(0) translateY(-10px);
	}
	.about-image::before {
		top: -15px;
		right: -15px;
	}
	.hero h1 {
		font-size: 3rem;
	}
}
/* Target audience section */
.for-whom {
	background: #ffffff;
}
.for-whom-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.client-card {
	background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.08);
	transition: var(--transition);
	text-align: center;
	padding: 30px 20px;
	border: 1px solid rgba(26, 77, 122, 0.1);
}
.client-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.15);
	border-color: var(--primary);
	background: #ffffff;
}
.client-icon {
	font-size: 3rem;
	color: var(--accent);
	margin-bottom: 20px;
	transition: var(--transition);
}
.client-card:hover .client-icon {
	transform: scale(1.1);
	color: var(--primary);
}
.client-card h3 {
	font-size: 1.5rem;
	margin-bottom: 15px;
	color: #1a1a1a;
}
.client-card p {
	color: #000000;
	opacity: 1;
}
@media (max-width: 992px) {
	.for-whom-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 576px) {
	.for-whom-grid {
		grid-template-columns: 1fr;
	}
}
/* Values section */
.values {
	background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
	position: relative;
}
.values-grid {
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
/* Pionowa linia timeline */
.values-grid::before {
	content: '';
	position: absolute;
	left: 40px;
	top: 0;
	bottom: 0;
	width: 3px;
	background: linear-gradient(180deg, var(--accent), var(--primary));
}
.value-card {
	background: white;
	border-radius: var(--radius);
	box-shadow: 0 4px 15px rgba(0,0,0,0.08);
	transition: var(--transition);
	padding: 30px 30px 30px 100px;
	border: 1px solid rgba(26, 77, 122, 0.1);
	margin-bottom: 30px;
	position: relative;
	text-align: left;
}
.value-card:last-child {
	margin-bottom: 0;
}
.value-card:hover {
	transform: translateX(10px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.15);
	border-color: var(--primary);
}
/* Punkt na timeline */
.value-card::before {
	content: '';
	position: absolute;
	left: -60px;
	top: 35px;
	width: 20px;
	height: 20px;
	background: var(--accent);
	border: 4px solid white;
	border-radius: 50%;
	box-shadow: 0 0 0 3px var(--accent);
	z-index: 2;
	transition: var(--transition);
}
.value-card:hover::before {
	transform: scale(1.3);
	box-shadow: 0 0 0 5px var(--accent);
}
/* Numeracja */
.value-card::after {
	content: attr(data-number);
	position: absolute;
	left: -70px;
	top: 70px;
	font-size: 1rem;
	font-weight: 700;
	color: var(--primary);
	background: white;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 2px solid var(--primary);
}
.value-icon {
	font-size: 2.5rem;
	color: var(--accent);
	margin-bottom: 15px;
	display: inline-block;
	transition: var(--transition);
}
.value-card:hover .value-icon {
	transform: scale(1.1) rotate(5deg);
}
.value-card h3 {
	font-size: 1.6rem;
	margin-bottom: 15px;
	color: #1a1a1a;
}
.value-card p {
	color: #2f2f2f; /* stronger contrast */
	opacity: 1;
	line-height: 1.7;
}
.value-card a {
	color: var(--accent);
	text-decoration: underline;
	font-weight: 600;
}
.value-card a:hover {
	color: var(--primary);
}
@media (max-width: 768px) {
	.values-grid::before {
		left: 20px;
	}
	.value-card {
		padding: 25px 20px 25px 70px;
	}
	.value-card::before {
		left: -50px;
		top: 25px;
		width: 16px;
		height: 16px;
	}
	.value-card::after {
		left: -58px;
		top: 55px;
		width: 32px;
		height: 32px;
		font-size: 0.85rem;
	}
	.value-icon {
		font-size: 2rem;
	}
}
/* Offer section */
.offer {
	background: #ffffff;
	position: relative;
}
.offer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--primary), transparent);
}
.offer-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.offer-card {
	background: #dbdbdb;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
	transition: var(--transition);
	position: relative;
	height: 400px;
	cursor: pointer;
}
.offer-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 12px 35px rgba(0,0,0,0.2);
}
.offer-image {
	height: 100%;
	background-color: #ffffff;
	background-size: contain;
	background-position: center;
		background-repeat: no-repeat;
	position: relative;
	transition: var(--transition);
}
/* Gradient overlay - zawsze widoczny ale subtelny */
.offer-image::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(180deg, rgba(0,18,30,0.05) 0%, rgba(0,26,43,0.56) 72%, rgba(0,20,34,0.68) 100%);
	transition: var(--transition);
	z-index: 1;
}
.offer-card:hover .offer-image::before {
	background: linear-gradient(180deg, rgba(0,93,155,0.22) 0%, rgba(0,34,56,0.66) 100%);
}
/* Tytuł zawsze widoczny na dole */
.offer-title {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 25px 20px;
	z-index: 2;
	transition: var(--transition);
}
.offer-title h3,.offer-title p {
	font-size: 1.5rem;
	color: var(--accent);
	margin: 0;
	font-weight: 700;
	text-shadow: 0 2px 10px rgba(0,0,0,0.5);
}
.terminology-section{padding:92px 0;background:#fff;color:#172231}.terminology-section .section-title{text-align:left;margin-bottom:18px;max-width:900px}.terminology-intro{max-width:900px;font-size:1.08rem;margin-bottom:34px}.terminology-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.terminology-grid article{padding:25px;background:#f3f7fa;border-top:4px solid #005d9b;box-shadow:0 7px 22px rgba(15,36,54,.06)}.terminology-grid h3{margin:0 0 10px;color:#003f69;font-size:1.2rem}.terminology-grid p{margin:0}.buyer-checks{margin-top:28px;padding:28px 30px;background:#102536;color:#fff}.buyer-checks h3{margin-top:0;color:#fff}.buyer-checks ul{columns:2;column-gap:45px;padding-left:22px}.buyer-checks li{margin-bottom:8px;break-inside:avoid}.buyer-checks p{margin-bottom:0}.buyer-faq{margin-top:32px}.buyer-faq>h3{font-size:1.55rem;color:#003f69}.buyer-faq details{border:1px solid #d5e0e7;background:#fff;margin-bottom:10px}.buyer-faq summary{cursor:pointer;padding:17px 20px;color:#17364d;font-weight:800}.buyer-faq details p{padding:0 20px 18px;margin:0}.buyer-faq a{color:#005d9b;font-weight:700}@media(max-width:900px){.terminology-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.terminology-section{padding:64px 0}.terminology-grid{grid-template-columns:1fr}.buyer-checks{padding:22px}.buyer-checks ul{columns:1}}
/* Info - ukryte domyślnie, pojawia się na hover */
.offer-info {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	opacity: 0;
	transform: translateY(20px);
	transition: all 0.4s ease;
	z-index: 3;
	pointer-events: none;
	background: rgba(10,44,67,0.86);
}
.offer-card:hover .offer-info {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}
.offer-card:hover .offer-title {
	opacity: 0;
	transform: translateY(10px);
}
.offer-info h3 {
	font-size: 1.8rem;
	margin-bottom: 15px;
	color: white;
	font-weight: 700;
}
.offer-info p {
	color: rgba(255,255,255,0.9);
	margin-bottom: 25px;
	font-size: 1rem;
	line-height: 1.6;
	max-width: 90%;
}
.offer-info .btn {
	/* Use brand primary color with white text for consistent high contrast */
	background: var(--primary);
	color: #ffffff;
	padding: 12px 30px;
	font-size: 0.95rem;
	font-weight: 700;
	border-radius: 6px;
	box-shadow: 0 8px 22px rgba(26,77,122,0.25);
	opacity: 1;
	transform: translateY(10px);
	transition: all 0.35s ease 0.05s;
	border: 2px solid rgba(255,255,255,0.06);
}
.offer-card:hover .offer-info .btn {
	opacity: 1;
	transform: translateY(0);
}
.offer-info .btn:hover {
	background: var(--primary-dark);
	transform: translateY(-3px);
}

.offer-info .btn:focus {
	outline: 3px solid rgba(255,255,255,0.12);
	outline-offset: 3px;
}
@media (max-width: 992px) {
	.offer-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.offer-card {
		height: 350px;
	}
}

@media (max-width: 576px) {
	.offer-grid {
		grid-template-columns: 1fr;
	}
	.offer-card {
		height: 300px;
	}
}
/* Configurator section */
.configurator {
	background: linear-gradient(rgba(3,25,40,0.64), rgba(3,25,40,0.64)), url('../img/optimized/guide-800.webp') center/cover no-repeat;
	color: white;
	text-align: center;
	padding: 100px 0;
}
.configurator-content {
	max-width: 800px;
	margin: 0 auto;
}
.configurator h2 {
	font-size: 2.5rem;
	margin-bottom: 20px;
}
.configurator p {
	font-size: 1.2rem;
	margin-bottom: 30px;
	opacity: 0.9;
}
/* Guide section */
.guide {
	background: var(--light);
	/* Improve readability: use a clear, accessible font stack and darker text */
	font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
	color: #111; /* darker than var(--dark) to ensure high contrast */
}
.guide-content {
	display: flex;
	align-items: center;
	gap: 50px;
}
.guide-text {
	flex: 1;
}
.guide-text h2 {
	font-size: 2.4rem; /* slightly larger */
	margin-bottom: 18px;
	color: #0b0b0b; /* darker heading for contrast */
	line-height: 1.2;
	font-weight: 700;
}
.guide-text p {
	margin-bottom: 20px;
	color: #1a1a1a; /* dark paragraph text to meet contrast */
	font-size: 1.15rem; /* increase body size for readability */
	line-height: 1.7;
	font-weight: 500;
}
.guide-image {
	flex: 1;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: var(--shadow);
}
.guide-image img {
	width: 100%;
	height: auto;
	display: block;
}
/* Footer */
footer {
	background: var(--secondary);
	color: white;
	padding: 60px 0 20px;
}
.footer-content {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 40px;
	margin-bottom: 40px;
}
.footer-section h3 {
	font-size: 1.3rem;
	margin-bottom: 20px;
	color: #60AAFF;
	position: relative;
	padding-bottom: 10px;
}
.footer-section h3::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 50px;
	height: 2px;
	background: var(--primary);
}
.footer-section p, .footer-section a {
	color: #e6eef8; /* brighter off-white for better contrast on dark footer */
	margin-bottom: 10px;
	display: block;
	text-decoration: none;
	transition: var(--transition);
}
.footer-section a:hover {
	color: var(--primary);
	padding-left: 5px;
}
.social-links {
	display: flex;
	gap: 15px;
	margin-top: 20px;
}
.social-links a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: rgba(255,255,255,0.1);
	border-radius: 50%;
	transition: var(--transition);
}
.social-links a:hover {
	background: var(--primary);
	transform: translateY(-5px);
}
.copyright {
	text-align: center;
	padding-top: 20px;
	border-top: 1px solid rgba(255,255,255,0.1);
	color: #dce9f5; /* brighter for better contrast */
	font-size: 0.9rem;
}
/* Responsywność */
@media (max-width: 992px) {
.about-content, .guide-content {
	flex-direction: column;
}
.hero h1 {
	font-size: 2.8rem;
}
}
@media (max-width: 768px) {
.mobile-menu-btn {
	display: block;
}
.hero h1 {
	font-size: 2.2rem;
}
.hero-badges {
	flex-direction: column;
	align-items: center;
}
.section-title {
	font-size: 2rem;
}
.about-features {
	grid-template-columns: 1fr;
}
}
@media (max-width: 576px) {
section {
	padding: 60px 0;
}
.hero {
	padding: 100px 0;
}
}
/* Mobile Menu Styles */
@media (max-width: 768px) {
    nav {
        position: fixed;
        top: 0;
        right: -100%;
        width: 280px;
        height: 100vh;
        background: var(--bg-darker);
        box-shadow: -5px 0 15px rgba(0,0,0,0.3);
        transition: right 0.3s ease;
        z-index: 9999;
        padding-top: 80px;
        overflow-y: auto;
    }
    
    nav.active {
        right: 0;
    }
    
     nav ul {
        display: flex !important; /* Wymuś pokazanie */
        flex-direction: column;
        padding: 20px;
    }
    
    nav ul li {
        margin: 0;
        margin-bottom: 5px;
        width: 100%;
        display: block !important; /* Wymuś pokazanie */
    }
    
    nav ul li a {
        display: block;
        padding: 15px 20px;
        border-radius: var(--radius);
        background: rgba(26, 77, 122, 0.1);
        transition: var(--transition);
        color: var(--text-light) !important; /* ⭐ Białe linki na ciemnym tle */
    }
    
    nav ul li a:hover {
        background: rgba(26, 77, 122, 0.2);
        padding-left: 25px;
        color: var(--accent) !important; /* ⭐ Pomarańczowy na hover */
    }
    
    nav ul li a::after {
        display: none;
    }
    
    /* Hamburger button animation */
    .mobile-menu-btn {
        position: relative;
        z-index: 10000;
        transition: var(--transition);
    }
    
    .mobile-menu-btn.active {
        color: var(--accent);
    }
    
    .mobile-menu-btn i {
        transition: var(--transition);
    }
    
    /* Overlay gdy menu otwarte */
    body.menu-open::before {
        content: '';
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.7);
        z-index: 9998;
        animation: fadeIn 0.3s ease;
    }
    
    @keyframes fadeIn {
        from {
            opacity: 0;
        }
        to {
            opacity: 1;
        }
    }
    
    /* Zablokuj scrollowanie gdy menu otwarte */
    body.menu-open {
        overflow: hidden;
    }
}

