/*
Theme Name: ITLU — GBP Spiczyn
Description: Gminna Biblioteka Publiczna w Spiczynie. Prezentacja inspirowana poprzednią stroną, z komponentami ITLU Core i danymi pluginu ITLU.
Version: 0.1.0
Template: itlu-core
Text Domain: itlu-gbp-spiczyn
Requires at least: 7.1
Requires PHP: 8.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root {
    --itlu-color-primary: #416b89;
    --itlu-color-primary-hover: #2e526e;
    --itlu-color-secondary: #1d1e22;
    --itlu-color-link: #365f7c;
    --itlu-header-background: #ecf0fb;
    --itlu-footer-background: #1d1e22;
    --itlu-radius-md: 0;
    --itlu-radius-lg: 0;
}
body { background: #ecf0fb; }
.itlu-container { padding-inline: 28px; }
.itlu-header { border: 0; }
.itlu-header--stacked .itlu-header__branding-row { min-height: 150px; padding-block: 30px; justify-content: space-between; gap: 30px; }
.itlu-branding { gap: 22px; }
.itlu-branding__logo img { width: 85px; max-width: 85px; max-height: none; height: auto; }
.itlu-branding__title { max-width: 380px; font-size: clamp(1.2rem, 2vw, 1.6rem); line-height: 1.25; color: #2c2a25; }
.itlu-branding__description { color: #5d616b; }
.itlu-header .itlu-search { max-width: 300px; }
.itlu-header input[type="search"] { background: #fff; border: 1px solid #c7d1e0; min-height: 48px; }
.itlu-header--stacked .itlu-header__navigation-row { background: #1d1e22; padding-block: 0; }
.itlu-header--stacked .itlu-navigation--desktop { margin: 0; width: 100%; }
.itlu-navigation__list { gap: 0; justify-content: space-between; }
.itlu-navigation__list > li > a { display: block; padding: 22px 15px; color: #fff; text-decoration: none; font-weight: 650; font-size: 1rem; }
.itlu-navigation__list > .current-menu-item > a, .itlu-navigation__list > li > a:hover { background: #416b89; color: #fff; }
.itlu-navigation--desktop a:focus-visible { outline: 3px solid #fff; outline-offset: -5px; }
.home .itlu-main { padding-top: 0; }
.itlu-front-section { padding-block: 0; margin-block: 0; }
.home .itlu-main > .itlu-container { padding: 0; }
.itlu-front-section { background: #fff; }
.itlu-front-section:has(.itlu-hero-slider) { padding: 0; }
.itlu-hero-slider__slide { min-block-size: 400px; }
.itlu-hero-slider__media { right: 30%; inline-size: 70%; }
.itlu-hero-slider__media img { object-fit: cover; object-position: center; }
.itlu-hero-slider__content { padding: 0; min-height: 400px; display: flex; justify-content: flex-end; }
.itlu-hero-slider__content-inner { width: 30%; padding: 42px 32px 100px; background: #416b89; align-self: stretch; display: flex; flex-direction: column; justify-content: center; }
.itlu-hero-slider__content-inner :is(h1,h2) { color: #fff; font-size: clamp(1.5rem, 2.5vw, 2.2rem); line-height: 1.2; }
.itlu-hero-slider__actions:empty { display: none; }
.itlu-hero-slider__footer { position: absolute; bottom: 24px; right: 0; left: auto; width: 30%; padding-inline: 20px; flex-wrap: wrap; justify-content: center; gap: 12px; }
.itlu-hero-slider__dots { flex-wrap: wrap; }
.itlu-front-section:has(.itlu-quick-links) { background: #1d1e22; padding: 0; }
.itlu-quick-links ul { margin: 0; gap: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.itlu-quick-links a { text-decoration: none; border: 0; border-right: 1px solid #45484e; border-radius: 0; background: #1d1e22; color: #fff; padding: 28px 32px; min-height: 150px; box-shadow: none; }
.itlu-quick-links a:hover { background: #2e526e; color: #fff; transform: none; }
.itlu-quick-links a:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.itlu-quick-links a :where(h2,h3,strong,span,p) { color: inherit; }
.itlu-quick-links svg { color: #c8dfef; fill: currentColor; width: 36px; height: 36px; }
.itlu-quick-links strong { font-size: 1.2rem; }
.itlu-quick-links span { font-size: .9rem; }
.itlu-front-section:has(.itlu-news) { padding: 38px 32px 48px; border-top: 7px solid #416b89; }
.itlu-section-header { margin-bottom: 28px; }
.itlu-section-header__title { font-size: 1.9rem; }
.itlu-news--list-sidebar.has-sidebar { grid-template-columns: minmax(0, 1fr) 290px; gap: 36px; }
.itlu-post-card--horizontal { padding: 0 0 30px; border: 0; border-bottom: 1px dotted #a3afbe; border-radius: 0; box-shadow: none; gap: 24px; }
.itlu-post-card--horizontal.has-media { grid-template-columns: 160px minmax(0, 1fr); }
.itlu-post-card__media { align-self: start; border-radius: 0; }
.itlu-post-card__media img { aspect-ratio: 4 / 3; object-fit: cover; }
.itlu-post-card__title { font-size: 1.35rem; line-height: 1.25; }
.itlu-post-card__title a { color: #2c2a25; }
.itlu-post-card__excerpt { font-size: .95rem; line-height: 1.65; }
.itlu-sidebar { background: #f1f4fa; padding: 24px; }
.itlu-sidebar .widget_nav_menu { margin: -24px -24px 28px; padding: 24px; background: #416b89; color: #fff; }
.itlu-sidebar .widget_nav_menu :where(a,h2,h3) { color: #fff; }
.itlu-sidebar .widget_nav_menu ul { list-style: none; padding: 0; margin: 0; }
.itlu-sidebar .widget_nav_menu a { display: block; padding: 12px 0; border-bottom: 1px solid #ffffff40; text-decoration: none; line-height: 1.4; }
.itlu-sidebar .widget_nav_menu a:is(:hover,:focus-visible) { text-decoration: underline; }
.itlu-sidebar .widget_nav_menu .sub-menu { padding-left: 15px; font-size: .9rem; }
.itlu-page-header { padding-block: 38px; background: #e3eaf6; border-bottom: 5px solid #416b89; }
.itlu-page-header h1 { max-width: 100%; overflow-wrap: anywhere; font-size: clamp(1.8rem, 3vw, 2.5rem); }
.itlu-main > .itlu-container { background: #fff; padding-block: 32px; }
.itlu-content :where(img,video,iframe) { max-width: 100%; height: auto; }
.itlu-content table { display: block; max-width: 100%; overflow-x: auto; }
.itlu-footer { margin-top: 0; border-top: 6px solid #416b89; color: #f0f2f7; }
.itlu-footer :where(a,h2,h3,.itlu-footer__identity) { color: #fff; }
.itlu-footer .itlu-contact { color: #f0f2f7; }
.itlu-footer .itlu-contact__location { border: 0; background: transparent; }
.itlu-footer .itlu-contact--hours:not(:has(table)) { display: none; }
.itlu-mobile-menu { --itlu-mobile-menu-breakpoint: 64rem; }
@media (max-width: 63.99rem) {
    .itlu-header .itlu-navigation--desktop { display: none; }
    .itlu-mobile-menu { display: block; }
    .itlu-mobile-menu.is-enhanced .itlu-mobile-menu__toggle { display: inline-flex; color: #fff; }
    .itlu-mobile-menu.is-open .itlu-mobile-menu__close { display: inline-flex; }
    .itlu-header--stacked .itlu-header__navigation-row { padding-block: 10px; justify-content: flex-end; }
    .itlu-mobile-menu--drawer.is-enhanced .itlu-mobile-menu__panel { position: fixed; inset: 0 0 0 auto; width: min(90vw, 24rem); z-index: 40; padding: 1rem; overflow-y: auto; background: #fff; }
    .itlu-hero-slider__content-inner { width: 35%; padding-inline: 24px; }
    .itlu-hero-slider__media { right: 35%; inline-size: 65%; }
    .itlu-hero-slider__footer { width: 35%; }
    .itlu-news--list-sidebar.has-sidebar { grid-template-columns: minmax(0, 1fr) 250px; gap: 24px; }
    .itlu-post-card--horizontal.has-media { grid-template-columns: 120px minmax(0, 1fr); }
}
@media (max-width: 48rem) {
    .itlu-header--stacked .itlu-header__branding-row { min-height: 0; padding-block: 22px; }
    .itlu-header .itlu-search { display: none; }
    .itlu-branding__logo img { width: 68px; }
    .itlu-hero-slider__slide { min-block-size: 0; }
    .itlu-hero-slider__media { position: relative; inset: auto; inline-size: 100%; block-size: auto; height: auto; aspect-ratio: 16 / 10; }
    .itlu-hero-slider__content { min-height: 0; }
    .itlu-hero-slider__content-inner { width: 100%; padding: 24px; min-height: 115px; }
    .itlu-hero-slider__content-inner :is(h1,h2) { margin: 0; }
    .itlu-hero-slider__footer { position: static; width: 100%; padding: 12px; background: #416b89; }
    .itlu-quick-links a { padding: 22px 16px; min-height: 135px; }
    .itlu-news--list-sidebar.has-sidebar { grid-template-columns: minmax(0, 1fr); }
    .itlu-news .itlu-sidebar { margin-top: 20px; }
}
@media (max-width: 35rem) {
    .itlu-container { padding-inline: 18px; }
    .itlu-branding { gap: 14px; }
    .itlu-branding__title { font-size: 1.1rem; }
    .itlu-quick-links ul { grid-template-columns: 1fr; }
    .itlu-quick-links a { min-height: 0; padding: 20px 24px; border-right: 0; border-bottom: 1px solid #45484e; }
    .itlu-front-section:has(.itlu-news) { padding: 28px 18px; }
    .itlu-post-card--horizontal.has-media { grid-template-columns: minmax(0, 1fr); }
    .itlu-post-card__media img { max-height: 240px; }
}
@media print { body { background: #fff; } }

/* Keep all five slide selectors inside the blue panel, also at tablet widths. */
.itlu-hero-slider .itlu-hero-slider__controls { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; }
.itlu-hero-slider__pagination { flex: 0 0 100%; order: 3; gap: 3px; }
.itlu-hero-slider .itlu-hero-slider__pagination-item { flex: 1; min-inline-size: 36px; padding-inline: 4px; }
.itlu-hero-slider__counter { margin: 0; }
.itlu-hero-slider__slide--right .itlu-hero-slider__content-inner { text-align: left; }
.itlu-hero-slider__slide--right .itlu-hero-slider__content-inner :where(h1,h2) { margin-inline-start: 0; }
.itlu-sidebar .itlu-contact > h2 { font-size: 1.15rem; line-height: 1.35; margin-block: 16px; }
.itlu-sidebar .itlu-contact__location > h3 { display: none; }
.itlu-header .search-form { display: flex; align-items: stretch; }
.itlu-header .search-form label { flex: 1; }
.itlu-header .search-field { width: 100%; }
.itlu-header .search-submit { margin: 0; }
@media (max-width: 48rem) {
    .itlu-hero-slider .itlu-hero-slider__controls { justify-content: center; }
    .itlu-hero-slider__pagination { flex-basis: auto; flex-grow: 1; }
}

.itlu-hero-slider .itlu-hero-slider__content { padding: 0; }
.itlu-mobile-menu.is-enhanced .itlu-mobile-menu__toggle { background: #416b89; color: #fff; border-color: #416b89; }
.itlu-mobile-menu__toggle svg { fill: currentColor; }
