/**
 * Content
 */

body {
	background-color: #fff;
	color: #000;
}

a:active {
	color: white;
}

.page a.active {
	color: rgba(255, 255, 255, 1);
}

i,
em {
	font-style: italic;
}

b,
strong {
	font-weight: bolder;
}

sub,
sup {
    font-size: 0.30em;
	position: relative;
	vertical-align: baseline;
}

sub {
	top: 0.3em;
}

sup {
	bottom: 1.0em;
    color: rgba(255, 255, 255, 0.6);
	font-style: normal;
	font-weight: 400;
    margin-left: 0.2rem;
}

s {
	text-decoration: line-through;
}

img {
	border: 0;
	padding: 0;
}

ul,
ol {
	margin: 0;
	padding: 0 0 0 4.5rem;
}

ol>li {
	padding-left: 0.75rem;
}

blockquote {
	margin: 0;
	padding: 0 0 0 2em;
}

hr {
	background: rgba(0, 0, 0, .15);
	border: 0;
	height: 1px;
	display: block;
}

.content img {
	float: none;
	margin-bottom: 0.5rem;
    vertical-align: bottom;
}

.gallery_image_caption {
    margin-top: 1.2em;
    margin-bottom: 0.5rem;
    font-size: 1.8rem;
	font-weight: 400;
	color: rgba(0, 0, 0, 0.85);
	font-family: "Junicode Condensed", Icons;
	font-style: normal;
	line-height: 1.3;
    text-align: left;
	letter-spacing: 0.02em;
}

/**
 * Loading Animation
 */

.loading[data-loading] {
	position: fixed;
	bottom: 8px; 
    left: 8px;
}

/**
 * Editor styles
 */

[data-predefined-style="true"] bodycopy {
	font-size: 3.6rem;
	font-weight: 400;
	color: rgba(0, 0, 0, 0.85);
	font-family: "Junicode Condensed", Icons;
	font-style: normal;
	line-height: 1.3;
}

[data-predefined-style="true"] bodycopy a {
	color: rgba(0, 0, 0, 0.85);
	padding-bottom: 0.1em;
	border-bottom: 0.0em solid rgba(127, 127, 127, 0.2);
	text-decoration: none;
}

[data-predefined-style="true"] bodycopy a:hover {

}

bodycopy a.image-link,
bodycopy a.icon-link,
bodycopy a.image-link:hover,
bodycopy a.icon-link:hover {
	border-bottom: 0;
	padding-bottom: 0;
}

[data-predefined-style="true"] h1 {
	font-family: Syne, Icons;
	font-style: normal;
	font-weight: 400;
	padding: 0;
	margin: 0;
	font-size: 2.3rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] h1 a {
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] h2 {
	font-family: "Diatype Mono Variable", Icons;
	font-style: normal;
	font-weight: 400;
	padding: 0;
	margin: 0;
	color: rgba(0, 0, 0, 0.85);
	font-size: 1.2rem;
	line-height: 1.2;
	letter-spacing: 0.01em;
	font-variation-settings: 'slnt' 0, 'MONO' 1;
}

[data-predefined-style="true"] h2 a {
	color: rgba(0, 0, 0, 0.85);
}

[data-predefined-style="true"] small {
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1.2;
	font-family: "Monument Grotesk Semi-Mono Variable", Icons;
	font-style: normal;
	font-weight: 339;
	color: rgba(0, 0, 0, 0.85);
    letter-spacing: 0.01em;
	font-variation-settings: 'slnt' -1.7, 'MONO' 0.15;
}

[data-predefined-style="true"] small a {
	color: rgba(0, 0, 0, 0.85);
	border-bottom-width: 0em;
}

/**
 * Breakpoints
 */

[data-css-preset] .page {
    background-color: initial /*!page_bgcolor*/;
}

.mobile .page,
[data-css-preset].mobile .page {
	position: relative;
	min-height: 10px;
	max-width: 100%;
	width: 100%;
	background-color: transparent /*!page_bgcolor*/;
}

[data-css-preset] .container {
	margin-left: auto /*!content_center*/;
	margin-right: auto /*!content_center*/;
	text-align: left /*!text_left*/;
}

