/*
 * fajerwerkisklep (eTrade) — strony treści (regulamin, pomoc, kontakt, bezpieczne strzelanie, fundacja),
 * newsletter, blog (ukryty).
 */

/* ---------- strony CMS z panelu (pages/pokaz.phtml, privacy-policy.html) ---------- */
/* treść z edytora: akapity z inline margin-bottom: 0, zagnieżdżone listy numerowane, tabele */
.fs-cms-content {
	color: var(--color-body);
	overflow-wrap: break-word;
}
.fs-cms-content p,
.fs-cms-content li {
	font-size: var(--font-size-b1);
	line-height: 1.75;
}
.fs-cms-content p {
	margin-bottom: 14px;
}
.fs-cms-content b,
.fs-cms-content strong {
	color: var(--color-heading);
}
.fs-cms-content h1,
.fs-cms-content h2,
.fs-cms-content h3 {
	font-size: 26px;
	margin: 40px 0 18px;
	color: var(--color-dark);
}
.fs-cms-content h4,
.fs-cms-content h5,
.fs-cms-content h6 {
	font-size: 20px;
	margin: 30px 0 14px;
	color: var(--color-dark);
}
.fs-cms-content > :first-child {
	margin-top: 0;
}
.fs-cms-content ol,
.fs-cms-content ul {
	margin: 0 0 20px;
	padding-left: 24px;
}
.fs-cms-content ol {
	list-style: decimal;
}
.fs-cms-content ol ol,
.fs-cms-content ul ul,
.fs-cms-content ol ul,
.fs-cms-content ul ol {
	margin: 8px 0 8px;
}
.fs-cms-content li {
	margin: 0 0 10px;
}
.fs-cms-content li::marker {
	color: var(--color-heading);
	font-weight: 500;
}
.fs-cms-content li > p {
	margin-bottom: 0;
}
.fs-cms-content table {
	width: 100%;
	margin-bottom: 30px;
	border-collapse: collapse;
}
.fs-cms-content table td,
.fs-cms-content table th {
	border: 1px solid var(--color-border-light);
	padding: 8px 12px;
	vertical-align: top;
}
.fs-cms-content img {
	max-width: 100%;
	height: auto;
}
@media only screen and (max-width: 575px) {
	.fs-cms-content p,
	.fs-cms-content li {
		font-size: 15px;
	}
	.fs-cms-content ol,
	.fs-cms-content ul {
		padding-left: 18px;
	}
	/* wcięcia z edytora (margin-left: 1.25cm) zjadają szerokość telefonu */
	.fs-cms-content p[style*="margin-left"] {
		margin-left: 0 !important;
	}
}

