/* Sekcje strony głównej (kamera + pogoda, opinie, FAQ, aktualności) — wzorowane na stronie referencyjnej. Tokeny: site-header.css */
.cms-section__header-main, .section-intro__main { min-width: 0; }
.cms-section__header-actions, .section-intro__actions { display: flex; justify-content: flex-end; align-self: end; }
.section-intro__support { grid-column: 1 / -1; }
.section-header-action { display: inline-flex; align-items: center; gap: 0.6rem; padding: 0.85rem 1.15rem; border: 1px solid rgba(22, 53, 28, 0.14); border-radius: 999px; background: rgba(255, 255, 255, 0.92); color: var(--color-primary-deep); font-family: var(--font-body); font-size: 0.92rem; font-weight: var(--font-weight-semibold); line-height: 1.2; text-decoration: none; white-space: nowrap; transition: border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease; }
.section-header-action:hover, .section-header-action:focus-visible { border-color: rgba(99, 163, 34, 0.35); box-shadow: 0 1rem 2rem -1.4rem rgba(18, 52, 28, 0.35); color: var(--color-primary-deep); text-decoration: none; transform: translateY(-0.1rem); }
.section-header-action svg { width: 1rem; height: 1rem; overflow: visible; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width: 767.98px) { .cms-section__header--with-action, .home-section__header--with-action { grid-template-columns: 1fr; } }
@media (max-width: 767.98px) { .cms-section__header-actions, .section-intro__actions { justify-content: flex-start; } }
@media (max-width: 767.98px) { .section-header-action { white-space: normal; } }
.home-section__controls { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; }
.home-section__controls--compact { margin-top: 1.25rem; }
.home-section__controls--reviews { width: 100%; justify-content: center; margin-top: clamp(1rem, 2.4vw, 1.5rem); }
.home-section__counter { display: inline-flex; align-items: center; gap: 0.32rem; border-radius: 999px; background: rgba(24, 24, 53, 0.06); padding: 0.7rem 1rem; color: var(--color-primary-deep); font-family: var(--font-display); font-size: 0.82rem; font-weight: var(--font-weight-semibold); letter-spacing: 0.14em; }
.home-section__nav { display: inline-flex; align-items: center; gap: 0.5rem; }
.home-section__nav-button { display: inline-flex; width: 3rem; height: 3rem; align-items: center; justify-content: center; border: 1px solid rgba(24, 24, 53, 0.12); border-radius: 999px; background: #ffffff; color: var(--color-primary-deep); box-shadow: 0 16px 28px -24px rgba(24, 24, 53, 0.5); transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease; }
.home-section__nav-button:hover, .home-section__nav-button:focus-visible { transform: translateY(-2px); border-color: rgba(24, 24, 53, 0.22); color: var(--color-primary-deep); }
.home-section__nav-button:disabled { opacity: 0.45; cursor: not-allowed; transform: none; box-shadow: none; }
.home-section__nav-button--accent { border-color: var(--color-action-accent); background: var(--color-action-accent); color: var(--color-action-accent-text); }
.home-section__nav-button--accent:hover, .home-section__nav-button--accent:focus-visible { border-color: var(--color-action-accent-hover); background: var(--color-action-accent-hover); color: var(--color-action-accent-text); }
.home-panel { border: 1px solid var(--home-border-soft); border-radius: var(--home-panel-radius); box-shadow: var(--home-shadow-soft); }
.home-panel--paper { background: var(--home-surface-base); padding: clamp(1.5rem, 4vw, 3rem); box-shadow: var(--home-inner-shadow), var(--home-shadow-soft); }
.home-panel--warm, .home-panel--tickets { background: var(--home-surface-muted); padding: clamp(1.5rem, 4vw, 3rem); box-shadow: var(--home-inner-shadow), var(--home-shadow-soft); }
.home-panel--media-frame, .home-panel--location-map { overflow: hidden; background: var(--home-surface-base); padding: clamp(1rem, 2.5vw, 1.5rem); }
.home-panel--map { overflow: hidden; background: var(--home-surface-base); padding: clamp(1rem, 2.5vw, 1.5rem); }
.home-media-layout { display: grid; gap: 1rem; }
.home-media-layout--split { grid-template-columns: minmax(18rem, 21rem) minmax(0, 1fr); align-items: stretch; }
.home-media-layout__weather { display: grid; gap: 0.8rem; padding: 1.15rem 1.2rem; border-radius: 1.35rem; background: linear-gradient(135deg, rgba(11, 57, 30, 0.96), rgba(45, 86, 56, 0.92)); color: #ffffff; box-shadow: 0 24px 44px -34px rgba(11, 57, 30, 0.62); }
.home-media-layout__weather-list { display: grid; gap: 0.75rem; }
.home-media-layout__weather-item.home-media-layout__weather-item--desktop-extra { display: none; }
.home-media-layout__weather-item { display: grid; gap: 0.7rem; padding: 0.85rem 0.95rem; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 1rem; background: rgba(255, 255, 255, 0.08); }
.home-media-layout__weather-head, .home-media-layout__weather-main { display: flex; align-items: center; justify-content: space-between; gap: 0.9rem; }
.home-media-layout__weather-label-group { display: inline-flex; align-items: baseline; gap: 0.35rem; min-width: 0; }
.home-media-layout__weather-label { color: rgba(255, 255, 255, 0.82); font-family: var(--font-heading); font-size: 0.98rem; font-weight: 600; line-height: 1.25; }
.home-media-layout__weather-weekday { color: rgba(255, 255, 255, 0.66); font-family: var(--font-body); font-size: 0.8rem; line-height: 1.2; }
.home-media-layout__weather-date { color: rgba(255, 255, 255, 0.68); font-family: var(--font-body); font-size: 0.82rem; line-height: 1.2; white-space: nowrap; }
.home-media-layout__weather-value { display: inline-flex; align-items: center; gap: 0.55rem; justify-content: flex-end; text-align: right; }
.home-media-layout__weather-value .topbar__weather-icon { width: 1.25rem; height: 1.25rem; }
.home-media-layout__weather-meta { display: inline-flex; align-items: center; justify-content: flex-end; gap: 0.85rem; flex-wrap: wrap; }
.home-media-layout__weather-detail { display: inline-flex; align-items: baseline; gap: 0.3rem; color: rgba(255, 255, 255, 0.92); font-family: var(--font-heading); font-size: 0.88rem; font-weight: 600; line-height: 1.2; }
.home-media-layout__weather-detail-icon { display: inline-flex; width: 0.95rem; height: 0.95rem; align-items: center; justify-content: center; color: rgba(255, 255, 255, 0.72); flex: 0 0 auto; }
.home-media-layout__weather-detail-svg { width: 100%; height: 100%; }
@media (max-width: 575.98px) { .home-media-layout__weather-head, .home-media-layout__weather-main { flex-direction: column; align-items: flex-start; } }
@media (max-width: 575.98px) { .home-media-layout__weather-meta, .home-media-layout__weather-value { justify-content: flex-start; } }
.home-media-layout__camera { display: grid; overflow: hidden; border: 1px solid rgba(22, 54, 30, 0.08); border-radius: 1.35rem; background: rgba(24, 24, 53, 0.04); }
.home-media-layout__camera .home-wysiwyg--media { height: 100%; }
.home-media-layout__notes { margin-top: 0.5rem; }
.widget-accordion, .widget-accordion .accordion { display: grid; gap: 1rem; }
.widget-accordion .accordion-item { overflow: hidden; border: 1px solid var(--home-border-soft); border-radius: 1.25rem; background: rgba(255, 255, 255, 0.96); box-shadow: 0 18px 36px -30px rgba(24, 24, 53, 0.2); }
.widget-accordion .accordion-button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 1rem; border: 0; background: transparent; padding: 1.15rem 1.25rem; color: var(--color-primary-deep); font-family: var(--font-heading); font-size: 1rem; font-weight: var(--font-weight-semibold); text-align: left; }
.widget-accordion .accordion-button::after { content: '+'; flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: auto; height: auto; margin-left: 0; font-size: 1.25rem; line-height: 1; background: none; background-image: none; transform: none; }
.widget-accordion .accordion-button:not(.collapsed)::after { content: '\2212'; transform: none; }
.widget-accordion .accordion-button:focus-visible { outline: 2px solid rgba(11, 89, 54, 0.48); outline-offset: -2px; }
.widget-accordion .accordion-body { padding: 0 1.25rem 1.2rem; color: var(--color-text-muted); }
.widget-accordion .accordion-body > *:first-child { margin-top: 0; }
.widget-accordion .accordion-body > *:last-child { margin-bottom: 0; }
.home-panel--reviews { position: relative; background: radial-gradient(circle at top right, rgba(226, 235, 221, 0.82), transparent 30%), linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 246, 0.96)); }
.home-media-layout__camera iframe { display: block; width: 100%; height: 100%; min-height: 0; border-radius: 0; }
.home-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.home-review-card--structured { display: grid; gap: 1rem; align-content: start; min-height: 100%; }
.home-review-card__meta { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; }
.home-review-card__rating { display: inline-flex; align-items: center; gap: 0.2rem; color: #c88719; }
.home-review-card__star-icon { width: 0.95rem; height: 0.95rem; }
.home-review-card__platform { color: rgba(24, 24, 53, 0.58); font-size: 0.82rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.home-review-card__quote { margin: 0; color: rgba(24, 24, 53, 0.8); font-size: 0.98rem; line-height: 1.72; }
.home-review-card__quote p { margin: 0; }
.home-review-card__footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 0.75rem; margin-top: auto; padding-top: 0.25rem; }
.home-review-card__author { color: var(--color-primary-deep); font-weight: 700; }
.home-review-card__time { color: rgba(24, 24, 53, 0.62); font-size: 0.9rem; white-space: nowrap; }
.home-section__nav-icon { width: 1rem; height: 1rem; }
.home-section__nav-button:focus-visible { outline: 2px solid rgba(11, 89, 54, 0.48); outline-offset: 3px; }
.home-content-slider__track, .home-review-grid.home-content-slider__track, .home-wysiwyg .row.home-content-slider__track, .home-wysiwyg ul.home-content-slider__track { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - ((var(--home-slider-columns, 1) - 1) * 1rem)) / var(--home-slider-columns, 1)); gap: 1rem; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scroll-behavior: smooth; scrollbar-width: none; padding: 0; }
.home-review-card strong { display: block; margin-bottom: 0.65rem; font-family: var(--font-heading); font-size: 1.05rem; font-weight: 750; }
.home-review-card { gap: 0.75rem; }
.home-review-card p { margin: 0; color: var(--color-text-muted); }
.home-review-card p::before { content: "\201C"; color: var(--color-accent); font-size: 1.4em; line-height: 0; }
.home-wysiwyg--map iframe, .home-wysiwyg--media iframe { min-height: min(70vw, 34rem); }
.home-news-grid, .cms-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.cms-news-grid--listing { margin-bottom: clamp(2rem, 4vw, 3rem); }
.home-news-grid__item { position: relative; min-width: 0; }
.home-news-grid__card { display: grid; height: 100%; overflow: hidden; border: 1px solid var(--home-border-soft); border-radius: var(--home-card-radius); background: rgba(255, 255, 255, 0.98); color: inherit; text-decoration: none; box-shadow: 0 24px 46px -36px rgba(24, 24, 53, 0.34); transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease; }
.home-news-grid__card:hover, .home-news-grid__card:focus-visible { transform: translateY(-2px); border-color: var(--home-border-strong); box-shadow: var(--home-shadow-strong); }
.home-news-grid__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #eef4e8; }
.home-news-grid__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.35s ease; }
.home-news-grid__card:hover .home-news-grid__media img, .home-news-grid__card:focus-visible .home-news-grid__media img { transform: scale(1.03); }
.home-news-grid__body { display: grid; gap: 0.65rem; padding: 1.15rem; }
.home-news-grid__badge, .home-news-grid__cta { color: var(--color-primary-vivid); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.home-news-grid__title { color: var(--color-primary-deep); font-family: var(--font-heading); font-size: 1.05rem; font-weight: 750; line-height: 1.25; }
.cms-section .cms-news-grid + ul.pagination li a, .cms-section .cms-news-grid + ul.pagination li span, .cms-section ul.pagination li a.page-link, .cms-section ul.pagination li span.page-link { min-width: 2.75rem; min-height: 2.75rem; padding: 0.65rem 0.95rem; border-radius: 999px; background: #ffffff; color: var(--color-primary-deep); box-shadow: 0 18px 40px -34px rgba(11, 57, 30, 0.42); }
@media (max-width: 991.98px) { .home-media-layout--split { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 991.98px) { .home-media-layout__camera { aspect-ratio: 16 / 10; } }
@media (max-width: 991.98px) { .home-media-layout__camera iframe, .home-wysiwyg--media iframe { height: 100%; min-height: 0; } }
@media (max-width: 991.98px) { .home-news-grid, .cms-news-grid, .home-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .home-media-layout__weather-item.home-media-layout__weather-item--desktop-extra { display: grid; } }
@media (min-width: 992px) { .home-media-layout__camera, .home-media-layout__camera .home-wysiwyg--media, .home-media-layout__camera iframe { min-height: 100%; } }
@media (min-width: 992px) { .home-wysiwyg--media iframe, .home-media-layout__camera iframe { min-height: 0; } }
@media (max-width: 767.98px) { .home-news-grid, .cms-news-grid { grid-template-columns: minmax(0, 1fr); } }
.home-news-grid__text { color: var(--color-text-muted); font-size: 0.92rem; line-height: 1.6; }

/* Opinie (Owl): równe wysokości kart, przycięty cytat */
.home-panel--reviews .owl-carousel .owl-stage { display: flex; }
.home-panel--reviews .owl-carousel .owl-item { display: flex; }
.home-panel--reviews .home-review-card { width: 100%; display: grid; align-content: start; gap: 1rem; }
.home-panel--reviews .home-review-card__quote p { display: -webkit-box; -webkit-line-clamp: 8; line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden; }
.home-panel--reviews .home-review-card__quote p::before { content: none; }
.home-panel--reviews .home-section__controls--reviews { margin-top: 1.5rem; }
.home-review-card__star { display: inline-flex; }

/* FAQ: akordeon w panelu */
.widget-accordion-panel { margin-bottom: 0; }
.widget-accordion .accordion-button:focus { box-shadow: none; }
.widget-accordion .accordion-body { font-size: .98rem; line-height: 1.7; }

/* Aktualności + przycisk „wszystkie" */
.section-header-action { color: #17311e; background: #fff; border: 1px solid var(--home-border-soft, rgba(22,54,30,.1)); border-radius: 999px; text-decoration: none; font-weight: 700; }
.section-header-action:hover { color: #17311e; }
.home-news-grid { margin: 0; }

/* Kamera + pogoda: wysokość kamery */
.home-media-layout--split .home-media-layout__camera { min-height: 24rem; }
.home-media-layout__camera iframe { min-height: 24rem; }
.home-review-card__quote { text-align: left; padding: 0; border: 0; quotes: none; font-style: normal; }
.home-review-card__quote::before, .home-review-card__quote::after, .home-review-card__quote p::after { content: none !important; display: none !important; }
.home-review-card__footer, .home-review-card__meta { text-align: left; }
.home-review-card__author { font-weight: 700; }

/* Centrum Edukacyjno-Przyrodnicze + Aktualności (dwie kolumny, bez pustki po lewej) */
#section-617 .row { align-items: stretch; row-gap: 2rem; }
#section-617 .row > [class*="col-"] { display: flex; }
#section-617 .row > [class*="col-"] > .ge-content { width: 100%; min-width: 0; }
#section-617 .row > [class*="col-"]:first-child > .ge-content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: clamp(1.25rem, 3vw, 2.25rem); border: 1px solid var(--home-border-soft); border-radius: 1.5rem; background: rgba(255,255,255,.96); box-shadow: 0 18px 36px -30px rgba(24,24,53,.2); }
#section-617 .ge-content > h2.header { margin: 0 0 1rem; }
#section-617 .ge-content > h3 { margin: 0 0 .75rem; }
#section-617 .ge-content > p { margin: 0 0 1rem; }
#section-617 .ge-content > .button { margin-top: .5rem; }
#section-617 .group-page-slider { min-width: 0; }
#section-617 .group-page-slider .box { height: 100%; overflow: hidden; border-radius: 1.25rem; }
#section-617 .group-page-slider .figure-wrapper figure { margin: 0; aspect-ratio: 1200 / 628; overflow: hidden; border-radius: 1.25rem; }
#section-617 .group-page-slider .figure-wrapper img { width: 100%; height: 100%; object-fit: cover; display: block; }
#section-617 .group-page-slider .box-content { padding: .9rem .25rem 0; text-align: left; }
#section-617 .group-page-slider .box-content-header { margin: 0 0 .5rem; font-size: 1.05rem; line-height: 1.3; }
#section-617 .group-page-slider .box-content-short-text { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: .92rem; line-height: 1.55; }
#section-617 .group-page-slider .text-center { text-align: left !important; margin-top: .6rem; }
@media (max-width: 991px) { #section-617 .row > [class*="col-"] { display: block; } }

/* Galeria: pełna siatka z zaokrąglonymi zdjęciami */
.group-media-grid { display: grid; grid-template-columns: repeat(var(--gm-cols-m, 2), minmax(0, 1fr)); gap: .75rem; margin: 0 0 1rem; }
@media (min-width: 576px) { .group-media-grid { grid-template-columns: repeat(var(--gm-cols-t, 3), minmax(0, 1fr)); gap: 1rem; } }
@media (min-width: 992px) { .group-media-grid { grid-template-columns: repeat(var(--gm-cols-d, 4), minmax(0, 1fr)); } }
.group-media-grid__item { display: block; overflow: hidden; border-radius: 1.25rem; aspect-ratio: 4 / 3; background: #eef3e8; }
.group-media-grid__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.group-media-grid__item:hover img { transform: scale(1.05); }

/* Przyciski w treści – spójne z przyciskami slidera (zielona pastylka) */
.page-template a.button, .page-template .section a.button, .article a.button, .section a.button {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3rem; padding: .85rem 1.6rem;
  border: 0; border-radius: 999px; background: #63a322; color: #fff; font-family: var(--font-text, 'Onest Variable', sans-serif);
  font-size: .95rem; font-weight: 700; line-height: 1.2; text-decoration: none; text-align: center;
  box-shadow: 0 18px 30px -22px rgba(0,0,0,.45); transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.page-template a.button:hover, .page-template a.button:focus-visible, .article a.button:hover, .article a.button:focus-visible, .section a.button:hover, .section a.button:focus-visible {
  background: #4f8f14; color: #fff; transform: translateY(-1px); outline: 0;
}
.page-template a.button:focus-visible, .section a.button:focus-visible { box-shadow: 0 0 0 3px rgba(99,163,34,.35); }

/* FAQ: dwie niezależne kolumny (rozwinięcie w jednej nie robi dziury w drugiej) */
.widget-accordion .accordion { display: grid; grid-template-columns: minmax(0, 1fr); gap: .6rem; }
.widget-accordion .accordion .widget-accordion__col { display: flex; flex-direction: column; gap: .6rem; min-width: 0; }
@media (min-width: 992px) {
  .widget-accordion .accordion { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 1rem; }
}
.widget-accordion, .widget-accordion .accordion, .widget-accordion [class^="widget-accordion-id-"] { border: 0 !important; }
.widget-accordion .accordion-collapse { border: 0; }
.widget-accordion .accordion-body { border: 0; border-top: 0; }
.widget-accordion .accordion-body a.button { margin-top: .25rem; }

/* Komunikat o godzinach w święto (sekcja godzin na stronie głównej) */
.hours-special-notice { display: table; margin: 1.1rem auto 0; padding: .55rem 1.1rem; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; background: rgba(255,255,255,.14); color: #fff; font-size: .95rem; font-weight: 600; line-height: 1.35; text-align: center; backdrop-filter: blur(6px); }

/* ===== Poppins: nagłówki i teksty treści strony (poza menu, stopką i sliderem) ===== */
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 400; src: url("/fonts/poppins/poppins-latin-ext-400.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 400; src: url("/fonts/poppins/poppins-latin-400.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 500; src: url("/fonts/poppins/poppins-latin-ext-500.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 500; src: url("/fonts/poppins/poppins-latin-500.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 600; src: url("/fonts/poppins/poppins-latin-ext-600.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 600; src: url("/fonts/poppins/poppins-latin-600.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 700; src: url("/fonts/poppins/poppins-latin-ext-700.woff2") format("woff2"); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Poppins"; font-style: normal; font-display: swap; font-weight: 700; src: url("/fonts/poppins/poppins-latin-700.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
.page-template, .page-template :where(h1, h2, h3, h4, h5, h6, p, li, span, a, blockquote, button, small, strong, em, time, figcaption, div),
.article :where(h1, h2, h3, h4, h5, h6, p, li, span, a, blockquote, button, small, strong, em, time, figcaption) { font-family: "Poppins", sans-serif; }
.page-template :where(h1, h2, h3, h4, h5, h6, .header, .header span, .box-content-header, .home-news-grid__title, .accordion-button) { font-family: "Poppins", sans-serif; letter-spacing: -.005em; }
.page-template .location-map__canvas *, .page-template .leaflet-container, .page-template .maplibregl-map { font-family: inherit; }
.page-template svg, .page-template i[class*="fa"] { font-family: inherit; }

/* Przycisk „Kup bilet(y)” z ikoną biletu */
.page-template a.button[href*="kup-bilet"]::before { content: ""; flex: none; width: 1.15em; height: 1.15em; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M1.5%206.375c0-1.036.84-1.875%201.875-1.875h17.25c1.035%200%201.875.84%201.875%201.875v3.026a.75.75%200%200%201-.375.65%202.249%202.249%200%200%200%200%203.898.75.75%200%200%201%20.375.65v3.026c0%201.035-.84%201.875-1.875%201.875H3.375A1.875%201.875%200%200%201%201.5%2017.625v-3.026a.75.75%200%200%201%20.374-.65%202.249%202.249%200%200%200%200-3.898.75.75%200%200%201-.374-.65V6.375Zm15-1.125a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200V6a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200v.75a.75.75%200%200%200%201.5%200v-.75Zm-.75%203a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200v-.75a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200V18a.75.75%200%200%200%201.5%200v-.75ZM6%2012a.75.75%200%200%201%20.75-.75H12a.75.75%200%200%201%200%201.5H6.75A.75.75%200%200%201%206%2012Zm.75%202.25a.75.75%200%200%200%200%201.5h3a.75.75%200%200%200%200-1.5h-3Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M1.5%206.375c0-1.036.84-1.875%201.875-1.875h17.25c1.035%200%201.875.84%201.875%201.875v3.026a.75.75%200%200%201-.375.65%202.249%202.249%200%200%200%200%203.898.75.75%200%200%201%20.375.65v3.026c0%201.035-.84%201.875-1.875%201.875H3.375A1.875%201.875%200%200%201%201.5%2017.625v-3.026a.75.75%200%200%201%20.374-.65%202.249%202.249%200%200%200%200-3.898.75.75%200%200%201-.374-.65V6.375Zm15-1.125a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200V6a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200v.75a.75.75%200%200%200%201.5%200v-.75Zm-.75%203a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200v-.75a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200V18a.75.75%200%200%200%201.5%200v-.75ZM6%2012a.75.75%200%200%201%20.75-.75H12a.75.75%200%200%201%200%201.5H6.75A.75.75%200%200%201%206%2012Zm.75%202.25a.75.75%200%200%200%200%201.5h3a.75.75%200%200%200%200-1.5h-3Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E") center / contain no-repeat; }

/* Intro (sekcja 613): treść wyśrodkowana w pionie względem galerii */
#section-613 .row { align-items: center; }
#section-613 .row > [class*="col-"] { display: flex; flex-direction: column; justify-content: center; }
#section-613 .ge-content > h2.header { margin-top: 0; }

/* Galeria bento: duże pierwsze zdjęcie, siatka zawsze pełna (12 zdjęć) */
.group-media-grid--bento { grid-auto-flow: dense; }
.group-media-grid--bento .group-media-grid__item:first-child { grid-column: span 2; grid-row: span 2; aspect-ratio: auto; }
@media (max-width: 575.98px) {
  .group-media-grid--bento .group-media-grid__item:first-child { grid-row: span 1; aspect-ratio: 2 / 1; }
  .group-media-grid--bento .group-media-grid__item:last-child { grid-column: span 2; aspect-ratio: 2 / 1; }
}

/* Lightbox (blueimp): zaokrąglone zdjęcie, okrągłe przyciski spójne z resztą strony */
.blueimp-gallery { background: rgba(10, 24, 14, .92); backdrop-filter: blur(6px); }
.blueimp-gallery > .slides > .slide > .slide-content { max-width: min(94vw, 1500px); max-height: 88vh; margin: auto; border-radius: 1.25rem; box-shadow: 0 30px 80px -20px rgba(0,0,0,.65); object-fit: contain; }
.blueimp-gallery > .prev, .blueimp-gallery > .next, .blueimp-gallery > .close, .blueimp-gallery > .play-pause {
  position: absolute; display: grid; place-items: center; width: 3rem; height: 3rem; margin: 0; padding: 0; border: 0; border-radius: 999px;
  background: rgba(255,255,255,.14); color: #fff; font-size: 0; line-height: 1; opacity: 1; text-shadow: none; cursor: pointer;
  backdrop-filter: blur(8px); transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.blueimp-gallery > .prev:hover, .blueimp-gallery > .next:hover, .blueimp-gallery > .close:hover, .blueimp-gallery > .play-pause:hover,
.blueimp-gallery > .prev:focus-visible, .blueimp-gallery > .next:focus-visible, .blueimp-gallery > .close:focus-visible { background: #63a322; color: #fff; outline: 0; }
.blueimp-gallery > .prev:focus-visible, .blueimp-gallery > .next:focus-visible, .blueimp-gallery > .close:focus-visible { box-shadow: 0 0 0 3px rgba(255,255,255,.55); }
.blueimp-gallery > .prev svg, .blueimp-gallery > .next svg, .blueimp-gallery > .close svg { width: 1.4rem; height: 1.4rem; }
.blueimp-gallery > .prev { left: 1.25rem; top: 50%; margin-top: -1.5rem; }
.blueimp-gallery > .next { right: 1.25rem; left: auto; top: 50%; margin-top: -1.5rem; }
.blueimp-gallery > .close { top: 1.25rem; right: 1.25rem; left: auto; width: 3.1rem; height: 3.1rem; background: rgba(255,255,255,.2); }
.blueimp-gallery > .play-pause { right: 1.25rem; bottom: 1.25rem; }
.blueimp-gallery > .title { font-family: "Poppins", sans-serif; }
@media (max-width: 575.98px) {
  .blueimp-gallery > .prev, .blueimp-gallery > .next { width: 2.6rem; height: 2.6rem; margin-top: -1.3rem; }
  .blueimp-gallery > .prev { left: .6rem; } .blueimp-gallery > .next { right: .6rem; }
  .blueimp-gallery > .close { top: .75rem; right: .75rem; }
  .blueimp-gallery > .slides > .slide > .slide-content { max-width: 96vw; border-radius: 1rem; }
}

/* Poppins – wymuszenie ponad wcześniejsze reguły typografii (tylko treść strony) */
.page-template :where(h1, h2, h3, h4, h5, h6, p, li, span, a, blockquote, button, small, strong, em, time, figcaption, div, label, td, th) { font-family: "Poppins", sans-serif !important; }
.page-template :where(.location-map__canvas, .location-map__canvas *, .maplibregl-map, .maplibregl-map *, .leaflet-container, .leaflet-container *) { font-family: "Poppins", sans-serif !important; }
.page-template :where(svg, svg *, i[class*="fa"], .fa, [class*="icon"]) { font-family: inherit !important; }

/* Intro: galeria mniejsza względem tekstu (tekst 58% / galeria 42%) */
@media (min-width: 992px) {
  #section-613 .row > [class*="col-"]:first-child { flex: 0 0 auto; width: 58%; padding-right: clamp(1.5rem, 4vw, 4rem); }
  #section-613 .row > [class*="col-"]:last-child { flex: 0 0 auto; width: 42%; }
  #section-613 .group-media-grid { gap: .6rem; }
}
.group-media-grid--bento .group-media-grid__item { border-radius: 1rem; }

/* Komunikat o święcie: zwykły tekst, bez plakietki */
.hours-special-notice { display: block; margin: .9rem auto 0; padding: 0; border: 0; border-radius: 0; background: none; backdrop-filter: none; color: rgba(255,255,255,.92); font-size: 1rem; font-weight: 500; text-align: center; }

/* Bento 4 kolumny: 4×4 = 16 komórek (duże 2×2 + jedno szerokie 2×1 + 10 małych) */
@media (min-width: 992px) {
  .group-media-grid--bento .group-media-grid__item:nth-child(8) { grid-column: span 2; aspect-ratio: auto; }
}
.group-media-grid__item { position: relative; }
.group-media-grid__item img { position: absolute; inset: 0; }
.group-media-grid--bento .group-media-grid__item:first-child, .group-media-grid--bento .group-media-grid__item:nth-child(8) { min-height: 0; }

/* Komunikat o święcie – taki sam wygląd jak linie godzin (np. „Środa – Niedziela | 10:00 – 18:00”), z odstępem */
.hours-special-notice { margin: 1.6rem auto 0; font-size: 1.6rem; line-height: 1.2; font-weight: 400; color: #fff; text-align: center; }
.hours-special-notice strong { font-weight: 700; }
@media (max-width: 767px) { .hours-special-notice { font-size: 1.15rem; margin-top: 1.25rem; } }
section p.hours-special-notice { font-size: 1.6rem !important; line-height: 1.2 !important; margin: 1.6rem auto 0 !important; color: #fff !important; }
section p.hours-special-notice strong { font-weight: 700 !important; }
@media (max-width: 767px) { section p.hours-special-notice { font-size: 1.15rem !important; } }

/* FAQ: odpowiedź – odstęp od góry, przycisk wyśrodkowany, bez podkreśleń */
.widget-accordion .accordion-body { padding-top: 1.35rem !important; }
.widget-accordion .accordion-body a, .widget-accordion .accordion-body a:hover { text-decoration: none; }
.widget-accordion .accordion-body a.button { display: flex; width: fit-content; margin: 1.25rem auto .25rem !important; }
.widget-accordion .accordion-body p > br + br { display: none; }

/* „Zobacz więcej” w kartach (atrakcje, aktualności) – pastylka jak „Kup bilety”, bez podkreślenia */
.page-template a.button-link, .page-template span.button-link { display: inline-flex; align-items: center; justify-content: center; min-height: 2.75rem; padding: .7rem 1.5rem; border: 0; border-radius: 999px; background: #63a322; color: #fff !important; font-size: .9rem; font-weight: 700; letter-spacing: 0; text-transform: none; text-decoration: none !important; box-shadow: 0 18px 30px -22px rgba(0,0,0,.45); transition: background-color .2s ease, transform .2s ease; }
.page-template a.button-link:hover, .page-template a:hover span.button-link, .page-template a.button-link:focus-visible { background: #4f8f14; color: #fff !important; transform: translateY(-1px); text-decoration: none !important; outline: 0; }
.page-template a:hover, .page-template a:focus { text-decoration: none; }
.page-template .text-center:has(> .button-link), .page-template .text-center:has(> span.button-link) { text-align: center !important; padding: 1rem 0 .25rem !important; }

/* Opinie: równe karty, tekst do lewej, stopka przy dole */
.home-panel--reviews .owl-stage { display: flex; }
.home-panel--reviews .owl-item { display: flex; float: none; }
.home-panel--reviews .home-review-card { display: flex; flex-direction: column; width: 100%; height: 100%; padding: 1.4rem 1.5rem; border: 1px solid var(--home-border-soft); border-radius: 1.25rem; background: #fff; box-shadow: 0 18px 36px -30px rgba(24,24,53,.2); }
.home-panel--reviews .home-review-card__meta { display: flex; align-items: center; justify-content: space-between; gap: .75rem; margin-bottom: 1rem; }
.home-panel--reviews .home-review-card__quote { flex: 1 1 auto; margin: 0 0 1.1rem; padding: 0; border: 0; text-align: left !important; font-size: .95rem; line-height: 1.65; color: var(--color-text-muted); }
.home-panel--reviews .home-review-card__quote p { margin: 0; text-align: left !important; display: -webkit-box; -webkit-line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden; }
.home-panel--reviews .home-review-card__footer { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding-top: .9rem; border-top: 1px solid var(--home-border-soft); }

/* === Dopracowania (kamery, opinie, nagłówki, linki tekstowe) === */
/* Mniejsze odstępy: nagłówek / podnagłówek */
.page-template header { margin-bottom: 1rem; }
.page-template header h2.header, .page-template h2.header { margin-bottom: .35rem; }
.page-template header .sub-header, .page-template h2.header + h3, .page-template header h3.sub-header { margin-top: 0; margin-bottom: .6rem; }
.page-template header .header-line { margin: .5rem 0 0; }

/* Przycisk „Zobacz więcej kamer” */
.section-more-cameras { margin: 1.5rem 0 0; text-align: center; }

/* Opinie: wszystko wyśrodkowane w poziomie */
.home-panel--reviews .home-review-card { align-items: center; text-align: center; }
.home-panel--reviews .home-review-card__meta { flex-direction: column; justify-content: center; gap: .35rem; }
.home-panel--reviews .home-review-card__rating { display: flex; justify-content: center; }
.home-panel--reviews .home-review-card__quote, .home-panel--reviews .home-review-card__quote p { text-align: center !important; }
.home-panel--reviews .home-review-card__footer { width: 100%; flex-direction: column; justify-content: center; gap: .15rem; text-align: center; }

/* „Zobacz więcej” – zwykły, pogrubiony tekst blisko opisu, bez podkreśleń (atrakcje i aktualności) */
.page-template a.button-link, .page-template span.button-link, .page-template a:hover span.button-link {
  display: inline; min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; transform: none;
  color: var(--color-primary-deep, #17311e) !important; font-size: .95rem; font-weight: 700; text-decoration: none !important; text-transform: none; letter-spacing: 0;
}
.page-template a.button-link:hover, .page-template a:hover .button-link, .page-template a.button-link:focus-visible { color: #4f8f14 !important; background: none !important; transform: none; text-decoration: none !important; }
.page-template .text-center:has(> .button-link), .page-template .text-center:has(> span.button-link) { text-align: center !important; padding: .25rem 0 1.25rem !important; margin: 0 !important; }
.page-template .group-page-attractions .short-content, .page-template .attractions_descp .short-content { margin-bottom: .35rem; }
.page-template .group-page-slider .box-content-short-text { margin-bottom: .4rem; }
.page-template .group-page-slider .text-center { text-align: center !important; margin: 0 !important; padding: 0 0 1rem !important; }

/* Brak podkreśleń w aktualnościach i tekstach kart */
.page-template .group-page-slider a, .page-template .group-page-slider a:hover, .page-template .group-page-slider a:focus,
.page-template .home-news-grid a, .page-template .home-news-grid a:hover,
.page-template a.button, .page-template a.button:hover, .page-template a.button:focus { text-decoration: none !important; }

/* Link „Pobierz aplikację na telefon” – tekst z ikoną, nie przycisk */
.page-template a.button[href*="audioprzewodnik"] { display: inline-flex !important; align-items: center; gap: .5rem; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; transform: none !important; color: #4f8f14 !important; font-weight: 700 !important; font-size: 1rem !important; }
.page-template a.button[href*="audioprzewodnik"]::before { content: ""; flex: none; width: 1.3em; height: 1.3em; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M15.75%201.5a3%203%200%200%201%203%203v15a3%203%200%200%201-3%203h-7.5a3%203%200%200%201-3-3v-15a3%203%200%200%201%203-3h7.5Zm-3.75%2017.25a.75.75%200%200%200%200%201.5h.008a.75.75%200%200%200%200-1.5H12Z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M15.75%201.5a3%203%200%200%201%203%203v15a3%203%200%200%201-3%203h-7.5a3%203%200%200%201-3-3v-15a3%203%200%200%201%203-3h7.5Zm-3.75%2017.25a.75.75%200%200%200%200%201.5h.008a.75.75%200%200%200%200-1.5H12Z%27%20clip-rule%3D%27evenodd%27%2F%3E%3C%2Fsvg%3E") center / contain no-repeat; }
.page-template a.button[href*="audioprzewodnik"]:hover, .page-template a.button[href*="audioprzewodnik"]:focus-visible { color: #17311e !important; background: none !important; }
#section-617 .group-page-slider .text-center { text-align: center !important; margin: 0 !important; padding: 0 0 1rem !important; }
#section-617 .group-page-slider .box-content { text-align: center; }
#section-617 .group-page-slider .box-content-header { text-align: center; }
#section-621 a.button[href*="audioprzewodnik"] { color: #fff !important; font-size: 1.05rem !important; }
#section-621 a.button[href*="audioprzewodnik"]:hover, #section-621 a.button[href*="audioprzewodnik"]:focus-visible { color: #d8ee9f !important; }

/* Kamera: nigdy szersza niż kolumna (mobile) */
.home-media-layout > *, .home-media-layout__camera, .home-wysiwyg--media { min-width: 0; max-width: 100%; }
.home-media-layout__camera iframe, .home-wysiwyg--media iframe { display: block; width: 100% !important; max-width: 100% !important; aspect-ratio: 16 / 9; height: auto !important; border: 0; border-radius: 1rem; }
@media (max-width: 991px) { .home-media-layout--split { grid-template-columns: minmax(0, 1fr); } }

/* Poprawki: opisy kafelków bez podkreśleń i wyśrodkowane; przycisk audioprzewodnika jako prawdziwy przycisk */
.short-content, .page-template .short-content,
a .short-content, a:hover .short-content, a:focus .short-content, a:focus-visible .short-content,
.page-template a:hover .box .short-content, .page-template a:focus .box .short-content { text-align: center !important; text-decoration: none !important; }
.short-content * { text-decoration: none !important; }

#section-621 h2, #section-621 .header { text-align: center !important; }
.page-template #section-621 a.button[href*="audioprzewodnik"] {
  display: inline-flex !important; align-items: center; justify-content: center; gap: .6rem;
  min-height: 3rem !important; padding: .8rem 1.6rem !important; margin-top: .6rem;
  border: 0 !important; border-radius: 999px !important; background: #63a322 !important; color: #fff !important;
  font-size: 1rem !important; font-weight: 700 !important; line-height: 1.2; text-decoration: none !important;
  box-shadow: 0 10px 24px -12px rgba(0,0,0,.55) !important; transform: none !important;
}
.page-template #section-621 a.button[href*="audioprzewodnik"]:hover, .page-template #section-621 a.button[href*="audioprzewodnik"]:focus-visible {
  background: #4f8f14 !important; color: #fff !important; text-decoration: none !important;
}
.page-template #section-621 a.button[href*="audioprzewodnik"]::before { width: 1.2em; height: 1.2em; }
#section-621 h2 { justify-content: center !important; }

/* Pogoda: kompaktowe pozycje (bez rozciągania); dni 6–7 tylko na szerokich ekranach */
.home-media-layout__weather-list { align-content: start; grid-auto-rows: max-content; }
.home-media-layout__weather-item.home-media-layout__weather-item--wide-extra { display: none; }
@media (min-width: 1600px) { .home-media-layout__weather-item.home-media-layout__weather-item--wide-extra { display: grid; } }
.home-media-layout__weather { align-content: stretch; }
.home-media-layout__weather-list { height: 100%; align-content: stretch; grid-auto-rows: 1fr; }

/* ===== Ikony we wszystkich przyciskach (data-icon ustawia site_button_icons) ===== */
.page-template a.button[data-icon]::before { content: ""; flex: none; width: 1.15em; height: 1.15em; background: currentColor; -webkit-mask: var(--btn-icon) center / contain no-repeat; mask: var(--btn-icon) center / contain no-repeat; }
.page-template a.button[data-icon="ticket"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M1.5%206.375c0-1.036.84-1.875%201.875-1.875h17.25c1.035%200%201.875.84%201.875%201.875v3.026a.75.75%200%200%201-.375.65%202.249%202.249%200%200%200%200%203.898.75.75%200%200%201%20.375.65v3.026c0%201.035-.84%201.875-1.875%201.875H3.375A1.875%201.875%200%200%201%201.5%2017.625v-3.026a.75.75%200%200%201%20.374-.65%202.249%202.249%200%200%200%200-3.898.75.75%200%200%201-.374-.65V6.375Zm15-1.125a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200V6a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200v.75a.75.75%200%200%200%201.5%200v-.75Zm-.75%203a.75.75%200%200%201%20.75.75v.75a.75.75%200%200%201-1.5%200v-.75a.75.75%200%200%201%20.75-.75Zm.75%204.5a.75.75%200%200%200-1.5%200V18a.75.75%200%200%200%201.5%200v-.75ZM6%2012a.75.75%200%200%201%20.75-.75H12a.75.75%200%200%201%200%201.5H6.75A.75.75%200%200%201%206%2012Zm.75%202.25a.75.75%200%200%200%200%201.5h3a.75.75%200%200%200%200-1.5h-3Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="sparkles"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M9%204.5a.75.75%200%200%201%20.721.544l.813%202.846a3.75%203.75%200%200%200%202.576%202.576l2.846.813a.75.75%200%200%201%200%201.442l-2.846.813a3.75%203.75%200%200%200-2.576%202.576l-.813%202.846a.75.75%200%200%201-1.442%200l-.813-2.846a3.75%203.75%200%200%200-2.576-2.576l-2.846-.813a.75.75%200%200%201%200-1.442l2.846-.813A3.75%203.75%200%200%200%207.466%207.89l.813-2.846A.75.75%200%200%201%209%204.5ZM18%201.5a.75.75%200%200%201%20.728.568l.258%201.036c.236.94.97%201.674%201.91%201.91l1.036.258a.75.75%200%200%201%200%201.456l-1.036.258c-.94.236-1.674.97-1.91%201.91l-.258%201.036a.75.75%200%200%201-1.456%200l-.258-1.036a2.625%202.625%200%200%200-1.91-1.91l-1.036-.258a.75.75%200%200%201%200-1.456l1.036-.258a2.625%202.625%200%200%200%201.91-1.91l.258-1.036A.75.75%200%200%201%2018%201.5ZM16.5%2015a.75.75%200%200%201%20.712.513l.394%201.183c.15.447.5.799.948.948l1.183.395a.75.75%200%200%201%200%201.422l-1.183.395c-.447.15-.799.5-.948.948l-.395%201.183a.75.75%200%200%201-1.422%200l-.395-1.183a1.5%201.5%200%200%200-.948-.948l-1.183-.395a.75.75%200%200%201%200-1.422l1.183-.395c.447-.15.799-.5.948-.948l.395-1.183A.75.75%200%200%201%2016.5%2015Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="users"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M8.25%206.75a3.75%203.75%200%201%201%207.5%200%203.75%203.75%200%200%201-7.5%200ZM15.75%209.75a3%203%200%201%201%206%200%203%203%200%200%201-6%200ZM2.25%209.75a3%203%200%201%201%206%200%203%203%200%200%201-6%200ZM6.31%2015.117A6.745%206.745%200%200%201%2012%2012a6.745%206.745%200%200%201%206.709%207.498.75.75%200%200%201-.372.568A12.696%2012.696%200%200%201%2012%2021.75c-2.305%200-4.47-.612-6.337-1.684a.75.75%200%200%201-.372-.568%206.787%206.787%200%200%201%201.019-4.38Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3Cpath%20d%3D%27M5.082%2014.254a8.287%208.287%200%200%200-1.308%205.135%209.687%209.687%200%200%201-1.764-.44l-.115-.04a.563.563%200%200%201-.373-.487l-.01-.121a3.75%203.75%200%200%201%203.57-4.047ZM20.226%2019.389a8.287%208.287%200%200%200-1.308-5.135%203.75%203.75%200%200%201%203.57%204.047l-.01.121a.563.563%200%200%201-.373.486l-.115.04c-.567.2-1.156.349-1.764.441Z%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="map-pin"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27m11.54%2022.351.07.04.028.016a.76.76%200%200%200%20.723%200l.028-.015.071-.041a16.975%2016.975%200%200%200%201.144-.742%2019.58%2019.58%200%200%200%202.683-2.282c1.944-1.99%203.963-4.98%203.963-8.827a8.25%208.25%200%200%200-16.5%200c0%203.846%202.02%206.837%203.963%208.827a19.58%2019.58%200%200%200%202.682%202.282%2016.975%2016.975%200%200%200%201.145.742ZM12%2013.5a3%203%200%201%200%200-6%203%203%200%200%200%200%206Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="video-camera"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M4.5%204.5a3%203%200%200%200-3%203v9a3%203%200%200%200%203%203h8.25a3%203%200%200%200%203-3v-9a3%203%200%200%200-3-3H4.5ZM19.94%2018.75l-2.69-2.69V7.94l2.69-2.69c.944-.945%202.56-.276%202.56%201.06v11.38c0%201.336-1.616%202.005-2.56%201.06Z%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="phone"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M2.25%203A.75.75%200%200%201%203%202.25h3.428c.382%200%20.713.258.806.629l1.323%205.29a.75.75%200%200%201-.26.785L6.175%2010.65a11.028%2011.028%200%200%200%205.175%205.175l1.696-2.121a.75.75%200%200%201%20.785-.26l5.29%201.323a.75.75%200%200%201%20.629.806V21a.75.75%200%200%201-.75.75h-1.5C9.492%2021.75%202.25%2014.508%202.25%205.25V3Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="food"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27m15%201.784-.796.795a1.125%201.125%200%201%200%201.591%200L15%201.784ZM12%201.784l-.796.795a1.125%201.125%200%201%200%201.591%200L12%201.784ZM9%201.784l-.796.795a1.125%201.125%200%201%200%201.591%200L9%201.784ZM9.75%207.547c.498-.021.998-.035%201.5-.042V6.75a.75.75%200%200%201%201.5%200v.755c.502.007%201.002.021%201.5.042V6.75a.75.75%200%200%201%201.5%200v.88l.307.022c1.55.117%202.693%201.427%202.693%202.946v1.018a62.182%2062.182%200%200%200-13.5%200v-1.018c0-1.519%201.143-2.829%202.693-2.946l.307-.022v-.88a.75.75%200%200%201%201.5%200v.797ZM12%2012.75c-2.472%200-4.9.184-7.274.54-1.454.217-2.476%201.482-2.476%202.916v.384a4.104%204.104%200%200%201%202.585.364%202.605%202.605%200%200%200%202.33%200%204.104%204.104%200%200%201%203.67%200%202.605%202.605%200%200%200%202.33%200%204.104%204.104%200%200%201%203.67%200%202.605%202.605%200%200%200%202.33%200%204.104%204.104%200%200%201%202.585-.364v-.384c0-1.434-1.022-2.7-2.476-2.917A49.138%2049.138%200%200%200%2012%2012.75ZM21.75%2018.131a2.604%202.604%200%200%200-1.915.165%204.104%204.104%200%200%201-3.67%200%202.605%202.605%200%200%200-2.33%200%204.104%204.104%200%200%201-3.67%200%202.605%202.605%200%200%200-2.33%200%204.104%204.104%200%200%201-3.67%200%202.604%202.604%200%200%200-1.915-.165v2.494c0%201.035.84%201.875%201.875%201.875h15.75c1.035%200%201.875-.84%201.875-1.875v-2.494Z%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="mail"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20d%3D%27M1.5%208.67v8.58A2.25%202.25%200%200%200%203.75%2019.5h16.5a2.25%202.25%200%200%200%202.25-2.25V8.67l-8.928%205.493a3.75%203.75%200%200%201-3.144%200L1.5%208.67Z%27%3E%3C%2Fpath%3E%3Cpath%20d%3D%27M22.5%206.908V6.75A2.25%202.25%200%200%200%2020.25%204.5H3.75A2.25%202.25%200%200%200%201.5%206.75v.158l9.714%205.978a2.25%202.25%200%200%200%202.572%200L22.5%206.908Z%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon="arrow-right"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%3E%3Cpath%20fill-rule%3D%27evenodd%27%20d%3D%27M12.97%203.97a.75.75%200%200%201%201.06%200l7.5%207.5a.75.75%200%200%201%200%201.06l-7.5%207.5a.75.75%200%201%201-1.06-1.06l6.22-6.22H3a.75.75%200%200%201%200-1.5h16.19l-6.22-6.22a.75.75%200%200%201%200-1.06Z%27%20clip-rule%3D%27evenodd%27%3E%3C%2Fpath%3E%3C%2Fsvg%3E"); }
.page-template a.button[data-icon] { gap: .55rem; }

/* Brak podkreśleń po najechaniu (treść strony) */
.page-template a, .page-template a:hover, .page-template a:focus, .page-template a:hover *, .page-template a:focus * { text-decoration: none !important; }

/* Opinie: imię → gwiazdki → platforma; treść wyśrodkowana w pionie i poziomie */
.home-panel--reviews .home-review-card { display: flex; flex-direction: column; align-items: center; text-align: center; }
.home-panel--reviews .home-review-card__meta { display: flex; flex-direction: column; align-items: center; gap: .3rem; margin: 0 0 .9rem; }
.home-panel--reviews .home-review-card__author { order: 1; font-size: 1.02rem; font-weight: 700; color: var(--color-primary-deep, #17311e); }
.home-panel--reviews .home-review-card__rating { order: 2; display: flex; justify-content: center; }
.home-panel--reviews .home-review-card__platform { order: 3; font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: #6b7f6f; }
.home-panel--reviews .home-review-card__quote { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; width: 100%; margin: 0 0 .9rem; text-align: center !important; }
.home-panel--reviews .home-review-card__quote p { margin: 0; text-align: center !important; }
.home-panel--reviews .home-review-card__footer { width: 100%; display: flex; justify-content: center; padding-top: .75rem; border-top: 1px solid var(--home-border-soft); }

/* Tytuł karty atrakcji: mniejsze okno, spójne kolory */
.attractions_descp .box-container .header-container, .group-page-attractions .box-container .header-container { padding: .45rem 1.1rem; border-radius: 999px; background: #fff; border: 1px solid rgba(79,143,20,.22); box-shadow: 0 10px 22px -16px rgba(11,40,20,.35); }
.attractions_descp .box-container .header-container a, .group-page-attractions .box-container .header-container a { color: #17311e; }
.attractions_descp .box-container .header-container h4, .group-page-attractions .box-container .header-container h4 { margin: 0; font-size: 1rem; line-height: 1.25; font-weight: 700; color: #2f5a0e; }
.attractions_descp .box:hover .header-container h4, .group-page-attractions .box:hover .header-container h4 { color: #4f8f14; }

/* Sekcja Centrum Edukacyjno-Przyrodnicze: bez karty, niskie, zdjęcia pod tekstem */
#section-617 .row { align-items: flex-start; }
#section-617 .row > [class*="col-"]:first-child > .ge-content { display: block; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.home-edu-photos { display: grid; grid-template-columns: 1.4fr 1fr; gap: .75rem; margin-top: 1.5rem; }
.home-edu-photos img { display: block; width: 100%; height: 14rem; object-fit: cover; border-radius: 1.1rem; }
@media (max-width: 575.98px) { .home-edu-photos img { height: 10rem; } }

/* Aktualności: równe wysokości, „Czytaj dalej” zaraz pod tekstem */
#section-617 .group-page-slider .owl-stage { display: flex; }
#section-617 .group-page-slider .owl-item { display: flex; float: none; }
#section-617 .group-page-slider .owl-item .item, #section-617 .group-page-slider .owl-item .item > a, #section-617 .group-page-slider .box { display: flex; flex-direction: column; width: 100%; height: 100%; }
#section-617 .group-page-slider .box-content { display: flex; flex-direction: column; flex: 1 1 auto; }
#section-617 .group-page-slider .box-content-properties { flex: 1 1 auto; }
#section-617 .group-page-slider .box-content-short-text { display: block; -webkit-line-clamp: unset; overflow: visible; }

/* FAQ: przycisk „Zobacz wszystkie…” */
.widget-accordion__more { margin: 1.4rem 0 0; text-align: center; }

/* Intro: film pod tekstem (miniatura → odtwarzacz po kliknięciu) */
.home-video { position: relative; margin-top: 1.5rem; border-radius: 1.25rem; overflow: hidden; aspect-ratio: 16 / 9; background: #0b2814; box-shadow: 0 24px 44px -30px rgba(11,40,20,.55); }
.home-video .yt-facade, .home-video iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.home-video .yt-facade img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.home-video .yt-facade:hover img { transform: scale(1.04); }
.yt-facade__play { position: absolute; left: 50%; top: 50%; width: 4.2rem; height: 4.2rem; margin: -2.1rem 0 0 -2.1rem; border-radius: 999px; background: #63a322; box-shadow: 0 14px 30px rgba(0,0,0,.4); transition: background-color .2s ease, transform .2s ease; }
.yt-facade__play::before { content: ""; position: absolute; left: 52%; top: 50%; border-style: solid; border-width: .8rem 0 .8rem 1.3rem; border-color: transparent transparent transparent #fff; transform: translate(-50%, -50%); }
.home-video .yt-facade:hover .yt-facade__play, .home-video .yt-facade:focus-visible .yt-facade__play { background: #4f8f14; transform: scale(1.06); }

/* ===== Nagłówek z przyciskiem udostępniania (podstrony): odstęp od hero, równe wyrównanie ===== */
.page-template .section-header-share { margin: 1.75rem 0 1.25rem; padding: 0; gap: .5rem 1rem; align-items: center; }
.page-template .section-header-share > h1.header, .page-template .section-header-share > h2.header { margin: 0; flex: 1 1 auto; min-width: 0; }
.page-template .section-header-share .section-share-btn { align-self: center; flex: none; margin: 0; }
.page-template .section-header-share .header-line { flex-basis: 100%; margin: .4rem 0 0; }
.page-template section.section:first-of-type > div > .section-container, .page-template .section-container:has(> .container > .inner-content > header.section-header-share) { padding-top: 1rem; }

/* ===== Strona Atrakcje: kafle z ikonami (zamiast czcionki FA) ===== */
.feature-icon { display: block; width: 2.9rem; height: 2.9rem; margin: 0 auto .35rem; padding: .75rem; box-sizing: content-box; border-radius: 999px; background: #eaf3df; color: #3f7a12; }
p:has(> .feature-icon) { margin-bottom: .5rem; }

/* ===== Kafle aktualności / wpisów (tiles): zaokrąglone, zielonkawe tło wchodzące pod zdjęcie ===== */
.group-page-tiles .box { position: relative; overflow: hidden; border-radius: 1.4rem; background: #eef5e6; border: 1px solid rgba(79,143,20,.14); box-shadow: 0 22px 40px -32px rgba(11,40,20,.4); transition: transform .25s ease, box-shadow .25s ease; }
.group-page-tiles .box:hover { transform: translateY(-3px); box-shadow: 0 28px 48px -30px rgba(11,40,20,.5); }
.group-page-tiles .box > a { display: flex; flex-direction: column; height: 100%; background: transparent; }
.group-page-tiles .box figure { margin: 0; border-radius: 1.4rem 1.4rem 0 0; overflow: hidden; }
.group-page-tiles .box figure img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.group-page-tiles .box .box-content { position: relative; z-index: 1; flex: 1 1 auto; display: flex; flex-direction: column; margin-top: -1.4rem; padding: 1.4rem 1.4rem 1.2rem; border-radius: 1.4rem 1.4rem 0 0; background: #eef5e6; }
.group-page-tiles .box .box-content-header { margin: 0 0 .6rem; font-size: 1.1rem; line-height: 1.3; color: #17311e; }
.group-page-tiles .box .box-content-wrapper { display: flex; flex-direction: column; flex: 1 1 auto; }
.group-page-tiles .box .box-content-short-text { flex: 1 1 auto; font-size: .93rem; line-height: 1.6; color: #44524a; display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; }
.group-page-tiles .box .text-center { margin-top: .9rem; text-align: left !important; }
.group-page-tiles .box .button-link { color: #2f5a0e !important; }
.group-page-tiles .box:hover .button-link { color: #4f8f14 !important; }
.group-page-tiles .box .box-content, .group-page-tiles .box .box-content-wrapper, .group-page-tiles .box .box-content-short-text { background: transparent !important; }
.group-page-tiles .box .box-content { background: #eef5e6 !important; text-align: left !important; box-shadow: none !important; }
.group-page-tiles .box .box-content-header, .group-page-tiles .box .box-content-short-text { text-align: left !important; }
.group-page-tiles .box .box-content-header { color: #17311e !important; }
.group-page-tiles .box .box-content h3, .group-page-tiles .box .box-content p, .group-page-tiles .box .box-content div { text-align: left !important; }

/* ===== Karty atrakcji: spójny wygląd + odznaki ===== */
.attractions_descp .box { position: relative; overflow: hidden; border-radius: 1.4rem; background: #eef5e6; border: 1px solid rgba(79,143,20,.14); box-shadow: 0 22px 40px -32px rgba(11,40,20,.4); transition: transform .25s ease, box-shadow .25s ease; }
.attractions_descp .box:hover { transform: translateY(-3px); box-shadow: 0 28px 48px -30px rgba(11,40,20,.5); }
.attractions_descp .box figure { position: relative; margin: 0; overflow: hidden; border-radius: 1.4rem 1.4rem 0 0; }
.attractions_descp .box .box-container, .attractions_descp .box .box-simple-data { background: transparent; }
.attractions_descp .box .short-content { color: #44524a; font-size: .93rem; line-height: 1.6; }
.attr-badges { position: absolute; left: .75rem; top: .75rem; z-index: 2; display: flex; flex-wrap: wrap; gap: .35rem; max-width: calc(100% - 1.5rem); }
.attr-badge { display: inline-flex; align-items: center; gap: .35rem; padding: .3rem .7rem .3rem .55rem; border-radius: 999px; background: rgba(255,255,255,.94); color: #2f5a0e; font-size: .72rem; font-weight: 700; line-height: 1.2; letter-spacing: .01em; box-shadow: 0 6px 14px -8px rgba(0,0,0,.45); backdrop-filter: blur(4px); }
.attr-badge::before { content: ""; flex: none; width: .95rem; height: .95rem; background: currentColor; -webkit-mask: var(--bi) center / contain no-repeat; mask: var(--bi) center / contain no-repeat; }
.attr-badge--paid { --bi: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M13.744%2017.736a6%206%200%201%201-7.48-7.48%27%20%2F%3E%20%3Cpath%20d%3D%27M15%206h1v4%27%20%2F%3E%20%3Cpath%20d%3D%27m6.134%2014.768.866-.5%202%203.464%27%20%2F%3E%20%3Ccircle%20cx%3D%2716%27%20cy%3D%278%27%20r%3D%276%27%20%2F%3E%3C%2Fsvg%3E"); color: #8a5a00; background: rgba(255,244,214,.96); }
.attr-badge--max { --bi: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M11.525%202.295a.53.53%200%200%201%20.95%200l2.31%204.679a2.123%202.123%200%200%200%201.595%201.16l5.166.756a.53.53%200%200%201%20.294.904l-3.736%203.638a2.123%202.123%200%200%200-.611%201.878l.882%205.14a.53.53%200%200%201-.771.56l-4.618-2.428a2.122%202.122%200%200%200-1.973%200L6.396%2021.01a.53.53%200%200%201-.77-.56l.881-5.139a2.122%202.122%200%200%200-.611-1.879L2.16%209.795a.53.53%200%200%201%20.294-.906l5.165-.755a2.122%202.122%200%200%200%201.597-1.16z%27%20%2F%3E%3C%2Fsvg%3E"); color: #fff; background: #63a322; }
.attr-badge--high { --bi: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%274%27%20%2F%3E%20%3Cpath%20d%3D%27M12%202v2%27%20%2F%3E%20%3Cpath%20d%3D%27M12%2020v2%27%20%2F%3E%20%3Cpath%20d%3D%27m4.93%204.93%201.41%201.41%27%20%2F%3E%20%3Cpath%20d%3D%27m17.66%2017.66%201.41%201.41%27%20%2F%3E%20%3Cpath%20d%3D%27M2%2012h2%27%20%2F%3E%20%3Cpath%20d%3D%27M20%2012h2%27%20%2F%3E%20%3Cpath%20d%3D%27m6.34%2017.66-1.41%201.41%27%20%2F%3E%20%3Cpath%20d%3D%27m19.07%204.93-1.41%201.41%27%20%2F%3E%3C%2Fsvg%3E"); color: #2f5a0e; }
.attr-badge--closed_winter { --bi: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27m10%2020-1.25-2.5L6%2018%27%20%2F%3E%20%3Cpath%20d%3D%27M10%204%208.75%206.5%206%206%27%20%2F%3E%20%3Cpath%20d%3D%27m14%2020%201.25-2.5L18%2018%27%20%2F%3E%20%3Cpath%20d%3D%27m14%204%201.25%202.5L18%206%27%20%2F%3E%20%3Cpath%20d%3D%27m17%2021-3-6h-4%27%20%2F%3E%20%3Cpath%20d%3D%27m17%203-3%206%201.5%203%27%20%2F%3E%20%3Cpath%20d%3D%27M2%2012h6.5L10%209%27%20%2F%3E%20%3Cpath%20d%3D%27m20%2010-1.5%202%201.5%202%27%20%2F%3E%20%3Cpath%20d%3D%27M22%2012h-6.5L14%2015%27%20%2F%3E%20%3Cpath%20d%3D%27m4%2010%201.5%202L4%2014%27%20%2F%3E%20%3Cpath%20d%3D%27m7%2021%203-6-1.5-3%27%20%2F%3E%20%3Cpath%20d%3D%27m7%203%203%206h4%27%20%2F%3E%3C%2Fsvg%3E"); color: #1f5d7a; background: rgba(226,242,250,.96); }

/* Lista gastronomii (cols-2): ten sam styl kart i odznak */
.group-page-cols-2 .box figure { position: relative; }

/* Strzałki hero: zawsze idealne koła (także na telefonie) */
.home-hero.is-homepage .home-hero__controls .owl-prev,
.home-hero.is-homepage .home-hero__controls .owl-next {
  box-sizing: border-box; width: 48px !important; height: 48px !important; min-width: 48px; min-height: 48px; max-width: 48px; max-height: 48px;
  aspect-ratio: 1 / 1; flex: none; padding: 0 !important; line-height: 1; border-radius: 50% !important; margin-top: -24px !important;
}
.home-hero.is-homepage .home-hero__controls .home-hero__control-icon { display: block; width: 22px; height: 22px; flex: none; }
@media (max-width: 767.98px) {
  .home-hero.is-homepage .home-hero__controls .owl-prev,
  .home-hero.is-homepage .home-hero__controls .owl-next { width: 42px !important; height: 42px !important; min-width: 42px; min-height: 42px; max-width: 42px; max-height: 42px; margin-top: -21px !important; }
  .home-hero.is-homepage .home-hero__controls .home-hero__control-icon { width: 20px; height: 20px; }
}

/* ===== Film (play + etykieta), nagłówek z przyciskiem, kamery, kontakt ===== */
.yt-facade__play::after { content: ""; position: absolute; inset: -.55rem; border-radius: 999px; border: 2px solid rgba(99,163,34,.75); animation: yt-pulse 2.2s ease-out infinite; pointer-events: none; }
@keyframes yt-pulse { 0% { transform: scale(.85); opacity: .9; } 100% { transform: scale(1.55); opacity: 0; } }
.yt-facade__label { position: absolute; left: 50%; bottom: 1.1rem; transform: translateX(-50%); display: inline-flex; align-items: center; gap: .5rem; padding: .6rem 1.2rem .6rem 1rem; border-radius: 999px; background: rgba(255,255,255,.96); color: #17311e; font-weight: 700; font-size: .95rem; line-height: 1; white-space: nowrap; box-shadow: 0 12px 26px -10px rgba(0,0,0,.55); transition: background-color .2s ease, color .2s ease, transform .2s ease; animation: yt-label-bob 3s ease-in-out infinite; }
.yt-facade__label::before { content: ""; width: 0; height: 0; border-style: solid; border-width: .42rem 0 .42rem .7rem; border-color: transparent transparent transparent #63a322; }
.home-video .yt-facade:hover .yt-facade__label, .home-video .yt-facade:focus-visible .yt-facade__label { background: #63a322; color: #fff; }
.home-video .yt-facade:hover .yt-facade__label::before { border-left-color: #fff; }
@keyframes yt-label-bob { 0%,100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-4px); } }
@media (prefers-reduced-motion: reduce) { .yt-facade__play::after, .yt-facade__label { animation: none; } }

.home-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: .6rem; }
.home-section-head .header { margin: 0; }
.home-section-head .button { margin: 0 0 .3rem auto; }

.page-template a.button[data-icon="phone"] { --btn-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27black%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20width%3D%2714%27%20height%3D%2720%27%20x%3D%275%27%20y%3D%272%27%20rx%3D%272%27%20ry%3D%272%27%20%2F%3E%20%3Cpath%20d%3D%27M12%2018h.01%27%20%2F%3E%3C%2Fsvg%3E"); }

/* Strona kamer: pogoda na górze (poziomo), kamery jako karty */
.cams-weather { display: block; }
.cams-weather .home-media-layout__weather-list { height: auto; grid-auto-rows: auto; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.cam-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.cam-card { margin: 0; border-radius: 1.4rem; overflow: hidden; background: #eef5e6; border: 1px solid rgba(79,143,20,.14); box-shadow: 0 22px 40px -30px rgba(11,40,20,.45); }
.cam-card:first-child { grid-column: 1 / -1; }
.cam-card__frame { position: relative; aspect-ratio: 16 / 9; background: #0b2814; }
.cam-card__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; display: block; }
.cam-card__cap { display: flex; align-items: center; gap: .6rem; padding: .8rem 1.1rem; font-weight: 700; color: #17311e; }
.cam-card__live { display: inline-flex; align-items: center; gap: .4rem; padding: .2rem .6rem; border-radius: 999px; background: #d92d20; color: #fff; font-size: .7rem; letter-spacing: .06em; }
.cam-card__live::before { content: ""; width: .45rem; height: .45rem; border-radius: 50%; background: #fff; animation: yt-pulse-dot 1.4s ease-in-out infinite; }
@keyframes yt-pulse-dot { 50% { opacity: .25; } }
@media (max-width: 767.98px) { .cam-grid { grid-template-columns: 1fr; } }

/* Kontakt: odstęp pod mapą */
#section-16 { padding-bottom: 3.5rem; }
#section-16 .location-map-layout { margin-bottom: 1rem; }
.home-section-head { flex-wrap: nowrap; }
.home-section-head .header { min-width: 0; }
.home-section-head .button { flex: none; width: auto; margin: 0 0 .3rem auto; }
@media (max-width: 575.98px) {
  .home-section-head { gap: .6rem; }
  .home-section-head .button { padding: .55rem .85rem; font-size: .8rem; min-height: 0; }
}