[data-css-preset] body {
	background-color: #f8f5f0/*!body_bgcolor*/;
}

[data-css-preset] .container_width {
	width: 94%/*!content_center*/;
}

[data-css-preset] .content_padding {
	padding-top: 0.9rem /*!main_margin*/;
	padding-bottom: 0.9rem /*!main_margin*/;
	padding-left: 0.9rem /*!main_margin*/;
	padding-right: 0.9rem /*!main_margin*/;
}

[data-css-preset] text-limit {
	display: inline-block /*!text_width*/;
	max-width: 66rem/*!text_width*/;
}

[data-css-preset] .backdrop {
	width: 100% /*!background_cover*/;
}

/**
 * Thumbnails
 */

div[thumbnails] {
	justify-content: flex-start;
}

[data-css-preset] .thumbnails {
   	background-color: rgba(0, 0, 0, 0)/*!thumbnails_bgcolor*/;   
}

[data-css-preset] .thumbnails_width {
    width: 100%/*!thumbnails_width*/;
}

[data-css-preset] [thumbnails-pad] {
    padding: 0.75rem/*!thumbnails_padding*/;
}

[data-css-preset] [thumbnails-gutter] {
    margin: -1.5rem/*!thumbnails_padding*/;
}

[data-css-preset] [responsive-layout] [thumbnails-pad] {
    padding: 0.5rem/*!responsive_thumbnails_padding*/; 
}

[data-css-preset] [responsive-layout] [thumbnails-gutter] {
    margin: -1rem/*!responsive_thumbnails_padding*/; 
}

.thumbnails .thumb_image {
	outline: 0px solid rgba(0,0,0,.12);
    outline-offset: -1px;
}

.thumbnails .title {
    margin-top: .8rem;
    margin-bottom: 1rem;
    font-size: 3rem;
	font-weight: 400;
	color: rgba(0, 0, 0, 0.85);
	font-family: "Junicode Condensed", Icons;
	font-style: normal;
	line-height: 1.3;
}

.thumbnails .tags {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
    font-size: 1.8rem;
	font-weight: 400;
	color: rgba(0, 0, 0, 0.4);
	font-family: "Junicode Condensed", Icons;
	font-style: normal;
	line-height: 1.3;
}

.thumbnails .tags a {
	border-bottom: 0;
    color: rgba(0, 0, 0, 0.35);
    text-decoration: none;
}

.thumbnails .has_title .tags {
	margin-top: 0rem;
}

/**
 * Site Menu
 */

[data-css-preset] #site_menu_button {
	color: rgba(0, 0, 0, 0.75);
	line-height: 1;
	font-size: 32px /*!site_menu_button*/;
	padding: 6px;
	line-height: 1;
	background: rgba(33, 32, 46, 0);
	position: fixed;
	top: 2rem /*!site_menu_button*/;
	right: 2rem /*!site_menu_button*/;
}

body.mobile #site_menu_button {
	margin: -6px;
	font-size: 34px;
}

#site_menu_button.custom_icon {
	width: 40px;
	height: auto;
}

#site_menu_button.active {
	display: none;
}

/**
 * Site Menu
 */

#site_menu {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif, "Sans Serif", Icons;
	background: rgba(20, 20, 20, 0.95);
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	padding: 20px 30px 90px 30px;
	max-width: 400px;
	min-width: 300px;
	text-align: left;
	display: flex;
	justify-content: flex-start;
}

body.mobile #site_menu {
	width: 100%;
}

#site_menu .page-link a {
	color: rgba(255, 255, 255, 0.75);
}

#site_menu .set-link > a {
	color: rgba(255, 255, 255, 0.75);
	font-weight: bold;
}

#site_menu a:active {
	opacity: .7;
}

#site_menu a.active {
	opacity: .4;
}

#site_menu .close {
	display: none;
	color: rgba(255, 255, 255, 0.4);
	line-height: .85em;
	font-size: 45px;
}

body.mobile #site_menu .close {
	display: block;
	font-size: 50px;
	line-height: 1em;
}

#site_menu .break {
	height: 28px;
}

#site_menu .indent {
	margin-left: 28px;
}

