/*
 * NoName Themes 1.1
 * Jeden HTML/backend, trzy kontrolowane warstwy prezentacji.
 * Kolory i font pochodzą z tenant_branding. Warstwa motywu jest ładowana po custom_css klienta,
 * aby zachować spójną geometrię wybranego szablonu.
 */

body.theme-classic,
body.theme-premium,
body.theme-minimal{
  --theme-radius:0px;
  --theme-card-radius:0px;
  --theme-shadow:none;
}


/* Kolor ustawiany w panelu dotyczy wyłącznie głównego hero, nigdy tła całej strony. */
body.theme-classic #header,
body.theme-premium #header,
body.theme-minimal #header{background-color:var(--tenant-hero-background)}

/* CLASSIC — zachowuje geometrię dotychczasowej strony. */
body.theme-classic .tenant-header-image .big-text{background:rgba(255,255,255,.90)}

.noname-hero-description{margin-bottom:0}
.noname-hero-cta-wrap{margin-top:24px;text-align:left}
.noname-home-cta{display:inline-block;background:var(--tenant-primary);color:#fff!important;padding:11px 20px;text-decoration:none!important;font-weight:600;line-height:1.3;transition:opacity .18s ease,transform .18s ease}
.noname-home-cta:hover,.noname-home-cta:focus{color:#fff!important;opacity:.88;text-decoration:none!important;transform:translateY(-1px)}

/* PREMIUM — większa prezentacja marki, miękkie powierzchnie i katalog w stylu editorial. */
body.theme-premium{
  --theme-radius:18px;
  --theme-card-radius:14px;
  --theme-shadow:0 18px 45px rgba(20,24,30,.10);
}
body.theme-premium .navigation{
  border:0!important;
  box-shadow:0 7px 24px rgba(20,24,30,.08);
  padding:7px 3.5%;
  margin-bottom:0;
}
body.theme-premium .tenant-navigation .navbar-brand img{max-width:220px!important;max-height:58px!important}
body.theme-premium #header{
  min-height:560px;
  padding-top:110px;
  padding-bottom:110px;
  display:flex;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
}
body.theme-premium #header.tenant-header-image:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(15,17,20,.16) 0%,rgba(15,17,20,.03) 55%,rgba(15,17,20,.14) 100%);
  pointer-events:none;
}
body.theme-premium #header .section-content{position:relative;z-index:2;width:100%}
body.theme-premium .tenant-header-image .big-text{
  max-width:760px;
  padding:40px 44px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:18px;
  background:rgba(255,255,255,.84);
  box-shadow:0 24px 70px rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}
