/*
 * Style bloku "Najczęściej zadawane pytania".
 * Zakres wyłącznie: .wp-block-gg-konsulting-theme-faq
 *
 * Kolor akcentu (--gg-accent) pochodzi automatycznie ze sfery strony
 * (inc/sphere.php) - blok go tylko czyta.
 */

.wp-block-gg-konsulting-theme-faq {
	/*
	 * Pełna szerokość okna - identyczna zasada jak w pozostałych sekcjach.
	 * !important przebija "margin: auto !important" z układu constrained.
	 */
	width: 100vw;
	max-width: 100vw;
	margin-left: calc( 50% - 50vw ) !important;
	margin-right: calc( 50% - 50vw ) !important;
	margin-top: 0 !important;
	background-color: #ffffff;
	padding-block: clamp( 3rem, 6vw, 6rem );
	padding-inline: clamp( 1rem, 2.5vw, 2.5rem );
}

/* --- Układ --- */

.wp-block-gg-konsulting-theme-faq .faq__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp( 2rem, 4vw, 4rem );
	align-items: center;
	max-width: 1400px;
	margin-inline: auto;
}

@media ( min-width: 900px ) {
	.wp-block-gg-konsulting-theme-faq.has-image .faq__inner {
		grid-template-columns: 1fr 1fr;
	}

	.wp-block-gg-konsulting-theme-faq.is-image-left .faq__media {
		order: 1;
	}

	.wp-block-gg-konsulting-theme-faq.is-image-left .faq__content {
		order: 2;
	}

	.wp-block-gg-konsulting-theme-faq.is-image-right .faq__media {
		order: 2;
	}

	.wp-block-gg-konsulting-theme-faq.is-image-right .faq__content {
		order: 1;
	}
}

/*
 * Wariant bez zdjęcia - jedna kolumna wyśrodkowana na stronie.
 * Same pytania zostają wyrównane do lewej, bo wyśrodkowany akapit
 * odpowiedzi czyta się źle.
 */
.wp-block-gg-konsulting-theme-faq.is-centered .faq__content {
	max-width: 860px;
	margin-inline: auto;
	text-align: center;
}

.wp-block-gg-konsulting-theme-faq.is-centered .faq__kicker {
	justify-content: center;
}

.wp-block-gg-konsulting-theme-faq.is-centered .faq__lead {
	margin-inline: auto;
}

.wp-block-gg-konsulting-theme-faq.is-centered .faq__list {
	text-align: left;
}

/* --- Nagłówki --- */

.wp-block-gg-konsulting-theme-faq .faq__kicker {
	display: flex;
	align-items: baseline;
	gap: 0.4rem;
	font-family: var( --wp--preset--font-family--raleway );
	font-size: clamp( 14px, 1.4vw, 18px );
	font-weight: 700;
	color: var( --wp--preset--color--primary );
	margin: 0 0 0.75rem;
}

.wp-block-gg-konsulting-theme-faq .faq__kicker-sep {
	color: #a67c52;
}

.wp-block-gg-konsulting-theme-faq .faq__heading {
	font-size: clamp( 1.9rem, 2.8vw, 2.75rem );
	font-weight: 800;
	line-height: 1.2;
	color: var( --wp--preset--color--primary );
	margin: 0 0 1.25rem;
}

.wp-block-gg-konsulting-theme-faq .faq__accent {
	color: var( --gg-accent );
}

.wp-block-gg-konsulting-theme-faq .faq__lead {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.65;
	color: var( --wp--preset--color--primary );
	max-width: 62ch;
	margin: 0 0 clamp( 2rem, 3vw, 2.5rem );
}

/* --- Zdjęcie z ramką --- */

.wp-block-gg-konsulting-theme-faq .faq__media {
	position: relative;
}

.wp-block-gg-konsulting-theme-faq .faq__photo {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 4px;
}

.wp-block-gg-konsulting-theme-faq .faq__note {
	background-color: #ffffff;
	padding: clamp( 1.25rem, 2vw, 1.75rem );
	box-shadow: 0 12px 34px rgba( 43, 27, 58, 0.14 );
	margin-top: -3rem;
	margin-inline: 1.5rem 0;
}