/* ---------- pomoc (pages/scripts/pomoc.phtml) ---------- */
.fs-help .fs-help-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style: none;
	padding: 0;
	margin: 0 0 60px;
}
.fs-help .fs-help-links li {
	margin: 0;
}
.fs-help .fs-help-links li::marker {
	content: none;
}
.fs-help .fs-help-links a {
	display: inline-block;
	padding: 8px 18px;
	border: 1px solid var(--color-border-light);
	border-radius: 500px;
	font-size: var(--font-size-b2);
	font-weight: 500;
	color: var(--color-heading);
	transition: var(--transition);
}
.fs-help .fs-help-links a i {
	color: var(--color-primary);
	margin-right: 4px;
}
.fs-help .fs-help-links a:hover {
	border-color: var(--color-primary);
	background: var(--color-primary);
	color: var(--color-white);
}
.fs-help .fs-help-links a:hover i {
	color: var(--color-white);
}
/* hierarchia: h2 sekcji (policy-published) > h3 tematu > h4 podtytułu */
.fs-help .axil-privacy-policy .fs-help-heading {
	margin: 20px 0 40px;
	font-size: 28px;
	line-height: 1.3;
}
.fs-help .fs-help-item > .title {
	font-size: 22px;
	line-height: 1.35;
}
.fs-help .fs-help-options {
	list-style: none;
	padding: 0;
}
.fs-help .fs-help-options li {
	margin: 0 0 12px;
	padding: 16px 20px;
	border: 1px solid var(--color-border-light);
	border-radius: var(--radius);
}
.fs-help .fs-help-options li::marker {
	content: none;
}
.fs-help .fs-help-options.fs-help-payments {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.fs-help .fs-help-options.fs-help-payments li {
	margin: 0;
	padding: 12px 18px;
	color: var(--color-heading);
}
.fs-help .fs-help-options p {
	margin: 6px 0 0;
	font-size: var(--font-size-b2);
	line-height: 1.6;
}
.fs-help .fs-help-option-head {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 4px 16px;
	color: var(--color-heading);
}
.fs-help .fs-help-price {
	font-weight: 700;
	color: var(--color-primary);
	white-space: nowrap;
}
.fs-help .fs-help-free {
	color: var(--color-heading);
	font-weight: 500;
}
.fs-help .fs-help-free i {
	color: var(--color-primary);
	margin-right: 4px;
}
.fs-help .fs-help-list-title {
	margin-bottom: 14px;
}
@media only screen and (max-width: 767px) {
	.fs-help .axil-privacy-policy .fs-help-heading {
		font-size: 24px;
	}
	.fs-help .fs-help-item > .title {
		font-size: 20px;
	}
}
.fs-help .fs-help-item,
.fs-help .fs-help-heading,
.fs-help .accordion-item {
	scroll-margin-top: 30px;
}
.fs-help .fs-help-item {
	margin-bottom: 45px;
}
.fs-help .axil-privacy-policy ol {
	list-style: decimal;
	padding-left: 22px;
	margin-bottom: 30px;
}
.fs-help .axil-privacy-policy ol li::marker {
	color: var(--color-heading);
	font-weight: 500;
}
.fs-help .axil-privacy-policy ul {
	margin-bottom: 30px;
}
.fs-help .fs-help-subtitle {
	font-size: 18px;
	margin: 0 0 16px;
	color: var(--color-dark);
}
.fs-help .fs-help-warning {
	padding: 14px 20px;
	border-left: 4px solid var(--color-primary);
	border-radius: 0 var(--radius) var(--radius) 0;
	background: var(--fs-primary-soft);
	color: var(--fs-primary-dark);
}
.fs-help .fs-help-warning strong {
	color: inherit;
}

/* FAQ: accordion Bootstrap 5 w stylu eTrade; ikona +/− z Font Awesome jak filtry listy */
.fs-faq .accordion-item {
	border: 1px solid var(--color-border-light);
	border-radius: var(--radius);
	margin-bottom: 12px;
	overflow: hidden;
	background: var(--color-white);
}
.fs-faq .accordion-item:not(:first-of-type) {
	border-top: 1px solid var(--color-border-light);
}
.fs-faq .accordion-header {
	margin: 0;
}
.fs-faq .accordion-button {
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	height: auto;
	padding: 18px 24px;
	border: 0;
	border-radius: 0;
	background: var(--color-white);
	box-shadow: none;
	font-family: var(--font-primary);
	font-size: 17px;
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
	color: var(--color-heading);
}
.fs-faq .accordion-button::after {
	content: "\2b"; /* fa-plus w FA 6 (fa-minus = \f068) */
	flex-shrink: 0;
	width: auto;
	height: auto;
	margin-left: auto;
	background: none;
	font-family: var(--font-awesome);
	font-weight: 900;
	font-size: 14px;
	color: var(--color-primary);
	transform: none;
}
.fs-faq .accordion-button:not(.collapsed) {
	background: var(--fs-primary-soft);
	color: var(--color-primary);
}
.fs-faq .accordion-button:not(.collapsed)::after {
	content: "\f068";
	transform: none;
}
.fs-faq .accordion-button:focus-visible {
	outline: 2px solid var(--color-primary);
	outline-offset: -2px;
}
.fs-faq .accordion-body {
	padding: 20px 24px 6px;
}
.fs-faq .accordion-body p,
.fs-faq .accordion-body li {
	font-size: var(--font-size-b1);
}
.fs-faq .accordion-body p {
	margin-bottom: 14px;
}
@media only screen and (max-width: 575px) {
	.fs-help .fs-help-links {
		margin-bottom: 40px;
	}
	.fs-faq .accordion-button {
		padding: 16px 18px;
		font-size: 16px;
	}
	.fs-faq .accordion-body {
		padding: 16px 18px 4px;
	}
}

/* ---------- kontakt (pages/scripts/kontakt.phtml, contact.html) ---------- */
.axil-contact-page .fs-contact-people > p {
	margin-bottom: 30px;
}
.fs-contact-card {
	height: calc(100% - 20px);
	margin-bottom: 20px;
	padding: 24px 26px;
	border: 1px solid var(--color-border-light);
	border-radius: var(--radius);
	transition: var(--transition);
}
.fs-contact-card:hover {
	border-color: var(--color-primary);
}
.axil-contact-page .fs-contact-card .title {
	margin-bottom: 8px;
}
.axil-contact-page .fs-contact-card p {
	width: auto;
	margin-bottom: 14px;
	font-size: var(--font-size-b2);
}
.fs-contact-card a {
	font-weight: 500;
	color: var(--color-primary);
	overflow-wrap: anywhere;
}
.fs-contact-card a i {
	margin-right: 6px;
}
.axil-contact-page .contact-location .phone a,
.axil-contact-page .fs-contact-gps a {
	color: var(--color-heading);
}
.axil-contact-page .fs-contact-gps {
	margin-top: 10px;
}
.axil-contact-page .fs-contact-gps a i {
	color: var(--color-primary);
	margin-right: 4px;
}
/* eTrade zmniejsza span-y .contact-location na telefonie do 14 px — tu jak reszta danych firmy */
.axil-contact-page .contact-location span {
	font-size: var(--font-size-b1);
}
.fs-contact-registry {
	margin-bottom: 0;
}

/* ---------- bezpieczne strzelanie / fundacja (about-us.html) ---------- */
.fs-adult-warning {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 320px;
	padding: 40px 30px;
	border-radius: 10px;
	background-image: linear-gradient(135deg, var(--fs-primary-dark) 0%, var(--color-primary) 100%);
	color: var(--color-white);
	text-align: center;
}
.fs-adult-warning > i {
	font-size: 40px;
	opacity: .9;
}
.fs-adult-warning .fs-adult-warning-age {
	font-family: var(--font-primary);
	font-size: 72px;
	font-weight: 700;
	line-height: 1;
}
.fs-adult-warning p {
	max-width: 280px;
	margin: 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--color-white);
}
.fs-foundation-logo {
	padding: 40px;
	border-radius: 10px;
	background: var(--color-lighter);
	text-align: center;
}
.axil-about-area .fs-foundation-logo img {
	width: auto;
	max-width: 100%;
	border-radius: 0;
}
.fs-about-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
/* przyciski bezpośrednio w .about-content (także blok „Bezpieczne strzelanie” na karcie produktu) — w fs.css */
.fs-about-buttons .axil-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	max-width: 100%;
	overflow-wrap: anywhere;
}
@media only screen and (max-width: 360px) {
	.fs-about-buttons .axil-btn {
		padding-left: 14px;
		padding-right: 14px;
		font-size: 13px;
	}
}
.axil-about-area .about-content .fs-about-note {
	margin: 12px 0 0;
	font-size: 13px;
}
/* fundacja: szary pas eTrade (dolna połowa about-info-area) pod kafelkami, na telefonie i tablecie tło całej sekcji */
.fs-info-area {
	padding-bottom: 50px;
}
.fs-info-area .about-info-box {
	height: calc(100% - 30px);
}
@media only screen and (max-width: 991px) {
	.fs-info-area {
		padding: 40px 0 10px;
		background-color: #f6f6f6;
	}
	.fs-info-area::after {
		display: none;
	}
	.fs-info-area .about-info-box {
		height: auto;
	}
}
.about-info-box .thumb i {
	font-size: 40px;
	line-height: 1;
	color: var(--color-primary);
}
.about-info-box .content p {
	margin-bottom: 12px;
}
.about-info-box .content .fs-about-signature {
	margin-bottom: 0;
	color: var(--color-heading);
}
.fs-about-docs {
	list-style: none;
	padding: 0;
	margin: 0 0 30px;
}
.fs-about-docs li {
	margin: 0 0 10px;
}
.fs-about-docs a {
	font-weight: 500;
	color: var(--color-heading);
}
.fs-about-docs a i {
	color: var(--color-primary);
	margin-right: 8px;
}
.fs-about-docs a:hover {
	color: var(--color-primary);
}
.fs-zoom {
	display: block;
	cursor: zoom-in;
}

