/* Łódź na Wakacje – style całego serwisu (prefiks wl-) */
:root {
	--wl-ink: #0F2E3D;
	--wl-deep: #0A1F2A;
	--wl-teal: #2A7F7A;
	--wl-teal-soft: #E3F1EF;
	--wl-buoy: #B4491C;
	--wl-buoy-soft: #FBEDE4;
	--wl-sand: #F4F1EA;
	--wl-line: #DCE3E4;
	--wl-text: #13232B;
	--wl-muted: #4E626B;
	--font-sans: 'Lato', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--font-serif: 'Source Serif 4', Georgia, serif;
}
body { font-family: var(--font-sans); color: var(--wl-text); }
h1, h2, h3, h4, .entry-title, .post-card__title, .site-branding__name { font-family: var(--font-serif); letter-spacing: -.01em; }

/* Nagłówek: pasek „boi” (pomarańcz–biel) pod spodem */
.site-header { position: relative; border-bottom: 0; }
.site-header::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 4px;
	background: repeating-linear-gradient(90deg, var(--wl-buoy) 0 28px, #fff 28px 40px);
	z-index: 2;
}
.primary-nav .menu { gap: .25rem; flex-wrap: nowrap; }
.primary-nav .menu > li > a {
	font-weight: 700; font-size: .95rem; white-space: nowrap; padding: .5rem .7rem;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='6' viewBox='0 0 16 6'%3E%3Cpath d='M0 3 Q4 0 8 3 T16 3' fill='none' stroke='%232A7F7A' stroke-width='1.6'/%3E%3C/svg%3E");
	background-repeat: repeat-x; background-position: 0 115%; background-size: 16px 0;
	transition: background-size .2s ease;
}
.primary-nav .menu > li > a:hover,
.primary-nav .menu > li.current-menu-item > a,
.primary-nav .menu > li.current-category-ancestor > a { color: var(--wl-ink); background-size: 16px 6px; }
@media (max-width: 1100px) { .primary-nav .menu > li > a { padding: .5rem .45rem; font-size: .9rem; } }

/* Przyciski */
.wl-btn { display: inline-flex; align-items: center; gap: .4rem; padding: .7rem 1.2rem; border-radius: 6px; font-weight: 700; text-decoration: none; border: 2px solid transparent; cursor: pointer; font-size: .95rem; }
.wl-btn--buoy { background: var(--wl-buoy); color: #fff; }
.wl-btn--buoy:hover { background: #96390F; color: #fff; }
.wl-btn--line { border-color: currentColor; color: inherit; background: transparent; }
.wl-btn--ghost { background: transparent; color: var(--wl-muted); border-color: transparent; text-decoration: underline; }
.btn--primary, .btn--accent { border-radius: 6px; }

/* Karty wpisów motywu */
.post-card { border: 1px solid var(--wl-line); border-radius: 6px; box-shadow: none; border-top: 3px solid transparent; transition: border-color .2s, transform .2s; }
.post-card:hover { border-top-color: var(--wl-teal); transform: translateY(-2px); }

/* Treść wpisów */
.entry-content h2 { position: relative; padding-left: 1.1rem; }
.entry-content h2::before { content: ""; position: absolute; left: 0; top: .45em; width: .55rem; height: .55rem; background: var(--wl-buoy); border-radius: 2px; transform: rotate(45deg); }
.entry-content table { border-collapse: collapse; width: 100%; font-size: .95rem; }
.entry-content th { background: var(--wl-ink); color: #fff; text-align: left; }
.entry-content th, .entry-content td { padding: .55rem .75rem; border: 1px solid var(--wl-line); }
.entry-content tr:nth-child(even) td { background: var(--wl-sand); }
.entry-content figcaption, .wl-photo-credit, .wlt-photo-credit { font-size: .85rem; color: var(--wl-muted); border-left: 3px solid var(--wl-teal); padding-left: .6rem; }
.entry-content blockquote { border-left: 4px solid var(--wl-teal); background: var(--wl-teal-soft); padding: 1rem 1.2rem; font-style: normal; }

/* Stopka: granat z falą u góry */
.site-footer { background: var(--wl-deep); color: #D7E3E7; position: relative; margin-top: 3rem; }
.site-footer::before {
	content: ""; position: absolute; left: 0; right: 0; top: -18px; height: 18px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='18' viewBox='0 0 80 18'%3E%3Cpath d='M0 18 V10 Q20 0 40 10 T80 10 V18Z' fill='%230A1F2A'/%3E%3C/svg%3E") repeat-x;
}
.site-footer a { color: #fff; }
.site-footer .footer-col__title, .site-footer .footer-brand__name { color: #fff; font-family: var(--font-serif); }
.site-footer .footer-bottom { border-top-color: rgba(255,255,255,.15); color: #B9CBD1; }

/* Formularz kontaktowy */
.wl-kontakt input, .wl-kontakt textarea { border: 1px solid var(--wl-line); border-radius: 6px; padding: .6rem .7rem; font: inherit; box-sizing: border-box; }
.wl-kontakt input:focus, .wl-kontakt textarea:focus { outline: 2px solid var(--wl-teal); }

.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }
