/* SM Drohiczyn - style komponentow ponad theme.json */

:root {
	--sm-line: var(--wp--preset--color--accent-6, #D5D9D0);
	--sm-brick: var(--wp--preset--color--accent-2, #B5452E);
	--sm-pine: var(--wp--preset--color--accent-1, #1F5F45);
	--sm-ink-2: var(--wp--preset--color--accent-4, #4A5A52);
}

a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible {
	outline: 3px solid var(--sm-brick);
	outline-offset: 3px;
}

/* Brak odstepow miedzy sekcjami szablonu: kazda sekcja ma wlasne paddingi */
.wp-site-blocks > * + * { margin-block-start: 0; }
main.sm-main.wp-block-group > * + * { margin-block-start: 0; }

/* Pasek gorny */
.sm-topbar a { color: inherit; font-weight: 700; text-decoration: none; }
.sm-topbar a:hover { text-decoration: underline; }
.sm-topbar-alarm strong {
	background: var(--sm-brick);
	color: #fff;
	padding: 0.15rem 0.6rem;
	border-radius: 3px;
	font-weight: 700;
}
.sm-sep { opacity: 0.45; margin: 0 0.25rem; }
.sm-topbar p { margin: 0; color: #fff; }
@media (max-width: 599px) {
	.sm-topbar .sm-sep, .sm-topbar .sm-sep + a { display: none; }
	.sm-topbar .wp-block-group { gap: 0.2rem; }
}

/* Naglowek: na szerokich ekranach marka i menu w jednym wierszu, menu dosuniete do prawej krawedzi siatki */
.sm-header > .alignwide { row-gap: 0.4rem; }
.sm-brand { flex: 0 0 auto; }
.sm-nav { font-size: 0.95rem; min-width: 0; }
.sm-nav .wp-block-navigation-item { flex-shrink: 0; }
.sm-nav .wp-block-navigation-item__content { white-space: nowrap; }
/* ponizej 1360px: menu w drugim wierszu, wyrownane do lewej krawedzi siatki */
.sm-header > .alignwide > .sm-nav { flex: 1 0 100%; margin-left: -0.6rem; }
.sm-nav .wp-block-navigation__container { justify-content: flex-start; }
/* od 1360px: marka i menu w jednym wierszu, menu dosuniete do prawej krawedzi siatki */
@media (min-width: 1360px) {
	.sm-header > .alignwide { flex-wrap: nowrap; }
	.sm-header > .alignwide > .sm-nav { flex: 1 1 auto; margin-left: auto; margin-right: -0.6rem; }
	.sm-nav .wp-block-navigation__container { flex-wrap: wrap; justify-content: flex-end; row-gap: 0; }
}
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-justification-alignment: flex-start;
	--navigation-layout-justify: flex-start;
	padding-top: 4rem;
}
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	align-items: flex-start !important;
	justify-content: flex-start !important;
	text-align: left;
}
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; }
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	width: 100%;
	margin-left: 0.5rem;
	padding-left: 1rem;
	border-left: 2px solid var(--sm-line);
	border-right: 0; border-top: 0; border-bottom: 0; border-radius: 0;
}
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 1.05rem; }
.sm-nav .wp-block-navigation__responsive-container-open,
.sm-nav .wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--contrast); }
@media (max-width: 599px) {
	.sm-header > .alignwide > .sm-nav { flex: 0 0 auto; margin-left: auto; }
	.sm-header > .alignwide { flex-wrap: nowrap; }
}

.sm-header {
	border-bottom: 1px solid var(--sm-line);
	background: var(--wp--preset--color--base);
	position: sticky;
	top: 0;
	z-index: 30;
}
body.admin-bar .sm-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .sm-header { top: 46px; } }

