/* ===== Home: pełna szerokość bloków alignfull i odblokowanie entry-content ===== */

/* kasujemy globalny limit max-width, który motyw nakłada na bloki w treści */
body.home .entry-content > * {
  max-width: none !important;
}

/* dowolny blok oznaczony jako Pełna szerokość (alignfull) idzie od krawędzi do krawędzi */
body.home .entry-content > .alignfull {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* szczególnie dla bloku Cover (wideo) */
body.home .entry-content > .wp-block-cover.alignfull {
  min-height: 80vh !important;     /* wysokość jak ustaliliśmy */
  border-radius: 0 !important;
  overflow: hidden !important;
}
body.home .wp-block-cover.alignfull video.wp-block-cover__video-background {
  object-fit: cover !important;
  width: 100%;
  height: 100%;
}

/* ==========================================
   GLOBALNY TRYB FULL-WIDTH (wyłącza kontener)
   ========================================== */

html body .ct-container,
html body .ct-inner-container,
html body [class*="ct-container"],
html body [class*="ct-inner-container"] {
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Sekcje WordPressa */
.site-main,
.ct-main,
.entry-content,
.page-content {
  width: 100vw !important;
  max-width: 100vw !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Naprawa dla bloków WP */
.wp-block-group,
.wp-block-cover,
.wp-block-columns,
.wp-block-image,
.wp-block-html {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Linki – czarny/ciemnoszary (ustawienia motywu już masz; to tylko płynność) */
a { transition: color .25s ease; }

/* Stacked gallery */
.pm-stacked-gallery { max-width: 640px; margin: 0 auto; }
.pm-stacked-gallery .pm-img {
  width: 100%; height: auto; display: block;
  margin: 0 0 12px 0; border-radius: 3px;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
  cursor: zoom-in; transition: transform .3s ease;
}
.pm-stacked-gallery .pm-img:hover { transform: scale(1.02); }

/* Sticky prawa kolumna na desktopie */
@media (min-width: 992px){
  .single-product .summary.entry-summary{ position: sticky; top: 96px; align-self: start; }
  .single-product .product{ gap: 48px; }
}
/* Wyłącz sticky na mobile */
@media (max-width: 991.98px){
  .single-product .summary.entry-summary{ position: static; }
}

/* Kontener produktu – brak obcięć */
.single-product .product,
.single-product .product .ct-container{ overflow: visible !important; }

/* Sekcja SKŁAD/ROZMIAR */
.pm-spec{ margin: 24px 0 8px 0; }
.pm-spec__block{ margin: 0 0 14px 0; }
.pm-spec__title{
  font-family: Inter, sans-serif; font-weight: 600; font-size: 12px;
  letter-spacing: .06em; text-transform: uppercase; color: #111; margin: 0 0 6px 0;
}
.pm-spec__text{ color: #2A2A2A; font-size: 14px; line-height: 1.6; }

/* Lightbox (modal) – tło/obraz */
#pmLightbox{ position: fixed; inset: 0; background: rgba(0,0,0,.9); display: none;
  align-items: center; justify-content: center; z-index: 99999; }
#pmLightbox img{ max-width: 90%; max-height: 90%;
  box-shadow: 0 16px 40px rgba(0,0,0,.4); }

/* Przycisk w headerze jako „ikona” */
.ct-header [data-id="button"] a.ct-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  line-height: 1;
  padding: 6px 10px; /* dopasuj po swojemu */
}

/* rozmiar i licznik */
.ct-header [data-id="button"] .wishlist_products_counter { font-size: 18px; }
.ct-header [data-id="button"] .wishlist_products_counter_number { font-size: 12px; }

/* opcjonalnie kolor hover */
.ct-header [data-id="button"] a.ct-button:hover { color: #e63946; }

/* ==========================================
   STRONA GŁÓWNA — PANI MARYNARKA
   ========================================== */

/* HERO */
.pm-hero {
  position: relative;
  width: 100vw;
  height: 90vh;
  margin-left: calc(50% - 50vw);
  overflow: hidden;
}
.pm-hero video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pm-hero__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.2);
}
.pm-hero__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
}
.pm-hero__content h1 {
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: -1px;
  margin-bottom: 10px;
}
.pm-hero__content p {
  font-size: 1.2rem;
  margin-bottom: 30px;
}
.pm-btn {
  background: #000;
  color: #fff;
  padding: 14px 36px;
  border-radius: 4px;
  text-decoration: none;
  font-weight: 600;
  transition: background 0.3s;
}
.pm-btn:hover {
  background: #333;
}