/**
 * Shop Button
 */

[data-css-preset] #shop_button {
	color: rgba(0, 0, 0, 0.85);
    background: transparent;
	font-size: 32px;
    font-style: normal;
	font-weight: 400;
    line-height: 1.;
    position: fixed;
	padding: 6px;
	top: 2rem /*!shop_button*/;
	right: 2rem /*!shop_button*/;
}

#shop_button.text {
    font-family: "Junicode Condensed", Icons;
	font-size: 3rem;
    padding: 0;
	font-weight: 400;
	color: rgba(0, 0, 0, 0.85);
	font-style: normal;
    line-height: 1.2;
}

#shop_button.custom_icon {
	width: 40px;
    height: auto;
}

body.mobile #shop_button:not(.text) {
	margin: -6px;
    font-size: 36px;
}

/**
 * Shop Product Widget
 */

.shop_product {
    width: 100%;
	max-width: 22rem;
    position: relative;
    display: block;
}

.shop_product .price {
	font-family: "Junicode Condensed", Icons;
	font-size: 2.5rem;
	line-height: 1;
	color: rgba(0, 0, 0, 0.85);
    display: block;
    margin-bottom: 1rem;
	font-style: normal;
	font-weight: 400;
}

.shop_product .dropdown {
    font-family: "Junicode Condensed", Icons;
    font-size: 2.5rem;
    display: inline-block;
	width: 100%;
    border: 1px solid rgba(0,0,0,.2);
    background:  white url(https://static.cargo.site/assets/images/select-line-arrows.svg) no-repeat right;
    margin-bottom: 1rem;
    line-height: 1.2;
    padding: .6rem 3rem .6rem 1rem;
	font-style: normal;
	font-weight: 400;
}

.shop_product .button {
    font-family: "Junicode Condensed", Icons;
	font-size: 2.5rem;
    background: rgba(0, 0, 0, 0.7);
    color: rgba(255,255,255,1);
    flex: 0 0 50%;
    text-align: left;
    display: inline-block;
	line-height: 1;
    padding: .8rem 1.2rem .9rem;
	font-style: normal;
	font-weight: 400;
}

/**
 * Image 
 */

.content img.image-zoom:active {
  opacity: .7;
}

/**
 * Quick View
 */

[data-css-preset] .quick-view {
    padding-top: 2.5rem /*!quick_view_padding*/;
    padding-bottom: 2.5rem /*!quick_view_padding*/;
    padding-left: 2.5rem /*!quick_view_padding*/;
    padding-right: 2.5rem /*!quick_view_padding*/;
    height: 100% /*!quick_view_height*/;
    width: 100% /*!quick_view_width*/;
}

body.mobile .quick-view {
    width: 100%;
    height: 100%;
    margin: 0;
}


[data-css-preset] .quick-view-background {
	background: rgba(0, 0, 0, 0.85) /*!quick_view_bgcolor*/;
}

.quick-view-caption {
    font-family: "Junicode Condensed", Icons;
    transition: 100ms opacity ease-in-out;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 3.5rem 0;
    text-align: center;
    font-size: 1.8rem;
	font-style: normal;
	font-weight: 400;
    letter-spacing: 0.02em;
}

.quick-view-caption span {
    padding: 0.5rem 1rem;
    display: inline-block;
    background: rgba(0,0,0,0.5);
    color: white;
}

/**
 * Quick View Navigation 
 */

.quick-view-navigation .left-arrow {
    left: 10px;
}

.quick-view-navigation .right-arrow {
    right: 10px;
}

.quick-view-navigation .left-arrow,
.quick-view-navigation .right-arrow {
    height: 36px;
    width: 36px;
}

.quick-view-navigation .left-arrow .inner-color,
.quick-view-navigation .right-arrow .inner-color {
    stroke: #fff;
    stroke-width: 1.5px;
}

.quick-view-navigation .left-arrow .outer-color,
.quick-view-navigation .right-arrow .outer-color {
    stroke: rgba(0, 0, 0, 0.6);
    stroke-width: 2.5px;
}

.quick-view-navigation .close-button {  
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
}

.quick-view-navigation .close-button .inner-color {
    stroke: #fff;
    stroke-width: 1.5px;
}

.quick-view-navigation .close-button .outer-color {
    stroke: rgba(0, 0, 0, 0.6);
    stroke-width: 2.5px;
}

/** 
 * Image Gallery Navigation Arrows 
 */
 
.image-gallery-navigation .left-arrow,
.image-gallery-navigation .right-arrow {
    height: 36px;
    width: 36px;
}

.image-gallery-navigation .left-arrow .inner-color,
.image-gallery-navigation .right-arrow .inner-color {
    stroke: rgba(255, 255, 255, 1);
    stroke-width: 1.5px;
}

.image-gallery-navigation .left-arrow .outer-color,
.image-gallery-navigation .right-arrow .outer-color {
    stroke: rgba(0, 0, 0, 0.6);
    stroke-width: 2.5px;
}

/**
 * Wallpaper Backdrop Navigation Arrows 
 */

.wallpaper-navigation .left-arrow,
.wallpaper-navigation .right-arrow {
   width: 36px;
   height: 36px;
}

.wallpaper-navigation .left-arrow .inner-color,
.wallpaper-navigation .right-arrow .inner-color {
   stroke: #fff;
    stroke-width: 1.5px;
}

.wallpaper-navigation .left-arrow .outer-color,
.wallpaper-navigation .right-arrow .outer-color {
    stroke: rgba(0, 0, 0, 0.6);
    stroke-width: 2.5px;
}

/**
 * Feed
 */

.feed .content_container .page {
    border-top: 0px dashed rgba(0, 0, 0, 0.2);
}

.feed .content_container .page_container:first-child .page {
	border-top: 0;
}

/**
 * Audio Player
 */

.audio-player {
    max-width: 26rem;
    height: 3.3rem;
    outline: 1px solid rgba(0,0,0,0.15);
    color: rgba(0, 0, 0, 0.6);
    background: transparent;
    font-size: 1.2rem;
    line-height: 1.3;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif, "Sans Serif", Icons;
    font-style: normal;
    font-weight: 400;
    text-align: left;
    margin: 1px 1px 1em 1px;
}

body.mobile .audio-player {
    max-width: 100%;
}

.audio-player .separator {
    width: 1px;
    background-color: rgba(0,0,0,0.15);
}

.audio-player .button {
    background: transparent;
    cursor: pointer;
    fill: rgba(0, 0, 0, 0.85);
}

.audio-player .icon {
    fill: rgba(0, 0, 0, 0.85);
    padding: 30%;
    width: 100%;
    margin: auto;
}

.audio-player .buffer {
    background: rgba(0,0,0,0.03);
}

.audio-player .progress {
    background: rgba(0,0,0,0.1);
}

.audio-player .progress-indicator {
    border: 1px solid rgba(0, 0, 0, 0.7);
    width: 1px;
    height: 100%;
    right: 0;
    position: absolute;
    cursor: ew-resize;
}

.audio-player .note-icon {
    height: 100%;
    width: 3.8rem;
    padding: 1rem;
    fill: rgba(0, 0, 0, 0.5);
}

.audio-player .current-time {
    padding-left: 1rem;
}

.audio-player .total-time {
    padding-right: 1rem;
}
/* made-to-order image spacing fix */
div[grid-row][grid-gutter="1.5"] > div[grid-col] > br {
  display: none !important;
}

div[grid-row][grid-gutter="1.5"] .image-link {
  display: block !important;
  line-height: 0 !important;
  margin: 0 0 0.6rem 0 !important;
}

div[grid-row][grid-gutter="1.5"] .image-link img,
div[grid-row][grid-gutter="1.5"] img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  vertical-align: top !important;
  margin: 0 !important;
}

