/*
Theme Name: Kwiaciarnia Rzym Autorski
Author: Kwiaciarnia Rzym
Description: Autorski motyw WordPress Kwiaciarnia Rzym — florystyka z pasją. Własna identyfikacja wizualna, edytowalne układy i galerie. Wersja rozwojowa do testów lokalnych.
Version: 1.0.0-alpha.49
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: kwiaciarniarzym-autorski
*/
:root { color-scheme: light; }
html { scroll-behavior: smooth; }
body { margin: 0; }
*, *::before, *::after { box-sizing: border-box; }
a { text-underline-offset: .2em; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #536b1f; outline-offset: 4px; }
img { max-width: 100%; height: auto; }
.wp-site-blocks { overflow-wrap: anywhere; }
.rzym-header { border-bottom: 1px solid #d9d9c8; }
.rzym-footer { border-top: 1px solid #d9d9c8; margin-top: clamp(3rem, 8vw, 7rem); }
.rzym-intro { position: relative; isolation: isolate; overflow: hidden; border-radius: 2rem .4rem 2rem .4rem; }
.rzym-intro::after { content: ""; position: absolute; z-index: -1; right: -6rem; top: -7rem; width: 28rem; height: 28rem; border-radius: 50% 45% 12% 48%; background: radial-gradient(ellipse at 35% 35%, #e9ad9460, transparent 68%), radial-gradient(ellipse at 65% 70%, #bcc37870, transparent 70%); transform: rotate(25deg); pointer-events: none; }
.rzym-card { border: 1px solid #d9d9c8; border-radius: 1rem; padding: 1.5rem; }
.rzym-offers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.rzym-offers > * { margin: 0 !important; min-width: 0; }
.rzym-offer-icon img { width: 80px; height: 80px; object-fit: contain; }
.rzym-slides { display: grid; gap: 1rem; }
.rzym-slides img { width: 100%; border-radius: 1rem; }
@media (max-width: 800px) { .rzym-offers { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 460px) { .rzym-offers { grid-template-columns: 1fr; } }
.is-style-rzym-card { border: 1px solid #d9d9c8; border-radius: 1rem; padding: 1.5rem; }
.is-style-rzym-sticky { position: sticky; top: 0; z-index: 20; background: var(--wp--preset--color--paper); }
.admin-bar .is-style-rzym-sticky { top: 32px; }
.rzym-reel { display: flex; gap: 1.5rem; overflow-x: auto; scroll-snap-type: x mandatory; padding: .5rem .5rem 1rem; }
.rzym-reel > * { flex: 0 0 min(85%, 25rem); scroll-snap-align: start; }
@media (max-width: 782px) { .admin-bar .is-style-rzym-sticky { top: 46px; } }
@media (max-width: 600px) { .admin-bar .is-style-rzym-sticky { top: 0; } }
.wp-block-post-featured-image img { border-radius: 1rem; }
.wp-block-navigation .wp-block-navigation-item__content { padding-block: .65rem; }
.wp-block-navigation__responsive-container.is-menu-open { padding: 2rem; }
.wp-block-search__input { min-width: 0; }
.rzym-lightbox { width: min(96vw, 1200px); max-height: 94vh; border: 0; border-radius: .7rem; background: #faf8f1; color: #28312b; padding: 1rem; }
.rzym-lightbox::backdrop { background: #000c; }
.rzym-lightbox > img { display: block; margin: 1rem auto; max-width: 100%; max-height: 70vh; width: auto; height: auto; object-fit: contain; }
.rzym-lightbox-controls { display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
.rzym-lightbox button { padding: .7rem; font: inherit; cursor: pointer; }
.gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.gallery .gallery-item { margin: 0; min-width: 0; }
.gallery img { display: block; width: 100%; height: auto; border-radius: .5rem; }
.gallery .gallery-caption { font-size: .875rem; padding-top: .5rem; }
.gallery-columns-1 { grid-template-columns: 1fr; }
.gallery-columns-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gallery-columns-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gallery-columns-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.gallery-columns-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.gallery-columns-7 { grid-template-columns: repeat(7, minmax(0, 1fr)); }
.gallery-columns-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); }
.gallery-columns-9 { grid-template-columns: repeat(9, minmax(0, 1fr)); }
@media (max-width: 782px) { .gallery:not(.gallery-columns-1) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 400px) { .gallery { grid-template-columns: 1fr !important; } }
.rzym-contact input:not([type="hidden"]), .rzym-contact textarea { display: block; width: 100%; max-width: 100%; padding: .75rem; border: 1px solid #667153; border-radius: .4rem; background: #fff; color: #28312b; font: inherit; }
.rzym-contact textarea { resize: vertical; }
.rzym-contact label { display: block; margin-bottom: .35rem; }
.rzym-contact button { padding: .8rem 1.3rem; border: 0; border-radius: 2rem; background: #4e5c2d; color: #fff; font: inherit; cursor: pointer; }
.rzym-contact [role="status"] { padding: 1rem; border: 2px solid #4e5c2d; }
@media (max-width: 600px) { .rzym-header .wp-block-site-title { font-size: 1.3rem; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