/* KOLEKCJA */
.pm-collection {
  text-align: center;
  padding: 80px 5%;
}
.pm-collection h2 {
  font-size: 2rem;
  margin-bottom: 40px;
}
.pm-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 24px;
}
.pm-item {
  text-decoration: none;
  color: #000;
  transition: transform 0.3s;
}
.pm-item:hover {
  transform: translateY(-4px);
}
.pm-item img {
  width: 100%;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.pm-item h3 {
  margin-top: 12px;
  font-size: 1rem;
  font-weight: 500;
}


/* ===== Sekcje pod hero — pełna szerokość z bezpiecznym środkiem ===== */

/* Kolekcje – większe kafle, 3 kolumny na desktopie */
.pm-collection .pm-grid{
  grid-template-columns: repeat(3, 1fr) !important; /* zmień na 2 jeśli chcesz jeszcze większe */
  gap: 32px !important;
}

/* Tablet: 2 kolumny, Mobile: 1 kolumna */
@media (max-width: 1024px){
  .pm-collection .pm-grid{ grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 600px){
  .pm-collection .pm-grid{ grid-template-columns: 1fr !important; }
}

/* Obrazki – jak w listingu produktów: 3:4, większe, z delikatnym zaokrągleniem */
.pm-collection .pm-item img{
  width: 100% !important;
  height: auto !important;         /* zostawiamy naturalną wysokość */
  aspect-ratio: 3 / 4;             /* proporcje jak w kategoriach */
  object-fit: cover;               /* wypełnienie kadru */
  border-radius: 1% !important;    /* Twoje życzenie: ~1/100 */
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

/* =======================
   Eliminacja odstępów między sekcjami (Home)
   ======================= */

body.home section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* dodatkowo niwelujemy potencjalne "szczeliny" wynikające z marginesów wewnętrznych */
body.home .pm-about,
body.home .pm-newsletter,
body.home .pm-collection {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* bezpieczny odstęp wewnętrzny (opcjonalnie) – tylko treść */
body.home .pm-about__inner,
body.home .pm-newsletter__inner,
body.home .pm-collection > * {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}

/* ==========================================
   HOME – usunięcie białych przerw między sekcjami
   ========================================== */

/* HOME: zbij globalny odstęp między blokami treści */
body.home .entry-content { --content-spacing: 0px !important; }
body.home .entry-content > * + * { margin-top: 0 !important; }

/* HOME: wyzeruj Gutenbergowy block-gap (constrained/flow/flex) */
body.home .is-layout-constrained,
body.home .is-layout-flow,
body.home .is-layout-flex,
body.home .wp-block-group { gap: 0 !important; --wp--style--block-gap: 0px !important; }

/* HOME: wrappery bloków nie dokładają marginesów */
body.home .wp-block-group,
body.home .wp-block-html { margin: 0 !important; padding: 0 !important; }

/* Sekcje: pewność że nie mają własnych marginesów */
.pm-collection, .pm-about, .pm-newsletter { margin: 0 !important; }
.pm-collection + .pm-newsletter,
.pm-about + .pm-newsletter { margin-top: 0 !important; }

/* Jeśli newsletter jest blokiem MailPoet – skasuj też jego narzuty */
body.home .mailpoet_form,
body.home .mailpoet_form_container { margin: 0 !important; padding-top: 0 !important; }

@media(max-width:1024px){
  .pm-grid{ grid-template-columns:repeat(2,1fr)!important; }
}
@media(max-width:600px){
  .pm-grid{ grid-template-columns:1fr!important; }
}

/* --- O MARCE: wymuś dwie kolumny nawet z wrapperami Gutenberga --- */
.entry-content .pm-about-intro{
  background:#faf8f4;
  padding:100px 24px;
}

/* Jeśli Gutenberg dodał różne kontenery — potraktuj je jak jeden grid */
.entry-content .pm-about-intro .pm-about-flex,
.entry-content .pm-about-intro > .wp-block-group,
.entry-content .pm-about-intro > .wp-block-group > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.85fr) !important;
  align-items: center !important;
  gap: 100px !important;
  max-width: 1200px;
  margin: 0 auto;
}

/* Upewnij się, że „kolumny” nie mają własnych marginesów narzucanych przez motyw */
.entry-content .pm-about-intro .pm-about-text,
.entry-content .pm-about-intro .pm-about-photo,
.entry-content .pm-about-intro > .wp-block-group > .wp-block-group__inner-container > * {
  margin: 0 !important;
}

/* Typografia */
.entry-content .pm-about-intro .pm-about-text h2{
  font-size:28px; font-weight:600; margin-bottom:24px; letter-spacing:-.01em;
}
.entry-content .pm-about-intro .pm-about-text p{
  font-size:17.5px; line-height:1.85; letter-spacing:.01em; color:#2a2a2a; margin-bottom:18px;
}

/* Zdjęcie */
.entry-content .pm-about-intro .pm-about-photo img,
.entry-content .pm-about-intro img{
  width:100% !important;
  height:auto !important;
  object-fit:cover;
  border-radius:0 !important;              /* bez zaokrągleń */
  box-shadow:0 20px 50px rgba(0,0,0,.06);   /* delikatny cień */
  display:block;
}

/* Mobile: jedna kolumna (zdjęcie nad tekstem) */
@media (max-width: 900px){
  .entry-content .pm-about-intro .pm-about-flex,
  .entry-content .pm-about-intro > .wp-block-group,
  .entry-content .pm-about-intro > .wp-block-group > .wp-block-group__inner-container{
    grid-template-columns: 1fr !important;
    gap: 60px !important;
  }
  .entry-content .pm-about-intro{ padding:70px 20px; }
  .entry-content .pm-about-intro .pm-about-text h2{ text-align:center; }
}

.pm-product-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.06);
  transition: all 0.3s ease;
}