div[grid-row][grid-gutter="1.5"] h2 {
  margin: 0 0 2rem 0 !important;
}
/* =========================
   CAVE NAV OVERRIDE (AZUR BEHAVIOUR)
   wklej NA KOŃCU pliku CSS
========================= */

/* GŁÓWNE MENU: projects / made-to-order / for-home / about */
.ct-mainnav{
  position: fixed;     /* <- STABILNE NA SCROLL jak Azur */
  top: 26px;
  left: 26px;
  right: 26px;
  z-index: 9999;

  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 18px;

  /* żeby menu nie blokowało klików w obrazki pod spodem */
  pointer-events: none;
}
.ct-mainnav a{ pointer-events: auto; }

.ct-mainnav h1{
  margin: 0;           /* usuwa domyślne marginesy, które psują układ */
  line-height: 1;
}

/* linki dziedziczą font + kolor z Twojego projektu */
.ct-mainnav a{
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
}

/* SUBNAV dla made-to-order (kategorie) */
.ct-subnav{
  position: fixed;     /* <- też stabilne na scroll */
  top: 78px;           /* <- jest poniżej głównego menu (dopasujemy po screenie) */
  left: 26px;
  right: 26px;
  z-index: 9998;

  display: none;       /* pokażemy tylko na made-to-order */
  gap: 22px;
  align-items: baseline;
  justify-content: center;

  overflow-x: auto;    /* na telefonie przewijane, nie upychane */
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  padding-bottom: 6px;

  pointer-events: none;
}
.ct-subnav a{ pointer-events: auto; }

