/* LOG REF: FBP-2026-04-23-003 — mobile sunset overlay, lżejsze belki, ciaśniejsze odliczanie i sterowanie hero */
/* LOG REF: FBP-2026-04-23-001 — osobna warstwa mobile dla lepszego centrowania, ciaśniejszego CTA i overlay menu */
@media (max-width: 980px){
  .fbp-site{--fbp-mobile-gap:14px}
  .fbp-container{width:min(100% - 22px,100%)!important}
  .fbp-header{background:color-mix(in srgb,var(--fbp-header-bg) 88%, transparent 12%)}
  .fbp-header-inner{grid-template-columns:minmax(0,1fr) auto !important;gap:10px !important;min-height:72px !important;padding:8px 0}
  .fbp-brand{min-width:0;gap:10px;align-items:center}
  .fbp-brand img{width:min(var(--fbp-logo-width-mobile,72px),84px);border-radius:16px}
  .fbp-brand span{min-width:0}
  .fbp-brand strong,.fbp-brand em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .fbp-header-side{display:none !important}
  .fbp-menu-toggle{display:inline-flex !important;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 14px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 24px rgba(2,8,23,.16);z-index:83}
  .fbp-menu-toggle:hover,.fbp-menu-toggle:focus-visible{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}
  .fbp-nav{position:fixed !important;top:calc(var(--fbp-header-height-current,72px) + 10px);left:12px;right:12px;z-index:82;display:flex !important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;padding:14px;border-radius:24px;background:var(--fbp-mobile-menu-bg);border:1px solid var(--fbp-mobile-menu-border);box-shadow:0 22px 54px rgba(2,8,23,.28);backdrop-filter:blur(18px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px) scale(.985);transition:opacity .24s ease,transform .24s ease,visibility .24s ease;max-height:min(calc(100svh - var(--fbp-header-height-current,72px) - 24px),560px);overflow:auto}
  .fbp-site.has-mobile-menu .fbp-nav,.fbp-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
  .fbp-site.has-mobile-menu::before{content:"";position:fixed;inset:0;z-index:81;background:var(--fbp-mobile-menu-overlay);backdrop-filter:blur(3px)}
  .fbp-menu-close{display:inline-flex !important}.fbp-nav a,.fbp-nav a:link,.fbp-nav a:visited{width:100%;min-height:48px;justify-content:center;text-align:center;border-radius:16px;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--fbp-mobile-menu-text)!important}
  .fbp-nav a::after{left:20px !important;right:20px !important;bottom:8px !important}
  .fbp-hero{min-height:auto !important;padding-top:var(--fbp-header-height-current,72px)}
  .fbp-hero-grid{grid-template-columns:minmax(0,1fr) !important;gap:18px !important;align-items:center !important;justify-items:center;text-align:center;padding:56px 0 42px !important}
  .fbp-hero-copy{display:flex;flex-direction:column;align-items:center;width:100%;transform:translateY(var(--fbp-hero-copy-offset-mobile,0px)) !important}
  .fbp-kicker{margin-inline:auto;background:var(--fbp-hero-kicker-bg-mobile) !important;border-color:var(--fbp-hero-kicker-border-mobile) !important;color:var(--fbp-hero-kicker-text-mobile) !important;min-height:44px !important;padding:0 16px !important;font-size:.88rem !important;letter-spacing:.02em !important;transform:translateY(var(--fbp-hero-kicker-offset-mobile,0px)) !important}.fbp-kicker-desktop{display:none}.fbp-kicker-mobile{display:inline}
  .fbp-hero h1,.fbp-lead{max-width:100% !important;text-align:center !important}
  .fbp-hero h1{font-size:clamp(2.35rem,11.5vw,4.25rem) !important;line-height:.95 !important;margin:16px auto 12px !important}
  .fbp-lead{font-size:clamp(.98rem,4.2vw,1.18rem) !important;margin-inline:auto !important}
  .fbp-meta-line{justify-content:center !important;margin-inline:auto}
  .fbp-meta-line span{min-height:42px !important;padding:0 14px !important;font-size:.92rem !important;white-space:nowrap}
  .fbp-actions{width:100%;justify-content:center !important;gap:10px !important}
  .fbp-actions .fbp-btn,.fbp-actions .fbp-btn-small,.fbp-actions .fbp-btn-ghost{flex:1 1 calc(50% - 10px);min-width:0;min-height:46px;padding:0 16px !important}
  .fbp-hero-info{min-width:0 !important;width:min(100%,420px) !important;max-width:420px !important;margin:0 auto;padding:22px 18px !important;text-align:center !important}
  .fbp-section{padding:64px 0 !important}
  .fbp-section-head,.fbp-contact-head{align-items:center !important;text-align:center !important}
  .fbp-section-head h2,.fbp-contact-head h2,.fbp-section-title{text-align:center !important}
  .fbp-countdown-ring{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:8px !important;padding:10px !important}
  .fbp-countdown-ring div{min-height:108px !important;padding:12px 8px !important;border-radius:22px !important}
  .fbp-countdown-ring strong{font-size:clamp(1.45rem,7vw,2.25rem) !important}
  .fbp-countdown-ring span{margin-top:6px !important;font-size:.78rem !important;line-height:1.15}
  .fbp-festival-grid,.fbp-artist-row,.fbp-artist-row.reverse,.fbp-program-grid,.fbp-tickets-grid,.fbp-contact-grid,.fbp-footer-row,.fbp-footer-row-centered{grid-template-columns:minmax(0,1fr) !important}
  .fbp-artist-row,.fbp-artist-row.reverse{padding:20px !important;gap:16px !important;justify-items:center;text-align:center}
  .fbp-artist-row.reverse .fbp-artist-image-wrap{order:0 !important}
  .fbp-artist-image{width:min(120px,var(--fbp-artist-image-size)) !important;height:min(120px,var(--fbp-artist-image-size)) !important}
  .fbp-program-item{grid-template-columns:88px minmax(0,1fr) !important;gap:14px !important;align-items:center !important}
  .fbp-program-time{min-height:52px !important;padding:0 10px !important;font-size:1rem !important}
  .fbp-ticket-card,.fbp-contact-card,.fbp-contact-form-wrap,.fbp-map-wrap,.fbp-card{padding:22px 18px !important}
  .fbp-contact-form-row{grid-template-columns:minmax(0,1fr) !important}
  .fbp-contact-form .fbp-btn,.fbp-ticket-card .fbp-btn{width:100%;justify-content:center}
  .fbp-cookies{left:12px !important;right:12px !important;bottom:12px !important;width:auto !important;border-radius:22px !important;padding:16px !important}
  .fbp-cookies p{text-align:center}
  .fbp-cookies-actions{width:100%;justify-content:center !important;gap:10px !important}
  .fbp-cookies-actions .fbp-btn{flex:1 1 calc(50% - 10px);min-width:0}
}
@media (max-width: 640px){
  .fbp-header-inner{min-height:68px !important}
  .fbp-brand strong{font-size:.9rem !important}
  .fbp-brand em{font-size:.74rem !important}
  .fbp-hero-grid{padding:48px 0 34px !important}
  .fbp-actions{flex-direction:column;align-items:stretch}
  .fbp-actions .fbp-btn,.fbp-actions .fbp-btn-small,.fbp-actions .fbp-btn-ghost{flex:1 1 100%;width:100%}
  .fbp-countdown-ring{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .fbp-program-item{grid-template-columns:minmax(0,1fr) !important;text-align:center !important}
  .fbp-program-time{margin:0 auto;width:100%;max-width:120px}
  .fbp-modal{max-height:min(100svh - 16px,100%)}
  .fbp-modal-check{align-items:flex-start;text-align:left}
  .fbp-cookies-actions{flex-direction:column;align-items:stretch}
  .fbp-cookies-actions .fbp-btn{width:100%}
}

/* LOG REF: FBP-2026-04-23-002 — dopięcie sekcji Kontakt: wycentrowanie headu i zrównanie szerokości lewych kart z formularzem */
.fbp-contact-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  align-items:start !important;
}
.fbp-contact-left,
.fbp-contact-right,
.fbp-contact-cards,
.fbp-contact-card,
.fbp-contact-form-wrap,
.fbp-map-wrap{
  width:100% !important;
  min-width:0 !important;
}
.fbp-contact-left{
  grid-template-rows:auto !important;
  align-content:start !important;
}
.fbp-contact-head{
  width:100% !important;
  max-width:none !important;
  margin:0 auto 4px !important;
  padding:0 !important;
  text-align:center !important;
  align-items:center !important;
  justify-items:center !important;
}
.fbp-contact-head h2,
.fbp-contact-head .fbp-section-title,
.fbp-contact-head p{
  width:100% !important;
  text-align:center !important;
  margin-inline:auto !important;
}
.fbp-contact-cards{
  align-items:stretch !important;
}
.fbp-contact-card{
  display:grid !important;
  align-content:center !important;
}
.fbp-contact-form .fbp-form-row.two{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}