.pm-product-card:hover h3 {
  color: #000; /* tytuł lekko ciemniejszy */
}

/* ——— Specyfikacja (dopinka: tytuły i treść) ——— */
.pm-spec{ margin: 24px 0 8px; }
.pm-spec__block{ margin: 0 0 14px; }
.pm-spec__title{
  font-family: Inter, sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #111;
  margin: 0 0 6px;
}
.pm-spec__text{
  color: #2A2A2A;
  font-size: 14px;
  line-height: 1.6;
}

/* ——— Akordeon: „Opis produktu” ——— */
.pm-acc {
  border-top: none !important;
  padding-top: 0 !important;
}

.pm-acc__summary{
  list-style: none;
  cursor: pointer;
  font-family: Inter, sans-serif;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #111;
  display: flex;
  align-items: center;
  gap: 8px;
}
.pm-acc__summary::-webkit-details-marker{ display: none; }
.pm-acc__summary:after{
  content: '+';
  font-weight: 700;
  line-height: 1;
  transform: translateY(-1px);
}
.pm-acc[open] .pm-acc__summary:after{ content: '–'; }

.pm-acc__content{
  margin-top: 12px;
  color: #2A2A2A;
  font-size: 14px;
  line-height: 1.7;
}

/* Odstęp między harmonijką a przyciskiem na karcie produktu */
.pm-acc[data-acc="desc"] {
  margin-bottom: 18px !important; /* możesz zmienić np. na 16 lub 20px */
}