.sm-brand { gap: 0.75rem; position: relative; cursor: pointer; }
/* caly blok marki (znak, nazwa, adres) prowadzi na strone glowna */
.sm-brand .wp-block-site-title a::after { content: ""; position: absolute; inset: 0; }
.sm-brand:hover .wp-block-site-title a { text-decoration: none; }
.sm-brand .wp-block-site-logo:empty { display: none; }
/* tymczasowy znak, do zastapienia logotypem klienta */
.sm-brand::before {
	content: "SM";
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	background: var(--sm-pine);
	color: #fff;
	font-family: var(--wp--preset--font-family--newsreader);
	font-size: 1.3rem;
	border-radius: 4px 4px 12px 4px;
}
.sm-brand:has(.wp-block-site-logo img)::before { display: none; }

.sm-nav .wp-block-navigation-item__content { padding: 0.45rem 0.55rem; border-radius: 4px; }
.sm-nav .wp-block-navigation-item__content:hover { background: var(--wp--preset--color--accent-5); }
.sm-nav .wp-block-navigation__submenu-container { border: 1px solid var(--sm-line); border-radius: 4px; min-width: 240px; }
.sm-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 0.55rem 0.9rem; border-radius: 0; }
.sm-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { padding: 0.6rem 0; font-size: 1.15rem; }

/* Hero i tablica ogloszen */
/* Zdjecie osiedla w tle hero z nakladka w kolorze lnu: mocniejsza po lewej (tekst), lzejsza po prawej */
.sm-hero {
	position: relative;
	background-image:
		linear-gradient(to right, rgba(241, 243, 238, 0.92) 0%, rgba(241, 243, 238, 0.86) 40%, rgba(241, 243, 238, 0.45) 72%, rgba(241, 243, 238, 0.3) 100%),
		url("../img/hero.jpg");
	background-size: cover;
	background-position: center 60%;
	background-repeat: no-repeat;
}
@media (max-width: 782px) {
	.sm-hero {
		background-image:
			linear-gradient(to bottom, rgba(241, 243, 238, 0.9) 0%, rgba(241, 243, 238, 0.86) 100%),
			url("../img/hero-mobile.jpg");
		background-position: center 60%;
	}
}
.sm-hero h1 { max-width: 16ch; font-weight: 500; font-size: clamp(2rem, 2.9vw, 2.9rem); line-height: 1.15; }
.sm-lead { max-width: 38ch; font-size: 1.15rem; line-height: 1.55; color: var(--wp--preset--color--contrast); }
.sm-btn-alert .wp-block-button__link {
	border-color: var(--sm-brick) !important;
	color: var(--sm-brick) !important;
	background: transparent !important;
}
.sm-btn-alert .wp-block-button__link:hover { background: var(--wp--preset--color--brick-tint) !important; }

.sm-board {
	border: 1px solid var(--sm-line);
	border-top: 6px solid var(--sm-pine);
	box-shadow: 0 12px 32px rgba(28, 42, 36, 0.10);
}
.sm-board-head { padding: 1rem 1.4rem 0.7rem; border-bottom: 1px solid var(--sm-line); }
.sm-board-head p { margin: 0; }
.sm-notice { padding: 1.1rem 1.4rem; border-bottom: 1px solid var(--sm-line); }
.sm-notice .wp-block-post-date { color: var(--sm-ink-2); }
.sm-notice .wp-block-post-excerpt__excerpt { color: var(--wp--preset--color--contrast); }
.sm-notice .sm-notice-title,
.sm-notice h3 {
	font-family: var(--wp--preset--font-family--atkinson);
	font-weight: 700;
	font-size: 1.05rem;
	line-height: 1.35;
	margin: 0;
}
.sm-notice p { margin: 0; }
.sm-board-list .category-pilne { background: var(--wp--preset--color--brick-tint); border-left: 6px solid var(--sm-brick); }
.sm-board-list ul { list-style: none; margin: 0; padding: 0; }
.sm-board-list li { margin: 0; }
.sm-board-hours { padding: 1.1rem 1.4rem; }
.sm-board-hours p { margin: 0; }
.sm-board-hours strong { display: block; font-size: 1.1rem; margin-top: 0.15rem; }

/* Typografia: wywazone lamanie naglowkow, brak sierot w akapitach */
h1, h2, h3, .wp-block-post-title { text-wrap: balance; }
p { text-wrap: pretty; }

