/* Carpathia: final layout layer. Load after all existing custom styles. */
body.type-detail #description .chpd-editorial { max-width: 1120px; margin-inline: auto; }
body.type-detail #description .chpd-about { padding: 44px 0; }
body.type-detail #description .chpd-about-grid { grid-template-columns: minmax(0,1.4fr) minmax(260px,.8fr); gap: 40px; }
body.type-detail #description .chpd-editorial h2 { font-size: clamp(28px,2.3vw,36px); }
body.type-detail #description .chpd-ingredients { padding: 26px; }
body.type-detail #description .chpd-botanical { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); margin: 0; width: 100%; align-items: stretch; }
body.type-detail #description .chpd-botanical figure { min-height: 0; }
body.type-detail #description .chpd-botanical img { width: 100%; height: 100%; max-height: 320px; aspect-ratio: 4/3; object-fit: cover; }
body.type-detail #description .chpd-botanical-copy { padding: 28px 36px; }
body.type-detail #description .chpd-botanical h2 { margin: 12px 0; font-size: clamp(27px,2.2vw,34px); }
body.type-detail #description .chpd-botanical p { margin-bottom: 0; max-width: 40ch; }
body.type-detail #description .chpd-ritual,
body.type-detail #description .chpd-inci { padding: 40px 0; }
body.type-detail #description .chpd-inci { gap: 0 32px; }
body.type-detail #description .chpd-inci .chpd-rich { padding-left: 28px; }
/* Clear Shoptet float containers inside the re-housed rich text. */
body.type-detail #description .chpd-rich .row { margin-inline: 0; }
body.type-detail #description .chpd-rich [class*="col-"] { float: none; width: 100%; padding-inline: 0; }
body.type-detail #description .chpd-rich img { max-width: 100%; height: auto; }
@media (min-width: 701px) and (max-width: 1100px) {
  #ch-home .ch-product-grid, #ch-home .ch-herb-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 24px; }
  #ch-home .ch-section { padding-block: 64px; }
  #ch-home #ch-potreby.ch-needs { padding-block: 64px; }
  #ch-home .ch-product-bottom { flex-direction: row; align-items: center; flex-wrap: wrap; }
  #ch-home .ch-section-heading { align-items: flex-start; flex-wrap: wrap; gap: 20px; }
  #ch-home .ch-ritual { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  #ch-home .ch-ritual > img { min-height: 0; height: 100%; object-fit: cover; }
  #ch-home .ch-gift-grid { grid-template-columns: 1fr; }
  #ch-home .ch-gift { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); }
  body.type-category #products.products-block { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 24px; }
  body.type-category #category-header .listSorting__controls { flex-wrap: wrap; gap: 8px; }
  body.type-category #category-header .listSorting__control { min-height: 44px; }
  .ch-herbar .ch-herb-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ch-herbar-hero h1 { font-size: clamp(48px,6.5vw,68px); }
  .ch-herbar-hero__content { padding: 48px 32px; }
}
@media (min-width: 701px) and (max-width: 900px) {
  #ch-home .ch-hero { aspect-ratio: auto; min-height: 0; max-height: none; height: auto; display: flex; flex-direction: column-reverse; background: #213c2c; color: #f7f5ed; }
  #ch-home .ch-hero::after { display: none; }
  #ch-home .ch-hero-media { position: relative; inset: auto; width: 100%; height: 360px; z-index: auto; }
  #ch-home .ch-hero-media img { height: 100%; object-fit: cover; }
  #ch-home .ch-hero-content { height: auto; }
  #ch-home .ch-hero-copy { max-width: 680px; padding-block: 36px; }
  #ch-home .ch-hero h1 { font-size: 48px; color: #f7f5ed; }
  #ch-home .ch-hero-copy > p:not(.ch-campaign) { max-width: 52ch; }
  #ch-home .ch-hero .ch-button { background: #f7f5ed; color: #213c2c; border-color: #f7f5ed; }
  #ch-home .ch-about-editorial, #ch-home .ch-ritual, #ch-home .ch-review-inner { grid-template-columns: 1fr; }
  #ch-home .ch-ritual > img { height: auto; aspect-ratio: 16/9; }
  #ch-home .ch-article-main { display: block; }
  #ch-home .ch-article-main img { width: 100%; height: auto; aspect-ratio: 16/9; margin-bottom: 18px; }
}
@media (max-width: 960px) {
  body.type-detail .p-detail-inner { display: flex; flex-direction: column; gap: 28px; margin-bottom: 36px; }
  body.type-detail .p-detail-inner > .p-image-wrapper { order: 0; width: 100%; max-width: 620px; margin-inline: auto; }
  body.type-detail .p-detail-inner > .p-data-wrapper { order: 1; width: 100%; }
  body.type-detail .p-detail-inner-header h1 { font-size: clamp(29px,4.5vw,40px); }
  body.type-detail #description .chpd-about-grid { grid-template-columns: 1fr; gap: 26px; }
  body.type-detail #description .chpd-copy h2 { max-width: none; }
  body.type-detail #description .chpd-ingredients { margin-top: 0; }
  body.type-detail #description .chpd-inci { display: block; }
  body.type-detail #description .chpd-inci .chpd-rich { padding: 0; border: 0; margin-top: 20px; }
  body.type-detail #p-detail-tabs { display: flex; flex-wrap: wrap; }
  body.type-detail #p-detail-tabs .shp-tab-link { min-height: 44px; padding: 14px; }
  body.in-magazin .ch-magazin__lead { grid-template-columns: 1fr; gap: 24px; margin-bottom: 56px; }
  body.in-magazin .ch-magazin__lead-image img { height: auto; min-height: 0; aspect-ratio: 16/9; }
  body.in-magazin .ch-magazin__lead-copy { max-width: 700px; padding: 0; }
  body.in-magazin .ch-magazin__lead-copy .ch-magazin__kicker { margin-bottom: 16px; }
  body.in-magazin .ch-magazin__lead-copy h3 { font-size: clamp(34px,4.8vw,46px); }
  body.in-magazin .ch-magazin__filters { scrollbar-width: thin; padding-block: 4px; }
  body.in-magazin .ch-magazin__filters button { min-height: 44px; }
}
@media (max-width: 700px) {
  body.type-detail #description .chpd-botanical { display: grid; grid-template-columns: 1fr; margin: 0; }
  body.type-detail #description .chpd-botanical img { height: auto; max-height: 240px; aspect-ratio: 16/9; }
  body.type-detail #description .chpd-botanical-copy { padding: 24px; }
  body.type-detail #description .chpd-about,
  body.type-detail #description .chpd-ritual,
  body.type-detail #description .chpd-inci { padding-block: 32px; }
  body.type-detail #product-detail-form .add-to-cart .quantity { flex-basis: 108px; }
}
@media (min-width: 641px) and (max-width: 960px) {
  body.in-magazin.type-posts-listing #newsWrapper { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px 24px; }
}
@media (max-width: 640px) {
  body.in-magazin .ch-magazin__lead-copy { padding-inline: 20px; }
}
