/*
Theme Name: Fotografijos paveldo fondas
Theme URI: https://www.facebook.com/profile.php?id=61579013026349
Author: Fotografijos paveldo fondas
Description: Labdaros ir paramos fondo „Fotografijos paveldo fondas“ svetainės tema. Blokinė tema su pradžios puslapio skyriais (leidyba, atlikti darbai, naujienos, apie fondą, paskaitos), lokaliais šriftais ir WooCommerce stiliais.
Version: 1.1.0
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fpf
*/

/* ---------- Bendri elementai ---------- */

html { scroll-behavior: smooth; }
:where(section[id], .wp-block-group[id]) { scroll-margin-top: 96px; }

.fpf-eyebrow {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
}

.fpf-muted { color: var(--wp--preset--color--muted); }
.fpf-body { color: var(--wp--preset--color--body); }

.fpf-arrow-link a,
a.fpf-arrow-link {
	font-weight: 500;
	text-decoration: none;
	display: inline-block;
	padding: 12px 0;
}
.fpf-arrow-link a:hover,
a.fpf-arrow-link:hover { text-decoration: underline; text-underline-offset: 4px; }

/* Skyriaus antraštė su nuoroda dešinėje */
.fpf-section-head { align-items: flex-end !important; }

/* Rėmelis aplink nuotrauką */
.fpf-framed img {
	border: 14px solid #fff;
	box-shadow: 0 1px 0 var(--wp--preset--color--line), 0 24px 48px rgba(28, 26, 23, 0.12);
	box-sizing: border-box;
}
.fpf-shadow img { box-shadow: 0 18px 36px rgba(28, 26, 23, 0.18); }

.wp-block-image figcaption,
.wp-element-caption {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
	margin-top: 8px;
	text-align: left;
}

/* ---------- Sąrašai su metais (publikacijos, paskaitos) ---------- */

.fpf-rows { list-style: none; margin: 0; padding: 0; }
.fpf-rows > li {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 32px;
	align-items: baseline;
	padding: 18px 0;
	border-top: 1px solid var(--wp--preset--color--line);
	margin: 0;
}
.fpf-rows .fpf-year {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.375rem;
	color: var(--wp--preset--color--accent);
	min-width: 64px;
}
.fpf-rows.fpf-rows--dates .fpf-year { min-width: 116px; color: var(--wp--preset--color--muted); }
.fpf-rows .fpf-entry { flex: 1 1 360px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.fpf-rows .fpf-title {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.45rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--wp--preset--color--ink);
}
.fpf-rows a.fpf-title { text-decoration: none; }
.fpf-rows a.fpf-title:hover { text-decoration: underline; text-underline-offset: 4px; }
.fpf-rows .fpf-meta { font-size: 0.9375rem; color: var(--wp--preset--color--muted); }
.fpf-rows .fpf-note { font-size: 0.875rem; font-style: italic; color: var(--wp--preset--color--muted); }

.fpf-subhead {
	margin: 0 0 12px !important;
	font-family: var(--wp--preset--font-family--sans) !important;
	font-size: 0.8125rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

/* Leidybos programa: numeruotas sąrašas dviem stulpeliais */
.fpf-program {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 0 48px;
	counter-reset: fpf;
}
.fpf-program > li {
	counter-increment: fpf;
	display: flex;
	gap: 20px;
	padding: 24px 0;
	border-top: 1px solid var(--wp--preset--color--line);
	margin: 0;
}
.fpf-program > li::before {
	content: counter(fpf);
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.75rem;
	line-height: 1.1;
	color: var(--wp--preset--color--accent);
	min-width: 32px;
}
.fpf-program .fpf-title {
	display: block;
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.15;
}
.fpf-program .fpf-meta { display: block; margin-top: 6px; font-size: 0.9375rem; color: var(--wp--preset--color--muted); }

/* Pirkimo blokas */
.fpf-buy { border: 1px solid var(--wp--preset--color--line); }
.fpf-price {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 2.25rem;
	font-weight: 600;
	line-height: 1;
	margin: 0;
}

/* Kortelės (naujienos) */
.fpf-card {
	background: #fff;
	border: 1px solid var(--wp--preset--color--line);
	height: 100%;
	box-sizing: border-box;
}
.fpf-news .wp-block-post-template { gap: 32px; }
.fpf-news .wp-block-post { height: 100%; }
.fpf-card .wp-block-post-title a { text-decoration: none; color: inherit; }
.fpf-card .wp-block-post-title a:hover { text-decoration: underline; text-underline-offset: 4px; }

/* Romėniški skaičiai veiklos kryptyse */
.fpf-roman {
	font-family: var(--wp--preset--font-family--serif);
	font-size: 2.5rem;
	line-height: 1;
	color: var(--wp--preset--color--accent);
	margin: 0;
}

/* Biografijos santrauka */
.fpf-facts {
	margin: 8px 0 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 20px 32px;
	padding-top: 24px;
	border-top: 1px solid var(--wp--preset--color--line);
}
.fpf-facts dt {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--accent);
	margin-bottom: 4px;
}
.fpf-facts dd { margin: 0; font-size: 0.9375rem; line-height: 1.5; color: var(--wp--preset--color--body); }