.ct-subnav::-webkit-scrollbar{ height: 0px; }

.ct-subnav a{
  color: inherit;
  text-decoration: none;
  opacity: 0.9;
  font-size: 1.6rem; /* nie zmieniamy font-family */
}
.ct-subnav a:hover{ opacity: 1; }

/* MOBILE: zamiast cramming, robimy 2x2 układ */
@media (max-width: 680px){
  .ct-mainnav{
    top: 16px;
    left: 14px;
    right: 14px;

    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 18px;
    row-gap: 10px;
    justify-items: start;
  }
  .ct-mainnav a:nth-child(2),
  .ct-mainnav a:nth-child(4){
    justify-self: end;
  }

  .ct-subnav{
    top: 62px;
    left: 14px;
    right: 14px;
    justify-content: flex-start;
    gap: 16px;
  }
}/* ===== CAVE: Sticky logo (only) + centered scrolling menu ===== */
:root{
  --ct-logo-top: 16px;       /* odległość logo od góry */
  --ct-logo-h: 42px;         /* wysokość logo */
  --ct-menu-top-space: 92px; /* ile miejsca pod logo zanim zacznie się menu */
  --ct-gap: 46px;            /* odstęp między słowami w menu (desktop) */
}

/* Sticky logo */
.ct-sticky-logo{
  position: fixed;
  top: var(--ct-logo-top);
  left: 50%;
  transform: translateX(-50%);
  z-index: 9999;
  pointer-events: none; /* nie blokuje klików pod spodem */
}
.ct-logo-link{ pointer-events: auto; display:block; }
.ct-sticky-logo img{
  height: var(--ct-logo-h);
  width: auto;
  display: block;
}

/* Menu: scrolluje (nie fixed), wyśrodkowane */
.ct-menu-row{
  margin-top: var(--ct-menu-top-space);
  display: flex !important;
  justify-content: center;
  align-items: baseline;
  gap: var(--ct-gap);
  white-space: nowrap;
  text-align: center;
}

/* Cargo czasem dodaje <br> i rozwala linię */
.ct-menu-row br{ display:none !important; }

.ct-menu-row h1{
  margin: 0 !important;
  line-height: 1 !important;
}
.ct-menu-row a{
  color: inherit;
  text-decoration: none;
}

/* Zagęszczanie na mniejszych ekranach */
@media (max-width: 1100px){
  :root{ --ct-gap: 28px; }
  .ct-menu-row h1{ font-size: 2.0rem; }
}
@media (max-width: 900px){
  :root{ --ct-gap: 18px; }
  .ct-menu-row h1{ font-size: 1.8rem; }
}

