/*
Theme Name: LookCafe Events Premium
Theme URI: https://lookcafe.events/
Author: LookCafe Events
Description: Nowoczesny, edytowalny motyw blokowy dla LookCafe Events. Premium design: biel, czerń, złoto i bordo. Gutenberg / Site Editor, bez Elementora.
Version: 1.1.4
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: lookcafe-premium
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, editor-style, wide-blocks
*/

:root {
  --lc-black: #111111;
  --lc-white: #ffffff;
  --lc-gold: #bd8b45;
  --lc-burgundy: #5d1e29;
  --lc-cream: #f8f6f2;
  --lc-muted: #6b6865;
  --lc-line: #e9e3dc;
}
html { scroll-behavior: smooth; }
body { color: var(--lc-black); background: var(--lc-white); font-family: Inter, "Helvetica Neue", Arial, sans-serif; font-size: 16px; line-height: 1.7; }
a { color: var(--lc-burgundy); text-underline-offset: 4px; }
a:hover { color: var(--lc-gold); }
.wp-site-blocks { overflow: visible; }
.wp-block-site-title { margin: 0; }
.wp-block-site-title a { color: var(--lc-black); text-decoration: none; letter-spacing: .08em; text-transform: uppercase; font-weight: 400; }
.wp-block-navigation a { color: var(--lc-black); text-decoration: none; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.wp-block-navigation a:hover, .wp-block-navigation .current-menu-item > a { color: var(--lc-gold); }
.wp-block-button__link { border: 1px solid var(--lc-gold); border-radius: 2px; padding: 13px 23px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; transition: .2s ease; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--lc-burgundy); color: #fff; }
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--lc-black); color: #fff; }
.wp-block-button.is-style-outline .wp-block-button__link { color: var(--lc-black); background: transparent; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--lc-gold); color: #fff; }
h1, h2, h3, h4 { line-height: 1.12; letter-spacing: -.035em; }
h1, h2 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
h1 { font-size: clamp(2.8rem, 6vw, 5.8rem); }
h2 { font-size: clamp(2rem, 4vw, 3.5rem); }
h3 { font-size: 1.2rem; letter-spacing: -.02em; }
.lc-eyebrow { color: var(--lc-gold); font-size: 11px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
.lc-hero { min-height: 570px; padding-top: clamp(45px, 8vw, 100px) !important; padding-bottom: clamp(45px, 8vw, 100px) !important; background: var(--lc-cream); }
.lc-hero .wp-block-heading { max-width: 680px; }
.lc-hero p { max-width: 540px; }
.lc-image-frame img { width: 100%; height: 100%; object-fit: cover; }
.lc-service-card { height: 100%; border: 1px solid var(--lc-line); background: #fff; padding: 0 0 22px; }
.lc-service-card .wp-block-image { margin-bottom: 20px; }
.lc-service-card .wp-block-heading, .lc-service-card p { margin-left: 22px; margin-right: 22px; }
.lc-service-card .wp-block-heading { margin-top: 0; }
.lc-service-card p { color: var(--lc-muted); font-size: 14px; }
.lc-section { padding-top: clamp(56px, 8vw, 100px); padding-bottom: clamp(56px, 8vw, 100px); }
.lc-soft { background: var(--lc-cream); }
.lc-burgundy { color: #fff; background: var(--lc-burgundy); }
.lc-burgundy h2, .lc-burgundy h3, .lc-burgundy p { color: #fff; }
.lc-burgundy .lc-eyebrow { color: #e6c18a; }
.lc-burgundy a { color: #fff; }
.lc-stat { border-left: 1px solid var(--lc-gold); padding-left: 18px; }
.lc-stat strong { display: block; font-family: Georgia, serif; font-size: 1.4rem; font-weight: 400; }
.lc-contact-band { background: var(--lc-black); color: #fff; }
.lc-contact-band h2, .lc-contact-band p { color: #fff; }
.lc-contact-band a { color: #e3b66d; text-decoration: none; }
.lc-footer { background: #111; color: #e8e4df; }
.lc-footer a { color: #e3b66d; text-decoration: none; }
.lc-footer .wp-block-site-title a { color: #fff; }
.lc-footer .wp-block-navigation a { color: #e8e4df; }
.lc-footer .wp-block-navigation a:hover { color: #e3b66d; }
.lc-divider { width: 70px; height: 1px; background: var(--lc-gold); margin-top: 24px; margin-bottom: 24px; }
.lc-round-image img { border-radius: 2px; }
.wp-block-post-title a { text-decoration: none; color: var(--lc-black); }
.wp-block-query-pagination a { color: var(--lc-burgundy); }
@media (max-width: 781px) {
  .lc-hero { min-height: auto; }
  .lc-hero .wp-block-columns { gap: 28px; }
  .lc-service-card { margin-bottom: 16px; }
  .wp-block-navigation__responsive-container.is-menu-open { padding: 28px; background: #fff; }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; gap: 18px; }
  .wp-block-navigation__responsive-container.is-menu-open a { font-size: 17px; }
}


/* LookCafe Premium refinement: classic desktop navigation and responsive layouts */
.lc-site-header {
  position: relative;
  z-index: 50;
  background: #fff;
  gap: 20px;
}
.lc-header-logo { flex: 0 0 auto; margin: 0; }
.lc-header-logo img { display: block; max-width: 100%; height: auto; }
.lc-primary-navigation { margin-left: auto; }
.lc-primary-navigation .wp-block-navigation__container {
  align-items: center;
  gap: clamp(10px, 1.35vw, 22px);
}
.lc-primary-navigation .wp-block-navigation-item__content {
  display: inline-block;
  padding: 10px 0;
  color: var(--lc-black);
  font-size: clamp(10px, .78vw, 13px);
  font-weight: 600;
  letter-spacing: .045em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .2s ease;
}
.lc-primary-navigation .wp-block-navigation-item__content:hover,
.lc-primary-navigation .wp-block-navigation-item__content:focus-visible,
.lc-primary-navigation .current-menu-item > .wp-block-navigation-item__content {
  color: var(--lc-gold);
}
.lc-primary-navigation .wp-block-navigation__responsive-container-open,
.lc-primary-navigation .wp-block-navigation__responsive-container-close {
  color: var(--lc-black);
}
.lc-service-feature { scroll-margin-top: 28px; }
.lc-service-feature .wp-block-image img { display:block; width:100%; height:auto; }
.lc-service-feature .wp-block-columns { gap: clamp(28px, 5vw, 68px); }
.lc-service-feature .wp-block-heading { max-width: 680px; }
.lc-service-feature p { max-width: 680px; }

@media (max-width: 1100px) {
  .lc-site-header { gap: 14px; }
  .lc-header-logo img { width: 175px !important; }
  .lc-primary-navigation .wp-block-navigation__container { gap: 10px; }
  .lc-primary-navigation .wp-block-navigation-item__content {
    font-size: 10px;
    letter-spacing: .025em;
  }
}
@media (max-width: 781px) {
  .lc-site-header {
    padding: 12px 18px !important;
    gap: 12px;
  }
  .lc-header-logo img { width: 165px !important; }
  .lc-primary-navigation { margin-left: auto; }
  .lc-primary-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }
  .lc-primary-navigation .wp-block-navigation__responsive-container.is-menu-open {
    padding: 24px 22px;
    background: #fff;
    color: var(--lc-black);
  }
  .lc-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    align-items: stretch;
    padding-top: 36px;
  }
  .lc-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    align-items: stretch;
    gap: 0;
    width: 100%;
  }
  .lc-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
    width: 100%;
    border-bottom: 1px solid var(--lc-line);
  }
  .lc-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    display: block;
    width: 100%;
    padding: 14px 0;
    font-size: 14px;
    letter-spacing: .06em;
  }
  .lc-hero { min-height: auto; }
  .lc-hero .wp-block-columns,
  .lc-service-feature .wp-block-columns {
    gap: 28px;
  }
  .lc-hero .wp-block-column,
  .lc-service-feature .wp-block-column {
    flex-basis: 100% !important;
  }
  .lc-service-feature { padding-top: 48px !important; padding-bottom: 48px !important; }
  .lc-service-feature .wp-block-image { margin-bottom: 10px; }
  .lc-service-feature h2 { font-size: clamp(2rem, 8vw, 3rem); }
  .lc-service-feature .wp-block-buttons { margin-top: 22px; }
  .lc-section { padding-top: 48px !important; padding-bottom: 48px !important; }
  .lc-service-card { margin-bottom: 18px; }
  .wp-block-buttons { gap: 10px; }
  .wp-block-button__link { max-width: 100%; white-space: normal; text-align: center; }
}
@media (max-width: 420px) {
  .lc-site-header { padding-left: 14px !important; padding-right: 14px !important; }
  .lc-header-logo img { width: 140px !important; }
  .lc-hero h1 { font-size: clamp(2.35rem, 12vw, 3.1rem); }
  .lc-hero .wp-block-buttons { align-items: stretch; flex-direction: column; }
  .lc-hero .wp-block-button, .lc-hero .wp-block-button__link { width: 100%; }
}




/* LookCafe Premium 1.0.5 fixes */
html{scroll-padding-top:105px}
body{overflow-x:clip}
.wp-site-blocks,.wp-site-blocks>*,.wp-block-template-part{overflow:visible!important}
.wp-site-blocks>header:has(.lc-site-header),header.wp-block-template-part:has(.lc-site-header),.wp-site-blocks>.wp-block-template-part:has(.lc-site-header){position:sticky!important;top:0!important;z-index:999999!important;background:#fff!important;align-self:start}
body.admin-bar .wp-site-blocks>header:has(.lc-site-header),body.admin-bar header.wp-block-template-part:has(.lc-site-header),body.admin-bar .wp-site-blocks>.wp-block-template-part:has(.lc-site-header){top:32px!important}
.lc-site-header{position:relative!important;z-index:999999!important;background:#fff!important;box-shadow:0 3px 18px rgba(17,17,17,.08)}
.lc-site-header a:hover,.lc-site-header .wp-block-navigation-item__content:hover{color:#C7A15D!important}
.lc-contact-band a[href^="tel:"],.lc-contact-band a[href^="tel:"]:visited,.lc-contact-band .lc-phone-link,a[href^="tel:"].wp-block-button__link,.wp-block-button a[href^="tel:"]{color:#C7A15D!important;font-weight:700;text-decoration:none;opacity:1!important;visibility:visible!important}
.lc-contact-band a[href^="tel:"]:hover,a[href^="tel:"].wp-block-button__link:hover,.wp-block-button a[href^="tel:"]:hover{color:#fff!important}
.lc-services-grid .wp-block-image,.lc-offer-grid .wp-block-image,.lc-service-card .wp-block-image{max-width:75%;margin-left:auto!important;margin-right:auto!important}
.lc-services-grid .wp-block-image img,.lc-offer-grid .wp-block-image img,.lc-service-card .wp-block-image img{width:100%;height:auto}
.lc-coffee-print-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.5vw,18px);width:100%;align-items:stretch}
.lc-coffee-print-gallery .wp-block-image{display:block;width:100%;aspect-ratio:1/1!important;margin:0!important;overflow:hidden;border-radius:12px}
.lc-coffee-print-gallery .wp-block-image img{display:block;width:100%!important;height:100%!important;aspect-ratio:1/1!important;object-fit:cover!important}
.lc-footer-navigation{padding:22px 24px!important;background:#111!important;color:#fff!important}
.lc-footer-navigation a{color:#fff!important;font-size:13px;text-decoration:none;padding:7px 12px}
.lc-footer-navigation a:hover{color:#C7A15D!important}
@media(max-width:782px){body.admin-bar .wp-site-blocks>header:has(.lc-site-header),body.admin-bar header.wp-block-template-part:has(.lc-site-header),body.admin-bar .wp-site-blocks>.wp-block-template-part:has(.lc-site-header){top:46px!important}}


/* LookCafe Premium 1.0.7 — high-specificity contact and offer image corrections */
/* Contact panel's standalone number and call button: compact gold typography. */
body .wp-site-blocks .lc-contact-band p a[href^="tel:"],
body .wp-site-blocks .lc-contact-band a[href^="tel:"],
body .wp-site-blocks .lc-contact-band a[href^="tel:"]:visited {
  color: #C7A15D !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  text-decoration: none !important;
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  white-space: nowrap !important;
}
body .wp-site-blocks .lc-contact-band .wp-block-button a[href^="tel:"],
body .wp-site-blocks .lc-contact-band a.wp-element-button[href^="tel:"] {
  display: inline-block !important;
  color: #C7A15D !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  letter-spacing: .035em !important;
  padding: 10px 14px !important;
  white-space: nowrap !important;
}
body .wp-site-blocks .lc-contact-band .wp-block-button a[href^="tel:"]:hover,
body .wp-site-blocks .lc-contact-band p a[href^="tel:"]:hover {
  color: #FFFFFF !important;
}
/* Offer section uses .lc-service-card directly; resize each card photo itself. */
body .wp-site-blocks #oferta .lc-service-card > figure.wp-block-image,
body .wp-site-blocks #oferta .lc-service-card > .wp-block-image {
  display: block !important;
  width: 75% !important;
  max-width: 75% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body .wp-site-blocks #oferta .lc-service-card > figure.wp-block-image img,
body .wp-site-blocks #oferta .lc-service-card > .wp-block-image img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}
@media (max-width: 782px) {
  body .wp-site-blocks .lc-contact-band p a[href^="tel:"],
  body .wp-site-blocks .lc-contact-band a[href^="tel:"],
  body .wp-site-blocks .lc-contact-band .wp-block-button a[href^="tel:"] {
    font-size: 15px !important;
  }
}


/* LookCafe Premium 1.0.8 — square service images */
body .wp-site-blocks #oferta .lc-service-card > figure.wp-block-image,
body .wp-site-blocks #oferta .lc-service-card > .wp-block-image {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}
body .wp-site-blocks #oferta .lc-service-card > figure.wp-block-image img,
body .wp-site-blocks #oferta .lc-service-card > .wp-block-image img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

/* Square photos in Kawa na Targi, Event Barista and Barista na wesele sections */
body .wp-site-blocks #kawa-na-targi .wp-block-image,
body .wp-site-blocks #event-barista .wp-block-image,
body .wp-site-blocks #barista-na-wesele .wp-block-image {
  display: block !important;
  width: 100% !important;
  max-width: 560px !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body .wp-site-blocks #kawa-na-targi .wp-block-image img,
body .wp-site-blocks #event-barista .wp-block-image img,
body .wp-site-blocks #barista-na-wesele .wp-block-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}
@media (max-width: 782px) {
  body .wp-site-blocks #kawa-na-targi .wp-block-image,
  body .wp-site-blocks #event-barista .wp-block-image,
  body .wp-site-blocks #barista-na-wesele .wp-block-image {
    max-width: 100% !important;
  }
}


/* LookCafe Premium 1.1.1 — service pages and footer navigation */
body .wp-site-blocks main > .wp-block-heading:first-child { margin-top: 0; }
body .wp-site-blocks main > .wp-block-image { margin: 28px 0 36px; }
body .wp-site-blocks main > .wp-block-image img { width: 100%; max-height: 620px; object-fit: cover; border-radius: 10px; }
body .wp-site-blocks main .lc-services-grid .wp-block-image { aspect-ratio: 1 / 1; overflow: hidden; }
body .wp-site-blocks main .lc-services-grid .wp-block-image img { width: 100%; height: 100%; object-fit: cover; }
.lc-footer-navigation { padding: 24px clamp(16px, 4vw, 52px) !important; }
.lc-footer-navigation .wp-block-navigation__container { gap: 8px 18px !important; }
.lc-footer-navigation a { transition: color .2s ease; }
.lc-footer-navigation a:hover, .lc-footer-navigation a:focus-visible { color: #C7A15D !important; }
body .wp-site-blocks main a:not(.wp-element-button) { text-underline-offset: 3px; }


/* LookCafe Premium 1.1.1 — rzeczywiste zdjęcia na sześciu podstronach */
/* Każde zdjęcie w treści wskazanych podstron: kwadratowe, o 15% węższe, bez deformacji. */
body.page-mobilny-bar-kawowy main .wp-block-image,
body.page-coffee-print main .wp-block-image,
body.page-kawa-na-targi main .wp-block-image,
body.page-kawa-na-event main .wp-block-image,
body.page-realizacje main .wp-block-image,
body.page-kontakt main .wp-block-image {
  display: block !important;
  width: 85% !important;
  max-width: 480px !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  margin: 28px auto 34px !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}
body.page-mobilny-bar-kawowy main .wp-block-image img,
body.page-coffee-print main .wp-block-image img,
body.page-kawa-na-targi main .wp-block-image img,
body.page-kawa-na-event main .wp-block-image img,
body.page-realizacje main .wp-block-image img,
body.page-kontakt main .wp-block-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 8px !important;
}
/* Galeria strony głównej: subtelne premium wyróżnienie przy najechaniu.
   Reguły obejmują też zdjęcia dodane później w standardowym bloku Galeria. */
body.home .wp-block-gallery .wp-block-image,
body.front-page .wp-block-gallery .wp-block-image {
  position: relative !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  outline: 1px solid rgba(199,161,93,0) !important;
  box-shadow: 0 4px 18px rgba(17,17,17,.08) !important;
  transition: box-shadow .28s ease, outline-color .28s ease, transform .28s ease !important;
}
body.home .wp-block-gallery .wp-block-image img,
body.front-page .wp-block-gallery .wp-block-image img {
  display: block !important;
  transition: transform .38s ease, filter .28s ease !important;
  will-change: transform;
}
body.home .wp-block-gallery .wp-block-image:hover,
body.home .wp-block-gallery .wp-block-image:focus-within,
body.front-page .wp-block-gallery .wp-block-image:hover,
body.front-page .wp-block-gallery .wp-block-image:focus-within {
  outline-color: #C7A15D !important;
  box-shadow: 0 12px 30px rgba(17,17,17,.18), 0 0 0 2px rgba(199,161,93,.32) !important;
  z-index: 2;
}
body.home .wp-block-gallery .wp-block-image:hover img,
body.home .wp-block-gallery .wp-block-image:focus-within img,
body.front-page .wp-block-gallery .wp-block-image:hover img,
body.front-page .wp-block-gallery .wp-block-image:focus-within img {
  transform: scale(1.045);
  filter: saturate(1.08) contrast(1.025);
}
@media (max-width: 781px) {
  body.page-mobilny-bar-kawowy main .wp-block-image,
  body.page-coffee-print main .wp-block-image,
  body.page-kawa-na-targi main .wp-block-image,
  body.page-kawa-na-event main .wp-block-image,
  body.page-realizacje main .wp-block-image,
  body.page-kontakt main .wp-block-image {
    width: 85% !important;
    max-width: 420px !important;
    margin-top: 22px !important;
    margin-bottom: 26px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.home .wp-block-gallery .wp-block-image,
  body.home .wp-block-gallery .wp-block-image img,
  body.front-page .wp-block-gallery .wp-block-image,
  body.front-page .wp-block-gallery .wp-block-image img { transition: none !important; }
}


/* Galeria dodana na stronie głównej: cztery równe zdjęcia w jednym rzędzie na desktopie.
   Reguły działają również dla zdjęć dodawanych później w bloku Galeria WordPressa. */
body.home main .wp-block-gallery,
body.front-page main .wp-block-gallery {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(8px, 1.25vw, 18px) !important;
  align-items: stretch !important;
  width: 100% !important;
}
body.home main .wp-block-gallery > .wp-block-image,
body.front-page main .wp-block-gallery > .wp-block-image {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}
body.home main .wp-block-gallery > .wp-block-image img,
body.front-page main .wp-block-gallery > .wp-block-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}
@media (max-width: 900px) {
  body.home main .wp-block-gallery,
  body.front-page main .wp-block-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* LookCafe Premium 1.1.3 — redesign sekcji Oferta + hero ze zdjęciem w tle */

/* HERO: fotografia jako pełne tło sekcji, tekst na czytelnym gradiencie */
body.home .lc-hero,
body.front-page .lc-hero {
  position: relative !important;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: clamp(620px, 76vh, 820px) !important;
  padding: clamp(72px, 10vw, 132px) clamp(22px, 7vw, 100px) !important;
  background-color: #24191a !important;
  background-image:
    linear-gradient(90deg, rgba(17,17,17,.88) 0%, rgba(17,17,17,.68) 48%, rgba(17,17,17,.18) 100%),
    url("assets/images/hero-coffee.jpg") !important;
  background-size: cover !important;
  background-position: center 54% !important;
  overflow: hidden;
}
body.home .lc-hero::after,
body.front-page .lc-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(42vw, 560px);
  aspect-ratio: 1;
  right: -9%;
  bottom: -38%;
  border: 1px solid rgba(199,161,93,.42);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(199,161,93,.07), 0 0 0 84px rgba(199,161,93,.045);
  pointer-events: none;
}
body.home .lc-hero > .wp-block-columns,
body.front-page .lc-hero > .wp-block-columns {
  position: relative;
  z-index: 1;
  width: 100%;
  margin: 0 auto;
}
body.home .lc-hero > .wp-block-columns > .wp-block-column:first-child,
body.front-page .lc-hero > .wp-block-columns > .wp-block-column:first-child {
  flex-basis: 72% !important;
  max-width: 760px;
}
body.home .lc-hero > .wp-block-columns > .wp-block-column:last-child,
body.front-page .lc-hero > .wp-block-columns > .wp-block-column:last-child {
  display: none !important;
}
body.home .lc-hero .lc-eyebrow,
body.front-page .lc-hero .lc-eyebrow {
  color: #e5bd7e !important;
}
body.home .lc-hero h1,
body.home .lc-hero h2,
body.home .lc-hero p,
body.front-page .lc-hero h1,
body.front-page .lc-hero h2,
body.front-page .lc-hero p {
  color: #fff !important;
  text-shadow: 0 2px 22px rgba(0,0,0,.22);
}
body.home .lc-hero h1,
body.front-page .lc-hero h1 {
  max-width: 760px;
  font-size: clamp(3rem, 7vw, 6.3rem) !important;
  line-height: .99 !important;
  margin: 16px 0 24px;
}
body.home .lc-hero p,
body.front-page .lc-hero p {
  max-width: 650px;
}
body.home .lc-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.front-page .lc-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link {
  background: #bd8b45 !important;
  border-color: #bd8b45 !important;
  color: #171313 !important;
}
body.home .lc-hero .wp-block-button.is-style-outline .wp-block-button__link,
body.front-page .lc-hero .wp-block-button.is-style-outline .wp-block-button__link {
  color: #fff !important;
  border-color: rgba(255,255,255,.72) !important;
  background: rgba(255,255,255,.06) !important;
}
body.home .lc-hero .wp-block-button__link:hover,
body.front-page .lc-hero .wp-block-button__link:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

/* OFERTA: nowoczesne kafle z dużą fotografią, wyraźną typografią i kolorowymi akcentami */
body.home #oferta,
body.front-page #oferta {
  position: relative;
  background:
    radial-gradient(circle at 8% 12%, rgba(199,161,93,.12), transparent 25%),
    linear-gradient(180deg, #f7f4ef 0%, #fff 100%) !important;
}
body.home #oferta > .wp-block-columns,
body.front-page #oferta > .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px !important;
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}
body.home #oferta > .wp-block-columns > .wp-block-column,
body.front-page #oferta > .wp-block-columns > .wp-block-column {
  min-width: 0;
  margin: 0 !important;
}
body.home #oferta .lc-service-card,
body.front-page #oferta .lc-service-card {
  position: relative;
  height: 100%;
  min-height: 100%;
  padding: 0 0 28px !important;
  overflow: hidden;
  border: 1px solid rgba(93,30,41,.10) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 12px 32px rgba(33,22,18,.055);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
body.home #oferta .lc-service-card::before,
body.front-page #oferta .lc-service-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, #5d1e29, #bd8b45, #e7c994);
}
body.home #oferta .lc-service-card:hover,
body.front-page #oferta .lc-service-card:hover {
  transform: translateY(-9px);
  border-color: rgba(189,139,69,.5) !important;
  box-shadow: 0 22px 48px rgba(33,22,18,.13);
}
body.home #oferta .lc-service-card > .wp-block-image,
body.front-page #oferta .lc-service-card > .wp-block-image,
body.home #oferta .lc-service-card > figure.wp-block-image,
body.front-page #oferta .lc-service-card > figure.wp-block-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 1.42 / 1 !important;
  margin: 0 0 22px !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}
body.home #oferta .lc-service-card > .wp-block-image img,
body.front-page #oferta .lc-service-card > .wp-block-image img,
body.home #oferta .lc-service-card > figure.wp-block-image img,
body.front-page #oferta .lc-service-card > figure.wp-block-image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  aspect-ratio: 1.42 / 1 !important;
  object-fit: cover !important;
  transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}
body.home #oferta .lc-service-card:hover .wp-block-image img,
body.front-page #oferta .lc-service-card:hover .wp-block-image img {
  transform: scale(1.055);
  filter: saturate(1.12);
}
body.home #oferta .lc-service-card .wp-block-heading,
body.front-page #oferta .lc-service-card .wp-block-heading {
  margin: 0 24px 12px !important;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.25rem, 1.7vw, 1.65rem) !important;
  line-height: 1.15;
  letter-spacing: -.025em;
}
body.home #oferta .lc-service-card p,
body.front-page #oferta .lc-service-card p {
  margin: 0 24px !important;
  color: #6b625d !important;
  font-size: 14px !important;
  line-height: 1.75;
}
body.home #oferta > .wp-block-heading,
body.front-page #oferta > .wp-block-heading {
  margin-bottom: 16px;
}
body.home #oferta > .wp-block-heading.has-text-align-center,
body.front-page #oferta > .wp-block-heading.has-text-align-center {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
body.home #oferta > .wp-block-paragraph.has-text-align-center,
body.front-page #oferta > .wp-block-paragraph.has-text-align-center {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  color: #6b625d;
}
body.home #oferta > .wp-block-columns:last-of-type,
body.front-page #oferta > .wp-block-columns:last-of-type {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 34px !important;
  padding: 30px clamp(20px, 4vw, 48px);
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(115deg, #5d1e29, #35171d);
  box-shadow: 0 18px 42px rgba(93,30,41,.16);
}
body.home #oferta > .wp-block-columns:last-of-type h3,
body.home #oferta > .wp-block-columns:last-of-type p,
body.home #oferta > .wp-block-columns:last-of-type a,
body.front-page #oferta > .wp-block-columns:last-of-type h3,
body.front-page #oferta > .wp-block-columns:last-of-type p,
body.front-page #oferta > .wp-block-columns:last-of-type a {
  color: #fff !important;
}
body.home #oferta > .wp-block-columns:last-of-type a,
body.front-page #oferta > .wp-block-columns:last-of-type a {
  text-decoration-color: #d8b477;
}
@media (max-width: 900px) {
  body.home #oferta > .wp-block-columns,
  body.front-page #oferta > .wp-block-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  body.home .lc-hero,
  body.front-page .lc-hero {
    min-height: 660px !important;
    padding: 76px 22px !important;
    background-position: 58% center !important;
    background-image:
      linear-gradient(90deg, rgba(17,17,17,.84), rgba(17,17,17,.53)),
      url("assets/images/hero-coffee.jpg") !important;
  }
  body.home .lc-hero h1,
  body.front-page .lc-hero h1 {
    font-size: clamp(2.8rem, 13vw, 4.3rem) !important;
  }
  body.home #oferta > .wp-block-columns,
  body.front-page #oferta > .wp-block-columns,
  body.home #oferta > .wp-block-columns:last-of-type,
  body.front-page #oferta > .wp-block-columns:last-of-type {
    grid-template-columns: 1fr;
    gap: 18px !important;
    padding-left: 0;
    padding-right: 0;
  }
  body.home #oferta > .wp-block-columns:last-of-type,
  body.front-page #oferta > .wp-block-columns:last-of-type {
    padding: 26px 22px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.home #oferta .lc-service-card,
  body.front-page #oferta .lc-service-card,
  body.home #oferta .lc-service-card img,
  body.front-page #oferta .lc-service-card img,
  body.home .lc-hero .wp-block-button__link,
  body.front-page .lc-hero .wp-block-button__link {
    transition: none !important;
  }
}