/* Linija virš bloko */
.fpf-rule-top { border-top: 1px solid var(--wp--preset--color--line); }

/* ---------- Antraštė ---------- */

.fpf-header { border-bottom: 1px solid var(--wp--preset--color--line); }
.fpf-header .wp-block-site-title a { text-decoration: none; }
.fpf-logo-mark {
	width: 40px;
	height: 40px;
	border: 1.5px solid var(--wp--preset--color--ink);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--wp--preset--font-family--serif);
	font-size: 1.125rem;
	font-weight: 600;
	flex: 0 0 40px;
}
.fpf-header .wp-block-navigation a { text-decoration: none; padding: 12px 0; }
.fpf-header .wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: 4px; }

/* ---------- Poraštė ---------- */

.fpf-footer a { color: inherit; }
.fpf-footer p { margin: 0; }

/* ---------- WooCommerce ---------- */

.woocommerce .button,
.woocommerce button.button,
.wc-block-components-button:not(.is-link) {
	border-radius: 0 !important;
}
.wc-block-components-product-price,
.woocommerce .price { font-family: var(--wp--preset--font-family--serif); font-size: 1.75rem; font-weight: 600; }
.wc-block-components-text-input input,
.wc-block-components-text-input textarea { border-radius: 0 !important; }

/* ---------- Telefonai ---------- */

@media (max-width: 781px) {
	.fpf-hero-title { font-size: 2.75rem !important; }
	.fpf-h2 { font-size: 2.5rem !important; }
	.fpf-rows .fpf-year, .fpf-rows.fpf-rows--dates .fpf-year { min-width: 0; width: 100%; }
}

/* ---------- Skyrių ritmas ---------- */

.fpf-sec { padding-top: clamp(56px, 7vw, 88px); padding-bottom: clamp(56px, 7vw, 88px); }
.fpf-sec.fpf-sec-s { padding-top: clamp(48px, 6vw, 72px); padding-bottom: clamp(48px, 6vw, 72px); }
.fpf-hero { padding-top: clamp(48px, 7vw, 80px); }
main.wp-block-group { margin-top: 0 !important; }
.fpf-sec + .fpf-sec { margin-top: 0 !important; }
.wp-site-blocks > * + * { margin-block-start: 0; }

.fpf-gap-l { gap: clamp(32px, 4vw, 56px) !important; }
.fpf-stack-l > * + * { margin-top: clamp(40px, 5vw, 56px) !important; }
.fpf-stack-m > * + * { margin-top: 40px !important; }
.fpf-block > * + * { margin-top: 16px; }
.fpf-block { padding-top: 48px; }
.fpf-pad-top { padding-top: 48px; }
.fpf-intro { max-width: 680px; }
.fpf-intro > * + * { margin-top: 14px; }