/* filmy: karta content-blog format-video (blog.html) z hookiem .playmovie silnika */
.fs-film .thumbnail {
	position: relative;
	margin-bottom: 20px;
	overflow: hidden;
	border-radius: var(--radius);
}
.fs-film .thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--radius);
}
.content-blog.format-video.fs-film .thumbnail .popup-video .play-btn {
	width: 96px;
	height: 96px;
	font-size: 26px;
	background-color: var(--color-primary);
}
.content-blog.format-video.fs-film .thumbnail .popup-video .play-btn:hover {
	background-color: var(--fs-primary-dark);
}
.fs-film .content .title {
	margin-bottom: 0;
}
/* telefon (< 480 px): kl-custom.js podmienia miniaturę na iframe YouTube w .kw-prodimage (z inline szerokością i marginesami) */
.fs-film .kw-prodimage:has(iframe) {
	height: auto !important;
}
.fs-film .kw-prodimage:has(iframe)::after,
.fs-film .kw-prodimage:has(iframe) .popup-video {
	display: none;
}
.fs-film .kw-prodimage iframe {
	display: block;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 16 / 9;
	margin: 0 !important;
	border: 0;
}
@media only screen and (max-width: 991px) {
	.content-blog.format-video.fs-film .thumbnail .popup-video .play-btn {
		width: 64px;
		height: 64px;
		font-size: 20px;
	}
}
@media only screen and (max-width: 767px) {
	.fs-adult-warning {
		min-height: 240px;
	}
}

