/* The native blocks keep the prototype's visual system and normal editor controls. */
:root {
  --paper: var(--wp--preset--color--charcoal);
  --ink: var(--wp--preset--color--ivory);
  --gold: var(--wp--preset--color--gold);
  --serif: var(--wp--preset--font-family--cormorant);
  --sans: var(--wp--preset--font-family--dm-sans);
}
.wp-site-blocks { padding: 0; }
.strup-back-to-top{position:fixed;right:24px;bottom:24px;z-index:30;margin:0;padding:0;transition:opacity .22s ease,transform .22s ease}
.strup-back-to-top[hidden]{display:none!important}
.strup-back-to-top .wp-block-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;min-height:50px;padding:0;border:1px solid var(--gold);border-radius:50%;background:var(--paper);color:var(--gold);font-size:0!important;transition:background-color .2s ease,color .2s ease}
.strup-back-to-top .wp-block-button__link::before{content:'';display:block;width:22px;height:22px;background:currentColor;mask:url('icons/arrow-up.svg') center/contain no-repeat;transition:transform .2s ease}
.strup-back-to-top .wp-block-button__link:hover{background:var(--gold);color:var(--paper)}
.strup-back-to-top .wp-block-button__link:hover::before{transform:translateY(-2px)}
@starting-style{.strup-back-to-top{opacity:0;transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){.strup-back-to-top,.strup-back-to-top .wp-block-button__link,.strup-back-to-top .wp-block-button__link::before{transition:none;transform:none}}
#poczatek:focus{outline:none}
@media(max-width:900px){.strup-back-to-top{right:16px;bottom:calc(80px + env(safe-area-inset-bottom))}}
.wp-site-blocks > *, .wp-block-post-content > *, .wp-block-template-part { margin-block: 0; }
.wp-block-template-part { display: contents; }
.wp-block-post-content, main#tresc { margin: 0; }
.wp-block-group > :where(p, h1, h2, h3, h4, h5, h6) { margin-block-start: 0; }
.wp-block-image { margin: 0; }
.wp-block-image img { display: block; }
.hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: inherit; }
.wp-block-icon.icon { width: 24px; height: 24px; flex-shrink: 0; }
.wp-block-icon.icon svg { display: block; width: 100%; height: 100%; }
.wp-block-icon.icon svg.icon { fill:none; stroke:currentColor; stroke-width:1.25; stroke-linecap:round; stroke-linejoin:round; }
.strup-inline-link { margin: 0; }
.strup-link-card { position: relative; }
.strup-card-link::after { content: ""; position: absolute; inset: 0; }
.strup-card-link:focus-visible { outline-offset: 6px; }
.brand-words { display: flex; flex-direction: column; gap: 0; }
.brand-mark, .brand-subtitle, .brand-name { margin: 0; }
.brand .wp-block-site-title { font-family: var(--serif); font-weight: 400; line-height: 1; }
.brand-subtitle { font: 400 8px/1.4 var(--sans); letter-spacing: 1.8px; text-transform: uppercase; margin-top: 10px; }
.strup-buttons { margin: 0; gap: 0; }
.wp-block-button .wp-block-button__link { font: inherit; border-radius: 0; text-decoration: none; }
.wp-block-button.button { padding: 0; border: 0; background: transparent; min-height: 0; }
.wp-block-button.button > a { display: inline-flex; align-items: center; min-height: 52px; padding: 14px 22px; font-size: inherit; background: var(--gold); color: #191a17; }
.wp-block-button.outline > a { background: transparent; color: var(--ink); border: 1px solid var(--control-line); }
.wp-block-button.header-phone > a, .wp-block-button.big-phone > a, .wp-block-button.footer-tel > a,
.wp-block-button.contact-number > a, .wp-block-button.utility-phone > a, .wp-block-button.strup-plain-button > a,
.wp-block-button.mobile-call > a { padding: 0; background: transparent; color: inherit; border: 0; }
.wp-block-button.header-phone > a { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; font-size: 12px; }
.wp-block-button.header-phone strong, .wp-block-button.header-phone b { display: block; font-size: 17px; }
.wp-block-button.big-phone > a, .wp-block-button.contact-number > a, .wp-block-button.footer-tel > a { font: inherit; }
.wp-block-button.strup-plain-button > a { text-align: start; }
.wp-block-button.button > a { gap:12px; }
.wp-block-button.button > a[href^="tel:"]::before, .wp-block-button.header-phone > a::before,
.wp-block-button.big-phone > a::before, .wp-block-button.contact-number > a::before,
.wp-block-button.mobile-call > a::before { content:""; display:inline-block; width:18px; height:18px; flex:none; background:currentColor; mask:url('./icons/phone.svg') center/contain no-repeat; }
.wp-block-button.header-phone > a { position:relative; padding-left:32px; }
.wp-block-button.header-phone > a::before { position:absolute; left:0; top:50%; transform:translateY(-50%); width:23px; height:23px; color:var(--gold); }
.wp-block-button.big-phone > a, .wp-block-button.contact-number > a, .wp-block-button.mobile-call > a { display:inline-flex; align-items:center; gap:16px; }
.wp-block-button.big-phone > a::before, .wp-block-button.contact-number > a::before { width:26px; height:26px; }
.strup-inline-link .text-link::after { content:""; display:block; width:18px; height:18px; background:currentColor; mask:url('./icons/arrow.svg') center/contain no-repeat; }
.wp-block-button.utility-phone > a { display: inline-flex; gap: 12px; align-items: center; font-size: 11px; }
.mobile-call-wrap { display:none !important; margin:0; }
.hero-note::before, .utility-phone > a::before { content:""; display:block; width:5px; height:5px; border-radius:50%; background:var(--gold); flex:none; }
.gallery-item figcaption { display: flex; justify-content: space-between; font-size: 16px; line-height:1.7; padding: 18px 0; margin: 0; border-bottom: 1px solid var(--line); color: var(--ink); }
.flower-gallery .wp-block-image img { width: 100%; }
.steps > .strup-step { display:flex; gap:20px; padding:18px 0; border-bottom:1px solid var(--line); }
.steps > .strup-step:last-child { border:0; }
.steps > .strup-step > p { font:italic 28px var(--serif); color:var(--gold); margin:0; }
.steps .strup-step p { margin-bottom:0; }
.steps .strup-step h3 { margin:2px 0 6px; }
.about-image > figure > img { width:100%; aspect-ratio:1.25; object-fit:cover; filter:saturate(.65); }
.history-layout > figure > img { width:100%; aspect-ratio:1.2; object-fit:cover; }
.flower-section > figure > img { margin:0; display:block; }
.flower-section > figure:last-child { margin-top:45px; }
.hero-note > p, .hero-caption > p, .since > p { margin:0; color:inherit; font:inherit; }
.hero-caption > p:first-child { display:block; font:500 10px var(--sans); letter-spacing:1.8px; margin-bottom:8px; }
.since > p:last-child { display:block; font:500 8px var(--sans); letter-spacing:1.6px; }
.trust-strip .container > .wp-block-group { display:flex; justify-content:center; align-items:center; gap:12px; border-right:1px solid var(--line); margin-block:24px; }
.trust-strip .container > .wp-block-group:first-child { justify-content:flex-start; }
.trust-strip .container > .wp-block-group:last-child { justify-content:flex-end; border:0; }
.trust-strip p { margin:0; font-size:10px; line-height:1.4; }
.utility p { margin:0; color:inherit; font:inherit; }
.utility .wp-block-buttons { margin:0; }
.utility-phone strong { font-weight:500; white-space:nowrap; }
.faq summary::after { content: "+"; color: var(--gold); font-size: 22px; }
.faq details[open] > summary::after { content: "−"; }
.header nav.site-navigation { display: flex; position: static; top: auto; padding: 0; border: 0; box-shadow: none; background: transparent; }
.header .wp-block-navigation__container { gap: 24px; }
.header .wp-block-navigation a { font-size: 12px; }
.header .wp-block-navigation__responsive-container-open { width:44px; height:44px; justify-content:center; align-items:center; border:1px solid var(--control-line); }
.header .wp-block-navigation__responsive-container.is-menu-open { background: var(--paper); color: var(--ink); padding: 32px; }
.header .wp-block-navigation__responsive-container.is-menu-open a { font-size: 20px; padding-block: 12px; }
.privacy-link { margin: 0; }
@media (min-width: 901px) {
  .site-navigation .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none !important; }
  .site-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block !important; }
}
@media (max-width: 900px) {
  .mobile-call-wrap { display:flex !important; }
  .mobile-call-wrap .wp-block-button.mobile-call { position:fixed; inset:auto 0 0; z-index:1000; width:100%; min-height:64px; display:flex; align-items:center; justify-content:center; margin:0; padding:0; border-radius:0; border:0; border-top:1px solid var(--control-line); background:var(--paper); color:var(--ink); box-shadow:0 -4px 18px #0003; }
  .mobile-call-wrap .wp-block-button.mobile-call > a { display:flex; justify-content:center; align-items:center; gap:10px; width:100%; min-height:64px; margin:0; padding:16px 20px calc(16px + env(safe-area-inset-bottom)); font:600 16px/1.4 var(--sans); border-radius:0; background:transparent; color:inherit; }
  .mobile-call-wrap .wp-block-button.mobile-call small { font-size:12px; font-weight:500; padding:3px 7px; margin-left:2px; border:1px solid var(--line); background:var(--cream); }
  footer { padding-bottom:calc(88px + env(safe-area-inset-bottom)); }
  .site-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
  .site-navigation .wp-block-navigation__responsive-container-open { display: flex !important; }
  .header .wp-block-navigation__container { gap: 0; }
  .about-image > figure > img { aspect-ratio:.85; }
  .flower-section > figure:last-child { display:none; }
  .steps > .strup-step { gap:12px; }
}
@media (max-width:1100px) {
  .utility .container > p { display:none; }
  .header-inner > .wp-block-buttons:has(.header-phone) { display:none; }
}
@media (max-width: 680px) {
  .brand-subtitle { font-size: 6px; letter-spacing: 1.2px; }
  .wp-block-button.button > a { min-height:48px; padding:14px 18px; }
  .wp-block-button.utility-phone > a { font-size:12px; gap:6px; }
  .about-image > figure > img, .history-layout > figure > img { aspect-ratio:1.4; }
  .steps > .strup-step { gap:20px; padding-block:20px; }
  .trust-strip .container > .wp-block-group { justify-content:flex-start; border:0; gap:7px; margin-block:10px; align-items:flex-start; }
  .trust-strip .container > .wp-block-group:nth-child(2n) { padding-left:10px; }
  .trust-strip p { font-size:14px; line-height:1.65; }
  .trust-strip .wp-block-icon.icon { width:17px; height:17px; }
  .hero-actions > .wp-block-buttons, .first-help .strup-buttons, .guide-aside .strup-buttons { width:100%; }
  .hero-actions .wp-block-button.button, .hero-actions .wp-block-button.button > a { width:100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