.fpf-lead { font-size: 1.1875rem; line-height: 1.6; max-width: 600px; }
.fpf-small { font-size: 0.9375rem; }
.fpf-label {
	margin: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.fpf-book-title { font-size: clamp(2.25rem, 4vw, 3rem) !important; line-height: 1.05 !important; }
.fpf-h3s { font-size: 1.875rem !important; }
.fpf-person { font-family: var(--wp--preset--font-family--serif); font-size: 1.625rem; font-weight: 600; margin-bottom: 0; }

.fpf-buy { padding: 24px; margin-top: 8px; }
.fpf-buy p { margin: 0; }
.fpf-donors { padding: 20px 24px; }
.fpf-donors > * + * { margin-top: 8px; }

.fpf-portrait {
	aspect-ratio: 4 / 5;
	background: #E6DED1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 16px;
}

.fpf-tall img { aspect-ratio: 3 / 4; object-fit: cover; width: 100%; }
.fpf-gallery.wp-block-gallery { gap: 12px !important; margin-top: 12px; }
.fpf-gallery .wp-block-image img { aspect-ratio: 3 / 4; object-fit: cover; }
.wp-block-gallery.fpf-gallery .wp-block-image figcaption {
	position: static !important;
	background: none !important;
	color: var(--wp--preset--color--muted) !important;
	padding: 0 !important;
	margin-top: 8px !important;
	font-size: 0.8125rem;
	text-shadow: none;
	max-height: none;
	overflow: visible;
}
.wp-block-gallery.fpf-gallery .wp-block-image { flex-direction: column !important; }

.fpf-card { padding: 28px; gap: 14px; }
.fpf-card .wp-block-post-date { margin: 0; }
.fpf-card-title { font-size: 1.75rem !important; line-height: 1.15 !important; margin: 0; }
.fpf-card .wp-block-post-excerpt { margin: 0; flex-grow: 1; display: flex; flex-direction: column; }
.fpf-card .wp-block-post-excerpt__excerpt { margin: 0 0 8px; }
.fpf-card .wp-block-post-excerpt__more-text { margin-top: auto; }
.fpf-card .wp-block-post-excerpt__more-link { font-weight: 500; text-decoration: none; }

.fpf-btn-accent .wp-block-button__link { background: var(--wp--preset--color--accent); color: #fff; }
.fpf-btn-accent .wp-block-button__link:hover { background: var(--wp--preset--color--accent-dark); }
.wp-block-button.is-style-outline .wp-block-button__link {
	border: 1px solid var(--wp--preset--color--ink);
	color: var(--wp--preset--color--ink);
	background: transparent;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); }
.fpf-cta-buttons .wp-block-button__link { width: 100%; text-align: center; }

/* Antraštė */
.fpf-header { padding-top: 16px; padding-bottom: 16px; }
.fpf-header-inner { gap: 16px 32px; }
.fpf-brand { gap: 12px; }
.fpf-header .wp-block-site-title { max-width: 180px; }

/* Poraštė */
.fpf-footer { padding-top: 56px; padding-bottom: 40px; font-size: 0.9375rem; line-height: 1.7; }
.fpf-footer-grid { gap: 32px; }
.fpf-footer-grid .wp-block-group { gap: 8px; }
.fpf-footer-name { font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem; color: var(--wp--preset--color--paper); line-height: 1.2; }
.fpf-footer-head { font-weight: 600; color: var(--wp--preset--color--paper); }
.fpf-footer-copy { margin-top: 40px !important; padding-top: 20px; border-top: 1px solid rgba(217, 211, 200, 0.2); font-size: 0.8125rem; }

/* Įrašai ir puslapiai */
.fpf-article { padding-top: clamp(40px, 6vw, 72px); padding-bottom: clamp(56px, 7vw, 88px); }
.fpf-article .wp-block-post-title { font-size: clamp(2.25rem, 5vw, 3.5rem); font-weight: 500; }
.fpf-article .wp-block-post-content { font-size: 1.0625rem; color: var(--wp--preset--color--body); }
.fpf-article .wp-block-post-content a { text-underline-offset: 3px; }

/* Steigėjo portretas */
.fpf-portrait-img img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }

/* ---------- Knygynas ---------- */

.fpf-header .wc-block-mini-cart__button { padding: 10px 0 10px 8px; color: var(--wp--preset--color--ink); }
.fpf-header .wc-block-mini-cart__amount { display: none; }