/* Telefon: zamiast sypania, układa się 2 rzędy */
@media (max-width: 680px){
  :root{
    --ct-logo-h: 38px;
    --ct-menu-top-space: 80px;
    --ct-gap: 18px;
  }
  .ct-menu-row{
    flex-wrap: wrap;
    white-space: normal;
    row-gap: 10px;
    column-gap: 20px;
  }
  .ct-menu-row h1{ font-size: 1.8rem; }
}
/* Fix: nie ucinaj liter w subnav */
.ct-mto-subnav{
  line-height: 1.25;
  padding-top: 6px;
  padding-bottom: 10px;  /* zamiast 6px, dajemy więcej miejsca */
  overflow-y: visible;
}
.ct-mto-subnav a{
  display: inline-block;
  padding: 2px 0;        /* daje “oddech” literom typu g/y/p */
}
/* ===== MADE-TO-ORDER: stabilize grid spacing ===== */
div[grid-row][grid-gutter="1.5"] br{
  display: none !important;
}

/* obrazki zawsze jako blok, pełna szerokość, stały odstęp pod zdjęciem */
div[grid-row][grid-gutter="1.5"] img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 14px 0 !important; /* <- odstęp POD zdjęciem */
  vertical-align: top !important;
}

/* link obrazka nie robi własnych odstępów */
div[grid-row][grid-gutter="1.5"] .image-link{
  display: block !important;
  line-height: 0 !important;
  margin: 0 !important;
}

/* tytuł zawsze w tym samym rytmie */
div[grid-row][grid-gutter="1.5"] h2{
  display: block !important;
  margin: 0 0 34px 0 !important; /* <- odstęp POD tytułem (między produktami) */
  line-height: 1.15 !important;
}

/* jeśli gdzieś h2 jest linkiem zagnieżdżonym w linku, neutralizujemy podkreślenia */
div[grid-row][grid-gutter="1.5"] h2 a{
  text-decoration: none;
}
/* ===== MADE-TO-ORDER: caption optional, but spacing always equal ===== */

/* 1) kill random <br> gaps inside the product grid */
div[grid-row][grid-gutter="1.5"] br{
  display:none !important;
}

/* 2) normalize image links + images */
div[grid-row][grid-gutter="1.5"] .image-link{
  display:block !important;
  line-height:0 !important;
  margin:0 !important;
}

div[grid-row][grid-gutter="1.5"] .image-link img,
div[grid-row][grid-gutter="1.5"] img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
  vertical-align:top !important;
}

/* 3) THIS IS THE KEY:
      reserve “caption space” under EVERY image,
      even if there is no h2 */
div[grid-row][grid-gutter="1.5"] .image-link{
  margin-bottom: 48px !important;  /* <- pusty slot pod zdjęciem */
}

/* 4) If caption exists, pull it up into that reserved space:
      (48px reserved - 34px pull-up = ~14px real gap under image) */
div[grid-row][grid-gutter="1.5"] h2{
  margin-top: -34px !important;    /* <- podciąga podpis do góry */
  margin-bottom: 34px !important;  /* <- stała przerwa po podpisie */
  line-height:1.15 !important;
}
/* ===== GRID: RÓWNY RYTM zdjęcie + tekst pod spodem ===== */

/* zabij losowe <br> (one rozwalają rytm) */
div[grid-row][grid-gutter="1.5"] br{ 
  display:none !important; 
}

/* obrazek zawsze blokiem, bez dziwnych line-height */
div[grid-row][grid-gutter="1.5"] .image-link{
  display:block !important;
  line-height:0 !important;
  margin:0 !important;
}

div[grid-row][grid-gutter="1.5"] .image-link img,
div[grid-row][grid-gutter="1.5"] img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  margin:0 !important;
}

/* stały odstęp POD zdjęciem */
div[grid-row][grid-gutter="1.5"] .image-link{
  margin-bottom: 12px !important;
}

/* każdy tytuł ma ten sam “slot” wysokości */
div[grid-row][grid-gutter="1.5"] h2{
  margin: 0 0 34px 0 !important;   /* przerwa po tytule */
  line-height: 1.15 !important;
  min-height: 2.4em !important;    /* rezerwuje 2 linie pod każdym produktem */
  display:block !important;
}

div[grid-row][grid-gutter="1.5"] h2 a{
  text-decoration:none;
}@media (max-width: 680px){
  .ct-footer{
    padding: 16px 12px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px 14px !important;
    justify-items: center !important;
  }
  .ct-footer a{
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.1 !important;
  }
}