body.theme-premium #header .big-text h2{font-size:clamp(40px,4.6vw,72px);line-height:1.05;letter-spacing:-.035em;max-width:720px}
body.theme-premium #header .big-text h3{line-height:1.45;max-width:670px}
body.theme-premium #header .separator-small{width:68px;height:2px;margin-top:30px;margin-bottom:30px}
body.theme-premium .source-home-intro{padding:0 0 70px}
body.theme-premium .source-home-intro .section-content{padding-top:48px;max-width:1200px;margin:0 auto}
body.theme-premium .noname-home-cta{border-radius:999px;padding:12px 22px;box-shadow:0 8px 22px rgba(20,24,30,.12)}
body.theme-premium #portfolio{padding-bottom:105px}
body.theme-premium #portfolio .noname-filterbar{padding-top:48px;margin-bottom:44px}
body.theme-premium .works-filter-full li a{
  display:inline-block;
  padding:8px 12px;
  border-radius:999px;
  text-decoration:none!important;
  transition:.18s ease;
}
body.theme-premium .works-filter-full li.active a,
body.theme-premium .works-filter-full li a:hover{background:var(--tenant-primary);color:#fff!important}
/* Premium / Kalendarze: zdjęcie i stopka tworzą jedną, węższą kartę.
 * Źródłowe miniatury kalendarzy mają techniczny biały margines po prawej.
 * Dla opraw jednolitych kadrujemy go w osobnej ramce zamiast rozciągać podpis
 * do pełnej szerokości pliku JPG. */
/* Premium / Kalendarze: pionowy odstęp pomiędzy rzędami ustawia sam UIkit Grid
 * przez opcję gutter w widokach. Nie dokładamy tutaj paddingu, żeby wysokość
 * elementów liczona przez skrypt była jednoznaczna. */
body.theme-premium.channel-calendar .noname-cover-card{
  box-sizing:border-box;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container{
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  transform:none;
  transition:none;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container:hover{
  transform:none;
  border-color:transparent;
  box-shadow:none;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container>a{
  display:block;
  overflow:visible;
  text-decoration:none!important;
}
body.theme-premium.channel-calendar .noname-cover-card .noname-card-media{
  position:relative;
  width:84%;
  margin:0 auto;
  overflow:hidden;
  box-sizing:border-box;
  border:1px solid rgba(20,24,30,.09);
  border-bottom:0;
  border-radius:8px 8px 0 0;
  background:#f7f7f5;
  box-shadow:0 8px 22px rgba(20,24,30,.065);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
/* Jednolite miniatury mają po prawej biały obszar starego layoutu.
 * Proporcja 0.705 odpowiada właściwej powierzchni okładki i obcina ten margines
 * przez object-fit zamiast deformować zdjęcie. */
body.theme-premium.channel-calendar .noname-cover-card[data-filter~="filter-jednolite"] .noname-card-media{
  aspect-ratio:.705;
}
body.theme-premium.channel-calendar .noname-cover-card .noname-card-media img{
  display:block;
  width:100%;
  height:auto;
  max-width:none;
  border-radius:0;
  transform:none;
  transition:transform .42s cubic-bezier(.2,.7,.2,1);
}
body.theme-premium.channel-calendar .noname-cover-card[data-filter~="filter-jednolite"] .noname-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:left center;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container:hover .noname-card-media{
  transform:translateY(-2px);
  border-color:rgba(20,24,30,.15);
  box-shadow:0 16px 32px rgba(20,24,30,.10);
}
body.theme-premium.channel-calendar .noname-cover-card .image-container:hover .noname-card-media img{
  transform:scale(1.015);
}
body.theme-premium.channel-calendar .noname-cover-card .uk-position-bottom{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:84%!important;
  margin:0 auto;
  text-align:left!important;
}
body.theme-premium.channel-calendar .noname-cover-card .caption-page{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  display:block;
  width:100%;
  min-height:70px;
  box-sizing:border-box;
  padding:31px 52px 14px 17px;
  border:1px solid rgba(20,24,30,.09);
  border-top:1px solid rgba(20,24,30,.065);
  border-radius:0 0 8px 8px;
  background:#fff!important;
  color:var(--tenant-heading)!important;
  font-size:15px;
  font-weight:500;
  line-height:1.25;
  letter-spacing:.005em;
  text-align:left!important;
  text-transform:none;
  white-space:normal;
  box-shadow:0 9px 22px rgba(20,24,30,.055)!important;
  transition:border-color .24s ease,box-shadow .24s ease,color .24s ease;
}
body.theme-premium.channel-calendar .noname-cover-card .caption-page:before{
  content:"OPRAWA";
  position:absolute;
  top:13px;
  left:17px;
  width:auto;
  height:auto;
  transform:none;
  background:none;
  color:rgba(20,24,30,.46);
  font-size:8px;
  font-weight:700;
  line-height:1;
  letter-spacing:.17em;
}
body.theme-premium.channel-calendar .noname-cover-card .caption-page:after{
  content:"\2197";
  position:absolute;
  right:15px;
  top:50%;
  width:28px;
  height:28px;
  margin-top:-14px;
  border:1px solid rgba(20,24,30,.13);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  color:rgba(20,24,30,.68);
  font-size:13px;
  font-weight:400;
  line-height:1;
  transition:background .24s ease,border-color .24s ease,color .24s ease,transform .24s ease;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container:hover .caption-page{
  border-color:rgba(20,24,30,.14);
  box-shadow:0 15px 30px rgba(20,24,30,.085)!important;
}
body.theme-premium.channel-calendar .noname-cover-card .image-container:hover .caption-page:after{
  background:var(--tenant-primary);
  border-color:var(--tenant-primary);
  color:#fff;
  transform:translate(2px,-2px);
}
body.theme-premium.channel-calendar .noname-cover-card .caption-page.has-background{
  background:#fff!important;
}

/* Premium / Notesy pozostają przy neutralnej, prostej stopce. */
body.theme-premium.channel-notes .noname-cover-card .image-container{
  border:1px solid rgba(20,24,30,.07);
  border-radius:12px;
  background:#fff;
  box-shadow:0 9px 26px rgba(20,24,30,.075);
  overflow:hidden;
}
body.theme-premium.channel-notes .noname-cover-card .uk-position-bottom{position:static!important;width:100%!important}
body.theme-premium.channel-notes .noname-cover-card .caption-page{
  position:static!important;
  display:block;
  width:100%;
  box-sizing:border-box;
  padding:13px 15px;
  border:0;
  border-top:1px solid rgba(20,24,30,.07);
  border-radius:0;
  background:#fff!important;
  color:var(--tenant-heading)!important;
  font-size:13px;
  font-weight:500;
  line-height:1.25;
  letter-spacing:0;
  text-align:left!important;
  text-transform:none;
  white-space:normal;
}
body.theme-premium #about{padding-top:88px;padding-bottom:88px;background:#fafafa}
body.theme-premium #offer{padding-top:78px;padding-bottom:78px}
body.theme-premium #header-calendars{padding-top:112px;padding-bottom:46px;background:#fafafa}
body.theme-premium #header-calendars .big-text h2,
body.theme-premium #header-calendars .big-text h1{letter-spacing:-.025em}
body.theme-premium .page-box,
body.theme-premium .noname-source-inquiry,
body.theme-premium .notes-type-info{border-radius:14px;box-shadow:0 12px 34px rgba(20,24,30,.06);border:1px solid rgba(20,24,30,.07)}
body.theme-premium .btn-brand,
body.theme-premium .button-info-active,
body.theme-premium .noname-form-button{border-radius:999px!important;padding:11px 20px!important}

/* MINIMAL — mniej warstw, krótszy hero, prosta geometria i szybszy katalog. */
body.theme-minimal .navigation{
  border:0!important;
  border-bottom:1px solid #e7e7e7!important;
  box-shadow:none!important;
  padding-left:3%;
  padding-right:3%;
  margin-bottom:0;
}
body.theme-minimal .tenant-navigation .navbar-brand img{max-height:46px!important}
body.theme-minimal #header{
  min-height:315px;
  padding-top:76px;
  padding-bottom:70px;
  display:flex;
  align-items:center;
  border-bottom:1px solid #eee;
}
body.theme-minimal .tenant-header-image .big-text{
  max-width:720px;
  padding:26px 30px;
  background:rgba(255,255,255,.94);
  border-left:4px solid var(--tenant-primary);
}
body.theme-minimal #header .big-text h2{font-size:clamp(34px,4vw,56px);line-height:1.08;letter-spacing:-.03em}
body.theme-minimal #header .big-text h3{font-size:18px;line-height:1.5;margin-top:12px;margin-bottom:12px}
body.theme-minimal #header .separator-small{width:32px;height:2px;margin-top:22px;margin-bottom:22px}
body.theme-minimal .noname-home-cta{border-radius:0;padding:10px 18px}
body.theme-minimal .source-home-intro{padding-bottom:38px;border-bottom:1px solid #eee}
body.theme-minimal .source-home-intro .section-content{padding-top:28px}
body.theme-minimal #portfolio{padding-bottom:72px}
body.theme-minimal #portfolio .noname-filterbar{padding-top:30px;margin-bottom:32px;text-align:left;word-spacing:0}
body.theme-minimal .works-filter-full li{margin-right:18px}
body.theme-minimal .works-filter-full li a{padding:7px 0;border-bottom:1px solid transparent;text-decoration:none!important}
body.theme-minimal .works-filter-full li.active a,
body.theme-minimal .works-filter-full li a:hover{border-color:var(--tenant-primary);color:var(--tenant-heading)!important}
body.theme-minimal .noname-cover-card .image-container{border:1px solid #e4e4e4;background:#fff}
body.theme-minimal .image-container:hover img{transform:none}
body.theme-minimal .caption-page{position:static;width:100%;padding:10px 4px 2px;border-radius:0;background:transparent!important;text-align:left!important;font-size:12px;white-space:normal}
body.theme-minimal .noname-cover-card .uk-position-bottom{position:static!important}
body.theme-minimal #about{padding-top:58px;padding-bottom:58px;border-top:1px solid #eee}
body.theme-minimal #offer{padding-top:54px;padding-bottom:54px}
body.theme-minimal #header-calendars{padding-top:82px;padding-bottom:28px;border-bottom:1px solid #eee}
body.theme-minimal #header-calendars .separator-small{margin-top:24px;margin-bottom:24px}
body.theme-minimal .page-box,
body.theme-minimal .noname-source-inquiry,
body.theme-minimal .notes-type-info{box-shadow:none;border:1px solid #e5e5e5;border-radius:0;background:#fff}
body.theme-minimal .btn-brand,
body.theme-minimal .button-info-active,
body.theme-minimal .noname-form-button{border-radius:0!important}

@media all and (max-width:767px){
  body.theme-premium .navigation{padding:0}
  body.theme-premium #header{min-height:430px;padding-top:70px;padding-bottom:70px}
  body.theme-premium .tenant-header-image .big-text{padding:26px 24px;border-radius:12px}
  body.theme-premium #header .big-text h2{font-size:38px}
  body.theme-premium #about,body.theme-premium #offer{padding-top:55px;padding-bottom:55px}
  body.theme-minimal #header{min-height:270px;padding-top:55px;padding-bottom:50px}
  body.theme-minimal .tenant-header-image .big-text{padding:20px 18px}
  body.theme-minimal #portfolio .noname-filterbar{text-align:left}
}