/* Naglowki sekcji */
.sm-section-head { margin-bottom: var(--wp--preset--spacing--40); }
.sm-section-head p { margin: 0; max-width: 48ch; }
.sm-section-head--stack p { max-width: 62ch; font-size: 1.1rem; }

/* Zalatw sprawe: kafelki w siatce z cienkimi ramkami i ikona */
.sm-tasks { border-top: 1px solid var(--sm-line); border-left: 1px solid var(--sm-line); }
.sm-task {
	position: relative;
	padding: 1.7rem 1.7rem 2rem;
	border-right: 1px solid var(--sm-line);
	border-bottom: 1px solid var(--sm-line);
	min-height: 210px;
	background: var(--wp--preset--color--base);
}
.sm-task:hover { background: var(--wp--preset--color--accent-5); }
.sm-task h3 {
	font-family: var(--wp--preset--font-family--atkinson);
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1.3;
	margin: 0 0 0.45rem;
}
.sm-task h3 a { color: inherit; text-decoration: none; }
.sm-task h3 a::after { content: ""; position: absolute; inset: 0; }
.sm-task p { margin: 0; font-size: 1rem; line-height: 1.5; color: var(--wp--preset--color--contrast); }
.sm-task::before {
	content: "";
	display: block;
	width: 36px;
	height: 36px;
	margin-bottom: 1.1rem;
	background-color: var(--sm-pine);
	-webkit-mask: var(--sm-icon) center / contain no-repeat;
	mask: var(--sm-icon) center / contain no-repeat;
}
.sm-task--awaria::before { background-color: var(--sm-brick); }
.sm-task--awaria { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.sm-task--oplaty { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='12' rx='1'/%3E%3Cpath d='M3 10h18M7 15h4'/%3E%3C/svg%3E"); }
.sm-task--druki { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h8l4 4v14H6z'/%3E%3Cpath d='M14 3v4h4M9 12h6M9 16h6'/%3E%3C/svg%3E"); }
.sm-task--zaswiadczenia { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20h16M6 20V9l6-5 6 5v11'/%3E%3Cpath d='M10 20v-6h4v6'/%3E%3C/svg%3E"); }
.sm-task--przetargi { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16v13H4z'/%3E%3Cpath d='M8 7V4h8v3M4 12h16'/%3E%3C/svg%3E"); }
.sm-task--kontakt { --sm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h14v12H9l-4 4z'/%3E%3Cpath d='M9 8h6M9 11h4'/%3E%3C/svg%3E"); }

/* Lista aktualnosci */
.sm-news ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--sm-line); }
.sm-news li { margin: 0; }
.sm-news-item {
	padding: 1.6rem 0;
	border-bottom: 1px solid var(--sm-line);
	gap: 1.8rem;
}
.sm-news-day {
	flex: 0 0 4.5rem;
	font-family: var(--wp--preset--font-family--newsreader);
	font-size: 2.5rem;
	font-weight: 400;
	line-height: 1;
	margin: 0;
}
.sm-news-body { flex: 1 1 auto; min-width: 0; }
.sm-news-body h2, .sm-news-body h3 {
	font-family: var(--wp--preset--font-family--atkinson);
	font-weight: 700;
	font-size: 1.15rem;
	line-height: 1.35;
	margin: 0;
}
.sm-news-body p { margin: 0; max-width: 64ch; }
.sm-news-body .wp-block-post-excerpt__excerpt { color: var(--wp--preset--color--contrast); }
.sm-news-body .wp-block-post-excerpt__more-text { display: none; }
.sm-news-tag { flex: 0 0 9rem; text-align: right; margin: 0; }
.sm-news-tag a { color: var(--sm-ink-2); text-decoration: none; }
@media (max-width: 720px) {
	.sm-news-item { gap: 1rem; }
	.sm-news-day { flex-basis: 3rem; font-size: 1.8rem; }
	.sm-news-tag { display: none; }
}

/* O Spoldzielni */
.sm-about a { color: #fff; }
.sm-about-text { color: #D9E6DE; max-width: 52ch; }
.sm-about-links { border-top: 1px solid rgba(255, 255, 255, 0.28); }
.sm-about-link {
	position: relative;
	padding: 1rem 2.6rem 1.05rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.28);
}
.sm-about-link h3 {
	font-size: 1.45rem;
	font-weight: 500;
	margin: 0;
	color: #fff;
}
.sm-about-link h3 a { text-decoration: none; }
.sm-about-link h3 a::after { content: ""; position: absolute; inset: 0; }
.sm-about-link p { margin: 0; color: #D9E6DE; }
.sm-about-link::after {
	content: "";
	position: absolute;
	right: 0.4rem;
	top: 50%;
	width: 1.2rem;
	height: 1.2rem;
	transform: translateY(-50%);
	background: #fff;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
	opacity: 0.7;
	transition: transform 0.15s, opacity 0.15s;
}
.sm-about-link:hover::after { transform: translate(0.25rem, -50%); opacity: 1; }
.sm-about-link:hover h3 a { text-decoration: underline; text-underline-offset: 4px; }

/* FAQ */
.sm-faq-item summary {
	cursor: pointer;
	font-weight: 700;
	font-size: 1.1rem;
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}
.sm-faq-item summary::-webkit-details-marker { display: none; }
.sm-faq-item summary::after {
	content: "+";
	font-family: var(--wp--preset--font-family--newsreader);
	font-size: 1.6rem;
	line-height: 1;
	color: var(--sm-pine);
}
.sm-faq-item[open] summary::after { content: "\2013"; }
.sm-faq-item > :not(summary) { color: var(--wp--preset--color--contrast); max-width: 66ch; margin-top: 0.8rem; }
.sm-faq-item:first-of-type { border-top: 1px solid var(--sm-line); }

/* Kontakt */
.sm-contact-label { margin-bottom: 0.6rem; font-weight: 700; }
.sm-contact .sm-section-head { margin-bottom: var(--wp--preset--spacing--50); }
.sm-contact-big {
	font-family: var(--wp--preset--font-family--newsreader);
	font-size: 1.55rem;
	font-weight: 500;
	line-height: 1.35;
	margin: 0;
}
.sm-contact-big a { text-decoration: none; }
.sm-contact-big + p { margin-top: 0.6rem; }
.sm-contact .wp-block-column { padding-top: 0.5rem; }

/* Pasek tytulu podstron */
.sm-title-band { border-bottom: 1px solid var(--sm-line); }
.sm-title-band .wp-block-post-terms a { text-decoration: none; }

/* Tresc podstron */
.sm-title-band .alignwide.has-large-font-size { max-width: 46rem; }
.sm-title-band .wp-block-search.alignwide { max-width: 32rem; }
.sm-page-body .wp-block-post-content > * + * { margin-top: 1.2rem; }
.sm-page-body .wp-block-post-content h2 { margin-top: 2.2rem; }
.sm-page-body .wp-block-post-content h3 { margin-top: 1.8rem; }
.sm-page-body .wp-block-file { padding: 0.9rem 1.1rem; border: 1px solid var(--sm-line); border-radius: 4px; }
.sm-page-body .wp-block-table td, .sm-page-body .wp-block-table th { border-color: var(--sm-line); }
.sm-notice-box {
	border-left: 6px solid var(--sm-pine);
	background: var(--wp--preset--color--pine-tint);
	padding: 1rem 1.3rem;
}
.sm-notice-box.is-alert { border-left-color: var(--sm-brick); background: var(--wp--preset--color--brick-tint); }

/* Stopka */
.sm-footer-name { font-size: 1.3rem; color: #fff; margin-bottom: 0.6rem; }
.sm-footer a { color: #fff; }
.sm-footer-links { list-style: none; padding: 0; margin: 0; }
.sm-footer-links li { margin: 0 0 0.45rem; }
.sm-footer-legal p { margin: 0; }
.sm-footer p { color: #C9D3CD; }

/* Paginacja */
.wp-block-query-pagination a { text-decoration: none; }
.wp-block-query-pagination-numbers .current { font-weight: 700; }