/* ---------- newsletter (komunikat) i pusty blog ---------- */
.fs-notice {
	max-width: 720px;
	margin: 0 auto;
	padding: 50px 40px;
	border-radius: var(--radius);
	background: var(--color-lighter);
	text-align: center;
}
.fs-notice .icon i {
	font-size: 54px;
	line-height: 1;
	margin-bottom: 20px;
	color: var(--color-primary);
}
.fs-notice.fs-notice-success .icon i {
	color: var(--color-success);
}
.fs-notice .title {
	margin-bottom: 12px;
}
.fs-notice p {
	max-width: 520px;
	margin: 0 auto 26px;
}
.fs-notice .axil-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
@media only screen and (max-width: 575px) {
	.fs-notice {
		padding: 36px 20px;
	}
}

/* ---------- blog (news/lista.phtml, news/pokaz.phtml) ---------- */
.blog-grid {
	height: 100%;
}
.blog-grid .thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 825 / 478;
	object-fit: cover;
}
.blog-grid .content .axil-post-meta {
	margin-bottom: 12px;
}
.blog-grid .content .title {
	margin-bottom: 12px;
}
.fs-blog-excerpt {
	margin-bottom: 20px;
	font-size: var(--font-size-b2);
	color: var(--color-body);
}
.fs-blog-excerpt p {
	margin-bottom: 0;
	font-size: inherit;
}
.post-meta-list li i {
	margin-right: 4px;
}
.fs-blog-pagination {
	margin-top: 50px;
}
.fs-blog-single .post-single-wrapper {
	padding-top: 0;
}
.fs-post-thumbnail {
	margin-bottom: 40px;
}
.fs-post-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--radius);
}
.fs-blog-single .post-heading .title {
	margin-bottom: 16px;
	font-size: 36px;
	line-height: 1.25;
}
.fs-post-content {
	margin-bottom: 40px;
	overflow-wrap: break-word;
}
.fs-post-content p,
.fs-post-content li {
	line-height: 1.75;
}
.fs-post-content h2,
.fs-post-content h3 {
	margin: 40px 0 16px;
	font-size: 26px;
}
.fs-post-content h4,
.fs-post-content h5 {
	margin: 30px 0 12px;
	font-size: 20px;
}
.fs-post-content img {
	max-width: 100%;
	height: auto;
	border-radius: var(--radius);
}
.fs-post-content iframe {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	border: 0;
	border-radius: var(--radius);
}
.fs-post-content a {
	color: var(--color-primary);
}
.fs-post-gallery > div {
	margin-bottom: 20px;
}
.fs-post-gallery a {
	display: block;
	overflow: hidden;
	border-radius: var(--radius);
	cursor: zoom-in;
}
.fs-post-gallery img {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform .3s;
}
.fs-post-gallery a:hover img {
	transform: scale(1.05);
}
@media only screen and (max-width: 767px) {
	.fs-blog-single .post-heading .title {
		font-size: 28px;
	}
}