@media (max-width: 1140px){
  .fbp-contact-grid{
    grid-template-columns:minmax(0,1fr) !important;
    gap:20px !important;
  }
  .fbp-contact-left,
  .fbp-contact-right{
    width:min(100%,780px) !important;
    margin-inline:auto !important;
  }
}

@media (max-width: 980px){
  .fbp-contact-head{
    margin-bottom:0 !important;
  }
  .fbp-contact-card,
  .fbp-contact-form-wrap,
  .fbp-map-wrap{
    border-radius:24px !important;
  }
}

@media (max-width: 640px){
  .fbp-contact-left,
  .fbp-contact-right{
    width:100% !important;
  }
  .fbp-contact-form .fbp-form-row.two{
    grid-template-columns:minmax(0,1fr) !important;
  }
  .fbp-contact-card,
  .fbp-contact-form-wrap,
  .fbp-map-wrap{
    padding:20px 16px !important;
  }
}


@media (max-width: 980px){
  .fbp-header{background:linear-gradient(180deg,color-mix(in srgb,var(--fbp-header-bg) 90%, transparent 10%),color-mix(in srgb,var(--fbp-header-bg) 72%, transparent 28%)) !important}
  .fbp-header.is-scrolled{background:color-mix(in srgb,var(--fbp-header-bg) 88%, transparent 12%) !important}
  .fbp-menu-toggle{
    position:relative;
    background:linear-gradient(180deg,rgba(255,154,47,.22),rgba(255,154,47,.12)) !important;
    border:1px solid rgba(255,185,92,.34) !important;
    box-shadow:0 10px 24px rgba(255,154,47,.18), inset 0 1px 0 rgba(255,255,255,.08) !important;
  }
  .fbp-nav{
    left:auto !important;
    right:10px !important;
    width:min(330px,calc(100vw - 20px)) !important;
    top:calc(var(--fbp-header-height-current,72px) - 6px) !important;
    padding:14px 14px 14px !important;
    border-radius:22px 22px 24px 24px !important;
    background:linear-gradient(180deg,rgba(255,154,47,.22),rgba(19,45,76,.95) 18%,rgba(8,26,52,.98) 100%) !important;
    border:1px solid rgba(255,184,92,.24) !important;
    box-shadow:0 26px 64px rgba(2,8,23,.42), 0 12px 30px rgba(255,154,47,.12) !important;
    transform-origin:top right !important;
  }
  .fbp-site.has-mobile-menu::before{backdrop-filter:blur(5px) !important;background:linear-gradient(180deg,rgba(255,154,47,.12),var(--fbp-mobile-menu-overlay) 34%) !important}
  .fbp-nav a,.fbp-nav a:link,.fbp-nav a:visited{
    min-height:44px !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.045) !important;
  }
  .fbp-nav a:hover,.fbp-nav a:focus-visible,.fbp-nav a.is-active{background:rgba(255,154,47,.12) !important;border-color:rgba(255,184,92,.22) !important}.fbp-menu-close{background:linear-gradient(180deg,rgba(255,184,92,.22),rgba(255,255,255,.05)) !important;border:1px solid rgba(255,184,92,.32) !important;color:#fff !important}

  .fbp-hero{background-size:var(--fbp-hero-bg-size,cover) !important;background-position:var(--fbp-hero-bg-position,center center) !important}

  .fbp-countdown-ring{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:6px !important;
    padding:8px !important;
    border-radius:24px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012)) !important;
  }
  .fbp-countdown-ring div{
    min-height:92px !important;
    padding:10px 4px !important;
    border-radius:18px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.012)),var(--fbp-countdown-card) !important;
  }
  .fbp-countdown-ring strong{font-size:clamp(1.25rem,5.6vw,2rem) !important}
  .fbp-countdown-ring span{font-size:.7rem !important;letter-spacing:.02em !important}

  .fbp-ticket-card,.fbp-contact-card,.fbp-contact-form-wrap,.fbp-map-wrap,.fbp-card,.fbp-program-item,.fbp-highlight{
    border-radius:20px !important;
    box-shadow:0 14px 34px rgba(0,0,0,.16) !important;
  }
  .fbp-ticket-card,.fbp-contact-card,.fbp-contact-form-wrap,.fbp-map-wrap,.fbp-card{padding:18px 15px !important}
  .fbp-program-item{padding:16px 14px !important}
  .fbp-highlight{min-height:72px !important;padding:0 16px !important}

  .fbp-contact-form label,
  .fbp-contact-form input,
  .fbp-contact-form select,
  .fbp-contact-form textarea{
    font-size:.96rem !important;
  }
}

@media (max-width: 640px){
  .fbp-container{width:min(100% - 16px,100%) !important}
  .fbp-nav{right:8px !important;width:min(312px,calc(100vw - 16px)) !important;top:calc(var(--fbp-header-height-current,68px) - 4px) !important}
  .fbp-countdown-ring{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:5px !important;
    padding:7px !important;
  }
  .fbp-countdown-ring div{min-height:78px !important;padding:8px 3px !important;border-radius:16px !important}
  .fbp-countdown-ring strong{font-size:clamp(1.05rem,6vw,1.5rem) !important;line-height:.9 !important}
  .fbp-countdown-ring span{font-size:.62rem !important;margin-top:4px !important}
  .fbp-ticket-card,.fbp-contact-card,.fbp-contact-form-wrap,.fbp-map-wrap,.fbp-card{padding:16px 13px !important}
  .fbp-program-item{padding:14px 12px !important}
  .fbp-highlight{min-height:66px !important;padding:0 14px !important}
}

@media (max-width: 390px){
  .fbp-countdown-ring strong{font-size:1rem !important}
  .fbp-countdown-ring span{font-size:.58rem !important}
  .fbp-nav{width:calc(100vw - 12px) !important;right:6px !important}
}