@media ( min-width: 700px ) {
	/* Ramka wchodzi na zdjęcie od dołu - jak w projekcie. */
	.wp-block-gg-konsulting-theme-faq .faq__note {
		position: absolute;
		right: 0;
		bottom: 2rem;
		width: min( 320px, 66% );
		margin: 0;
	}
}

.wp-block-gg-konsulting-theme-faq .faq__note-text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.6;
	color: var( --wp--preset--color--primary );
	margin: 0 0 1rem;
}

.wp-block-gg-konsulting-theme-faq .faq__note-text strong {
	font-weight: 700;
}

.wp-block-gg-konsulting-theme-faq .faq__note-link {
	display: inline-block;
	font-size: 1rem;
	font-weight: 600;
	color: var( --wp--preset--color--primary );
	text-decoration: underline;
	text-underline-offset: 4px;
	transition: color 0.3s;
}

.wp-block-gg-konsulting-theme-faq .faq__note-link:hover,
.wp-block-gg-konsulting-theme-faq .faq__note-link:focus-visible {
	color: #a67c56;
}

/* --- Lista pytań --- */

.wp-block-gg-konsulting-theme-faq .faq__list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.wp-block-gg-konsulting-theme-faq .faq__item {
	border-radius: 10px;
}

.wp-block-gg-konsulting-theme-faq .faq__question {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1.15rem clamp( 1.25rem, 2vw, 1.75rem );
	background-color: #ffffff;
	border-radius: 10px;
	box-shadow: 0 8px 24px rgba( 43, 27, 58, 0.07 );
	cursor: pointer;
	transition: background-color 0.3s, color 0.3s;
	/* Domyślny trójkącik znacznika details jest zbędny - mamy własną strzałkę. */
	list-style: none;
}

.wp-block-gg-konsulting-theme-faq .faq__question::-webkit-details-marker {
	display: none;
}

.wp-block-gg-konsulting-theme-faq .faq__question-text {
	font-size: clamp( 1rem, 1.3vw, 1.15rem );
	font-weight: 700;
	line-height: 1.4;
	color: inherit;
	margin: 0;
}

.wp-block-gg-konsulting-theme-faq .faq__chevron {
	flex: 0 0 auto;
	display: flex;
	color: var( --wp--preset--color--primary );
	transition: transform 0.3s, color 0.3s;
}

.wp-block-gg-konsulting-theme-faq .faq__chevron svg {
	display: block;
	width: 22px;
	height: 22px;
}

/* Stan otwarty - ciemny pasek i strzałka obrócona w dół. */
.wp-block-gg-konsulting-theme-faq .faq__item[ open ] > .faq__question {
	background-color: var( --wp--preset--color--primary );
	color: #ffffff;
}

.wp-block-gg-konsulting-theme-faq .faq__item[ open ] > .faq__question .faq__chevron {
	color: #ffffff;
	transform: rotate( 90deg );
}

.wp-block-gg-konsulting-theme-faq .faq__question:hover {
	background-color: var( --wp--preset--color--muted );
}

.wp-block-gg-konsulting-theme-faq .faq__item[ open ] > .faq__question:hover {
	background-color: var( --wp--preset--color--primary );
}

.wp-block-gg-konsulting-theme-faq .faq__answer {
	padding: 1rem clamp( 1.25rem, 2vw, 1.75rem ) 0.5rem;
}

.wp-block-gg-konsulting-theme-faq .faq__answer p {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.65;
	color: var( --wp--preset--color--primary );
	margin: 0;
	max-width: 62ch;
}

@media ( prefers-reduced-motion: reduce ) {
	.wp-block-gg-konsulting-theme-faq .faq__question,
	.wp-block-gg-konsulting-theme-faq .faq__chevron {
		transition: none;
	}
}

/*
 * Wprowadzenie bywa kilkuakapitowe - odstęp między akapitami zamiast
 * domyślnych marginesów znacznika <p>.
 */
.wp-block-gg-konsulting-theme-faq .faq__lead p {
	margin: 0;
}

.wp-block-gg-konsulting-theme-faq .faq__lead p + p {
	margin-top: 1.25rem;
}

.wp-block-gg-konsulting-theme-faq .faq__lead strong {
	font-weight: 700;
}