/* LookCafe Premium 1.1.4 — editorial homepage, reveal motion and gallery */
body.home .lc-hero,
body.front-page .lc-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: clamp(650px, 88vh, 900px);
  padding-top: 150px !important;
  padding-bottom: 100px !important;
  color: #fff !important;
  background: #151412 url("assets/images/hero-coffee.jpg") center 48% / cover no-repeat !important;
  overflow: hidden;
}
body.home .lc-hero::before,
body.front-page .lc-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, rgba(8,8,7,.88) 0%, rgba(8,8,7,.66) 48%, rgba(8,8,7,.12) 100%),
              linear-gradient(0deg, rgba(8,8,7,.38), transparent 55%);
}
.lc-hero > .wp-block-columns { width: 100%; margin: 0 auto !important; }
.lc-hero .wp-block-column:first-child { max-width: 790px; }
.lc-hero .wp-block-column:last-child { align-self: flex-end; }
.lc-hero .wp-block-column:last-child p { color: rgba(255,255,255,.68); font-size: 9px; letter-spacing: .2em; text-align: right; }
.lc-hero .lc-eyebrow { color: #e0bd7e !important; letter-spacing: .22em; }
.lc-hero h1 { color: #fff !important; max-width: 850px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(54px, 7.2vw, 96px); font-weight: 500; line-height: 1.02; letter-spacing: -.045em; margin: 28px 0 24px; }
.lc-hero p { color: rgba(255,255,255,.82) !important; max-width: 620px; line-height: 1.85; }
.lc-hero .has-large-font-size { font-size: clamp(19px, 2vw, 25px) !important; line-height: 1.5; }
.lc-hero .wp-block-buttons { margin-top: 34px; gap: 14px; }
.lc-hero .wp-block-button__link { padding: 16px 23px; border: 1px solid #c7a15d; background: #c7a15d; color: #171613; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; transition: transform .25s, background .25s, color .25s; }
.lc-hero .is-style-outline .wp-block-button__link { background: transparent; color: #fff; }
.lc-hero .wp-block-button__link:hover { transform: translateY(-3px); background: #fff; border-color: #fff; color: #111; }
.lc-hero-scroll { position: absolute; right: clamp(20px, 6vw, 88px); bottom: 28px; color: rgba(255,255,255,.68) !important; font-size: 9px; letter-spacing: .2em; }
.lc-hero-scroll span { color: #c7a15d; margin-left: 10px; }

#o-nas { padding-top: clamp(75px, 9vw, 130px) !important; padding-bottom: clamp(75px, 9vw, 130px) !important; }
#o-nas h2, #oferta > .wp-block-heading, .lc-gallery-section h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 4.7vw, 62px);
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -.035em;
}
#o-nas .lc-stat { border-top: 1px solid #dedbd3; padding: 17px 0 8px; }
#o-nas .lc-stat:last-child { border-bottom: 1px solid #dedbd3; }
#o-nas .lc-stat h3 { font-size: 14px; margin-bottom: 5px; }
#o-nas .lc-stat p { color: #77736c; font-size: 12px; line-height: 1.7; }

#oferta { background: #11110f !important; color: #fff; padding-top: clamp(80px, 9vw, 130px) !important; padding-bottom: clamp(80px, 9vw, 130px) !important; }
#oferta > .lc-eyebrow { color: #c7a15d !important; }
#oferta > h2 { color: #fff; margin-top: 15px; margin-bottom: 18px; }
#oferta > p:not(.lc-eyebrow) { color: #aaa69d; max-width: 650px; margin-left: auto; margin-right: auto; line-height: 1.8; }
#oferta .lc-service-card { height: 100%; background: #1a1916; border: 1px solid rgba(255,255,255,.08); padding: 0 0 25px; overflow: hidden; transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease; }
#oferta .lc-service-card:hover { transform: translateY(-7px); border-color: rgba(199,161,93,.65); box-shadow: 0 18px 38px rgba(0,0,0,.22); }
#oferta .lc-service-card .wp-block-image { margin: 0 0 23px !important; overflow: hidden; }
#oferta .lc-service-card .wp-block-image img { width: 100%; height: clamp(180px, 19vw, 245px); object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
#oferta .lc-service-card:hover .wp-block-image img { transform: scale(1.055); }
#oferta .lc-service-card h3, #oferta .lc-service-card p { margin-left: 23px; margin-right: 23px; }
#oferta .lc-service-card h3 { color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: clamp(19px, 1.7vw, 24px); font-weight: 500; line-height: 1.2; }
#oferta .lc-service-card p { color: #aaa69d; font-size: 12px; line-height: 1.8; }
#oferta > .wp-block-columns { gap: 18px; margin-bottom: 18px; }
#oferta > .wp-block-columns:last-of-type { margin-top: 36px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.15); }
#oferta > .wp-block-columns:last-of-type h3 { color: #e0bd7e; font-family: Georgia, "Times New Roman", serif; font-weight: 500; font-size: 23px; }

.lc-statement { position: relative; isolation: isolate; overflow: hidden; padding: clamp(85px, 10vw, 145px) 22px !important; text-align: center; color: #fff; background: #171613 url("assets/images/hero-coffee.jpg") center 52% / cover no-repeat; }
.lc-statement::before { content: ""; position: absolute; z-index: -1; inset: 0; background: rgba(12,12,11,.84); }
.lc-statement .lc-eyebrow { justify-content: center; color: #c7a15d !important; }
.lc-statement h2 { color: #fff; font-family: Georgia, "Times New Roman", serif; font-size: clamp(40px, 6vw, 76px); line-height: 1.1; font-weight: 500; letter-spacing: -.035em; margin: 25px 0 35px; }
.lc-statement h2 em { color: #c7a15d; font-weight: 400; }
.lc-statement .wp-block-buttons { justify-content: center; }
.lc-statement .wp-block-button__link { background: transparent; color: #fff; border: 1px solid #c7a15d; padding: 15px 23px; text-transform: uppercase; font-size: 10px; letter-spacing: .12em; }
.lc-statement .wp-block-button__link:hover { background: #c7a15d; color: #111; }

.lc-gallery-section { background: #f5f3ee; padding-top: clamp(75px, 9vw, 120px) !important; padding-bottom: clamp(75px, 9vw, 120px) !important; }
.lc-gallery-section .lc-eyebrow { color: #a77c3f !important; }
.lc-gallery-section h2 { color: #171613; margin-top: 10px; }
.lc-gallery-section .wp-block-columns:first-child { align-items: end; margin-bottom: 38px; gap: 30px; }
.lc-gallery-section .wp-block-columns:first-child p:not(.lc-eyebrow) { color: #77736c; line-height: 1.8; font-size: 13px; }
.lc-gallery-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px !important; margin: 0 0 12px !important; }
.lc-gallery-grid > .wp-block-column { min-width: 0; }
.lc-gallery-grid .wp-block-image { margin: 0 !important; overflow: hidden; aspect-ratio: 1 / 1; background: #ddd; }
.lc-gallery-grid .wp-block-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .5s; filter: saturate(.82); }
.lc-gallery-grid .wp-block-column:hover img { transform: scale(1.06); filter: saturate(1); }
.lc-gallery-section > .wp-block-buttons { margin-top: 34px; }
.lc-gallery-section > .wp-block-buttons .wp-block-button__link { background: transparent; border: 1px solid #b38b50; color: #171613; padding: 14px 22px; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.lc-gallery-section > .wp-block-buttons .wp-block-button__link:hover { background: #c7a15d; color: #111; }

.lc-reveal { opacity: 0; transform: translateY(26px); transition: opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1); transition-delay: var(--lc-reveal-delay, 0ms); }
.lc-reveal.lc-visible { opacity: 1; transform: translateY(0); }
.lc-motion-ready .lc-reveal:not(.lc-visible) { will-change: opacity, transform; }
@media (prefers-reduced-motion: reduce) { .lc-reveal, .lc-reveal.lc-visible { opacity: 1 !important; transform: none !important; transition: none !important; } }

@media (max-width: 900px) {
  .lc-hero { min-height: 680px !important; background-position: 58% center !important; }
  .lc-hero .wp-block-column:last-child { display: none; }
  .lc-gallery-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px) {
  body.home .lc-hero, body.front-page .lc-hero { min-height: 690px; padding-top: 125px !important; padding-bottom: 95px !important; background-position: 60% center !important; }
  .lc-hero::before { background: linear-gradient(90deg, rgba(8,8,7,.82), rgba(8,8,7,.45)), linear-gradient(0deg, rgba(8,8,7,.45), transparent 60%); }
  .lc-hero h1 { font-size: clamp(46px, 12vw, 64px); }
  .lc-hero .wp-block-buttons { align-items: stretch; flex-direction: column; max-width: 280px; }
  .lc-hero .wp-block-button, .lc-hero .wp-block-button__link { width: 100%; text-align: center; }
  .lc-hero-scroll { right: 20px; bottom: 20px; font-size: 8px; }
  #oferta .lc-service-card .wp-block-image img { height: 225px; }
  .lc-gallery-section .wp-block-columns:first-child { display: block; }
  .lc-gallery-grid { gap: 8px !important; margin-bottom: 8px !important; }
}