/* Tylko karta produktu – schowaj skrócony opis wizualnie */
.single-product .woocommerce-product-details__short-description {
  display: none !important;
}

/* === PANI MARYNARKA — mikro-luz po prawej w headerze (3–6px) === */

/* 1) Odtwórz padding tylko w headerze (oryginał + sticky-klon + mobilny) */
html body header#header.ct-header .ct-container,
html body .ct-sticky-header header#header.ct-header .ct-container,
html body .ct-header-sticky header#header.ct-header .ct-container,
html body .ct-header[data-sticky="yes"] .ct-container {
  box-sizing: border-box !important;
  padding-right: 6px !important;   /* zmień na 3–8px wg potrzeb */
}

/* 2) Prawa kolumna ikon – lekki zapas */
html body header#header.ct-header [data-row="middle"] .ct-header-items[data-column="right"],
html body .ct-sticky-header header#header.ct-header [data-row="middle"] .ct-header-items[data-column="right"]{
  padding-right: 3px !important;   /* 2–4px */
  margin-right: 0 !important;
}

/* 3) Dropdown koszyka – nie wyjeżdża i respektuje nowy margines */
html body header#header.ct-header .ct-header-cart .ct-cart-dropdown,
html body header#header.ct-header .ct-header-cart .ct-cart-content,
html body .ct-sticky-header header#header.ct-header .ct-header-cart .ct-cart-dropdown,
html body .ct-sticky-header header#header.ct-header .ct-header-cart .ct-cart-content {
  left: auto !important;
  right: 3px !important;           /* spójne z pkt 2 */
  transform: none !important;
  transform-origin: top right !important;
  max-width: min(420px, calc(100vw - 16px)) !important;
  z-index: 99999 !important;
}

/* 4) Strzałka dropdownu dopasowana do odsunięcia */
html body header#header.ct-header .ct-header-cart .ct-cart-dropdown:before,
html body header#header.ct-header .ct-header-cart .ct-cart-dropdown:after,
html body .ct-sticky-header header#header.ct-header .ct-header-cart .ct-cart-dropdown:before,
html body .ct-sticky-header header#header.ct-header .ct-header-cart .ct-cart-dropdown:after {
  left: auto !important;
  right: 27px !important; /* klasyczne 24px + nasz 3px */
}

/* 5) Ultra-specyficzność – gdyby coś jeszcze nadpisywało */
:root body header#header.ct-header .ct-header-cart .ct-cart-content { right: 3px !important; }

/* === WISHLIST: ukrycie kolumny "Data dodania" === */
.yith-wcwl-table th.product-date,
.yith-wcwl-table td.product-date {
  display: none !important;
}

/* === WISHLIST: przycisk "Dodaj do koszyka" – statyczny, bez hovera === */
.yith-wcwl-add-to-cart a,
.yith-wcwl-add-to-cart button,
.yith-wcwl-add-to-cart input[type="submit"] {
  background-color: #000 !important;
  color: #fff !important;
  border-radius: 3px !important;
  padding: 10px 18px !important;
  transition: none !important;
  transform: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

/* Brak jakiejkolwiek zmiany po najechaniu */
.yith-wcwl-add-to-cart a:hover,
.yith-wcwl-add-to-cart button:hover,
.yith-wcwl-add-to-cart input[type="submit"]:hover {
  background-color: #000 !important;
  color: #fff !important;
  transform: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* === WISHLIST: ukrycie tytułu strony (np. "Obserwowane") === */
#post-4082 .hero-section header h1 {
  display: none !important;
}

/* Nowe akordeony atrybutów */
details.pm-acc[data-acc="rozmiar"] {
  margin-top: 18px;
}

details.pm-acc[data-acc="rozmiar"],
details.pm-acc[data-acc="sklad"],
details.pm-acc[data-acc="kolor"],
details.pm-acc[data-acc="wymiary"],
details.pm-acc[data-acc="desc"] {
  margin-bottom: 16px !important;
}