.fpf-books .wc-block-product-template,
.fpf-books .wp-block-woocommerce-product-template {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 48px 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.fpf-books .wc-block-product,
.fpf-books .wp-block-post {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	text-align: left;
}
.fpf-books .fpf-book-cover,
.fpf-books .wc-block-components-product-image {
	background: var(--wp--preset--color--sand);
	aspect-ratio: 4 / 5;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	margin: 0 0 6px !important;
	box-sizing: border-box;
}
.fpf-books .fpf-book-cover img,
.fpf-books .wc-block-components-product-image img {
	max-height: 100%;
	width: auto !important;
	max-width: 100%;
	object-fit: contain !important;
	box-shadow: 0 10px 22px rgba(28, 26, 23, 0.18);
}
.fpf-books .fpf-book-cat { margin: 0; font-size: 0.75rem; }
.fpf-books .fpf-book-cat a { color: inherit; text-decoration: none; }
.fpf-book-name { font-size: 1.375rem !important; line-height: 1.2 !important; margin: 0 !important; text-align: left !important; }
.fpf-book-name a { text-decoration: none; color: var(--wp--preset--color--ink); }
.fpf-book-name a:hover { text-decoration: underline; text-underline-offset: 4px; }
.fpf-books .wc-block-components-product-price,
.fpf-books .wp-block-woocommerce-product-price { font-size: 1.375rem !important; margin: 0 !important; text-align: left !important; }
.fpf-books .wp-block-button,
.fpf-books .wc-block-components-product-button { margin-top: auto !important; justify-content: flex-start !important; align-items: flex-start !important; }
.fpf-books .wp-block-button__link,
.fpf-books .wc-block-components-product-button__button {
	background: var(--wp--preset--color--ink) !important;
	color: var(--wp--preset--color--paper) !important;
	border-radius: 0 !important;
	font-size: 0.9375rem !important;
	padding: 12px 20px !important;
	width: auto !important;
}
.fpf-books .wp-block-button__link:hover,
.fpf-books .wc-block-components-product-button__button:hover { background: var(--wp--preset--color--accent) !important; }
.fpf-books .wc-block-components-product-button .added_to_cart { margin-top: 8px; font-size: 0.875rem; }

/* Knygos puslapis */
.fpf-product .fpf-buy > * + * { margin-top: 16px; }
.fpf-product .fpf-price .wc-block-components-product-price,
.fpf-product .fpf-price { font-family: var(--wp--preset--font-family--serif); font-size: 2.25rem; font-weight: 600; }
.fpf-product form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.fpf-product form.cart .quantity input { min-height: 48px; width: 72px; border: 1px solid var(--wp--preset--color--line); text-align: center; font: inherit; }
.fpf-product form.cart button,
.fpf-product .single_add_to_cart_button {
	min-height: 48px;
	padding: 0 28px;
	border: 0;
	border-radius: 0;
	background: var(--wp--preset--color--accent) !important;
	color: #fff !important;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}
.fpf-product form.cart button:hover { background: var(--wp--preset--color--accent-dark) !important; }
.fpf-product table.variations { border: 0; margin: 0 0 8px; }
.fpf-product table.variations th, .fpf-product table.variations td { border: 0; padding: 4px 12px 4px 0; text-align: left; }
.fpf-product table.variations select { height: 44px; line-height: 1.2; padding: 0 36px 0 12px; min-width: 160px; border: 1px solid var(--wp--preset--color--line); font: inherit; background: #fff; }
.fpf-product .stock { font-size: 0.875rem; color: var(--wp--preset--color--muted); }
.fpf-details { margin-top: 32px; }
.fpf-details .wc-tabs { display: none; }
.fpf-details .woocommerce-Tabs-panel h2 { display: none; }
.fpf-details { color: var(--wp--preset--color--body); }
.fpf-product .woocommerce-product-gallery__image img { box-shadow: 0 18px 36px rgba(28, 26, 23, 0.18); }
.wp-block-gallery.fpf-gallery .wp-block-image figcaption { text-align: left !important; font-weight: 400 !important; line-height: 1.45 !important; }
.wp-block-gallery.fpf-gallery .wp-block-image:has(figcaption)::before { display: none !important; }
@media (max-width: 600px) {
	.fpf-books .wc-block-product-template,
	.fpf-books .wp-block-woocommerce-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 16px; }
	.fpf-books .fpf-book-cover, .fpf-books .wc-block-components-product-image { padding: 10px; }
	.fpf-book-name { font-size: 1.125rem !important; }
}

/* ---------- Facebook mygtukas antraštėje ---------- */
.fpf-header-tools { gap: 12px; align-items: center; }
.fpf-fb.wp-block-social-links { margin: 0; gap: 0; }
.fpf-fb .wp-social-link {
	background: transparent !important;
	color: var(--wp--preset--color--ink) !important;
	border: 1px solid var(--wp--preset--color--ink);
	border-radius: 0 !important;
}
.fpf-fb .wp-social-link a { padding: 8px 14px !important; gap: 8px; font-size: 0.875rem; font-weight: 500; align-items: center; }
.fpf-fb .wp-social-link svg { width: 18px; height: 18px; }
.fpf-fb .wp-block-social-link-label { font-size: 0.875rem; }
.fpf-fb .wp-social-link:hover { background: var(--wp--preset--color--ink) !important; color: var(--wp--preset--color--paper) !important; transform: none; }

/* ---------- Paramos mygtukas ir langas ---------- */
.fpf-btn-donate .wp-block-button__link {
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
	padding: 10px 22px;
	font-weight: 600;
}
.fpf-btn-donate .wp-block-button__link:hover { background: #fff; color: var(--wp--preset--color--accent); }

.fpf-modal { display: none; position: fixed; inset: 0; z-index: 100000; align-items: center; justify-content: center; padding: 16px; }
.fpf-modal:target { display: flex; }
.fpf-modal-backdrop { position: absolute; inset: 0; background: rgba(28, 26, 23, 0.6); }
.fpf-modal-box {
	position: relative;
	background: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--ink);
	width: 100%;
	max-width: 520px;
	max-height: calc(100vh - 32px);
	overflow-y: auto;
	padding: 36px 32px 28px;
	box-sizing: border-box;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
}
.fpf-modal-close {
	position: absolute; top: 8px; right: 12px;
	font-size: 2rem; line-height: 1; text-decoration: none;
	color: var(--wp--preset--color--muted); padding: 8px;
}
.fpf-modal-title { font-size: 2.25rem; margin: 8px 0 10px; }
.fpf-modal-lead { color: var(--wp--preset--color--body); margin: 0 0 20px; }

.fpf-donate-form { display: flex; flex-direction: column; gap: 14px; }
.fpf-donate-presets { border: 0; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.fpf-donate-presets legend { font-size: 0.875rem; font-weight: 600; margin-bottom: 8px; padding: 0; }
.fpf-donate-chip { position: relative; }
.fpf-donate-chip input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.fpf-donate-chip span {
	display: flex; align-items: center; justify-content: center;
	min-height: 52px; border: 1px solid var(--wp--preset--color--line); background: #fff;
	font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem; font-weight: 600;
}
.fpf-donate-chip input:checked + span { border: 2px solid var(--wp--preset--color--accent); background: #F6EFE7; }
.fpf-donate-chip input:focus-visible + span { outline: 2px solid var(--wp--preset--color--accent); outline-offset: 2px; }
.fpf-donate-own { font-size: 0.875rem; font-weight: 600; }
.fpf-donate-input { min-height: 48px; padding: 0 14px; border: 1px solid var(--wp--preset--color--line); background: #fff; font: inherit; font-size: 1rem; }
.fpf-donate-submit {
	min-height: 52px; border: 0; cursor: pointer;
	background: var(--wp--preset--color--accent); color: #fff; font: inherit; font-weight: 600; font-size: 1rem;
}
.fpf-donate-submit:hover { background: var(--wp--preset--color--accent-dark); }
.fpf-donate-note { font-size: 0.8125rem; color: var(--wp--preset--color--muted); margin: 0; }
@media (max-width: 480px) {
	.fpf-donate-presets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fpf-modal-box { padding: 32px 20px 24px; }
	.fpf-fb .wp-block-social-link-label { display: none; }
	.fpf-fb .wp-social-link a { padding: 8px 10px !important; }
}
