/* Stage 7 extends the approved parent palette and typography only. */
.nortic-brand.nordickaffe-wordmark {
  flex-direction: row;
  align-items: center;
  gap: 6px;
}

.nordickaffe-brand-name {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.nordickaffe-brand-logo {
  display: block;
  flex: 0 0 auto;
  width: 80px;
  height: 80px;
  object-fit: contain;
}

.nortic-brand--footer .nordickaffe-brand-logo {
  width: 112px;
  height: 112px;
}

@media (max-width: 520px) {
  .nortic-header .nordickaffe-brand-logo {
    width: 60px;
    height: 60px;
  }
}

.nordickaffe-topbar .nortic-topbar__facts strong {
  color: var(--nortic-sand);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.nordickaffe-wordmark .nortic-brand__main,
.nordickaffe-wordmark .nortic-brand__sub {
  display: inline;
}

.nordickaffe-wordmark .nortic-brand__sub {
  margin-left: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: none;
}

.nordickaffe-launch-pill {
  width: fit-content;
  margin: 24px 0 4px;
  padding: 9px 13px;
  border: 1px solid rgba(113, 74, 46, 0.34);
  background: rgba(255, 255, 255, 0.72);
  color: var(--nortic-copper-dark);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.nordickaffe-catalog-mode ul.products li.product .star-rating,
.nordickaffe-catalog-mode ul.products li.product .price,
.nordickaffe-catalog-mode ul.products li.product .added_to_cart,
.nordickaffe-catalog-mode.single-product .summary .price,
.nordickaffe-catalog-mode.single-product form.cart,
.nordickaffe-catalog-mode.single-product .stock,
.nordickaffe-catalog-mode .woocommerce-product-rating {
  display: none !important;
}

body.nortic-store ul.products li.product a img,
body.nortic-store.woocommerce ul.products li.product a img,
body.nortic-store.single-product .woocommerce-product-gallery__image img,
body.nortic-store.single-product .flex-control-thumbs img,
.pswp__img,
.woocommerce-product-gallery__image .zoomImg {
  object-fit: contain !important;
  object-position: center !important;
}

body.nortic-store.single-product .woocommerce-product-gallery__image img,
.pswp__img,
.woocommerce-product-gallery__image .zoomImg {
  max-width: 100% !important;
  max-height: 100% !important;
}

/* Keep the verified SKU photographs intact. Blend their white studio backdrop
   only on light catalogue surfaces, never on the dark full-screen lightbox. */
body.nortic-store ul.products li.product > a.woocommerce-LoopProduct-link,
body.nortic-store.single-product .woocommerce-product-gallery__image a,
body.nortic-store.single-product .flex-control-thumbs li {
  isolation: isolate;
  /* An isolated transparent parent has no backdrop for multiply to blend with. */
  background: var(--nortic-bg, #f9f8f6);
}

body.nortic-store ul.products li.product a img,
body.nortic-store.woocommerce ul.products li.product a img,
body.nortic-store.single-product .woocommerce-product-gallery__image img,
body.nortic-store.single-product .flex-control-thumbs img {
  mix-blend-mode: multiply;
  background: transparent;
  border-color: transparent;
  filter: none;
}

.pswp__img {
  mix-blend-mode: normal;
}

.nordickaffe-card-copy {
  min-height: 6.3em;
  margin: 12px 0 10px;
  color: var(--nortic-muted);
  font-size: 14px;
  line-height: 1.58;
}

.nordickaffe-card-status {
  margin: auto 0 12px;
  color: var(--nortic-copper-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

body.nortic-store ul.products li.product .nordickaffe-details-link {
  margin-top: 0;
}

.nordickaffe-product-snapshot {
  margin: 0 0 24px;
}

.nordickaffe-product-lead {
  margin: 0 0 22px;
  color: var(--nortic-text);
  font-size: 17px;
  line-height: 1.72;
}

.nordickaffe-product-snapshot dl {
  margin: 0;
  border-top: 1px solid var(--nortic-border);
}

.nordickaffe-product-snapshot dl > div {
  padding: 11px 0;
  display: grid;
  grid-template-columns: minmax(130px, 0.8fr) minmax(0, 1.2fr);
  gap: 18px;
  border-bottom: 1px solid var(--nortic-border);
}

.nordickaffe-product-snapshot dt {
  color: var(--nortic-muted);
  font-size: 13px;
}

.nordickaffe-product-snapshot dd {
  margin: 0;
  color: var(--nortic-text);
  font-size: 14px;
  font-weight: 700;
}

.nordickaffe-paulig-link {
  margin-top: 16px;
  display: inline-flex;
  color: var(--nortic-copper-dark);
  font-size: 14px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.nordickaffe-coming-soon {
  margin: 24px 0 30px;
  padding: 20px 22px;
  border-left: 3px solid var(--nortic-copper);
  background: var(--nortic-surface-soft);
}

.nordickaffe-coming-soon strong {
  display: block;
  margin-bottom: 6px;
  color: var(--nortic-text);
  font-size: 17px;
}

.nordickaffe-coming-soon p {
  margin: 0;
  color: var(--nortic-muted);
  font-size: 14px;
  line-height: 1.65;
}

.nordickaffe-catalog-tools {
  margin: 0 0 34px;
  padding: 22px;
  border: 1px solid var(--nortic-border);
  background: var(--nortic-surface);
}

.nordickaffe-catalog-tabs {
  margin-bottom: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nordickaffe-catalog-tabs a {
  min-height: 42px;
  padding: 10px 15px;
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--nortic-border);
  color: var(--nortic-text);
  font-size: 14px;
  font-weight: 700;
}

.nordickaffe-catalog-tabs a:hover,
.nordickaffe-catalog-tabs a:focus-visible {
  border-color: var(--nortic-forest);
  background: var(--nortic-forest);
  color: #fff;
}

.nordickaffe-filter-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(150px, 0.45fr) auto auto;
  align-items: end;
  gap: 12px;
}

.nordickaffe-filter-form label {
  align-self: center;
  color: var(--nortic-muted);
  font-size: 13px;
}

.nordickaffe-filter-form label:first-of-type {
  grid-column: 1;
  grid-row: 1;
}

.nordickaffe-filter-form input {
  grid-column: 1;
  grid-row: 2;
}

.nordickaffe-filter-form label:nth-of-type(2) {
  grid-column: 2;
  grid-row: 1;
}

.nordickaffe-filter-form select {
  grid-column: 2;
  grid-row: 2;
}

.nordickaffe-filter-form button,
.nordickaffe-filter-form > a {
  min-height: 48px;
  padding: 12px 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
}

.nordickaffe-filter-form button {
  border: 1px solid var(--nortic-forest);
  background: var(--nortic-forest);
  color: #fff;
}

.nordickaffe-filter-form > a {
  color: var(--nortic-muted);
}

.nordickaffe-guide {
  border-top: 1px solid var(--nortic-border);
  background: var(--nortic-surface-soft);
}

.nordickaffe-guide .nortic-section-heading {
  align-items: end;
}

.nordickaffe-guide .nortic-section-heading p:last-child {
  max-width: 660px;
  margin: 14px 0 0;
  color: var(--nortic-muted);
  font-size: 16px;
  line-height: 1.7;
}

.nordickaffe-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--nortic-border);
  border-left: 1px solid var(--nortic-border);
}

.nordickaffe-guide-grid article {
  min-height: 270px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--nortic-border);
  border-bottom: 1px solid var(--nortic-border);
  background: var(--nortic-surface);
}

.nordickaffe-guide-grid article > span {
  color: var(--nortic-copper-dark);
  font-size: 12px;
  font-weight: 700;
}

.nordickaffe-guide-grid h3 {
  margin: 28px 0 12px;
  font-size: 29px;
}

.nordickaffe-guide-grid p {
  margin: 0 0 22px;
  color: var(--nortic-muted);
  font-size: 15px;
  line-height: 1.7;
}

.nordickaffe-guide-grid a {
  margin-top: auto;
  color: var(--nortic-copper-dark);
  font-size: 14px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.nordickaffe-faq {
  border-top: 1px solid var(--nortic-border);
}

.nordickaffe-faq-grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.65fr) minmax(0, 1.35fr);
  gap: 70px;
}

.nordickaffe-faq details {
  border-top: 1px solid var(--nortic-border);
}

.nordickaffe-faq details:last-child {
  border-bottom: 1px solid var(--nortic-border);
}

.nordickaffe-faq summary {
  min-height: 70px;
  padding: 18px 44px 18px 0;
  display: flex;
  align-items: center;
  position: relative;
  color: var(--nortic-text);
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
  list-style: none;
}

.nordickaffe-faq summary::-webkit-details-marker {
  display: none;
}

.nordickaffe-faq summary::after {
  content: "+";
  position: absolute;
  right: 8px;
  color: var(--nortic-copper-dark);
  font-size: 24px;
}

.nordickaffe-faq details[open] summary::after {
  content: "−";
}

.nordickaffe-faq details p {
  max-width: 720px;
  margin: 0;
  padding: 0 44px 22px 0;
  color: var(--nortic-muted);
  font-size: 15px;
  line-height: 1.75;
}

.nordickaffe-catalogue-notice {
  padding: 30px 0;
  border-top: 1px solid var(--nortic-border);
  background: var(--nortic-surface-soft);
}

.nordickaffe-catalogue-notice .nortic-shell {
  display: grid;
  grid-template-columns: minmax(180px, 0.4fr) minmax(0, 1.6fr);
  gap: 28px;
}

.nordickaffe-catalogue-notice p {
  margin: 0;
  color: var(--nortic-muted);
  font-size: 14px;
  line-height: 1.65;
}

.nordickaffe-info-hero {
  padding: clamp(68px, 9vw, 112px) 0 64px;
  border-bottom: 1px solid var(--nortic-border);
  background: linear-gradient(130deg, var(--nortic-surface-soft), #ffffff 72%);
}

.nordickaffe-info-hero h1 {
  max-width: 930px;
  margin: 12px 0 18px;
  font-size: clamp(44px, 6vw, 76px);
  line-height: 1.02;
}

.nordickaffe-info-hero > .nortic-shell > p:not(.nortic-eyebrow) {
  max-width: 760px;
  margin: 0;
  color: var(--nortic-muted);
  font-size: 17px;
  line-height: 1.75;
}

.nordickaffe-info-status {
  width: fit-content;
  margin-top: 28px;
  padding: 8px 12px;
  border: 1px solid rgba(113, 74, 46, 0.28);
  color: var(--nortic-copper-dark);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.nordickaffe-info-content {
  padding-top: 62px;
  padding-bottom: 96px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.nordickaffe-info-panel {
  padding: clamp(28px, 4vw, 46px);
  border: 1px solid var(--nortic-border);
  background: rgba(255, 255, 255, 0.68);
}

.nordickaffe-info-panel--wide {
  grid-column: 1 / -1;
}

.nordickaffe-info-panel h2 {
  margin: 0 0 24px;
  font-size: clamp(28px, 3vw, 42px);
  overflow-wrap: anywhere;
}

.nordickaffe-info-panel p {
  color: var(--nortic-muted);
  line-height: 1.75;
}

.nordickaffe-info-panel a {
  overflow-wrap: anywhere;
  color: var(--nortic-copper-dark);
  text-underline-offset: 4px;
}

.nordickaffe-info-list {
  margin: 0;
  border-top: 1px solid var(--nortic-border);
}

.nordickaffe-info-list > div {
  padding: 14px 0;
  display: grid;
  grid-template-columns: minmax(145px, 0.75fr) minmax(0, 1.25fr);
  gap: 20px;
  border-bottom: 1px solid var(--nortic-border);
}

.nordickaffe-info-list dt {
  color: var(--nortic-muted);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.nordickaffe-info-list dd {
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--nortic-text);
  font-size: 14px;
  font-weight: 650;
}

.nordickaffe-info-points {
  margin: 0;
  padding: 0;
  list-style: none;
}

.nordickaffe-info-points li {
  position: relative;
  padding: 13px 0 13px 22px;
  border-top: 1px solid var(--nortic-border);
  color: var(--nortic-muted);
  line-height: 1.7;
}

.nordickaffe-info-points li::before {
  content: "";
  position: absolute;
  top: 23px;
  left: 2px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--nortic-copper-dark);
}

.nordickaffe-info-note,
.nordickaffe-language-scope {
  margin-top: 22px !important;
  color: var(--nortic-muted);
  font-size: 12px;
  line-height: 1.7;
}

@media (max-width: 960px) {
  .nordickaffe-filter-form {
    grid-template-columns: 1fr 1fr;
  }

  .nordickaffe-filter-form button,
  .nordickaffe-filter-form > a {
    grid-row: 3;
  }

  .nordickaffe-guide-grid {
    grid-template-columns: 1fr;
  }

  .nordickaffe-guide-grid article {
    min-height: 0;
  }

  .nordickaffe-faq-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 720px) {
	.nordickaffe-info-content {
		grid-template-columns: 1fr;
	}

	.nordickaffe-info-panel--wide {
		grid-column: auto;
	}
  .nordickaffe-hero h1 {
    max-width: 520px;
    font-size: 48px;
  }

  .nordickaffe-card-copy {
    min-height: 0;
    font-size: 13px;
  }

  .nordickaffe-filter-form {
    display: block;
  }

  .nordickaffe-filter-form label,
  .nordickaffe-filter-form input,
  .nordickaffe-filter-form select,
  .nordickaffe-filter-form button,
  .nordickaffe-filter-form > a {
    width: 100%;
    margin-top: 9px;
  }

  .nordickaffe-catalogue-notice .nortic-shell {
    grid-template-columns: 1fr;
    gap: 9px;
  }
}

@media (max-width: 520px) {
	.nordickaffe-info-list > div {
		grid-template-columns: 1fr;
		gap: 5px;
	}
  .nordickaffe-product-snapshot dl > div {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .nordickaffe-guide-grid article {
    padding: 23px;
  }
}
