/* I-Materac: strona Kontakt (page-kontakt.php, inc/kontakt.php). Projekt Konrada 14-10-2026. Przedrostek klas: im-k-. */
.im-kontakt { padding: 44px 0 64px; font-size: 16px; line-height: 1.6; color: var(--im-tekst); }
.im-kontakt p { margin: 0; }
.im-kontakt ul { list-style: none; margin: 0; padding: 0; }
.im-k-w { max-width: 1440px; margin: 0 auto; padding: 0 24px; }
.im-kontakt > .im-k-w:first-child { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 28px; align-items: start; } /* karta ze zdjeciem nie rosnie, gdy klient rozwija pytania */

/* Karta ze zdjeciem: tekst na jasnej scianie po lewej, zdjecie wypelnia karte */
.im-k-karta { position: relative; display: flex; min-height: 625px; /* tyle, co karta pytan po zwinieciu */ overflow: hidden; border-radius: 16px; background: #f6f1ea; }
.im-k-zdjecie { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 100% 40%; } /* Pani przy prawej krawedzi, pusta sciana pod tekstem */
/* jasne przejscie pod tekstem: zmiekcza pionowa krawedz sciany na zdjeciu i daje czytelnosc */
.im-k-karta::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, rgba(250, 247, 242, .97) 0%, rgba(250, 247, 242, .92) 34%, rgba(250, 247, 242, .55) 47%, rgba(250, 247, 242, 0) 60%); }
.im-k-tresc { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; width: 50%; padding: 40px 0 40px 44px; }
.im-k-tytul { margin: 0 0 18px; font-size: clamp(32px, 2.9vw, 44px); line-height: 1.12; font-weight: 400; letter-spacing: -.015em; color: var(--im-czern); }
.im-k-tytul strong { display: block; font-weight: 800; }
.im-k-wstep { max-width: 25em; margin-bottom: 26px !important; font-size: 15.5px; line-height: 1.6; color: #4a443d; }
.im-k-dane { display: grid; gap: 18px; }
.im-k-dane li { display: flex; align-items: center; gap: 18px; }
.im-k-ikona { display: flex; flex: none; align-items: center; justify-content: center; width: 58px; height: 58px; border-radius: 50%; background: #f3e7d5; color: var(--im-zloto-ciemne); }
.im-k-dane li > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.im-k-dane small { font-size: 14.5px; line-height: 1.3; color: var(--im-zloto-ciemne); }
.im-k-dane__glowne { font-size: 21px; line-height: 1.3; font-weight: 700; color: var(--im-czern); overflow-wrap: anywhere; }
.im-strona .im-k-dane a.im-k-dane__glowne { color: var(--im-czern); }
.im-strona .im-k-dane a.im-k-dane__glowne:hover { color: var(--im-zloto-ciemne); }
.im-k-dane em { font-style: normal; font-size: 14px; line-height: 1.4; color: var(--im-szary); }

/* Najczestsze pytania */
.im-k-faq { padding: 44px 40px; border: 1px solid var(--im-linia); border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(40, 30, 10, .05); }
.im-k-faq__tytul { margin: 0 0 14px; font-size: clamp(26px, 2.1vw, 30px); line-height: 1.2; font-weight: 800; letter-spacing: -.01em; color: var(--im-czern); }
.im-k-faq__opis { margin-bottom: 30px !important; font-size: 15.5px; line-height: 1.6; color: var(--im-szary); }
.im-k-faq__lista { display: grid; gap: 12px; }
.im-k-pytanie { border: 1px solid var(--im-linia); border-radius: 10px; background: #fff; transition: border-color .15s ease; }
.im-k-pytanie[open] { border-color: #d9cdb9; }
.im-k-pytanie summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 24px; font-size: 18px; line-height: 1.35; font-weight: 600; color: var(--im-czern); cursor: pointer; list-style: none; }
.im-k-pytanie summary::-webkit-details-marker { display: none; }
.im-k-pytanie summary:hover { color: var(--im-zloto-ciemne); }
.im-k-pytanie summary:focus-visible { outline: 2px solid var(--im-zloto); outline-offset: 2px; border-radius: 10px; }
.im-k-pytanie summary .im-ikona { color: var(--im-czern); transition: transform .2s ease; }
.im-k-pytanie[open] summary .im-ikona { transform: rotate(180deg); }
.im-k-pytanie p { padding: 0 24px 22px; font-size: 15.5px; line-height: 1.7; color: #3d3833; }
.im-strona .im-k-pytanie p a { color: var(--im-czern); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

/* Pasek korzysci */
.im-kontakt ul.im-k-pasek { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 40px auto 0; } /* ul: inaczej .im-kontakt ul zeruje margines i pasek nie jest wysrodkowany */
.im-k-pasek::before { content: ""; grid-column: 1 / -1; height: 1px; background: var(--im-linia); } /* linia tylko na szerokosc tresci */
.im-k-pasek li { display: flex; align-items: center; justify-content: center; gap: 22px; margin-top: 30px; padding: 0 16px; }
.im-k-pasek li + li { border-left: 1px solid var(--im-linia); }
.im-k-pasek .im-ikona { color: var(--im-zloto); stroke-width: 1.3; }
.im-k-pasek span { font-size: 14.5px; line-height: 1.45; color: var(--im-szary); }
.im-k-pasek strong { display: block; font-size: 16px; font-weight: 600; color: var(--im-czern); }

@media (max-width: 1199px) {
	.im-kontakt > .im-k-w:first-child { grid-template-columns: 1fr; }
	.im-k-karta { min-height: max(570px, calc((100vw - 48px) / 1.5)); } /* jedna kolumna: proporcje zdjecia 3:2, ale nie nizej niz tekst (768 px) */
	.im-k-faq { padding: 36px 32px; }
	.im-kontakt ul.im-k-pasek { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.im-k-pasek li, .im-k-pasek li + li { justify-content: flex-start; margin-top: 22px; padding: 0 16px; border-left: 0; }
}

/* Telefon: zdjecie na gorze (sama Pani), tekst i dane pod nim */
@media (max-width: 767px) {
	.im-kontakt { padding: 16px 0 40px; }
	.im-k-w { padding: 0 14px; }
	.im-kontakt > .im-k-w:first-child { gap: 18px; }
	.im-k-karta { flex-direction: column; min-height: 0; aspect-ratio: auto; background: #fbf8f4; border: 1px solid var(--im-linia); } /* auto: proporcje 3:2 z progu 1199 px ucinaly tu tekst */
	.im-k-karta::before { display: none; }
	.im-k-zdjecie { position: static; width: 100%; height: auto; aspect-ratio: 4 / 3; object-position: 72% 30%; }
	.im-k-tresc { width: auto; padding: 22px 20px 26px; }
	.im-k-tytul { margin-bottom: 14px; font-size: 31px; }
	.im-k-wstep { margin-bottom: 22px !important; font-size: 15.5px; }
	.im-k-dane { gap: 16px; }
	.im-k-dane li { gap: 14px; }
	.im-k-ikona { width: 52px; height: 52px; }
	.im-k-ikona .im-ikona { width: 21px; height: 21px; }
	.im-k-dane small { font-size: 13.5px; }
	.im-k-dane__glowne { font-size: 19px; }
	.im-k-dane em { font-size: 13px; }
	.im-k-faq { padding: 26px 18px; border-radius: 14px; }
	.im-k-faq__opis { margin-bottom: 20px !important; font-size: 14.5px; }
	.im-k-faq__lista { gap: 10px; }
	.im-k-pytanie summary { padding: 16px 16px; font-size: 16px; }
	.im-k-pytanie p { padding: 0 16px 18px; font-size: 14.5px; }
	.im-kontakt ul.im-k-pasek { margin-top: 26px; }
	.im-k-pasek li, .im-k-pasek li + li { gap: 12px; margin-top: 18px; padding: 0 4px; }
	.im-k-pasek .im-ikona { width: 30px; height: 30px; }
	.im-k-pasek span { font-size: 12.5px; }
	.im-k-pasek strong { font-size: 14px; }
}
