/* Finalne dopracowanie wspólne dla wszystkich podstron. */
.site-updated { padding-block:0 20px; color:var(--muted); opacity:.75; font-size:.65rem; text-align:center; letter-spacing:.02em; }
[data-added] { position:relative; }
.stats > div::before { background:radial-gradient(ellipse at 50% 100%,#c8944a16,transparent 75%); background-size:100% 100%; mask-image:none; inset:0; border-radius:0; animation:none !important; opacity:0; transition:opacity .4s ease; }
.stats > div:hover::before { opacity:1; }
.stats > div::after { height:1px; transform-origin:center; transition:transform .45s cubic-bezier(.2,.7,.3,1); }
.stats dd { transition:color .35s ease, transform .4s cubic-bezier(.2,.7,.3,1); }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .stats > div:hover dd { color:var(--brass-2); transform:translateY(-2px); }
}
@media(prefers-reduced-motion:reduce) { .stats dd,.stats > div::before,.stats > div::after { transition:none; } }
.compact-footer-top { display:grid; grid-template-columns:1fr auto 1fr; }
.compact-footer-top > p { text-align:center; }
.compact-footer-top .footer-phone { justify-self:end; }
.cookie-bar { width:min(520px, calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; }
.cookie-options { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0; }
.cookie-options label { display:block; font-size:.88rem; cursor:pointer; }
.cookie-options input { accent-color:#d1ad6f; width:18px; height:18px; vertical-align:middle; margin-right:5px; }
.cookie-options small { display:block; color:var(--muted); padding-left:27px; font-size:.75rem; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:8px; }
.cookie-actions .btn { flex:1 1 140px; justify-content:center; font-size:.78rem; min-height:44px; padding:10px 12px; }
.cookie-actions #cookie-save { flex-basis:100%; }
.map-external { margin:12px 0 0; font-size:.85rem; }
.map-external a { text-decoration:underline; text-underline-offset:4px; }
.faq-panel-inner .map-frame { margin-top:20px; height:300px; }
.map-blocked { overflow:auto; }
.map-blocked .btn { white-space:normal; }
.legal-cookie-control { padding-bottom:24px; }
/* Szersze odpowiedzi i oszczędne akcenty dla najważniejszych informacji. */
#pytania .faq-list { max-width:none; width:100%; }
#pytania .faq-panel p { max-width:none; overflow-wrap:anywhere; }
#pytania .faq-panel strong { color:#eee7db; font-weight:650; }
#pytania .faq-gold { color:#ebce99; font-weight:500; }
#pytania .faq-underline { color:#eee7db; font-weight:600; padding-bottom:3px; background:linear-gradient(90deg,#c8944a,#f1d9a8) left bottom / 0% 2px no-repeat; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
#pytania .is-open .faq-underline { animation:faq-draw-line .85s cubic-bezier(.2,.7,.3,1) .18s forwards; }
#pytania .faq-list:not(.is-ready) .faq-underline { background-size:100% 2px; }
@keyframes faq-draw-line { to { background-size:100% 2px; } }
#pytania .map-blocked p { padding:0; max-width:48ch; }
@media(max-width:720px) {
 #pytania .faq-panel p { padding:0 12px 24px 18px; font-size:.95rem; line-height:1.8; }
 #pytania .faq-trigger { padding-block:20px; }
 #pytania .map-blocked p { padding:0; }
}
@media(prefers-reduced-motion:reduce) {
 #pytania .is-open .faq-underline { animation:none; background-size:100% 2px; }
}
.process-photo.customer-work img { aspect-ratio:auto; height:auto; object-fit:contain; }
.process-photo.customer-work figcaption { display:block; padding:18px 0 8px; line-height:1.65; }
.customer-work figcaption strong { display:block; color:var(--text); font-size:clamp(1rem,2vw,1.2rem); font-weight:600; }
.customer-work figcaption span { display:block; margin-top:6px; font-size:.92rem; max-width:70ch; }
.legal-cookie-control button { color:var(--muted); background:transparent; border:0; cursor:pointer; text-decoration:underline; }
@media(max-width:720px) {
 .compact-footer-top { display:flex; flex-direction:column; text-align:center; }
 .map-frame { min-height:285px; }
 .cookie-bar { left:12px; right:12px; width:auto; bottom:12px; }
 .cookie-options { gap:8px; }
 .about-grid > .portrait { display:block; aspect-ratio:4/3; }
 .portrait img { object-position:center 48%; }
}




/* Center both rows inside the full existing footer shell. */
.site-updated.site-credit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;opacity:1;color:#e0e3e8;text-align:center;padding-top:18px;padding-bottom:34px;letter-spacing:normal}
.site-credit .credit-intent{display:block;margin:0;opacity:.62;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:400;line-height:1.5;letter-spacing:.055em}
.site-credit .credit-author{display:flex;align-items:baseline;justify-content:center;gap:8px;width:100%;margin:0;padding:0;line-height:1.2}
.site-credit .credit-by{opacity:.5;font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:400;font-style:normal;line-height:1.5;letter-spacing:.025em}
.society-wordmark{display:inline-flex;align-items:baseline;white-space:nowrap;color:#d0c9bb}
.society-credit{display:inline-block;position:relative;padding:0 3px;color:#d0c9bb;font-family:'Lora',Georgia,serif;font-style:italic;font-size:24px;font-weight:600;line-height:1.35;letter-spacing:-.015em}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
 .society-credit{background-image:linear-gradient(105deg,#dcc792,#fff2cf,#ffffff,#b9d5ea,#f5f8ff,#dcc792);background-size:250% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:society-gradient 3s ease-in-out infinite alternate}
 .society-credit::after{content:'society21';position:absolute;inset:0;padding:0 3px;color:transparent;pointer-events:none;background-image:linear-gradient(110deg,transparent 35%,#fffdf5 49%,#ffffff 52%,transparent 66%);background-size:300% 100%;background-repeat:no-repeat;background-clip:text;-webkit-background-clip:text;opacity:0;animation:society-shine 5s ease-in-out infinite}
}
@keyframes society-gradient{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes society-shine{0%,78%{background-position:100% 50%;opacity:0}80%{opacity:1}94%{background-position:0% 50%;opacity:1}96%,100%{background-position:0% 50%;opacity:0}}
@media(prefers-reduced-motion:reduce){.society-credit{animation:none}.society-credit::after{display:none}}

@media(max-width:720px){.site-updated.site-credit{padding-top:16px;padding-bottom:30px;gap:6px}.site-credit .society-credit{font-size:22px}}

/* Only the compact wordmark moves; surrounding text and layout stay fixed. */
@media(prefers-reduced-motion:no-preference){.society-wordmark{transform-origin:50% 65%;animation:society-drift 10s ease-in-out infinite}}
@keyframes society-drift{0%,100%{transform:translateY(-2px) rotate(3deg)}50%{transform:translateY(2px) rotate(-3deg)}}
