/* Garnzonen 2026 \002014  eget stylesheet.
   Indl\0000e6ses efter barcelona.css og theme.css, s\0000e5  det vinder over designets egne regler.
   Farver og typografi f\0000f8lger redesign/design-noter.md. */

/* ---------- Skrifttyper (selvhostede \002014  ingen Google Fonts, ingen IP til Google) ---------- */
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url('../fonts/manrope-variabel-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url('../fonts/manrope-variabel-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'DM Serif Display'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/dm-serif-display-400-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'DM Serif Display'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('../fonts/dm-serif-display-400-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

/* ---------- Tokens ---------- */
:root {
  --gz-blomme: #35283e;
  --gz-daempet: #746b7b;
  --gz-lavendel: #ece7f2;
  --gz-lys: #f7f4f9;
  --gz-syren: #c9b8db;
  --gz-smoergul: #f1e8ad;
  --gz-linje: #e8e2ec;
  --gz-hvid: #fff;
  --gz-serif: 'DM Serif Display', Georgia, serif;
  --gz-sans: 'Manrope', Arial, sans-serif;
  --gz-bredde: 1180px; /* = designets .container.with-xlarge, s\0000e5  heroen flugter med logoet */
}

/* ---------- Grundtypografi p\0000e5  hele sitet ---------- */
body {
  font-family: var(--gz-sans);
  color: var(--gz-blomme);
  -webkit-font-smoothing: antialiased;
}
body h1, body h2, body h3, body .h1, body .h2, body .h3 {
  font-family: var(--gz-serif);
  font-weight: 400;
  letter-spacing: -0.02em;
  color: var(--gz-blomme);
}
body a { color: inherit; }

.gz-ikon {
  width: 18px; height: 18px; flex-shrink: 0;
  fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round;
}

/* ---------- USP-bj\0000e6lken \0000f8verst ---------- */
.global_usp {
  background: var(--gz-blomme);
  height: 36px;
  font-family: var(--gz-sans);
}
.global_usp .owl-carousel { margin-top: -5px; }
.global_usp li,
.global_usp li * {
  color: #fff !important;
  font-size: 11px !important;
  letter-spacing: 0.02em;
  text-transform: none !important;
  text-decoration: none !important;
  font-weight: 500;
}
.global_usp li u { font-weight: 700; }

/* ---------- Header: logo til venstre, s\0000f8gning i midten, kurv til h\0000f8jre ---------- */
.site-header {
  padding: 22px 0 !important;
  background: var(--gz-hvid);
}
.site-header > .container > .row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
.site-header > .container > .row > div {
  width: auto !important;
  float: none !important;
  flex: 0 1 auto;
}
.site-header > .container > .row > div:nth-child(2) { order: -1; }   /* logo f\0000f8rst */
.site-header > .container > .row > div:nth-child(1) { flex: 0 1 420px; } /* s\0000f8gning */

/* Ordm\0000e6rket */
.site-header .logo-anchor {
  font-family: var(--gz-serif) !important;
  font-weight: 400 !important;
  font-size: 42px !important;
  line-height: 1 !important;
  letter-spacing: -0.045em !important;
  color: var(--gz-blomme) !important;
  text-transform: none !important;
  white-space: nowrap;
}
.gz-logo-prik { color: #aa90bd; }

/* S\0000f8gefeltet som en bl\0000f8d pille */
.site-header .search-module .input-group {
  display: flex;
  align-items: center;
  background: var(--gz-lys);
  border-radius: 999px;
  padding: 0 18px;
  height: 46px;
}
.site-header .search-module .input-group-button {
  position: static !important;
  display: flex;
  width: auto !important;
}
.site-header .search-module .input-group-button .button {
  position: static !important;
  background: none !important;
  border: 0 !important;
  color: var(--gz-daempet) !important;
  padding: 0 10px 0 0 !important;
  height: auto !important;
  min-height: 0 !important;
}
.site-header .top-search-form input.form-input { padding: 0 !important; flex: 1; }
.site-header .top-search-form input.form-input {
  font-family: var(--gz-sans) !important;
  font-size: 13px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--gz-blomme) !important;
  background: none !important;
  border: 0 !important;
  height: 46px;
}
.site-header .top-search-form input::placeholder { color: #807686; }

/* Kurv, konto og menu */
.site-header .desktop-icon-nav,
.site-header .desktop-icon-nav *:not(.fa) {
  font-family: var(--gz-sans) !important;
  text-transform: none !important;
}
.site-header .desktop-icon-nav,
.site-header .desktop-icon-nav * { color: var(--gz-blomme) !important; }
.site-header .desktop-icon-nav { display: flex; align-items: center; gap: 22px; }
.site-header .w-cart .dropdown { font-size: 12px !important; font-weight: 600; }
.site-header .header-icon-button i.fa { font-size: 17px; }

/* ---------- Kategorimenuen ---------- */
.site-navigation {
  padding: 0 !important;
  box-shadow: none !important;
  border-top: 1px solid var(--gz-linje) !important;
  border-bottom: 1px solid var(--gz-linje) !important;
  background: var(--gz-hvid);
}
.site-navigation .main-menu ul.productcategories-level-0 {
  justify-content: center;
  flex-wrap: nowrap;
  gap: 4px;
}
.site-navigation .main-menu .b-category-li-0 > .b-anchor {
  font-family: var(--gz-sans) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--gz-blomme) !important;
  padding: 18px 12px !important;
  white-space: nowrap;
}
.site-navigation .main-menu .b-category-li-0 > .b-anchor:hover { color: #80539b !important; }
.site-navigation .main-menu .b-category-325 > .b-anchor { color: #7a5c95 !important; } /* strikkecaf\0000e9en */
.site-navigation .main-menu .b-category-61 > .b-anchor { color: #82623b !important; }  /* tilbud */

/* ---------- Mega-menuen (n\0000e5r man holder over et menupunkt) ---------- */
.site-navigation .dropdown-megamenu {
  background: var(--gz-hvid) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--gz-linje) !important;
  box-shadow: 0 28px 40px -28px rgba(53, 40, 62, .28) !important;
  padding: 26px 0 32px !important;
  max-height: calc(100vh - 200px);
  overflow-y: auto;
  text-align: left !important;
}
.site-navigation .dropdown-megamenu > ul.b-productcategories-level-1 {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  grid-auto-flow: row dense;
  gap: 26px 36px;
  max-width: var(--gz-bredde);
  margin: 0 auto !important;
  padding: 0 10px !important;
  border: 0 !important;
}
.site-navigation .dropdown-megamenu .b-category-li-1 { padding: 0 !important; margin: 0 !important; }
.site-navigation .dropdown-megamenu li {
  width: auto !important;
  float: none !important;
  list-style: none;
  text-align: left !important;
  border: 0 !important;
  background: none !important;
}
/* Overskrift for hver kolonne, fx "Garn \002013  opdelt efter m\0000e6rke" */
.site-navigation .dropdown-megamenu .b-category-li-1 > a {
  display: block !important;
  font-family: var(--gz-serif) !important;
  font-size: 19px !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em;
  line-height: 1.25 !important;
  text-transform: none !important;
  color: var(--gz-blomme) !important;
  padding: 0 0 12px !important;
  margin: 0 0 6px !important;
  border-bottom: 1px solid var(--gz-linje) !important;
  text-align: left !important;
  white-space: normal;
  width: auto !important;
}
.site-navigation .dropdown-megamenu ul.b-productcategories-level-2 {
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
}
/* Lange lister (flere end 12 punkter) f\0000e5r to spalter */
.site-navigation .dropdown-megamenu ul.b-productcategories-level-2:has(> li:nth-child(13)) {
  columns: 2;
  column-gap: 24px;
}
.site-navigation .dropdown-megamenu .b-category-li-1:has(> ul > li:nth-child(13)) { grid-column: span 2; }
.site-navigation .dropdown-megamenu .b-category-li-2 { break-inside: avoid; }
.site-navigation .dropdown-megamenu .b-category-li-2 > a {
  display: inline-block !important;
  font-family: var(--gz-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  color: var(--gz-blomme) !important;
  padding: 5px 0 !important;
  height: auto !important;
  line-height: 1.45 !important;
  border: 0 !important;
  background: none !important;
  text-align: left !important;
  width: auto !important;
}
.site-navigation .dropdown-megamenu .b-category-li-2 > a:hover {
  color: #80539b !important;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 1px;
}
.site-navigation .dropdown-megamenu .menu-dropdown-toggle,
.site-navigation .dropdown-megamenu .fa-caret-down { display: none !important; }

/* ---------- Knap ---------- */
.gz-knap {
  display: inline-flex;
  align-items: center;
  gap: 22px;
  min-height: 52px;
  padding: 16px 25px;
  border-radius: 4px;
  background: var(--gz-blomme);
  color: #fff !important;
  font-size: 13px;
  font-weight: 650;
  text-decoration: none !important;
  position: relative;
  z-index: 1;
  transition: background-color .15s ease;
}
.gz-knap:hover { background: #4a3856; }
.gz-knap:focus-visible { outline: 3px solid #80539b; outline-offset: 4px; }
/* ---------- F\0000e6lles: tekstlink ---------- */
.gz-tekstlink {
  display: inline-block;
  font-size: 13px;
  font-weight: 650;
  color: var(--gz-blomme) !important;
  text-decoration: none !important;
  padding-bottom: 3px;
  border-bottom: 1px solid var(--gz-syren);
  transition: border-color .15s ease;
}
a:hover .gz-tekstlink, .gz-tekstlink:hover { border-bottom-color: var(--gz-blomme); }

/* Forsidens sektioner ligger inde i designets container; giv dem luft imellem */
.pageId1 .site-main-content { padding-top: 0 !important; }
.gz-vitrine, .gz-noegler, .gz-cafe2, .gz-besoeg { font-family: var(--gz-sans); }
.gz-noegler h2, .gz-cafe2 h2, .gz-besoeg h2 {
  font-family: var(--gz-serif) !important;
  font-size: 40px !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
  margin: 0 0 14px !important;
}

/* ---------- Produktvitrinen "Garn p\0000e5  hylden" ---------- */
.gz-vitrine { padding: 64px 0 72px; font-family: var(--gz-sans); border-bottom: 1px solid var(--gz-linje); }
.gz-vitrine__top { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 30px; }
.gz-vitrine__top h2 {
  font-family: var(--gz-serif) !important; font-size: 40px !important; line-height: 1.1 !important;
  letter-spacing: -0.025em !important; margin: 0 !important; white-space: nowrap;
}
/* Fanerne er m\0000e6rkenavnene sat i serif \002014  m\0000e6rkerne er sidens identitet */
.gz-faner {
  display: flex; flex-wrap: nowrap; gap: 17px; width: 100%;
  overflow-x: auto; scrollbar-width: none; border-bottom: 1px solid var(--gz-linje);
}
.gz-faner::-webkit-scrollbar { display: none; }
.gz-faner [role="tab"] { white-space: nowrap; flex-shrink: 0; padding-bottom: 10px !important; }
.gz-faner [role="tab"] {
  appearance: none; background: none; border: 0; padding: 4px 0; cursor: pointer;
  font-family: var(--gz-serif); font-size: 21px; letter-spacing: -0.01em; color: #8d8296;
  background-image: linear-gradient(var(--gz-blomme), var(--gz-blomme));
  background-size: 0 2px; background-position: 0 100%; background-repeat: no-repeat;
  transition: color .15s ease, background-size .25s ease;
}
.gz-faner [role="tab"]:hover { color: var(--gz-blomme); }
.gz-faner [role="tab"][aria-selected="true"] { color: var(--gz-blomme); background-size: 100% 2px; }
.gz-faner [role="tab"]:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }

.gz-produktgitter {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; min-height: 360px;
  transition: opacity .2s ease;
}
.gz-produktgitter[aria-busy="true"] { opacity: .45; }
.gz-produkt { display: flex; flex-direction: column; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-produkt__foto {
  position: relative; display: block; aspect-ratio: 1 / 1; overflow: hidden;
  border-radius: 4px; background: var(--gz-lys); margin-bottom: 14px;
}
.gz-produkt__foto img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
  transition: opacity .35s ease, transform .6s ease;
}
/* Samme rolige zoom som fiberguiden \002014  intet billedskift */
.gz-produkt:hover .gz-produkt__foto img { transform: scale(1.03); }
.gz-produkt:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; border-radius: 4px; }
.gz-produkt__maerke { font-size: 12px; color: var(--gz-daempet); margin-bottom: 2px; }
.gz-produkt__navn {
  font-size: 15px; font-weight: 650; letter-spacing: -0.01em; line-height: 1.35;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.gz-produkt__pris { font-size: 14px; margin-top: 6px; color: #4e4258; font-variant-numeric: tabular-nums; }
.gz-vitrine__alt { margin-top: 34px; }
.gz-tom { grid-column: 1 / -1; font-size: 15px; color: var(--gz-daempet); }
.gz-snart {
  grid-column: 1 / -1; align-self: start; background: var(--gz-lys); border-radius: 6px;
  padding: 28px 32px; display: flex; flex-direction: column; align-items: flex-start;
}
.gz-snart p { margin: 0 !important; }
.gz-snart h3 {
  font-family: var(--gz-serif) !important; font-size: 30px !important; line-height: 1.15 !important;
  letter-spacing: -0.02em !important; margin: 0 0 10px !important;
}
.gz-snart p { font-size: 15px; line-height: 1.75; color: #61546a; max-width: 520px; margin: 0 0 20px; }
.gz-vitrine__alt[hidden] { display: none !important; }
.gz-produktgitter:has(> .gz-snart, > .gz-tom) { display: block !important; min-height: 0; }
@media (max-width: 767px) { .gz-snart { padding: 30px 22px; } .gz-snart h3 { font-size: 24px !important; } }


/* ---------- Produktkort (forside og kategorisider) ---------- */
.page-title-frontpage { text-align: left !important; margin: 0 0 26px !important; }
.page-title-frontpage .h1 {
  font-family: var(--gz-serif) !important;
  font-size: 40px !important;
  letter-spacing: -0.025em !important;
  text-transform: none !important;
}
.m-productlist-item { font-family: var(--gz-sans); text-align: left; }
.m-productlist-item .content { padding-left: 0 !important; padding-right: 0 !important; } /* tekst flugter med billedet */
.m-productlist-item .product-action .row { margin-left: 0 !important; margin-right: 0 !important; }
.m-productlist-item .product-action .row > div { padding-left: 0 !important; padding-right: 0 !important; }
.m-productlist-item .m-productlist-figure {
  background: #f3f1f1;
  border-radius: 4px;
  overflow: hidden;
  aspect-ratio: 1 / 1.07;
  margin-bottom: 14px !important;
}
.m-productlist-item .m-productlist-figure > a,
.m-productlist-item .m-productlist-figure > a > span { display: block; height: 100%; }
.m-productlist-item .m-productlist-image { width: 100%; height: 100% !important; object-fit: cover; }
.m-productlist-item .m-productlist-heading,
.m-productlist-item .m-productlist-heading a { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
.m-productlist-item .m-productlist-title {
  font-family: var(--gz-sans) !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  color: var(--gz-blomme) !important;
}
.m-productlist-item .m-productlist-itemNumber { display: none !important; } /* varenummeret siger kunden intet */
.m-productlist-item .m-productlist-brand { font-size: 12px; color: var(--gz-daempet); }
.m-productlist-item .prices { justify-content: flex-start !important; }
.m-productlist-item .m-productlist-price {
  font-family: var(--gz-sans) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  color: var(--gz-blomme) !important;
  text-align: left !important;
}
.m-productlist-item .product-action .button-primary {
  background: transparent !important;
  color: var(--gz-blomme) !important;
  border: 1px solid #b7a9c2 !important;
  border-radius: 4px !important;
  font-family: var(--gz-sans) !important;
  font-size: 12px !important;
  font-weight: 650 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  min-height: 40px;
  transition: background-color .15s ease, color .15s ease;
}
.m-productlist-item .product-action .button-primary:hover { background: var(--gz-blomme) !important; color: #fff !important; }
.m-productlist-item .product-action .button-primary .fa { display: none; }

/* ---------- \0000c5bningstider (forsidens butiksr\0000e6kke) ---------- */
.gz-butik__tider { border-collapse: collapse; font-size: 14px; line-height: 1.8; width: auto !important; margin: 0; }
.gz-butik__tider caption { text-align: left; font-weight: 650; padding: 0; caption-side: top; }
.gz-butik__tider tr { height: auto !important; border: 0 !important; background: none !important; }
.gz-butik__tider th { font-weight: 400; text-align: left; padding: 0 28px 0 0 !important; color: #61546a; border: 0 !important; background: none !important; vertical-align: top; }
.gz-butik__tider td { padding: 0 !important; border: 0 !important; background: none !important; font-variant-numeric: tabular-nums; vertical-align: top; }

/* ---------- Tilmelding til strikkecaf\0000e9en (under butik/caf\0000e9) ---------- */
.gz-booking__datoer { border: 0; padding: 0; margin: 0 0 14px; min-width: 0; width: 100%; }
.gz-booking__datoer legend { font-size: 13px; font-weight: 650; padding: 0; margin-bottom: 10px; }
.gz-datoer { display: flex; flex-wrap: wrap; gap: 8px; }
.gz-dato { position: relative; cursor: pointer; }
.gz-dato input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.gz-dato > span { display: block; }
.gz-dato {
  display: flex; flex-direction: column; min-width: 118px; padding: 10px 14px 9px;
  border: 1px solid #cfc4d8; border-radius: 4px; background: #fff;
  transition: border-color .15s ease, background-color .15s ease;
}
.gz-dato:hover { border-color: var(--gz-blomme); }
.gz-dato__dag { font-size: 14px; font-weight: 650; }
.gz-dato__dag::first-letter { text-transform: uppercase; }
.gz-dato__note { font-size: 12px; color: #7a5c95; }
.gz-dato__status { font-size: 11px; color: var(--gz-daempet); margin-top: 2px; }
.gz-dato:has(input:checked) { border-color: var(--gz-blomme); background: var(--gz-blomme); }
.gz-dato:has(input:checked) span { color: #fff; }
.gz-dato:has(input:focus-visible) { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-dato.er-udsolgt { cursor: not-allowed; background: var(--gz-lys); border-color: var(--gz-linje); }
.gz-dato.er-udsolgt .gz-dato__dag { color: #a59bab; text-decoration: line-through; text-decoration-thickness: 1px; }
.gz-dato.er-udsolgt input { cursor: not-allowed; }
.gz-booking__status { font-size: 13px; color: #4e4258; min-height: 20px; margin: 0 0 20px; }
.gz-booking__koeb { display: flex; align-items: flex-end; gap: 14px; margin-bottom: 18px; }
.gz-antal { display: flex; flex-direction: column; gap: 6px; font-size: 12px; font-weight: 650; }
.gz-antal input {
  width: 76px; height: 52px; border: 1px solid #cfc4d8 !important; border-radius: 4px;
  font: 600 15px var(--gz-sans); text-align: center; color: var(--gz-blomme); background: #fff;
}
.gz-knap:disabled { background: #b9afc1; cursor: not-allowed; }
.gz-booking__note { font-size: 12px; line-height: 1.6; color: var(--gz-daempet); max-width: 460px; margin: 0; }
/* ---------- Footer (tema/udkast/footer.html) ---------- */
.gz-footer {
  background: var(--gz-blomme);
  color: #e6dfec;
  font-family: var(--gz-sans);
  font-size: 14px;
  line-height: 1.7;
}
.gz-footer__indre { max-width: var(--gz-bredde); margin: 0 auto; padding: 52px 10px 28px; }
.gz-footer a { color: #fff !important; text-decoration: none; }
.gz-footer a:hover { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--gz-syren); }
.gz-footer__top {
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: start;
  padding-bottom: 36px; border-bottom: 1px solid rgba(255, 255, 255, .14);
}
.gz-footer__brand .gz-footer__social { margin-top: 18px; }
.gz-footer__logo {
  display: inline-block; font-family: var(--gz-serif); font-size: 46px; line-height: 1;
  letter-spacing: -0.045em; margin-bottom: 16px;
}
.gz-footer__logo:hover { text-decoration: none !important; }
.gz-footer__brand p { max-width: 380px; color: #cfc4d8; margin: 0; }
.gz-footer h2, .gz-footer .gz-footer__stor-titel {
  font-family: var(--gz-serif) !important; font-size: 28px !important; color: #fff !important;
  letter-spacing: -0.02em !important; margin: 0 0 4px !important; line-height: 1.2 !important;
}
.gz-footer__nyhedsbrev > p { color: #cfc4d8; margin: 0 0 14px; }
.gz-footer h3, .gz-footer .gz-footer__titel {
  font-family: var(--gz-sans) !important; font-size: 14px !important; font-weight: 700 !important;
  color: #fff !important; letter-spacing: 0 !important; text-transform: none !important; margin: 0 0 12px !important;
}

/* Shoppens egen nyhedsbrevsformular, flyttet ind og restylet */
/* Felter og knap p\0000e5  \0000e9n linje, de to afkrydsninger side om side nedenunder */
.gz-footer__formular form { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; align-items: start; }
.gz-footer__formular .panel-heading { display: none; }
.gz-footer__formular .panel-body { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 10px; padding: 0 !important; border: 0 !important; background: none !important; }
.gz-footer__formular .m-newsletter-spam-check { grid-column: 1 / -1; }
.gz-footer__formular fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.gz-footer__formular label { display: block; margin: 0 !important; }
.gz-footer__formular input.form-input {
  width: 100%; height: 48px; padding: 0 14px !important; border-radius: 4px !important;
  background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .28) !important;
  color: #fff !important; font: 14px var(--gz-sans) !important; box-shadow: none !important;
}
.gz-footer__formular input.form-input::placeholder { color: #b9abc6; }
.gz-footer__formular input.form-input:focus { border-color: #fff !important; outline: none; }
.gz-footer__formular .input-group { display: flex; align-items: flex-start; gap: 10px; border: 0 !important; background: none !important; }
.gz-footer__formular .input-group-addon { background: none !important; border: 0 !important; padding: 3px 0 0 !important; width: auto !important; }
.gz-footer__formular input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--gz-syren); margin: 0; }
.gz-footer__formular .form-label { font-size: 12px !important; color: #cfc4d8 !important; padding: 0 !important; line-height: 1.5; background: none !important; border: 0 !important; }
.gz-footer__formular .tooltip { display: none !important; }
.gz-footer__formular .panel-footer { padding: 0 !important; background: none !important; border: 0 !important; }
.gz-footer__formular .form-submit {
  min-height: 48px; padding: 0 26px !important; border-radius: 4px !important; border: 0 !important;
  background: var(--gz-lavendel) !important; color: var(--gz-blomme) !important;
  font: 650 13px var(--gz-sans) !important; text-transform: none !important; letter-spacing: 0 !important;
}
.gz-footer__formular .form-submit:hover { background: #fff !important; }
.gz-footer__formular .form-submit .fa { display: none; }

.gz-footer__kolonner {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px;
  padding: 44px 0 46px; border-bottom: 1px solid rgba(255, 255, 255, .14);
}
.gz-footer address { font-style: normal; margin: 0; }
.gz-footer ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-footer li { margin: 0 0 6px; list-style: none; }
.gz-footer__tider { border-collapse: collapse; width: auto !important; margin: 0; }
.gz-footer__tider tr { background: none !important; border: 0 !important; }
.gz-footer__tider th { font-weight: 400; text-align: left; padding: 0 20px 6px 0 !important; color: #cfc4d8; border: 0 !important; background: none !important; }
.gz-footer__tider td { padding: 0 0 6px !important; border: 0 !important; background: none !important; color: #fff; font-variant-numeric: tabular-nums; }

.gz-footer__bund { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 24px; flex-wrap: wrap; }
.gz-footer__bund p { margin: 0; font-size: 13px; color: #b9abc6; display: flex; gap: 20px; flex-wrap: wrap; }
.gz-footer__betaling ul.payment-icons { display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 6px; margin: 0 !important; padding: 0 !important; }
.gz-footer__betaling li { margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; display: block !important; }
.gz-footer__betaling li { position: static !important; height: auto !important; min-height: 0 !important; }
.gz-footer__betaling .placeholder { display: none !important; } /* lazyload-pladsholderen skubbede ikonet ned */
.gz-footer__betaling { display: flex; align-items: center; }
.gz-footer__betaling ul.payment-icons, .gz-footer__betaling li { line-height: 0 !important; }
.gz-footer__betaling img { position: static !important; height: 22px !important; width: auto !important; background: #fff; border-radius: 3px; padding: 2px; display: block; }
.gz-footer__social { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; }
.gz-footer__social svg { width: 18px; height: 18px; fill: currentColor; }


/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1200px) {
  .site-navigation .main-menu ul.productcategories-level-0 { flex-wrap: wrap; }
  .site-navigation .main-menu .b-category-li-0 > .b-anchor { padding: 14px 10px !important; font-size: 12px !important; }
}
@media (max-width: 1100px) {
  .gz-vitrine__top { flex-direction: column; align-items: flex-start; gap: 16px; }
  .gz-faner { justify-content: flex-start; }
  .gz-produktgitter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  .global_usp { height: 32px; }
  .global_usp li, .global_usp li * { font-size: 10px !important; }

  .site-header { padding: 14px 0 !important; }
  .site-header > .container > .row { flex-wrap: nowrap; gap: 12px; }
  .site-header > .container > .row > div:nth-child(1) { display: none; } /* s\0000f8gning bor i ikonet */
  .site-header > .container > .row > div:nth-child(2) { flex: 1 1 auto; min-width: 0; }
  .site-header > .container > .row > div:nth-child(3) { flex: 0 0 auto; padding: 0 !important; }
  .site-header .logo-anchor { font-size: 34px !important; }
  .site-header .desktop-icon-nav { gap: 2px; padding: 0 !important; }
  .site-header .header-icon-button { padding: 0 8px !important; margin: 0 !important; }
  .site-header .header-icon-button > a { padding: 6px 4px !important; }

  .gz-knap { min-height: 48px; padding: 13px 20px; font-size: 13px; }

  .gz-vitrine__top h2, .page-title-frontpage .h1 { font-size: 31px !important; }
  .gz-vitrine { padding: 44px 0 48px; }
  /* Fanerne og produkterne kan swipes vandret p\0000e5  mobil */
  .gz-faner { flex-wrap: nowrap; overflow-x: auto; width: calc(100% + 10px); margin-right: -10px; padding-right: 10px; scrollbar-width: none; gap: 18px; }
  .gz-faner::-webkit-scrollbar { display: none; }
  .gz-faner [role="tab"] { white-space: nowrap; font-size: 19px; }
  .gz-produktgitter {
    display: grid; grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 62%;
    overflow-x: auto; scroll-snap-type: x mandatory; gap: 14px; min-height: 0;
    width: calc(100% + 10px); margin-right: -10px; padding-right: 10px; scrollbar-width: none;
  }
  .gz-produktgitter::-webkit-scrollbar { display: none; }
  .gz-produkt { scroll-snap-align: start; }
  .gz-vitrine__alt { margin-top: 24px; }
  .gz-dato { min-width: calc(50% - 4px); flex: 1 1 calc(50% - 4px); }
  .gz-booking__koeb { width: 100%; }
  .gz-booking__koeb .gz-knap { flex: 1; justify-content: center; }
}

/* ---------- Footer: mindre sk\0000e6rme (skal st\0000e5  efter footerens grundregler) ---------- */
@media (max-width: 1000px) {
  .gz-footer__top { grid-template-columns: 1fr; gap: 36px; }
  .gz-footer__kolonner { grid-template-columns: 1fr 1fr; gap: 32px 24px; }
}
@media (max-width: 767px) {
  .gz-footer__indre { padding: 44px 22px 24px; }
  .gz-footer__logo { font-size: 38px; }
  .gz-footer__formular form { grid-template-columns: 1fr; row-gap: 14px; }
  .gz-footer__formular .panel-body { grid-template-columns: 1fr; }
  .gz-footer__formular .form-submit { width: 100%; }
  .gz-footer__bund { flex-direction: column; align-items: flex-start; }
}

/* ---------- Garnsiden: s\0000f8gning og filtre (tema/udkast/garn-side.html) ---------- */
.gz-skjult { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.gz-laast, .gz-laast body { overflow: hidden; }
.gz-garn { font-family: var(--gz-sans); padding: 34px 0 80px; }
.gz-brod { display: flex; gap: 8px; font-size: 13px; color: var(--gz-daempet); margin-left: 0 !important; margin-right: 0 !important; margin-bottom: 18px; }
.gz-brod a { color: var(--gz-daempet) !important; text-decoration: none !important; }
.gz-brod a:hover { color: var(--gz-blomme) !important; }
.gz-garn__top h1 { font-family: var(--gz-serif) !important; font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 10px !important; }
.gz-garn__intro { font-size: 16px; line-height: 1.7; color: #61546a; max-width: 560px; margin: 0 0 34px; }
.gz-garn__layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 44px; align-items: start; }

/* Filterpanelet */
.gz-filtre { position: sticky; top: 20px; max-height: calc(100vh - 40px); overflow-y: auto; padding-right: 6px; scrollbar-width: thin; }
.gz-filtre__hoved { display: none; }
.gz-filtre__hoved h2 { font-family: var(--gz-serif) !important; font-size: 26px !important; margin: 0 !important; }
.gz-filtre__luk { appearance: none; background: none; border: 0; padding: 6px; cursor: pointer; color: var(--gz-blomme); }
.gz-filtre__luk svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
.gz-filtre__fod { display: none; }
.gz-filter { border-top: 1px solid var(--gz-linje); padding: 14px 0; }
.gz-filter:first-child { border-top: 0; padding-top: 0; }
.gz-filter summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 700; padding: 2px 0 10px; }
.gz-filter summary::-webkit-details-marker { display: none; }
.gz-filter summary::after { content: ""; margin-left: auto; width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-3px); transition: transform .2s ease; }
.gz-filter:not([open]) summary { padding-bottom: 0; }
.gz-filter:not([open]) summary::after { transform: rotate(-45deg); }
.gz-filter__antal { font-size: 11px; font-weight: 700; background: var(--gz-blomme); color: #fff; border-radius: 999px; min-width: 18px; height: 18px; display: inline-grid; place-items: center; padding: 0 5px; }
.gz-filter__indhold { display: flex; flex-direction: column; gap: 2px; }
.gz-valg { display: flex; align-items: flex-start; gap: 10px; padding: 5px 0; cursor: pointer; font-size: 14px; }
.gz-valg[hidden] { display: none; }
.gz-valg input { width: 16px; height: 16px; margin: 2px 0 0; accent-color: var(--gz-blomme); flex-shrink: 0; }
.gz-valg__navn { flex: 1; line-height: 1.35; }
.gz-valg__navn small { display: block; font-size: 12px; color: var(--gz-daempet); }
.gz-valg__antal { font-size: 12px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-valg:has(input:disabled) { opacity: .45; cursor: default; }
.gz-filter__indhold.er-farver { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px 6px; }
.gz-farvevalg { display: flex; flex-direction: column; align-items: center; gap: 4px; cursor: pointer; position: relative; }
.gz-farvevalg[hidden] { display: none; }
.gz-farvevalg input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.gz-farvevalg__prik { width: 28px; height: 28px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(53,40,62,.15); transition: box-shadow .15s ease; }
.gz-farvevalg__navn { font-size: 10px; line-height: 1.2; text-align: center; color: var(--gz-daempet); }
.gz-farvevalg:has(input:checked) .gz-farvevalg__prik { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--gz-blomme); }
.gz-farvevalg:has(input:focus-visible) .gz-farvevalg__prik { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-farvevalg:has(input:disabled) { opacity: .35; }
.gz-filter__indhold.er-interval { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px; }
.gz-filter__indhold.er-interval select { height: 38px; border: 1px solid #cfc4d8; border-radius: 4px; padding: 0 8px; font: 14px var(--gz-sans); color: var(--gz-blomme); background: #fff; min-width: 74px; }
.gz-filter__enhed { width: 100%; font-size: 12px; color: var(--gz-daempet); }
.gz-tekstknap { appearance: none; background: none; border: 0; padding: 4px 0; font: 600 13px var(--gz-sans); color: var(--gz-blomme); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--gz-syren); cursor: pointer; align-self: flex-start; }

/* V\0000e6rkt\0000f8jslinjen over resultaterne */
.gz-garn__vaerktoej { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 14px; }
.gz-soeg { flex: 1 1 320px; display: flex; align-items: center; gap: 10px; height: 48px; padding: 0 16px; background: var(--gz-lys); border-radius: 999px; }
.gz-soeg svg { width: 18px; height: 18px; fill: none; stroke: var(--gz-daempet); stroke-width: 1.6; flex-shrink: 0; }
.gz-soeg input { flex: 1; border: 0 !important; background: none !important; outline: 0; font: 14px var(--gz-sans); color: var(--gz-blomme); height: 46px; box-shadow: none !important; padding: 0 !important; }
.gz-filtre-knap { display: none; align-items: center; gap: 8px; height: 48px; padding: 0 18px; border: 1px solid #cfc4d8; border-radius: 999px; background: #fff; font: 600 14px var(--gz-sans); color: var(--gz-blomme); cursor: pointer; }
.gz-filtre-knap svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
.gz-garn__antal { margin: 0; font-size: 14px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-sortering { display: flex; align-items: center; gap: 8px; font-size: 14px; margin-left: auto; }
.gz-sortering select { height: 40px; border: 1px solid #cfc4d8; border-radius: 4px; padding: 0 10px; font: 14px var(--gz-sans); color: var(--gz-blomme); background: #fff; }
.gz-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 22px; min-height: 4px; }
.gz-chip { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 10px 0 14px; border-radius: 999px; border: 0; background: var(--gz-lavendel); color: var(--gz-blomme); font: 600 13px var(--gz-sans); cursor: pointer; }
.gz-chip svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.gz-chip:hover { background: var(--gz-syren); }

/* Garnkortene */
.gz-garngitter { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 24px; transition: opacity .15s ease; }
.gz-garngitter[aria-busy="true"] { opacity: .5; }
.gz-garnkort { display: flex; flex-direction: column; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-garnkort .gz-produkt__foto { margin-bottom: 14px; }
.gz-garnkort:hover .gz-produkt__foto img { transform: scale(1.03); }
.gz-garnkort:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; border-radius: 4px; }
.gz-maerkat { position: absolute; left: 10px; top: 10px; z-index: 1; font-size: 11px; font-weight: 700; background: #fff; color: var(--gz-blomme); padding: 4px 8px; border-radius: 3px; }
.gz-spec { display: flex; flex-wrap: wrap; gap: 2px 12px; margin-top: 6px; font-size: 12px; color: var(--gz-daempet); }
.gz-garnkort__bund { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 10px; }
.gz-garnkort .gz-produkt__pris { margin-top: 0; font-weight: 650; }
.gz-farveprikker { display: inline-flex; align-items: center; gap: 3px; }
.gz-farveprikker > span { width: 10px; height: 10px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(53,40,62,.15); }
.gz-farveprikker em { font-style: normal; font-size: 12px; color: var(--gz-daempet); margin-left: 5px; white-space: nowrap; }
.gz-tom--garn { grid-column: 1 / -1; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; background: var(--gz-lys); border-radius: 6px; padding: 36px 40px; }
.gz-tom--garn p { margin: 0; max-width: 520px; line-height: 1.7; }

@media (max-width: 1100px) {
  .gz-garn__layout { grid-template-columns: 210px minmax(0, 1fr); gap: 30px; }
  .gz-garngitter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Mobil og tablet: filtrene glider op som en skuffe fra bunden */
@media (max-width: 900px) {
  .gz-garn { padding: 22px 0 56px; }
  .gz-garn__top h1 { font-size: 40px !important; }
  .gz-garn__intro { font-size: 15px; margin-bottom: 22px; }
  .gz-garn__layout { grid-template-columns: 1fr; }
  .gz-filtre-knap { display: inline-flex; }
  .gz-sortering { margin-left: 0; }
  .gz-sortering span { display: none; }
  .gz-filtre {
    position: fixed; left: 0; right: 0; bottom: 0; top: auto; z-index: 1001; max-height: 86vh;
    background: #fff; border-radius: 14px 14px 0 0; padding: 0 22px; overflow-y: auto;
    transform: translateY(105%); transition: transform .28s ease; box-shadow: 0 -10px 40px rgba(53,40,62,.18);
  }
  .gz-filtre.er-aaben { transform: translateY(0); }
  .gz-filtre__hoved { display: flex; align-items: center; justify-content: space-between; position: sticky; top: 0; background: #fff; padding: 18px 0 12px; z-index: 1; }
  .gz-filtre__fod { display: flex; align-items: center; justify-content: space-between; gap: 16px; position: sticky; bottom: 0; background: #fff; padding: 14px 0 18px; border-top: 1px solid var(--gz-linje); }
  .gz-filtre__fod .gz-knap { flex: 1; justify-content: center; }
  .gz-filtre__baggrund { position: fixed; inset: 0; background: rgba(53,40,62,.4); z-index: 1000; }
  .gz-filtre__baggrund[hidden] { display: none; }
}
@media (max-width: 767px) {
  .gz-garn__vaerktoej { gap: 10px; }
  .gz-soeg { flex-basis: 100%; }
  .gz-garn__antal { flex: 1; }
  .gz-garngitter { gap: 30px 14px; }
  .gz-spec { font-size: 11px; gap: 0 8px; }
  .gz-farveprikker > span { display: none; }
}
@media (prefers-reduced-motion: reduce) { .gz-filtre { transition: none; } }

/* ---------- Header og menu f\0000f8lger med, n\0000e5r man scroller (USP-bj\0000e6lken g\0000f8r ikke) ---------- */
/* H\0000f8jderne s\0000e6ttes af garnzonen.js ud fra de rigtige m\0000e5l, s\0000e5  de passer p\0000e5  alle sk\0000e6rme. */
.site-header { position: sticky !important; top: 0; z-index: 950; }
.site-navigation { position: sticky !important; top: var(--gz-header-h, 91px); z-index: 949; }
.gz-filtre { top: calc(var(--gz-header-h, 91px) + var(--gz-nav-h, 54px) + 20px); max-height: calc(100vh - var(--gz-header-h, 91px) - var(--gz-nav-h, 54px) - 40px); }
.gz-rullet .site-navigation { box-shadow: 0 8px 18px -12px rgba(53, 40, 62, .35) !important; }
@media (max-width: 767px) { .gz-rullet .site-header { box-shadow: 0 8px 18px -12px rgba(53, 40, 62, .35); } }
/* Temaets sennepsgule hover-farve p\0000e5  links m\0000e5  ikke ramme vores overskrifter */
.gz-noegler__liste a:hover h3, .gz-produkt:hover .gz-produkt__navn, .gz-garnkort:hover .gz-produkt__navn { color: var(--gz-blomme) !important; }

/* ---------- Ny mega-menu for Garn (tema/udkast/megamenu-garn.html) ---------- */
.gz-mega {
  display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, 1.5fr);
  gap: 48px; max-width: var(--gz-bredde); margin: 0 auto; padding: 8px 10px 6px; font-family: var(--gz-sans); text-align: left;
}
.gz-mega h3, .gz-mega .gz-mega__titel {
  font-family: var(--gz-serif) !important; font-size: 21px !important; font-weight: 400 !important; letter-spacing: -0.01em !important;
  color: var(--gz-blomme) !important; margin: 0 0 12px !important; padding-bottom: 10px; border-bottom: 1px solid var(--gz-linje);
}
.gz-mega .gz-mega__titel--anden { margin-top: 26px !important; }
.gz-mega ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-mega__kolonne--maerker ul { columns: 2; column-gap: 24px; }
.gz-mega li { list-style: none; margin: 0; padding: 0; break-inside: avoid; border: 0 !important; background: none !important; width: auto !important; float: none !important; }
.gz-mega li a {
  display: inline-block !important; padding: 6px 0 !important; font-family: var(--gz-sans) !important; font-size: 15px !important;
  font-weight: 500 !important; color: var(--gz-blomme) !important; text-decoration: none !important; text-transform: none !important;
  border: 0 !important; background: none !important; height: auto !important; line-height: 1.35 !important;
}
.gz-mega li a:hover { color: #80539b !important; text-decoration: underline !important; text-underline-offset: 4px; text-decoration-thickness: 1px !important; }
.gz-mega__tykkelse a small { display: block; font-size: 12px; font-weight: 400; color: var(--gz-daempet); }
.gz-mega__kort {
  position: relative; display: block; border-radius: 6px; overflow: hidden; min-height: 230px;
  background: var(--gz-lys); color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-mega__kort img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.gz-mega__kort:hover img { transform: scale(1.03); }
.gz-mega__korttekst {
  position: absolute; left: 14px; right: 14px; bottom: 14px; padding: 14px 16px; border-radius: 4px;
  background: rgba(255, 255, 255, .94); backdrop-filter: blur(8px); display: flex; flex-direction: column; gap: 3px;
}
.gz-mega__korttekst strong { font-family: var(--gz-serif); font-weight: 400; font-size: 21px; letter-spacing: -0.01em; }
.gz-mega__korttekst span { font-size: 13px; line-height: 1.5; color: #61546a; }
@media (max-width: 1200px) { .gz-mega { gap: 28px; } .gz-mega__kolonne--maerker ul { columns: 1; } }

/* Burgermenuen er kun til mobil. Over 768 px viser temaet selv kategorimenuen, og informationssiderne ligger i footeren. */
@media only screen and (min-width: 769px) {
  .site-header .menu-open-button { display: none !important; }
}
/* Temaet farver bes\0000f8gte og fokuserede links guld-orange. Vores overskrifter og navne er altid blomme. */
.gz-noegler__liste h3, .gz-produkt__navn, .gz-garnkort .gz-produkt__navn, .gz-mega h3, .gz-mega .gz-mega__titel, .gz-snart p { color: var(--gz-blomme) !important; }
.gz-noegler__liste a, .gz-noegler__liste a:visited, .gz-noegler__liste a:focus, .gz-produkt, .gz-produkt:visited, .gz-garnkort, .gz-garnkort:visited { color: var(--gz-blomme) !important; }
/* Temaet g\0000f8r links hvide p\0000e5  sort baggrund, n\0000e5r de har fokus (a:focus). Det fjernes; tastaturfokus f\0000e5r en lilla ramme. */
body a:focus { color: inherit; background-color: transparent; }
body a:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
body a.gz-knap:focus { background-color: var(--gz-blomme); }
/* P\0000e5  garnzonen.dk bliver reCAPTCHA-feltet synligt og l\0000e5  mellem de to afkrydsninger. Det flyttes ned under dem. */
.gz-footer__formular .m-newsletter-spam-check { order: 10; margin: 0 !important; }
.gz-footer__formular .m-newsletter-spam-check hr { display: none; }
.gz-footer__formular .m-newsletter-newsletter, .gz-footer__formular .m-newsletter-consent { align-self: start; }

/* ---------- Menuen i \0000e9n r\0000e6kke med logo og ikoner (9/10 2026) ----------
   Marianne: menur\0000e6kken var "helt v\0000e6k". F\0000f8r: USP, header med stor s\0000f8gepille og "Din indk\0000f8bskurv er tom",
   og under den en egen r\0000e6kke med elleve punkter i tre farver. Nu: logo, syv punkter og tre ikoner.
   garnzonen.js flytter .site-navigation ind i headerr\0000e6kken (html.gz-menu-i-header). */

/* Fire punkter st\0000e5r i dropdownene i stedet: Tasker + Broderi under Tilbeh\0000f8r, Opskrifter under B\0000f8ger,
   Kursus under Strikkecaf\0000e9en. Kategorierne findes stadig og kan n\0000e5s fra dropdownene. */
.site-navigation li.b-category-361,
.site-navigation li.b-category-334,
.site-navigation li.b-category-134,
.site-navigation li.b-category-385 { display: none !important; }

/* Alle punkter i samme farve. Caf\0000e9en og tilbud skilte sig ud med lilla og brun. */
.site-navigation .main-menu .b-category-li-0 > .b-anchor,
.site-navigation .main-menu .b-category-325 > .b-anchor,
.site-navigation .main-menu .b-category-61 > .b-anchor { color: var(--gz-blomme) !important; font-weight: 500 !important; font-size: 14px !important; }
.site-navigation .main-menu .b-category-li-0:hover > .b-anchor { color: #80539b !important; }

/* Kurven er et ikon med antal. Teksten "Din indk\0000f8bskurv er tom" er v\0000e6k. */
.site-header .m-quick-cart { display: none !important; }
.site-header .mobile-cart-link { display: inline-flex !important; position: relative; }
.site-header .m-quick-cart__count {
  position: absolute; top: -8px; right: -11px; width: 17px; height: 17px; border-radius: 50%;
  background: var(--gz-blomme); color: #fff !important; font: 600 10px/17px var(--gz-sans) !important; text-align: center; margin: 0;
}
/* Konto f\0000f8r kurv, som man er vant til fra andre shops */
.site-header .header-user-button { order: 1; }
.site-header .header-icon-button:has(.w-cart) { order: 2; }

@media only screen and (min-width: 769px) {
  .gz-menu-i-header .site-header { padding: 0 !important; }
  .gz-menu-i-header .site-header > .container > .row { flex-wrap: wrap; gap: 0 28px; min-height: 80px; }
  .gz-menu-i-header .site-header .logo-anchor { font-size: 38px !important; }
  .gz-menu-i-header .site-header > .container > .row > div:nth-child(3) { order: 2; margin-left: auto; }

  /* Menuen inde i headeren: dropdownene skal stadig g\0000e5  i fuld bredde under hele headeren */
  .gz-menu-i-header .site-header .site-navigation {
    position: static !important; order: 1; flex: 0 1 auto; border: 0 !important; box-shadow: none !important; background: none;
  }
  .gz-menu-i-header .site-header .site-navigation .navbar,
  .gz-menu-i-header .site-header .site-navigation .main-menu,
  .gz-menu-i-header .site-header .site-navigation .main-menu > .container,
  .gz-menu-i-header .site-header .site-navigation ul.productcategories-level-0,
  .gz-menu-i-header .site-header .site-navigation .b-category-li-0 {
    position: static !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; min-height: 0 !important; border: 0 !important;
  }
  .gz-menu-i-header .site-header .site-navigation ul.productcategories-level-0 { display: flex; gap: 0; }
  /* Linket fylder hele headerens h\0000f8jde, s\0000e5  musen ikke "falder ud" af menuen p\0000e5  vej ned i dropdownen */
  .gz-menu-i-header .site-header .site-navigation .b-category-li-0 > .b-anchor { padding: 31px 11px !important; line-height: 18px !important; }
  .gz-menu-i-header .site-header .site-navigation .dropdown-megamenu { top: 100% !important; left: 0 !important; right: 0 !important; width: 100% !important; }

  /* S\0000f8gning: luppen folder et felt ud under headeren i stedet for den store pille */
  .gz-menu-i-header .site-header .mobile-search-button { display: inline-flex !important; cursor: pointer; }
  .gz-menu-i-header .site-header .search-wrapper {
    display: none; position: absolute !important; top: 100%; left: 0; right: 0; z-index: 960;
    width: 100% !important; padding: 16px 0 !important; background: var(--gz-hvid); border-bottom: 1px solid var(--gz-linje);
    box-shadow: 0 18px 30px -24px rgba(53, 40, 62, .35);
  }
  .gz-menu-i-header .site-header .search-wrapper .search-module { max-width: 560px; margin: 0 auto; }
}

/* Under 1200 px er der ikke plads til alt p\0000e5  \0000e9n linje. S\0000e5  st\0000e5r menuen som linje to i samme header. */
@media only screen and (min-width: 769px) and (max-width: 1199px) {
  .gz-menu-i-header .site-header > .container > .row { min-height: 0; padding-top: 16px; }
  .gz-menu-i-header .site-header .site-navigation { order: 3; flex: 1 0 100%; margin-top: 12px; border-top: 1px solid var(--gz-linje) !important; }
  .gz-menu-i-header .site-header .site-navigation ul.productcategories-level-0 { justify-content: center; }
  .gz-menu-i-header .site-header .site-navigation .b-category-li-0 > .b-anchor { padding: 14px 10px !important; font-size: 13px !important; }
}

/* Dropdowns for Tilbeh\0000f8r, B\0000f8ger & opskrifter og Strikkecaf\0000e9en (tema/udkast/megamenu-*.html) */
.gz-mega--tre { grid-template-columns: repeat(3, minmax(0, 260px)); }
.gz-mega__kolonne--bred { grid-column: span 2; }
.gz-mega__kolonne--bred ul { columns: 2; column-gap: 24px; }
.gz-mega--to { grid-template-columns: repeat(2, minmax(0, 360px)); gap: 20px; }
.gz-mega__boks {
  display: flex !important; flex-direction: column; gap: 6px; padding: 22px 24px !important; border-radius: 6px;
  background: var(--gz-lys) !important; color: var(--gz-blomme) !important; text-decoration: none !important; text-align: left;
  transition: background .2s ease;
}
.gz-mega__boks:hover { background: var(--gz-lavendel) !important; }
.gz-mega__boks strong { font-family: var(--gz-serif); font-weight: 400; font-size: 22px; letter-spacing: -0.01em; }
.gz-mega__boks span { font-size: 14px; line-height: 1.55; color: #61546a; }
.gz-mega__boks em { font-style: normal; font-size: 13px; font-weight: 600; margin-top: 6px; text-decoration: underline; text-underline-offset: 4px; }
/* Tilbud sidst i r\0000e6kken */
.site-navigation li.b-category-61 { order: 1; }
.site-header .desktop-icon-nav { gap: 14px; }

/* ---------- Mobilmenuen (tema/udkast/mobilmenu.html) ----------
   Temaets kopi af kategoritr\0000e6et skjules. Vores egen st\0000e5r f\0000f8r den og har samme syv punkter som computeren. */
.hamburger-menu #menuReplace { display: none !important; }
.gz-mobilmenu { font-family: var(--gz-sans); border-bottom: 1px solid var(--gz-linje); }
.gz-mobilmenu summary,
.gz-mobilmenu__punkt {
  display: flex !important; align-items: center; justify-content: space-between;
  padding: 17px 20px !important; font-size: 15px !important; font-weight: 700 !important; line-height: 1.3 !important;
  color: var(--gz-blomme) !important; text-decoration: none !important; cursor: pointer; list-style: none;
}
.gz-mobilmenu summary::-webkit-details-marker { display: none; }
.gz-mobilmenu summary::after {
  content: ''; width: 8px; height: 8px; margin-right: 4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-mobilmenu details[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-mobilmenu details[open] > summary { color: #80539b !important; }
.gz-mobilmenu__indhold { padding: 0 20px 18px; }
.gz-mobilmenu__indhold p {
  margin: 14px 0 4px !important; font-size: 11px !important; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gz-daempet) !important;
}
.gz-mobilmenu__indhold ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-mobilmenu__indhold ul.gz-mobilmenu__to { columns: 2; column-gap: 16px; }
.gz-mobilmenu__indhold li { list-style: none; margin: 0; padding: 0; break-inside: avoid; }
.gz-mobilmenu__indhold a {
  display: block; padding: 8px 0 !important; font-size: 15px !important; font-weight: 500 !important;
  color: var(--gz-blomme) !important; text-decoration: none !important; text-transform: none !important;
}
.gz-mobilmenu__indhold a small { display: block; font-size: 12px; font-weight: 400; color: var(--gz-daempet); }
.gz-mobilmenu__indhold a.gz-mobilmenu__alle { font-weight: 700 !important; text-decoration: underline !important; text-underline-offset: 4px; }
/* Headeren f\0000e5r en tynd linje i bunden, s\0000e5  hvide sider ikke flyder sammen med den */
.site-header { border-bottom: 1px solid var(--gz-linje); }
/* Burgermenuen (kun mobil) st\0000e5r yderst til h\0000f8jre */
.site-header .menu-open-button { order: 3; }

/* =====================================================================
   Forside v2 (9/10 2026). Marianne: renere og billedb\0000e5ret som Bruunstrik, men ikke en kopi.
   Hvid flade, \0000e9t stort billede, fiberguiden som runde n\0000f8gler (sidens ene kendetegn),
   caf\0000e9en som \0000e9n sektion med tilmelding, butikken som en rolig r\0000e6kke. Ingen gul og ingen lilla blokke.
   ===================================================================== */

/* ---------- Toppen: tekst p\0000e5  hvidt, billedet fylder resten helt ud til kanten ---------- */
.gz-top {
  display: grid; grid-template-columns: minmax(0, 11fr) minmax(0, 13fr);
  min-height: 600px; background: var(--gz-hvid); font-family: var(--gz-sans);
}
.gz-top__tekst {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
  /* flugter med logoet, ligesom resten af siden */
  padding: 64px 40px 72px max(24px, calc((100vw - var(--gz-bredde)) / 2 + 10px));
}
.gz-top h1 {
  font-family: var(--gz-serif) !important; font-size: clamp(52px, 4.7vw, 78px) !important;
  line-height: 1.02 !important; letter-spacing: -0.035em !important; margin: 0 0 24px !important;
}
.gz-top__tekst > p { max-width: 380px; font-size: 17px; line-height: 1.65; color: #5d5066; margin: 0 0 32px; }
.gz-top__billede { min-height: 600px; background: var(--gz-lys) url(../img/forside-hero.jpg) 50% 42% / cover no-repeat; }

/* ---------- Fiberguiden som runde n\0000f8gler ---------- */
/* Toppen ligger uden for designets container (som det gamle karrusel); n\0000f8glerne flugter med logoet */
.gz-noegler { max-width: var(--gz-bredde); margin: 0 auto; padding: 88px 10px 8px; box-sizing: border-box; }
.gz-noegler__top { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 40px; }
.gz-noegler__top h2 { margin: 0 !important; }
.gz-noegler__top p { max-width: 360px; font-size: 15px; line-height: 1.7; color: var(--gz-daempet); margin: 0; }
.gz-noegler__liste {
  list-style: none; margin: 0 !important; padding: 0 !important;
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 28px;
}
.gz-noegler__liste li { list-style: none; margin: 0; padding: 0; }
.gz-noegler__liste a {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-noegler .gz-fibre__foto {
  display: block; width: 100%; aspect-ratio: 1 / 1; border-radius: 50%; overflow: hidden;
  background: var(--gz-lavendel); margin-bottom: 18px;
  outline: 1px solid transparent; outline-offset: 6px; transition: outline-color .2s ease;
}
/* Produktfotoene har en plante i kanten; zoom ind p\0000e5  garnet i midten */
.gz-noegler .gz-fibre__foto img { width: 100%; height: 100%; object-fit: cover; object-position: 45% 60%; transform: scale(1.3); }
.gz-noegler__liste a:hover .gz-fibre__foto { outline-color: var(--gz-syren); }
.gz-noegler__liste a:focus-visible { outline: none; }
.gz-noegler__liste a:focus-visible .gz-fibre__foto { outline: 2px solid #80539b; }
.gz-noegler__liste h3 {
  font-family: var(--gz-serif) !important; font-size: 23px !important; line-height: 1.15 !important;
  letter-spacing: -0.01em !important; margin: 0 0 4px !important;
}
.gz-noegler__liste p { font-size: 13px; line-height: 1.5; color: var(--gz-daempet); margin: 0; }
.gz-fibre__foto img:not([src]) { visibility: hidden; }
.gz-fibre__foto.er-tom { visibility: hidden; }

/* ---------- Vitrinen: overskrift og "se alt" p\0000e5  \0000e9n linje, faner under ---------- */
.gz-vitrine { padding: 88px 0 96px; border-bottom: 0; }
.gz-vitrine__top { flex-direction: row; justify-content: space-between; align-items: baseline; gap: 24px; margin-bottom: 16px; }
.gz-vitrine__alt { margin-top: 0; }
.gz-vitrine .gz-faner { margin-bottom: 34px; }

/* ---------- Strikkecaf\0000e9en: \0000e9n sektion med foto, fakta og tilmelding ---------- */
/* Ligger i designets container; baggrunden tr\0000e6kkes ud i fuld bredde */
.gz-cafe2 { background: var(--gz-lys); box-shadow: 0 0 0 100vmax var(--gz-lys); clip-path: inset(0 -100vmax); padding: 88px 0; }
.gz-cafe2__indre {
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 64px; align-items: start;
}
.gz-cafe2__foto { aspect-ratio: 4 / 5; border-radius: 4px; overflow: hidden; background: var(--gz-lavendel); }
.gz-cafe2__foto img { width: 100%; height: 100%; object-fit: cover; }
.gz-cafe2__form { display: flex; flex-direction: column; align-items: flex-start; }
.gz-cafe2 h2 { margin: 0 0 12px !important; }
.gz-cafe2__lede { font-size: 16px; line-height: 1.7; color: #5d5066; max-width: 460px; margin: 0 0 28px; }
.gz-cafe2__fakta {
  display: grid; grid-template-columns: repeat(4, minmax(0, auto)); gap: 28px; margin: 0 0 32px !important; padding: 0;
}
.gz-cafe2__fakta > div { margin: 0; }
.gz-cafe2__fakta dt { font-size: 12px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-cafe2__fakta dd { font-size: 15px; line-height: 1.45; margin: 0; color: var(--gz-blomme); }
.gz-cafe2__fakta dd::before, .gz-cafe2__fakta dt::before { content: none !important; } /* temaet nummererer dd'er */
.gz-cafe2 .gz-dato { background: var(--gz-hvid); }

/* ---------- Butikken: en rolig r\0000e6kke nederst ---------- */
.gz-besoeg {
  display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 3fr) minmax(0, 3fr); gap: 48px;
  align-items: start; padding: 80px 0 96px;
}
.gz-besoeg h2 { margin: 0 0 12px !important; }
.gz-besoeg__intro p { font-size: 15px; line-height: 1.7; color: #5d5066; max-width: 440px; margin: 0; }
.gz-besoeg__adresse { font-style: normal; font-size: 14px; line-height: 1.8; margin: 0 !important; padding: 6px 0 0 !important; text-align: left !important; }
.gz-besoeg__adresse strong { font-weight: 650; }
.gz-besoeg__adresse a { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
.gz-besoeg__tider { padding-top: 6px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; }

@media (max-width: 1100px) {
  .gz-noegler__liste { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 36px; }
  .gz-cafe2__indre { gap: 40px; }
  .gz-cafe2__fakta { grid-template-columns: repeat(2, minmax(0, auto)); }
  .gz-besoeg { grid-template-columns: 1fr 1fr; }
  .gz-besoeg__intro { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
  .gz-top { grid-template-columns: 1fr; min-height: 0; }
  .gz-top__billede { order: -1; min-height: 0; aspect-ratio: 4 / 3; background-image: url(../img/forside-hero-mobil.jpg); background-position: 50% 50%; }
  .gz-top__tekst { padding: 32px 16px 44px; }
  .gz-top h1 { font-size: 50px !important; margin-bottom: 16px !important; }
  .gz-top__tekst > p { font-size: 15px; margin-bottom: 24px; }

  .gz-noegler { padding: 52px 16px 0; }
  .gz-noegler h2, .gz-cafe2 h2, .gz-besoeg h2 { font-size: 31px !important; }
  .gz-noegler__top { flex-direction: column; align-items: flex-start; gap: 8px; margin-bottom: 26px; }
  /* N\0000f8glerne kan swipes vandret */
  .gz-noegler__liste {
    grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 128px; gap: 18px;
    overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
    width: calc(100% + 10px); margin-right: -10px !important; padding: 0 10px 8px 0 !important;
  }
  .gz-noegler__liste::-webkit-scrollbar { display: none; }
  .gz-noegler__liste li { scroll-snap-align: start; }
  .gz-noegler__liste h3 { font-size: 20px !important; }

  .gz-vitrine { padding: 52px 0 56px; }
  .gz-cafe2 { padding: 52px 0; }
  .gz-cafe2__indre { grid-template-columns: 1fr; gap: 28px; }
  .gz-cafe2__foto { aspect-ratio: 4 / 3; }
  .gz-cafe2__fakta { grid-template-columns: 1fr 1fr; gap: 18px 20px; }
  .gz-besoeg { grid-template-columns: 1fr; gap: 26px; padding: 52px 6px 60px; }
  /* Temaets container har kun 10 px margen p\0000e5  mobil; forsiden bruger 16 px hele vejen ned */
  .gz-vitrine { padding-left: 6px; padding-right: 6px; }
  .gz-cafe2__indre { padding: 0 6px; }
}

/* =====================================================================
   Forside v3 (9/10 2026). Marianne kan lide Bruunstrik: store billeder og afsnit, der skifter mellem
   billede og tekst. Malik: ikke en kopi. Vores egne greb: billederne g\0000e5r helt ud til sk\0000e6rmkanten,
   teksten p\0000e5  forsidebilledet st\0000e5r p\0000e5  et hvidt kort, der h\0000e6nger ind over billedets kant, overskrifter i
   serif og sentence case, kategorier som h\0000f8je billeder med navnet under. v1/v2 ligger i tema/bibliotek/.
   ===================================================================== */
:root { --gz-halv: calc(var(--gz-bredde) / 2); }
.gz-forsidebillede, .gz-afsnit, .gz-kategorier { font-family: var(--gz-sans); }
.gz-forsidebillede h1, .gz-afsnit h2, .gz-kategorier h2, .gz-kategorier h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
}

/* ---------- Forsidebilledet ---------- */
.gz-forsidebillede { position: relative; padding-bottom: 40px; }
.gz-forsidebillede__billede {
  height: min(74vh, 660px); min-height: 460px;
  background: var(--gz-lys) url(../img/st-forside-top.jpg) 50% 46% / cover no-repeat;
}
.gz-forsidebillede__kort {
  position: relative; box-sizing: border-box; width: min(540px, calc(100% - 32px));
  margin: -200px 0 0 max(16px, calc((100vw - var(--gz-bredde)) / 2 + 10px));
  padding: 48px 56px 52px; background: var(--gz-hvid);
}
.gz-forsidebillede h1 {
  font-size: clamp(48px, 4.6vw, 72px) !important; line-height: 1.02 !important; letter-spacing: -0.035em !important; margin: 0 0 20px !important;
}
.gz-forsidebillede__kort > p { font-size: 17px; line-height: 1.65; color: #5d5066; margin: 0 0 30px; max-width: 400px; }

/* ---------- Afsnit: billede og tekst skifter side. Billedet g\0000e5r ud til sk\0000e6rmkanten ---------- */
.gz-afsnit {
  display: grid; align-items: stretch; margin: 80px 0 0;
  grid-template-columns: minmax(16px, 1fr) minmax(0, var(--gz-halv)) minmax(0, var(--gz-halv)) minmax(16px, 1fr);
}
.gz-afsnit__tekst { grid-row: 1; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.gz-afsnit__billede {
  grid-row: 1; position: relative; overflow: hidden; min-height: 620px;
  background: var(--gz-lys) 50% 50% / cover no-repeat;
}
.gz-afsnit__billede > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gz-afsnit--billede-hoejre .gz-afsnit__tekst { grid-column: 2; padding: 64px 80px 64px 10px; }
.gz-afsnit--billede-hoejre .gz-afsnit__billede { grid-column: 3 / 5; }
.gz-afsnit--billede-venstre .gz-afsnit__billede { grid-column: 1 / 3; }
.gz-afsnit--billede-venstre .gz-afsnit__tekst { grid-column: 3; padding: 64px 10px 64px 80px; }
.gz-afsnit h2 { font-size: 46px !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important; }
.gz-afsnit__tekst > p { font-size: 17px; line-height: 1.7; color: #5d5066; max-width: 440px; margin: 0 0 30px; }
.gz-afsnit__tekst > .gz-tekstlink { margin-top: 22px; }
.gz-afsnit__billede--garn { background-image: url(../img/st-forside-garn.jpg); }
.gz-afsnit__billede--opskrift { background-image: url(../img/st-forside-opskrift.jpg); background-position: 50% 42%; }
/* Caf\0000e9ens fakta i to kolonner, s\0000e5  de kan st\0000e5  i tekstsiden */
.gz-afsnit .gz-cafe2__fakta { grid-template-columns: repeat(2, minmax(0, max-content)); gap: 16px 40px; margin: 0 0 28px !important; }
.gz-afsnit .gz-booking__note { margin-bottom: 0; }

/* ---------- Kategorier: h\0000f8je billeder med navnet under ---------- */
.gz-kategorier { max-width: var(--gz-bredde); box-sizing: border-box; margin: 0 auto; padding: 96px 10px 8px; }
.gz-kategorier h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 32px !important; }
.gz-kategorier__liste { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.gz-kategorier__liste li { list-style: none; margin: 0; padding: 0; }
.gz-kategorier__liste a { display: block; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-kategorier__billede {
  display: block; aspect-ratio: 4 / 5; overflow: hidden; margin-bottom: 16px;
  background: var(--gz-lys) 50% 50% / cover no-repeat;
}
.gz-kategorier__billede img { width: 100%; height: 100%; object-fit: cover; }
.gz-kategorier__billede--pinde { background-image: url(../img/st-forside-pinde.jpg); }
.gz-kategorier h3 { font-size: 23px !important; line-height: 1.15 !important; margin: 0 0 4px !important; }
.gz-kategorier__liste a:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gz-kategorier__liste a:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-kategorier__liste p { font-size: 14px; line-height: 1.5; color: var(--gz-daempet); margin: 0; }
/* Fiberbillede-krogen gemmer billedet, hvis kategorien er tom; flisen beholder sin flade */
.gz-kategorier .gz-fibre__foto.er-tom { visibility: visible; }

@media (max-width: 1100px) {
  .gz-afsnit--billede-hoejre .gz-afsnit__tekst { padding: 48px 48px 48px 10px; }
  .gz-afsnit--billede-venstre .gz-afsnit__tekst { padding: 48px 10px 48px 48px; }
  .gz-afsnit h2 { font-size: 38px !important; }
}

@media (max-width: 767px) {
  .gz-forsidebillede { padding-bottom: 8px; }
  .gz-forsidebillede__billede { height: auto; min-height: 0; aspect-ratio: 4 / 3; }
  .gz-forsidebillede__kort { width: auto; margin: -56px 16px 0; padding: 30px 22px 32px; }
  .gz-forsidebillede h1 { font-size: 46px !important; margin-bottom: 14px !important; }
  .gz-forsidebillede__kort > p { font-size: 15px; margin-bottom: 22px; }

  /* \0000c9t spor: billedet f\0000f8rst, s\0000e5  teksten. Billedet g\0000e5r stadig helt ud til kanten */
  .gz-afsnit { grid-template-columns: 1fr; margin-top: 48px; }
  .gz-afsnit .gz-afsnit__billede { grid-column: 1 !important; grid-row: 1; min-height: 0; aspect-ratio: 4 / 3; }
  .gz-afsnit .gz-afsnit__tekst { grid-column: 1 !important; grid-row: 2; padding: 28px 16px 8px !important; }
  .gz-afsnit h2 { font-size: 32px !important; }
  .gz-afsnit__tekst > p { font-size: 15px; margin-bottom: 22px; }

  .gz-kategorier { padding: 56px 16px 0; }
  .gz-kategorier h2 { font-size: 31px !important; margin-bottom: 22px !important; }
  .gz-kategorier__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 14px; }
  .gz-kategorier h3 { font-size: 19px !important; }
  .gz-kategorier__liste p { font-size: 13px; }
}

/* ---------- Tynde ikoner i headeren i stedet for temaets fede Font Awesome (9/10 2026) ---------- */
.site-header .fa-search, .site-header .fa-bars, .site-header .fa-shopping-cart, .site-header .fa-user {
  display: inline-block; width: 22px; height: 22px; font-size: 0 !important; vertical-align: middle;
  background: 50% 50% / contain no-repeat;
}
.site-header .fa-search::before, .site-header .fa-bars::before, .site-header .fa-shopping-cart::before, .site-header .fa-user::before { content: none !important; }
.site-header .fa-search { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5 20 20'/%3E%3C/svg%3E"); }
.site-header .fa-bars { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M4 8h16M4 16h16'/%3E%3C/svg%3E"); }
.site-header .fa-shopping-cart { position: relative; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linejoin='round'%3E%3Cpath d='M5 8h14l-1.2 12H6.2L5 8Z'/%3E%3Cpath d='M9 10V7a3 3 0 0 1 6 0v3'/%3E%3C/svg%3E"); }
.site-header .fa-user { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8.5' r='3.8'/%3E%3Cpath d='M4.5 20c1.4-3.6 4.2-5.4 7.5-5.4s6.1 1.8 7.5 5.4'/%3E%3C/svg%3E"); }

/* ---------- Mobil: header og menu (9/10 2026) ----------
   Marianne syntes, vores mobilmenu haltede efter Bruunstriks. Burger og s\0000f8g til venstre, logoet i midten,
   kurven til h\0000f8jre. Menuen glider ind fra venstre, med ordm\0000e6rket \0000f8verst og luftige r\0000e6kker. */
@media only screen and (max-width: 768px) {
  .site-header > .container > .row { display: grid !important; grid-template-columns: 40px 40px minmax(0, 1fr) 40px 40px; align-items: center; gap: 0 !important; }
  .site-header > .container > .row > div:nth-child(2) { grid-column: 3; grid-row: 1; justify-self: center; text-align: center; padding: 0 !important; }
  .site-header > .container > .row > div:nth-child(3),
  .site-header .desktop-icon-nav { display: contents !important; }
  .site-header .menu-open-button { grid-column: 1; grid-row: 1; justify-self: start; }
  .site-header .mobile-search-button { grid-column: 2; grid-row: 1; justify-self: start; }
  .site-header .header-user-button { grid-column: 4; grid-row: 1; justify-self: end; }
  .site-header .header-icon-button:has(.w-cart) { grid-column: 5; grid-row: 1; justify-self: end; }
  .site-header .header-icon-button { padding: 0 !important; margin: 0 !important; display: inline-flex; }
  .site-header .header-icon-button > a { padding: 8px 6px !important; display: inline-flex; }
  .site-header .mobile-search-button { padding: 8px 6px !important; }
  .site-header .logo-anchor { font-size: 31px !important; }

  /* Skuffen */
  .hamburger-menu {
    left: 0 !important; right: auto !important; width: min(86vw, 360px) !important;
    transform: translateX(-105%) !important; transition: transform .28s ease !important;
    background: var(--gz-hvid) !important; overflow-y: auto;
  }
  .hamburger-menu.show-menu { transform: none !important; box-shadow: 0 0 48px rgba(53, 40, 62, .28); }
  .hamburger-menu .menu-inner-wrapper { width: 100% !important; }
  .hamburger-menu .menu-header {
    display: flex !important; align-items: center; justify-content: space-between;
    height: 64px; padding: 0 20px !important; border-bottom: 1px solid var(--gz-linje); background: var(--gz-hvid) !important;
  }
  .hamburger-menu .menu-header h6 { font-size: 0 !important; margin: 0 !important; }
  .hamburger-menu .menu-header h6::before {
    content: 'garnzonen.'; font: 400 28px/1 var(--gz-serif); letter-spacing: -0.045em; color: var(--gz-blomme);
  }
  .hamburger-menu .menu-close-button .fa {
    display: inline-block; width: 20px; height: 20px; font-size: 0 !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6 6 18'/%3E%3C/svg%3E") 50% 50% / contain no-repeat;
  }
  .hamburger-menu .menu-close-button .fa::before { content: none !important; }
  .hamburger-menu .sidebarMenu { display: none !important; }
  .pagedim { background: rgba(53, 40, 62, .38) !important; }

  /* R\0000e6kkerne */
  .gz-mobilmenu { border-bottom: 0; }
  .gz-mobilmenu summary, .gz-mobilmenu__punkt {
    font-size: 16px !important; font-weight: 500 !important; padding: 19px 20px !important;
    border-bottom: 1px solid var(--gz-linje);
  }
  .gz-mobilmenu summary::after { width: 7px; height: 7px; border-width: 0 1.5px 1.5px 0; }
  .gz-mobilmenu details[open] > summary { border-bottom-color: transparent; }
  .gz-mobilmenu details[open] > .gz-mobilmenu__indhold { border-bottom: 1px solid var(--gz-linje); }
  .gz-mobilmenu__info { list-style: none; margin: 0 !important; padding: 22px 20px 32px !important; }
  .gz-mobilmenu__info li { list-style: none; margin: 0; }
  .gz-mobilmenu__info a { display: block; padding: 7px 0; font-size: 14px; color: var(--gz-daempet) !important; text-decoration: none !important; }
}

.gz-kategorier[hidden] { display: none !important; }
/* Kurven st\0000e5r helt ude til h\0000f8jre; antallet m\0000e5  ikke stikke ud over sk\0000e6rmkanten */
.site-header .header-icon-button:has(.w-cart) > a { padding-right: 10px !important; }
.site-header .m-quick-cart__count { right: -6px; }

/* Forsidebilledet som mosaik af fire garner fra fire m\0000e6rker (9/10 2026) */
.gz-forsidebillede__mosaik { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); height: min(74vh, 660px); min-height: 440px; background: var(--gz-lys); }
.gz-forsidebillede__mosaik a { position: relative; display: block; overflow: hidden; }
.gz-forsidebillede__mosaik img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 42% 62%; }
.gz-forsidebillede__mosaik a:focus-visible { outline: 3px solid #80539b; outline-offset: -3px; }
@media (max-width: 767px) {
  .gz-forsidebillede__mosaik { grid-template-columns: repeat(2, minmax(0, 1fr)); height: auto; min-height: 0; }
  .gz-forsidebillede__mosaik a { aspect-ratio: 1 / 1; }
}
/* Mosaikken: kvadratiske felter, s\0000e5  hele fotoet (garnet nederst) ses. Teksten st\0000e5r under, ikke ovenp\0000e5. */
.gz-forsidebillede__mosaik { height: auto; min-height: 0; aspect-ratio: 4 / 1; }
.gz-forsidebillede__mosaik img { object-position: 50% 50%; }
.gz-forsidebillede:has(.gz-forsidebillede__mosaik) .gz-forsidebillede__kort { margin-top: 0; padding-top: 44px; padding-bottom: 24px; }
@media (max-width: 767px) {
  .gz-forsidebillede__mosaik { aspect-ratio: auto; }
  .gz-forsidebillede:has(.gz-forsidebillede__mosaik) .gz-forsidebillede__kort { margin: 0; padding: 28px 16px 8px; }
}

/* Genererede billeder i samme stil (9/10 2026, tema/billeder/lav-forsidebilleder.mjs) */
.gz-forsidebillede__billede { background-position: 50% 50%; }
.gz-afsnit__billede--cafe { background-image: url(../img/st-forside-cafe.jpg); }
.gz-kategorier__billede--tilbehoer { background-image: url(../img/st-forside-tilbehoer.jpg); }
.gz-kategorier__billede--boeger { background-image: url(../img/st-forside-boeger.jpg); }
.gz-kategorier__billede--gavekort { background-image: url(../img/st-forside-gavekort.jpg); }
@media (max-width: 767px) { .gz-forsidebillede__billede { background-image: url(../img/st-forside-top.jpg); background-position: 70% 50%; } }
/* Toppen v2 (9/10 2026): billedet er fyldt med garn, og kortet st\0000e5r inde p\0000e5  billedet (lodret centreret),
   s\0000e5  overskrift og knap kan ses uden at scrolle. Kortet d\0000e6kker billedets roligere venstre tredjedel. */
@media (min-width: 768px) {
  .gz-forsidebillede { padding-bottom: 0; }
  .gz-forsidebillede__billede { height: min(76vh, 680px); background-position: 60% 50%; }
  .gz-forsidebillede__kort {
    position: absolute; top: 50%; transform: translateY(-50%); margin: 0;
    left: max(16px, calc((100vw - var(--gz-bredde)) / 2 + 10px)); width: min(500px, calc(100% - 32px));
    padding: 44px 48px 46px; box-shadow: 0 24px 60px -30px rgba(53, 40, 62, .35);
  }
  .gz-afsnit:first-of-type { margin-top: 96px; }
}
@media (max-width: 767px) { .gz-forsidebillede__billede { background-position: 84% 50%; } }



/* =====================================================================
   Forside v4 (9/10 2026): rytme og overgange. Malik: "ikke god overgang mellem sektionerne".
   I v3 gik afsnittenes billeder ud til sk\0000e6rmkanten i den ene side, mens teksten stod lodret i midten af
   den anden. Under forsidebilledet blev der derfor et hvidt hul med et billede, der startede forskudt.
   Nu st\0000e5r alt under forsidebilledet i samme spalte som logo og menu (--gz-bredde), billede og tekst
   deler et 12-spalters gitter, og der er samme luft mellem alle sektioner (--gz-luft). Kun forsidebilledet
   g\0000e5r ud til kanten. To billeder r\0000f8rer aldrig hinanden. R\0000e6kkef\0000f8lgen er den samme som v3.
   Markup: tema/udkast/forside.html. v3 ligger i tema/bibliotek/v3-forside-9-10/.
   ===================================================================== */
:root { --gz-luft: 120px; }

/* Afsnit: billede (6 spalter) og tekst (5 spalter) side om side, med en tom spalte imellem */
.gz-afsnit, .gz-afsnit:first-of-type {
  max-width: var(--gz-bredde); box-sizing: border-box; margin: var(--gz-luft) auto 0 !important; padding: 0 10px;
  grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
}
/* Billedet er kun lidt h\0000f8jere end teksten (5:4), s\0000e5  der ikke st\0000e5r tom plads over og under teksten */
.gz-afsnit__billede { min-height: 0; aspect-ratio: 5 / 4; }
.gz-afsnit[data-gz-booking] .gz-afsnit__billede { aspect-ratio: 4 / 5; } /* caf\0000e9ens tilmelding er lang */
.gz-afsnit--billede-hoejre .gz-afsnit__tekst { grid-column: 1 / span 5; padding: 0; }
.gz-afsnit--billede-hoejre .gz-afsnit__billede { grid-column: 7 / span 6; }
.gz-afsnit--billede-venstre .gz-afsnit__billede { grid-column: 1 / span 6; }
.gz-afsnit--billede-venstre .gz-afsnit__tekst { grid-column: 8 / span 5; padding: 0; }
/* Caf\0000e9ens tilmelding er lang: billedet st\0000e5r \0000f8verst, p\0000e5  linje med overskriften, i stedet for at sv\0000e6ve midt i */
.gz-afsnit[data-gz-booking] { align-items: start; }
.gz-afsnit[data-gz-booking] .gz-afsnit__tekst { padding-top: 6px; }
/* Datoerne i et j\0000e6vnt gitter med tre lige brede kolonner (to p\0000e5  mobil) */
.gz-afsnit .gz-datoer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.gz-afsnit .gz-dato { min-width: 0; }
.gz-afsnit .gz-booking__datoer { width: 100%; }

/* Kategorier og vitrine med samme luft */
.gz-kategorier { padding: var(--gz-luft) 10px 0; }
.gz-vitrine { max-width: var(--gz-bredde); box-sizing: border-box; margin: 0 auto; padding: var(--gz-luft) 10px; }

/* Butikken nederst: en lys flade helt ud til kanterne, der g\0000e5r direkte over i footeren */
.gz-besoeg {
  position: relative; isolation: isolate; max-width: var(--gz-bredde); box-sizing: border-box;
  margin: 0 auto; padding: 88px 10px 96px;
}
.gz-besoeg::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
/* Temaets tomme indholdscontainer p\0000e5  forsiden (alle dens blokke er fjernet) m\0000e5  ikke l\0000e6gge hvidt ind f\0000f8r footeren */
body:has(.gz-forsidebillede) .site-content .site-wrapper { padding-bottom: 0 !important; }
body:has(.gz-forsidebillede) .site-content .row { min-height: 0 !important; }

@media (max-width: 1100px) {
  :root { --gz-luft: 96px; }
  .gz-afsnit--billede-hoejre .gz-afsnit__tekst { grid-column: 1 / span 6; padding: 0 !important; }
  .gz-afsnit--billede-venstre .gz-afsnit__tekst { grid-column: 7 / span 6; padding: 0 !important; }
}

@media (max-width: 767px) {
  :root { --gz-luft: 64px; }
  /* \0000c9t spor: billedet, s\0000e5  teksten. Samme 16 px margen som resten af siden */
  .gz-afsnit, .gz-afsnit:first-of-type { grid-template-columns: minmax(0, 1fr); row-gap: 24px; padding: 0 16px; }
  .gz-afsnit .gz-afsnit__billede, .gz-afsnit[data-gz-booking] .gz-afsnit__billede { grid-column: 1 !important; grid-row: 1; aspect-ratio: 4 / 3; }
  .gz-afsnit .gz-afsnit__tekst { grid-column: 1 !important; grid-row: 2; padding: 0 !important; }
  .gz-kategorier { padding: var(--gz-luft) 16px 0; }
  .gz-vitrine { padding: var(--gz-luft) 16px; }
  .gz-besoeg { padding: 52px 16px 60px; }
  .gz-afsnit .gz-datoer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Overlinje over forsidens H1: fokusordet "garnbutik i K\0000f8ge" synligt \0000f8verst (14/10) */
.gz-forsidebillede__overlinje { font-family: var(--gz-sans); font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gz-daempet); margin: 0 0 14px !important; }
@media (max-width: 600px) { .gz-forsidebillede__overlinje { font-size: 11px; margin-bottom: 10px !important; } }

/* Garnsidens genveje til fiber-, projekt- og m\0000e6rkesider (14/10) */
.gz-garn__genveje { margin-top: var(--gz-luft); padding-top: 56px; border-top: 1px solid var(--gz-linje); }
.gz-garn__genveje h2 { font-family: var(--gz-serif) !important; font-size: clamp(28px, 3vw, 38px) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; letter-spacing: -0.02em !important; margin: 0 0 32px !important; }
.gz-garn__genvejsgitter { display: grid; grid-template-columns: 1fr 1fr 1.3fr 1.6fr; gap: 40px; }
/* Temaet giver <nav> en smallere bredde og auto-margener i et gitter, s\0000e5  kolonnerne rykkede ind */
.gz-garn__genvejsgitter > nav, .gz-garn__genvejsgitter > div { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.gz-garn__genveje h3 { font-family: var(--gz-sans) !important; font-size: 15px !important; font-weight: 700 !important; color: var(--gz-blomme) !important; letter-spacing: 0 !important; text-transform: none !important; margin: 0 0 14px !important; }
.gz-garn__genveje ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-garn__genveje li { margin: 0 0 9px; list-style: none; }
.gz-garn__genveje--to { columns: 2; column-gap: 20px; }
.gz-garn__genveje a { color: var(--gz-blomme) !important; text-decoration: none; border-bottom: 1px solid var(--gz-syren); }
.gz-garn__genveje a:hover { border-bottom-color: var(--gz-blomme); }
.gz-garn__tykkelser { width: 100%; border-collapse: collapse; font-size: 14px; }
.gz-garn__tykkelser th, .gz-garn__tykkelser td { text-align: left; padding: 8px 10px 8px 0; border-bottom: 1px solid var(--gz-linje); color: var(--gz-blomme); }
.gz-garn__tykkelser thead th { font-size: 12px; font-weight: 700; color: var(--gz-daempet); text-transform: uppercase; letter-spacing: .04em; }
.gz-garn__fodnote { font-size: 13px; color: var(--gz-daempet); margin: 12px 0 0; }
@media (max-width: 1000px) { .gz-garn__genvejsgitter { grid-template-columns: 1fr 1fr; gap: 32px 24px; } }
@media (max-width: 560px) { .gz-garn__genvejsgitter { grid-template-columns: 1fr; } .gz-garn__genveje { padding-top: 40px; } }

/* "Luk menu" i burgermenuen var en <h6> f\0000f8r sidens H1; nu en <span> med samme udseende (14/10) */
.menu-header .gz-luk-menu { display: inline-block; font-family: var(--gz-sans); font-size: 14px; font-weight: 700; color: var(--gz-blomme); margin: 0; }

/* Cookiebanneret i v4-stil (15/10). "Kun n\0000f8dvendige" og "Accept\0000e9r alle" st\0000e5r bevidst lige fremtr\0000e6dende:
   det skal v\0000e6re lige s\0000e5  let at afvise som at acceptere (Datatilsynets vejledning om samtykke). */
.w-cookie .w-cookie-modal { font-family: var(--gz-sans); border-radius: 4px; }
.w-cookie .w-cookie-title { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; letter-spacing: -0.01em; }
.w-cookie .w-cookie-description, .w-cookie .w-cookie-consent p, .w-cookie .w-cookie-extended-info { color: var(--gz-blomme); }
.w-cookie .button-primary.cookie-button {
  background: var(--gz-blomme) !important; border: 1px solid var(--gz-blomme) !important; color: #fff !important;
  text-transform: none !important; letter-spacing: 0 !important; font-family: var(--gz-sans) !important; font-weight: 700 !important;
  font-size: 15px !important; border-radius: 2px !important; padding: 14px 28px !important; min-width: 190px; box-shadow: none !important;
}
.w-cookie .button-primary.cookie-button:hover, .w-cookie .button-primary.cookie-button:focus-visible { background: #4a3a55 !important; border-color: #4a3a55 !important; }
.w-cookie .toggle-extended, .w-cookie .w-cookie-toggle, .w-cookie .w-cookie-toggle div { color: var(--gz-blomme) !important; font-family: var(--gz-sans) !important; }
.w-cookie .w-cookie-toggle div { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--gz-syren); }
.w-cookie .accordion-btn { background: var(--gz-lavendel) !important; color: var(--gz-blomme) !important; border: 0 !important; }
.w-cookie .switch-rail { background: #fff !important; border: 1px solid var(--gz-syren) !important; }
.w-cookie .switch-rail::before { background: var(--gz-syren) !important; }
.w-cookie .switch input:checked + .switch-rail { background: var(--gz-blomme) !important; border-color: var(--gz-blomme) !important; }
.w-cookie .switch input:checked + .switch-rail::before { background: #fff !important; }
.w-cookie .switch input:focus-visible + .switch-rail { outline: 2px solid var(--gz-blomme); outline-offset: 2px; }
@media (max-width: 600px) { .w-cookie .button-primary.cookie-button { width: 100%; min-width: 0; } }

/* Links i forsidens br\0000f8dtekst (m\0000e6rker og fibre, 15/10): diskrete, s\0000e5  afsnittet stadig l\0000e6ses som tekst */
.gz-afsnit__tekst p a { color: inherit !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.gz-afsnit__tekst p a:hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-afsnit__fibre { font-size: 15px; color: var(--gz-daempet); }

/* ---- sider/butikken.css ---- */
/* =====================================================================
   Butikken: /om-os/ (pageId5) og /kontakt/ (pageTypecontact). Udkast: tema/udkast/sider/butikken-*.html.
   Samme greb som forside v4: alt st\0000e5r i spalten under logoet (designets container, 1160 px indhold),
   billede og tekst deler et 12-spalters gitter, og der er --gz-luft mellem alle sektioner.
   Typografien f\0000f8lger forsiden og de andre nye sider: H1 52/40, afsnits-H2 46/38/32 (som .gz-afsnit),
   sektions-H2 40/36/31 (som .gz-kategorier), br\0000f8dtekst 17 px med max 440 px (15 px p\0000e5  mobil).
   Alt er scopet til .gz-butik (vores egen wrapper) eller body:has(.gz-butik).
   ===================================================================== */

/* Designets container: ingen luft under sidste sektion, s\0000e5  lavendelfladen g\0000e5r direkte over i footeren */
body:has(.gz-butik) .site-main-content { padding-top: 0 !important; padding-bottom: 0 !important; }
body:has(.gz-butik) .site-content .row { min-height: 0 !important; }

.gz-butik { font-family: var(--gz-sans); color: var(--gz-blomme); padding-top: 34px; }
.gz-butik h1, .gz-butik h2, .gz-butik h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  text-transform: none !important;
}
/* Ingen enlige ord p\0000e5  sidste linje ("Kvalitet og b\0000e6redygtigt / garn") */
.gz-butik h1, .gz-butik h2 { text-wrap: balance; }
.gz-butik h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important; }
.gz-butik h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 16px !important; }
.gz-butik h3 { font-size: 22px !important; line-height: 1.2 !important; letter-spacing: -0.01em !important; margin: 0 0 8px !important; }
.gz-butik p { font-size: 17px; line-height: 1.7; color: #5d5066; margin: 0 0 16px; max-width: 440px; }
.gz-butik a:not(.gz-knap):not(.gz-tekstlink) { color: var(--gz-blomme) !important; }
.gz-butik .gz-brod { margin: 0; }
.gz-butik-lede { font-size: 18px !important; line-height: 1.65 !important; max-width: 470px !important; margin-bottom: 28px !important; }
/* Temaet nummererer dd'er og farver adresser kursiv */
.gz-butik dd::before, .gz-butik dt::before { content: none !important; }
.gz-butik address { font-style: normal; margin: 0; }
.gz-butik-note { font-size: 13px !important; line-height: 1.6 !important; color: var(--gz-daempet) !important; margin: 12px 0 0 !important; }

/* Br\0000f8dkrummen st\0000e5r samme sted p\0000e5  om-os, kontakt og garnsiden */
.gz-butik--om > .gz-brod { margin-top: 26px; }

/* ---------- To-spalters afsnit: billede (6 spalter) og tekst (5 spalter) ---------- */
.gz-butik-afsnit {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
  margin-top: var(--gz-luft);
}
.gz-butik-afsnit h2 { font-size: 46px !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important; }
.gz-butik-afsnit__tekst { grid-row: 1; display: flex; flex-direction: column; align-items: flex-start; }
.gz-butik-afsnit__billede { grid-row: 1; aspect-ratio: 5 / 4; background: var(--gz-lys) 50% 50% / cover no-repeat; }
.gz-butik-afsnit--top .gz-butik-afsnit__tekst,
.gz-butik-afsnit--billede-hoejre .gz-butik-afsnit__tekst { grid-column: 1 / span 5; }
.gz-butik-afsnit--top .gz-butik-afsnit__billede,
.gz-butik-afsnit--billede-hoejre .gz-butik-afsnit__billede { grid-column: 7 / span 6; }
.gz-butik-afsnit--billede-venstre .gz-butik-afsnit__billede { grid-column: 1 / span 6; }
.gz-butik-afsnit--billede-venstre .gz-butik-afsnit__tekst { grid-column: 8 / span 5; }
.gz-butik-afsnit--top { margin-top: 26px; }
.gz-butik-afsnit__tekst > p:last-of-type { margin-bottom: 30px; }
.gz-butik-afsnit__tekst > p:last-child { margin-bottom: 0; }

/* Billederne. Stemningsbilleder fra forsiden, indtil der kommer rigtige fotos af butikken (seo/butikken.md) */
.gz-butik-billede--butik { background-image: url(../img/forside-garn-v2.jpg); background-position: 50% 62%; }
.gz-butik-billede--folk { background-image: url(../img/forside-hero.jpg); background-position: 50% 55%; }
.gz-butik-billede--cafe { background-image: url(../img/forside-cafe-v2.jpg); background-position: 50% 60%; }

/* Korte fakta (adresse, telefon / caf\0000e9ens tider og pris) */
.gz-butik-fakta { display: grid; grid-template-columns: repeat(2, minmax(0, max-content)); gap: 16px 48px; margin: 0 0 32px !important; padding: 0; }
.gz-butik-fakta > div { margin: 0; }
.gz-butik-fakta dt { font-size: 12px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-butik-fakta dd { font-size: 15px; line-height: 1.5; margin: 0; color: var(--gz-blomme); }
.gz-butik-fakta a { text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
.gz-butik-handlinger { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 28px; }

/* Pladsholder for fakta, vi ikke har endnu (samme sm\0000f8rgule markering som strikkecaf\0000e9- og gavekortsiden) */
.gz-butik .gz-butik-udfyldes {
  background: var(--gz-smoergul); color: #5b4a1c !important; font-size: 14px; line-height: 1.6; padding: 8px 12px; border-radius: 4px;
}

/* F\0000e6lles sektionstop for "Kvalitet og b\0000e6redygtigt garn" og "M\0000e6rkerne i butikken":
   overskriften i spalte 1-6, introen i spalte 8-12, bundlinjen flugter */
.gz-butik-sektionstop {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: end; margin-bottom: 36px;
}
.gz-butik-sektionstop h2 { grid-column: 1 / span 6; margin: 0 !important; }
.gz-butik-sektionstop__intro { grid-column: 8 / span 5; display: flex; flex-direction: column; align-items: flex-start; }
.gz-butik-sektionstop__intro p { margin: 0; max-width: none; font-size: 15px; }
.gz-butik-sektionstop__intro .gz-butik-note { margin-top: 12px !important; }

/* ---------- Kvalitet og b\0000e6redygtigt garn: fem garner som produktkort (forsidens .gz-produkt) ---------- */
.gz-butik-vaerdier { margin-top: var(--gz-luft); }
/* Uden JS: en linjeret liste, navn til venstre og fibrene til h\0000f8jre */
.gz-butik-garner { list-style: none; margin: 0 !important; padding: 0 !important; border-top: 1px solid var(--gz-linje); }
.gz-butik-garner li {
  list-style: none; margin: 0; padding: 16px 0; border-bottom: 1px solid var(--gz-linje);
  display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); column-gap: 24px; align-items: baseline;
}
.gz-butik-garner:not(.er-kort) a {
  font-family: var(--gz-serif); font-size: 21px; line-height: 1.25; letter-spacing: -0.01em;
  text-decoration: underline; text-decoration-color: var(--gz-syren); text-decoration-thickness: 1px; text-underline-offset: 5px;
}
.gz-butik-garner:not(.er-kort) a:hover { text-decoration-color: var(--gz-blomme); }
.gz-butik-garn__fiber { font-size: 14px; line-height: 1.5; color: var(--gz-daempet); }
/* Med JS: fem kort p\0000e5  \0000e9n r\0000e6kke, samme foto, navn og pris som forsidens vitrine, plus fibrene */
.gz-butik-garner.er-kort {
  border-top: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 40px 24px;
}
.gz-butik-garner.er-kort li { display: block; padding: 0; border: 0; }
.gz-butik-garner.er-kort .gz-butik-garn__fiber { display: block; font-size: 13px; margin-top: 4px; }
.gz-butik-garner.er-kort .gz-produkt__pris { margin-top: 8px; }

/* ---------- M\0000e6rkerne: ni navne i serif, som skilte p\0000e5  hylderne, og "se alt garnet" p\0000e5  den tiende plads ---------- */
.gz-butik-maerker { margin-top: var(--gz-luft); }
.gz-butik-maerker__liste {
  list-style: none; margin: 0 !important; padding: 0 !important;
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: 24px;
}
.gz-butik-maerker__liste li {
  list-style: none; margin: 0; padding: 22px 0 30px; border-top: 1px solid var(--gz-linje);
  display: flex; flex-direction: column; align-items: flex-start; gap: 6px;
}
/* Kun m\0000e6rkenavnet er link (ankerteksten "<m\0000e6rke> garn"); serierne er almindelig tekst.
   Understreget som de andre links p\0000e5  siden, s\0000e5  det ogs\0000e5  ses p\0000e5  en touchsk\0000e6rm, at navnene kan trykkes.
   Padding + negativ margin giver et trykomr\0000e5de p\0000e5  44 px uden at flytte teksten. */
.gz-butik-maerke {
  font-family: var(--gz-serif); font-size: 27px; line-height: 1.12; letter-spacing: -0.015em; color: var(--gz-blomme);
  display: inline-block; padding: 10px 0; margin: -10px 0;
  text-decoration: underline; text-decoration-color: var(--gz-syren); text-decoration-thickness: 1px; text-underline-offset: 5px;
}
a.gz-butik-maerke:hover { text-decoration-color: var(--gz-blomme); }
a.gz-butik-maerke:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-butik-serier { font-size: 13px; line-height: 1.55; color: var(--gz-daempet); }
.gz-butik-maerker__alle { justify-content: flex-start; padding-top: 30px !important; }

.gz-butik-andet {
  display: flex; flex-wrap: wrap; align-items: center; gap: 14px 40px;
  margin-top: 24px; padding: 26px 32px; background: var(--gz-lys); border-radius: 4px;
}
.gz-butik-andet h3 { font-size: 21px !important; margin: 0 !important; }
.gz-butik-andet ul { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px 30px; flex: 1 1 auto; }
.gz-butik-andet li { list-style: none; margin: 0; padding: 0; }
.gz-butik-andet ul a {
  font-size: 15px; font-weight: 600; text-decoration: underline; text-decoration-color: var(--gz-syren);
  text-underline-offset: 4px; text-decoration-thickness: 1px;
}
.gz-butik-andet ul a:hover { text-decoration-color: var(--gz-blomme); }

/* ---------- Firmaoplysninger: lys flade helt ud til kanterne, direkte over i footeren ---------- */
.gz-butik-firma {
  position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 88px 0 96px;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-butik-firma::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-butik-firma__intro { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; }
.gz-butik-firma__intro p { margin-bottom: 22px; }
.gz-butik-firma__data {
  grid-column: 7 / span 6; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 24px; margin: 6px 0 0 !important;
}
.gz-butik-firma__data > div { margin: 0; padding-top: 14px; border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-butik-firma__data dt { font-size: 12px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-butik-firma__data dd { font-size: 16px; line-height: 1.5; margin: 0; }
.gz-butik-firma__data a { text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }

/* =====================================================================
   Kontakt: \0000e5bningstider og kontaktinfo til venstre, formularen til h\0000f8jre
   ===================================================================== */
.gz-butik-kontakt__top { margin: 26px 0 64px; }
.gz-butik-kontakt__top .gz-brod { margin-bottom: 26px; }
.gz-butik-kontakt__top h1 { margin-bottom: 14px !important; }
.gz-butik-kontakt__top .gz-butik-lede { margin-bottom: 26px !important; max-width: 600px !important; }
.gz-butik-kontakt__gitter {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
.gz-butik-kontakt__info { grid-column: 1 / span 5; display: flex; flex-direction: column; gap: 44px; }
.gz-butik-kontakt__info h2,
.gz-butik-formular h2 { font-size: 30px !important; margin: 0 0 14px !important; }

/* \0000c5bningstiderne: \0000e9n r\0000e6kke pr. dag, dagens r\0000e6kke fremh\0000e6vet. Tabellen holder sig inden for spalten,
   og r\0000e6kkerne har 12 px luft indvendigt, s\0000e5  dagens markering ikke g\0000e5r ud over containerens kant. */
.gz-butik-status { display: flex; align-items: center; gap: 10px; font-size: 15px; line-height: 1.5; font-weight: 650; color: var(--gz-blomme); margin: 0 0 14px; }
.gz-butik-status[hidden] { display: none; }
.gz-butik-status::before { content: ''; width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; background: var(--gz-syren); }
.gz-butik-status.er-aaben::before { background: #4f8a5b; }
.gz-butik-tidstabel { width: 100% !important; max-width: 432px; border-collapse: collapse; margin: 0 !important; font-size: 15px; }
.gz-butik-tidstabel tr { background: none !important; border: 0 !important; height: auto !important; }
.gz-butik-tidstabel th,
.gz-butik-tidstabel td {
  padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid var(--gz-linje) !important;
  background: none !important; vertical-align: middle; line-height: 1.4; color: var(--gz-blomme);
}
.gz-butik-tidstabel th { text-align: left; font-weight: 500; }
.gz-butik-tidstabel td { text-align: right; font-variant-numeric: tabular-nums; }
.gz-butik-tidstabel tr.er-i-dag th,
.gz-butik-tidstabel tr.er-i-dag td { background: var(--gz-lavendel) !important; font-weight: 700; }
.gz-butik-tider .gz-butik-note { margin-top: 14px !important; }

.gz-butik-kontaktpunkt address { font-size: 16px; line-height: 1.7; }
.gz-butik-kanaler { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin: 0 !important; }
.gz-butik-kanaler a {
  font-family: var(--gz-serif); font-size: 26px; line-height: 1.3; letter-spacing: -0.01em;
  text-decoration: underline; text-decoration-color: var(--gz-syren); text-decoration-thickness: 1px; text-underline-offset: 5px;
}
.gz-butik-kanaler a:hover { text-decoration-color: var(--gz-blomme); }

/* Den faste menu er 81 px (64 px p\0000e5  mobil). Chromes validering ignorerer scroll-margin p\0000e5  feltet, n\0000e5r den hopper til det
   f\0000f8rste ugyldige felt, men respekterer scroll-padding p\0000e5  roden. Det g\0000e6lder ogs\0000e5  "Skriv til os"-linket i toppen.
   Testet 14/10: uden l\0000e5  E-mail-feltet 27 px inde under menuen, med st\0000e5r det og dets label frit. */
html:has(.gz-butik--kontakt) { scroll-padding-top: 120px; }

/* Formularen: DanDomains egen (#m-contact), flyttet ind og restylet. Valgfrie felter skjules (de sendes tomme). */
.gz-butik-formular {
  grid-column: 7 / span 6; background: var(--gz-lys); border-radius: 4px; padding: 44px 48px 48px; box-sizing: border-box;
}
.gz-butik-formular > p { font-size: 15px; margin-bottom: 26px; }
.gz-butik-formular form { margin: 0; }
.gz-butik-formular .panel,
.gz-butik-formular .panel-body,
.gz-butik-formular .panel-footer { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; }
.gz-butik-formular .panel-body { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 16px; }
/* Temaets clearfix (::before/::after p\0000e5  .panel-body og p\0000e5  .row, som har display: contents) blev til tomme
   gitterr\0000e6kker med 18 px luft over f\0000f8rste felt (36 px p\0000e5  mobil, hvor gitteret kun har \0000e9n spalte) */
.gz-butik-formular .panel-body::before,
.gz-butik-formular .panel-body::after,
.gz-butik-formular .panel-body .row::before,
.gz-butik-formular .panel-body .row::after,
.gz-butik-formular .panel-body .row > div::before,
.gz-butik-formular .panel-body .row > div::after { content: none !important; display: none !important; }
.gz-butik-formular .panel-body > .row,
.gz-butik-formular .panel-body > .row > div,
.gz-butik-formular .m-contact-consent .row,
.gz-butik-formular .m-contact-consent .row > div { display: contents !important; }
.gz-butik-formular .m-contact-company,
.gz-butik-formular .m-contact-address,
.gz-butik-formular .m-contact-zipcode,
.gz-butik-formular .m-contact-city,
.gz-butik-formular .m-contact-country,
.gz-butik-formular .m-contact-data { display: none !important; }
/* Felterne st\0000e5r i DOM-r\0000e6kkef\0000f8lge (Navn, E-mail, Telefonnr., Emne). butikken.js flytter E-mail f\0000f8r Telefonnr. i selve
   DOM'en, s\0000e5  Tab og browserens validering g\0000e5r samme vej som \0000f8jet. Ingen CSS order p\0000e5  felterne. */
.gz-butik-formular .m-contact-message,
.gz-butik-formular .m-contact-consent { grid-column: 1 / -1; }
/* reCAPTCHA (v3, usynlig) sidst, s\0000e5  den tomme r\0000e6kke ikke l\0000e6gger ekstra luft mellem besked og samtykke. Den har intet,
   der kan f\0000e5  fokus, s\0000e5  den \0000e6ndrer ikke tab-r\0000e6kkef\0000f8lgen. */
.gz-butik-formular .m-contact-spam-check { order: 1; grid-column: 1 / -1; }
.gz-butik-formular .m-contact-spam-check hr { display: none; }
.gz-butik-formular .m-contact-spam-check fieldset:empty,
.gz-butik-formular .w-recatpcha { margin: 0 !important; }
.gz-butik-formular fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; min-width: 0; }
.gz-butik-formular .form-label {
  display: block; font-size: 13px !important; font-weight: 650 !important; color: var(--gz-blomme) !important;
  margin: 0 0 6px !important; padding: 0 !important; background: none !important; border: 0 !important; text-transform: none !important;
}
.gz-butik-formular .form-required { color: #80539b; }
.gz-butik-formular .input-group { display: block !important; border: 0 !important; background: none !important; width: 100%; }
.gz-butik-formular .input-group-addon:has(.fa) { display: none !important; }
.gz-butik-formular .form-input {
  display: block; width: 100% !important; height: 48px !important; box-sizing: border-box; margin: 0 !important;
  padding: 0 14px !important; border: 1px solid #cfc4d8 !important; border-radius: 4px !important; background: #fff !important;
  font: 15px var(--gz-sans) !important; color: var(--gz-blomme) !important; box-shadow: none !important;
}
.gz-butik-formular .form-input::placeholder { color: #a59bab; }
.gz-butik-formular textarea.form-input { height: 168px !important; padding: 12px 14px !important; line-height: 1.6; resize: vertical; }
.gz-butik-formular .form-input:focus { border-color: var(--gz-blomme) !important; outline: 2px solid rgba(128, 83, 155, .35); outline-offset: 1px; }
/* Fejltilstand: f\0000f8rst n\0000e5r man har r\0000f8rt feltet eller pr\0000f8vet at sende (:user-invalid), ikke p\0000e5  en tom formular. */
.gz-butik-formular .form-input:user-invalid { border-color: #a33a3a !important; box-shadow: inset 3px 0 0 #a33a3a !important; }
.gz-butik-formular input[type="checkbox"]:user-invalid { outline: 2px solid #a33a3a; outline-offset: 2px; }
/* Samtykket: afkrydsning og tekst p\0000e5  \0000e9n linje, afkrydsningen flugter med felterne */
.gz-butik-formular .privacyPolicyContainer .input-group { display: flex !important; align-items: flex-start; gap: 10px; }
.gz-butik-formular .privacyPolicyContainer .input-group-addon {
  display: block !important; flex: 0 0 18px; width: 18px !important; min-width: 0 !important; text-align: left !important;
  margin: 0 !important; padding: 2px 0 0 !important; border: 0 !important; background: none !important;
}
.gz-butik-formular input[type="checkbox"] { width: 18px; height: 18px; margin: 0 !important; accent-color: var(--gz-blomme); }
.gz-butik-formular .privacyPolicyContainer .form-label { font-size: 14px !important; font-weight: 500 !important; line-height: 1.5; margin: 0 !important; }
.gz-butik-formular .privacyPolicyContainer a { text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
.gz-butik-formular .panel-footer { margin-top: 8px !important; }
.gz-butik-formular .form-submit {
  display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 16px 28px !important;
  border: 0 !important; border-radius: 4px !important; background: var(--gz-blomme) !important; color: #fff !important;
  font: 650 13px var(--gz-sans) !important; letter-spacing: 0 !important; text-transform: none !important; cursor: pointer;
  transition: background-color .15s ease;
}
.gz-butik-formular .form-submit:hover { background: #4a3856 !important; }
.gz-butik-formular .form-submit:focus-visible { outline: 3px solid #80539b; outline-offset: 4px; }
.gz-butik-formular .form-submit .fa { display: none; }
.gz-butik-formular__note p { font-size: 12px !important; line-height: 1.6; color: var(--gz-daempet) !important; font-style: normal; margin: 18px 0 0 !important; max-width: none; }
/* Uden JavaScript (eller hvis formularen ikke findes) st\0000e5r der intet tomt felt */
.gz-butik-formular__felt:empty, .gz-butik-formular__note:empty { display: none; }

/* Genveje nederst: lys flade helt ud til kanterne */
.gz-butik-genveje { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 80px 0 92px; }
.gz-butik-genveje::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-butik-genveje h2 { margin-bottom: 32px !important; }
.gz-butik-genveje__liste {
  list-style: none; margin: 0 !important; padding: 0 !important;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px;
}
.gz-butik-genveje__liste li {
  list-style: none; margin: 0; padding: 20px 0 0; border-top: 1px solid rgba(53, 40, 62, .16);
  display: flex; flex-direction: column; align-items: flex-start;
}
.gz-butik-genveje__liste p { font-size: 15px; margin-bottom: 18px; max-width: 340px; }
.gz-butik-genveje__liste .gz-tekstlink { margin-top: auto; }

/* ---------- Mellemstore sk\0000e6rme ---------- */
@media (max-width: 1100px) {
  .gz-butik h2 { font-size: 36px !important; }
  .gz-butik-afsnit h2 { font-size: 38px !important; }
  .gz-butik-kontakt__info h2,
  .gz-butik-formular h2 { font-size: 28px !important; }
  .gz-butik-afsnit--top .gz-butik-afsnit__tekst,
  .gz-butik-afsnit--billede-hoejre .gz-butik-afsnit__tekst { grid-column: 1 / span 6; }
  .gz-butik-afsnit--billede-venstre .gz-butik-afsnit__tekst { grid-column: 7 / span 6; }
  /* Ti punkter: 2 x 5 g\0000e5r op, 3 spalter ville give et hul p\0000e5  sidste r\0000e6kke */
  .gz-butik-maerker__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-butik-formular { padding: 36px 32px 40px; }
}
@media (max-width: 1000px) {
  /* Fem kort g\0000e5r ikke op i f\0000e6rre spalter. De kan i stedet swipes vandret, som forsidens vitrine p\0000e5  mobil. */
  .gz-butik-garner.er-kort {
    grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 30%; gap: 16px;
    overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain;
  }
  .gz-butik-garner.er-kort::-webkit-scrollbar { display: none; }
  .gz-butik-garner.er-kort li { scroll-snap-align: start; }
  .gz-butik-sektionstop { grid-template-columns: minmax(0, 1fr); row-gap: 14px; }
  .gz-butik-sektionstop h2, .gz-butik-sektionstop__intro { grid-column: 1; }
  .gz-butik-sektionstop__intro p { max-width: 600px; }
  /* Tiderne fylder to r\0000e6kker til venstre. Adresse tager kun sin egen h\0000f8jde, og "Ring eller skriv" f\0000f8lger lige under
     (uden r\0000e6kkerne delte h\0000f8jden ligeligt og lagde et hul p\0000e5  ca. 100 px mellem dem ved 820 px) */
  .gz-butik-kontakt__info {
    grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto 1fr; gap: 40px 24px;
  }
  .gz-butik-kontaktpunkt { align-self: start; }
  .gz-butik-tider { grid-row: span 2; }
  .gz-butik-formular { grid-column: 1 / -1; margin-top: 48px; }
  .gz-butik-firma__intro { grid-column: 1 / -1; margin-bottom: 36px; }
  .gz-butik-firma__data { grid-column: 1 / -1; }
}

/* ---------- Mobil: \0000e9t spor, samme 16 px margen som forsiden ---------- */
@media (max-width: 767px) {
  .gz-butik { padding: 18px 6px 0; }
  .gz-butik h1 { font-size: 40px !important; margin-bottom: 14px !important; }
  .gz-butik h2 { font-size: 31px !important; }
  .gz-butik-afsnit h2 { font-size: 32px !important; }
  /* Mellemrubrikkerne p\0000e5  kontakt skal v\0000e6re mindre end sektionsrubrikken "Andre sp\0000f8rgsm\0000e5l" */
  .gz-butik-kontakt__info h2,
  .gz-butik-formular h2 { font-size: 24px !important; margin-bottom: 12px !important; }
  .gz-butik p { font-size: 15px; }
  .gz-butik-lede { font-size: 16px !important; margin-bottom: 22px !important; }
  .gz-butik--om > .gz-brod { margin-top: 14px; }

  /* \0000c9t spor: teksten f\0000f8rst, s\0000e5  billedet. \0000d8verst er det navn og adresse, brands\0000f8geren leder efter,
     og n\0000e5r alle afsnit g\0000f8r det samme, st\0000e5r to billeder aldrig lige oven p\0000e5  hinanden. */
  .gz-butik-afsnit { grid-template-columns: minmax(0, 1fr); row-gap: 28px; }
  .gz-butik-afsnit .gz-butik-afsnit__tekst { grid-column: 1 !important; grid-row: 1; }
  .gz-butik-afsnit .gz-butik-afsnit__billede { grid-column: 1 !important; grid-row: 2; aspect-ratio: 4 / 3; }
  .gz-butik-afsnit--top { margin-top: 14px; }
  .gz-butik-afsnit__tekst > p:last-of-type { margin-bottom: 24px; }
  .gz-butik-afsnit__tekst > p:last-child { margin-bottom: 0; }
  .gz-butik-fakta { gap: 14px 28px; margin-bottom: 26px !important; }
  .gz-butik-handlinger .gz-knap { flex: 1 1 100%; justify-content: center; text-align: center; }

  /* Trykm\0000e5l: tekstlinks er 20-24 px h\0000f8je. Et usynligt felt (eller padding med negativ margin) g\0000f8r dem mindst 44 px,
     uden at understregningen eller layoutet flytter sig. */
  .gz-butik .gz-tekstlink { position: relative; }
  .gz-butik .gz-tekstlink:not(.gz-butik-ring)::before { content: ''; position: absolute; inset: -12px -4px; }
  .gz-butik .gz-brod a { display: inline-block; padding: 14px 0; margin: -14px 0; }
  .gz-butik-fakta a,
  .gz-butik-firma__data a { display: inline-block; padding: 11px 0; margin: -11px 0; }

  .gz-butik-sektionstop { margin-bottom: 24px; }
  .gz-butik-garner li { grid-template-columns: minmax(0, 1fr); row-gap: 4px; padding: 14px 0; }
  .gz-butik-garner:not(.er-kort) a { font-size: 19px; display: inline-block; padding: 10px 0; margin: -10px 0; }
  /* Kortene kan swipes og g\0000e5r helt ud til sk\0000e6rmkanten i h\0000f8jre side (16 px margen = .gz-butik + designets container) */
  .gz-butik-garner.er-kort {
    grid-auto-columns: 62%; gap: 14px;
    width: calc(100% + 16px); margin-right: -16px !important; padding-right: 16px !important; box-sizing: border-box;
  }
  .gz-butik-garner.er-kort li { padding: 0; }

  .gz-butik-maerker__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
  .gz-butik-maerker__liste li { padding: 16px 0 20px; }
  .gz-butik-maerke { font-size: 21px; }
  .gz-butik-serier { font-size: 12px; }
  .gz-butik-maerker__alle { padding-top: 24px !important; }
  .gz-butik-andet { flex-direction: column; align-items: flex-start; padding: 24px 20px 18px; gap: 6px; }
  .gz-butik-andet ul { flex-direction: column; gap: 0; }
  .gz-butik-andet ul a { display: inline-block; padding: 13px 0; }

  .gz-butik-firma { padding: 56px 0 64px; grid-template-columns: minmax(0, 1fr); }
  .gz-butik-firma__intro { margin-bottom: 30px; }
  .gz-butik-firma__data { gap: 20px 16px; }
  .gz-butik-firma__data dd { font-size: 15px; overflow-wrap: anywhere; }

  .gz-butik-kontakt__top { margin: 14px 0 40px; }
  .gz-butik-kontakt__top .gz-brod { margin-bottom: 18px; }
  .gz-butik-kontakt__top .gz-butik-lede { margin-bottom: 22px !important; }
  /* "Ring" er den vigtigste handling p\0000e5  mobil: en knap i fuld bredde under "Find vej", i outline-stil */
  .gz-butik-kontakt__top .gz-butik-handlinger { gap: 12px 28px; }
  .gz-butik .gz-butik-ring {
    flex: 1 1 100%; display: flex; align-items: center; justify-content: center; min-height: 48px; box-sizing: border-box;
    padding: 12px 20px; border: 1px solid var(--gz-blomme); border-radius: 4px; background: transparent; font-size: 13px;
  }
  .gz-butik .gz-butik-ring:hover { background: var(--gz-lys); }
  .gz-butik .gz-butik-ring:focus-visible { outline: 3px solid #80539b; outline-offset: 4px; }
  .gz-butik-kontakt__top .gz-butik-handlinger .gz-tekstlink:not(.gz-butik-ring) { margin-top: 6px; }
  .gz-butik-kontakt__info { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; gap: 36px; }
  .gz-butik-tider { grid-row: auto; }
  .gz-butik-tidstabel { max-width: none; }
  .gz-butik-kanaler { gap: 0; }
  .gz-butik-kanaler a { font-size: 23px; display: inline-block; padding: 7px 0; }
  /* Formularen er et indrykket kort som p\0000e5  desktop. Helt ud til kanterne l\0000e5  den lyse flade og lavendelb\0000e5ndet
     under den som tre n\0000e6sten ens flader med en tynd hvid fuge imellem. */
  .gz-butik-formular { margin: 44px 0 0; padding: 32px 20px 36px; border-radius: 4px; }
  .gz-butik-formular .panel-body { grid-template-columns: minmax(0, 1fr); }
  .gz-butik-formular .form-submit { width: 100%; }
  .gz-butik-genveje { padding: 52px 0 60px; }
  .gz-butik-genveje__liste { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-butik-formular .form-submit { transition: none; }
}


/* ---- sider/fejlside.css ---- */
/* 404-siden (pageTypenotfound), 15/10. Samme container og gitter som resten af sitet. */
.pageTypenotfound .gz-fejl {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
  max-width: var(--gz-bredde); margin: 72px auto var(--gz-luft, 120px); padding: 0; text-align: left; font-family: var(--gz-sans);
}
.pageTypenotfound .gz-fejl__tekst { grid-column: 1 / span 6; }
.pageTypenotfound .gz-fejl__kode { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gz-daempet); margin: 0 0 14px; }
.pageTypenotfound .gz-fejl h1 { font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: clamp(40px, 5vw, 64px) !important; line-height: 1.05 !important; letter-spacing: -0.02em !important; color: var(--gz-blomme) !important; margin: 0 0 20px !important; }
.pageTypenotfound .gz-fejl__tekst > p:not(.gz-fejl__kode) { font-size: 18px; line-height: 1.6; color: #5d5066; max-width: 520px; margin: 0 0 32px; }
.pageTypenotfound .gz-fejl__knapper { display: flex; align-items: center; gap: 28px; flex-wrap: wrap; }
.pageTypenotfound .gz-fejl__genveje { grid-column: 8 / span 5; background: var(--gz-lavendel); padding: 40px 44px; }
.pageTypenotfound .gz-fejl__overskrift { font-family: var(--gz-serif); font-size: 26px; color: var(--gz-blomme); margin: 0 0 20px; }
.pageTypenotfound .gz-fejl__genveje ul { list-style: none; margin: 0 0 24px !important; padding: 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
.pageTypenotfound .gz-fejl__genveje li { list-style: none; border-bottom: 1px solid rgba(53, 40, 62, .12); }
.pageTypenotfound .gz-fejl__genveje li a { display: block; padding: 12px 0; color: var(--gz-blomme) !important; text-decoration: none !important; font-weight: 600; font-size: 15px; }
.pageTypenotfound .gz-fejl__genveje li a:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.pageTypenotfound .gz-fejl__butik { font-size: 14px; line-height: 1.6; color: #5d5066; margin: 0; }
.pageTypenotfound .gz-fejl__butik a { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
@media (max-width: 900px) {
  .pageTypenotfound .gz-fejl { margin-top: 40px; row-gap: 40px; padding: 0 16px; }
  .pageTypenotfound .gz-fejl__tekst, .pageTypenotfound .gz-fejl__genveje { grid-column: 1 / -1; }
  .pageTypenotfound .gz-fejl__genveje { padding: 28px 22px; }
}
@media (max-width: 420px) { .pageTypenotfound .gz-fejl__genveje ul { grid-template-columns: 1fr; } }


/* ---- sider/gavekort.css ---- */
/* Gavekortet: /shop/277-gavekort/ (landingsside) og /shop/277-gavekort/13342-gavekort/ (produktsiden).
   Markup: tema/udkast/sider/gavekort.html + gavekort-produkt.html. Alt er scopet til .gz-gave (klassepr\0000e6fiks gz-gave-)
   eller til .pageCategory277. Samme greb som forside v4 og garnsiden: 12-spalters gitter i --gz-bredde, fast luft
   (--gz-luft) mellem sektionerne, billede og tekst lige h\0000f8je. Det ene greb med karakter er bel\0000f8bsvalget:
   bel\0000f8bene st\0000e5r i serif som caf\0000e9ens datofelter, valgt = blomme.
   Billederne kommer fra forsidens klasser i garnzonen.css (gz-kategorier__billede--gavekort osv.), s\0000e5  stierne
   er de samme lokalt og p\0000e5  DanDomain. Her s\0000e6ttes kun st\0000f8rrelse og udsnit, aldrig background-image. */

.gz-gave { font-family: var(--gz-sans); color: var(--gz-blomme); padding: 34px 0 0; }
.gz-gave [hidden] { display: none !important; }
.gz-gave h1, .gz-gave h2, .gz-gave h3 { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important; }
.gz-gave ul, .gz-gave ol { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.gz-gave li { list-style: none !important; margin: 0; padding: 0; }
.gz-gave li::before, .gz-gave dt::before, .gz-gave dd::before { content: none !important; } /* temaet nummererer dd'er og li'er */
.gz-gave p { margin: 0; }
.gz-gave__brod { margin-bottom: 22px; }

/* Billedflader: st\0000f8rrelse og udsnit. Billedet selv s\0000e6ttes af forsidens klasse ved siden af */
.gz-gave-top__billede, .gz-gave-brug__billede, .gz-gave-ide__billede {
  display: block; background-color: var(--gz-lys); background-size: cover; background-repeat: no-repeat; background-position: 50% 50%;
}

/* ---------- Toppen: billede (6 spalter) | tom spalte | k\0000f8b (5 spalter). Lige h\0000f8je ---------- */
.gz-gave-top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
/* Billedet har ingen egen h\0000f8jde: det str\0000e6kkes (align-items: stretch) til tekstspaltens h\0000f8jde, s\0000e5  de to altid
   slutter p\0000e5  samme pixel, ogs\0000e5  n\0000e5r kvitteringen erstatter formularen, eller n\0000e5r fakta-r\0000e6kker slettes.
   min-height er kun et gulv, der aldrig n\0000e5s med indholdet i dag (tekstspalten er 540-780 px). */
.gz-gave-top__billede { grid-column: 1 / span 6; grid-row: 1; width: 100%; min-height: 360px; background-position: 46% 62%; }
.gz-gave-top__tekst { grid-column: 8 / span 5; grid-row: 1; padding: 4px 0 0; min-width: 0; }
.gz-gave-top h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 14px !important; }
.gz-gave-top__intro { font-size: 17px; line-height: 1.65; color: #5d5066; max-width: 440px; margin: 0 0 30px !important; }
.gz-gave-top__tilbage { margin-top: 26px; }

/* ---------- K\0000f8bsformularen ---------- */
/* Ankeret "V\0000e6lg bel\0000f8b" l\0000e6ngere nede: headeren er sticky (81 px p\0000e5  desktop, 67 px p\0000e5  mobil), s\0000e5  formularen skal
   stoppe under den, ikke bag den. gavekort.js m\0000e5ler headeren og bruger samme luft (24 px); dette er gulvet uden JS */
.gz-gave-koeb { margin: 0; scroll-margin-top: 105px; }
.gz-gave-beloeb { border: 0 !important; padding: 0 !important; margin: 0 0 22px !important; min-width: 0; }
.gz-gave-beloeb legend, .gz-gave-felt label {
  display: block; font: 650 13px/1.4 var(--gz-sans) !important; color: var(--gz-blomme) !important;
  text-transform: none !important; letter-spacing: 0 !important; padding: 0 !important; margin: 0 0 8px !important; border: 0 !important; width: auto;
}
/* Fem faste bel\0000f8b p\0000e5  \0000e9n r\0000e6kke, "Andet bel\0000f8b" i fuld bredde under (1.000 kr. kom til 21/10 2026) */
.gz-gave-beloeb__valg { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.gz-gave-beloeb__knap {
  position: relative; display: flex !important; flex-direction: column; align-items: center; justify-content: center;
  min-height: 84px; margin: 0 !important; padding: 10px 6px !important; cursor: pointer;
  border: 1px solid #cfc4d8; border-radius: 4px; background: #fff; color: var(--gz-blomme);
  transition: border-color .15s ease, background-color .15s ease;
}
.gz-gave-beloeb__knap input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.gz-gave-beloeb__tal { font-family: var(--gz-serif); font-size: 32px; line-height: 1; letter-spacing: -0.02em; font-variant-numeric: lining-nums; }
.gz-gave-beloeb__kr { font-size: 12px; font-weight: 600; color: var(--gz-daempet); margin-top: 6px; }
.gz-gave-beloeb__andet { font-size: 13px; font-weight: 650; line-height: 1.3; text-align: center; }
.gz-gave-beloeb__knap:hover { border-color: var(--gz-blomme); }
.gz-gave-beloeb__knap:has(input:checked) { background: var(--gz-blomme); border-color: var(--gz-blomme); }
.gz-gave-beloeb__knap:has(input:checked) span { color: #fff; }
.gz-gave-beloeb__knap:has(input:focus-visible) { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-gave-beloeb__knap--andet { grid-column: 1 / -1; min-height: 50px; flex-direction: row; }
/* "Andet bel\0000f8b" i fuld bredde m\0000e5  ikke ligne k\0000f8bsknappen, n\0000e5r den er valgt: lavendel med blommekant i stedet for
   blommefyldt. De fem bel\0000f8b beholder den fyldte tilstand, formen skiller dem fra knappen */
.gz-gave-beloeb__knap--andet:has(input:checked) { background: var(--gz-lavendel); border: 2px solid var(--gz-blomme); }
.gz-gave-beloeb__knap--andet:has(input:checked) span { color: var(--gz-blomme); }

.gz-gave-felt { display: flex; flex-direction: column; margin: 0 0 16px; min-width: 0; }
.gz-gave-felt--beloeb { margin: 14px 0 0; }
.gz-gave-felt__valgfri { font-weight: 400; color: var(--gz-daempet); }
.gz-gave-felt input[type="text"], .gz-gave-felt textarea {
  box-sizing: border-box; width: 100% !important; height: 52px; margin: 0 !important; padding: 0 14px !important;
  border: 1px solid #cfc4d8 !important; border-radius: 4px !important; background: #fff !important; box-shadow: none !important;
  font: 500 15px/1.4 var(--gz-sans) !important; color: var(--gz-blomme) !important; letter-spacing: 0 !important; text-transform: none !important;
  transition: border-color .15s ease;
}
.gz-gave-felt textarea { height: auto; min-height: 76px; padding: 13px 14px !important; resize: vertical; }
.gz-gave-felt input[type="text"]:hover, .gz-gave-felt textarea:hover { border-color: #a898b6 !important; }
/* Fejl: samme specificitet som hover (0,3,1) og st\0000e5r efter den, s\0000e5  et ugyldigt felt forbliver r\0000f8dt under musen.
   Fokus st\0000e5r efter igen og vinder, s\0000e5  feltet, man skriver i, viser blomme */
.gz-gave-felt input[type="text"][aria-invalid="true"], .gz-gave-felt textarea[aria-invalid="true"] { border-color: #9b2c3a !important; box-shadow: inset 0 0 0 1px #9b2c3a !important; }
.gz-gave-felt input[type="text"]:focus, .gz-gave-felt textarea:focus { border-color: var(--gz-blomme) !important; box-shadow: none !important; outline: 2px solid #80539b; outline-offset: 1px; }
.gz-gave-felt__kr { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; }
.gz-gave-felt__kr input[type="text"] { width: 160px !important; text-align: right; font-variant-numeric: tabular-nums; }
.gz-gave-fejl { font-size: 13px; color: #9b2c3a; margin: 6px 0 0 !important; }

.gz-gave-koeb__knap { width: 100%; justify-content: center; margin-top: 6px; border: 0 !important; box-shadow: none !important; font-family: var(--gz-sans) !important; cursor: pointer; }
.gz-gave-koeb__status { font-size: 13px; line-height: 1.5; color: #4e4258; margin: 10px 0 0 !important; }
.gz-gave-koeb__status:empty { display: none; }
.gz-gave-koeb__status a { text-decoration: underline; text-underline-offset: 3px; }

.gz-gave-kvittering { background: var(--gz-lavendel); border-radius: 4px; padding: 24px 26px 26px; outline: none; }
.gz-gave-kvittering p { font-size: 15px; line-height: 1.6; margin: 0 0 18px !important; }
.gz-gave-kvittering strong { display: block; font-family: var(--gz-serif); font-weight: 400; font-size: 26px; line-height: 1.15; letter-spacing: -0.02em; margin-bottom: 4px; }
.gz-gave-kvittering__knapper { display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.gz-gave-kvittering .gz-tekstknap { align-self: center; }

/* Fakta under formularen: levering, hvor det g\0000e6lder, gyldighed */
.gz-gave-fakta { margin: 26px 0 0 !important; padding: 22px 0 0 !important; border-top: 1px solid var(--gz-linje); display: grid; gap: 12px; }
.gz-gave-fakta > div { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 16px; margin: 0; }
.gz-gave-fakta dt { font-size: 13px; font-weight: 650; line-height: 1.5; color: var(--gz-blomme); margin: 0; }
.gz-gave-fakta dd { font-size: 14px; line-height: 1.5; color: #5d5066; margin: 0; }
/* [UDFYLDES] skal kunne ses, til Marianne har svaret. Fjernes med teksten */
.gz-gave-udfyldes { background: var(--gz-smoergul); color: var(--gz-blomme); padding: 1px 4px; border-radius: 2px; font-size: 13px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }

/* ---------- Det kan gavekortet blive til: fire h\0000f8je billeder med navnet under (som forsidens kategorier) ---------- */
.gz-gave-brug { margin-top: var(--gz-luft); }
.gz-gave-brug h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 32px !important; }
.gz-gave-brug__liste { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.gz-gave-brug__liste a { display: block; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-gave-brug__billede { aspect-ratio: 4 / 5; margin-bottom: 16px; }
.gz-gave-brug h3 { font-size: 23px !important; line-height: 1.15 !important; letter-spacing: -0.02em !important; margin: 0 0 4px !important; }
.gz-gave-brug__liste p { font-size: 14px; line-height: 1.5; color: var(--gz-daempet); }
.gz-gave-brug__liste a:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gz-gave-brug__liste a:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }

/* ---------- Gave til en, der strikker: tekst (5 spalter) | billede (6 spalter). Lige h\0000f8je ---------- */
.gz-gave-ide { margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch; }
.gz-gave-ide__tekst { grid-column: 1 / span 5; grid-row: 1; align-self: center; display: flex; flex-direction: column; align-items: flex-start; }
.gz-gave-ide__billede { grid-column: 7 / span 6; grid-row: 1; width: 100%; min-height: 100%; aspect-ratio: 5 / 4; background-position: 50% 42%; }
.gz-gave-ide h2 { font-size: 46px !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important; }
.gz-gave-ide__tekst > p { font-size: 17px; line-height: 1.7; color: #5d5066; margin: 0 0 26px !important; }
.gz-gave-ide__liste { width: 100%; margin: 0 0 30px !important; border-bottom: 1px solid var(--gz-linje); }
.gz-gave-ide__liste li { padding: 14px 0 !important; border-top: 1px solid var(--gz-linje); font-size: 15px; line-height: 1.6; color: #5d5066; }
.gz-gave-ide__liste strong { display: block; font-weight: 650; color: var(--gz-blomme); }
.gz-gave-ide__liste .gz-tekstlink { font-size: 15px; padding-bottom: 1px; }

/* ---------- S\0000e5dan giver du et gavekort: lavendelflade ud til kanterne, der g\0000e5r over i footeren ---------- */
.gz-gave-trin { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 88px 0 96px; }
.gz-gave-trin::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-gave-trin h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 40px !important; }
.gz-gave-trin__liste { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; counter-reset: gz-gave-trin; }
.gz-gave-trin__liste li { counter-increment: gz-gave-trin; padding-top: 18px !important; border-top: 1px solid #d3c8de; }
.gz-gave-trin__liste li::before {
  content: counter(gz-gave-trin) !important; display: block; font: 400 44px/1 var(--gz-serif); letter-spacing: -0.02em;
  color: var(--gz-blomme); margin-bottom: 16px;
}
.gz-gave-trin h3 { font-family: var(--gz-sans) !important; font-weight: 700 !important; font-size: 16px !important; line-height: 1.35 !important; letter-spacing: 0 !important; margin: 0 0 6px !important; }
.gz-gave-trin__liste p { font-size: 15px; line-height: 1.6; color: #5d5066; }
/* Plan B (se gavekort.html): uden svar om levering slettes trin 3, og listen f\0000e5r tre spalter */
.gz-gave-trin__liste--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
/* Kontaktlinjen holdes i l\0000e6sebredde (ca. 70 tegn), s\0000e5  den ikke l\0000f8ber 1160 px ud under trinene */
.gz-gave-trin__kontakt { font-size: 15px; line-height: 1.7; color: #5d5066; max-width: 620px; margin: 44px 0 0 !important; }
.gz-gave-trin__kontakt a { color: var(--gz-blomme) !important; font-weight: 650; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }

/* Lavendelfladen skal g\0000e5  direkte over i footeren: temaets luft under indholdet fjernes p\0000e5  gavekortsiden */
.pageCategory277.gz-side-kategori:has(.gz-gave-trin) .site-content .site-wrapper { padding-bottom: 0 !important; margin-bottom: 0 !important; }
.pageCategory277.gz-side-kategori:has(.gz-gave-trin) .site-content { padding-bottom: 0 !important; margin-bottom: 0 !important; }
/* Produktsiden: temaet giver produktsider mindre luft over indholdet end kategorier. Br\0000f8dkrummen skal st\0000e5  samme
   sted som p\0000e5  gavekortsiden og garnsiden. Siden slutter uden flade */
.gz-gave--produkt { padding-top: 55px; padding-bottom: var(--gz-luft); }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-gave-top__tekst { grid-column: 7 / span 6; }
  .gz-gave-top h1 { font-size: 44px !important; }
  .gz-gave-ide__tekst { grid-column: 1 / span 6; }
  .gz-gave-ide h2 { font-size: 38px !important; }
  .gz-gave-trin__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 36px; }
  .gz-gave-trin__liste--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ---------- Mobil: \0000e9t spor. Billedet f\0000f8rst (lavt, s\0000e5  overskrift og bel\0000f8b ses uden at scrolle), s\0000e5  teksten ---------- */
@media (max-width: 767px) {
  /* Temaets container giver 10 px; forsiden bruger 16 px p\0000e5  mobil */
  .gz-gave { padding: 20px 6px 0; }
  .gz-gave--produkt { padding-top: 41px; padding-bottom: var(--gz-luft); }
  .gz-gave__brod { margin-bottom: 16px; }
  .gz-gave-koeb { scroll-margin-top: 88px; }
  .gz-gave-top { grid-template-columns: minmax(0, 1fr); row-gap: 22px; }
  /* width: 100% er n\0000f8dvendig: et gitterelement med aspect-ratio f\0000e5r ellers bredden fra h\0000f8jden */
  .gz-gave-top__billede { grid-column: 1; grid-row: 1; min-height: 0; aspect-ratio: 16 / 9; background-position: 44% 76%; }
  .gz-gave-top__tekst { grid-column: 1; grid-row: 2; padding: 0; }
  .gz-gave-top h1 { font-size: 38px !important; margin-bottom: 10px !important; }
  .gz-gave-top__intro { font-size: 15px; margin-bottom: 22px !important; }
  .gz-gave-beloeb__knap { min-height: 72px; }
  .gz-gave-beloeb__knap { padding: 10px 2px !important; }
  .gz-gave-beloeb__tal { font-size: 22px; }
  .gz-gave-beloeb__knap--andet { min-height: 48px; }
  .gz-gave-beloeb__kr { margin-top: 4px; }
  .gz-gave-fakta > div { grid-template-columns: 92px minmax(0, 1fr); gap: 12px; }
  .gz-gave-kvittering { padding: 20px; }

  .gz-gave-brug h2, .gz-gave-trin h2 { font-size: 31px !important; margin-bottom: 22px !important; }
  .gz-gave-brug__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 14px; }
  .gz-gave-brug h3 { font-size: 19px !important; }
  .gz-gave-brug__liste p { font-size: 13px; }

  .gz-gave-ide { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-gave-ide__billede { grid-column: 1; grid-row: 1; min-height: 0; aspect-ratio: 4 / 3; }
  .gz-gave-ide__tekst { grid-column: 1; grid-row: 2; }
  .gz-gave-ide h2 { font-size: 32px !important; }
  .gz-gave-ide__tekst > p { font-size: 15px; margin-bottom: 20px !important; }
  .gz-gave-ide__liste li { font-size: 14px; }

  .gz-gave-trin { padding: 52px 0 60px; }
  .gz-gave-trin__liste { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
  .gz-gave-trin__liste li {
    display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 14px; padding: 16px 0 !important;
  }
  .gz-gave-trin__liste li::before { grid-row: 1 / span 2; font-size: 32px; margin: 0; }
  .gz-gave-trin__kontakt { margin-top: 28px !important; font-size: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-gave-beloeb__knap, .gz-gave-felt input, .gz-gave-felt textarea { transition: none; }
}


/* ---- sider/juridisk.css ---- */
/* =====================================================================
   De juridiske tekstsider: /handelsbetingelser/ (pageId10), /cookies/ (pageId12) og /privatlivspolitik/.
   Udkast: tema/udkast/sider/juridisk-*.html. \0000c9n skabelon til alle tre: br\0000f8dkrumme og H1 flugter med logoet
   og st\0000e5r i samme h\0000f8jde som p\0000e5  garnsiden (br\0000f8dkrumme y=172 p\0000e5  computer, 142 p\0000e5  mobil). Under dem et
   12-spalters gitter: indholdsfortegnelsen (med "Udskriv siden" under) kl\0000e6ber i spalte 1-3, l\0000e6sespalten st\0000e5r i spalte 5-11, og
   kontaktboksen st\0000e5r under teksten i samme spalte. Alt er scopet til .gz-tekst eller body:has(.gz-tekst).
   ===================================================================== */

/* Designets container: samme luft som de andre nye sider, og ingen hvid stribe f\0000f8r footeren */
body:has(.gz-tekst) .site-main-content { padding-top: 0 !important; padding-bottom: 0 !important; }
body:has(.gz-tekst) .site-content .row { min-height: 0 !important; }

.gz-tekst {
  --gz-tekst-top: calc(var(--gz-header-h, 81px) + 28px);
  --gz-tekst-laes: 680px;
  font-family: var(--gz-sans); color: var(--gz-blomme);
  padding: 55px 0 var(--gz-luft, 120px);
}

/* ---------- Toppen: br\0000f8dkrumme, H1 og linje (som p\0000e5  garnsiden). "Udskriv" st\0000e5r under fortegnelsen ---------- */
.gz-tekst__titel { padding-bottom: 32px; margin-bottom: 48px; border-bottom: 1px solid var(--gz-linje); }
.gz-tekst .m-text-header { margin: 0 !important; padding: 0 !important; text-align: left !important; border: 0 !important; }
.gz-tekst h1.m-text-headline {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: 56px !important;
  line-height: 1.04 !important; letter-spacing: -0.03em !important; color: var(--gz-blomme) !important;
  text-transform: none !important; text-align: left !important; margin: 0 !important;
}
.gz-tekst__udskriv {
  appearance: none; display: inline-flex; align-items: center; gap: 8px; margin: 24px 0 0; min-height: 32px;
  background: none; border: 0; padding: 4px 0; cursor: pointer;
  font: 500 14px/1.4 var(--gz-sans); color: var(--gz-daempet);
  text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 4px;
}
.gz-tekst__udskriv:hover { color: var(--gz-blomme); text-decoration-color: var(--gz-blomme); }
.gz-tekst__udskriv svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; }
.gz-tekst__udskriv:focus-visible, .gz-tekst summary:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }

/* ---------- Gitteret ----------
   DOM-r\0000e6kkef\0000f8lge = visuel r\0000e6kkef\0000f8lge: fortegnelse, tekst, kontaktboks. Kun fortegnelsen kl\0000e6ber, og den
   holder sig inden for r\0000e6kke 1 (tekstens h\0000f8jde), s\0000e5  den aldrig l\0000e6gger sig over kontaktboksen. */
.gz-tekst__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
.gz-tekst__indhold { grid-column: 5 / span 7; grid-row: 1; max-width: var(--gz-tekst-laes); min-width: 0; }

/* ---------- Indholdsfortegnelsen ---------- */
.gz-tekst__toc {
  grid-column: 1 / span 3; grid-row: 1; position: sticky; top: var(--gz-tekst-top);
  /* N\0000f8dudgang p\0000e5  meget lave sk\0000e6rme. Handelsbetingelsernes 13 punkter fylder ca. 470 px og passer i 1366x768 */
  max-height: calc(100vh - var(--gz-tekst-top) - 24px); overflow-y: auto; scrollbar-width: thin;
  margin: 0 !important; padding: 0 0 4px !important; /* temaet giver nav en sidemargen */
  scroll-margin-top: var(--gz-tekst-top);
}
.gz-tekst__toc details > summary {
  list-style: none; cursor: default; font-size: 13px; font-weight: 700; color: var(--gz-blomme); padding: 0 0 12px;
}
.gz-tekst__toc details > summary::-webkit-details-marker { display: none; }
.gz-tekst__toc ul { list-style: none; margin: 0 !important; padding: 0 !important; border-left: 1px solid var(--gz-linje); }
.gz-tekst__toc li { list-style: none; margin: 0; padding: 0; }
.gz-tekst__toc a {
  display: block; margin-left: -1px; padding: 6px 0 6px 16px; border-left: 2px solid transparent;
  font-size: 14px; line-height: 1.4; color: var(--gz-daempet) !important; text-decoration: none !important;
  transition: color .15s ease, border-color .15s ease;
}
.gz-tekst__toc a:hover { color: var(--gz-blomme) !important; }
.gz-tekst__toc a[aria-current="true"] { color: var(--gz-blomme) !important; border-left-color: var(--gz-blomme); font-weight: 650; }
.gz-tekst__toc a:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }

/* ---------- Kontaktboksen: under teksten, i l\0000e6sespalten ----------
   To halvdele: sp\0000f8rgsm\0000e5let til venstre, telefon, mail, adresse og CVR til h\0000f8jre. */
.gz-tekst__kontakt {
  grid-column: 5 / span 7; grid-row: 2; max-width: var(--gz-tekst-laes); box-sizing: border-box; margin-top: 30px;
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 32px; align-items: start;
  background: var(--gz-lys); border-radius: 6px; padding: 30px 32px 30px;
}
.gz-tekst__kontakt h2 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: 28px !important; line-height: 1.15 !important;
  letter-spacing: -0.02em !important; color: var(--gz-blomme) !important; text-transform: none !important; margin: 0 0 8px !important;
}
.gz-tekst__kontakt p { font-size: 15px; line-height: 1.6; color: #5d5066; margin: 0; }
.gz-tekst__kontaktliste { list-style: none; margin: 0 0 10px !important; padding: 0 !important; }
.gz-tekst__kontaktliste li { list-style: none; margin: 0; }
.gz-tekst__kontaktliste a {
  display: inline-flex; align-items: center; gap: 10px; min-height: 36px;
  font-size: 15px; font-weight: 650; color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-tekst__kontaktliste a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 4px; }
.gz-tekst__kontaktliste svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; }
.gz-tekst__kontakt address { font-style: normal; font-size: 13px; line-height: 1.6; color: var(--gz-daempet); margin: 0 0 12px; }

/* ---------- L\0000e6sespalten ---------- */
.gz-tekst__indhold > * { margin-top: 0; }
.gz-tekst__indhold p, .gz-tekst__indhold li { font-size: 17px; line-height: 1.75; color: #463a50; }
.gz-tekst__indhold p { margin: 0 0 18px; }
.gz-tekst__indhold strong { font-weight: 700; color: var(--gz-blomme); }
.gz-tekst__indhold h2 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: 32px !important; line-height: 1.15 !important;
  letter-spacing: -0.02em !important; color: var(--gz-blomme) !important; text-transform: none !important;
  margin: 64px 0 16px !important; scroll-margin-top: var(--gz-tekst-top);
}
.gz-tekst__indhold h3 {
  font-family: var(--gz-sans) !important; font-weight: 700 !important; font-size: 17px !important; line-height: 1.4 !important;
  letter-spacing: 0 !important; color: var(--gz-blomme) !important; text-transform: none !important;
  margin: 32px 0 8px !important; scroll-margin-top: var(--gz-tekst-top);
}
.gz-tekst__indhold h2 + h3 { margin-top: 8px !important; }
.gz-tekst__indhold ul { margin: 0 0 22px !important; padding: 0 0 0 20px !important; }
.gz-tekst__indhold ul li { list-style: disc; margin: 0 0 8px; padding-left: 4px; }
.gz-tekst__indhold ul li::marker { color: var(--gz-syren); }
.gz-tekst__indhold a:not(.gz-knap):not(.gz-tekstlink) {
  color: var(--gz-blomme) !important; text-decoration: underline !important;
  text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px; text-decoration-thickness: 1px;
}
.gz-tekst__indhold a:not(.gz-knap):not(.gz-tekstlink):hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-tekst__indhold a:focus { background: none !important; }

/* Ingress og dato */
.gz-tekst__indhold .gz-tekst__ingress { font-size: 18px; line-height: 1.65; color: #463a50; margin-bottom: 18px; }
.gz-tekst__indhold .gz-tekst__opdateret { font-size: 14px; line-height: 1.5; color: var(--gz-daempet); margin: 0 0 32px; }
.gz-tekst__indhold .gz-tekst__senest { font-size: 14px; color: var(--gz-daempet); margin-top: 28px; }
.gz-tekst__indhold .gz-tekst__se-ogsaa { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--gz-linje); font-size: 15px; }

/* Adresser: som et lille brevhoved, ikke kursiv */
.gz-tekst__indhold address, .gz-tekst__adresse {
  font-style: normal; font-size: 16px; line-height: 1.65; color: #463a50;
  margin: 0 0 22px; padding: 2px 0 2px 18px; border-left: 2px solid var(--gz-syren);
}

/* ---------- "Kort fortalt" og "Dit samtykke": lavendel b\0000e5nd \0000f8verst i teksten, f\0000f8r den ordrette indledning ---------- */
.gz-tekst__kort { background: var(--gz-lavendel); border-radius: 6px; padding: 28px 32px 26px; margin: 0 0 36px; }
.gz-tekst__indhold .gz-tekst__kort h2 { font-size: 24px !important; margin: 0 0 18px !important; }
.gz-tekst__kort dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 36px; margin: 0 !important; padding: 0; }
.gz-tekst__kort dl > div { margin: 0; padding-top: 14px; border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-tekst__kort dt { font-size: 13px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-tekst__kort dd { font-size: 15px; line-height: 1.55; color: var(--gz-blomme); margin: 0; }
.gz-tekst__kort dd a { font-size: 14px; white-space: nowrap; }
.gz-tekst dd::before, .gz-tekst dt::before { content: none !important; } /* temaet nummererer dd'er */
.gz-tekst__indhold .gz-tekst__kort-note { font-size: 13px; color: var(--gz-daempet); margin: 20px 0 0; }
.gz-tekst__indhold .gz-tekst__handlinger { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 26px; margin: 22px 0 0; }
.gz-tekst button.gz-knap { border: 0; cursor: pointer; font-family: var(--gz-sans); }
.gz-tekst .gz-knap { line-height: 1.25; } /* ellers arver den l\0000e6sespaltens 1,75 og bliver 55 px i stedet for 52 */

/* [UDFYLDES] skal kunne ses p\0000e5  en sk\0000e6rm, men ikke ligne en del af designet */
.gz-tekst__udfyldes {
  background: var(--gz-smoergul); color: var(--gz-blomme); padding: 1px 6px; border-radius: 3px;
  font-size: .88em; font-weight: 600; box-decoration-break: clone; -webkit-box-decoration-break: clone;
}

/* Privatlivspolitikkens udkast-m\0000e6rke */
.gz-tekst__udkast { background: var(--gz-smoergul); border-radius: 6px; padding: 18px 22px; margin: 0 0 32px; }
.gz-tekst__indhold .gz-tekst__udkast p { font-size: 15px; line-height: 1.6; color: var(--gz-blomme); margin: 0; }

/* ---------- Fortrydelsesformularen: et rigtigt stykke papir ---------- */
.gz-tekst__formular {
  margin: 72px 0 0; padding: 36px 40px 34px; border: 1px solid #cfc4d8; border-radius: 6px; background: var(--gz-hvid);
}
.gz-tekst__indhold .gz-tekst__formular h2 { margin-top: 0 !important; overflow-wrap: break-word; hyphens: auto; }
.gz-tekst__indhold .gz-tekst__formular-note { font-size: 14px; color: var(--gz-daempet); }
.gz-tekst__indhold .gz-tekst__formular-til { margin-bottom: 6px; font-weight: 650; }
.gz-tekst__felter { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; margin: 6px 0 18px; }
.gz-tekst__indhold .gz-tekst__felt {
  margin: 0; padding: 26px 0 6px; border-bottom: 1px solid #b7a9c2; font-size: 14px; line-height: 1.4; color: var(--gz-daempet);
}
.gz-tekst__felt--hel { grid-column: 1 / -1; }
.gz-tekst__skjult { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Felterne, som juridisk.js laver af linjerne: etiket over, en lys udfyldt flade med understregning, mindst 44 px.
   Underskriften og noten om papir vises kun p\0000e5  udskriften (.gz-tekst__felt--kunpapir). */
.gz-tekst__indhold .gz-tekst__felt--aktiv { padding: 18px 0 0; border-bottom: 0; }
.gz-tekst__indhold .gz-tekst__felt--aktiv:first-child { padding-top: 4px; }
.gz-tekst__felt--aktiv label {
  display: block; margin: 0 0 2px; font: 500 14px/1.4 var(--gz-sans); color: var(--gz-daempet);
  text-transform: none; letter-spacing: 0;
}
.gz-tekst .gz-tekst__felt--aktiv input, .gz-tekst .gz-tekst__felt--aktiv textarea {
  display: block; width: 100% !important; max-width: none !important; box-sizing: border-box; min-height: 44px; height: auto !important;
  margin: 0 !important; padding: 9px 12px 8px !important; font: 400 16px/1.5 var(--gz-sans) !important; color: var(--gz-blomme) !important;
  background: var(--gz-lys) !important; border: 0 !important; border-bottom: 1px solid #b7a9c2 !important; border-radius: 4px 4px 0 0 !important;
  box-shadow: none !important; appearance: none; -webkit-appearance: none; outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.gz-tekst .gz-tekst__felt--aktiv textarea { min-height: 84px; resize: vertical; }
.gz-tekst .gz-tekst__felt--aktiv input::-webkit-calendar-picker-indicator { opacity: .55; cursor: pointer; }
.gz-tekst .gz-tekst__felt--aktiv input:hover, .gz-tekst .gz-tekst__felt--aktiv textarea:hover { border-bottom-color: var(--gz-daempet) !important; }
/* Fokus: lavendel flade og en 2 px blomme understregning (outline: transparent er til Windows' kontrasttilstand) */
.gz-tekst .gz-tekst__felt--aktiv input:focus, .gz-tekst .gz-tekst__felt--aktiv textarea:focus {
  background: var(--gz-lavendel) !important; border-bottom-color: var(--gz-blomme) !important;
  box-shadow: 0 1px 0 0 var(--gz-blomme) !important; outline: 2px solid transparent;
}
.gz-tekst__felt--valgfri label span { color: #9a90a1; }
@media screen { .gz-tekst .gz-tekst__felt--kunpapir { display: none !important; } }
.gz-tekst__indhold .gz-tekst__formular-hjaelp { font-size: 14px; line-height: 1.55; color: var(--gz-daempet); margin: 0 0 6px; }

/* Mobil: en fast "Indhold"-knap, n\0000e5r fortegnelsen er rullet ud af syne (juridisk.js) */
.gz-tekst__til-indhold { display: none; }
@media (max-width: 900px) {
  .gz-tekst__til-indhold {
    position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 60;
    display: inline-flex; align-items: center; gap: 8px; min-height: 44px; min-width: 44px; padding: 0 18px 0 15px;
    background: var(--gz-hvid); color: var(--gz-blomme); border: 1px solid var(--gz-linje); border-radius: 999px;
    box-shadow: 0 6px 18px rgba(53, 40, 62, .14); font: 650 14px/1 var(--gz-sans); cursor: pointer;
    opacity: 0; visibility: hidden; transform: translateY(8px);
    transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
  }
  .gz-tekst__til-indhold[data-synlig] { opacity: 1; visibility: visible; transform: none; transition: opacity .2s ease, transform .2s ease, visibility 0s; }
  .gz-tekst__til-indhold svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; }
  .gz-tekst__til-indhold:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
}
@media (prefers-reduced-motion: reduce) { .gz-tekst__til-indhold { transition: none !important; transform: none !important; } }

/* ---------- Tabeller: cookielisten og modtagerne i privatlivspolitikken ---------- */
.gz-tekst__cookieliste { margin: 8px 0 26px; }
.gz-tekst__antal { font-size: 13px; font-weight: 600; color: var(--gz-daempet); }
.gz-tekst__indhold .gz-tekst__vent { font-size: 15px; color: var(--gz-daempet); }
.gz-tekst__indhold table { width: 100% !important; border-collapse: collapse; margin: 6px 0 8px; font-size: 14px; }
.gz-tekst__indhold table tr { background: none !important; border: 0 !important; height: auto !important; }
.gz-tekst__indhold th, .gz-tekst__indhold td {
  text-align: left; vertical-align: top; padding: 11px 16px 11px 0 !important; border: 0 !important;
  border-bottom: 1px solid var(--gz-linje) !important; background: none !important; line-height: 1.5; color: #463a50;
}
.gz-tekst__indhold th { font-size: 12.5px; font-weight: 650; color: var(--gz-daempet); border-bottom-color: #cfc4d8 !important; }
.gz-tekst__indhold td:last-child, .gz-tekst__indhold th:last-child { padding-right: 0 !important; }
.gz-tekst__cookieliste td:first-child { font-weight: 650; color: var(--gz-blomme); overflow-wrap: anywhere; width: 24%; }
.gz-tekst__cookieliste td:nth-child(2) { width: 13%; }
.gz-tekst__cookieliste td:last-child { width: 16%; white-space: nowrap; }
.gz-tekst__tabel td:first-child { font-weight: 650; color: var(--gz-blomme); width: 30%; }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-tekst__toc { grid-column: 1 / span 4; }
  .gz-tekst__indhold, .gz-tekst__kontakt { grid-column: 5 / span 8; }
}

/* ---------- Tablet og mobil: \0000e9n spalte i samme r\0000e6kkef\0000f8lge som DOM'en. Fortegnelsen klappes sammen.
   L\0000e6sebredden holdes p\0000e5  680 px op til 900 px, s\0000e5  linjerne ikke bliver 95 tegn lange p\0000e5  en tablet ---------- */
@media (max-width: 900px) {
  .gz-tekst { padding: 43px 0 64px; }
  .gz-tekst__titel { padding-bottom: 22px; margin-bottom: 26px; }
  .gz-tekst h1.m-text-headline { font-size: 42px !important; }
  .gz-tekst__udskriv { display: none; }
  .gz-tekst__layout { display: flex; flex-direction: column; align-items: stretch; max-width: var(--gz-tekst-laes); }
  .gz-tekst__toc, .gz-tekst__indhold, .gz-tekst__kontakt { width: 100%; min-width: 0; box-sizing: border-box; }
  .gz-tekst__toc { position: static; max-height: none; overflow: visible; margin: 0 0 28px !important; }
  .gz-tekst__indhold { max-width: none; }
  .gz-tekst__kontakt { margin-top: 30px; }

  .gz-tekst__toc details { border: 1px solid var(--gz-linje); border-radius: 6px; }
  .gz-tekst__toc details > summary {
    display: flex; align-items: center; justify-content: space-between; cursor: pointer;
    padding: 15px 18px; font-size: 15px;
  }
  .gz-tekst__toc details > summary::after {
    content: ''; width: 8px; height: 8px; margin-right: 4px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
    transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
  }
  .gz-tekst__toc details[open] > summary::after { transform: rotate(-135deg) translateY(-1px); }
  .gz-tekst__toc details[open] > summary { border-bottom: 1px solid var(--gz-linje); }
  .gz-tekst__toc ul { border-left: 0; padding: 6px 18px 12px !important; }
  .gz-tekst__toc a { margin: 0; padding: 11px 0; border-left: 0; font-size: 15px; color: var(--gz-blomme) !important; }
  .gz-tekst__toc a[aria-current="true"] { font-weight: 500; }
}

/* Kontaktboksen stables, n\0000e5r den ikke l\0000e6ngere har plads til to halvdele */
@media (max-width: 600px) {
  .gz-tekst__kontakt { grid-template-columns: 1fr; row-gap: 18px; padding: 24px 22px 22px; }
}

@media (max-width: 767px) {
  /* Temaets container har 10 px margen p\0000e5  mobil; de andre sider bruger 16 px */
  .gz-tekst { padding-left: 6px; padding-right: 6px; }
  /* Trykm\0000e5l p\0000e5  mindst 44 px, som resten af sitet (.gz-knap er 48 px p\0000e5  mobil) */
  .gz-tekst__kontaktliste a { min-height: 44px; }
  /* Tekstlinket beholder sin understregning t\0000e6t p\0000e5  teksten. Trykfladen udvides med et usynligt lag p\0000e5  44 px */
  .gz-tekst .gz-tekstlink { position: relative; }
  .gz-tekst .gz-tekstlink::after { content: ''; position: absolute; left: -6px; right: -6px; top: 50%; height: 44px; transform: translateY(-50%); }
  .gz-tekst h1.m-text-headline { font-size: 40px !important; }
  .gz-tekst__indhold p, .gz-tekst__indhold li { font-size: 16px; line-height: 1.7; }
  .gz-tekst__indhold .gz-tekst__ingress { font-size: 17px; }
  .gz-tekst__indhold h2 { font-size: 27px !important; margin-top: 48px !important; }
  .gz-tekst__indhold h3 { font-size: 16px !important; }
  .gz-tekst__kort { padding: 22px 20px 22px; }
  .gz-tekst__kort dl { grid-template-columns: 1fr; gap: 16px; }
  .gz-tekst__formular { padding: 26px 20px 24px; margin-top: 56px; }
  .gz-tekst__indhold .gz-tekst__formular h2 { font-size: 23px !important; }
  .gz-tekst__felter { grid-template-columns: 1fr; }
  .gz-tekst__indhold .gz-tekst__handlinger .gz-knap { width: 100%; justify-content: center; }

  /* Tabellerne bliver til kort: \0000e9n r\0000e6kke = \0000e9n blok */
  .gz-tekst__indhold table, .gz-tekst__indhold tbody, .gz-tekst__indhold tr, .gz-tekst__indhold td { display: block; width: auto !important; }
  .gz-tekst__indhold thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .gz-tekst__indhold tr { padding: 12px 0 !important; border-bottom: 1px solid var(--gz-linje) !important; }
  .gz-tekst__indhold td { padding: 2px 0 !important; border: 0 !important; white-space: normal !important; }
  .gz-tekst__indhold td[data-etiket]::before { content: attr(data-etiket) ': '; font-weight: 650; color: var(--gz-daempet); }
  .gz-tekst__cookieliste td:first-child, .gz-tekst__tabel td:first-child { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .gz-tekst__toc a, .gz-tekst__toc details > summary::after { transition: none; }
}

/* ---------- Udskrift: kun teksten. "Udskriv formularen" viser kun formularen ---------- */
@media print {
  body:has(.gz-tekst) .global_usp, body:has(.gz-tekst) .site-header, body:has(.gz-tekst) .site-navigation,
  body:has(.gz-tekst) footer, body:has(.gz-tekst) .gz-footer, body:has(.gz-tekst) .w-cookie,
  body:has(.gz-tekst) .hamburger-menu, body:has(.gz-tekst) .pagedim,
  .gz-tekst .gz-brod, .gz-tekst__udskriv, .gz-tekst__toc, .gz-tekst__kontakt,
  .gz-tekst__handlinger, .gz-tekst__kort .gz-knap { display: none !important; }
  .gz-tekst { padding: 0; }
  .gz-tekst__layout { display: block; }
  .gz-tekst__indhold { max-width: none; }
  .gz-tekst__indhold p, .gz-tekst__indhold li { font-size: 11pt; line-height: 1.5; color: #000; }
  .gz-tekst__indhold h2 { font-size: 16pt !important; margin-top: 18pt !important; break-after: avoid; }
  .gz-tekst__kort { background: none; border: 1px solid #999; }
  .gz-tekst__formular { border: 0; padding: 0; break-before: page; }
  .gz-tekst-print-formular .gz-tekst__titel,
  .gz-tekst-print-formular .gz-tekst__indhold > :not(.gz-tekst__formular) { display: none !important; }
  .gz-tekst-print-formular .gz-tekst__formular { break-before: auto; }
  .gz-tekst__felt { padding-top: 30pt !important; }
  .gz-tekst__felt--aktiv { padding-top: 12pt !important; }
  .gz-tekst__felt--aktiv label { color: #000; font-size: 10pt; }
  .gz-tekst .gz-tekst__felt--aktiv input, .gz-tekst .gz-tekst__felt--aktiv textarea { font-size: 11pt !important; color: #000 !important; background: none !important; padding-left: 0 !important; border-bottom-color: #000 !important; resize: none; }
  .gz-tekst .gz-tekst__felt--aktiv input::-webkit-calendar-picker-indicator { display: none; }
  .gz-tekst__felt--kunpapir { border-bottom-color: #000 !important; }
  .gz-tekst__formular-hjaelp, .gz-tekst__til-indhold { display: none !important; }
}

/* ---------- Cookielisten: \0000e9n sammenklappet blok pr. type ---------- */
.gz-tekst__cookietype { border-top: 1px solid var(--gz-linje); }
.gz-tekst__cookietype:last-child { border-bottom: 1px solid var(--gz-linje); }
.gz-tekst__cookietype > summary {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  list-style: none; cursor: pointer; padding: 16px 2px;
}
.gz-tekst__cookietype > summary::-webkit-details-marker { display: none; }
.gz-tekst__cookietype > summary::after {
  content: ''; flex-shrink: 0; width: 8px; height: 8px; margin-right: 6px;
  border-right: 1.5px solid var(--gz-blomme); border-bottom: 1.5px solid var(--gz-blomme);
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-tekst__cookietype[open] > summary::after { transform: rotate(-135deg) translateY(-1px); }
.gz-tekst__cookietype > summary:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }
/* Typens navn er en <span>, ikke en H3: en overskrift inde i <summary> (knap-rollen) mister sin semantik, og
   de fire navne st\0000e5r allerede som H3 i forklaringen ovenfor. H2 "Cookies p\0000e5  garnzonen.dk" b\0000e6rer hierarkiet. */
.gz-tekst__cookietype-titel { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; }
.gz-tekst__cookietype-navn { font-family: var(--gz-sans); font-weight: 700; font-size: 17px; line-height: 1.4; color: var(--gz-blomme); }
@media (max-width: 767px) { .gz-tekst__cookietype-navn { font-size: 16px; } }
.gz-tekst__cookietype table { margin: 0 0 18px !important; }
@media print { .gz-tekst__cookietype > summary::after { display: none; } .gz-tekst__cookietype table { display: table !important; } }


/* ---- sider/kategori.css ---- */
/* Garnzonen 2026: kategori- og produktlistesiderne (side-id kategori, seo/kategori.md).
   Markup: tema/udkast/sider/kategori*.html. JS: tema/assets/js/sider/kategori.js s\0000e6tter body.gz-kat-side.
   Alt er scopet til .gz-kat-* eller body.gz-kat-side, s\0000e5  intet rammer garnsiden, caf\0000e9en, kurser eller gavekort.
   Samme greb som forside v4 og garnsiden: containeren flugter med logoet, 12-spalters gitter i k\0000f8bsguiden,
   forsidens produktkort (.gz-produkt) og --gz-luft mellem de store afsnit. */

/* ---------- Toppen: br\0000f8dkrumme, H1, intro og chips ---------- */
.gz-kat-top { font-family: var(--gz-sans); padding: 34px 0 0; margin: 0; }
.gz-kat-top .gz-brod { flex-wrap: wrap; row-gap: 2px; }
.gz-kat-top h1,
.gz-kat-top h1.category-headline {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: 52px !important;
  line-height: 1.05 !important; letter-spacing: -0.03em !important; color: var(--gz-blomme) !important;
  text-transform: none !important; text-align: left !important; margin: 0 0 12px !important; padding: 0 !important;
}
/* Nogle kategorinavne st\0000e5r med lille begyndelsesbogstav i admin ("maskemark\0000f8rer", "blandet opskrifter") */
.gz-kat-top h1::first-letter { text-transform: uppercase; }
.gz-kat-top__intro { max-width: 660px; }
.gz-kat-top__intro p,
.gz-kat-top__intro .category-description,
.gz-kat-top__intro .category-description p {
  font-size: 16px; line-height: 1.7; color: #61546a; margin: 0;
}
.gz-kat-top__intro .category-description { margin: 0 !important; padding: 0 !important; }
.gz-kat-top__intro p + p { margin-top: 10px; }
.gz-kat-top__intro a { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }

.gz-kat-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 24px 0 0; }
.gz-kat-chips[hidden], .gz-kat-chip[hidden] { display: none !important; }
.gz-kat-chip {
  display: inline-flex; align-items: center; height: 40px; padding: 0 16px; border-radius: 999px;
  border: 1px solid #cfc4d8; background: var(--gz-hvid); color: var(--gz-blomme) !important;
  font: 600 14px/1 var(--gz-sans); text-decoration: none !important; white-space: nowrap;
  transition: background-color .15s ease, border-color .15s ease;
}
.gz-kat-chip:hover { background: var(--gz-lavendel); border-color: var(--gz-lavendel); }
.gz-kat-chip:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }

/* DanDomains egne underkategori-fliser erstattes af chipsene */
.gz-kat-side .modules.productlist:has(.gz-kat-chips) .categorylist { display: none !important; }

/* ---------- DanDomains Angular-liste i forsidens kortstil ---------- */
.gz-kat-side .modules.angular-productlist { margin-top: 40px; font-family: var(--gz-sans); }
.gz-kat-side .modules.angular-productlist.er-erstattet { display: none !important; }
/* Har siden en samlet liste (b\0000f8ger, tilbeh\0000f8r), skjules Angular-listen med det samme, s\0000e5  den ikke blinker frem og
   skubber siden, mens varerne hentes. Fjerner kategori.js den samlede liste (fejl), vises Angular-listen igen. */
.gz-kat-side .modules.productlist:has(~ .gz-kat-bund .gz-kat-samlet) .modules.angular-productlist { display: none !important; }
/* Hylder, der erstatter kategoriens egne varer (tilbeh\0000f8r), og tomme kategorier: DanDomains liste st\0000e5r ikke.
   Tom fyldte den ellers 400 px hvidt mellem H1 og beskeden. */
.gz-kat-side .modules.productlist:has(~ .gz-kat-bund [data-gz-kat-erstatter]) .modules.angular-productlist,
body.gz-kat-side:has(.gz-kat-tom) .modules.angular-productlist { display: none !important; }

/* Sortering og antal */
.gz-kat-side .productsortbar { margin: 0 0 22px !important; padding: 0 !important; border: 0 !important; background: none !important; }
.gz-kat-side .productsortbar .sortbar-body { margin: 0 !important; padding: 0 !important; }
.gz-kat-side .productsortbar .sortbar-body > .trailing.clearfix {
  display: flex !important; align-items: center; justify-content: space-between; gap: 16px; margin: 0 !important;
}
.gz-kat-side .productsortbar .sortbar-body > .trailing.clearfix::before,
.gz-kat-side .productsortbar .sortbar-body > .trailing.clearfix::after { content: none !important; }
.gz-kat-side .productsortbar .pull-right { float: none !important; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 10px 16px; }
/* \0000c9n r\0000e6kke p\0000e5  alle bredder (antal + sortering, som p\0000e5  garnsiden). DanDomains ekstra mobilr\0000e6kke skjules,
   ellers st\0000e5r antal og sortering der to gange p\0000e5  mobil. */
.gz-kat-side .productsortbar .sortbar-body > .row.is-hidden-m { display: none !important; }
.gz-kat-side .productsortbar .amount-display { font-size: 14px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-kat-side .productsortbar fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.gz-kat-side .productsortbar label.form-input {
  display: flex !important; align-items: center; gap: 8px; height: auto !important; padding: 0 !important; margin: 0 !important;
  background: none !important; border: 0 !important; box-shadow: none !important;
  font: 600 14px var(--gz-sans) !important; color: var(--gz-blomme) !important; text-transform: none !important; letter-spacing: 0 !important;
}
/* \0000c9n sorteringsv\0000e6lger i hele skabelonen (DanDomains og de samlede lister): samme kant, radius og pil p\0000e5  alle bredder.
   Temaet fjerner pilen p\0000e5  mobil (appearance: none), s\0000e5  den tegnes selv. */
.gz-kat-side .productsortbar select,
.gz-kat-vaerktoej .gz-sortering select {
  -webkit-appearance: none !important; appearance: none !important;
  height: 40px; min-width: 170px; border: 1px solid #cfc4d8 !important; border-radius: 4px !important; padding: 0 34px 0 12px !important;
  font: 400 14px var(--gz-sans) !important; color: var(--gz-blomme) !important;
  background: var(--gz-hvid) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2335283e' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 13px center / 10px 6px !important;
  text-transform: none !important; letter-spacing: 0 !important; box-shadow: none !important; cursor: pointer;
}
/* Temaets egen FontAwesome-pil p\0000e5  label'en (ellers st\0000e5r der to pile p\0000e5  brede sk\0000e6rme) */
.gz-kat-side .productsortbar label.form-input::after { content: none !important; display: none !important; }
.gz-kat-side .productsortbar select:focus-visible,
.gz-kat-vaerktoej .gz-sortering select:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }
/* Ved under 2 varer er der intet at sortere */
.gz-kat-samlet--faa .gz-sortering,
.gz-kat-side .angular-productlist.gz-kat-faa .productsortbar fieldset { display: none !important; }
.gz-kat-side .productsortbar .form-label { font: 600 13px var(--gz-sans) !important; color: var(--gz-blomme) !important; text-transform: none !important; letter-spacing: 0 !important; margin: 0 0 6px !important; }
.gz-kat-side .productsortbar option[value="string:ItemNumber"] { display: none; } /* varenummeret siger kunden intet */

/* Gitteret: fire kort i r\0000e6kken, samme luft som forsidens vitrine */
.gz-kat-side .modules.angular-productlist .modules.m-productlist { margin: 0 !important; padding: 0 !important; }
.gz-kat-side .modules.angular-productlist .modules.m-productlist > .row {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; margin: 0 !important;
}
.gz-kat-side .modules.angular-productlist .modules.m-productlist > .row::before,
.gz-kat-side .modules.angular-productlist .modules.m-productlist > .row::after { content: none !important; display: none !important; }
.gz-kat-side .modules.angular-productlist .modules.m-productlist > .row > div:not(.productItem) { grid-column: 1 / -1; width: auto !important; float: none !important; padding: 0 !important; }
.gz-kat-side .productItem { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; min-height: 0 !important; }
.gz-kat-side .productItem .type-col { height: 100%; }
.gz-kat-side .m-productlist-item {
  display: flex; flex-direction: column; height: 100%; padding: 0 !important; margin: 0 !important;
  border: 0 !important; background: none !important; box-shadow: none !important; text-align: left;
}
.gz-kat-side .m-productlist-item form { display: flex; flex-direction: column; height: 100%; margin: 0; }
.gz-kat-side .m-productlist-item .m-productlist-figure {
  position: relative; display: block; aspect-ratio: 1 / 1; margin: 0 0 14px !important; padding: 0 !important;
  border-radius: 4px; overflow: hidden; background: var(--gz-lys);
}
.gz-kat-side .m-productlist-item .m-productlist-figure > a,
.gz-kat-side .m-productlist-item .m-productlist-figure > a > span { display: block; height: 100%; }
.gz-kat-side .m-productlist-item .m-productlist-figure .placeholder { display: none !important; }
.gz-kat-side .m-productlist-item .m-productlist-image {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover; mix-blend-mode: multiply; transition: transform .6s ease;
}
.gz-kat-side .m-productlist-item:hover .m-productlist-image { transform: scale(1.03); }
/* DanDomains pladsholder ("Billede kommer") vises som forsidens tomme flade */
.gz-kat-side .m-productlist-item .m-productlist-image[src*="/placeholders/"] { opacity: 0; }
.gz-kat-side .m-productlist-item .content { height: auto !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important; }
.gz-kat-side .m-productlist-item .m-productlist-heading { display: flex; flex-direction: column; margin: 0 !important; }
.gz-kat-side .m-productlist-item .m-productlist-heading a { text-decoration: none !important; }
.gz-kat-side .m-productlist-item .m-productlist-title {
  font: 650 15px/1.35 var(--gz-sans) !important; letter-spacing: -0.01em !important; color: var(--gz-blomme) !important;
  margin: 0 !important; text-align: left !important; min-height: 2.7em;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.gz-kat-side .m-productlist-item .m-productlist-link:hover .m-productlist-title { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
/* M\0000e6rket st\0000e5r allerede i titlen ("KnitPro Symfonie Rundpind"), og mange varer har intet m\0000e6rke */
.gz-kat-side .m-productlist-item .m-productlist-brand-link,
.gz-kat-side .m-productlist-item .m-productlist-description,
.gz-kat-side .m-productlist-item .m-reviews-stars,
.gz-kat-side .m-productlist-item .product-various-price-info { display: none !important; }
/* Prisen st\0000e5r nederst i kortet, s\0000e5  den flugter i hele r\0000e6kken, ogs\0000e5  n\0000e5r titlen er p\0000e5  \0000e9n linje */
.gz-kat-side .m-productlist-item .m-productlist-transactions { margin-top: auto !important; padding-top: 6px !important; height: auto !important; }
.gz-kat-side .m-productlist-item .prices { display: flex !important; flex-wrap: nowrap; align-items: baseline; gap: 8px; justify-content: flex-start !important; }
/* Varer til 0 kr. kan ikke k\0000f8bes og ligner en fejl (kategori.js t\0000f8mmer prisfeltet, n\0000e5r prisen er 0) */
.gz-kat-side .productItem:has(.m-productlist-price[data-gz-kr=""]) { display: none !important; }
.gz-kat-side .m-productlist-item .m-productlist-price {
  order: 1; flex: 0 0 auto; width: auto !important; padding: 0 !important;
  font: 650 14px var(--gz-sans) !important; color: var(--gz-blomme) !important; margin: 0 !important;
  text-align: left !important; font-variant-numeric: tabular-nums;
}
.gz-kat-side .m-productlist-item .m-productlist-discount { order: 2; flex: 0 0 auto; width: auto !important; margin: 0 !important; padding: 0 !important; text-align: left !important; }
/* F\0000f8rprisen p\0000e5  samme linje som nuprisen, som p\0000e5  kortene i kategori.js */
.gz-kat-side .m-productlist-item .m-productlist-price-before-discount { display: inline !important; margin: 0 !important; padding: 0 !important; font: 400 13px var(--gz-sans) !important; color: var(--gz-daempet) !important; }
/* Kortet linker til produktsiden, ligesom p\0000e5  garnsiden. Varianter og antal v\0000e6lges d\0000e9r. */
.gz-kat-side .m-productlist-item .m-productlist-variants,
.gz-kat-side .m-productlist-item .product-action { display: none !important; }
/* "Udsolgt" og "-35%" som forsidens hvide m\0000e6rkat */
.gz-kat-side .m-productlist-item .m-productlist-splash { position: absolute; left: 10px; top: 10px; z-index: 1; display: flex; gap: 6px; margin: 0; padding: 0; }
.gz-kat-side .m-productlist-item .m-productlist-splash .badge {
  position: static !important; display: inline-block; margin: 0 !important; padding: 4px 8px !important; border-radius: 3px !important;
  background: var(--gz-hvid) !important; color: var(--gz-blomme) !important; border: 0 !important;
  font: 700 11px/1.3 var(--gz-sans) !important; letter-spacing: 0 !important; text-transform: none !important;
  width: auto !important; height: auto !important; transform: none !important;
}
/* DanDomains egen "Ingen produkter fundet." erstattes af .gz-kat-tom (kategori.js) */
body.gz-kat-side:has(.gz-kat-tom) .m-productlist-none { display: none !important; }
/* Strikkecaf\0000e9en ligger i kategori 3 (det er bookingens adresse), men h\0000f8rer ikke til tilbeh\0000f8ret */
.pageCategory3.gz-kat-side .productItem:has(a[href*="/13339-"]) { display: none !important; }

/* Paginering */
.gz-kat-side .productpagination { margin: 48px 0 0 !important; }
.gz-kat-side .productpagination .pagination { display: flex; justify-content: center; gap: 6px; list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-kat-side .productpagination .pagination li { list-style: none; margin: 0; padding: 0; border: 0 !important; background: none !important; }
.gz-kat-side .productpagination .pagination a {
  display: grid; place-items: center; min-width: 40px; height: 40px; padding: 0 8px; border-radius: 4px;
  font: 600 14px var(--gz-sans); color: var(--gz-blomme) !important; text-decoration: none !important;
  background: none !important; border: 1px solid transparent !important; cursor: pointer;
}
.gz-kat-side .productpagination .pagination a:hover { border-color: #cfc4d8 !important; }
.gz-kat-side .productpagination .pagination li.current a { background: var(--gz-blomme) !important; color: var(--gz-hvid) !important; }
.gz-kat-side .productpagination .pagination li.is-disabled { opacity: .35; pointer-events: none; }

/* ---------- Under varerne ---------- */
.gz-kat-bund { font-family: var(--gz-sans); }
.gz-kat-bund { padding-bottom: var(--gz-luft); } /* ogs\0000e5  luft f\0000f8r footeren, n\0000e5r der intet st\0000e5r under varerne */
.gz-kat-bund > .gz-kat-hylder:first-child,
.gz-kat-bund > .gz-kat-samlet:first-child { margin-top: 40px; }
/* Tom kategori: beskeden st\0000e5r lige under H1 og br\0000f8dkrummen */
.gz-kat-bund > .gz-kat-tom:first-child { margin-top: 32px; }
.gz-kat-bund > .gz-kat-faq,
.gz-kat-bund > .gz-kat-mere,
.gz-kat-bund > .gz-kat-bf { margin-top: var(--gz-luft); }
.gz-kat-nyhedsbrev[hidden] { display: none !important; }
.gz-kat-bund h2 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  letter-spacing: -0.025em !important; text-transform: none !important;
}
.gz-kat-bund h3 { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important; }

/* Varekort (kategori.js) bygget p\0000e5  forsidens .gz-produkt. Kortet fylder r\0000e6kkens h\0000f8jde, og prisen st\0000e5r nederst,
   s\0000e5  den flugter, ogs\0000e5  n\0000e5r titlen er p\0000e5  \0000e9n linje, eller n\0000e5r en bog har forfatterlinje */
.gz-kat-kort .gz-produkt__foto img { mix-blend-mode: multiply; }
.gz-kat-kort .gz-maerkat { left: 10px; top: 10px; }
.gz-kat-kort .gz-produkt__navn { min-height: 2.7em; }
.gz-kat-kort .gz-produkt__pris { margin-top: auto; padding-top: 6px; font-weight: 650; color: var(--gz-blomme); }
.gz-kat-kort .gz-produkt__pris s { font-weight: 400; font-size: 13px; color: var(--gz-daempet); margin-left: 6px; }
.gz-kat-kort:hover .gz-produkt__navn { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
/* Forfatteren st\0000e5r over titlen i samme lille gr\0000e5  linje som m\0000e6rket p\0000e5  garnkortene. Linjen st\0000e5r der altid p\0000e5 
   bogkort, s\0000e5  titlerne starter i samme h\0000f8jde */
.gz-kat-kort__forfatter { min-height: 1.4em; line-height: 1.4; }
/* Garnkortene (garnsidens opbygning) i kategorigitteret */
.gz-kat-kort--garn .gz-produkt__navn { min-height: 0; }
.gz-kat-kort--garn .gz-garnkort__bund { margin-top: auto; padding-top: 10px; }
.gz-kat-kort--garn .gz-produkt__pris { margin-top: 0; padding-top: 0; }

/* Uden foto: samme lyse flade som forsiden, med en lille tekst i midten */
.gz-kat-kort__udenfoto,
.gz-kat-side .m-productlist-item .m-productlist-figure:has(.m-productlist-image[src*="/placeholders/"])::after {
  position: absolute; inset: 0; display: grid; place-items: center;
  font: 500 13px/1.4 var(--gz-sans); color: var(--gz-daempet); text-align: center;
}
.gz-kat-side .m-productlist-item .m-productlist-figure:has(.m-productlist-image[src*="/placeholders/"])::after { content: 'Billede p\0000e5  vej'; pointer-events: none; }

/* Samlet liste (b\0000f8ger, tilbeh\0000f8r): antal til venstre, sortering til h\0000f8jre, som p\0000e5  garnsiden */
.gz-kat-vaerktoej { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 22px; }
.gz-kat-vaerktoej .gz-kat-antal { margin: 0; }
.gz-kat-vaerktoej .gz-sortering span { font-weight: 600; }
.gz-kat-vaerktoej .gz-sortering select { min-width: 170px; }
.gz-kat-antal { margin: 0 0 22px; font-size: 14px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; min-height: 20px; }
.gz-kat-gitter { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; min-height: 360px; transition: opacity .2s ease; }
.gz-kat-gitter[aria-busy="true"] { opacity: .45; }

/* Hylder pr. underkategori */
.gz-kat-hylder { display: grid; grid-template-columns: minmax(0, 1fr); gap: 72px; }
/* Hylden m\0000e5  ikke vokse med den vandrette kortr\0000e6kke p\0000e5  mobil (ellers l\0000f8ber overskriften ud over kanten) */
.gz-kat-hylder > .gz-kat-hylde { min-width: 0; }
.gz-kat-hylde[hidden] { display: none !important; }
.gz-kat-hylde__top { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 0 0 24px; }
.gz-kat-hylde__top h2 { font-size: 32px !important; line-height: 1.1 !important; margin: 0 0 6px !important; }
.gz-kat-hylde__top p { font-size: 14px; line-height: 1.6; color: var(--gz-daempet); margin: 0; max-width: 560px; }
.gz-kat-hylde__top .gz-tekstlink { flex-shrink: 0; margin-bottom: 4px; }
.gz-kat-hylde__top p a { color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px; }
.gz-kat-hylde { scroll-margin-top: calc(var(--gz-header-h, 91px) + 24px); }

/* Hylde med 1-3 varer (kategori.js s\0000e6tter --gz-kat-antal og --gz-kat-spor = 4 - antal): overskriften st\0000e5r i de
   f\0000f8rste spalter af det samme 4-spaltede gitter, og kortene har samme bredde som p\0000e5  de fulde hylder. S\0000e5  er r\0000e6kken
   fyldt i stedet for at have tomme spalter til h\0000f8jre. Kun p\0000e5  brede sk\0000e6rme; p\0000e5  tablet og mobil st\0000e5r den som de andre. */
@media (min-width: 1101px) {
  .gz-kat-hylde--kort { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
  .gz-kat-hylde--kort .gz-kat-hylde__top {
    grid-column: span var(--gz-kat-spor, 1); flex-direction: column; align-items: flex-start; justify-content: flex-start;
    gap: 16px; margin: 0; padding-top: 2px;
  }
  .gz-kat-hylde--kort .gz-kat-hylde__top .gz-tekstlink { margin: 0; }
  /* 1-2 varer: overskriftens felt er 2-3 spalter bredt og f\0000e5r lavendelfladen (som tilbudssidens nyhedsbrevsboks),
     lige s\0000e5  h\0000f8j som kortene, s\0000e5  r\0000e6kken ikke har et hvidt hul mellem tekst og kort */
  .gz-kat-hylde--flade .gz-kat-hylde__top {
    align-self: stretch; justify-content: center; background: var(--gz-lavendel); border-radius: 4px;
    padding: 40px 48px; box-sizing: border-box;
  }
  .gz-kat-hylde--flade .gz-kat-hylde__top p { font-size: 15px; color: #5d5066; }
  .gz-kat-hylde--kort .gz-kat-hylde__gitter {
    grid-column: span var(--gz-kat-antal, 3); grid-template-columns: repeat(var(--gz-kat-antal, 3), minmax(0, 1fr)); min-height: 0;
  }
}

/* K\0000f8bsguiden: forsidens afsnit (billede 6 spalter, tekst 5), billede og tekst lige h\0000f8je */
.gz-kat-side .gz-kat-guide.gz-afsnit { padding: 0 !important; max-width: none; align-items: stretch; }
.gz-kat-side .gz-kat-guide .gz-afsnit__billede { aspect-ratio: auto; min-height: 460px; height: 100%; border-radius: 0; }
.gz-kat-guide__tekst { justify-content: center; padding: 16px 0 !important; }
.gz-kat-guide h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 10px !important; }
.gz-kat-guide h3 { font-size: 22px !important; line-height: 1.2 !important; letter-spacing: -0.01em !important; margin: 24px 0 6px !important; }
.gz-kat-guide .gz-afsnit__tekst > p { font-size: 16px; line-height: 1.7; color: #5d5066; max-width: 470px; margin: 0; }
.gz-kat-guide .gz-afsnit__tekst > .gz-tekstlink { margin-top: 26px; }
.gz-kat-guide p a, .gz-kat-opgaver a, .gz-kat-faq a:not(.gz-knap) {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px;
}
.gz-kat-guide__knapper { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 28px; margin-top: 28px; }
.gz-kat-guide__billede--pinde { background-image: url(../img/st-kat-pinde.jpg); background-position: 50% 50%; }
.gz-kat-guide__billede--tilbehoer { background-image: url(../img/st-kat-tilbehoer.jpg); background-position: 50% 50%; }
.gz-kat-guide__billede--boeger { background-image: url(../img/st-kat-boeger.jpg); background-position: 50% 50%; }
.gz-kat-guide__billede--opskrift { background-image: url(../img/st-kat-opskrift.jpg); background-position: 50% 50%; }

/* V\0000e6rkt\0000f8j efter opgave (tilbeh\0000f8r) */
.gz-kat-opgaver { margin: 10px 0 0 !important; padding: 0 !important; max-width: 500px; }
.gz-kat-opgaver > div { display: grid; grid-template-columns: 116px minmax(0, 1fr); gap: 16px; padding: 12px 0; border-top: 1px solid var(--gz-linje); }
.gz-kat-opgaver > div:last-child { border-bottom: 1px solid var(--gz-linje); }
.gz-kat-opgaver dt { font-size: 14px; font-weight: 700; line-height: 1.6; margin: 0; color: var(--gz-blomme); }
.gz-kat-opgaver dd { font-size: 15px; line-height: 1.6; margin: 0; color: #5d5066; }
.gz-kat-opgaver dt::before, .gz-kat-opgaver dd::before { content: none !important; } /* temaet nummererer dd'er */

/* FAQ: overskrift i spalte 1-5, sp\0000f8rgsm\0000e5lene i spalte 8-12, s\0000e5  de flugter med k\0000f8bsguidens tekst lige over
   (forsidens afsnit: billede 1-6, tekst 8-12) */
.gz-kat-faq { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
.gz-kat-faq__intro { grid-column: 1 / span 5; }
.gz-kat-faq__intro h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 14px !important; }
.gz-kat-faq__intro p { font-size: 15px; line-height: 1.7; color: #5d5066; margin: 0; }
.gz-kat-faq__liste { grid-column: 8 / span 5; border-bottom: 1px solid var(--gz-linje); }
.gz-kat-faq details { border-top: 1px solid var(--gz-linje); }
.gz-kat-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0; cursor: pointer; list-style: none; }
.gz-kat-faq summary::-webkit-details-marker { display: none; }
.gz-kat-faq summary::after {
  content: ''; flex-shrink: 0; width: 9px; height: 9px; margin-right: 4px;
  border-right: 1.5px solid var(--gz-blomme); border-bottom: 1.5px solid var(--gz-blomme);
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-kat-faq details[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-kat-faq summary:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-kat-faq summary h3 { font-size: 21px !important; line-height: 1.3 !important; letter-spacing: -0.01em !important; margin: 0 !important; }
.gz-kat-faq__svar { padding: 0 0 24px; }
.gz-kat-faq__svar p { font-size: 15px; line-height: 1.7; color: #5d5066; margin: 0; max-width: 620px; }
.gz-kat-faq__svar p + p, .gz-kat-faq__svar p + table { margin-top: 14px; }
.gz-kat-tabel { border-collapse: collapse; width: 100% !important; max-width: 520px; margin: 14px 0 0; font-size: 14px; }
.gz-kat-tabel tr { background: none !important; border: 0 !important; height: auto !important; }
.gz-kat-tabel th, .gz-kat-tabel td {
  padding: 9px 16px 9px 0 !important; border: 0 !important; border-bottom: 1px solid var(--gz-linje) !important;
  background: none !important; text-align: left; vertical-align: top; font-variant-numeric: tabular-nums; color: var(--gz-blomme);
}
.gz-kat-tabel thead th { font-size: 12px; font-weight: 650; color: var(--gz-daempet); }
.gz-kat-tabel tbody th { font-weight: 650; white-space: nowrap; width: 90px; }
.gz-kat-tabel td { color: #5d5066; }

/* Lang admintekst, der er flyttet ned (kategori.js) */
.gz-kat-mere { max-width: 720px; }
.gz-kat-mere h2 { font-size: 32px !important; line-height: 1.15 !important; margin: 0 0 14px !important; }
.gz-kat-mere p { font-size: 15px; line-height: 1.75; color: #5d5066; margin: 0 0 12px; }

/* Nyhedsbrevet (tilbud): fylder resten af r\0000e6kken ved siden af 1-3 tilbudskort (--gz-kat-spor = 4 - antal) */
.gz-kat-nyhedsbrev {
  grid-column: span var(--gz-kat-spor, 1);
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 0;
  background: var(--gz-lavendel); border-radius: 4px; padding: 40px 48px; box-sizing: border-box;
}
.gz-kat-nyhedsbrev h2 { font-size: 32px !important; line-height: 1.15 !important; margin: 0 0 10px !important; }
.gz-kat-nyhedsbrev p { font-size: 15px; line-height: 1.6; color: #5d5066; margin: 0 0 24px; max-width: 460px; }

/* Black Friday (tilbud): slukket, indtil datoerne er sat */
.gz-kat-bf { max-width: 720px; }
.gz-kat-bf h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 12px !important; }
.gz-kat-bf p { font-size: 16px; line-height: 1.7; color: #5d5066; margin: 0; }

/* Tom kategori */
.gz-kat-tom { display: flex; flex-direction: column; align-items: flex-start; gap: 18px; background: var(--gz-lys); border-radius: 6px; padding: 36px 40px; }
.gz-kat-tom p { margin: 0; max-width: 560px; font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-kat-tom strong { color: var(--gz-blomme); }
.gz-kat-tom a:not(.gz-knap) { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }

/* ---------- Mellemstore sk\0000e6rme ---------- */
@media (max-width: 1100px) {
  .gz-kat-side .modules.angular-productlist .modules.m-productlist > .row,
  .gz-kat-gitter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gz-kat-faq__intro { grid-column: 1 / span 5; }
  .gz-kat-faq__liste { grid-column: 7 / span 6; } /* = k\0000f8bsguidens tekst p\0000e5  mellemstore sk\0000e6rme */
  .gz-kat-gitter > .gz-kat-nyhedsbrev { grid-column: 1 / -1; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  /* Samme 16 px margen som forsiden (temaets container har kun 10 px) */
  .gz-kat-side .site-main-content { padding-left: 16px !important; padding-right: 16px !important; }
  .gz-kat-top { padding-top: 22px; }
  .gz-kat-top h1, .gz-kat-top h1.category-headline { font-size: 40px !important; margin-bottom: 10px !important; }
  .gz-kat-top__intro p, .gz-kat-top__intro .category-description, .gz-kat-top__intro .category-description p { font-size: 15px; line-height: 1.65; }
  /* Chipsene kan swipes vandret i \0000e9n r\0000e6kke */
  .gz-kat-chips {
    flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-top: 20px;
    width: calc(100% + 16px); margin-right: -16px; padding-right: 16px; box-sizing: border-box;
  }
  .gz-kat-chips::-webkit-scrollbar { display: none; }
  .gz-kat-chip { height: 44px; padding: 0 16px; font-size: 14px; flex-shrink: 0; } /* trykm\0000e5l p\0000e5  44 px */

  .gz-kat-side .modules.angular-productlist { margin-top: 32px; }
  .gz-kat-side .modules.angular-productlist .modules.m-productlist > .row,
  .gz-kat-gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 14px; min-height: 0; }
  .gz-kat-side .m-productlist-item .m-productlist-title, .gz-kat-kort .gz-produkt__navn { font-size: 14px !important; }
  .gz-kat-side .productsortbar select { min-width: 0; }
  .gz-kat-side .productsortbar .sortbar-body > .trailing.clearfix { align-items: center; }
  .gz-kat-vaerktoej .gz-sortering select { min-width: 0; }

  .gz-kat-bund > .gz-kat-hylder:first-child,
  .gz-kat-bund > .gz-kat-samlet:first-child,
  .gz-kat-bund > .gz-kat-tom:first-child { margin-top: 32px; }
  .gz-kat-hylder { gap: 52px; }
  .gz-kat-hylde__top { flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 18px; }
  .gz-kat-hylde__top h2 { font-size: 27px !important; }
  /* Hylderne swipes vandret som forsidens vitrine; de g\0000e5r ud til sk\0000e6rmkanten */
  .gz-kat-hylde .gz-produktgitter { width: auto; margin-right: -16px; padding-right: 16px; box-sizing: border-box; }
  /* Br\0000f8kdele af en pixel fra temaets container m\0000e5  ikke give vandret scroll */
  .gz-kat-side .site-content { overflow-x: clip; }

  .gz-kat-side .gz-kat-guide.gz-afsnit { padding: 0 !important; row-gap: 24px; }
  .gz-kat-side .gz-kat-guide .gz-afsnit__billede { min-height: 0; height: auto; aspect-ratio: 4 / 3; }
  .gz-kat-guide__tekst { padding: 0 !important; }
  .gz-kat-guide h2 { font-size: 31px !important; }
  .gz-kat-guide h3 { font-size: 20px !important; margin-top: 20px !important; }
  .gz-kat-guide .gz-afsnit__tekst > p { font-size: 15px; }
  .gz-kat-opgaver > div { grid-template-columns: 1fr; gap: 2px; }

  .gz-kat-faq { grid-template-columns: minmax(0, 1fr); row-gap: 22px; }
  .gz-kat-faq__intro, .gz-kat-faq__liste { grid-column: 1; }
  .gz-kat-faq__intro h2 { font-size: 31px !important; }
  .gz-kat-faq summary { padding: 18px 0; }
  .gz-kat-faq summary h3 { font-size: 18px !important; }

  .gz-kat-mere h2, .gz-kat-nyhedsbrev h2 { font-size: 27px !important; }
  .gz-kat-bf h2 { font-size: 31px !important; }
  .gz-kat-nyhedsbrev { padding: 30px 22px; }
  .gz-kat-nyhedsbrev p { margin-bottom: 20px; }
  .gz-kat-nyhedsbrev .gz-knap { width: 100%; justify-content: center; }
  .gz-kat-tom { padding: 28px 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-kat-side .m-productlist-item .m-productlist-image, .gz-kat-faq summary::after { transition: none; }
}


/* ---- sider/kurser.css ---- */
/* Kurser og events (/shop/385-kursus--events/). Markup: tema/udkast/sider/kurser.html, JS: tema/assets/js/sider/kurser.js.
   Alt er scopet til .gz-kursus-side (sidens rod) eller body.pageCategory385. Samme greb som forside v4 og garnsiden:
   12-spalters gitter i --gz-bredde, fast luft (--gz-luft) mellem sektionerne, billede og tekst lige h\0000f8je.
   \0000c9n h\0000f8jre akse for hele siden: h\0000f8jre spalte er altid spalte 8-12 (x = 1056 i 1891 px), s\0000e5  teksten ikke hopper.
   Sidens ene kendetegn er datobladene: kurser og temaaftener st\0000e5r som en kalender med dagen i serif.
   Billederne er forsidens. Stien er ../../img/, fordi filen ligger i css/sider/. */

/* Sidens rod ligger i designets container, som allerede flugter med logoet */
.gz-kursus-side { font-family: var(--gz-sans); color: var(--gz-blomme); padding: 34px 0 0; }
.gz-kursus-side h1, .gz-kursus-side h2, .gz-kursus-side h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important;
}
.gz-kursus-side p { margin: 0; }
.gz-kursus-side ul { list-style: none; margin: 0; padding: 0; }
.gz-kursus-side li { list-style: none; }
.gz-kursus-side [hidden] { display: none !important; }

/* Tekstlinks i br\0000f8dteksten: understreget med syren, altid blomme (temaet farver bes\0000f8gte links guld) */
.gz-kursus-link, .gz-kursus-link:visited, .gz-kursus-link:focus {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-underline-offset: 3px; text-decoration-thickness: 1px;
}
.gz-kursus-link:hover { text-decoration-color: var(--gz-blomme) !important; }

/* ---------- Toppen: H1, \0000e9n s\0000e6tning og kalenderpanelet til venstre, billedet til h\0000f8jre ---------- */
.gz-kursus-top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
.gz-kursus-top__tekst { grid-column: 1 / span 6; display: flex; flex-direction: column; align-items: stretch; }
.gz-kursus-top__billede {
  grid-column: 8 / span 5; min-height: 480px;
  background: var(--gz-lys) url(../img/st-side-kurser.jpg) 50% 55% / cover no-repeat;
}
.gz-kursus-side h1 {
  font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 16px !important;
}
.gz-kursus-intro { font-size: 17px; line-height: 1.7; color: #5d5066; max-width: 540px; margin: 0 0 32px !important; }

/* Kalenderpanelet: fast H2, s\0000e5  enten tom-tilstanden eller kalenderen, og en fod med \0000f8nsker (og caf\0000e9en, n\0000e5r den er tom) */
.gz-kursus-panel { background: var(--gz-lavendel); border-radius: 6px; padding: 34px 40px 32px; }
.gz-kursus-panel[data-indlaeser] > *:not(h2) { visibility: hidden; }
.gz-kursus-panel h2 {
  font-size: 30px !important; line-height: 1.15 !important; letter-spacing: -0.02em !important; margin: 0 0 10px !important;
}
.gz-kursus-tom { display: flex; flex-direction: column; align-items: flex-start; }
.gz-kursus-tom > p { font-size: 15px; line-height: 1.7; color: #4e4258; max-width: 440px; margin: 0 0 22px !important; }
.gz-kursus-panel__fod {
  margin-top: 24px; padding-top: 18px; border-top: 1px solid rgba(53, 40, 62, .12);
  display: flex; flex-direction: column; gap: 8px;
}
.gz-kursus-panel__fod p { font-size: 14px; line-height: 1.65; color: #4e4258; }

/* \0000c9n r\0000e6kke pr. kursusdato: datoblad til venstre, navn, tid, fakta og k\0000f8b til h\0000f8jre */
.gz-kursus-liste { margin-top: 4px !important; }
.gz-kursus-raekke {
  display: grid; grid-template-columns: 76px minmax(0, 1fr); column-gap: 22px; align-items: start;
  padding: 16px 0; border-top: 1px solid rgba(53, 40, 62, .12);
}
.gz-kursus-raekke:first-child { border-top: 0; padding-top: 10px; }
.gz-kursus-raekke:last-child { padding-bottom: 0; }

.gz-kursus-blad {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  width: 76px; min-height: 76px; padding: 6px 0 8px; box-sizing: border-box;
  background: var(--gz-hvid); border-radius: 4px; box-shadow: 0 1px 0 rgba(53, 40, 62, .1);
  font-variant-numeric: lining-nums;
}
.gz-kursus-blad__ugedag { font-size: 12px; font-weight: 600; color: var(--gz-daempet); line-height: 1.2; }
.gz-kursus-blad__dag { font-family: var(--gz-serif); font-size: 34px; line-height: 1; letter-spacing: -0.02em; margin: 2px 0 1px; }
.gz-kursus-blad__maaned { font-size: 12px; font-weight: 600; line-height: 1.2; }
.gz-kursus-blad--uden { background: transparent; box-shadow: inset 0 0 0 1px rgba(53, 40, 62, .25); }
.gz-kursus-blad--uden .gz-kursus-blad__dag { font-size: 15px; font-family: var(--gz-sans); font-weight: 600; letter-spacing: 0; }

.gz-kursus-raekke h3 { font-size: 23px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 4px !important; }
.gz-kursus-raekke h3 a, .gz-kursus-raekke h3 a:visited, .gz-kursus-raekke h3 a:focus { color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-kursus-raekke h3 a:hover { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px; }
.gz-kursus-raekke__tid { display: flex; flex-wrap: wrap; gap: 2px 14px; font-size: 14px; line-height: 1.5; color: #4e4258; }
.gz-kursus-raekke__tid time::first-letter { text-transform: uppercase; }
/* Underviser, niveau og hvad der er med i prisen: hvert felt p\0000e5  sin linje, etiketten i fed */
.gz-kursus-raekke__fakta { display: flex; flex-wrap: wrap; gap: 2px 18px; margin: 8px 0 0 !important; font-size: 13px; line-height: 1.55; color: #4e4258; }
.gz-kursus-raekke__fakta > div { display: flex; gap: 5px; margin: 0; }
.gz-kursus-raekke__fakta dt { font-weight: 700; color: var(--gz-blomme); margin: 0; }
.gz-kursus-raekke__fakta dt::after { content: ':'; }
.gz-kursus-raekke__fakta dd { margin: 0; }
.gz-kursus-raekke__fakta dt::before, .gz-kursus-raekke__fakta dd::before { content: none !important; }
.gz-kursus-raekke__om { font-size: 14px; line-height: 1.6; color: #5d5066; margin: 6px 0 0 !important; max-width: 460px; }
.gz-kursus-raekke__koeb { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 10px 0 0; }
.gz-kursus-raekke__pris { font-size: 17px; font-weight: 700; font-variant-numeric: tabular-nums; }
.gz-kursus-raekke__pladser { font-size: 13px; color: #61546a; }
.gz-kursus-raekke__pladser.er-faa { color: #7a5c95; font-weight: 600; }
.gz-kursus-raekke__handling { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.gz-kursus-antal input {
  width: 58px; height: 48px; border: 1px solid #cfc4d8 !important; border-radius: 4px; background: #fff;
  font: 600 15px var(--gz-sans) !important; text-align: center !important; color: var(--gz-blomme) !important; padding: 0 !important; box-shadow: none !important;
  margin: 0 !important; -moz-appearance: textfield;
}
.gz-kursus-antal input::-webkit-inner-spin-button, .gz-kursus-antal input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.gz-kursus-antal { display: block; margin: 0 !important; }
.gz-kursus-raekke .gz-knap { min-height: 48px; padding: 13px 20px; }
/* Udsolgt: kun d\0000e6mpet. Ingen gennemstregning, for en streget pris betyder tilbud i en webshop */
.gz-kursus-raekke.er-udsolgt .gz-kursus-blad__dag { color: #a59bab; }
.gz-kursus-raekke.er-udsolgt .gz-kursus-raekke__pris { color: #61546a; }
.gz-kursus-flere { margin-top: 16px; }

/* ---------- Seneste workshop: billede (6 spalter) og tekst (5 spalter), lige h\0000f8je ---------- */
.gz-kursus-afsnit {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
  margin-top: var(--gz-luft, 120px);
}
.gz-kursus-afsnit__billede {
  grid-column: 1 / span 6; min-height: 460px;
  background: var(--gz-lys) url(../img/st-side-kurser-2.jpg) 50% 50% / cover no-repeat;
}
.gz-kursus-afsnit__tekst { grid-column: 8 / span 5; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 8px 0; }
.gz-kursus-side .gz-kursus-afsnit h2, .gz-kursus-side .gz-kursus-praktisk h2, .gz-kursus-side .gz-kursus-tema h2 {
  font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 14px !important;
}
.gz-kursus-hvornaar { display: flex; flex-wrap: wrap; gap: 2px 16px; font-size: 14px; font-weight: 600; color: #7a5c95; margin: 0 0 10px !important; }
.gz-kursus-afsnit__tekst > p:not(.gz-kursus-hvornaar) { font-size: 16px; line-height: 1.75; color: #5d5066; max-width: 470px; margin: 0 0 18px !important; }
.gz-kursus-punkter { margin: 0 0 18px !important; max-width: 470px; }
.gz-kursus-punkter li {
  position: relative; padding: 0 0 0 22px; margin: 0 0 8px; font-size: 16px; line-height: 1.6; color: #5d5066;
}
.gz-kursus-punkter li::before {
  content: ''; position: absolute; left: 2px; top: .62em; width: 8px; height: 8px; border-radius: 50%; background: var(--gz-syren);
}
.gz-kursus-instagram { margin-top: 6px; }

/* ---------- Praktisk: overskrift og kontakt (spalte 1-5), sp\0000f8rgsm\0000e5l og svar (spalte 8-12) ---------- */
.gz-kursus-praktisk {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  margin-top: var(--gz-luft, 120px);
}
.gz-kursus-praktisk__kontakt { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; }
.gz-kursus-praktisk__kontakt > p:not(.gz-kursus-kontakt) { font-size: 16px; line-height: 1.75; color: #5d5066; max-width: 420px; }
.gz-kursus-kontakt { display: flex; flex-wrap: wrap; gap: 4px 22px; font-size: 18px; font-weight: 650; margin: 14px 0 16px !important; }
.gz-kursus-kontakt a, .gz-kursus-kontakt a:visited, .gz-kursus-kontakt a:focus { color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-kursus-kontakt a:hover { text-decoration: underline !important; text-underline-offset: 4px; text-decoration-color: var(--gz-syren) !important; }
.gz-kursus-svar { grid-column: 8 / span 5; margin: 0 !important; }
.gz-kursus-svar > div { padding: 22px 0 24px; border-top: 1px solid var(--gz-linje); margin: 0; }
.gz-kursus-svar > div:first-child { border-top: 0; padding-top: 8px; }
.gz-kursus-svar > div:last-child { padding-bottom: 0; }
.gz-kursus-svar dt { font-size: 17px; font-weight: 700; line-height: 1.4; margin: 0 0 8px; color: var(--gz-blomme); }
.gz-kursus-svar dd { font-size: 15px; line-height: 1.75; color: #5d5066; margin: 0; }
.gz-kursus-svar dt::before, .gz-kursus-svar dd::before { content: none !important; } /* temaet nummererer dd'er */

/* ---------- Temaaftener: lavendelb\0000e5nd i fuld bredde, der g\0000e5r direkte over i footeren ---------- */
.gz-kursus-tema {
  position: relative; isolation: isolate; margin-top: var(--gz-luft, 120px); padding: 88px 0 96px;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
}
.gz-kursus-tema::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-kursus-tema__tekst { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; }
.gz-kursus-tema__tekst > p { font-size: 16px; line-height: 1.75; color: #4e4258; max-width: 440px; margin: 0 0 26px !important; }
.gz-kursus-tema__liste { grid-column: 8 / span 5; }
/* Datoblad + navn, dato og status under hinanden. Listen viser kun ledige aftener, s\0000e5  status st\0000e5r ikke i egen kolonne */
.gz-kursus-aften {
  display: grid; grid-template-columns: 64px minmax(0, 1fr); column-gap: 20px; align-items: center;
  padding: 14px 0; border-top: 1px solid rgba(53, 40, 62, .12);
}
.gz-kursus-aften:first-child { border-top: 0; padding-top: 0; }
.gz-kursus-aften .gz-kursus-blad { width: 64px; min-height: 70px; }
.gz-kursus-aften .gz-kursus-blad__dag { font-size: 30px; }
.gz-kursus-aften__tema { display: block; font-family: var(--gz-serif); font-size: 22px; line-height: 1.2; letter-spacing: -0.01em; }
.gz-kursus-aften__dato { display: block; font-size: 14px; color: #61546a; margin-top: 2px; }
.gz-kursus-aften__dato::first-letter { text-transform: uppercase; }
.gz-kursus-aften__status { display: block; font-size: 13px; font-weight: 600; margin-top: 3px; }
.gz-kursus-aftener__tom { font-size: 15px; line-height: 1.7; color: #4e4258; }
/* Udsolgte temaaftener samlet i \0000e9n linje under listen (#61546a giver 5,8:1 p\0000e5  lavendel) */
.gz-kursus-aftener__udsolgt {
  font-size: 14px; line-height: 1.65; color: #61546a; margin: 16px 0 0 !important; padding-top: 14px; border-top: 1px solid rgba(53, 40, 62, .12);
}

/* Lavendelb\0000e5ndet st\0000e5r lige over footeren: temaets tomme bundmargen fjernes p\0000e5  denne side */
body.pageCategory385.gz-side-kategori .site-content .site-wrapper { padding-bottom: 0 !important; }
body.pageCategory385.gz-side-kategori .site-content .row { min-height: 0 !important; }
/* "Tilmeld dig nyhedsbrevet" hopper til nyhedsbrevet i footeren; den faste header m\0000e5  ikke d\0000e6kke overskriften */
body.pageCategory385 #nyhedsbrev { scroll-margin-top: calc(var(--gz-header-h, 91px) + 24px); }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-kursus-top__tekst { grid-column: 1 / span 7; }
  .gz-kursus-panel { padding: 30px 30px 28px; }
  .gz-kursus-afsnit__tekst { grid-column: 7 / span 6; }
  .gz-kursus-praktisk__kontakt { grid-column: 1 / span 5; }
  .gz-kursus-svar { grid-column: 7 / span 6; }
  .gz-kursus-tema__tekst { grid-column: 1 / span 5; }
  .gz-kursus-tema__liste { grid-column: 7 / span 6; }
}
@media (max-width: 900px) {
  .gz-kursus-side { padding-top: 22px; }
  .gz-kursus-side h1 { font-size: 40px !important; }
  .gz-kursus-praktisk__kontakt, .gz-kursus-svar { grid-column: 1 / -1; }
  .gz-kursus-svar { margin-top: 28px !important; }
  .gz-kursus-svar > div:first-child { border-top: 1px solid var(--gz-linje); padding-top: 22px; }
  .gz-kursus-tema { align-items: start; }
  .gz-kursus-tema__tekst, .gz-kursus-tema__liste { grid-column: 1 / -1; }
  .gz-kursus-tema__liste { margin-top: 34px; }
}

/* ---------- Mobil: \0000e9t spor. Panelet st\0000e5r i f\0000f8rste sk\0000e6rm, toppens billede er skjult ---------- */
@media (max-width: 767px) {
  /* Temaets container har 10 px margen p\0000e5  mobil; siden bruger 16 px som forsiden */
  .gz-kursus-side { padding: 22px 6px 0; }
  .gz-kursus-top { display: block; }
  .gz-kursus-top__billede { display: none; }
  .gz-kursus-intro { font-size: 15px; margin-bottom: 24px !important; }
  .gz-kursus-panel { padding: 26px 20px 24px; }
  .gz-kursus-panel h2 { font-size: 26px !important; }

  .gz-kursus-raekke { grid-template-columns: 62px minmax(0, 1fr); column-gap: 16px; padding: 18px 0; }
  .gz-kursus-blad { width: 62px; min-height: 70px; }
  .gz-kursus-blad__dag { font-size: 30px; }
  .gz-kursus-raekke h3 { font-size: 20px !important; }
  .gz-kursus-raekke__handling { margin-left: 0; width: 100%; }
  .gz-kursus-raekke__handling .gz-knap { flex: 1; justify-content: center; }

  .gz-kursus-afsnit { display: flex; flex-direction: column; gap: 24px; }
  .gz-kursus-afsnit__billede { min-height: 0; aspect-ratio: 4 / 3; }
  .gz-kursus-afsnit__tekst { padding: 0; }
  .gz-kursus-side .gz-kursus-afsnit h2, .gz-kursus-side .gz-kursus-praktisk h2, .gz-kursus-side .gz-kursus-tema h2 { font-size: 31px !important; }
  .gz-kursus-afsnit__tekst > p:not(.gz-kursus-hvornaar), .gz-kursus-punkter li, .gz-kursus-praktisk__kontakt > p:not(.gz-kursus-kontakt) { font-size: 15px; }

  .gz-kursus-tema { padding: 52px 0 60px; }
  .gz-kursus-aften { grid-template-columns: 56px minmax(0, 1fr); column-gap: 14px; }
  .gz-kursus-aften .gz-kursus-blad { width: 56px; min-height: 64px; }
  .gz-kursus-aften .gz-kursus-blad__dag { font-size: 26px; }
  .gz-kursus-aften__tema { font-size: 19px; }

  /* Trykflader p\0000e5  mindst ca. 44 px for de sm\0000e5  tekstlinks, uden at flytte understregningen */
  .gz-kursus-side .gz-tekstlink, .gz-kursus-side .gz-tekstknap, .gz-kursus-brod a, .gz-kursus-kontakt a { position: relative; }
  .gz-kursus-side .gz-tekstlink::after, .gz-kursus-side .gz-tekstknap::after, .gz-kursus-brod a::after, .gz-kursus-kontakt a::after {
    content: ''; position: absolute; inset: -12px -4px;
  }
  .gz-kursus-kontakt { row-gap: 14px; }
  .gz-kursus-brod a::after { inset: -14px -6px; }
}


/* ---- sider/maerker.css ---- */
/* Garnzonen 2026: m\0000e6rkesiderne (side-id maerker, seo/maerker.md).
   Markup: tema/udkast/sider/maerker-top.html (krogen under introen) og maerker.html (under varerne).
   JS: tema/assets/js/sider/maerker.js s\0000e6tter body.gz-maerke-side. Alt er scopet til .gz-maerke-* eller
   body.gz-maerke-side, s\0000e5  intet rammer andre kategorier.
   Samme greb som forside v4 og kategorisiderne: containeren flugter med logoet, 12-spalters gitter, --gz-luft mellem
   afsnittene, billede og tekst lige h\0000f8je, lavendelfladen nederst g\0000e5r direkte over i footeren.
   Sidens ene s\0000e6rlige element er serietabellen: ensartede produktfotos ned langs venstre kant, serienavnet i serif og
   tallene i faste kolonner, s\0000e5  man kan sammenligne garnerne p\0000e5  et \0000f8jeblik. Resten er stille. */

.gz-maerke-serier[hidden], .gz-maerke-om[hidden], .gz-maerke-band[hidden],
.gz-maerke-top__link[hidden], .gz-maerke-fibre[hidden], .gz-maerke-om__fakta[hidden] { display: none !important; }

/* ---------- Forhandler-linjen under introen ---------- */
.gz-maerke-top { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 32px; margin: 20px 0 0; font-family: var(--gz-sans); }
.gz-maerke-top__link {
  display: inline-flex; align-items: center; gap: 8px; min-height: 32px;
  font-size: 14px; font-weight: 600; color: var(--gz-blomme) !important;
  text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-decoration-thickness: 1px !important; text-underline-offset: 5px;
}
.gz-maerke-top__link:hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-maerke-top__link:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-maerke-top__link .gz-ikon { color: #80539b; }

/* ---------- F\0000e5  varer (1-3): lavendelfladen fylder resten af r\0000e6kken (kategori.js s\0000e6tter --gz-kat-spor = 4 - antal) ---------- */
.gz-maerke-panel[hidden], .gz-maerke-panel li[hidden] { display: none !important; }
.gz-maerke-panel {
  grid-column: span var(--gz-kat-spor, 1); align-self: stretch; box-sizing: border-box;
  display: flex; flex-direction: column; justify-content: center; align-items: flex-start;
  background: var(--gz-lavendel); border-radius: 4px; padding: 40px 48px; font-family: var(--gz-sans);
}
.gz-maerke-panel p {
  font-family: var(--gz-serif); font-size: 26px; line-height: 1.25; letter-spacing: -0.015em; color: var(--gz-blomme);
  margin: 0 0 22px; max-width: 420px;
}
/* Bredt panel (1-2 varer): st\0000f8rre tekst, s\0000e5  fladen ikke st\0000e5r tom */
@media (min-width: 1101px) {
  .gz-maerke-panel[style*="--gz-kat-spor: 2"] { padding: 48px 56px; }
  .gz-maerke-panel[style*="--gz-kat-spor: 2"] p { font-size: 30px; }
  .gz-maerke-panel[style*="--gz-kat-spor: 3"] { padding: 56px 72px; }
  .gz-maerke-panel[style*="--gz-kat-spor: 3"] p { font-size: 36px; line-height: 1.2; max-width: 600px; margin-bottom: 28px; }
}
.gz-maerke-panel__links { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.gz-maerke-panel__links li { list-style: none; margin: 0; padding: 0; }

/* ---------- F\0000e6lles for afsnittene under varerne ---------- */
.gz-maerke-serier, .gz-maerke-om, .gz-maerke-band { font-family: var(--gz-sans); color: var(--gz-blomme); }
.gz-maerke-serier, .gz-maerke-om { margin-top: var(--gz-luft); }
.gz-maerke-serier, .gz-maerke-om { scroll-margin-top: calc(var(--gz-header-h, 91px) + 24px); }
.gz-maerke-serier h2, .gz-maerke-om h2, .gz-maerke-band h2 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important;
  text-transform: none !important; margin: 0 0 14px !important;
}
.gz-maerke-serier a:not(.gz-maerke-serie), .gz-maerke-om a, .gz-maerke-band p a {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-underline-offset: 3px;
}
.gz-maerke-serier a:not(.gz-maerke-serie):hover, .gz-maerke-om a:hover, .gz-maerke-band p a:hover { text-decoration-color: var(--gz-blomme) !important; }

/* ---------- Sammenlign serierne ---------- */
.gz-maerke-serier__top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: end; margin: 0 0 36px;
}
.gz-maerke-serier__top h2 { grid-column: 1 / span 6; margin-bottom: 0 !important; }
.gz-maerke-serier__top p { grid-column: 8 / span 5; margin: 0; font-size: 15px; line-height: 1.7; color: #5d5066; }

.gz-maerke-tabel { width: 100%; border-collapse: collapse; margin: 0; font-size: 15px; line-height: 1.45; font-variant-numeric: tabular-nums; }
.gz-maerke-tabel thead th {
  text-align: left; vertical-align: bottom; padding: 0 20px 14px 0; border-bottom: 1px solid var(--gz-blomme);
  font: 600 13px/1.35 var(--gz-sans); color: var(--gz-blomme); letter-spacing: 0; text-transform: none;
}
.gz-maerke-tabel thead th span { display: block; font-weight: 500; color: var(--gz-daempet); }
.gz-maerke-tabel thead th:first-child { width: 31%; }
.gz-maerke-tabel thead th:nth-child(2) { width: 23%; }
.gz-maerke-tabel thead th:last-child, .gz-maerke-tabel td:last-child { padding-right: 0; text-align: right; }
.gz-maerke-tabel tbody th, .gz-maerke-tabel td {
  padding: 16px 20px 16px 0; border-bottom: 1px solid var(--gz-linje); text-align: left; vertical-align: middle;
  font-weight: 400; color: var(--gz-blomme); background: none;
}
.gz-maerke-tabel td { color: #4e4258; }
.gz-maerke-tabel td:last-child { font-weight: 650; color: var(--gz-blomme); white-space: nowrap; }
.gz-maerke-tom { color: #b3a9ba; }

.gz-maerke-serie { display: flex; align-items: center; gap: 18px; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-maerke-serie__foto { width: 64px; height: 64px; flex-shrink: 0; overflow: hidden; background: var(--gz-lys); }
/* Nogle af shoppens sm\0000e5  fotos har hvide eller gr\0000e5  kanter indbygget; en let besk\0000e6ring fjerner dem */
.gz-maerke-serie__foto img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.18); transition: transform .3s ease; }
.gz-maerke-serie:hover .gz-maerke-serie__foto img { transform: scale(1.26); }
.gz-maerke-serie__navn { display: flex; flex-direction: column; }
.gz-maerke-serie__maerke { font: 500 12px/1.3 var(--gz-sans); color: var(--gz-daempet); margin-bottom: 2px; }
.gz-maerke-serie__titel {
  font-family: var(--gz-serif); font-size: 21px; line-height: 1.15; letter-spacing: -0.01em;
  text-decoration: underline; text-decoration-color: transparent; text-decoration-thickness: 1px; text-underline-offset: 4px;
  transition: text-decoration-color .15s ease;
}
.gz-maerke-serie:hover .gz-maerke-serie__titel { text-decoration-color: var(--gz-blomme); }
.gz-maerke-serie:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-maerke-serie__tags { display: flex; flex-wrap: wrap; gap: 4px 6px; margin: 6px 0 0 82px; }
.gz-maerke-serie__tags span {
  display: inline-block; padding: 2px 8px; border-radius: 999px; background: var(--gz-lavendel);
  font: 600 11px/1.5 var(--gz-sans); color: #5d5066;
}
.gz-maerke-raekke--udsolgt .gz-maerke-serie__foto img { opacity: .55; }
.gz-maerke-raekke--udsolgt .gz-maerke-serie__tags span:first-child { background: var(--gz-hvid); box-shadow: inset 0 0 0 1px #cfc4d8; }

/* Begynderforklaringen under tabellen: tre spalter, der flugter med gitteret */
.gz-maerke-ordliste {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 32px 0 0; padding: 0;
}
.gz-maerke-ordliste > div { margin: 0; }
/* Temaet nummererer alle dd'er ("1. \002026") med en t\0000e6ller; ikke her */
.gz-maerke-ordliste dd::before, .gz-maerke-ordliste dt::before, .gz-maerke-om__fakta dd::before, .gz-maerke-om__fakta dt::before { content: none !important; }
.gz-maerke-ordliste dt { font: 650 14px/1.4 var(--gz-sans); color: var(--gz-blomme); margin: 0 0 4px; }
.gz-maerke-ordliste dd { font-size: 14px; line-height: 1.65; color: #5d5066; margin: 0; max-width: 340px; }
.gz-maerke-fibre { margin: 28px 0 0; padding-top: 24px; border-top: 1px solid var(--gz-linje); font-size: 15px; line-height: 1.7; color: #5d5066; }

/* ---------- Om m\0000e6rket: billede 6 spalter, tekst 5 spalter, lige h\0000f8je ---------- */
.gz-maerke-om { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch; }
.gz-maerke-om__billede { grid-column: 1 / span 6; position: relative; overflow: hidden; min-height: 440px; background: var(--gz-lys); }
.gz-maerke-om__billede img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 55%; }
.gz-maerke-om__tekst { grid-column: 8 / span 5; display: flex; flex-direction: column; justify-content: center; padding: 24px 0; }
.gz-maerke-om__historie p { font-size: 16px; line-height: 1.75; color: #5d5066; margin: 0 0 14px; max-width: 480px; }
.gz-maerke-om__historie p:last-child { margin-bottom: 0; }
.gz-maerke-om__fakta { display: flex; flex-wrap: wrap; gap: 14px 48px; margin: 28px 0 0; padding: 22px 0 0; border-top: 1px solid var(--gz-linje); }
.gz-maerke-om__fakta > div { margin: 0; }
.gz-maerke-om__fakta dt { font-size: 13px; line-height: 1.4; color: var(--gz-daempet); margin: 0 0 2px; font-weight: 500; }
.gz-maerke-om__fakta dd { font-family: var(--gz-serif); font-size: 22px; line-height: 1.2; color: var(--gz-blomme); margin: 0; }
/* Uden billede (garn.json kunne ikke hentes): teksten st\0000e5r alene i de f\0000f8rste spalter */
.gz-maerke-om--uden-foto .gz-maerke-om__billede { display: none; }
.gz-maerke-om--uden-foto .gz-maerke-om__tekst { grid-column: 1 / span 7; padding: 0; }

/* ---------- Butikken: lavendelfladen, helt ud til kanterne og direkte over i footeren ---------- */
.gz-maerke-band {
  position: relative; isolation: isolate; margin-top: var(--gz-luft);
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  padding: 88px 0 96px;
}
.gz-maerke-band::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-maerke-band__tekst { grid-column: 1 / span 6; }
.gz-maerke-band__tekst p { font-size: 16px; line-height: 1.7; color: #5d5066; margin: 0 0 12px; max-width: 520px; }
.gz-maerke-band__knapper { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 28px; margin-top: 28px; }
.gz-maerke-band__maerker { grid-column: 8 / span 5; justify-self: stretch; width: auto !important; max-width: none !important; float: none !important; margin: 0 !important; padding-top: 10px; }
.gz-maerke-band__maerker h3 {
  font-family: var(--gz-sans) !important; font-weight: 650 !important; font-size: 14px !important; line-height: 1.4 !important;
  letter-spacing: 0 !important; text-transform: none !important; color: var(--gz-blomme) !important; margin: 0 0 14px !important;
}
.gz-maerke-band__maerker ul { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
.gz-maerke-band__maerker li { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-maerke-band__maerker a {
  display: block; padding: 12px 0; font-family: var(--gz-serif); font-size: 20px; line-height: 1.25; letter-spacing: -0.01em;
  color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-maerke-band__maerker a:hover { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 5px; }
.gz-maerke-band__maerker a:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }

/* Lavendelfladen er det sidste p\0000e5  siden: ingen hvid stribe mellem den og footeren */
body.gz-maerke-side .gz-kat-bund { padding-bottom: 0; }
body.gz-maerke-side:has(.gz-maerke-band:not([hidden])) .site-content .site-wrapper { padding-bottom: 0 !important; }
body.gz-maerke-side:has(.gz-maerke-band:not([hidden])) .site-main-content { padding-bottom: 0 !important; margin-bottom: 0 !important; }

/* ---------- Mellemstore sk\0000e6rme ---------- */
@media (max-width: 1100px) {
  .gz-maerke-serier__top h2 { grid-column: 1 / span 7; }
  .gz-maerke-serier__top p { grid-column: 8 / span 5; }
  .gz-maerke-tabel thead th:first-child { width: 30%; }
  .gz-maerke-tabel tbody th, .gz-maerke-tabel td, .gz-maerke-tabel thead th { padding-right: 14px; }
  .gz-maerke-serie__titel { font-size: 19px; }
  .gz-maerke-om__tekst { grid-column: 7 / span 6; }
  .gz-maerke-band__tekst { grid-column: 1 / span 6; }
  .gz-maerke-band__maerker { grid-column: 8 / span 5; }
}

/* Panelet ved f\0000e5  varer: gitteret har 3 spalter p\0000e5  mellemstore sk\0000e6rme og 2 p\0000e5  mobil. Sp\0000e6ndet regnes om ud fra
   kategori.js' --gz-kat-spor (4 - antal), s\0000e5  r\0000e6kken bliver fyldt i stedet for at st\0000e5  med et hul. */
@media (max-width: 1100px) and (min-width: 768px) {
  .gz-maerke-panel { grid-column: 1 / -1; }                              /* 3 varer: egen r\0000e6kke */
  .gz-maerke-panel[style*="--gz-kat-spor: 3"] { grid-column: span 2; }   /* 1 vare */
  .gz-maerke-panel[style*="--gz-kat-spor: 2"] { grid-column: span 1; }   /* 2 varer */
}
@media (max-width: 767px) {
  .gz-maerke-panel { grid-column: span 1; padding: 22px 18px; }          /* 1 eller 3 varer: ved siden af det sidste kort */
  .gz-maerke-panel[style*="--gz-kat-spor: 2"] { grid-column: 1 / -1; }   /* 2 varer: egen r\0000e6kke */
  .gz-maerke-panel p { font-size: 17px; margin-bottom: 14px; }
  .gz-maerke-panel__links { gap: 10px; }
  .gz-maerke-panel__links .gz-tekstlink { font-size: 13px; }
}

/* Tabellen bliver til r\0000e6kker med etiketter, f\0000f8r kolonnerne bliver for smalle */
@media (max-width: 900px) {
  .gz-maerke-tabel thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .gz-maerke-tabel, .gz-maerke-tabel tbody { display: block; }
  /* F\0000f8rste spor er fotoets bredde, s\0000e5  fiber og tal flugter med serienavnet */
  .gz-maerke-tabel tr {
    display: grid; grid-template-columns: 64px repeat(4, minmax(0, 1fr)); column-gap: 18px; row-gap: 10px;
    padding: 18px 0; border-bottom: 1px solid var(--gz-linje);
  }
  .gz-maerke-tabel tr:first-child { border-top: 1px solid var(--gz-blomme); }
  .gz-maerke-tabel tbody th, .gz-maerke-tabel td { display: block; padding: 0 !important; border: 0; text-align: left !important; }
  .gz-maerke-tabel tbody th { grid-column: 1 / -1; }
  .gz-maerke-tabel td:nth-of-type(1) { grid-column: 2 / -1; }
  .gz-maerke-tabel td:nth-of-type(2) { grid-column: 2; }
  .gz-maerke-tabel td:nth-of-type(3) { grid-column: 3; }
  .gz-maerke-tabel td:nth-of-type(4) { grid-column: 4; }
  .gz-maerke-tabel td:nth-of-type(5) { grid-column: 5; }
  .gz-maerke-tabel td:nth-of-type(n+2)::before {
    content: attr(data-navn); display: block; font: 500 12px/1.4 var(--gz-sans); color: var(--gz-daempet); margin-bottom: 1px;
  }
  .gz-maerke-tabel td:last-child { font-weight: 650; }
}

@media (max-width: 767px) {
  .gz-maerke-top { gap: 4px 20px; margin-top: 16px; }
  .gz-maerke-top__link { min-height: 40px; font-size: 14px; }

  .gz-maerke-serier h2, .gz-maerke-om h2, .gz-maerke-band h2 { font-size: 31px !important; }
  .gz-maerke-serier__top { display: block; margin-bottom: 22px; }
  .gz-maerke-serier__top h2 { margin-bottom: 10px !important; }
  .gz-maerke-serier__top p { font-size: 14px; }

  /* Kompakte r\0000e6kker: navn og pris p\0000e5  f\0000f8rste linje, fiber p\0000e5  anden, l\0000f8bel\0000e6ngde/strikkefasthed/pind ved siden af
     hinanden p\0000e5  tredje. S\0000e5  fylder 12 serier ikke 3.000 px. */
  .gz-maerke-tabel { font-size: 13px; }
  .gz-maerke-tabel tr { grid-template-columns: 56px minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, .75fr); column-gap: 10px; row-gap: 8px; padding: 14px 0; }
  .gz-maerke-tabel tbody th { grid-column: 1 / 4; grid-row: 1; }
  .gz-maerke-tabel td:nth-of-type(5) { grid-column: 4; grid-row: 1; align-self: center; text-align: right !important; font-size: 14px; white-space: nowrap; }
  .gz-maerke-tabel td:nth-of-type(5)::before { content: none; }
  .gz-maerke-tabel td:nth-of-type(1) { grid-column: 2 / -1; grid-row: 2; font-size: 14px; }
  .gz-maerke-tabel td:nth-of-type(2) { grid-column: 2; grid-row: 3; }
  .gz-maerke-tabel td:nth-of-type(3) { grid-column: 3; grid-row: 3; }
  .gz-maerke-tabel td:nth-of-type(4) { grid-column: 4 / -1; grid-row: 3; }
  .gz-maerke-tabel td:nth-of-type(n+2)::before { font-size: 11px; }
  .gz-maerke-serie { gap: 14px; }
  .gz-maerke-serie__foto { width: 56px; height: 56px; }
  .gz-maerke-serie__titel { font-size: 19px; }
  .gz-maerke-serie__tags { margin-left: 70px; }

  .gz-maerke-ordliste { grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 24px; }
  .gz-maerke-ordliste dd { max-width: none; }
  .gz-maerke-fibre { font-size: 14px; }

  /* \0000c9t spor: billedet, s\0000e5  teksten (som forsidens afsnit) */
  .gz-maerke-om { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-maerke-om__billede { grid-column: 1 !important; min-height: 0; aspect-ratio: 4 / 3; }
  .gz-maerke-om__tekst, .gz-maerke-om--uden-foto .gz-maerke-om__tekst { grid-column: 1 !important; padding: 0; }
  .gz-maerke-om__historie p { font-size: 15px; }
  .gz-maerke-om__fakta { gap: 12px 36px; margin-top: 22px; padding-top: 18px; }
  .gz-maerke-om__fakta dd { font-size: 20px; }

  .gz-maerke-band { grid-template-columns: minmax(0, 1fr); row-gap: 36px; padding: 52px 0 60px; }
  .gz-maerke-band__tekst, .gz-maerke-band__maerker { grid-column: 1 !important; }
  .gz-maerke-band__tekst p { font-size: 15px; }
  .gz-maerke-band__maerker { padding-top: 0; }
  .gz-maerke-band__maerker a { font-size: 18px; padding: 11px 0; }
}

@media (prefers-reduced-motion: reduce) {
  .gz-maerke-serie__foto img, .gz-maerke-serie__titel { transition: none; }
  .gz-maerke-serie:hover .gz-maerke-serie__foto img { transform: scale(1.18); }
}


/* ---- sider/ny-alpaca-garn.css ---- */
/* Alpaca garn (/shop/79-alpaca-garn/). Markup: tema/udkast/sider/ny-alpaca-garn.html.
   Alt er scopet til .gz-ny-alpaca. F\0000f8lger forside v4: indhold i --gz-bredde, 12-spalters gitter,
   --gz-luft mellem sektionerne, hvid grund med \0000e9n lys og \0000e9n lavendel flade.
   Sidens eget kendetegn: alpaca-andelen som et b\0000e5nd p\0000e5  hvert garn (blomme = alpaca, syren = de andre fibre). */

.gz-ny-alpaca {
  --gz-ny-alpaca-stop: calc(var(--gz-header-h, 91px) + var(--gz-nav-h, 0px) + 16px); /* under den sticky header og menu */
  font-family: var(--gz-sans); color: var(--gz-blomme); padding-bottom: var(--gz-luft);
}
.gz-ny-alpaca h1, .gz-ny-alpaca h2, .gz-ny-alpaca h3 { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important; }
.gz-ny-alpaca p { margin: 0; text-wrap: pretty; }
.gz-ny-alpaca h1, .gz-ny-alpaca h2, .gz-ny-alpaca h3 { text-wrap: balance; }
/* Grundreglen for H2. St\0000e5r f\0000f8r de sektionsvise H2-regler, s\0000e5  de kan rette st\0000f8rrelse og luft (samme specificitet) */
.gz-ny-alpaca h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 !important; }
.gz-ny-alpaca ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-ny-alpaca li { list-style: none; margin: 0; padding: 0; }
/* F\0000e6lles spalte: flugter med logo og menu */
.gz-ny-alpaca__top, .gz-ny-alpaca__garn, .gz-ny-alpaca__sammenlign, .gz-ny-alpaca__om,
.gz-ny-alpaca__vaelg, .gz-ny-alpaca__baby, .gz-ny-alpaca__faq {
  max-width: var(--gz-bredde); box-sizing: border-box; margin-left: auto; margin-right: auto; padding-left: 10px; padding-right: 10px;
  scroll-margin-top: var(--gz-ny-alpaca-stop);
}
/* Links i br\0000f8dtekst */
.gz-ny-alpaca__om-tekst a, .gz-ny-alpaca__vaelgliste p:not(.gz-ny-alpaca__garnet) a, .gz-ny-alpaca__faq-top a,
.gz-ny-alpaca__sektionstop a, .gz-ny-alpaca__svar a {
  color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren);
  text-decoration-thickness: 1px; text-underline-offset: 3px;
}
.gz-ny-alpaca__om-tekst a:hover, .gz-ny-alpaca__vaelgliste p a:hover, .gz-ny-alpaca__faq-top a:hover,
.gz-ny-alpaca__sektionstop a:hover, .gz-ny-alpaca__svar a:hover { text-decoration-color: var(--gz-blomme); }

/* ---------- Toppen: br\0000f8dkrumme, H1 og intro. Springlinks i h\0000f8jre side ---------- */
/* 55 px = garnsidens 34 px + kategorirammens 21 px, s\0000e5  br\0000f8dkrumme og H1 st\0000e5r samme sted som p\0000e5  /shop/132-garn/ */
.gz-ny-alpaca__top { padding-top: 55px; }
.gz-ny-alpaca__topgitter { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: end; }
.gz-ny-alpaca__intro { grid-column: 1 / span 7; }
.gz-ny-alpaca h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 14px !important; }
.gz-ny-alpaca__intro p { font-size: 17px; line-height: 1.7; color: #5d5066; max-width: 640px; }
/* DanDomains tema centrerer alle nav-elementer (margin: auto), s\0000e5  boksen nulstilles og flugter med gitterets h\0000f8jrekant */
.gz-ny-alpaca__paasiden { grid-column: 9 / span 4; padding-bottom: 4px; margin: 0 !important; }
.gz-ny-alpaca__paasiden > p { font-size: 13px; font-weight: 700; margin-bottom: 6px; }
.gz-ny-alpaca__paasiden li { border-top: 1px solid var(--gz-linje); }
.gz-ny-alpaca__paasiden a { display: block; padding: 8px 0; font-size: 14px; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-ny-alpaca__paasiden a:hover { color: #80539b !important; }

/* ---------- Filterknapper og gitter ---------- */
.gz-ny-alpaca__vaerktoej { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; margin-top: 36px; }
.gz-ny-alpaca__valg { display: flex; flex-wrap: wrap; gap: 8px; }
.gz-ny-alpaca__valg button {
  appearance: none; display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 16px; cursor: pointer;
  border: 1px solid #cfc4d8; border-radius: 999px; background: var(--gz-hvid); color: var(--gz-blomme);
  font: 600 13px var(--gz-sans); white-space: nowrap; transition: border-color .15s ease, background-color .15s ease;
}
.gz-ny-alpaca__valg button span { font-weight: 500; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-ny-alpaca__valg button:hover { border-color: var(--gz-blomme); }
.gz-ny-alpaca__valg button[aria-pressed="true"] { background: var(--gz-blomme); border-color: var(--gz-blomme); color: #fff; }
.gz-ny-alpaca__valg button[aria-pressed="true"] span { color: var(--gz-syren); }
.gz-ny-alpaca__valg button:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-ny-alpaca__valg button[hidden] { display: none; }
.gz-ny-alpaca__valg button:disabled { cursor: default; opacity: .55; }
.gz-ny-alpaca__antal { font-size: 14px; color: var(--gz-daempet); white-space: nowrap; font-variant-numeric: tabular-nums; }

.gz-ny-alpaca .gz-ny-alpaca__gitter { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 48px 24px; margin-top: 28px; }
/* Producenternes billeder (filnavnet er ikke IMG_\002026, klassen s\0000e6ttes af JS): samme lyse flade som Mariannes fotos,
   og n\0000f8glerne st\0000e5r frit med luft om sig i stedet for at fylde hele feltet. Midlertidigt, indtil der kommer egne fotos. */
.gz-ny-alpaca__kort .gz-produkt__foto { background: var(--gz-lys); isolation: isolate; }
.gz-ny-alpaca__kort--producent .gz-produkt__foto img {
  inset: 12%; width: 76%; height: 76%; object-fit: contain; mix-blend-mode: multiply;
}
/* Prislinjen st\0000e5r altid i bunden af kortet, s\0000e5  den flugter p\0000e5  tv\0000e6rs af r\0000e6kken */
.gz-ny-alpaca__kort .gz-garnkort__bund { margin-top: auto; padding-top: 10px; }
/* Alpaca-andelen p\0000e5  kortet: en m\0000e5ler ved siden af teksten, hele bredden = 100 % af garnets fibre */
.gz-ny-alpaca__fiber { display: flex; align-items: flex-start; gap: 10px; margin-top: 8px; }
.gz-ny-alpaca__baand { display: flex; gap: 2px; flex: 0 0 140px; width: 140px; height: 5px; }
.gz-ny-alpaca__baand > span { flex-basis: 0; min-width: 3px; border-radius: 3px; background: var(--gz-syren); }
.gz-ny-alpaca__baand > span.er-alpaca { background: var(--gz-blomme); }
.gz-ny-alpaca__fiber .gz-ny-alpaca__baand { flex: 0 0 72px; width: 72px; height: 4px; gap: 0; margin-top: 7px; border-radius: 2px; overflow: hidden; }
.gz-ny-alpaca__fiber .gz-ny-alpaca__baand > span { border-radius: 0; min-width: 2px; }
.gz-ny-alpaca__fibertekst { font-size: 12px; line-height: 1.45; color: #61546a; }
.gz-ny-alpaca__fibertekst strong { font-weight: 700; color: var(--gz-blomme); }
.gz-ny-alpaca__kort .gz-spec { margin-top: 4px; }

/* ---------- Hvad er alpaca: billede og tekst lige h\0000f8je (billedet str\0000e6kker sig efter teksten) ---------- */
.gz-ny-alpaca__om {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch; margin-top: var(--gz-luft);
}
/* Stien er relativ til denne fil (css/sider/), ligesom i de andre siders CSS. L\0000e6gges CSS'en sammen med
   garnzonen.css p\0000e5  DanDomain, skal den v\0000e6re ../img/forside-hero.jpg (seo/ny-alpaca-garn.md, afsnit 6). */
.gz-ny-alpaca__om-billede {
  grid-column: 1 / span 6; min-height: 520px; border-radius: 4px;
  background: var(--gz-lys) url(../img/st-side-alpaca.jpg) 50% 50% / cover no-repeat;
}
.gz-ny-alpaca__om-tekst { grid-column: 8 / span 5; align-self: center; padding: 24px 0; }
.gz-ny-alpaca__om-tekst h2 { font-size: 46px !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; margin-bottom: 22px !important; }
.gz-ny-alpaca__om-tekst p { font-size: 16px; line-height: 1.75; color: #5d5066; }
.gz-ny-alpaca__om-tekst p + p { margin-top: 16px; }

/* ---------- Hvilket skal jeg v\0000e6lge: seks valg i tre spalter, hvert med en lille miniature ved overskriften ----------
   Miniaturen er 88 px, fordi de samme fotos st\0000e5r i fuld st\0000f8rrelse i gitteret lige over. */
.gz-ny-alpaca__vaelg { margin-top: var(--gz-luft); }
.gz-ny-alpaca__sektionstop { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 36px; }
.gz-ny-alpaca__sektionstop p { max-width: 440px; font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-ny-alpaca__vaelgliste { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 24px; }
.gz-ny-alpaca__vaelgliste li {
  display: grid; grid-template-columns: 88px minmax(0, 1fr); grid-template-rows: auto auto 1fr;
  grid-template-areas: "foto titel" "tekst tekst" "garn garn"; column-gap: 18px; align-items: center;
}
.gz-ny-alpaca__vaelgfoto {
  grid-area: foto; display: block; width: 88px; height: 88px; overflow: hidden; border-radius: 4px;
  background: var(--gz-lys); isolation: isolate; margin-bottom: 18px;
}
.gz-ny-alpaca__vaelgfoto img { display: block; width: 100%; height: 100%; object-fit: cover; }
.gz-ny-alpaca__vaelgfoto img.er-producent { box-sizing: border-box; padding: 12%; object-fit: contain; mix-blend-mode: multiply; }
.gz-ny-alpaca__vaelgliste h3 {
  grid-area: titel; align-self: center; font-size: 24px !important; line-height: 1.2 !important;
  letter-spacing: -0.015em !important; margin: 0 0 18px !important;
}
.gz-ny-alpaca__vaelgliste li > p:not(.gz-ny-alpaca__garnet) { grid-area: tekst; align-self: start; }
.gz-ny-alpaca__vaelgliste p { font-size: 15px; line-height: 1.7; color: #5d5066; }
/* Garnlinkene st\0000e5r i bunden, s\0000e5  de flugter p\0000e5  tv\0000e6rs af r\0000e6kken */
.gz-ny-alpaca__garnet { grid-area: garn; align-self: end; display: flex; flex-wrap: wrap; gap: 4px 18px; padding-top: 12px; }
.gz-ny-alpaca__garnet a {
  display: inline-flex; align-items: center; min-height: 32px;
  font-size: 13px; font-weight: 650; color: var(--gz-blomme) !important; text-decoration: underline !important;
  text-decoration-color: var(--gz-syren) !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px;
}
.gz-ny-alpaca__garnet a:hover { text-decoration-color: var(--gz-blomme) !important; }

/* ---------- Sammenligningstabellen p\0000e5  en lys flade i fuld bredde ---------- */
.gz-ny-alpaca__sammenlign { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding-top: 96px; padding-bottom: 96px; }
.gz-ny-alpaca__sammenlign::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lys);
  box-shadow: 0 0 0 100vmax var(--gz-lys); clip-path: inset(0 -100vmax);
}
.gz-ny-alpaca__tabelboks { overflow-x: auto; background: var(--gz-hvid); border-radius: 4px; scrollbar-width: thin; }
.gz-ny-alpaca__tabelboks:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
/* H\0000f8jre kant fader ud, s\0000e5  l\0000e6nge der er flere kolonner at stryge hen til (klassen s\0000e6ttes af JS) */
.gz-ny-alpaca__tabelboks.har-mere {
  -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 64px), transparent);
  mask-image: linear-gradient(to right, #000 calc(100% - 64px), transparent);
}
.gz-ny-alpaca__tabel { width: 100% !important; border-collapse: collapse; margin: 0 !important; font-size: 14px; line-height: 1.45; }
.gz-ny-alpaca__tabel th, .gz-ny-alpaca__tabel td {
  padding: 16px 18px !important; border: 0 !important; border-bottom: 1px solid var(--gz-linje) !important;
  background: var(--gz-hvid) !important; text-align: left !important; vertical-align: middle; color: var(--gz-blomme);
}
.gz-ny-alpaca__tabel tbody tr:last-child > * { border-bottom: 0 !important; }
.gz-ny-alpaca__tabel td { font-variant-numeric: tabular-nums; white-space: nowrap; }
.gz-ny-alpaca__tabel thead th { font-size: 12px; font-weight: 650; color: var(--gz-daempet); white-space: nowrap; }
/* Hele cellen er trykfladen (mindst 44 px h\0000f8j) */
.gz-ny-alpaca__tabel thead th:has(button) { padding: 0 !important; }
.gz-ny-alpaca__tabel thead button {
  appearance: none; background: none; border: 0; cursor: pointer; display: flex; align-items: center; gap: 6px;
  width: 100%; min-height: 50px; padding: 14px 18px; box-sizing: border-box;
  font: inherit; color: inherit; text-align: left; white-space: nowrap;
}
.gz-ny-alpaca__tabel thead button small { font-size: 11px; font-weight: 500; }
/* Alle kolonner kan sorteres: en d\0000e6mpet dobbeltpil p\0000e5  dem alle, og en tydelig pil i retningen p\0000e5  den aktive */
.gz-ny-alpaca__tabel thead button::after {
  content: ''; flex-shrink: 0; width: 8px; height: 12px; opacity: .35; transition: opacity .15s ease; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 4.5 4 1.5l3 3M1 7.5l3 3 3-3' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 4.5 4 1.5l3 3M1 7.5l3 3 3-3' fill='none' stroke='%23000' stroke-width='1.4'/%3E%3C/svg%3E") center / contain no-repeat;
}
.gz-ny-alpaca__tabel thead button:hover { color: var(--gz-blomme); }
.gz-ny-alpaca__tabel thead button:hover::after { opacity: .7; }
.gz-ny-alpaca__tabel thead button:focus-visible { outline: 2px solid #80539b; outline-offset: -2px; }
.gz-ny-alpaca__tabel th[aria-sort] { color: var(--gz-blomme); }
/* Aktiv kolonne: kun den pil, der viser retningen (nedad = faldende, opad = stigende) */
.gz-ny-alpaca__tabel th[aria-sort] button::after {
  opacity: 1;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 4.5l3 3 3-3' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 4.5l3 3 3-3' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
}
.gz-ny-alpaca__tabel th[aria-sort="ascending"] button::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 7.5l3-3 3 3' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 12'%3E%3Cpath d='M1 7.5l3-3 3 3' fill='none' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
}
.gz-ny-alpaca__tabel tbody th { font-size: 15px; font-weight: 650; white-space: nowrap; }
.gz-ny-alpaca__tabel tbody th a { color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-ny-alpaca__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px; }
.gz-ny-alpaca__tabel tbody th a span { display: block; font-size: 12px; font-weight: 500; color: var(--gz-daempet); }
.gz-ny-alpaca__tabel tbody tr:hover > * { background: #fcfbfd !important; }
.gz-ny-alpaca__tabel td .gz-ny-alpaca__baand { margin: 0 0 7px; }
.gz-ny-alpaca__tabel td .gz-ny-alpaca__fibertekst { display: block; white-space: normal; min-width: 190px; max-width: 250px; }
/* P\0000e5  brede sk\0000e6rme er der plads til fiberteksten p\0000e5  \0000e9n linje, s\0000e5  alle r\0000e6kker f\0000e5r samme h\0000f8jde */
@media (min-width: 1200px) { .gz-ny-alpaca__tabel td .gz-ny-alpaca__fibertekst { white-space: nowrap; max-width: none; } }
.gz-ny-alpaca__tabel .gz-ny-alpaca__k-pr100 { font-weight: 650; }
.gz-ny-alpaca__note { font-size: 13px; color: var(--gz-daempet); margin-top: 16px !important; }
.gz-ny-alpaca__stryg { display: none; }

/* ---------- Baby alpaca p\0000e5  en lavendel flade i fuld bredde ---------- */
.gz-ny-alpaca__baby {
  position: relative; isolation: isolate; margin-top: var(--gz-luft); padding-top: 96px; padding-bottom: 96px;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
}
.gz-ny-alpaca__baby::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-ny-alpaca__baby-tekst { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; }
.gz-ny-alpaca__baby-tekst h2 { margin-bottom: 18px !important; }
.gz-ny-alpaca__baby-tekst p { font-size: 16px; line-height: 1.75; color: #5d5066; margin-bottom: 14px; }
.gz-ny-alpaca__baby-tekst .gz-tekstlink { margin-top: 10px; border-bottom-color: var(--gz-blomme); }
.gz-ny-alpaca__babyliste { grid-column: 7 / span 6; }
.gz-ny-alpaca__babyliste li { border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-alpaca__babyliste li:last-child { border-bottom: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-alpaca__babyliste a {
  display: grid; grid-template-columns: 88px minmax(0, 1fr) auto; grid-template-rows: auto auto; column-gap: 22px; row-gap: 3px;
  align-items: center; padding: 14px 0; color: var(--gz-blomme) !important; text-decoration: none !important;
}
/* Alle fire miniaturer i den samme lyse 88 px-ramme. Producenternes billeder st\0000e5r med luft om sig ligesom i gitteret */
.gz-ny-alpaca__babyfoto {
  grid-row: 1 / span 2; display: block; width: 88px; height: 88px; overflow: hidden; border-radius: 4px;
  background: var(--gz-lys); isolation: isolate;
}
.gz-ny-alpaca__babyfoto img { display: block; width: 100%; height: 100%; object-fit: cover; }
.gz-ny-alpaca__babyfoto img.er-producent { box-sizing: border-box; padding: 12%; object-fit: contain; mix-blend-mode: multiply; }
.gz-ny-alpaca__babynavn { grid-column: 2; align-self: end; font-family: var(--gz-serif); font-size: 21px; letter-spacing: -0.015em; line-height: 1.2; }
.gz-ny-alpaca__babynavn em { font: 400 12px var(--gz-sans); letter-spacing: 0; color: var(--gz-daempet); display: block; margin-bottom: 2px; }
.gz-ny-alpaca__babyfiber { grid-column: 2; align-self: start; font-size: 13px; line-height: 1.5; color: #5d5066; }
.gz-ny-alpaca__babypind { grid-column: 3; grid-row: 1 / span 2; font-size: 13px; color: var(--gz-daempet); white-space: nowrap; }
.gz-ny-alpaca__babyliste a:hover .gz-ny-alpaca__babynavn { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.gz-ny-alpaca__babyliste a:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }

/* ---------- Sp\0000f8rgsm\0000e5l: overskrift til venstre, svarene til h\0000f8jre ---------- */
.gz-ny-alpaca__faq {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  margin-top: var(--gz-luft);
}
.gz-ny-alpaca__faq-top { grid-column: 1 / span 4; }
.gz-ny-alpaca__faq-top h2 { margin-bottom: 16px !important; }
.gz-ny-alpaca__faq-top p { font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-ny-alpaca__faq-liste { grid-column: 6 / span 7; }
.gz-ny-alpaca__faq-liste details { border-top: 1px solid var(--gz-linje); }
.gz-ny-alpaca__faq-liste details:last-child { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-alpaca__faq-liste summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0; cursor: pointer; list-style: none; }
.gz-ny-alpaca__faq-liste summary::-webkit-details-marker { display: none; }
.gz-ny-alpaca__faq-liste summary::after {
  content: ''; flex-shrink: 0; width: 8px; height: 8px; margin-right: 4px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-ny-alpaca__faq-liste details[open] > summary::after { transform: rotate(-135deg) translateY(-1px); }
.gz-ny-alpaca__faq-liste summary:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }
.gz-ny-alpaca__faq-liste h3 { font-size: 22px !important; line-height: 1.25 !important; letter-spacing: -0.015em !important; margin: 0 !important; }
.gz-ny-alpaca__svar p { font-size: 15px; line-height: 1.75; color: #5d5066; max-width: 620px; padding-bottom: 24px; }
/* Overskrift og telefonnummer f\0000f8lger med ned langs sp\0000f8rgsm\0000e5lene */
@media (min-width: 1101px) {
  .gz-ny-alpaca__faq-top { position: sticky; top: calc(var(--gz-ny-alpaca-stop) + 8px); }
}

/* ---------- Mellemstore sk\0000e6rme ---------- */
@media (max-width: 1100px) {
  .gz-ny-alpaca__intro { grid-column: 1 / span 8; }
  .gz-ny-alpaca__paasiden { grid-column: 10 / span 3; }
  .gz-ny-alpaca .gz-ny-alpaca__gitter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gz-ny-alpaca__vaerktoej { flex-direction: column; align-items: flex-start; }
  .gz-ny-alpaca__vaelgliste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-ny-alpaca__om-tekst { grid-column: 7 / span 6; }
  .gz-ny-alpaca__om-tekst h2 { font-size: 38px !important; }
  .gz-ny-alpaca__baby-tekst { grid-column: 1 / span 6; padding-right: 16px; }
  .gz-ny-alpaca__babyliste { grid-column: 7 / span 6; }
  .gz-ny-alpaca__faq-top { grid-column: 1 / span 12; margin-bottom: 24px; }
  .gz-ny-alpaca__faq-liste { grid-column: 1 / span 12; }
}
@media (max-width: 900px) {
  .gz-ny-alpaca__paasiden { display: none; }
  .gz-ny-alpaca__intro { grid-column: 1 / -1; }
  .gz-ny-alpaca__baby-tekst, .gz-ny-alpaca__babyliste { grid-column: 1 / -1; padding-right: 0; }
  .gz-ny-alpaca__baby-tekst { padding: 0 0 32px; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  .gz-ny-alpaca__top, .gz-ny-alpaca__garn, .gz-ny-alpaca__sammenlign, .gz-ny-alpaca__om,
  .gz-ny-alpaca__vaelg, .gz-ny-alpaca__baby, .gz-ny-alpaca__faq { padding-left: 16px; padding-right: 16px; }
  /* 43 px = garnsidens 22 px + kategorirammens 21 px */
  .gz-ny-alpaca__top { padding-top: 43px; }
  .gz-ny-alpaca h1 { font-size: 40px !important; margin-bottom: 10px !important; }
  .gz-ny-alpaca__intro p { font-size: 15px; line-height: 1.65; }
  .gz-ny-alpaca h2, .gz-ny-alpaca__om-tekst h2 { font-size: 31px !important; }

  /* Filterknapperne kan swipes vandret; selve siden scroller ikke */
  .gz-ny-alpaca__vaerktoej { margin-top: 20px; gap: 12px; }
  .gz-ny-alpaca__valg {
    flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; width: calc(100% + 32px); margin: 0 -16px; padding: 0 16px 2px;
  }
  .gz-ny-alpaca__valg::-webkit-scrollbar { display: none; }
  .gz-ny-alpaca__valg button { height: 38px; padding: 0 14px; flex-shrink: 0; }
  .gz-ny-alpaca__antal { font-size: 13px; }
  .gz-ny-alpaca .gz-ny-alpaca__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 14px; margin-top: 18px; }
  .gz-ny-alpaca__fiber { flex-direction: column; gap: 5px; }
  .gz-ny-alpaca__fiber .gz-ny-alpaca__baand { flex: none; margin-top: 0; }
  .gz-ny-alpaca__fibertekst { font-size: 11px; }

  .gz-ny-alpaca__sammenlign { padding-top: 64px; padding-bottom: 64px; }
  .gz-ny-alpaca__sektionstop { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 24px; }
  .gz-ny-alpaca__stryg { display: block; font-size: 13px; color: var(--gz-daempet); margin-bottom: 10px !important; }
  .gz-ny-alpaca__tabel { font-size: 13px; }
  .gz-ny-alpaca__tabel th, .gz-ny-alpaca__tabel td { padding: 14px 14px !important; }
  .gz-ny-alpaca__tabel thead th:has(button) { padding: 0 !important; }
  .gz-ny-alpaca__tabel thead button { padding: 14px; min-height: 48px; }
  /* Garnets navn bliver st\0000e5ende, n\0000e5r tabellen swipes */
  .gz-ny-alpaca__tabel tbody th, .gz-ny-alpaca__tabel thead th:first-child { position: sticky; left: 0; z-index: 1; box-shadow: 1px 0 0 var(--gz-linje); }
  .gz-ny-alpaca__tabel tbody th { font-size: 14px; }
  /* Fiberteksten st\0000e5r p\0000e5  \0000e9n linje, s\0000e5  alle r\0000e6kker er lige h\0000f8je. Kolonnen ligger uden for sk\0000e6rmen p\0000e5  mobil
     (pris pr. 100 m og pind kommer f\0000f8rst), s\0000e5  den bredere kolonne koster intet */
  .gz-ny-alpaca__tabel td .gz-ny-alpaca__baand { width: 64px; flex-basis: 64px; }
  .gz-ny-alpaca__tabel td .gz-ny-alpaca__fibertekst { min-width: 0; max-width: none; white-space: nowrap; }

  .gz-ny-alpaca__om { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-ny-alpaca__om-billede { grid-column: 1; min-height: 0; aspect-ratio: 4 / 3; background-position: 50% 62%; }
  .gz-ny-alpaca__om-tekst { grid-column: 1; padding: 0; }
  .gz-ny-alpaca__om-tekst h2 { margin-bottom: 14px !important; }
  .gz-ny-alpaca__om-tekst p { font-size: 15px; }

  /* Valgene i \0000e9n spalte (miniature og overskrift som p\0000e5  desktop) */
  .gz-ny-alpaca__vaelgliste { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .gz-ny-alpaca__vaelgliste li { column-gap: 16px; }
  .gz-ny-alpaca__vaelgfoto { margin-bottom: 14px; }
  .gz-ny-alpaca__vaelgliste h3 { font-size: 22px !important; margin: 0 0 14px !important; }
  /* Garnlinkene er selvst\0000e6ndige trykflader: mindst 44 px h\0000f8je */
  .gz-ny-alpaca__garnet { gap: 0 18px; padding-top: 4px; }
  .gz-ny-alpaca__garnet a { min-height: 44px; }
  .gz-ny-alpaca__baby-tekst .gz-tekstlink {
    display: inline-flex; align-items: center; min-height: 44px; padding-bottom: 0; border-bottom: 0;
    text-decoration: underline !important; text-decoration-color: var(--gz-blomme) !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px;
  }

  .gz-ny-alpaca__baby { padding-top: 64px; padding-bottom: 64px; }
  .gz-ny-alpaca__baby-tekst p { font-size: 15px; }
  .gz-ny-alpaca__babyliste a { grid-template-columns: 72px minmax(0, 1fr); column-gap: 16px; }
  .gz-ny-alpaca__babyfoto { width: 72px; height: 72px; grid-row: 1 / span 3; }
  .gz-ny-alpaca__babynavn { font-size: 19px; }
  .gz-ny-alpaca__babypind { grid-column: 2; grid-row: 3; }

  .gz-ny-alpaca__faq-liste summary { padding: 18px 0; }
  .gz-ny-alpaca__faq-liste h3 { font-size: 19px !important; }
  .gz-ny-alpaca__svar p { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-ny-alpaca__faq-liste summary::after, .gz-ny-alpaca__valg button, .gz-ny-alpaca__vaelgfoto img { transition: none; }
}


/* ---- sider/ny-bomuldsgarn.css ---- */
/* Bomuldsgarn (/shop/80-bomuldsgarn/, kategori 80). Markup: tema/udkast/sider/ny-bomuldsgarn.html. SEO: seo/ny-bomuldsgarn.md.
   Alt er scopet til .gz-ny-bomuld (sidens <main>), s\0000e5  intet l\0000e6kker over p\0000e5  andre sider.
   Genbruger forsidens og garnsidens komponenter uden at \0000e6ndre dem: .gz-brod, .gz-garnkort, .gz-produkt__*, .gz-spec,
   .gz-farveprikker, .gz-maerkat, .gz-tekstlink, .gz-skjult.
   Rytmen f\0000f8lger forside v4 og de andre fibersider: samme spalte som logo og menu (--gz-bredde), 12-spalters gitter
   og --gz-luft mellem sektionerne. Sidens ene kendetegn er tegningen af 8/4 og 8/8. Resten er roligt. */

.gz-ny-bomuld {
  --gzb-tekst: #5d5066;
  --gzb-ramme: #cfc4d8;
  /* Samme gr\0000e5  som shoppens studiefotos (m\0000e5lt i fotoenes hj\0000f8rner: #c4c7c6 \0000f8verst til #e6e9e6 nederst).
     Hvide packshots ganges ind i den (img[data-hvid]), s\0000e5  alle garnkort st\0000e5r p\0000e5  samme flise */
  --gzb-flise: #e1e3e2;
  display: block; max-width: var(--gz-bredde); box-sizing: border-box; margin: 0 auto;
  /* 55 px som garnsiden og de andre fibersider, s\0000e5  br\0000f8dkrumme og H1 st\0000e5r samme sted, n\0000e5r man klikker rundt */
  padding: 55px 10px var(--gz-luft);
  font-family: var(--gz-sans); color: var(--gz-blomme);
}
.gz-ny-bomuld *, .gz-ny-bomuld *::before, .gz-ny-bomuld *::after { box-sizing: border-box; }
/* Temaet centrerer gitterets b\0000f8rn (justify-items). Vores gitre str\0000e6kker dem ud i deres spalter */
.gz-ny-bomuld, .gz-ny-bomuld section, .gz-ny-bomuld header, .gz-ny-bomuld aside, .gz-ny-bomuld div { justify-items: stretch; }
.gz-ny-bomuld p { margin: 0; }
.gz-ny-bomuld h1, .gz-ny-bomuld h2, .gz-ny-bomuld h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important;
}
.gz-ny-bomuld h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 14px !important; }
.gz-ny-bomuld h3 { font-size: 23px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 10px !important; }
/* Links i br\0000f8dtekst: understreget med syren, som tekstlinket */
.gz-ny-bomuld p a, .gz-ny-bomuld dd a, .gz-ny-bomuld__mere a {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-decoration-thickness: 1px !important; text-underline-offset: 3px; transition: text-decoration-color .15s ease;
}
.gz-ny-bomuld p a:hover, .gz-ny-bomuld dd a:hover, .gz-ny-bomuld__mere a:hover { color: var(--gz-blomme) !important; text-decoration-color: var(--gz-blomme) !important; }
.gz-ny-bomuld a:focus-visible, .gz-ny-bomuld button:focus-visible, .gz-ny-bomuld summary:focus-visible, .gz-ny-bomuld select:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; border-radius: 2px; }
/* Temaet s\0000e6tter "1." foran alle dd (counter(definitions)) og punkter foran li */
.gz-ny-bomuld dd::before, .gz-ny-bomuld dt::before { content: none !important; }
.gz-ny-bomuld ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-ny-bomuld li { list-style: none; margin: 0; padding: 0; }
.gz-ny-bomuld button { font-family: var(--gz-sans); text-transform: none; letter-spacing: 0; }

/* Fiberb\0000e5ndet: bomuldsdelen i blomme, de andre fibre i lysere toner, i forhold til procenterne */
.gz-ny-bomuld__baand { display: flex; gap: 2px; height: 4px; border-radius: 2px; overflow: hidden; }
.gz-ny-bomuld__baand > span { display: block; min-width: 4px; background: var(--gz-syren); }
.gz-ny-bomuld__baand > span.er-bomuld { background: var(--gz-blomme); }
.gz-ny-bomuld__baand > span:not(.er-bomuld) + span:not(.er-bomuld) { background: #e3dbea; }
.gz-ny-bomuld__fibertekst { display: block; }

/* Fotoene: samme gr\0000e5  flise overalt, hvide packshots ganges ind i den, sm\0000e5  fotos zoomes ind (data-zoom fra JS) */
.gz-ny-bomuld .gz-produkt__foto { background: var(--gzb-flise); }
.gz-ny-bomuld img[data-hvid] { mix-blend-mode: multiply; }
.gz-ny-bomuld img[data-zoom] { transform: scale(var(--zoom, 1)); }
.gz-ny-bomuld .gz-garnkort:hover .gz-produkt__foto img[data-zoom] { transform: scale(calc(var(--zoom, 1) * 1.03)); }
/* Garn uden produktfoto i shoppen (Isager Palet): samme flise med navnet og seriens farver, som et farvekort */
.gz-ny-bomuld__udenfoto {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px;
  background: var(--gzb-flise); text-align: center; padding: 20px;
}
.gz-ny-bomuld__udenfoto em { font-family: var(--gz-sans); font-style: normal; font-size: 12px; color: var(--gz-daempet); }
.gz-ny-bomuld__udenfoto b { font-family: var(--gz-serif); font-weight: 400; font-size: 34px; line-height: 1.1; letter-spacing: -0.02em; color: var(--gz-blomme); }
.gz-ny-bomuld__udenfoto i { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; margin-top: 14px; }
.gz-ny-bomuld__udenfoto i > span { width: 20px; height: 20px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(53, 40, 62, .15); }

/* ---------- Toppen: H1 og intro (7 spalter) og svaret p\0000e5  8/4 eller 8/8 (5 spalter) ved siden af ---------- */
.gz-ny-bomuld__top .gz-brod { margin-bottom: 18px; flex-wrap: wrap; }
.gz-ny-bomuld__topgitter { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch; }
.gz-ny-bomuld__toptekst { grid-column: 1 / span 7; }
.gz-ny-bomuld__top h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 14px !important; }
.gz-ny-bomuld__intro { font-size: 17px; line-height: 1.7; color: var(--gzb-tekst); max-width: 640px; }
.gz-ny-bomuld__antaltekst { margin-top: 10px !important; font-size: 15px; line-height: 1.6; color: var(--gz-daempet); max-width: 640px; }

/* Boksen er lige s\0000e5  h\0000f8j som H1 og intro (stretch). Linket st\0000e5r nederst */
.gz-ny-bomuld__svar84 {
  grid-column: 8 / span 5; margin: 0; padding: 22px 26px 20px; background: var(--gz-lavendel); border-radius: 4px;
  display: flex; flex-direction: column; align-items: flex-start;
}
.gz-ny-bomuld__svar84tekst { display: contents; }
.gz-ny-bomuld__svar84 h2 { order: 1; font-size: 24px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 4px !important; }
.gz-ny-bomuld__svar84tekst > p { order: 2; font-size: 14px; line-height: 1.6; color: var(--gzb-tekst); }
.gz-ny-bomuld__svar84 dl { order: 3; align-self: stretch; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 22px; margin: 14px 0 14px; padding: 0; }
.gz-ny-bomuld__svar84 dl > div { padding-top: 10px; border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-bomuld__svar84 dt { font-family: var(--gz-serif); font-size: 28px; line-height: 1; letter-spacing: -0.02em; font-weight: 400; color: var(--gz-blomme); margin: 0 0 6px; }
.gz-ny-bomuld__svar84 dd { margin: 0; font-size: 14px; line-height: 1.5; color: var(--gz-blomme); }
.gz-ny-bomuld__svar84 .gz-tekstlink { order: 4; margin-top: auto; }

/* ---------- Garnet: filterknapper og kort ---------- */
.gz-ny-bomuld__hylde { margin-top: 34px; }
.gz-ny-bomuld__filtre { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 22px; }
.gz-ny-bomuld__filtergruppe { display: flex; flex-wrap: wrap; gap: 8px; }
.gz-ny-bomuld__filtergruppe + .gz-ny-bomuld__filtergruppe { padding-left: 22px; border-left: 1px solid var(--gz-linje); }
.gz-ny-bomuld .gz-ny-bomuld__chip {
  appearance: none; display: inline-flex; align-items: center; gap: 7px; height: 38px; margin: 0; padding: 0 15px;
  border: 1px solid var(--gzb-ramme); border-radius: 999px; background: #fff; color: var(--gz-blomme);
  font: 600 13px/1 var(--gz-sans); white-space: nowrap; cursor: pointer; box-shadow: none;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.gz-ny-bomuld .gz-ny-bomuld__chip:hover { border-color: var(--gz-blomme); }
.gz-ny-bomuld__chip [data-gz-n] { font-weight: 500; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-ny-bomuld .gz-ny-bomuld__chip[aria-pressed="true"] { background: var(--gz-blomme); border-color: var(--gz-blomme); color: #fff; }
.gz-ny-bomuld__chip[aria-pressed="true"] [data-gz-n] { color: #cfc4d8; }
.gz-ny-bomuld .gz-ny-bomuld__chip:disabled { opacity: .4; cursor: default; border-color: var(--gz-linje); }
.gz-ny-bomuld__chip[hidden] { display: none !important; }
.gz-ny-bomuld__antal { margin: 14px 0 18px !important; font-size: 14px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }

.gz-ny-bomuld__gitter { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; transition: opacity .2s ease; }
.gz-ny-bomuld__gitter[aria-busy="true"] { opacity: .5; }
.gz-ny-bomuld__gitter:has(> .gz-tom) { display: block; }
.gz-ny-bomuld__gitter .gz-tom .gz-tekstlink { appearance: none; background: none; border-width: 0 0 1px; cursor: pointer; font-family: var(--gz-sans); }
.gz-ny-bomuld__fiber { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; font-size: 12px; line-height: 1.45; color: var(--gzb-tekst); }
.gz-ny-bomuld__kort .gz-spec { margin-top: 4px; }

/* Fyldkortet lukker sidste r\0000e6kke i "Alt bomuldsgarn": det sp\0000e6nder over de spalter, der er tilbage (--r4/--r3/--r2 fra JS).
   Over to spalter: lavendel flade med et butiksfoto til venstre og tekst til h\0000f8jre, lige s\0000e5  h\0000f8j som r\0000e6kken.
   Over \0000e9n spalte: bygget som et garnkort, med fotoet \0000f8verst. Er der ingen plads tilbage, vises det ikke */
.gz-ny-bomuld__fyld { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: var(--gz-lavendel); border-radius: 4px; overflow: hidden; }
.gz-ny-bomuld__fyldfoto { display: block; min-height: 100%; background: var(--gzb-flise) url(../img/st-side-bomuld.jpg) 50% 55% / cover no-repeat; }
.gz-ny-bomuld__fyldtekst { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 10px; padding: 30px 28px; }
.gz-ny-bomuld__fyldtitel { font-family: var(--gz-serif); font-size: 25px; line-height: 1.15; letter-spacing: -0.015em; }
.gz-ny-bomuld__fyldbrod { font-size: 14px; line-height: 1.6; color: var(--gzb-tekst); margin-bottom: 6px; }
.gz-ny-bomuld__fyld .gz-tekstlink { font-size: 14px; }
@media (min-width: 1101px) {
  .gz-ny-bomuld__fyld { grid-column: span var(--r4); }
  .gz-ny-bomuld__fyld[data-r4="0"] { display: none; }
  .gz-ny-bomuld__fyld[data-r4="1"] { grid-template-columns: 1fr; align-content: start; background: none; border-radius: 0; }
  .gz-ny-bomuld__fyld[data-r4="1"] .gz-ny-bomuld__fyldfoto { aspect-ratio: 1 / 1; min-height: 0; border-radius: 4px; }
  .gz-ny-bomuld__fyld[data-r4="1"] .gz-ny-bomuld__fyldtekst { padding: 14px 0 0; justify-content: flex-start; }
}
@media (min-width: 768px) and (max-width: 1100px) {
  .gz-ny-bomuld__fyld { grid-column: span var(--r3); }
  .gz-ny-bomuld__fyld[data-r3="0"] { display: none; }
  .gz-ny-bomuld__fyld[data-r3="1"] { grid-template-columns: 1fr; align-content: start; background: none; border-radius: 0; }
  .gz-ny-bomuld__fyld[data-r3="1"] .gz-ny-bomuld__fyldfoto { aspect-ratio: 1 / 1; min-height: 0; border-radius: 4px; }
  .gz-ny-bomuld__fyld[data-r3="1"] .gz-ny-bomuld__fyldtekst { padding: 14px 0 0; justify-content: flex-start; }
}
@media (max-width: 767px) {
  .gz-ny-bomuld__fyld { grid-column: span var(--r2); }
  .gz-ny-bomuld__fyld[data-r2="0"] { display: none; }
  .gz-ny-bomuld__fyld[data-r2="1"] { grid-template-columns: 1fr; align-content: start; background: none; border-radius: 0; }
  .gz-ny-bomuld__fyld[data-r2="1"] .gz-ny-bomuld__fyldfoto { aspect-ratio: 1 / 1; min-height: 0; border-radius: 4px; }
  .gz-ny-bomuld__fyld[data-r2="1"] .gz-ny-bomuld__fyldtekst { padding: 12px 0 0; justify-content: flex-start; }
  .gz-ny-bomuld__fyldtitel { font-size: 19px; }
  .gz-ny-bomuld__fyldbrod { display: none; }
}

/* ---------- Sammenligningstabellen ---------- */
.gz-ny-bomuld__sammenlign { margin-top: var(--gz-luft); scroll-margin-top: 120px; }
.gz-ny-bomuld__sektionstop { max-width: 640px; margin-bottom: 30px; }
.gz-ny-bomuld__sektionstop p { font-size: 16px; line-height: 1.7; color: var(--gzb-tekst); }
.gz-ny-bomuld__sorter { display: none; }
.gz-ny-bomuld__tabel table {
  width: 100%; border-collapse: collapse; margin: 0; background: none;
  font-size: 14px; line-height: 1.45; font-variant-numeric: tabular-nums;
}
.gz-ny-bomuld__tabel tr { height: auto !important; background: none !important; border: 0 !important; }
.gz-ny-bomuld__tabel thead th {
  text-align: left; vertical-align: bottom; padding: 0 16px 12px 0; border: 0; border-bottom: 1px solid var(--gz-blomme);
  background: none; white-space: nowrap; font-size: 12px; font-weight: 700; color: var(--gz-daempet);
}
.gz-ny-bomuld__tabel thead th button {
  appearance: none; display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 0; border: 0; background: none;
  font: 700 12px var(--gz-sans); color: var(--gz-daempet); cursor: pointer; white-space: nowrap;
}
.gz-ny-bomuld__tabel thead th button::after {
  content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-2px); opacity: .35;
}
.gz-ny-bomuld__tabel thead th button:hover,
.gz-ny-bomuld__tabel thead th[aria-sort] button { color: var(--gz-blomme); }
.gz-ny-bomuld__tabel thead th[aria-sort] button::after { opacity: 1; }
.gz-ny-bomuld__tabel thead th[aria-sort="ascending"] button::after { transform: rotate(-135deg) translateY(-1px); }
.gz-ny-bomuld__tabel tbody th, .gz-ny-bomuld__tabel tbody td {
  text-align: left; vertical-align: top; padding: 18px 16px 18px 0; border: 0; border-bottom: 1px solid var(--gz-linje);
  background: none; font-weight: 400; color: var(--gz-blomme);
}
/* V\0000e6rdierne flugter med serif-navnet, ikke med m\0000e6rkelinjen over det: 18 px + m\0000e6rkelinjens 19 px + halvdelen af
   forskellen p\0000e5  linjeh\0000f8jderne. Fiberb\0000e5ndet st\0000e5r p\0000e5  m\0000e6rkelinjens h\0000f8jde, fiberteksten p\0000e5  navnets */
.gz-ny-bomuld__tabel tbody td { padding-top: 38px; }
.gz-ny-bomuld__tabel tbody td:nth-child(2) { padding-top: 28px; }
.gz-ny-bomuld__tabel tbody th a { color: var(--gz-blomme) !important; text-decoration: none !important; font-family: var(--gz-serif); font-size: 19px; line-height: 1.2; letter-spacing: -0.01em; }
.gz-ny-bomuld__tabel tbody th a span { display: block; font-family: var(--gz-sans); font-size: 12px; letter-spacing: 0; color: var(--gz-daempet); margin-bottom: 2px; }
.gz-ny-bomuld__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 4px; }
.gz-ny-bomuld__tabel tbody td:nth-child(2) { width: 27%; }
.gz-ny-bomuld__tabel tbody td:nth-child(2) .gz-ny-bomuld__baand { width: min(100%, 180px); margin-bottom: 7px; }
.gz-ny-bomuld__tabel tbody td:nth-child(2) .gz-ny-bomuld__fibertekst { font-size: 13px; line-height: 1.45; color: var(--gzb-tekst); }
.gz-ny-bomuld__naal { display: block; font-size: 12px; color: var(--gz-daempet); white-space: nowrap; }
.gz-ny-bomuld__tabel tbody td:nth-child(n+6) { text-align: right; padding-right: 0; padding-left: 16px; white-space: nowrap; }
.gz-ny-bomuld__tabel thead th:nth-child(n+6) { text-align: right; padding-right: 0; padding-left: 16px; }
.gz-ny-bomuld__tabel thead th:last-child { padding-right: 4px; }
.gz-ny-bomuld__tabel tbody td:last-child { font-weight: 650; }
.gz-ny-bomuld__visalle { display: none; }
.gz-ny-bomuld__note { margin-top: 16px !important; font-size: 13px; line-height: 1.6; color: var(--gz-daempet); max-width: 720px; }

/* ---------- 8/4 og 8/8: tegningen (6 spalter) og teksten (5 spalter), lige h\0000f8je ---------- */
.gz-ny-bomuld__tal {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
  scroll-margin-top: 120px;
}
.gz-ny-bomuld__tegning {
  grid-column: 1 / span 6; margin: 0; background: var(--gz-lys); border-radius: 4px;
  display: flex; flex-direction: column; justify-content: center; padding: 28px 32px 26px;
}
.gz-ny-bomuld__tegning svg { display: block; width: 100%; height: auto; overflow: visible; }
.gz-ny-bomuld__tegning figcaption { margin-top: 14px; font-size: 13px; line-height: 1.55; color: var(--gz-daempet); text-align: center; }
.gz-ny-bomuld__tegning .t-omrids { fill: none; stroke: #b7a9c2; stroke-width: 1.4; stroke-dasharray: 2 5; stroke-linecap: round; }
.gz-ny-bomuld__tegning .t-navn { font-family: var(--gz-serif); font-size: 38px; letter-spacing: -0.02em; fill: var(--gz-blomme); text-anchor: middle; }
.gz-ny-bomuld__tegning .t-lille { font-family: var(--gz-sans); font-size: 14px; fill: var(--gz-daempet); text-anchor: middle; }
.gz-ny-bomuld__tegning .t-akse { stroke: var(--gz-linje); stroke-width: 10; stroke-linecap: round; }
.gz-ny-bomuld__tegning .t-meter { stroke: var(--gz-blomme); stroke-width: 10; stroke-linecap: round; }
.gz-ny-bomuld__tegning .t-maal { font-family: var(--gz-sans); font-size: 14px; font-weight: 650; fill: var(--gz-blomme); }
.gz-ny-bomuld__taltekst { grid-column: 8 / span 5; align-self: center; }
.gz-ny-bomuld__taltekst > p { font-size: 16px; line-height: 1.7; color: var(--gzb-tekst); }
.gz-ny-bomuld__taltekst > p + p { margin-top: 12px; }
.gz-ny-bomuld__taltekst h3 { margin: 24px 0 8px !important; font-size: 21px !important; }
.gz-ny-bomuld__taltekst-links { margin-top: 20px !important; color: var(--gz-blomme) !important; }

/* ---------- Karklude: lavendel flade helt ud til kanterne, tekst (5) og tre garner (6) ---------- */
.gz-ny-bomuld__karkludeafsnit {
  position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 88px 0;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: center;
  scroll-margin-top: 120px;
}
.gz-ny-bomuld__karkludeafsnit::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-ny-bomuld__karkludetekst { grid-column: 1 / span 5; }
.gz-ny-bomuld__karkludetekst > p { font-size: 16px; line-height: 1.7; color: var(--gzb-tekst); }
.gz-ny-bomuld__karkludetekst > p + p { margin-top: 12px; }
.gz-ny-bomuld__karklude { grid-column: 7 / span 6; display: flex; flex-direction: column; gap: 12px; }
.gz-ny-bomuld__karklude a {
  display: grid; grid-template-columns: 104px minmax(0, 1fr) auto; column-gap: 22px; align-items: center;
  padding: 14px 22px 14px 14px; background: #fff; border-radius: 4px;
  color: var(--gz-blomme) !important; text-decoration: none !important; transition: box-shadow .2s ease;
}
.gz-ny-bomuld__karklude a:hover { box-shadow: 0 0 0 1px var(--gz-syren); }
.gz-ny-bomuld__klfoto {
  grid-row: 1 / span 2; position: relative; display: block; width: 104px; height: 104px; overflow: hidden; border-radius: 3px; background: var(--gzb-flise);
}
.gz-ny-bomuld__klfoto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gz-ny-bomuld__klfoto .gz-ny-bomuld__udenfoto b { font-size: 17px; }
.gz-ny-bomuld__klnavn { align-self: end; font-family: var(--gz-serif); font-size: 21px; line-height: 1.2; letter-spacing: -0.01em; }
.gz-ny-bomuld__klnavn em { display: block; font-family: var(--gz-sans); font-style: normal; font-size: 12px; letter-spacing: 0; color: var(--gz-daempet); margin-bottom: 2px; }
.gz-ny-bomuld__klfakta { grid-column: 2; align-self: start; display: flex; flex-wrap: wrap; gap: 2px 12px; margin-top: 6px; font-size: 13px; color: var(--gzb-tekst); }
.gz-ny-bomuld__klpris { grid-column: 3; grid-row: 1 / span 2; font-size: 15px; font-weight: 650; font-variant-numeric: tabular-nums; white-space: nowrap; }

/* ---------- V\0000e6lg efter projekt: seks valg i tre spalter, hvert med et foto af det f\0000f8rste garn, det n\0000e6vner ---------- */
.gz-ny-bomuld__vaelg { margin-top: var(--gz-luft); scroll-margin-top: 120px; }
.gz-ny-bomuld__valg { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 56px 24px; }
.gz-ny-bomuld__valget { display: flex; flex-direction: column; }
.gz-ny-bomuld__valgfoto {
  position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 4px; background: var(--gzb-flise); margin-bottom: 22px;
}
.gz-ny-bomuld__valgfoto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.gz-ny-bomuld__valg p { font-size: 15px; line-height: 1.75; color: var(--gzb-tekst); }

/* ---------- Sp\0000f8rgsm\0000e5l: overskrift og kontakt til venstre (4), sp\0000f8rgsm\0000e5lene til h\0000f8jre (7) ---------- */
.gz-ny-bomuld__spoergsmaal {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-bomuld__faqtop { grid-column: 1 / span 4; grid-row: 1; }
.gz-ny-bomuld__faqtop p { font-size: 15px; line-height: 1.7; color: var(--gzb-tekst); }
/* Temaet giver <nav> en smallere bredde og auto-margener; listen skal flugte med overskriften over den */
.gz-ny-bomuld__mere { grid-column: 1 / span 4; grid-row: 2; width: 100%; margin: 36px 0 0 !important; }
.gz-ny-bomuld__mere h3 { font-size: 21px !important; padding-bottom: 10px; margin: 0 !important; border-bottom: 1px solid var(--gz-linje); }
.gz-ny-bomuld__mere ul { columns: 2; column-gap: 24px; padding-top: 8px !important; }
.gz-ny-bomuld__mere li { break-inside: avoid; }
.gz-ny-bomuld__mere a { display: inline-block; padding: 5px 0; font-size: 14px; }
.gz-ny-bomuld__faq { grid-column: 6 / span 7; grid-row: 1 / span 3; border-top: 1px solid var(--gz-blomme); }
.gz-ny-bomuld__faq details { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-bomuld__faq summary {
  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 20px;
  padding: 20px 0; font-family: var(--gz-serif); font-size: 21px; line-height: 1.25; letter-spacing: -0.01em; color: var(--gz-blomme);
}
.gz-ny-bomuld__faq summary::-webkit-details-marker { display: none; }
.gz-ny-bomuld__faq summary::after {
  content: ''; flex-shrink: 0; width: 8px; height: 8px; margin-right: 4px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-3px);
  transition: transform .2s ease;
}
.gz-ny-bomuld__faq details[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-ny-bomuld__svar { padding: 0 40px 24px 0; }
.gz-ny-bomuld__svar p { font-size: 15px; line-height: 1.75; color: var(--gzb-tekst); }

/* ---------- Mellemstor sk\0000e6rm: svaret p\0000e5  8/4 og 8/8 bliver et b\0000e5nd under introen ---------- */
@media (max-width: 1100px) {
  .gz-ny-bomuld__topgitter { display: block; }
  .gz-ny-bomuld__toptekst { max-width: 700px; }
  .gz-ny-bomuld__svar84 {
    margin-top: 30px; padding: 26px 0;
    display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  }
  .gz-ny-bomuld__svar84tekst { grid-column: 1 / span 5; display: flex; flex-direction: column; align-items: flex-start; padding-left: 28px; }
  .gz-ny-bomuld__svar84tekst > p { margin-bottom: 14px !important; }
  .gz-ny-bomuld__svar84 .gz-tekstlink { margin-top: 0; }
  .gz-ny-bomuld__svar84 dl { grid-column: 6 / span 7; margin: 0; padding-right: 28px; }
  .gz-ny-bomuld__svar84 dl > div { padding: 0 0 0 20px; border-top: 0; border-left: 1px solid rgba(53, 40, 62, .14); }
  /* Knapgrupperne st\0000e5r p\0000e5  hver sin linje, s\0000e5  skillestregen ikke h\0000e6nger alene foran pind-knapperne */
  .gz-ny-bomuld__filtre { flex-direction: column; align-items: flex-start; gap: 8px; }
  .gz-ny-bomuld__filtergruppe + .gz-ny-bomuld__filtergruppe { padding-left: 0; border-left: 0; }
  .gz-ny-bomuld__gitter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gz-ny-bomuld__tegning { grid-column: 1 / span 6; padding: 28px; }
  .gz-ny-bomuld__taltekst { grid-column: 7 / span 6; }
  .gz-ny-bomuld__karkludetekst { grid-column: 1 / span 6; }
  .gz-ny-bomuld__karklude { grid-column: 7 / span 6; }
  .gz-ny-bomuld__valg { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-ny-bomuld__faqtop, .gz-ny-bomuld__mere { grid-column: 1 / span 5; }
  .gz-ny-bomuld__faq { grid-column: 6 / span 7; }
}
/* Tabellen bliver til kompakte r\0000e6kker, f\0000f8r den bliver for smal: navn og pris \0000f8verst, fiber og pris pr. 100 m
   under, og l\0000f8bel\0000e6ngde, pind og strikkefasthed som \0000e9n linje med sm\0000e5  etiketter. Sortering med en liste */
@media (max-width: 900px) {
  .gz-ny-bomuld__tabel thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .gz-ny-bomuld__sorterhjaelp { display: none; } /* kolonneoverskrifterne er skjult her */
  /* Listen virker kun med JS, s\0000e5  den vises f\0000f8rst, n\0000e5r siden er klar */
  .gz-ny-bomuld[data-klar] .gz-ny-bomuld__sorter { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; font-size: 13px; font-weight: 700; color: var(--gz-blomme); }
  .gz-ny-bomuld__sorter select {
    height: 44px; min-width: 0; flex: 1 1 auto; max-width: 280px; margin: 0; padding: 0 10px; border: 1px solid var(--gzb-ramme); border-radius: 4px;
    background: #fff; font: 500 14px var(--gz-sans); color: var(--gz-blomme);
  }
  .gz-ny-bomuld__tabel table, .gz-ny-bomuld__tabel tbody { display: block; }
  .gz-ny-bomuld__tabel tbody { border-top: 1px solid var(--gz-blomme); }
  .gz-ny-bomuld__tabel tbody tr {
    display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 6px 14px;
    padding: 14px 0 15px; border-bottom: 1px solid var(--gz-linje) !important;
  }
  .gz-ny-bomuld__tabel tbody th, .gz-ny-bomuld__tabel tbody td {
    display: block; padding: 0 !important; border: 0; text-align: left !important; white-space: normal !important; width: auto !important;
  }
  .gz-ny-bomuld__tabel tbody th { order: 1; flex: 1 1 60%; min-width: 0; }
  .gz-ny-bomuld__tabel tbody th a { font-size: 18px; }
  .gz-ny-bomuld__tabel tbody td:nth-child(6) { order: 2; flex: 0 0 auto; margin-left: auto; text-align: right !important; font-size: 15px; font-weight: 650; }
  .gz-ny-bomuld__tabel tbody td:nth-child(2) { order: 3; flex: 1 1 55%; min-width: 0; }
  .gz-ny-bomuld__tabel tbody td:nth-child(2) .gz-ny-bomuld__baand { width: 120px; margin-bottom: 5px; }
  .gz-ny-bomuld__tabel tbody td:nth-child(2) .gz-ny-bomuld__fibertekst { font-size: 12px; }
  .gz-ny-bomuld__tabel tbody td:nth-child(7) { order: 4; flex: 0 0 auto; margin-left: auto; text-align: right !important; font-size: 12px; font-weight: 600; color: var(--gzb-tekst); }
  .gz-ny-bomuld__tabel tbody td:nth-child(7)::after { content: ' pr. 100 m'; font-weight: 400; }
  .gz-ny-bomuld__tabel tbody td:nth-child(3) { order: 5; }
  .gz-ny-bomuld__tabel tbody td:nth-child(4) { order: 6; }
  .gz-ny-bomuld__tabel tbody td:nth-child(5) { order: 7; }
  .gz-ny-bomuld__tabel tbody td:nth-child(n+3):nth-child(-n+5) { flex: 0 0 auto; font-size: 13px; }
  .gz-ny-bomuld__tabel tbody td:nth-child(n+3):nth-child(-n+5)::before {
    content: attr(data-etiket); margin-right: 5px; font-size: 11px; font-weight: 700; color: var(--gz-daempet);
  }
  .gz-ny-bomuld__naal { display: inline; margin-left: 6px; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  /* 43 px = garnsidens 22 px + kategorirammens 21 px, som p\0000e5  alpaca- og mohairsiden */
  .gz-ny-bomuld { padding: 43px 16px var(--gz-luft); }
  .gz-ny-bomuld h2 { font-size: 31px !important; }
  .gz-ny-bomuld__top h1 { font-size: 40px !important; margin-bottom: 10px !important; }
  .gz-ny-bomuld__top .gz-brod { margin-bottom: 12px; }
  .gz-ny-bomuld__intro { font-size: 15px; line-height: 1.65; }
  /* Antallet st\0000e5r ogs\0000e5  lige over garnet, s\0000e5  s\0000e6tningen skjules her for at f\0000e5  garnet op over folden */
  .gz-ny-bomuld__antaltekst { display: none; }

  /* Kun overskrift, \0000e9n linje og linket: 8/4- og 8/8-spalterne st\0000e5r i afsnittet l\0000e6ngere nede */
  .gz-ny-bomuld__svar84 { display: flex; flex-direction: column; margin-top: 20px; padding: 14px 16px 13px; }
  .gz-ny-bomuld__svar84tekst { display: contents; }
  .gz-ny-bomuld__svar84 h2 { font-size: 20px !important; margin-bottom: 3px !important; }
  .gz-ny-bomuld__svar84tekst > p { font-size: 13px; line-height: 1.5; margin-bottom: 8px !important; }
  .gz-ny-bomuld__svar84 dl { display: none; }
  .gz-ny-bomuld__svar84 .gz-tekstlink { font-size: 13px; }

  /* Filterknapperne kan swipes vandret. H\0000f8jre kant toner ud, til man er n\0000e5et til enden (.er-slut fra JS) */
  .gz-ny-bomuld__hylde { margin-top: 22px; }
  .gz-ny-bomuld__filtre {
    flex-direction: row; align-items: center; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; gap: 8px 14px;
    margin-right: -16px; padding-right: 16px;
    -webkit-mask-image: linear-gradient(to right, #000 82%, transparent); mask-image: linear-gradient(to right, #000 82%, transparent);
  }
  .gz-ny-bomuld__filtre.er-slut { -webkit-mask-image: none; mask-image: none; }
  .gz-ny-bomuld__filtre::-webkit-scrollbar { display: none; }
  .gz-ny-bomuld__filtergruppe { flex-wrap: nowrap; }
  .gz-ny-bomuld__filtergruppe + .gz-ny-bomuld__filtergruppe { padding-left: 14px; border-left: 1px solid var(--gz-linje); }
  .gz-ny-bomuld .gz-ny-bomuld__chip { height: 44px; padding: 0 14px; }
  .gz-ny-bomuld__antal { margin: 12px 0 16px !important; font-size: 13px; }

  .gz-ny-bomuld__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 14px; }
  .gz-ny-bomuld__fiber { font-size: 11px; }
  .gz-ny-bomuld__udenfoto b { font-size: 24px; }
  .gz-ny-bomuld__udenfoto i { gap: 5px; margin-top: 10px; }
  .gz-ny-bomuld__udenfoto i > span { width: 14px; height: 14px; }

  .gz-ny-bomuld__sektionstop { margin-bottom: 20px; }
  .gz-ny-bomuld__sektionstop p { font-size: 15px; }
  /* Tabellen viser de fem f\0000f8rste garner, til man trykker "Vis alle". Uden JS st\0000e5r alle r\0000e6kker */
  .gz-ny-bomuld[data-klar] .gz-ny-bomuld__tabel:not(.er-aaben) tbody tr:nth-child(n+6) { display: none !important; }
  .gz-ny-bomuld[data-klar] .gz-ny-bomuld__visalle {
    display: inline-flex; align-items: center; min-height: 44px; margin-top: 16px; padding: 0 18px;
    border: 1px solid var(--gz-blomme); border-radius: 999px; background: #fff; color: var(--gz-blomme); font: 600 14px var(--gz-sans); cursor: pointer;
  }

  /* Overskrift og tekst f\0000f8rst, s\0000e5  tegningen. Teksten i tegningen g\0000f8res st\0000f8rre, fordi den skaleres ned */
  .gz-ny-bomuld__tal { display: flex; flex-direction: column; gap: 24px; align-items: stretch; }
  .gz-ny-bomuld__taltekst { order: 1; }
  .gz-ny-bomuld__tegning { order: 2; padding: 22px 14px 16px; }
  .gz-ny-bomuld__tegning .t-navn { font-size: 46px; }
  .gz-ny-bomuld__tegning .t-lille { font-size: 21px; }
  .gz-ny-bomuld__tegning .t-maal { font-size: 21px; }
  .gz-ny-bomuld__tegning figcaption { margin-top: 10px; }
  .gz-ny-bomuld__taltekst > p { font-size: 15px; }

  .gz-ny-bomuld__karkludeafsnit { display: block; padding: 52px 0; }
  .gz-ny-bomuld__karkludetekst > p { font-size: 15px; }
  .gz-ny-bomuld ul.gz-ny-bomuld__karklude { margin-top: 28px !important; }
  .gz-ny-bomuld__karklude a { grid-template-columns: 76px minmax(0, 1fr); column-gap: 16px; padding: 10px 14px 10px 10px; }
  .gz-ny-bomuld__klfoto { width: 76px; height: 76px; grid-row: 1 / span 3; }
  .gz-ny-bomuld__klnavn { font-size: 18px; }
  .gz-ny-bomuld__klfakta { font-size: 12px; gap: 0 10px; margin-top: 4px; }
  .gz-ny-bomuld__klpris { grid-column: 2; grid-row: 3; font-size: 14px; margin-top: 4px; }

  /* Valgene som en liste med et lille foto til venstre */
  .gz-ny-bomuld__valg { grid-template-columns: 1fr; gap: 28px; }
  .gz-ny-bomuld__valget { display: grid; grid-template-columns: 88px minmax(0, 1fr); column-gap: 16px; align-items: start; }
  .gz-ny-bomuld__valgfoto { aspect-ratio: 1 / 1; margin: 4px 0 0; }
  .gz-ny-bomuld__valgfoto .gz-ny-bomuld__udenfoto b { font-size: 15px; }
  .gz-ny-bomuld__valg h3 { font-size: 20px !important; margin-bottom: 6px !important; }
  .gz-ny-bomuld__valg p { font-size: 14px; line-height: 1.7; }

  .gz-ny-bomuld__spoergsmaal { display: block; }
  .gz-ny-bomuld__faq { margin-top: 24px; }
  .gz-ny-bomuld__faq summary { font-size: 19px; padding: 17px 0; }
  .gz-ny-bomuld__svar { padding-right: 0; }
  .gz-ny-bomuld__mere { margin-top: 40px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-ny-bomuld *, .gz-ny-bomuld *::before, .gz-ny-bomuld *::after { transition: none !important; }
}


/* ---- sider/ny-garn-til-babystrik.css ---- */
/* Garn til babystrik (/shop/{nyt id}-garn-til-babystrik/, lokalt /shop/999-\002026). Markup: tema/udkast/sider/ny-garn-til-babystrik.html.
   Alt er scopet til .gz-ny-baby. F\0000f8lger forside v4 og fibersiderne: indhold i --gz-bredde, 12-spalters gitter,
   --gz-luft mellem sektionerne, hvid grund med \0000e9n lys og \0000e9n lavendel flade.
   Sidens eget kendetegn: vaskem\0000e6rket. Kriterierne i toppen st\0000e5r p\0000e5  et syet m\0000e6rke (stiplet s\0000f8m), og de samme
   vaskesymboler (balje, balje med h\0000e5nd, blad) g\0000e5r igen p\0000e5  hvert garn, i tabellen og i vaskelisten. */

.gz-ny-baby { font-family: var(--gz-sans); color: var(--gz-blomme); padding-bottom: var(--gz-luft); }
.gz-ny-baby h1, .gz-ny-baby h2, .gz-ny-baby h3 { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important; text-wrap: balance; }
.gz-ny-baby p { margin: 0; text-wrap: pretty; }
.gz-ny-baby ul { list-style: none; margin: 0 !important; padding: 0 !important; }
.gz-ny-baby li { list-style: none; margin: 0; padding: 0; }
.gz-ny-baby dl, .gz-ny-baby dd { margin: 0; }
.gz-ny-baby dd::before, .gz-ny-baby dt::before { content: none !important; } /* temaet nummererer dd'er */
.gz-ny-baby__ikon { width: 22px; height: 22px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }

/* F\0000e6lles spalte: flugter med logo og menu */
.gz-ny-baby__top, .gz-ny-baby__garn, .gz-ny-baby__vaelg, .gz-ny-baby__sammenlign,
.gz-ny-baby__proeve, .gz-ny-baby__boeger, .gz-ny-baby__faq {
  max-width: var(--gz-bredde); box-sizing: border-box; margin-left: auto; margin-right: auto; padding-left: 10px; padding-right: 10px;
}
.gz-ny-baby__garn, .gz-ny-baby__vaelg, .gz-ny-baby__sammenlign, .gz-ny-baby__proeve, .gz-ny-baby__boeger, .gz-ny-baby__faq {
  scroll-margin-top: calc(var(--gz-header-h, 91px) + 16px);
}

/* Links i br\0000f8dtekst */
.gz-ny-baby__sektionstop a, .gz-ny-baby__vaelgliste p:not(.gz-ny-baby__garnet) a, .gz-ny-baby__proeve-tekst a,
.gz-ny-baby__faq-top a, .gz-ny-baby__svar a {
  color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren);
  text-decoration-thickness: 1px; text-underline-offset: 3px;
}
.gz-ny-baby__sektionstop a:hover, .gz-ny-baby__vaelgliste p a:hover, .gz-ny-baby__proeve-tekst a:hover,
.gz-ny-baby__faq-top a:hover, .gz-ny-baby__svar a:hover { text-decoration-color: var(--gz-blomme); }

/* ---------- Toppen: br\0000f8dkrumme, H1 og intro til venstre, vaskem\0000e6rket til h\0000f8jre ---------- */
.gz-ny-baby__top { padding-top: 34px; }
/* H1 og m\0000e6rket starter i samme h\0000f8jde (som p\0000e5  fibersiderne), s\0000e5  der ikke st\0000e5r luft mellem br\0000f8dkrumme og H1 */
.gz-ny-baby__topgitter { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
.gz-ny-baby__intro { grid-column: 1 / span 7; }
.gz-ny-baby h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 14px !important; }
.gz-ny-baby__intro p { font-size: 17px; line-height: 1.7; color: #5d5066; max-width: 640px; }

/* Genveje til valget pr. projekt under introen */
.gz-ny-baby__hop { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 20px; margin-top: 22px; font-size: 15px; }
.gz-ny-baby__hop span { color: var(--gz-daempet); }
.gz-ny-baby__hop a {
  color: var(--gz-blomme) !important; font-weight: 650; text-decoration: underline; text-decoration-color: var(--gz-syren);
  text-decoration-thickness: 1px; text-underline-offset: 4px;
}
.gz-ny-baby__hop a:hover { text-decoration-color: var(--gz-blomme); }
.gz-ny-baby__hop a:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; border-radius: 2px; }

/* Vaskem\0000e6rket: lavendel stof med en stiplet s\0000f8m hele vejen rundt */
.gz-ny-baby__maerke {
  grid-column: 9 / span 4; position: relative; background: var(--gz-lavendel); border-radius: 4px;
  padding: 24px 26px 16px; margin-top: 4px;
}
.gz-ny-baby__maerke::before {
  content: ''; position: absolute; inset: 7px; border: 1px dashed rgba(53, 40, 62, .3); border-radius: 2px; pointer-events: none;
}
.gz-ny-baby__maerke-titel { font-family: var(--gz-serif); font-size: 22px; line-height: 1.2; letter-spacing: -0.015em; margin-bottom: 4px !important; }
.gz-ny-baby__maerke li { display: grid; grid-template-columns: 26px minmax(0, 1fr); column-gap: 14px; align-items: start; padding: 11px 0; }
.gz-ny-baby__maerke li + li { border-top: 1px solid rgba(53, 40, 62, .12); }
.gz-ny-baby__maerke .gz-ny-baby__ikon { width: 26px; height: 26px; margin-top: 1px; }
.gz-ny-baby__maerke li span { font-size: 13.5px; line-height: 1.5; color: #5d5066; }
.gz-ny-baby__maerke li strong { display: block; font-size: 15px; font-weight: 700; color: var(--gz-blomme); margin-bottom: 1px; }

/* ---------- Filterknapper og gitter ---------- */
.gz-ny-baby__vaerktoej { display: flex; align-items: center; justify-content: space-between; gap: 16px 24px; margin-top: 40px; }
.gz-ny-baby__valg { display: flex; flex-wrap: wrap; gap: 8px; }
.gz-ny-baby__valg button {
  appearance: none; display: inline-flex; align-items: center; gap: 7px; height: 40px; padding: 0 16px; cursor: pointer;
  border: 1px solid #cfc4d8; border-radius: 999px; background: var(--gz-hvid); color: var(--gz-blomme);
  font: 600 13px var(--gz-sans); white-space: nowrap; transition: border-color .15s ease, background-color .15s ease;
}
.gz-ny-baby__valg button span { font-weight: 500; color: var(--gz-daempet); font-variant-numeric: tabular-nums; }
.gz-ny-baby__valg button:hover { border-color: var(--gz-blomme); }
.gz-ny-baby__valg button[aria-pressed="true"] { background: var(--gz-blomme); border-color: var(--gz-blomme); color: #fff; }
.gz-ny-baby__valg button[aria-pressed="true"] span { color: var(--gz-syren); }
.gz-ny-baby__valg button:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-ny-baby__valg button[hidden] { display: none; }
.gz-ny-baby__antal { font-size: 14px; color: var(--gz-daempet); white-space: nowrap; font-variant-numeric: tabular-nums; }

.gz-ny-baby .gz-ny-baby__gitter { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 52px 24px; margin-top: 28px; }
/* 4 eller 8 garner: fire spalter (som garn- og bomuldssiden), s\0000e5  r\0000e6kkerne altid er fulde. JS'en s\0000e6tter klassen ud fra antallet */
.gz-ny-baby .gz-ny-baby__gitter--fire { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 48px 24px; }
/* 5 eller 10 garner (Mariannes liste 21/10 2026): fem spalter, s\0000e5  to fulde r\0000e6kker. Under 900 px tager reglen for to spalter over */
.gz-ny-baby .gz-ny-baby__gitter--fem { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 44px 20px; }
/* Kortene er ~216 px brede i fem spalter: "fra 57 kr." m\0000e5  ikke kn\0000e6kke, s\0000e5  farveprikkerne viser h\0000f8jst fem farver */
.gz-ny-baby__gitter--fem .gz-produkt__pris { white-space: nowrap; }
.gz-ny-baby__gitter--fem .gz-farveprikker > span:nth-child(n+6) { display: none; }
.gz-ny-baby__fiber { display: block; margin-top: 6px; font-size: 13px; line-height: 1.45; color: #61546a; }
.gz-ny-baby__kort .gz-spec { margin-top: 3px; }
/* M\0000e6rkaterne for vask og \0000f8kologi: sm\0000e5  vaskem\0000e6rker med symbol */
/* M\0000e6rkater og pris st\0000e5r i bunden af kortet, s\0000e5  de flugter p\0000e5  tv\0000e6rs af r\0000e6kken, selv n\0000e5r fiberteksten fylder to linjer */
.gz-ny-baby__maerkater { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; padding-top: 12px; }
.gz-ny-baby__maerkat {
  display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 10px 0 7px; border-radius: 3px;
  background: var(--gz-lavendel); color: var(--gz-blomme); font-size: 12px; font-weight: 650; line-height: 1; white-space: nowrap;
}
.gz-ny-baby__maerkat .gz-ny-baby__ikon { width: 16px; height: 16px; stroke-width: 1.6; }
.gz-ny-baby__kort .gz-garnkort__bund { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--gz-linje); }
/* Serie uden produktfoto i shoppen: navnet p\0000e5  en lavendel flade i stedet for pladsholderen */
.gz-ny-baby__udenfoto {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px;
  background: var(--gz-lavendel); font-family: var(--gz-serif); font-size: 28px; letter-spacing: -0.02em; text-align: center; padding: 20px;
}
.gz-ny-baby__udenfoto em { font: 400 13px var(--gz-sans); letter-spacing: 0; color: var(--gz-daempet); }

/* ---------- Sektionstop: H2 til venstre, kort tekst til h\0000f8jre ---------- */
.gz-ny-baby__sektionstop { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 36px; }
.gz-ny-baby h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 !important; }
.gz-ny-baby__sektionstop p { max-width: 460px; font-size: 15px; line-height: 1.7; color: #5d5066; }

/* ---------- Hvilket garn til babystrik: seks valg i tre spalter ---------- */
.gz-ny-baby__vaelg { margin-top: var(--gz-luft); }
.gz-ny-baby__vaelgliste { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px 24px; }
.gz-ny-baby__vaelgliste li {
  display: flex; flex-direction: column; border-top: 1px solid var(--gz-blomme); padding-top: 22px;
  scroll-margin-top: calc(var(--gz-header-h, 91px) + 24px);
}
.gz-ny-baby__vaelgliste h3 { font-size: 24px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 10px !important; }
.gz-ny-baby__vaelgliste p { font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-ny-baby__garnet { display: flex; flex-wrap: wrap; align-content: flex-start; gap: 8px 14px; margin-top: auto !important; padding-top: 16px; }
/* Hvert valg er et subgrid med tre r\0000e6kker (H3, tekst, links): overskrifter, tekster og linklister starter i samme h\0000f8jde
   p\0000e5  tv\0000e6rs af r\0000e6kken, ogs\0000e5  n\0000e5r en tekst er l\0000e6ngere eller en linkliste brydes over to linjer */
@supports (grid-template-rows: subgrid) {
  /* Listens r\0000e6kke-luft (48px) st\0000e5r mellem valgene; inde i hvert valg nulstiller subgriddet den */
  .gz-ny-baby__vaelgliste li { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; }
  .gz-ny-baby__garnet { margin-top: 0 !important; }
}
.gz-ny-baby__garnet a {
  font-size: 13px; font-weight: 650; color: var(--gz-blomme) !important; text-decoration: none !important;
  padding-bottom: 2px; border-bottom: 1px solid var(--gz-syren);
}
.gz-ny-baby__garnet a:hover { border-bottom-color: var(--gz-blomme); }

/* ---------- Sammenligningstabellen p\0000e5  en lys flade i fuld bredde ---------- */
.gz-ny-baby__sammenlign { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding-top: 96px; padding-bottom: 96px; }
.gz-ny-baby__sammenlign::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lys);
  box-shadow: 0 0 0 100vmax var(--gz-lys); clip-path: inset(0 -100vmax);
}
.gz-ny-baby__tabelboks { overflow-x: auto; background: var(--gz-hvid); border-radius: 4px; scrollbar-width: thin; }
.gz-ny-baby__tabelboks:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
/* Ni kolonner skal kunne st\0000e5  i 1160 px uden at swipes: overskrifter m\0000e5  bryde, og fiber, vask og navn m\0000e5  st\0000e5  p\0000e5  to linjer */
.gz-ny-baby__tabel { width: 100% !important; border-collapse: collapse; margin: 0 !important; font-size: 14px; line-height: 1.45; }
.gz-ny-baby__tabel th, .gz-ny-baby__tabel td {
  padding: 16px 12px !important; border: 0 !important; border-bottom: 1px solid var(--gz-linje) !important;
  background: var(--gz-hvid) !important; text-align: left !important; vertical-align: middle; color: var(--gz-blomme);
}
.gz-ny-baby__tabel th:first-child { padding-left: 20px !important; }
.gz-ny-baby__tabel th:last-child, .gz-ny-baby__tabel td:last-child { padding-right: 20px !important; }
.gz-ny-baby__tabel tbody tr:last-child > * { border-bottom: 0 !important; }
.gz-ny-baby__tabel td { font-variant-numeric: tabular-nums; white-space: nowrap; }
.gz-ny-baby__tabel thead th { padding-top: 18px !important; padding-bottom: 14px !important; font-size: 12px; font-weight: 650; line-height: 1.35; color: var(--gz-daempet); vertical-align: bottom; }
.gz-ny-baby__tabel thead th small { display: block; font-size: 11px; font-weight: 500; white-space: nowrap; }
/* De to priskolonner er brede nok til "Pris" + "pr. n\0000f8gle", s\0000e5  alle overskrifter st\0000e5r p\0000e5  h\0000f8jst to linjer med samme bundlinje */
.gz-ny-baby__tabel thead th:nth-child(8), .gz-ny-baby__tabel thead th:nth-child(9) { min-width: 78px; }
.gz-ny-baby__tabel tbody th { font-size: 15px; font-weight: 650; min-width: 120px; }
.gz-ny-baby__tabel tbody th a { color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-ny-baby__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px; }
.gz-ny-baby__tabel tbody th a span { display: block; font-size: 12px; font-weight: 500; color: var(--gz-daempet); }
.gz-ny-baby__tabel tbody tr:hover > * { background: #fcfbfd !important; }
.gz-ny-baby__tabel td.er-fiber { white-space: normal; min-width: 150px; max-width: 200px; color: #5d5066; }
.gz-ny-baby__tabel td.er-vask { white-space: normal; min-width: 130px; }
.gz-ny-baby__vask { display: inline-flex; align-items: flex-start; gap: 7px; }
.gz-ny-baby__vask .gz-ny-baby__ikon { width: 18px; height: 18px; margin-top: -1px; }
.gz-ny-baby__vask.er-ukendt { padding-left: 25px; } /* uden symbol: teksten flugter med de andre r\0000e6kker */
.gz-ny-baby__note { font-size: 13px; color: var(--gz-daempet); margin-top: 16px !important; }
.gz-ny-baby__stryg { display: none; }

/* ---------- Pr\0000f8velappen: billede og tekst lige h\0000f8je (billedet str\0000e6kker sig efter teksten) ---------- */
.gz-ny-baby__proeve {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch; margin-top: var(--gz-luft);
}
/* Sidens eget billede (4/11 2026): babycardigan og futter p\0000e5  h\0000f8r, 5:4. F\0000f8r var det et udsnit af forsidens topbillede. */
.gz-ny-baby__proeve-billede {
  grid-column: 1 / span 6; min-height: 560px; position: relative; overflow: hidden; border-radius: 2px;
  background: var(--gz-lys) url(../img/st-side-babystrik.jpg) 50% 50% / cover no-repeat;
}
.gz-ny-baby__proeve-tekst { grid-column: 8 / span 5; align-self: center; padding: 24px 0; }
.gz-ny-baby__proeve-tekst h2 { font-size: 46px !important; line-height: 1.08 !important; letter-spacing: -0.03em !important; margin-bottom: 22px !important; }
.gz-ny-baby__proeve-tekst > p { font-size: 16px; line-height: 1.75; color: #5d5066; }
.gz-ny-baby__proeve-tekst > p + p { margin-top: 16px; }
.gz-ny-baby__vaskeliste { margin-top: 28px !important; }
.gz-ny-baby__vaskeliste > div { display: grid; grid-template-columns: 124px minmax(0, 1fr); column-gap: 18px; align-items: start; padding: 16px 0; border-top: 1px solid var(--gz-linje); }
.gz-ny-baby__vaskeliste > div:last-child { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-baby__vaskeliste dd { font-size: 14px; line-height: 1.65; color: #5d5066; }

/* ---------- B\0000f8ger med babystrik p\0000e5  en lavendel flade i fuld bredde ---------- */
.gz-ny-baby__boeger { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding-top: 96px; padding-bottom: 96px; }
.gz-ny-baby__boeger::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-ny-baby__boeger-top { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 36px; }
.gz-ny-baby__boeger-top p { font-size: 15px; line-height: 1.7; color: #5d5066; margin-top: 12px !important; }
.gz-ny-baby__boeger-top .gz-tekstlink { border-bottom-color: var(--gz-blomme); white-space: nowrap; }
.gz-ny-baby .gz-ny-baby__bogliste { min-height: 0; }
/* Bogomslagene st\0000e5r i samme st\0000f8rrelse: JS'en bruger det originale billede (uden DanDomains gr\0000e5  udfyldning), og hvert omslag
   st\0000e5r hele inde i feltet med samme luft rundt om. Hvide kanter i et foto smelter ind i den lyse flade (multiply). */
.gz-ny-baby .gz-ny-baby__bog .gz-produkt__foto img { object-fit: contain; padding: 18px; box-sizing: border-box; mix-blend-mode: multiply; }

/* ---------- Sp\0000f8rgsm\0000e5l: overskrift til venstre, svarene til h\0000f8jre ---------- */
.gz-ny-baby__faq { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; margin-top: var(--gz-luft); }
.gz-ny-baby__faq-top { grid-column: 1 / span 4; }
/* Overskriften og telefonnummeret f\0000f8lger med ned langs sp\0000f8rgsm\0000e5lene, s\0000e5  venstre spalte ikke st\0000e5r tom ved et \0000e5bent svar */
@media (min-width: 1101px) {
  .gz-ny-baby__faq-top { position: sticky; top: calc(var(--gz-header-h, 91px) + 24px); }
}
.gz-ny-baby__faq-top h2 { margin-bottom: 16px !important; }
.gz-ny-baby__faq-top p { font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-ny-baby__faq-liste { grid-column: 6 / span 7; }
.gz-ny-baby__faq-liste details { border-top: 1px solid var(--gz-linje); }
.gz-ny-baby__faq-liste details:last-child { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-baby__faq-liste summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0; cursor: pointer; list-style: none; }
.gz-ny-baby__faq-liste summary::-webkit-details-marker { display: none; }
.gz-ny-baby__faq-liste summary::after {
  content: ''; flex-shrink: 0; width: 8px; height: 8px; margin-right: 4px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-ny-baby__faq-liste details[open] > summary::after { transform: rotate(-135deg) translateY(-1px); }
.gz-ny-baby__faq-liste summary:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }
.gz-ny-baby__faq-liste h3 { font-size: 22px !important; line-height: 1.25 !important; letter-spacing: -0.015em !important; margin: 0 !important; }
.gz-ny-baby__svar p { font-size: 15px; line-height: 1.75; color: #5d5066; max-width: 620px; padding-bottom: 24px; }

/* ---------- Mellemstore sk\0000e6rme ---------- */
@media (max-width: 1100px) {
  .gz-ny-baby__intro { grid-column: 1 / span 7; }
  .gz-ny-baby__maerke { grid-column: 8 / span 5; }
  .gz-ny-baby__vaerktoej { flex-direction: column; align-items: flex-start; }
  .gz-ny-baby__vaelgliste { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-ny-baby__proeve-tekst { grid-column: 7 / span 6; }
  .gz-ny-baby__proeve-tekst h2 { font-size: 38px !important; }
  .gz-ny-baby .gz-ny-baby__bogliste { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .gz-ny-baby__faq-top { grid-column: 1 / span 12; margin-bottom: 24px; }
  .gz-ny-baby__faq-liste { grid-column: 1 / span 12; }
}
@media (max-width: 900px) {
  .gz-ny-baby__intro, .gz-ny-baby__maerke { grid-column: 1 / -1; }
  .gz-ny-baby__maerke { margin-top: 24px; }
  .gz-ny-baby .gz-ny-baby__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  .gz-ny-baby__top, .gz-ny-baby__garn, .gz-ny-baby__vaelg, .gz-ny-baby__sammenlign,
  .gz-ny-baby__proeve, .gz-ny-baby__boeger, .gz-ny-baby__faq { padding-left: 16px; padding-right: 16px; }
  .gz-ny-baby__top { padding-top: 20px; }
  .gz-ny-baby h1 { font-size: 40px !important; margin-bottom: 10px !important; }
  .gz-ny-baby__intro p { font-size: 15px; line-height: 1.65; }
  .gz-ny-baby h2, .gz-ny-baby__proeve-tekst h2 { font-size: 31px !important; }

  /* M\0000e6rket er kompakt p\0000e5  mobil: \0000e9n linje pr. kriterium, s\0000e5  garnet kommer t\0000e6t p\0000e5  */
  .gz-ny-baby__maerke { margin-top: 20px; padding: 18px 20px 12px; }
  .gz-ny-baby__maerke::before { inset: 6px; }
  .gz-ny-baby__maerke-titel { font-size: 19px; margin-bottom: 2px !important; }
  .gz-ny-baby__maerke li { grid-template-columns: 22px minmax(0, 1fr); column-gap: 12px; padding: 9px 0; }
  .gz-ny-baby__maerke .gz-ny-baby__ikon { width: 22px; height: 22px; }
  .gz-ny-baby__maerke li span { font-size: 13px; line-height: 1.45; }
  .gz-ny-baby__maerke li strong { font-size: 14px; }

  /* Filterknapperne kan swipes vandret; selve siden scroller ikke */
  .gz-ny-baby__vaerktoej { margin-top: 24px; gap: 12px; }
  .gz-ny-baby__valg {
    flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; width: calc(100% + 32px); margin: 0 -16px; padding: 0 16px 2px;
  }
  .gz-ny-baby__valg::-webkit-scrollbar { display: none; }
  .gz-ny-baby__valg button { height: 38px; padding: 0 14px; flex-shrink: 0; }
  .gz-ny-baby__antal { font-size: 13px; }
  .gz-ny-baby .gz-ny-baby__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 14px; margin-top: 18px; }
  .gz-ny-baby__fiber { font-size: 12px; }
  .gz-ny-baby__maerkater { gap: 5px; padding-top: 10px; }
  .gz-ny-baby__maerkat { height: 24px; padding: 0 8px 0 6px; font-size: 11px; gap: 4px; }
  .gz-ny-baby__maerkat .gz-ny-baby__ikon { width: 14px; height: 14px; }
  .gz-ny-baby__udenfoto { font-size: 21px; }

  .gz-ny-baby__sektionstop, .gz-ny-baby__boeger-top { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 24px; }
  .gz-ny-baby__vaelgliste { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .gz-ny-baby__vaelgliste h3 { font-size: 22px !important; }
  /* Trykflader p\0000e5  ca. 40 px uden at \0000e6ndre udseendet: et usynligt felt rundt om linket */
  .gz-ny-baby__garnet { gap: 14px 18px; }
  .gz-ny-baby__garnet a, .gz-ny-baby__hop a, .gz-ny-baby__boeger-top .gz-tekstlink { position: relative; }
  .gz-ny-baby__garnet a::after, .gz-ny-baby__hop a::after, .gz-ny-baby__boeger-top .gz-tekstlink::after {
    content: ''; position: absolute; inset: -11px -4px;
  }
  .gz-ny-baby__hop { gap: 12px 18px; margin-top: 16px; font-size: 14px; }

  .gz-ny-baby__sammenlign { padding-top: 56px; padding-bottom: 60px; }
  .gz-ny-baby__stryg { display: block; font-size: 13px; color: var(--gz-daempet); margin-bottom: 10px !important; }
  /* Fiber og l\0000f8bel\0000e6ngde st\0000e5r allerede p\0000e5  kortene lige over; p\0000e5  mobil viser tabellen det, der er nyt (vask, \0000f8kologi,
     pind, strikkefasthed og pris pr. 100 m), med mindre swipe */
  .gz-ny-baby__tabel tr > :nth-child(2), .gz-ny-baby__tabel tr > :nth-child(5) { display: none; }
  .gz-ny-baby__tabel { min-width: 660px; font-size: 13px; }
  .gz-ny-baby__tabel td.er-vask { min-width: 176px; }
  .gz-ny-baby__tabel th, .gz-ny-baby__tabel td { padding: 14px 14px !important; }
  /* Garnets navn bliver st\0000e5ende, n\0000e5r tabellen swipes */
  .gz-ny-baby__tabel tbody th, .gz-ny-baby__tabel thead th:first-child { position: sticky; left: 0; z-index: 1; box-shadow: 1px 0 0 var(--gz-linje); }
  .gz-ny-baby__tabel tbody th { font-size: 14px; }

  .gz-ny-baby__proeve { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-ny-baby__proeve-billede { grid-column: 1; min-height: 0; aspect-ratio: 4 / 3; background-position: 50% 70%; }
  .gz-ny-baby__proeve-tekst { grid-column: 1; padding: 0; }
  .gz-ny-baby__proeve-tekst h2 { margin-bottom: 14px !important; }
  .gz-ny-baby__proeve-tekst > p { font-size: 15px; }
  .gz-ny-baby__vaskeliste > div { grid-template-columns: minmax(0, 1fr); row-gap: 8px; }

  .gz-ny-baby__boeger { padding-top: 56px; padding-bottom: 60px; }
  .gz-ny-baby .gz-ny-baby__bog .gz-produkt__foto img { padding: 10px; }
  .gz-ny-baby__boeger-top .gz-tekstlink { white-space: normal; }
  /* B\0000f8gerne kan swipes vandret (som forsidens vitrine), helt ud til sk\0000e6rmkanten */
  /* Fire b\0000f8ger som 2 \0000d7  2 i stedet for en vandret r\0000e6kke, s\0000e5  alle fire ses uden at swipe */
  .gz-ny-baby .gz-ny-baby__bogliste {
    grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-columns: auto;
    overflow: visible; width: auto; margin-right: 0; padding-right: 0; gap: 30px 14px;
  }

  .gz-ny-baby__faq-liste summary { padding: 18px 0; }
  .gz-ny-baby__faq-liste h3 { font-size: 19px !important; }
  .gz-ny-baby__svar p { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-ny-baby__faq-liste summary::after, .gz-ny-baby__valg button { transition: none; }
}


/* ---- sider/ny-hvor-meget-garn.css ---- */
/* Hvor meget garn skal jeg bruge? (/hvor-meget-garn-skal-jeg-bruge/). Markup: tema/udkast/sider/ny-hvor-meget-garn.html.
   Alt er scopet til .gz-ny-maengde (sidens <main>), s\0000e5  intet l\0000e6kker over p\0000e5  andre sider.
   Genbruger forsidens og garnsidens komponenter uden at \0000e6ndre dem: .gz-brod, .gz-knap, .gz-tekstknap, .gz-skjult.
   Rytmen f\0000f8lger forside v4: samme spalte som logo og menu (--gz-bredde), 12-spalters gitter og --gz-luft mellem
   sektionerne. Sidens ene kendetegn er beregnerens resultat: tallet i serif og en r\0000e6kke n\0000f8gler, hvor det sidste
   viser, hvor meget af det der bruges. Resten er roligt. */

.gz-ny-maengde {
  --gzh-tekst: #5d5066;
  --gzh-ramme: #cfc4d8;
  --gzh-tegn: #a08fae;
  /* Ankre lander under b\0000e5de header og den sticky menu */
  --gzh-anker: calc(var(--gz-header-h, 91px) + var(--gz-nav-h, 54px) + 16px);
  display: block; max-width: var(--gz-bredde); box-sizing: border-box; margin: 0 auto;
  /* 55px: br\0000f8dkrummen st\0000e5r p\0000e5  samme linje som p\0000e5  garnsiden (/shop/132-garn/) */
  padding: 55px 10px var(--gz-luft);
  font-family: var(--gz-sans); color: var(--gz-blomme);
}
.gz-ny-maengde *, .gz-ny-maengde *::before, .gz-ny-maengde *::after { box-sizing: border-box; }
.gz-ny-maengde p { margin: 0; }
.gz-ny-maengde h1, .gz-ny-maengde h2, .gz-ny-maengde h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  text-transform: none !important; text-align: left !important;
}
.gz-ny-maengde h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 16px !important; }
.gz-ny-maengde h3 { font-size: 23px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 10px !important; }
/* Links i br\0000f8dtekst: understreget med syren, som tekstlinket */
.gz-ny-maengde p a, .gz-ny-maengde li a {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-decoration-thickness: 1px !important; text-underline-offset: 3px; transition: text-decoration-color .15s ease;
}
.gz-ny-maengde p a:hover, .gz-ny-maengde li a:hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-ny-maengde a:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; border-radius: 2px; }
.gz-ny-maengde [hidden] { display: none !important; }

/* Designets container rundt om os: ingen hvid stribe f\0000f8r footeren */
body:has(.gz-ny-maengde) .site-wrapper { padding-bottom: 0 !important; }

/* ---------- Toppen: svaret (spalte 1-5) og beregneren (spalte 7-12) ---------- */
.gz-ny-maengde__top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-maengde__svar { grid-column: 1 / span 5; }
.gz-ny-maengde__beregner { grid-column: 7 / span 6; }
.gz-ny-maengde__top h1 {
  font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important;
}
.gz-ny-maengde__lede { font-size: 17px; line-height: 1.7; color: var(--gzh-tekst); }

/* Reglen som et regnestykke i ord. Teksten over er den tilg\0000e6ngelige udgave (aria-hidden her) */
.gz-ny-maengde__formel {
  display: flex; align-items: flex-start; gap: 16px; margin: 30px 0 28px; padding: 22px 0 20px;
  border-top: 1px solid var(--gz-linje); border-bottom: 1px solid var(--gz-linje);
}
.gz-ny-maengde__led { display: flex; flex-direction: column; gap: 4px; }
.gz-ny-maengde__led b { font-family: var(--gz-serif); font-weight: 400; font-size: 30px; line-height: 1; letter-spacing: -0.02em; }
.gz-ny-maengde__led small { font-size: 12px; line-height: 1.3; color: var(--gz-daempet); }
.gz-ny-maengde__tegn { font-family: var(--gz-serif); font-size: 30px; line-height: 1; color: var(--gzh-tegn); }
.gz-ny-maengde__note { font-size: 15px; line-height: 1.75; color: var(--gzh-tekst); margin-bottom: 18px !important; }
.gz-ny-maengde__genveje { font-size: 15px; line-height: 1.75; color: var(--gzh-tekst); }

/* ---------- Beregneren ---------- */
.gz-ny-maengde__beregner { background: var(--gz-lavendel); border-radius: 4px; padding: 32px 36px 36px; scroll-margin-top: var(--gzh-anker); }
/* Panelets overkant flugter med br\0000f8dkrummens overkant: begge starter i toppen af gitteret (m\0000e5lt 14/10: y = 172 i 1891,
   samme linje som garnsidens br\0000f8dkrumme). Derfor ingen margin-top p\0000e5  panelet */
.gz-ny-maengde__beregner h2 { font-size: 28px !important; line-height: 1.15 !important; margin: 0 0 20px !important; }
.gz-ny-maengde__form { display: grid; gap: 16px; margin: 0; }
.gz-ny-maengde__form fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.gz-ny-maengde__form legend, .gz-ny-maengde__felt > label {
  display: block; float: none; width: auto; padding: 0; margin: 0 0 8px; border: 0;
  font-family: var(--gz-sans); font-size: 13px; font-weight: 700; line-height: 1.3; color: var(--gz-blomme); text-transform: none; letter-spacing: 0;
}
/* Tre lige brede knapper i \0000e9n ramme */
.gz-ny-maengde__segment {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: var(--gz-hvid);
  border: 1px solid var(--gzh-ramme); border-radius: 4px; overflow: hidden;
}
.gz-ny-maengde__segment label { position: relative; margin: 0; cursor: pointer; }
.gz-ny-maengde__segment label + label { border-left: 1px solid var(--gzh-ramme); }
.gz-ny-maengde__segment input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.gz-ny-maengde__segment span {
  display: block; padding: 13px 8px; text-align: center; font-size: 14px; font-weight: 600; line-height: 1.2;
  transition: background-color .15s ease, color .15s ease;
}
.gz-ny-maengde__segment label:hover span { background: var(--gz-lys); }
.gz-ny-maengde__segment input:checked + span { background: var(--gz-blomme); color: #fff; }
.gz-ny-maengde__segment input:focus-visible + span { outline: 2px solid #80539b; outline-offset: -4px; }

/* Talfelter med enheden inde i feltet */
.gz-ny-maengde__tal {
  display: flex; align-items: center; gap: 8px; height: 52px; padding: 0 16px; background: var(--gz-hvid);
  border: 1px solid var(--gzh-ramme); border-radius: 4px; transition: border-color .15s ease;
}
.gz-ny-maengde__tal:focus-within { border-color: var(--gz-blomme); box-shadow: 0 0 0 1px var(--gz-blomme); }
.gz-ny-maengde__tal input {
  flex: 1 1 auto; min-width: 0; width: 100%; height: 50px; padding: 0 !important; margin: 0; border: 0 !important; outline: 0;
  background: none !important; box-shadow: none !important; font: 600 18px var(--gz-sans) !important; color: var(--gz-blomme) !important;
  font-variant-numeric: tabular-nums; -moz-appearance: textfield;
}
.gz-ny-maengde__tal input::-webkit-outer-spin-button, .gz-ny-maengde__tal input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.gz-ny-maengde__tal > span { flex: 0 0 auto; font-size: 14px; color: var(--gz-daempet); white-space: nowrap; }
.gz-ny-maengde__form select {
  display: block; width: 100%; height: 52px; padding: 0 44px 0 16px; margin: 0;
  border: 1px solid var(--gzh-ramme) !important; border-radius: 4px; box-shadow: none !important;
  font: 500 15px var(--gz-sans) !important; color: var(--gz-blomme) !important; text-transform: none !important;
  -webkit-appearance: none; appearance: none; cursor: pointer;
  background: var(--gz-hvid) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335283e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E") right 14px center / 20px no-repeat !important;
}
.gz-ny-maengde__form select:focus { outline: 0; border-color: var(--gz-blomme) !important; box-shadow: 0 0 0 1px var(--gz-blomme) !important; }
.gz-ny-maengde__egen { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; margin-top: 10px; }

/* Resultatet: hvidt kort i panelets bund */
.gz-ny-maengde__resultat {
  display: grid; gap: 12px; margin-top: 24px; padding: 26px 28px 24px; background: var(--gz-hvid); border-radius: 4px;
}
.gz-ny-maengde__antal { display: flex; align-items: baseline; gap: 12px; font-family: var(--gz-serif); line-height: 1; letter-spacing: -0.03em; }
.gz-ny-maengde__antal b { font-weight: 400; font-size: 72px; font-variant-numeric: lining-nums; }
.gz-ny-maengde__antal > span { font-size: 30px; letter-spacing: -0.02em; }
/* N\0000f8glerne: fulde n\0000f8gler i blomme, det sidste fyldt s\0000e5  langt, som det bruges */
.gz-ny-maengde__noegler { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; min-height: 26px; }
.gz-ny-maengde__noegler i {
  display: block; width: 26px; height: 26px; border-radius: 50%; font-style: normal;
  background-color: var(--gz-blomme);
  background-image: repeating-linear-gradient(118deg, rgba(255, 255, 255, .2) 0 1.4px, transparent 1.4px 5px);
}
.gz-ny-maengde__noegler i.er-delvis {
  background-image: repeating-linear-gradient(118deg, rgba(255, 255, 255, .2) 0 1.4px, transparent 1.4px 5px),
    linear-gradient(to top, var(--gz-blomme) var(--fyld, 50%), var(--gz-hvid) var(--fyld, 50%));
  background-color: var(--gz-hvid); box-shadow: inset 0 0 0 1.5px var(--gz-blomme);
}
.gz-ny-maengde__noegler em { font-style: normal; font-size: 13px; font-weight: 600; color: var(--gz-daempet); margin-left: 4px; }
.gz-ny-maengde__regnestykke { display: block; font-size: 14px; line-height: 1.65; color: var(--gzh-tekst); font-variant-numeric: tabular-nums; }
.gz-ny-maengde__fasthed {
  display: block; font-size: 13px; line-height: 1.6; color: var(--gz-blomme); padding: 10px 14px; border-radius: 3px; background: var(--gz-lys);
}
.gz-ny-maengde__fasthed.er-advarsel { background: var(--gz-smoergul); }
/* Garn med samme strikkefasthed som opskriftens garn: sm\0000e5  knapper, der regner med det garn i stedet */
.gz-ny-maengde__alternativer { display: block; padding-top: 12px; border-top: 1px solid var(--gz-linje); }
.gz-ny-maengde__alternativer > span { display: block; font-size: 13px; line-height: 1.55; color: var(--gzh-tekst); margin-bottom: 10px; }
.gz-ny-maengde__alternativer > span b { color: var(--gz-blomme); font-weight: 700; }
.gz-ny-maengde__altliste { display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 !important; }
.gz-ny-maengde__alt {
  appearance: none; display: inline-flex; align-items: center; gap: 8px; min-height: 40px; margin: 0; padding: 8px 14px;
  background: var(--gz-lys); border: 1px solid transparent; border-radius: 4px; cursor: pointer;
  font: 600 13px/1.25 var(--gz-sans); color: var(--gz-blomme); text-align: left; text-transform: none; letter-spacing: 0;
  transition: border-color .15s ease, background-color .15s ease;
}
.gz-ny-maengde__alt small { font-size: 12px; font-weight: 500; color: var(--gz-daempet); white-space: nowrap; }
.gz-ny-maengde__alt:hover { border-color: var(--gz-blomme); background: var(--gz-hvid); }
.gz-ny-maengde__alt:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }

/* Pris og vej til garnet: prislinjen over en sekund\0000e6r knap (kantlinje, ikke den fyldte .gz-knap) */
.gz-ny-maengde__pris {
  display: block; font-size: 14px; line-height: 1.6; font-weight: 600; padding-top: 12px; border-top: 1px solid var(--gz-linje);
}
.gz-ny-maengde__pris.er-eksempel { font-weight: 500; font-size: 13px; color: var(--gz-daempet); }
.gz-ny-maengde__prislinje { display: block; }
.gz-ny-maengde .gz-ny-maengde__vare {
  display: inline-flex; align-items: center; min-height: 44px; margin-top: 10px; padding: 10px 18px;
  border: 1px solid var(--gz-blomme); border-radius: 4px; background: var(--gz-hvid);
  font: 650 13px/1.2 var(--gz-sans); color: var(--gz-blomme) !important; text-decoration: none !important;
  transition: background-color .15s ease, color .15s ease;
}
.gz-ny-maengde .gz-ny-maengde__vare:hover { background: var(--gz-blomme); color: #fff !important; }
.gz-ny-maengde .gz-ny-maengde__vare:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }

/* ---------- Afsnit med billede og tekst, lige h\0000f8je (som forside v4) ---------- */
.gz-ny-maengde__afsnit {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
.gz-ny-maengde__billede { min-height: 460px; border-radius: 4px; background: var(--gz-lys) 50% 50% / cover no-repeat; }
.gz-ny-maengde__billede--opskrift { background-image: url(../img/st-side-guide-moenster.jpg); background-position: 50% 50%; }
.gz-ny-maengde__billede--garn { background-image: url(../img/st-side-guide-vaegt.jpg); background-position: 50% 50%; }
.gz-ny-maengde__billede--maal { background-image: url(../img/st-side-guide-maal.jpg); background-position: 50% 50%; }
.gz-ny-maengde__afsnit--billede-venstre .gz-ny-maengde__billede { grid-column: 1 / span 6; grid-row: 1; }
.gz-ny-maengde__afsnit--billede-venstre .gz-ny-maengde__tekst { grid-column: 8 / span 5; grid-row: 1; }
.gz-ny-maengde__afsnit--billede-hoejre .gz-ny-maengde__tekst { grid-column: 1 / span 5; grid-row: 1; }
.gz-ny-maengde__afsnit--billede-hoejre .gz-ny-maengde__billede { grid-column: 7 / span 6; grid-row: 1; }
.gz-ny-maengde__tekst { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 8px 0; }
.gz-ny-maengde__tekst > p { font-size: 16px; line-height: 1.75; color: var(--gzh-tekst); }

/* Trin: tallene er en r\0000e6kkef\0000f8lge, derfor nummereret */
.gz-ny-maengde__trin { list-style: none; margin: 4px 0 0; padding: 0; counter-reset: gzh-trin; display: grid; gap: 16px; }
.gz-ny-maengde__trin li {
  counter-increment: gzh-trin; position: relative; padding-left: 46px; margin: 0;
  font-size: 16px; line-height: 1.7; color: var(--gzh-tekst);
}
.gz-ny-maengde__trin li strong { color: var(--gz-blomme); font-weight: 700; }
.gz-ny-maengde__trin li::before {
  content: counter(gzh-trin); position: absolute; left: 0; top: -1px; width: 30px; height: 30px; border-radius: 50%;
  display: grid; place-items: center; background: var(--gz-lavendel); color: var(--gz-blomme);
  font-family: var(--gz-serif); font-size: 17px; line-height: 1;
}
.gz-ny-maengde__eksempel { margin-top: 30px; padding-top: 26px; border-top: 1px solid var(--gz-linje); }
.gz-ny-maengde__eksempel h3 { font-size: 21px !important; }
.gz-ny-maengde__eksempel p { font-size: 15px; line-height: 1.75; color: var(--gzh-tekst); }

/* ---------- L\0000f8bel\0000e6ngde: definition i to spalter, tabellen i fuld bredde ---------- */
.gz-ny-maengde__loebelaengde { margin-top: var(--gz-luft); scroll-margin-top: var(--gzh-anker); }
.gz-ny-maengde__sektionstop {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; margin-bottom: 38px;
}
.gz-ny-maengde__sektionstop > div:first-child { grid-column: 1 / span 6; }
.gz-ny-maengde__sektionstop > div:nth-child(2) { grid-column: 8 / span 5; padding-top: 10px; }
.gz-ny-maengde__sektionstop p { font-size: 16px; line-height: 1.75; color: var(--gzh-tekst); }
.gz-ny-maengde__sektionstop p strong { color: var(--gz-blomme); }
.gz-ny-maengde__sektionstop--smal { display: block; max-width: 760px; }

.gz-ny-maengde__sortering { font-size: 13px !important; line-height: 1.5; color: var(--gz-daempet); margin: 0 0 14px !important; }
.gz-ny-maengde__tabel table {
  width: 100%; border-collapse: collapse; margin: 0; background: none; table-layout: fixed;
  font-size: 14px; line-height: 1.45; font-variant-numeric: tabular-nums;
}
/* Faste bredder, s\0000e5  fiberkolonnen ikke tager pladsen fra tallene */
.gz-ny-maengde__kol-garn { width: 26%; }
.gz-ny-maengde__kol-fiber { width: 30%; }
.gz-ny-maengde__kol-loeb { width: 18%; }
.gz-ny-maengde__kol-pr100 { width: 14%; }
.gz-ny-maengde__kol-pind { width: 12%; }
.gz-ny-maengde__tabel thead th {
  text-align: left; font-size: 12px; font-weight: 700; color: var(--gz-daempet); padding: 0 18px 12px 0;
  border: 0; border-bottom: 1px solid var(--gz-blomme); background: none; white-space: nowrap;
}
.gz-ny-maengde__tabel tbody th, .gz-ny-maengde__tabel tbody td {
  text-align: left; vertical-align: middle; padding: 15px 18px 15px 0; border: 0; border-bottom: 1px solid var(--gz-linje);
  background: none; font-weight: 400; color: var(--gz-blomme);
}
.gz-ny-maengde__tabel tbody tr:hover th, .gz-ny-maengde__tabel tbody tr:hover td { background: var(--gz-lys); }
.gz-ny-maengde__tabel .er-tal { text-align: right; padding-right: 0; padding-left: 18px; white-space: nowrap; }
.gz-ny-maengde__tabel tbody td.er-tal:nth-child(4) { font-weight: 700; }
.gz-ny-maengde__tabel tbody td:nth-child(2) { color: var(--gzh-tekst); }
.gz-ny-maengde__tabel tbody th a {
  display: inline-block; font-family: var(--gz-serif); font-size: 19px; line-height: 1.2; letter-spacing: -0.01em;
  color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-ny-maengde__tabel tbody th a > span { display: block; font-family: var(--gz-sans); font-size: 12px; letter-spacing: 0; color: var(--gz-daempet); margin-bottom: 2px; }
.gz-ny-maengde__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px; }
.gz-ny-maengde__tabelfod { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px 24px; margin-top: 18px; }
.gz-ny-maengde__tabelfod p { font-size: 13px; line-height: 1.6; color: var(--gz-daempet); max-width: 640px; }
.gz-ny-maengde__tabelfod .gz-tekstknap { font-size: 14px; }

/* ---------- Projekterne: metoden og et billede (lige h\0000f8je), s\0000e5  de fire projekter i to gange to blokke ---------- */
.gz-ny-maengde__projekter { margin-top: var(--gz-luft); scroll-margin-top: var(--gzh-anker); }
.gz-ny-maengde__projekter > .gz-ny-maengde__projekttop { margin-top: 0; }
.gz-ny-maengde__projekttop .gz-ny-maengde__trin { margin-top: 22px; }
.gz-ny-maengde__projektliste { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 24px; margin-top: 64px; }
.gz-ny-maengde__projektliste article { padding-top: 22px; border-top: 1px solid var(--gz-blomme); scroll-margin-top: var(--gzh-anker); }
.gz-ny-maengde__projektliste p { font-size: 16px; line-height: 1.75; color: var(--gzh-tekst); max-width: 540px; }

/* ---------- Opslag og aflukning: en lavendel flade med tre spalter ---------- */
.gz-ny-maengde__opslag {
  margin-top: var(--gz-luft); background: var(--gz-lavendel); border-radius: 4px; padding: 56px 0;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  scroll-margin-top: var(--gzh-anker);
}
.gz-ny-maengde__opslagtop { grid-column: 1 / span 4; padding-left: 48px; }
/* Samme st\0000f8rrelse som de andre sektioner ved siden af en liste (r\0000e5d, sp\0000f8rgsm\0000e5l) */
.gz-ny-maengde__opslagtop h2 { font-size: 34px !important; line-height: 1.12 !important; }
.gz-ny-maengde__opslagtop p { font-size: 15px; line-height: 1.7; color: var(--gzh-tekst); }
.gz-ny-maengde__trin--opslag { grid-column: 5 / span 4; margin-top: 6px; }
.gz-ny-maengde__trin--opslag li { font-size: 15px; }
.gz-ny-maengde__trin--opslag li::before { background: var(--gz-hvid); }
.gz-ny-maengde__aflukning { grid-column: 9 / span 4; padding-right: 48px; padding-top: 2px; }
.gz-ny-maengde__aflukning h3 { font-size: 21px !important; }
.gz-ny-maengde__aflukning p { font-size: 15px; line-height: 1.7; color: var(--gzh-tekst); }

/* ---------- R\0000e5d og sp\0000f8rgsm\0000e5l: overskrift i spalte 1-4, indhold i spalte 5-12 ---------- */
.gz-ny-maengde__raad {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-maengde__raad > h2 { grid-column: 1 / span 4; font-size: 34px !important; line-height: 1.12 !important; padding-right: 20px; }
/* Overskriften f\0000f8lger listen, s\0000e5  venstre spalte ikke st\0000e5r tom under den */
@media (min-width: 768px) {
  .gz-ny-maengde__raad > h2 { position: sticky; top: calc(var(--gz-header-h, 91px) + var(--gz-nav-h, 54px) + 24px); align-self: start; }
}
.gz-ny-maengde__raadliste, .gz-ny-maengde__faq { grid-column: 5 / span 8; }
.gz-ny-maengde__raadliste { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--gz-blomme); }
.gz-ny-maengde__raadliste li {
  margin: 0; padding: 18px 0; border-bottom: 1px solid var(--gz-linje);
  font-size: 16px; line-height: 1.7; color: var(--gzh-tekst);
}
.gz-ny-maengde__raadliste li strong { color: var(--gz-blomme); }
.gz-ny-maengde__spoergsmaal { margin-top: 88px; }
.gz-ny-maengde__faq { border-top: 1px solid var(--gz-blomme); }
.gz-ny-maengde__faq details { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-maengde__faq summary {
  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0;
}
.gz-ny-maengde__faq summary::-webkit-details-marker { display: none; }
.gz-ny-maengde__faq summary::after {
  content: ""; flex: 0 0 auto; width: 9px; height: 9px; margin-right: 4px; border-right: 1.5px solid var(--gz-blomme); border-bottom: 1.5px solid var(--gz-blomme);
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-ny-maengde__faq details[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-ny-maengde__faq summary:focus-visible { outline: 2px solid #80539b; outline-offset: 2px; }
.gz-ny-maengde__faq summary h3 { font-size: 21px !important; margin: 0 !important; }
.gz-ny-maengde__faq details p { font-size: 16px; line-height: 1.75; color: var(--gzh-tekst); padding: 0 40px 22px 0; max-width: 680px; }

/* ---------- Bunden: find garnet ---------- */
.gz-ny-maengde__find .gz-ny-maengde__tekst > p { margin-bottom: 26px; }
.gz-ny-maengde__links { display: grid; grid-template-columns: max-content max-content; gap: 24px 40px; width: 100%; margin-bottom: 30px; }
.gz-ny-maengde .gz-ny-maengde__links h3 {
  font-family: var(--gz-sans) !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0 !important;
  padding-bottom: 8px; margin: 0 0 6px !important; border-bottom: 1px solid var(--gz-linje);
}
.gz-ny-maengde__links ul { list-style: none; margin: 0; padding: 0; }
.gz-ny-maengde__links ul.gz-ny-maengde__to {
  display: grid; grid-template-columns: repeat(2, max-content); grid-template-rows: repeat(5, auto); grid-auto-flow: column; column-gap: 28px;
}
.gz-ny-maengde__links li { margin: 0; padding: 0; break-inside: avoid; }
.gz-ny-maengde__links li a { display: inline-block; padding: 5px 0; font-size: 15px; white-space: nowrap; text-decoration: none !important; }
.gz-ny-maengde__links li a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-blomme) !important; }
.gz-ny-maengde__find .gz-ny-maengde__billede { min-height: 520px; }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-ny-maengde__svar { grid-column: 1 / span 6; padding-right: 12px; }
  .gz-ny-maengde__beregner { grid-column: 7 / span 6; padding: 28px 26px 30px; }
  .gz-ny-maengde__top h1 { font-size: 44px !important; }
  .gz-ny-maengde__afsnit--billede-venstre .gz-ny-maengde__tekst { grid-column: 7 / span 6; }
  .gz-ny-maengde__afsnit--billede-hoejre .gz-ny-maengde__tekst { grid-column: 1 / span 6; }
  .gz-ny-maengde__opslagtop { grid-column: 1 / -1; padding: 0 40px 28px; }
  .gz-ny-maengde__trin--opslag { grid-column: 1 / span 6; padding-left: 40px; }
  .gz-ny-maengde__aflukning { grid-column: 7 / span 6; padding-right: 40px; }
  .gz-ny-maengde__links { grid-template-columns: 1fr; }
}

/* ---------- Tablet: \0000e9t spor ---------- */
@media (max-width: 900px) {
  .gz-ny-maengde__top { grid-template-columns: minmax(0, 1fr); row-gap: 36px; }
  .gz-ny-maengde__svar, .gz-ny-maengde__beregner { grid-column: 1; padding-right: 0; }
  .gz-ny-maengde__beregner { padding: 28px 26px 30px; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  .gz-ny-maengde { padding: 20px 16px var(--gz-luft); }
  .gz-ny-maengde h2 { font-size: 31px !important; }
  .gz-ny-maengde h3 { font-size: 21px !important; }
  .gz-ny-maengde .gz-brod { flex-wrap: wrap; row-gap: 2px; }
  /* Trykm\0000e5l p\0000e5  br\0000f8dkrummen uden at flytte den (samme greb som butikken.css) */
  .gz-ny-maengde .gz-brod a { display: inline-block; padding: 14px 0; margin: -14px 0; }
  .gz-ny-maengde__top { row-gap: 30px; }
  .gz-ny-maengde__top h1 { font-size: 38px !important; margin-bottom: 14px !important; }
  .gz-ny-maengde__lede { font-size: 16px; }
  .gz-ny-maengde__formel { gap: 10px; margin: 22px 0 20px; padding: 16px 0 14px; justify-content: space-between; }
  .gz-ny-maengde__led b, .gz-ny-maengde__tegn { font-size: 23px; }
  .gz-ny-maengde__led small { font-size: 11px; }
  .gz-ny-maengde__genveje { font-size: 14px; }

  /* Beregneren g\0000e5r ud til sk\0000e6rmens kanter, s\0000e5  felterne f\0000e5r plads */
  .gz-ny-maengde__beregner { margin: 0 -16px; border-radius: 0; padding: 30px 16px 32px; }
  .gz-ny-maengde__beregner h2 { font-size: 26px !important; margin-bottom: 18px !important; }
  .gz-ny-maengde__resultat { padding: 22px 18px 20px; }
  .gz-ny-maengde__antal b { font-size: 60px; }
  .gz-ny-maengde__antal > span { font-size: 26px; }
  .gz-ny-maengde__noegler i { width: 22px; height: 22px; }
  .gz-ny-maengde .gz-ny-maengde__vare { display: flex; width: 100%; justify-content: center; }
  .gz-ny-maengde__alt { min-height: 44px; }

  /* Afsnit: billedet over teksten */
  .gz-ny-maengde__afsnit { grid-template-columns: minmax(0, 1fr); row-gap: 26px; }
  .gz-ny-maengde__afsnit .gz-ny-maengde__billede { grid-column: 1 !important; grid-row: 1; min-height: 0; aspect-ratio: 4 / 3; }
  .gz-ny-maengde__afsnit .gz-ny-maengde__tekst { grid-column: 1 !important; grid-row: 2; padding: 0; }
  .gz-ny-maengde__find .gz-ny-maengde__billede { min-height: 0; }

  .gz-ny-maengde__sektionstop { grid-template-columns: minmax(0, 1fr); row-gap: 22px; margin-bottom: 26px; }
  .gz-ny-maengde__sektionstop > div:first-child, .gz-ny-maengde__sektionstop > div:nth-child(2) { grid-column: 1; padding-top: 0; }

  /* Tabellen: kompakte r\0000e6kker. Navn og meter pr. 100 g p\0000e5  f\0000f8rste linje, fiber og l\0000f8bel\0000e6ngde p\0000e5  den n\0000e6ste,
     pinden nederst (kun n\0000e5r den kendes). Ca. 80 px pr. r\0000e6kke, ogs\0000e5  n\0000e5r alle garner er foldet ud */
  .gz-ny-maengde__sortering { margin-bottom: 10px !important; }
  .gz-ny-maengde__tabel thead, .gz-ny-maengde__tabel colgroup { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .gz-ny-maengde__tabel table, .gz-ny-maengde__tabel tbody { display: block; table-layout: auto; }
  .gz-ny-maengde__tabel tbody { border-top: 1px solid var(--gz-blomme); }
  .gz-ny-maengde__tabel tbody tr {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "navn pr100" "fiber loeb" "pind pind";
    column-gap: 16px; row-gap: 2px; align-items: baseline; padding: 12px 0; border-bottom: 1px solid var(--gz-linje);
  }
  .gz-ny-maengde__tabel tbody tr:hover th, .gz-ny-maengde__tabel tbody tr:hover td { background: none; }
  .gz-ny-maengde__tabel tbody th, .gz-ny-maengde__tabel tbody td { display: block; padding: 0 !important; border: 0; text-align: left !important; white-space: normal; }
  .gz-ny-maengde__tabel tbody th { grid-area: navn; }
  .gz-ny-maengde__tabel tbody th a { font-size: 17px; }
  .gz-ny-maengde__tabel tbody th a > span { display: inline; margin: 0 3px 0 0; }
  .gz-ny-maengde__tabel tbody td:nth-child(2) { grid-area: fiber; font-size: 13px; color: var(--gz-daempet); }
  .gz-ny-maengde__tabel tbody td:nth-child(3) { grid-area: loeb; font-size: 13px; color: var(--gz-daempet); text-align: right !important; white-space: nowrap; }
  .gz-ny-maengde__tabel tbody td:nth-child(4) { grid-area: pr100; font-size: 15px; text-align: right !important; white-space: nowrap; }
  .gz-ny-maengde__tabel tbody td:nth-child(4)::after { content: " pr. 100 g"; font-size: 12px; font-weight: 500; color: var(--gz-daempet); }
  .gz-ny-maengde__tabel tbody td:nth-child(5) { grid-area: pind; font-size: 13px; color: var(--gz-daempet); }
  .gz-ny-maengde__tabel tbody td:nth-child(5)::before { content: "Pind "; }
  .gz-ny-maengde__tabel tbody td.er-tom { display: none; }
  .gz-ny-maengde__tabelfod .gz-tekstknap { display: inline-flex; align-items: center; min-height: 44px; }

  .gz-ny-maengde__projektliste { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .gz-ny-maengde__projektliste p { font-size: 15px; }

  .gz-ny-maengde__opslag { margin-left: -16px; margin-right: -16px; border-radius: 0; padding: 44px 16px; grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-ny-maengde__opslagtop, .gz-ny-maengde__trin--opslag, .gz-ny-maengde__aflukning { grid-column: 1; padding: 0; }
  .gz-ny-maengde__opslagtop h2 { font-size: 30px !important; }
  .gz-ny-maengde__projektliste { margin-top: 48px; }

  .gz-ny-maengde__raad { grid-template-columns: minmax(0, 1fr); row-gap: 8px; }
  .gz-ny-maengde__raad > h2, .gz-ny-maengde__raadliste, .gz-ny-maengde__faq { grid-column: 1; }
  .gz-ny-maengde__raad > h2 { font-size: 30px !important; padding-right: 0; }
  .gz-ny-maengde__raadliste li, .gz-ny-maengde__faq details p { font-size: 15px; }
  .gz-ny-maengde__faq details p { padding-right: 0; }
  .gz-ny-maengde__faq summary h3 { font-size: 19px !important; }
  .gz-ny-maengde__spoergsmaal { margin-top: 64px; }

  .gz-ny-maengde__links { grid-template-columns: minmax(0, 1fr); }
  .gz-ny-maengde__links li a { display: inline-flex; align-items: center; min-height: 44px; padding: 0; }
  .gz-ny-maengde__find .gz-knap { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  .gz-ny-maengde *, .gz-ny-maengde *::before, .gz-ny-maengde *::after { transition: none !important; }
}


/* ---- sider/ny-merino-garn.css ---- */
/* Merino garn (/shop/83-merino-garn/) \002014  side-id ny-merino-garn. Markup: tema/udkast/sider/ny-merino-garn.html.
   Alt er scopet til .gz-ny-merino, s\0000e5  intet l\0000e6kker over p\0000e5  andre sider. Genbruger garnsidens kort (.gz-garnkort),
   br\0000f8dkrummen (.gz-brod), knapper, tekstlinks og forsidens afsnit (.gz-afsnit) uden at \0000e6ndre dem.
   Rytmen er forside v4's: samme spalte som logo og menu, 12-spalters gitter, --gz-luft mellem sektionerne. */

.gz-ny-merino {
  font-family: var(--gz-sans); color: var(--gz-blomme);
  padding: 34px 0 var(--gz-luft);
  --gz-ny-tekst: #5d5066;
  --gz-ny-tekst-2: #4e4258;
  --gz-ny-skillelinje: rgba(53, 40, 62, .12);
}
.gz-ny-merino h1, .gz-ny-merino h2, .gz-ny-merino h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  letter-spacing: -0.02em; text-transform: none !important;
}
.gz-ny-merino p { margin: 0; }
.gz-ny-merino ul { list-style: none; margin: 0; padding: 0; }
.gz-ny-merino li { list-style: none; margin: 0; }
/* Ankre lander under den faste header */
.gz-ny-merino [id] { scroll-margin-top: calc(var(--gz-header-h, 90px) + 24px); }
.gz-ny-merino a:focus-visible, .gz-ny-merino summary:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; border-radius: 2px; }
/* Tekstlinks inde i br\0000f8dtekst f\0000f8lger tekstens st\0000f8rrelse (.gz-tekstlink er ellers 13 px) */
.gz-ny-merino p .gz-tekstlink { display: inline; font-size: inherit; font-weight: 600; padding-bottom: 0; }

/* ---------- Toppen: intro (7 spalter) og valgboksen (5 spalter) ---------- */
.gz-ny-merino__top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-merino__intro { grid-column: 1 / span 6; padding-right: 24px; }
.gz-ny-merino h1 { font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 18px !important; }
.gz-ny-merino__lead { font-size: 17px; line-height: 1.7; color: var(--gz-ny-tekst); max-width: 620px; margin-bottom: 16px !important; }
.gz-ny-merino__genveje { font-size: 15px; line-height: 1.8; color: var(--gz-ny-tekst); max-width: 620px; }

.gz-ny-merino__valg {
  grid-column: 7 / span 6; box-sizing: border-box;
  background: var(--gz-lavendel); border-radius: 4px; padding: 28px 32px 26px;
}
.gz-ny-merino__valg h2 { font-size: 26px !important; line-height: 1.15 !important; margin: 0 0 4px !important; }
.gz-ny-merino__valg-hjaelp { font-size: 14px; color: var(--gz-ny-tekst); margin-bottom: 8px !important; }
.gz-ny-merino__valg li + li { border-top: 1px solid var(--gz-ny-skillelinje); }
.gz-ny-merino__valg li a {
  display: grid; grid-template-columns: 92px minmax(0, 1fr) 10px; gap: 12px; align-items: baseline; padding: 12px 0;
  color: var(--gz-blomme) !important; text-decoration: none !important;
}
/* Pil nedad: r\0000e6kkerne er spring til grupperne l\0000e6ngere nede (samme streg som FAQ-pilen) */
.gz-ny-merino__valg li a::after {
  content: ''; align-self: center; justify-self: end; width: 7px; height: 7px; margin-top: -5px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg);
}
.gz-ny-merino__valg-pind { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gz-ny-merino__valg-tekst { font-size: 14px; line-height: 1.5; color: var(--gz-ny-tekst-2); }
.gz-ny-merino__valg-tekst strong { font-weight: 700; color: var(--gz-blomme); margin-right: 3px; }
.gz-ny-merino__valg-note {
  font-size: 13px; line-height: 1.6; color: var(--gz-ny-tekst);
  margin-top: 4px !important; padding-top: 14px; border-top: 1px solid var(--gz-ny-skillelinje);
}
.gz-ny-merino__valg-note .gz-tekstlink { margin-left: 2px; }

/* ---------- Garnerne, grupperet efter tykkelse ----------
   Hver gruppe sp\0000e6nder 3 spalter pr. kort (sat af JS i --spor), s\0000e5  to grupper med to garner deler en r\0000e6kke,
   og kortene har samme bredde i alle grupper. */
.gz-ny-merino__grupper {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 64px 24px; margin-top: 64px;
}
.gz-ny-merino__gruppe { grid-column: span var(--spor, 12); min-width: 0; }
.gz-ny-merino__gruppe-top {
  display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 4px 16px;
  border-top: 1px solid var(--gz-linje); padding-top: 18px; margin-bottom: 24px;
}
.gz-ny-merino__gruppe-top h2 { font-size: 30px !important; line-height: 1.1 !important; margin: 0 !important; }
.gz-ny-merino__gruppe-top p { font-size: 13px; color: var(--gz-daempet); font-variant-numeric: tabular-nums; white-space: nowrap; }
.gz-ny-merino__kort { display: grid; grid-template-columns: repeat(var(--kort, 4), minmax(0, 1fr)); gap: 40px 24px; }
.gz-ny-merino .gz-garnkort .gz-maerkat { letter-spacing: 0; }
/* Produktfotos p\0000e5  hvid bund f\0000e5r rammens lyse lavendel i stedet for hvidt, s\0000e5  de st\0000e5r i samme tone som
   studiefotoene. Multiply \0000e6ndrer kun de lyseste flader; garnets farver flytter sig under 3 %. */
.gz-ny-merino .gz-garnkort .gz-produkt__foto img { mix-blend-mode: multiply; }
.gz-ny-merino .gz-garnkort .gz-produkt__pris { white-space: nowrap; }

/* ---------- F\0000e6lles sektionstop ---------- */
.gz-ny-merino__sektion-top { max-width: 640px; margin-bottom: 30px; }
.gz-ny-merino__sammenlign h2, .gz-ny-merino__superwash h2, .gz-ny-merino__faq h2 {
  font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 12px !important;
}
.gz-ny-merino__sektion-top p { font-size: 16px; line-height: 1.7; color: var(--gz-ny-tekst); }

/* ---------- Sammenligningstabellen ---------- */
.gz-ny-merino__sammenlign { margin-top: var(--gz-luft); }
.gz-ny-merino__tabel { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.45; margin: 0; background: none; }
.gz-ny-merino__tabel tr { background: none !important; height: auto !important; border: 0 !important; }
.gz-ny-merino__tabel th, .gz-ny-merino__tabel td {
  background: none !important; border: 0 !important; text-align: left; vertical-align: top;
  font-family: var(--gz-sans) !important; font-variant-numeric: tabular-nums;
}
.gz-ny-merino__tabel thead th {
  font-size: 12px; font-weight: 650; color: var(--gz-daempet); letter-spacing: 0;
  padding: 0 18px 12px 0 !important; vertical-align: bottom; border-bottom: 1px solid var(--gz-blomme) !important;
}
.gz-ny-merino__tabel thead th span { display: block; font-weight: 400; }
.gz-ny-merino__tabel thead th:first-child { width: 19%; }
.gz-ny-merino__tabel thead th:nth-child(2) { width: 24%; }
.gz-ny-merino__tabel tbody th, .gz-ny-merino__tabel tbody td {
  padding: 18px 18px 18px 0 !important; border-bottom: 1px solid var(--gz-linje) !important; color: var(--gz-ny-tekst-2);
}
.gz-ny-merino__tabel tbody th { font-weight: 400; }
/* Tal, navn og fiberblok p\0000e5  samme midterlinje i r\0000e6kken. Priserne h\0000f8jrestillet, s\0000e5  de kan sammenlignes lodret. */
.gz-ny-merino__tabel tbody th, .gz-ny-merino__tabel tbody td { vertical-align: middle; }
.gz-ny-merino__tabel th:nth-child(7), .gz-ny-merino__tabel td:nth-child(7),
.gz-ny-merino__tabel th:nth-child(8), .gz-ny-merino__tabel td:nth-child(8) { text-align: right; }
.gz-ny-merino__tabel tr > :last-child { padding-right: 0 !important; }
.gz-ny-merino__traek { display: none; }
.gz-ny-merino__tabel tbody th a { font-size: 15px; font-weight: 650; color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-ny-merino__tabel tbody th a span { display: block; font-size: 12px; font-weight: 400; color: var(--gz-daempet); }

/* Fiberbj\0000e6lken: merino i blomme, de andre fibre i sidens lyse farver. Teksten st\0000e5r altid under. */
.gz-ny-merino__bjaelke {
  display: flex; width: 100%; max-width: 200px; height: 6px; border-radius: 3px; overflow: hidden;
  background: var(--gz-linje); margin: 6px 0 8px;
}
.gz-ny-merino__bjaelke > span { display: block; height: 100%; background: #d8cfe0; }
.gz-ny-merino__bjaelke > .er-merino { background: var(--gz-blomme); }
.gz-ny-merino__bjaelke > .er-uld { background: #8d8296; }
.gz-ny-merino__bjaelke > .er-alpaca { background: #aa90bd; }
.gz-ny-merino__bjaelke > .er-polyamid { background: var(--gz-syren); }
.gz-ny-merino__bjaelke > .er-bomuld { background: #e2d27f; }
.gz-ny-merino__bjaelke > span + span { box-shadow: inset 1px 0 0 #fff; }
.gz-ny-merino__fibertekst { display: block; font-size: 13px; }

/* Ordforklaringer under tabellen. Et <details>, der st\0000e5r \0000e5bent og ikke kan lukkes p\0000e5  desktop;
   p\0000e5  mobil lukker JS'en det, og overskriften bliver en knap med pil. */
.gz-ny-merino__ordliste { margin-top: 48px; }
.gz-ny-merino__ordliste summary { list-style: none; display: block; pointer-events: none; }
.gz-ny-merino__ordliste summary::-webkit-details-marker { display: none; }
.gz-ny-merino__ordliste h3 { font-size: 23px !important; line-height: 1.2 !important; margin: 0 0 18px !important; }
.gz-ny-merino__ordliste dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 0; }
.gz-ny-merino__ordliste dt { font-size: 14px; font-weight: 700; margin-bottom: 6px; }
.gz-ny-merino__ordliste dd { margin: 0; font-size: 14px; line-height: 1.65; color: var(--gz-ny-tekst); counter-increment: none; }
.gz-ny-merino__ordliste dd::before { content: none !important; } /* temaet nummererer dd ("1. ") */

/* ---------- Superwash: lavendelb\0000e5nd i fuld bredde (som forsidens butiksr\0000e6kke) ---------- */
.gz-ny-merino__superwash {
  position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 96px 0;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-merino__superwash::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-ny-merino__superwash-tekst { grid-column: 1 / span 6; }
.gz-ny-merino__superwash-tekst > p { font-size: 17px; line-height: 1.75; color: var(--gz-ny-tekst-2); max-width: 580px; margin-bottom: 16px !important; }
/* Tegningen af de to fibre: blomme streg p\0000e5  hvidt, hinden i lilla */
.gz-ny-merino__fibre { margin: 30px 0 0; padding: 0; max-width: 580px; display: grid; gap: 22px; }
.gz-ny-merino__fiber svg { display: block; width: 100%; height: auto; overflow: visible; }
.gz-ny-merino__fiber .fiber { fill: var(--gz-hvid); stroke: var(--gz-blomme); stroke-width: 1.5; }
.gz-ny-merino__fiber .skael { fill: none; stroke: var(--gz-blomme); stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; }
.gz-ny-merino__fiber .skael.loeftet { fill: var(--gz-hvid); }
.gz-ny-merino__fiber .skael.svag { stroke: var(--gz-syren); }
.gz-ny-merino__fiber .hinde { fill: none; stroke: #aa90bd; stroke-width: 3; }
.gz-ny-merino__fiber p { font-size: 14px; line-height: 1.6; color: var(--gz-ny-tekst-2); margin-top: 8px !important; }
.gz-ny-merino__fiber p strong { font-weight: 700; color: var(--gz-blomme); margin-right: 4px; }

.gz-ny-merino__superwash-panel { grid-column: 8 / span 5; background: var(--gz-hvid); border-radius: 4px; padding: 32px 34px 30px; }
.gz-ny-merino__superwash-panel h3 { font-size: 23px !important; line-height: 1.2 !important; margin: 0 0 6px !important; }
.gz-ny-merino__superwash-panel h3 + .gz-ny-merino__punkter { margin-top: 12px; }
.gz-ny-merino__punkter + h3 { margin-top: 26px !important; padding-top: 24px; border-top: 1px solid var(--gz-linje); }
.gz-ny-merino__superwash-panel .gz-ny-merino__punkter li {
  position: relative; padding: 0 0 0 18px; margin-bottom: 8px; border: 0; font-size: 14px; line-height: 1.65; color: var(--gz-ny-tekst-2);
}
.gz-ny-merino__punkter li::before {
  content: ''; position: absolute; left: 1px; top: .66em; width: 6px; height: 6px; border-radius: 50%; background: var(--gz-blomme);
}
.gz-ny-merino__superwash-panel [data-gz-ny-superwash] li { font-size: 14px; line-height: 1.75; color: var(--gz-ny-tekst-2); padding: 14px 0; border-bottom: 1px solid var(--gz-linje); }
.gz-ny-merino__superwash-panel li strong { display: block; font-size: 12px; font-weight: 650; color: var(--gz-daempet); margin-bottom: 2px; }
.gz-ny-merino__superwash-panel li a { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; font-weight: 600; }
.gz-ny-merino__superwash-panel li a:hover { text-decoration-color: var(--gz-blomme); }
.gz-ny-merino__superwash-panel [data-gz-ny-superwash] li:last-child { border-bottom: 0; padding-bottom: 0; }

/* ---------- Garn der ikke kradser: forsidens afsnit, i sidens spalte ---------- */
.gz-ny-merino .gz-afsnit.gz-ny-merino__kradser { max-width: none; padding: 0; margin-top: var(--gz-luft) !important; }
/* Forsidens opskriftsbillede besk\0000e5ret til de to bl\0000f8de fed \0000f8verst til h\0000f8jre, s\0000e5  diagrammet og den m\0000f8nsterstrikkede
   pr\0000f8ve er ude. Det handler om fibrene, ikke om opskrifter, og det er ikke samme udsnit som p\0000e5  forsiden.
   Erstattes af et eget foto af merinogarn (billed\0000f8nske). */
.gz-ny-merino__kradser .gz-afsnit__billede { background-size: 190%; background-position: 100% 13%; }
.gz-ny-merino__kradser .gz-afsnit__tekst > p { max-width: 460px; margin-bottom: 18px; }
.gz-ny-merino__kradser .gz-afsnit__tekst > p:last-of-type { margin-bottom: 30px; }
.gz-ny-merino__kradser .gz-afsnit__tekst > .gz-tekstlink { margin-top: 22px; }

/* ---------- Sp\0000f8rgsm\0000e5l: overskrift og links til venstre, svarene til h\0000f8jre ---------- */
.gz-ny-merino__faq {
  margin-top: var(--gz-luft);
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
/* Svarene starter i spalte 7 som valgboksen \0000f8verst, s\0000e5  h\0000f8jrespalten kun har to kanter (7 og 8) ned gennem siden */
.gz-ny-merino__faq-side { grid-column: 1 / span 5; padding-right: 24px; }
.gz-ny-merino__faq-side > p { font-size: 15px; line-height: 1.7; color: var(--gz-ny-tekst); max-width: 340px; }
.gz-ny-merino__faq-side > p a { color: var(--gz-blomme) !important; font-weight: 600; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; white-space: nowrap; }
.gz-ny-merino__mere { margin-top: 36px; }
.gz-ny-merino__mere h3 { font-size: 20px !important; line-height: 1.2 !important; margin: 0 0 10px !important; }
.gz-ny-merino__mere ul { display: grid; grid-template-columns: repeat(2, max-content); gap: 2px 28px; }
.gz-ny-merino__mere a { font-size: 14px; line-height: 2; color: var(--gz-blomme) !important; text-decoration: none !important; border-bottom: 1px solid transparent; }

.gz-ny-merino__faq-liste { grid-column: 7 / span 6; border-top: 1px solid var(--gz-linje); }
.gz-ny-merino__faq-liste details { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-merino__faq-liste summary {
  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 0;
}
.gz-ny-merino__faq-liste summary::-webkit-details-marker { display: none; }
.gz-ny-merino__faq-liste summary::after {
  content: ''; flex-shrink: 0; width: 9px; height: 9px; margin-right: 6px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-3px);
}
.gz-ny-merino__faq-liste details[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-ny-merino__faq-liste summary h3 { font-size: 22px !important; line-height: 1.25 !important; margin: 0 !important; }
.gz-ny-merino__faq-liste details > p { font-size: 16px; line-height: 1.75; color: var(--gz-ny-tekst-2); max-width: 640px; padding: 0 32px 26px 0; }

/* Hover kun med mus, s\0000e5  et tryk p\0000e5  mobil ikke efterlader understregninger */
@media (hover: hover) {
  .gz-ny-merino__valg li a:hover .gz-ny-merino__valg-tekst { text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
  .gz-ny-merino__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 3px; }
  .gz-ny-merino__tabel tbody tr:hover th, .gz-ny-merino__tabel tbody tr:hover td { background: var(--gz-lys) !important; }
  .gz-ny-merino__mere a:hover { border-bottom-color: var(--gz-syren); }
  .gz-ny-merino__faq-liste summary:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
}


/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-ny-merino__intro { grid-column: 1 / span 6; padding-right: 8px; }
  .gz-ny-merino__valg { padding: 24px 24px 22px; }
  .gz-ny-merino__ordliste dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-ny-merino__superwash-tekst { grid-column: 1 / span 7; padding-right: 16px; }
  .gz-ny-merino__superwash-panel { grid-column: 8 / span 5; padding: 26px 24px; }
  .gz-ny-merino__faq-side { grid-column: 1 / span 5; padding-right: 16px; }
}

/* Under 900 px er der ikke plads til otte kolonner. Tabellen forbliver en tabel, men ruller vandret,
   og garnnavnet st\0000e5r fast i venstre side, s\0000e5  man altid kan se, hvilken r\0000e6kke man l\0000e6ser. */
@media (max-width: 900px) {
  .gz-ny-merino__top { grid-template-columns: minmax(0, 1fr); row-gap: 28px; }
  .gz-ny-merino__intro, .gz-ny-merino__valg { grid-column: 1; padding-right: 0; }

  /* Kortene er under 210 px brede her; farveprikkerne skjules som p\0000e5  mobil, antallet st\0000e5r stadig */
  .gz-ny-merino .gz-farveprikker > span { display: none; }
  /* position: relative holder ogs\0000e5  den skjulte <caption> (position: absolute) inde i rammen, ellers giver den vandret scroll */
  .gz-ny-merino__tabel-ramme {
    position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch; overscroll-behavior-x: contain;
    border-top: 1px solid var(--gz-blomme);
  }
  .gz-ny-merino__tabel-ramme:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
  .gz-ny-merino__tabel { min-width: 780px; font-size: 13px; }
  .gz-ny-merino__tabel thead th { padding: 12px 14px 10px 0 !important; border-bottom: 1px solid var(--gz-linje) !important; white-space: nowrap; }
  .gz-ny-merino__tabel thead th span { display: inline; }
  .gz-ny-merino__tabel tbody th, .gz-ny-merino__tabel tbody td { padding: 12px 14px 12px 0 !important; }
  .gz-ny-merino__tabel td { white-space: nowrap; }
  .gz-ny-merino__tabel td[data-label="Fiber"] { white-space: normal; min-width: 150px; padding-left: 12px !important; }
  .gz-ny-merino__tabel thead th:nth-child(2) { padding-left: 12px !important; }
  .gz-ny-merino__tabel thead th:first-child, .gz-ny-merino__tabel tbody th {
    position: sticky; left: 0; z-index: 1; width: 112px; min-width: 112px; padding-right: 12px !important;
    background: var(--gz-hvid) !important; box-shadow: inset -1px 0 0 var(--gz-linje);
  }
  .gz-ny-merino__tabel tbody th a { font-size: 14px; }
  .gz-ny-merino__tabel tbody tr:hover th, .gz-ny-merino__tabel tbody tr:hover td { background: none !important; }
  .gz-ny-merino__tabel tbody tr:hover th { background: var(--gz-hvid) !important; }
  .gz-ny-merino__bjaelke { max-width: 150px; margin: 2px 0 6px; }
  .gz-ny-merino__fibertekst { font-size: 12px; line-height: 1.4; }

  .gz-ny-merino__superwash { grid-template-columns: minmax(0, 1fr); row-gap: 36px; }
  .gz-ny-merino__superwash-tekst, .gz-ny-merino__superwash-panel { grid-column: 1; padding-right: 0; }

  /* Sp\0000f8rgsm\0000e5lene lige under overskriften; "Mere garn" efter dem */
  .gz-ny-merino__faq { grid-template-columns: minmax(0, 1fr); row-gap: 0; }
  .gz-ny-merino__faq-side { display: contents; }
  .gz-ny-merino__faq-side > h2, .gz-ny-merino__faq-side > p { order: 1; grid-column: 1; }
  .gz-ny-merino__faq-side > p { margin-bottom: 24px !important; }
  .gz-ny-merino__faq-liste { order: 2; grid-column: 1; }
  .gz-ny-merino__mere { order: 3; grid-column: 1; justify-self: stretch; width: auto !important; margin: 40px 0 0 !important; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  /* Temaets container har 10 px margen p\0000e5  mobil; siden bruger 16 px som forsiden */
  .gz-ny-merino { padding: 22px 6px var(--gz-luft); }
  .gz-ny-merino h1 { font-size: 40px !important; margin-bottom: 12px !important; }
  /* F\0000f8rste sk\0000e6rm skal vise garn: kortere intro, og valgboksen viser kun pind og tykkelse.
     Garnnavnene st\0000e5r i grupperne lige under, og superwash st\0000e5r p\0000e5  kortenes m\0000e6rkat og i introen. */
  .gz-ny-merino__lead { font-size: 15px; line-height: 1.65; margin-bottom: 0 !important; }
  .gz-ny-merino__lead-mere, .gz-ny-merino__genveje,
  .gz-ny-merino__valg-hjaelp, .gz-ny-merino__valg-note, .gz-ny-merino__valg-navne { display: none; }
  .gz-ny-merino__top { row-gap: 22px; }
  .gz-ny-merino__valg { padding: 18px 20px 6px; }
  .gz-ny-merino__valg h2 { font-size: 21px !important; margin-bottom: 6px !important; }
  .gz-ny-merino__valg li a { grid-template-columns: 84px minmax(0, 1fr) 10px; gap: 10px; padding: 10px 0; }

  .gz-ny-merino__grupper { grid-template-columns: minmax(0, 1fr); row-gap: 48px; margin-top: 36px; }
  .gz-ny-merino__gruppe { grid-column: 1 / -1; }
  .gz-ny-merino__gruppe-top { margin-bottom: 16px; padding-top: 14px; }
  .gz-ny-merino__gruppe-top h2 { font-size: 25px !important; }
  .gz-ny-merino__kort { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 14px; }

  .gz-ny-merino__sammenlign h2, .gz-ny-merino__superwash h2, .gz-ny-merino__faq h2 { font-size: 31px !important; }
  .gz-ny-merino__sektion-top { margin-bottom: 18px; }
  .gz-ny-merino__traek { display: block; font-size: 13px !important; color: var(--gz-daempet) !important; margin-top: 10px !important; }
  .gz-ny-merino__sektion-top p { font-size: 15px; }

  /* "S\0000e5dan l\0000e6ser du tabellen" er lukket p\0000e5  mobil og \0000e5bnes med et tryk */
  .gz-ny-merino__ordliste { margin-top: 28px; border-top: 1px solid var(--gz-linje); border-bottom: 1px solid var(--gz-linje); }
  .gz-ny-merino__ordliste summary {
    pointer-events: auto; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0;
  }
  .gz-ny-merino__ordliste summary::after {
    content: ''; flex-shrink: 0; width: 9px; height: 9px; margin-right: 6px;
    border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-3px);
  }
  .gz-ny-merino__ordliste[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
  .gz-ny-merino__ordliste h3 { font-size: 19px !important; margin: 0 !important; }
  .gz-ny-merino__ordliste dl { grid-template-columns: minmax(0, 1fr); gap: 16px; padding-bottom: 20px; }

  .gz-ny-merino__superwash { padding: 56px 0; }
  .gz-ny-merino__superwash-tekst > p { font-size: 15px; }
  .gz-ny-merino__superwash-panel { padding: 24px 20px 22px; }

  .gz-ny-merino .gz-afsnit.gz-ny-merino__kradser { padding: 0; }
  .gz-ny-merino__faq-liste summary { padding: 18px 0; gap: 16px; }
  .gz-ny-merino__faq-liste summary h3 { font-size: 19px !important; }
  .gz-ny-merino__faq-liste details > p { font-size: 15px; padding-right: 0; }

  /* Trykflader p\0000e5  mindst 44 px for links, der st\0000e5r alene */
  .gz-ny-merino__mere ul { gap: 0 28px; }
  .gz-ny-merino__mere a { display: inline-block; padding: 12px 0; line-height: 1.4; }
  /* Tekstlinket har en synlig streg under sig, s\0000e5  trykfladen udvides med et usynligt lag i stedet for padding */
  .gz-ny-merino__kradser .gz-afsnit__tekst > .gz-tekstlink { position: relative; }
  .gz-ny-merino__kradser .gz-afsnit__tekst > .gz-tekstlink::before { content: ''; position: absolute; inset: -13px -4px; }
}


/* ---- sider/ny-mohair-garn.css ---- */
/* Mohair garn og f\0000f8lgetr\0000e5d (/shop/82-mohair-garn/, kategori 82). Markup: tema/udkast/sider/ny-mohair-garn.html.
   Alt er scopet til .gz-ny-mohair (sidens <main>), s\0000e5  intet l\0000e6kker over p\0000e5  andre sider.
   Genbruger forsidens og garnsidens komponenter uden at \0000e6ndre dem: .gz-brod, .gz-garnkort, .gz-spec, .gz-tekstlink.
   Rytmen f\0000f8lger forside v4: samme spalte som logo og menu (--gz-bredde), 12-spalters gitter og --gz-luft mellem sektionerne.
   R\0000e6kkef\0000f8lgen skifter mellem billede og tekst: hylde (fotos) \002192  tabel \002192  foto + tekst \002192  tekst + panel \002192  sp\0000f8rgsm\0000e5l.
   Sp\0000f8rgsm\0000e5lene er bygget som p\0000e5  s\0000f8stersiderne (bomuld, alpaca): overskrift og links til venstre, svarene til h\0000f8jre. */

.gz-ny-mohair {
  --gzm-mohair: var(--gz-blomme);
  --gzm-silke: var(--gz-syren);
  --gzm-polyamid: var(--gz-smoergul);
  --gzm-alpaca: #a08fae;
  --gzm-andet: #d9d2df;
  --gzm-tekst: #5d5066;
  display: block; max-width: var(--gz-bredde); box-sizing: border-box; margin: 0 auto;
  /* 55 px: br\0000f8dkrumme og H1 st\0000e5r p\0000e5  samme h\0000f8jde som p\0000e5  garnsiden (/shop/132-garn/) og alpacasiden */
  padding: 55px 10px var(--gz-luft);
  font-family: var(--gz-sans); color: var(--gz-blomme);
}
.gz-ny-mohair *, .gz-ny-mohair *::before, .gz-ny-mohair *::after { box-sizing: border-box; }
.gz-ny-mohair p { margin: 0; text-wrap: pretty; }
.gz-ny-mohair h1, .gz-ny-mohair h2, .gz-ny-mohair h3 { font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important; text-transform: none !important; text-wrap: balance; }
.gz-ny-mohair h2 { font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 0 14px !important; }
.gz-ny-mohair h3 { font-size: 23px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 0 10px !important; }
/* Links i br\0000f8dtekst: understreget med syren, som tekstlinket */
.gz-ny-mohair p a, .gz-ny-mohair dd a, .gz-ny-mohair__mere a {
  color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important;
  text-decoration-thickness: 1px !important; text-underline-offset: 3px; transition: text-decoration-color .15s ease;
}
.gz-ny-mohair p a:hover, .gz-ny-mohair dd a:hover, .gz-ny-mohair__mere a:hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-ny-mohair a:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; border-radius: 2px; }
/* St\0000f8rre trykflade p\0000e5  sm\0000e5  links uden at flytte noget: en usynlig flade rundt om linket */
.gz-ny-mohair .gz-brod a, .gz-ny-mohair__hyldetop .gz-tekstlink { position: relative; }
.gz-ny-mohair .gz-brod a::before, .gz-ny-mohair__hyldetop .gz-tekstlink::before { content: ""; position: absolute; inset: -7px -4px; }

/* Temaet s\0000e6tter "1." foran alle dd (counter(definitions)) */
.gz-ny-mohair dd::before, .gz-ny-mohair dt::before { content: none !important; }

/* Noter til Marianne: fakta, vi mangler. Fjernes, n\0000e5r hun har svaret */
.gz-ny-mohair__udfyldes { margin-top: 10px !important; padding: 8px 12px; border-radius: 4px; background: var(--gz-smoergul); color: #5b4a1c !important; font-size: 14px !important; line-height: 1.6 !important; }

/* ---------- Toppen: H1 og intro, s\0000e5  det korte svar som et lavendel b\0000e5nd i samme gitter som kortene ---------- */
.gz-ny-mohair__toptekst { max-width: 700px; }
.gz-ny-mohair__top h1 {
  font-size: 52px !important; line-height: 1.05 !important; letter-spacing: -0.03em !important; margin: 0 0 14px !important;
}
.gz-ny-mohair__intro { font-size: 17px; line-height: 1.7; color: var(--gzm-tekst); }
/* B\0000e5ndet har ingen vandret padding, s\0000e5  dets 12 spalter er sidens spalter: skillelinjerne st\0000e5r pr\0000e6cis
   over garnkortenes venstre kant. Luften ligger i stedet inde i hver spalte. */
.gz-ny-mohair__valg {
  margin-top: 34px; background: var(--gz-lavendel); padding: 28px 0; border-radius: 4px;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-mohair__valg h2 {
  grid-column: 1 / span 3; padding: 0 12px 0 30px; font-size: 24px !important; line-height: 1.2 !important; letter-spacing: -0.015em !important; margin: 0 !important;
}
.gz-ny-mohair__valg dl { grid-column: 4 / span 9; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.gz-ny-mohair__valg dl > div { display: grid; align-content: start; gap: 4px; padding: 0 24px; border-left: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-mohair__valg dt { font-size: 13px; font-weight: 700; color: var(--gz-blomme); }
.gz-ny-mohair__valg dd { margin: 0; font-size: 14px; line-height: 1.6; color: var(--gzm-tekst); }

/* ---------- Hylden: garnkortene fra garn.json ---------- */
.gz-ny-mohair__hylde { margin-top: 64px; }
.gz-ny-mohair__hyldetop { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; margin-bottom: 26px; }
.gz-ny-mohair__hyldetop h2 { margin: 0 !important; }
.gz-ny-mohair__gitter {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; min-height: 380px; transition: opacity .2s ease;
}
.gz-ny-mohair__gitter[aria-busy="true"] { opacity: .5; }
.gz-ny-mohair__gitter:has(> .gz-tom) { display: block; min-height: 0; }
.gz-ny-mohair__gitter .gz-produkt__navn { font-size: 15px; }
/* Prisr\0000e6kken st\0000e5r p\0000e5  linje i hele r\0000e6kken, ogs\0000e5  n\0000e5r et korts spec-linje brydes */
.gz-ny-mohair__gitter .gz-garnkort__bund { margin-top: auto; padding-top: 10px; }
/* Mondial Lieve har et hvidt leverand\0000f8rfoto i en gr\0000e5  ramme. Indtil der er et eget foto i samme opstilling som de andre:
   besk\0000e6r rammen v\0000e6k og lad det hvide blive kortets egen baggrund */
.gz-ny-mohair__gitter a[href*="13767"] .gz-produkt__foto img { transform: scale(1.4); mix-blend-mode: multiply; }
.gz-ny-mohair__gitter a[href*="13767"]:hover .gz-produkt__foto img { transform: scale(1.44); }
.gz-ny-mohair__uden-js { margin: 0; padding-left: 18px; line-height: 1.9; }

/* ---------- Sammenligningstabellen ---------- */
.gz-ny-mohair__sammenlign { margin-top: var(--gz-luft); }
.gz-ny-mohair__sektionstop { max-width: 640px; margin-bottom: 30px; }
.gz-ny-mohair__sektionstop p { font-size: 16px; line-height: 1.7; color: var(--gzm-tekst); }
.gz-ny-mohair__tabel table {
  width: 100%; border-collapse: collapse; font-size: 14px; line-height: 1.45; font-variant-numeric: tabular-nums;
  margin: 0; background: none;
}
.gz-ny-mohair__tabel thead th {
  text-align: left; font-size: 12px; font-weight: 700; color: var(--gz-daempet); padding: 0 18px 12px 0;
  border-bottom: 1px solid var(--gz-blomme); white-space: nowrap; background: none;
}
.gz-ny-mohair__tabel tbody th, .gz-ny-mohair__tabel tbody td {
  text-align: left; vertical-align: top; padding: 20px 18px 20px 0; border: 0; border-bottom: 1px solid var(--gz-linje);
  background: none; font-weight: 400; color: var(--gz-blomme);
}
.gz-ny-mohair__tabel .er-tal { text-align: right; padding-right: 0; }
.gz-ny-mohair__tabel thead th.er-tal { padding-right: 0; }
.gz-ny-mohair__tabel tbody td.er-tal { padding-left: 18px; white-space: nowrap; }
.gz-ny-mohair__tabel tbody th a {
  display: block; font-family: var(--gz-serif); font-size: 21px; line-height: 1.15; letter-spacing: -0.01em;
  color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-ny-mohair__tabel tbody th a > span { display: block; font-family: var(--gz-sans); font-size: 12px; letter-spacing: 0; color: var(--gz-daempet); margin-bottom: 3px; }
.gz-ny-mohair__tabel tbody th a:hover { text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 4px; }
.gz-ny-mohair__tabel tbody td:nth-child(2) { width: 26%; }
.gz-ny-mohair__tabel tbody td:last-child { font-weight: 700; }
/* F\0000f8lgetr\0000e5d uden mohair: egen gruppe under mohairgarnerne, med en lille lavendel overskriftsr\0000e6kke */
.gz-ny-mohair__tabel tbody.er-uden-mohair tr:last-child th, .gz-ny-mohair__tabel tbody.er-uden-mohair tr:last-child td { border-bottom: 0; }
.gz-ny-mohair__tabel tr.gz-ny-mohair__gruppe th {
  padding: 30px 0 10px; border-bottom: 1px solid var(--gz-blomme);
  font-family: var(--gz-sans); font-size: 12px; font-weight: 700; color: var(--gz-daempet);
}
/* Fiberandelen som en tynd bj\0000e6lke under teksten. Teksten b\0000e6rer informationen; bj\0000e6lken er kun et blik */
.gz-ny-mohair__fiberbjaelke { display: flex; height: 6px; margin-top: 9px; border-radius: 3px; overflow: hidden; background: var(--gzm-andet); max-width: 220px; }
.gz-ny-mohair__fiberbjaelke > span { display: block; height: 100%; background: var(--gzm-andet); }
.gz-ny-mohair__fiberbjaelke > span + span { box-shadow: inset 2px 0 0 #fff; }
.gz-ny-mohair__fiberbjaelke .er-mohair { background: var(--gzm-mohair); }
.gz-ny-mohair__fiberbjaelke .er-silke { background: var(--gzm-silke); }
.gz-ny-mohair__fiberbjaelke .er-polyamid { background: var(--gzm-polyamid); }
.gz-ny-mohair__fiberbjaelke .er-alpaca { background: var(--gzm-alpaca); }
.gz-ny-mohair__note { margin-top: 18px !important; font-size: 13px; line-height: 1.6; color: var(--gz-daempet); max-width: 760px; }

/* ---------- Hvad er mohair: foto og tekst i samme h\0000f8jde ---------- */
.gz-ny-mohair__fiber {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
/* Udsnit af shoppens foto af Isager Silk Mohair: glorien p\0000e5  det karry og det lysebl\0000e5  n\0000f8gle, t\0000e6t p\0000e5.
   (Hele fotoet st\0000e5r som kort p\0000e5  hylden; her viser vi det, teksten handler om.) Kilden er 1220 px bred */
.gz-ny-mohair__fiberbillede {
  grid-column: 1 / span 6; min-height: 520px; border-radius: 4px; background: var(--gz-lys)
    url('https://shop86254.sfstatic.io/upload_dir/shop/_thumbs/gz-isager-silk-mohair-2611.w1220.h1220.backdrop.jpg') 22% 60% / 190% auto no-repeat;
}
.gz-ny-mohair__fibertekst { grid-column: 8 / span 5; display: flex; flex-direction: column; justify-content: center; padding: 8px 0; }
.gz-ny-mohair__fibertekst > p { font-size: 16px; line-height: 1.75; color: var(--gzm-tekst); }
.gz-ny-mohair__fibertekst > h3 { margin-top: 28px !important; }

/* ---------- F\0000f8lgetr\0000e5d: tekst til venstre, lavendel panel til h\0000f8jre i samme h\0000f8jde ---------- */
.gz-ny-mohair__foelgetraad {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
}
/* Teksten starter i panelets overkant, s\0000e5  H2 og den lavendel flade flugter */
.gz-ny-mohair__foelgetekst { grid-column: 1 / span 6; }
.gz-ny-mohair__foelgetekst > p { font-size: 16px; line-height: 1.75; color: var(--gzm-tekst); }
.gz-ny-mohair__foelgetekst > h3 { margin-top: 34px !important; }
.gz-ny-mohair__trin { list-style: none; margin: 0; padding: 0; counter-reset: gzm-trin; display: grid; gap: 14px; }
.gz-ny-mohair__trin li {
  counter-increment: gzm-trin; position: relative; padding-left: 44px; font-size: 16px; line-height: 1.65; color: var(--gzm-tekst);
}
.gz-ny-mohair__trin li::before {
  content: counter(gzm-trin); position: absolute; left: 0; top: -1px; width: 28px; height: 28px; border-radius: 50%;
  display: grid; place-items: center; background: var(--gz-lavendel); color: var(--gz-blomme);
  font-family: var(--gz-serif); font-size: 16px; line-height: 1;
}
.gz-ny-mohair__par {
  grid-column: 8 / span 5; background: var(--gz-lavendel); padding: 36px 40px 38px; border-radius: 4px;
  display: flex; flex-direction: column; justify-content: center; /* panelet er lige s\0000e5  h\0000f8jt som teksten; indholdet st\0000e5r i midten */
}
.gz-ny-mohair__par > p { font-size: 15px; line-height: 1.7; color: var(--gzm-tekst); }
.gz-ny-mohair__par > h3:not(:first-child) { margin-top: 30px !important; }
.gz-ny-mohair__parliste { list-style: none; margin: 16px 0 0; padding: 0; }
.gz-ny-mohair__parliste li { display: grid; gap: 2px; padding: 10px 0; border-top: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-mohair__parliste li:last-child { border-bottom: 1px solid rgba(53, 40, 62, .14); }
.gz-ny-mohair__parnavne { font-size: 15px; font-weight: 650; }
.gz-ny-mohair__parnavne a { color: var(--gz-blomme) !important; text-decoration: none !important; }
.gz-ny-mohair__parnavne a:hover { text-decoration: underline !important; text-underline-offset: 3px; }
.gz-ny-mohair__partal { font-size: 14px; color: var(--gzm-tekst); font-variant-numeric: tabular-nums; }
.gz-ny-mohair__parlager { font-size: 12px; font-weight: 700; color: var(--gz-daempet); }
/* F\0000f8lgetr\0000e5d uden mohair: to sm\0000e5  vandrette kort i panelet */
.gz-ny-mohair__udenmohair:empty { display: none; }
.gz-ny-mohair__udenmohair { margin-top: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.gz-ny-mohair__minikort {
  display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 12px; align-items: center;
  background: var(--gz-hvid); padding: 10px; border-radius: 4px; color: var(--gz-blomme) !important; text-decoration: none !important;
}
.gz-ny-mohair__minikort .gz-produkt__foto { margin: 0; aspect-ratio: 1 / 1; }
.gz-ny-mohair__minikort .gz-produkt__maerke { margin-bottom: 0; }
.gz-ny-mohair__minikort .gz-produkt__navn { font-size: 15px; }
.gz-ny-mohair__minikort .gz-produkt__pris { display: block; margin-top: 2px; font-weight: 650; font-size: 14px; }
.gz-ny-mohair__minikort:hover .gz-produkt__navn { text-decoration: underline; text-underline-offset: 3px; }
.gz-ny-mohair__minikort:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }

/* ---------- Sp\0000f8rgsm\0000e5l: overskrift, kontakt og flere links til venstre (4), svarene til h\0000f8jre (7), som p\0000e5  s\0000f8stersiderne ---------- */
.gz-ny-mohair__faq {
  margin-top: var(--gz-luft); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-ny-mohair__faqtop { grid-column: 1 / span 4; grid-row: 1; }
.gz-ny-mohair__faqtop p { font-size: 15px; line-height: 1.7; color: var(--gzm-tekst); }
/* Temaet giver <nav> en smallere bredde og auto-margener; listen skal flugte med overskriften over den */
.gz-ny-mohair__mere { grid-column: 1 / span 4; grid-row: 2; width: 100%; margin: 36px 0 0 !important; }
.gz-ny-mohair__mere h3 { font-size: 21px !important; padding-bottom: 10px; margin: 0 !important; border-bottom: 1px solid var(--gz-linje); }
.gz-ny-mohair__mere ul { columns: 2; column-gap: 24px; list-style: none; margin: 0 !important; padding: 8px 0 0 !important; }
.gz-ny-mohair__mere li { break-inside: avoid; list-style: none; margin: 0; padding: 0; }
.gz-ny-mohair__mere ul a { display: inline-block; padding: 5px 0; font-size: 14px; text-decoration: none !important; }
.gz-ny-mohair__mere ul a:hover { text-decoration: underline !important; }
.gz-ny-mohair__faqliste { grid-column: 6 / span 7; grid-row: 1 / span 3; border-top: 1px solid var(--gz-blomme); }
.gz-ny-mohair__faqliste details { border-bottom: 1px solid var(--gz-linje); }
.gz-ny-mohair__faqliste summary {
  list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0;
}
.gz-ny-mohair__faqliste summary::-webkit-details-marker { display: none; }
.gz-ny-mohair__faqliste summary h3 { font-size: 21px !important; line-height: 1.25 !important; letter-spacing: -0.01em !important; margin: 0 !important; }
.gz-ny-mohair__faqliste summary::after {
  content: ""; flex-shrink: 0; width: 8px; height: 8px; margin-right: 4px;
  border-right: 1.5px solid var(--gz-blomme); border-bottom: 1.5px solid var(--gz-blomme);
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-ny-mohair__faqliste details[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-ny-mohair__faqliste summary:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gz-ny-mohair__faqliste summary:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-ny-mohair__svar { padding: 0 40px 24px 0; }
.gz-ny-mohair__svar > p { font-size: 15px; line-height: 1.75; color: var(--gzm-tekst); }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-ny-mohair__valg { padding: 26px 28px; }
  .gz-ny-mohair__valg h2 { grid-column: 1 / -1; padding: 0; margin-bottom: 18px !important; }
  .gz-ny-mohair__valg dl { grid-column: 1 / -1; }
  .gz-ny-mohair__valg dl > div { padding: 0 0 0 20px; }
  .gz-ny-mohair__valg dl > div:first-child { padding-left: 0; border-left: 0; }
  .gz-ny-mohair__foelgetekst { grid-column: 1 / span 6; }
  .gz-ny-mohair__par { grid-column: 7 / span 6; padding: 32px 30px; }
  .gz-ny-mohair__fibertekst { grid-column: 7 / span 6; }
  .gz-ny-mohair__faqtop, .gz-ny-mohair__mere { grid-column: 1 / span 5; }
  .gz-ny-mohair__faqliste { grid-column: 6 / span 7; }
}
@media (max-width: 900px) {
  .gz-ny-mohair__gitter { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-ny-mohair__foelgetraad, .gz-ny-mohair__fiber { grid-template-columns: minmax(0, 1fr); }
  .gz-ny-mohair__foelgetekst, .gz-ny-mohair__par, .gz-ny-mohair__fiberbillede, .gz-ny-mohair__fibertekst { grid-column: 1; }
  .gz-ny-mohair__valg { display: block; }
  .gz-ny-mohair__valg dl { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .gz-ny-mohair__valg dl > div { padding: 12px 0 0; border-left: 0; border-top: 1px solid rgba(53, 40, 62, .14); }
  .gz-ny-mohair__valg dl > div:first-child { padding-top: 12px; border-top: 1px solid rgba(53, 40, 62, .14); }
  .gz-ny-mohair__par { margin-top: 40px; }
  .gz-ny-mohair__fiberbillede { min-height: 0; aspect-ratio: 4 / 3; }
  .gz-ny-mohair__fibertekst { padding: 28px 0 0; }
  /* Sp\0000f8rgsm\0000e5l: overskrift, s\0000e5  svarene, s\0000e5  flere links */
  .gz-ny-mohair__faq { display: block; }
  .gz-ny-mohair__faqliste { margin-top: 24px; }
  .gz-ny-mohair__svar { padding-right: 0; }
  .gz-ny-mohair__mere { margin-top: 40px !important; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  /* 43 px = garnsidens 22 px + kategorirammens 21 px, som p\0000e5  alpacasiden */
  .gz-ny-mohair { padding: 43px 16px var(--gz-luft); }
  .gz-ny-mohair h2 { font-size: 30px !important; }
  .gz-ny-mohair h3 { font-size: 21px !important; }
  .gz-ny-mohair__top h1 { font-size: 40px !important; margin-bottom: 10px !important; }
  .gz-ny-mohair__intro { font-size: 15px; line-height: 1.65; }
  .gz-ny-mohair__valg { margin-top: 22px; padding: 20px 18px 22px; }
  .gz-ny-mohair__valg h2 { font-size: 21px !important; margin-bottom: 12px !important; }
  .gz-ny-mohair__valg dl { gap: 10px; }
  .gz-ny-mohair__valg dl > div, .gz-ny-mohair__valg dl > div:first-child { padding-top: 10px; gap: 2px; }
  .gz-ny-mohair__hylde { margin-top: 44px; }
  .gz-ny-mohair__hyldetop { margin-bottom: 18px; }
  .gz-ny-mohair__gitter { gap: 30px 14px; min-height: 0; }
  .gz-ny-mohair__sektionstop { margin-bottom: 18px; }
  .gz-ny-mohair__sektionstop p, .gz-ny-mohair__foelgetekst > p, .gz-ny-mohair__fibertekst > p,
  .gz-ny-mohair__trin li { font-size: 15px; }

  /* Tabellen bliver til \0000e9n blok pr. garn: navn \0000f8verst, tallene i to kolonner. Ingen vandret scroll */
  /* Kolonneoverskrifterne st\0000e5r som sm\0000e5  etiketter i hver celle (data-label) */
  .gz-ny-mohair__tabel thead { display: none; }
  .gz-ny-mohair__tabel table, .gz-ny-mohair__tabel tbody { display: block; }
  /* Seks smalle spor: l\0000f8bel\0000e6ngde, pind og strikkefasthed tre p\0000e5  r\0000e6kke, de to priser to p\0000e5  r\0000e6kke */
  .gz-ny-mohair__tabel tbody tr {
    display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px 14px; padding: 20px 0;
    border-top: 1px solid var(--gz-linje);
  }
  .gz-ny-mohair__tabel tbody td:nth-child(3), .gz-ny-mohair__tabel tbody td:nth-child(4), .gz-ny-mohair__tabel tbody td:nth-child(5) { grid-column: span 2; }
  .gz-ny-mohair__tabel tbody td:nth-child(6), .gz-ny-mohair__tabel tbody td:nth-child(7) { grid-column: span 3; }
  .gz-ny-mohair__tabel tbody:first-of-type tr:first-child { border-top: 1px solid var(--gz-blomme); }
  .gz-ny-mohair__tabel tbody tr:last-child { border-bottom: 1px solid var(--gz-linje); }
  .gz-ny-mohair__tabel tbody.er-uden-mohair tr:last-child { border-bottom: 0; }
  .gz-ny-mohair__tabel tbody th, .gz-ny-mohair__tabel tbody td { display: block; padding: 0 !important; border: 0 !important; width: auto !important; text-align: left !important; font-size: 14px; }
  .gz-ny-mohair__tabel tbody th, .gz-ny-mohair__tabel tbody td:nth-child(2) { grid-column: 1 / -1; }
  .gz-ny-mohair__tabel tbody td::before { content: attr(data-label); display: block; font-size: 11px; font-weight: 700; color: var(--gz-daempet); margin-bottom: 1px; }
  .gz-ny-mohair__tabel tbody td:nth-child(2)::before { display: none; }
  .gz-ny-mohair__tabel tbody th a { font-size: 20px; }
  .gz-ny-mohair__tabel tr.gz-ny-mohair__gruppe { padding: 28px 0 10px; border-top: 0; border-bottom: 1px solid var(--gz-blomme); }
  .gz-ny-mohair__tabel tbody tr.gz-ny-mohair__gruppe + tr { border-top: 0; }
  .gz-ny-mohair__tabel tr.gz-ny-mohair__gruppe th { font-size: 12px; }
  .gz-ny-mohair__fiberbjaelke { max-width: none; }

  .gz-ny-mohair__foelgetekst > h3 { margin-top: 28px !important; }
  .gz-ny-mohair__trin li { padding-left: 40px; }
  .gz-ny-mohair__par { margin-top: 32px; padding: 28px 20px 30px; }
  .gz-ny-mohair__par > h3:not(:first-child) { margin-top: 28px !important; }
  .gz-ny-mohair__udenmohair { grid-template-columns: minmax(0, 1fr); }
  .gz-ny-mohair__fibertekst { padding-top: 24px; }
  .gz-ny-mohair__faqliste summary { padding: 16px 0; }
  .gz-ny-mohair__faqliste summary h3 { font-size: 19px !important; }
  .gz-ny-mohair__mere h3 { font-size: 21px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-ny-mohair__gitter, .gz-ny-mohair__faqliste summary::after { transition: none; }
}


/* ---- sider/produkt.css ---- */
/* =====================================================================
   Produktsiden: skabelonen for alle produkter (13/10 2026, rettet efter review 14/10).
   Markup: tema/udkast/sider/produkt.html \0000b7  JS: tema/assets/js/sider/produkt.js \0000b7  SEO: seo/produkt.md
   Samme sprog som forside v4: hvid grund, lavendel som accentflade, blomme tekst og knapper, serif-overskrifter,
   12-spalters gitter i --gz-bredde og --gz-luft mellem sektionerne. Sidens ene greb er faktaboksen, der ligner
   banderolen p\0000e5  et n\0000f8gle (ikoner for l\0000f8bel\0000e6ngde, pind og strikkefasthed).
   Alt er scopet til .gz-side-produkt og klassepr\0000e6fikset gz-pd-.
   ===================================================================== */

.gz-side-produkt .site-main-content { padding-top: 0 !important; }
.gz-side-produkt .modules.m-product { margin: 0 !important; }
.gz-pd { font-family: var(--gz-sans); color: var(--gz-blomme); padding: 30px 0 var(--gz-luft); }
.gz-pd [hidden] { display: none !important; }
.gz-pd h2 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  font-size: 40px !important; line-height: 1.1 !important; letter-spacing: -0.025em !important; margin: 0 !important; text-transform: none !important;
}

/* ---------- Br\0000f8dkrumme (samme som garnsiden) ---------- */
.gz-pd__brod { flex-wrap: wrap; row-gap: 2px; margin: 0 0 26px; }
.gz-pd__brod span[aria-current] { color: var(--gz-blomme); }

/* ---------- Toppen: galleri (7 spalter) og k\0000f8b (5 spalter) ---------- */
.gz-pd__top { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; }
.gz-pd__galleri { grid-column: 1 / span 7; }
.gz-pd__koeb { grid-column: 8 / span 5; padding-left: 32px; }
/* Uden galleri (fx et produkt uden billeder) st\0000e5r k\0000f8beboksen alene i venstre side */
.gz-pd:not(.gz-pd--galleri) .gz-pd__koeb { grid-column: 1 / span 6; padding-left: 0; }

.gz-pd__hovedfoto { position: relative; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 4px; background: var(--gz-lys); }
.gz-pd__hovedfoto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
/* Pakkefotos p\0000e5  hvid bund (pinde, Piuma, Australia, Elena) st\0000e5r i samme lyse felt som alle andre fotos i stedet for
   en hvid ramme med kant: rammen er --gz-lys, og fotoets hvide bund blandes ind i den (multiply). \0000c6gte fotos r\0000f8res ikke */
.gz-pd .gz-pd-renset { position: relative; }
.gz-pd .gz-pd-renset.er-lys { background-color: var(--gz-lys) !important; }
.gz-pd .gz-pd-renset.er-lys img { mix-blend-mode: multiply; }
.gz-pd__miniaturer { list-style: none; margin: 12px 0 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.gz-pd__miniaturer li { list-style: none; margin: 0; padding: 0; }
.gz-pd__miniaturer button {
  display: block; width: 100%; aspect-ratio: 1 / 1; padding: 0; border: 0; border-radius: 4px; overflow: hidden; cursor: pointer;
  background: var(--gz-lys); position: relative;
}
.gz-pd__miniaturer img { width: 100%; height: 100%; object-fit: cover; display: block; }
.gz-pd__miniaturer button::after { content: ''; position: absolute; inset: 0; border-radius: 4px; box-shadow: inset 0 0 0 2px transparent; transition: box-shadow .15s ease; z-index: 1; }
.gz-pd__miniaturer button[aria-current="true"]::after { box-shadow: inset 0 0 0 2px var(--gz-blomme); }
.gz-pd__miniaturer button:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }

/* ---------- K\0000f8beboksen ---------- */
.gz-pd__titel h1, .gz-pd__titel .m-product-title {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; text-transform: none !important; color: var(--gz-blomme) !important;
  font-size: clamp(38px, 3.1vw, 50px) !important; line-height: 1.04 !important; letter-spacing: -0.03em !important; margin: 6px 0 14px !important; padding: 0 !important;
}
/* Lange navne (KnitPro-s\0000e6ttet): mindre, og tal-bindestreg-tal brydes ikke ("3,5-8,0mm") */
.gz-pd--lang-titel .gz-pd__titel h1, .gz-pd--lang-titel .gz-pd__titel .m-product-title { font-size: clamp(32px, 2.4vw, 40px) !important; line-height: 1.1 !important; }
.gz-pd-samlet { white-space: nowrap; }
/* Uden s\0000e6tning under H1 f\0000e5r prisen samme luft, som s\0000e6tningen ellers giver */
.gz-pd--uden-lede .gz-pd__titel h1, .gz-pd--uden-lede .gz-pd__titel .m-product-title { margin-bottom: 22px !important; }
.gz-pd__lede { margin: 0 0 22px !important; max-width: 46ch; font-size: 15px; line-height: 1.6; color: #5d5066; }

.gz-pd__pris { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; margin: 0 0 26px; padding-bottom: 24px; border-bottom: 1px solid var(--gz-linje); }
.gz-pd__prislinje { margin: 0 !important; display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
.gz-pd__beloeb { font-family: var(--gz-serif); font-size: 34px; line-height: 1; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.gz-pd__foer { font-size: 16px; color: var(--gz-daempet); }
.gz-pd__enhed { font-size: 14px; color: var(--gz-daempet); }
.gz-pd .gz-pd__mere { font-size: 13px; font-weight: 600; color: var(--gz-blomme) !important; text-decoration: underline !important; text-decoration-color: var(--gz-syren) !important; text-underline-offset: 4px; white-space: nowrap; }
.gz-pd .gz-pd__mere:hover { text-decoration-color: var(--gz-blomme) !important; }
.gz-pd--egen-pris .gz-pd__serverpris { display: none; }
/* Serverens pris, hvis JS ikke k\0000f8rer */
.gz-pd__serverpris .m-product-price { font-family: var(--gz-serif) !important; font-size: 32px !important; color: var(--gz-blomme) !important; }
.gz-pd__serverpris hr, .gz-pd__serverpris .m-product-extra { display: none !important; }

/* Farvepr\0000f8ver: runde udsnit af farvefotoet */
.gz-pd__valg { margin: 0 0 18px; }
.gz-pd__valgt { margin: 0 0 12px !important; font-size: 14px; min-height: 21px; }
.gz-pd__valgt span { font-weight: 650; }
.gz-pd__valgt strong { font-weight: 500; color: #5d5066; }
.gz-pd__proever { display: grid; grid-template-columns: repeat(auto-fill, minmax(44px, 1fr)); gap: 10px; }
.gz-pd-proeve {
  position: relative; display: block; width: 100%; aspect-ratio: 1 / 1; padding: 0; border: 0; border-radius: 50%; cursor: pointer;
  background: var(--gz-lys); box-shadow: inset 0 0 0 1px rgba(53, 40, 62, .12); transition: box-shadow .15s ease;
}
.gz-pd-proeve img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; border-radius: 50%; object-fit: cover; display: block; }
/* N\0000e6rbilleder af garnet: zoom ind p\0000e5  midten, s\0000e5  leverand\0000f8rens farvenummer i hj\0000f8rnet (Isager) ikke st\0000e5r i pr\0000f8ven */
.gz-pd-proeve:not(.er-flad):not(.er-uden-foto) { overflow: hidden; }
.gz-pd-proeve:not(.er-flad) img { transform: scale(1.9); border-radius: 0; }
.gz-pd-proeve:hover { box-shadow: 0 0 0 2px #fff, 0 0 0 3px var(--gz-syren); }
.gz-pd-proeve[aria-checked="true"] { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--gz-blomme); }
.gz-pd-proeve:focus-visible { outline: 2px solid #80539b; outline-offset: 5px; }
.gz-pd-proeve.er-udsolgt { cursor: not-allowed; opacity: .4; }
/* Farve uden foto i DanDomain: farvenummeret st\0000e5r i pr\0000f8ven */
.gz-pd-proeve.er-uden-foto { display: flex; align-items: center; justify-content: center; background: var(--gz-lavendel); }
.gz-pd-proeve__nr { font-size: 11px; font-weight: 650; color: var(--gz-blomme); font-variant-numeric: tabular-nums; }
/* Pakkefoto omsat til garnets farve (produkt.js, garnFarve) */
.gz-pd-proeve.er-flad img { display: none !important; }
.gz-pd-proeve.er-flad.er-lys:not([aria-checked="true"]):not(:hover) { box-shadow: inset 0 0 0 1px rgba(53, 40, 62, .22); }
.gz-pd-proeve.er-udsolgt::after { content: ''; position: absolute; left: 50%; top: 6%; bottom: 6%; width: 1.5px; background: var(--gz-blomme); transform: rotate(45deg); }
/* Knapper, n\0000e5r varianterne ikke har hvert sit foto (strikkecaf\0000e9ens aftener, pindest\0000f8rrelser): et fast gitter, s\0000e5 
   kanterne flugter, uanset hvor lang teksten er. \0000c9n linje st\0000e5r midt i knappen */
.gz-pd__proever.er-knapper { display: grid; grid-template-columns: repeat(auto-fill, minmax(128px, 1fr)); gap: 8px; }
.gz-pd-knapvalg {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; width: 100%; min-height: 54px; padding: 9px 14px; cursor: pointer; text-align: left;
  border: 1px solid #cfc4d8; border-radius: 4px; background: #fff; color: var(--gz-blomme); font: inherit;
  transition: border-color .15s ease, background-color .15s ease;
}
.gz-pd-knapvalg:hover { border-color: var(--gz-blomme); }
.gz-pd-knapvalg__tekst { font-size: 14px; font-weight: 650; }
.gz-pd-knapvalg__tekst::first-letter { text-transform: uppercase; }
.gz-pd-knapvalg__note { font-size: 12px; color: #7a5c95; }
.gz-pd-knapvalg[aria-checked="true"] { background: var(--gz-blomme); border-color: var(--gz-blomme); }
.gz-pd-knapvalg[aria-checked="true"] span { color: #fff; }
.gz-pd-knapvalg.er-udsolgt { cursor: not-allowed; background: var(--gz-lys); border-color: var(--gz-linje); }
.gz-pd-knapvalg.er-udsolgt .gz-pd-knapvalg__tekst { color: #a59bab; text-decoration: line-through; text-decoration-thickness: 1px; }
.gz-pd-knapvalg:focus-visible { outline: 2px solid #80539b; outline-offset: 3px; }
.gz-pd__flere { margin-top: 10px; }
.gz-pd__status { margin: 10px 0 0 !important; font-size: 13px; color: #5d5066; }
.gz-pd__status:empty { display: none; }
.gz-pd__besked { margin: 12px 0 0 !important; font-size: 13px; line-height: 1.5; color: #5d5066; }
.gz-pd__besked:empty { display: none; }
.gz-pd__besked.er-advarsel { color: #9b2c2c; font-weight: 600; }

/* DanDomains formular, restylet. Med vores egne farvepr\0000f8ver er deres dropdown skjult (men stadig i brug) */
.gz-pd .gz-pd__formular form { margin: 0; }
.gz-pd .gz-pd__formular hr { display: none !important; }
.gz-pd--egne-valg .m-product-dropdown-list { display: none !important; }
.gz-pd .m-description-short-wrap { display: none !important; }
.gz-pd .m-product-variants { margin: 0; }
.gz-pd .m-product-dropdown-list fieldset { margin: 0 0 16px !important; padding: 0 !important; border: 0 !important; }
.gz-pd .gz-pd-dropetiket { display: block; margin: 0 0 8px; font-size: 14px; font-weight: 650; color: var(--gz-blomme); }
.gz-pd .select2-container { width: 100% !important; margin-top: 0 !important; }
.gz-pd .select2-container .select2-choice {
  display: flex !important; align-items: center; height: 50px !important; line-height: 1.3 !important; padding: 0 44px 0 16px !important;
  border: 1px solid #cfc4d8 !important; border-radius: 4px !important; background: #fff !important; box-shadow: none !important;
  color: var(--gz-blomme) !important; font: 500 14px var(--gz-sans) !important; text-transform: none !important;
}
.gz-pd .select2-container .select2-choice .select2-chosen { margin: 0 !important; line-height: 1.3 !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gz-pd .select2-container .select2-choice:hover { border-color: var(--gz-blomme) !important; }
.gz-pd .select2-container.select2-container-active .select2-choice { border-color: var(--gz-blomme) !important; outline: 2px solid #80539b; outline-offset: 1px; }
.gz-pd .select2-container .select2-choice .select2-arrow {
  position: absolute !important; top: 0 !important; right: 0 !important; bottom: 0 !important; display: flex !important; align-items: center; justify-content: center;
  border: 0 !important; background: none !important; width: 44px !important;
}
.gz-pd .select2-container.select2-container-disabled .select2-choice { background: var(--gz-lys) !important; color: #a59bab !important; border-color: var(--gz-linje) !important; }
/* Vores egen besked under knappen erstatter DanDomains "V\0000e6lg Variant"-boks */
.gz-pd .variantInfoPanel .panel:has(.choseVariantWarning) { display: none !important; }
/* Lagerpanelet: kun lagerlinjen med en gr\0000f8n prik (som i farvekortet). Prisen st\0000e5r allerede \0000f8verst, og hverken
   etiketten "Lagerstatus:", fontawesome-fluebenet eller varenummeret siger kunden noget */
.gz-pd .variantInfoPanel { margin: 0 !important; }
.gz-pd .variantInfoPanel .panel, .gz-pd .m-product-stock, .gz-pd .m-product-info {
  border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 !important; margin: 0 0 14px !important; border-radius: 0 !important;
}
.gz-pd .variantInfoPanel .panel-body, .gz-pd .m-product-stock .panel-body { display: flex; align-items: center; gap: 8px; padding: 0 !important; font-size: 14px; color: var(--gz-blomme); }
.gz-pd .variantInfoPanel .panel:has(.product-priceLines), .gz-pd .m-product-info { display: none !important; }
.gz-pd--egne-valg .variantInfoPanel .panel:has(.choseVariantWarning) { display: none !important; }
.gz-pd .variantInfoPanel .panel-body > strong, .gz-pd .m-product-stock-status { display: none !important; }
.gz-pd .variantInfoPanel .fa-check, .gz-pd .m-product-stock .fa-check, .gz-pd .product-stock-icon { display: none !important; }
.gz-pd .variantInfoPanel .panel-success .panel-body::before, .gz-pd .m-product-stock.panel-success .panel-body::before { content: ''; flex: 0 0 auto; width: 7px; height: 7px; border-radius: 50%; background: #4f7a43; }
.gz-pd .variantInfoPanel .panel-danger .panel-body, .gz-pd .variantInfoPanel .panel-warning .panel-body, .gz-pd .m-product-stock.panel-danger .panel-body { color: #9b2c2c; }
.gz-pd .variantInfoPanel .panel-success .panel-body { color: var(--gz-blomme); }
.gz-pd .choseVariantWarning { font-weight: 600; }

/* Gavekortets felter (hvis gavekortet en dag bruger skabelonen) */
.gz-pd .m-product-giftcard .form-group { margin: 0 0 14px !important; padding: 0 !important; border: 0 !important; }
.gz-pd .m-product-giftcard .form-label { display: block; margin: 0 0 6px !important; font-size: 13px !important; font-weight: 650 !important; color: var(--gz-blomme) !important; text-transform: none !important; }
.gz-pd .m-product-giftcard .form-required { color: var(--gz-daempet); }
.gz-pd .m-product-giftcard .input-group { display: flex; border: 1px solid #cfc4d8; border-radius: 4px; background: #fff; overflow: hidden; }
.gz-pd .m-product-giftcard .input-group-addon { display: flex; align-items: center; padding: 0 14px !important; border: 0 !important; background: var(--gz-lys) !important; color: var(--gz-daempet) !important; font-size: 13px; width: auto !important; }
.gz-pd .m-product-giftcard .input-group-addon:has(.fa) { display: none !important; }
.gz-pd .m-product-giftcard .form-input { height: 48px; border: 0 !important; box-shadow: none !important; padding: 0 14px !important; font: 15px var(--gz-sans) !important; color: var(--gz-blomme) !important; background: #fff !important; flex: 1; width: 100%; }
.gz-pd .m-product-giftcard textarea.form-input { height: 110px; padding: 12px 14px !important; border: 1px solid #cfc4d8 !important; border-radius: 4px; resize: vertical; }

/* Antal og "L\0000e6g i kurven" p\0000e5  \0000e9n linje */
.gz-pd .m-product-transaction { margin: 4px 0 0 !important; }
.gz-pd .m-product-transaction .row { display: flex; align-items: stretch; gap: 12px; margin: 0 !important; }
/* Temaets clearfix (::before/::after) bliver flex-elementer og skubbede antal og knap 12 px ind fra kanten */
.gz-pd .m-product-transaction .row::before, .gz-pd .m-product-transaction .row::after { display: none !important; content: none !important; }
.gz-pd .m-product-transaction .row > div { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.gz-pd .m-product-transaction-amount { flex: 0 0 auto; }
.gz-pd .m-product-transaction-button { flex: 1 1 auto; }
.gz-pd .m-product-transaction .input-group { display: flex; height: 100%; border: 0 !important; background: none !important; }
.gz-pd .m-product-transaction-unittitle { display: none !important; }
.gz-pd-antal { display: flex; align-items: stretch; height: 54px; border: 1px solid #cfc4d8; border-radius: 4px; background: #fff; overflow: hidden; }
.gz-pd-antal button { width: 40px; border: 0; background: none; cursor: pointer; font: 400 20px/1 var(--gz-sans); color: var(--gz-blomme); }
.gz-pd-antal button:hover { background: var(--gz-lys); }
.gz-pd-antal button:focus-visible { outline: 2px solid #80539b; outline-offset: -2px; }
.gz-pd .gz-pd-antal input.form-input {
  width: 46px !important; height: auto !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important;
  text-align: center; font: 600 15px var(--gz-sans) !important; color: var(--gz-blomme) !important;
}
.gz-pd .gz-pd__koebknap, .gz-pd .m-product-transaction-button .button-primary {
  display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 54px !important; min-height: 54px; margin: 0 !important;
  padding: 0 24px !important; border: 0 !important; border-radius: 4px !important; background: var(--gz-blomme) !important; color: #fff !important;
  font: 650 14px var(--gz-sans) !important; letter-spacing: 0 !important; text-transform: none !important; box-shadow: none !important; cursor: pointer;
  transition: background-color .15s ease;
}
.gz-pd .gz-pd__koebknap:hover { background: #4a3856 !important; }
.gz-pd .gz-pd__koebknap:focus-visible { outline: 3px solid #80539b; outline-offset: 3px; }
.gz-pd .gz-pd__koebknap .fa { display: none; }

/* Levering og butik */
.gz-pd__saerlig { margin: 20px 0 0 !important; font-size: 14px; line-height: 1.6; color: #5d5066; }
.gz-pd__saerlig .gz-tekstlink { margin-left: 4px; }
.gz-pd__fordele { list-style: none; margin: 26px 0 0 !important; padding: 22px 0 0 !important; border-top: 1px solid var(--gz-linje); display: grid; gap: 10px; }
.gz-pd__fordele li { list-style: none; display: flex; align-items: center; gap: 12px; margin: 0; font-size: 14px; color: var(--gz-blomme); }
.gz-pd__fordele svg { width: 20px; height: 20px; flex-shrink: 0; fill: none; stroke: #7a5c95; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.gz-pd__butik { margin: 18px 0 0 !important; font-size: 14px; line-height: 1.6; color: #5d5066; }
.gz-pd__butik .gz-tekstlink { margin-top: 6px; }
.gz-pd__butik span { display: block; }

/* ---------- Faktaboksen: en banderole p\0000e5  lavendel ---------- */
.gz-pd-fakta { position: relative; isolation: isolate; margin-top: var(--gz-luft); padding: 88px 0 92px; }
.gz-pd-fakta::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-pd-fakta__top { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; margin-bottom: 36px; }
.gz-pd-fakta__top p { max-width: 380px; margin: 0 !important; font-size: 15px; line-height: 1.65; color: #5d5066; }
.gz-pd-etiket { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 !important; background: var(--gz-hvid); border-radius: 6px; }
.gz-pd-etiket--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gz-pd-etiket--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gz-pd-etiket--1 { grid-template-columns: minmax(0, 1fr); }
.gz-pd-etiket__felt { display: grid; grid-row: span 4; grid-template-rows: subgrid; row-gap: 0; align-content: start; padding: 32px 30px 34px; border-left: 1px solid var(--gz-linje); margin: 0; }
.gz-pd-etiket__felt:first-child { border-left: 0; }
.gz-pd-etiket__ikon { display: block; width: 40px; height: 40px; margin-bottom: 18px; color: var(--gz-blomme); }
.gz-pd-etiket__ikon svg { width: 40px; height: 40px; fill: none; stroke: currentColor; stroke-width: 1.3; stroke-linecap: round; stroke-linejoin: round; }
.gz-pd-etiket dt { font-size: 13px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 6px; }
.gz-pd-etiket dd { margin: 0 !important; }
.gz-pd-etiket dd::before, .gz-pd-fakta__mere dd::before, .gz-pd-fakta__mere dt::before { content: none !important; }
.gz-pd-etiket__vaerdi { font-family: var(--gz-serif); font-size: 36px; line-height: 1.08; letter-spacing: -0.02em; color: var(--gz-blomme); font-variant-numeric: tabular-nums; }
.gz-pd-etiket__vaerdi.er-lille { font-size: 25px; line-height: 1.2; letter-spacing: -0.01em; }
.gz-pd-etiket__vaerdi span { display: block; font-family: var(--gz-sans); font-size: 14px; letter-spacing: 0; color: var(--gz-daempet); margin-top: 6px; }
.gz-pd-etiket__hjaelp { padding-top: 18px; font-size: 14px; line-height: 1.6; color: #5d5066; }
.gz-pd-fakta__mere { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 24px; margin: 28px 0 0 !important; padding: 0 !important; }
.gz-pd-fakta__mere > div { margin: 0; }
.gz-pd-fakta__mere dt { font-size: 13px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-pd-fakta__mere dd { font-size: 15px; line-height: 1.55; margin: 0 !important; color: var(--gz-blomme); }
.gz-pd-fakta__links { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px 24px; margin: 30px 0 0 !important; font-size: 14px; }
.gz-pd-fakta__links > span { color: var(--gz-daempet); }

/* ---------- Sektionsoverskrifter: titel og intro til venstre, link til h\0000f8jre ---------- */
.gz-pd-sektion__top { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 30px; }
.gz-pd-sektion__top > a { flex: 0 0 auto; margin-bottom: 4px; }
.gz-pd-sektion__intro { margin: 12px 0 0 !important; font-size: 15px; line-height: 1.65; color: #5d5066; max-width: 640px; }

/* ---------- Farvekortet ---------- */
.gz-pd-farvekort { margin-top: var(--gz-luft); }
.gz-pd-farvekort__top { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 34px; }
.gz-pd-farvekort__top p { margin: 0 !important; font-size: 15px; line-height: 1.65; color: #5d5066; max-width: 620px; }
.gz-pd-farvekort__liste { list-style: none; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 28px 16px; }
.gz-pd-farve { list-style: none; margin: 0; padding: 0; }
.gz-pd-farve > button, .gz-pd-farve > div { display: flex; flex-direction: column; align-items: stretch; width: 100%; padding: 0; border: 0; background: none; text-align: left; font: inherit; color: var(--gz-blomme); }
.gz-pd-farve > button { cursor: pointer; }
/* width: 100% er n\0000f8dvendig: inde i en <button> klappede feltet ellers sammen til 0 px, n\0000e5r fotoet manglede */
.gz-pd-farve__foto { display: block; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 4px; background: var(--gz-lys); margin-bottom: 10px; position: relative; }
.gz-pd-farve__foto img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.gz-pd-farve > button:hover .gz-pd-farve__foto img { transform: scale(1.04); }
.gz-pd-farve > button:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; border-radius: 4px; }
/* Farve uden foto: nummeret i et lavendelfelt i samme kvadrat som de andre */
.gz-pd-farve__foto.er-uden-foto { display: flex; align-items: center; justify-content: center; background: var(--gz-lavendel); }
.gz-pd-farve__pladsholder { padding: 0 8px; font-family: var(--gz-serif); font-size: 22px; line-height: 1.1; letter-spacing: -0.01em; color: var(--gz-blomme); text-align: center; overflow-wrap: anywhere; }
.gz-pd-farve:not(.er-paa-lager) .gz-pd-farve__foto.er-uden-foto { background: var(--gz-lys); }
.gz-pd-farve:not(.er-paa-lager) .gz-pd-farve__pladsholder { color: var(--gz-daempet); }
.gz-pd-farve__nr { font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }
.gz-pd-farve__navn { font-size: 13px; line-height: 1.35; }
.gz-pd-farve__status { font-size: 12px; color: var(--gz-daempet); margin-top: 3px; display: flex; align-items: center; gap: 6px; }
.gz-pd-farve.er-paa-lager .gz-pd-farve__status::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: #4f7a43; }
.gz-pd-farve:not(.er-paa-lager) .gz-pd-farve__foto img { opacity: .62; }
.gz-pd-farvekort__flere {
  display: inline-flex; align-items: center; margin-top: 34px; min-height: 48px; padding: 0 22px; border: 1px solid #b7a9c2; border-radius: 4px;
  background: #fff; color: var(--gz-blomme); font: 650 13px var(--gz-sans); cursor: pointer; transition: background-color .15s ease, color .15s ease;
}
.gz-pd-farvekort__flere:hover { background: var(--gz-blomme); color: #fff; }

/* ---------- Om produktet + beregneren (garn) eller st\0000f8rrelserne (pinde) ---------- */
.gz-pd-om { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start; margin-top: var(--gz-luft); }
.gz-pd-om__tekst { grid-column: 1 / span 7; }
.gz-pd-om .gz-pd-beregner { grid-column: 8 / span 5; margin-left: 32px; }
.gz-pd-om.er-en-spalte .gz-pd-om__tekst, .gz-pd-om.er-en-spalte .gz-pd-beregner { grid-column: 1 / span 7; margin-left: 0; }
/* Kun tekst: overskriften i spalte 1-4, teksten i 5-11 (som et opslag), s\0000e5  h\0000f8jre halvdel ikke st\0000e5r tom */
.gz-pd-om.er-kun-tekst .gz-pd-om__tekst { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; }
.gz-pd-om.er-kun-tekst .gz-pd-om__tekst > h2 { grid-column: 1 / span 4; margin: 0 !important; }
.gz-pd-om.er-kun-tekst .gz-pd-om__krop, .gz-pd-om.er-kun-tekst .gz-pd-om__fold { grid-column: 5 / span 7; }
.gz-pd-om.er-kun-tekst .gz-pd-om__kort:empty { display: none; }
.gz-pd-om.er-kun-tekst .gz-pd-om__lang .ck-content > :first-child { margin-top: 0 !important; }
.gz-pd-om__tekst h2 { margin-bottom: 22px !important; }
.gz-pd-om__tekst { font-size: 16px; line-height: 1.75; color: #4e4258; }
.gz-pd-om__tekst p { margin: 0 0 16px !important; max-width: 640px; }
.gz-pd-om__tekst h3 { font-family: var(--gz-sans) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: 0 !important; line-height: 1.5 !important; margin: 26px 0 8px !important; color: var(--gz-blomme) !important; }
.gz-pd-om__kort h3:first-child { margin-top: 0 !important; font-family: var(--gz-serif) !important; font-weight: 400 !important; font-size: 24px !important; line-height: 1.25 !important; letter-spacing: -0.01em !important; }
.gz-pd-om__tekst strong { color: var(--gz-blomme); font-weight: 700; }
.gz-pd-om__tekst ul { margin: 0 0 18px !important; padding-left: 20px !important; }
.gz-pd-om__tekst li { margin: 0 0 4px; list-style: disc; }
.gz-pd-om__tekst a { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
.gz-pd-om__kort { margin-bottom: 8px; }
/* Lange beskrivelser foldes sammen med en lys fade nederst. Teksten st\0000e5r stadig i HTML'en */
.gz-pd-om__krop { position: relative; }
.gz-pd-om__tekst.er-foldet .gz-pd-om__krop { max-height: 720px; overflow: hidden; }
.gz-pd-om__tekst.er-foldet .gz-pd-om__krop::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 140px; background: linear-gradient(rgba(255, 255, 255, 0), #fff); pointer-events: none; }
.gz-pd-om__fold { margin-top: 14px; font-size: 14px !important; }
/* Tabeller fra teksteditoren (Kid Seta: "Kvalitet / V\0000e6gt / L\0000f8bel\0000e6ngde") har en fast bredde og skubbede siden ud
   over kanten p\0000e5  mobil. De fylder nu h\0000f8jst spalten og f\0000e5r rolige linjer i stedet for temaets gitter */
.gz-pd-om__tekst figure.table { margin: 0 0 18px !important; width: auto !important; max-width: 100%; overflow-x: auto; }
.gz-pd-om__tekst table { width: 100% !important; max-width: 640px; height: auto !important; table-layout: fixed; border-collapse: collapse; margin: 0 0 18px !important; font-size: 15px; }
.gz-pd-om__tekst figure.table table { margin: 0 !important; }
.gz-pd-om__tekst td, .gz-pd-om__tekst th { width: auto !important; padding: 8px 16px 8px 0 !important; border: 0 !important; border-bottom: 1px solid var(--gz-linje) !important; vertical-align: top; text-align: left; background: none !important; overflow-wrap: break-word; hyphens: auto; }
.gz-pd-om__tekst td p, .gz-pd-om__tekst th p { margin: 0 !important; }
/* Er der stadig tabeller i tabeller (JS'en pakker dem ud), stilles de op som almindelige afsnit */
.gz-pd-om__tekst table:has(table), .gz-pd-om__tekst table:has(table) > tbody, .gz-pd-om__tekst table:has(table) > tbody > tr,
.gz-pd-om__tekst table:has(table) > tbody > tr > td, .gz-pd-om__tekst table:has(table) > tbody > tr > th { display: block; width: auto !important; }
.gz-pd-om__tekst table:has(table) > tbody > tr { padding: 8px 0; border-bottom: 1px solid var(--gz-linje); }
.gz-pd-om__tekst table:has(table) > tbody > tr > td, .gz-pd-om__tekst table:has(table) > tbody > tr > th { padding: 0 !important; border: 0 !important; }
.gz-pd-om__tekst table:has(table) > tbody > tr > td:first-child { font-weight: 650; color: var(--gz-blomme); }
.gz-pd-om__tekst td table { margin: 12px 0 0 !important; }
/* Tekst, der er sat ind som <pre> (Gr\0000fcndl Everyday Cotton), br\0000f8d ikke linjer og gjorde mobilsiden 1195 px bred */
.gz-pd-om__tekst pre {
  white-space: pre-wrap !important; overflow-wrap: anywhere; max-width: 640px; margin: 0 0 16px !important; padding: 0 !important;
  border: 0 !important; background: none !important; font: inherit !important; color: inherit !important;
}
.gz-pd-om__kort .m-product-short-description, .gz-pd-om__lang .ck-content { padding: 0 !important; border: 0 !important; }

.gz-pd-beregner { background: var(--gz-lys); border-radius: 6px; padding: 40px 40px 36px; }
.gz-pd-beregner h2 { font-size: 30px !important; line-height: 1.15 !important; margin-bottom: 12px !important; }
.gz-pd-beregner__intro { font-size: 15px; line-height: 1.65; color: #5d5066; margin: 0 0 22px !important; }
.gz-pd-felt { display: flex; flex-direction: column; gap: 6px; margin: 0; font-size: 13px; font-weight: 650; color: var(--gz-blomme); }
.gz-pd .gz-pd-felt input {
  height: 50px !important; padding: 0 14px !important; border: 1px solid #cfc4d8 !important; border-radius: 4px !important; background: #fff !important;
  font: 500 16px var(--gz-sans) !important; color: var(--gz-blomme) !important; box-shadow: none !important; width: 100%;
}
.gz-pd .gz-pd-felt input:focus { outline: 2px solid #80539b; outline-offset: 1px; border-color: var(--gz-blomme) !important; }
.gz-pd-beregner__andet { margin: 14px 0 0; font-size: 14px; }
.gz-pd-beregner__andet summary { cursor: pointer; color: var(--gz-blomme); font-weight: 600; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 4px; }
.gz-pd-beregner__felter { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 12px; }
.gz-pd-beregner__svar { margin: 20px 0 0 !important; font-size: 16px; line-height: 1.6; }
.gz-pd-beregner__svar:empty { display: none; }
.gz-pd-beregner__svar strong { font-weight: 700; }
.gz-pd-beregner__brug { margin-top: 16px; }
.gz-pd-beregner__note { margin: 22px 0 0 !important; padding-top: 18px; border-top: 1px solid var(--gz-linje); font-size: 13px; line-height: 1.65; color: #5d5066; }
.gz-pd-beregner__note a { color: var(--gz-blomme) !important; font-weight: 650; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
/* Pinde: st\0000f8rrelse og l\0000e6ngder som en liste */
.gz-pd-stoerrelser__liste { margin: 0 !important; padding: 0 !important; }
.gz-pd-stoerrelser__liste > div { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--gz-linje); margin: 0; }
.gz-pd-stoerrelser__liste > div:first-child { border-top: 1px solid var(--gz-linje); }
.gz-pd-stoerrelser__liste dt { font-size: 14px; font-weight: 700; color: var(--gz-blomme); margin: 0; font-variant-numeric: tabular-nums; }
.gz-pd-stoerrelser__liste dd { font-size: 14px; color: #5d5066; margin: 0 !important; }
.gz-pd-stoerrelser__liste dt::before, .gz-pd-stoerrelser__liste dd::before { content: none !important; }
/* Mange st\0000f8rrelser (KnitPro Symfonie: 12) i to spalter, s\0000e5  boksen ikke bliver dobbelt s\0000e5  h\0000f8j som teksten ved siden af */
.gz-pd-stoerrelser__liste.er-to-spalter { columns: 2; column-gap: 28px; border-top: 1px solid var(--gz-linje); }
.gz-pd-stoerrelser__liste.er-to-spalter > div { break-inside: avoid; grid-template-columns: 58px minmax(0, 1fr); gap: 8px; }
.gz-pd-stoerrelser__liste.er-to-spalter > div:first-child { border-top: 0; }
/* Pind uden beskrivelse: boksen over hele bredden, listen i fire spalter */
.gz-pd-om.er-kun-boks .gz-pd-stoerrelser { grid-column: 1 / -1 !important; margin-left: 0; }
.gz-pd-om.er-kun-boks .gz-pd-stoerrelser__liste.er-to-spalter { columns: 4; }
@media (max-width: 1100px) { .gz-pd-om.er-kun-boks .gz-pd-stoerrelser__liste.er-to-spalter { columns: 2; } }
@media (max-width: 767px) { .gz-pd-om.er-kun-boks .gz-pd-stoerrelser__liste.er-to-spalter, .gz-pd-stoerrelser__liste.er-to-spalter { columns: 1; } .gz-pd-stoerrelser__liste.er-to-spalter > div:first-child { border-top: 0; } }
.gz-pd-stoerrelser__maal { list-style: none; margin: 0 !important; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; }
.gz-pd-stoerrelser__maal li { list-style: none; margin: 0; padding: 8px 14px; border-radius: 4px; background: #fff; border: 1px solid var(--gz-linje); font-size: 14px; font-weight: 650; }

/* ---------- Alternativer og relaterede produkter ---------- */
.gz-pd-samme, .gz-pd-relaterede { margin-top: var(--gz-luft); }
.gz-pd .gz-produktgitter { min-height: 0; }
.gz-pd-kort .gz-spec { margin: 2px 0 0; }
.gz-pd-kort .gz-produkt__pris { font-weight: 650; }
.gz-pd .gz-produkt:hover .gz-produkt__navn { color: var(--gz-blomme) !important; }
/* Kort uden m\0000e6rkelinje f\0000e5r en tom linje, s\0000e5  navnene st\0000e5r p\0000e5  linje */
.gz-pd .gz-produkt__maerke:empty::before { content: '\00a0'; }

/* ---------- K\0000f8bebj\0000e6lken (kun mobil, styres af produkt.js) ---------- */
.gz-pd-koebbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 900; display: flex; align-items: center; justify-content: space-between; gap: 14px;
  min-height: 64px; padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); background: #fff; box-shadow: 0 -1px 0 var(--gz-linje);
}
.gz-pd-koebbar__pris { margin: 0 !important; display: flex; flex-direction: column; line-height: 1.15; min-width: 0; }
.gz-pd-koebbar__beloeb { font-family: var(--gz-serif); font-size: 22px; letter-spacing: -0.01em; color: var(--gz-blomme); white-space: nowrap; }
.gz-pd-koebbar__enhed { font-size: 12px; color: var(--gz-daempet); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gz-pd-koebbar__knap {
  flex: 0 0 auto; height: 46px; padding: 0 22px; border: 0; border-radius: 4px; background: var(--gz-blomme); color: #fff;
  font: 650 14px var(--gz-sans); cursor: pointer;
}
.gz-pd-koebbar__knap:focus-visible { outline: 3px solid #80539b; outline-offset: 3px; }

/* ---------- Bred sk\0000e6rm: beregneren f\0000f8lger med ned langs en lang beskrivelse ---------- */
@media (min-width: 1101px) {
  .gz-pd-om .gz-pd-beregner { position: sticky; top: calc(var(--gz-header-h, 81px) + 24px); align-self: start; }
}

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-pd__galleri { grid-column: 1 / span 6; }
  .gz-pd__koeb { grid-column: 7 / span 6; padding-left: 16px; }
  .gz-pd-etiket, .gz-pd-etiket--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-pd-etiket__felt:nth-child(3) { border-left: 0; }
  .gz-pd-etiket__felt:nth-child(n+3) { border-top: 1px solid var(--gz-linje); }
  .gz-pd-farvekort__liste { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .gz-pd-om__tekst { grid-column: 1 / span 12; }
  .gz-pd-om .gz-pd-beregner { grid-column: 1 / span 8; margin: 48px 0 0; }
}

/* ---------- Mobil ---------- */
@media (max-width: 767px) {
  .gz-pd { padding: 16px 6px var(--gz-luft); }
  .gz-pd h2 { font-size: 31px !important; }
  .gz-pd__brod { margin-bottom: 16px; font-size: 12px; }
  .gz-pd__top { grid-template-columns: minmax(0, 1fr); row-gap: 22px; }
  .gz-pd__galleri, .gz-pd__koeb, .gz-pd:not(.gz-pd--galleri) .gz-pd__koeb { grid-column: 1; padding-left: 0; }
  /* Seks i \0000e9n r\0000e6kke (den valgte farve st\0000e5r sidst og m\0000e5  ikke falde ned p\0000e5  en linje for sig) */
  .gz-pd__miniaturer { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; margin-top: 8px !important; }
  .gz-pd__titel h1, .gz-pd__titel .m-product-title { font-size: 36px !important; margin: 0 0 10px !important; }
  .gz-pd--lang-titel .gz-pd__titel h1, .gz-pd--lang-titel .gz-pd__titel .m-product-title { font-size: 30px !important; }
  .gz-pd--uden-lede .gz-pd__titel h1, .gz-pd--uden-lede .gz-pd__titel .m-product-title { margin-bottom: 18px !important; }
  .gz-pd__lede { font-size: 14px; margin-bottom: 16px !important; }
  .gz-pd__pris { margin-bottom: 20px; padding-bottom: 18px; }
  .gz-pd__beloeb { font-size: 30px; }
  .gz-pd__proever { grid-template-columns: repeat(auto-fill, minmax(42px, 1fr)); gap: 9px; }

  .gz-pd-fakta { padding: 56px 0 60px; }
  .gz-pd-fakta__top { flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 24px; }
  .gz-pd-etiket, .gz-pd-etiket--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-pd-etiket__felt { padding: 22px 16px 24px; }
  .gz-pd-etiket__ikon { width: 32px; height: 32px; margin-bottom: 12px; }
  .gz-pd-etiket__ikon svg { width: 32px; height: 32px; }
  .gz-pd-etiket__vaerdi { font-size: 27px; }
  .gz-pd-etiket__vaerdi.er-lille { font-size: 19px; }
  .gz-pd-etiket__hjaelp { font-size: 13px; padding-top: 12px; }
  .gz-pd-fakta__mere { grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 22px !important; }
  .gz-pd-fakta__links { gap: 10px 18px; }
  .gz-pd-fakta__links > span { width: 100%; }

  /* Overskrift, intro og s\0000e5  linket (ikke linket klemt ind mellem overskrift og intro) */
  .gz-pd-sektion__top { flex-direction: column; align-items: flex-start; gap: 14px; margin-bottom: 24px; }

  .gz-pd-farvekort__top { margin-bottom: 24px; }
  .gz-pd-farvekort__liste { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px 10px; }
  .gz-pd-farve__nr, .gz-pd-farve__navn { font-size: 12px; }
  .gz-pd-farve__status { font-size: 11px; }
  .gz-pd-farve__pladsholder { font-size: 17px; padding: 0 4px; }
  .gz-pd-farvekort__flere { width: 100%; justify-content: center; margin-top: 26px; }

  .gz-pd-om__tekst { font-size: 15px; }
  .gz-pd-om.er-kun-tekst .gz-pd-om__tekst { display: block; }
  .gz-pd-om.er-kun-tekst .gz-pd-om__tekst > h2 { margin-bottom: 18px !important; }
  .gz-pd-om .gz-pd-beregner { grid-column: 1 / -1 !important; margin: 40px 0 0 !important; padding: 28px 20px 24px; }
  .gz-pd-beregner h2 { font-size: 26px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .gz-pd-farve__foto img, .gz-pd-proeve, .gz-pd__koebknap { transition: none; }
}

/* Lagertallet vises ikke: lageret vedligeholdes ikke endnu (se VIS_LAGERFILTER i garnzonen.js). "P\0000e5  lager" st\0000e5r stadig */
.gz-pd .product-stock-value, .gz-pd .m-product-stock-value { display: none !important; }
@media (min-width: 768px) { .gz-pd .gz-produktgitter.er-tre { grid-template-columns: repeat(3, minmax(0, 1fr)); } }


/* ---- sider/strikkecafe.css ---- */
/* Strikkecaf\0000e9en (/shop/325-strikkecafe/). Markup: tema/udkast/sider/strikkecafe.html, JS: assets/js/sider/strikkecafe.js.
   Samme sprog som forside v4: indholdet st\0000e5r i spalten med logo og menu (--gz-bredde), 12-spalters gitter,
   --gz-luft mellem sektionerne, serif-overskrifter, lavendel som accentflade. Kun billedet i "S\0000e5dan er en aften"
   og lavendelfladen nederst g\0000e5r ud over teksten; flade nr. 2 g\0000e5r helt ud til kanten som forsidens butiksr\0000e6kke.
   Datovalget (.gz-dato, .gz-antal, .gz-booking__*) er forsidens komponenter fra garnzonen.css; her er de kun sat i gitter.
   Alt er scopet til .gz-cafe og body.pageCategory325. (Boksen p\0000e5  produkt 13339 er fjernet 14/10: produktsiden har
   allerede sit eget link hertil, og to henvisninger til samme side var \0000e9n for meget.) */

.gz-cafe { font-family: var(--gz-sans); color: var(--gz-blomme); padding: 34px 0 0; }
.gz-cafe h1, .gz-cafe h2, .gz-cafe h3 {
  font-family: var(--gz-serif) !important; font-weight: 400 !important; color: var(--gz-blomme) !important;
  letter-spacing: -0.025em !important; text-transform: none !important;
}
.gz-cafe p { margin: 0; }
.gz-cafe h1, .gz-cafe h2 { text-wrap: balance; }
.gz-cafe :is(p, dd) a:not(.gz-knap):not(.gz-tekstlink) { color: var(--gz-blomme) !important; text-decoration: underline; text-decoration-color: var(--gz-syren); text-underline-offset: 3px; }
.gz-cafe :is(p, dd) a:not(.gz-knap):not(.gz-tekstlink):hover { text-decoration-color: var(--gz-blomme); }
.gz-cafe a[href^="tel:"], .gz-cafe a[href^="sms:"] { white-space: nowrap; }
.gz-cafe dd::before, .gz-cafe dt::before { content: none !important; } /* temaet nummererer dd'er */
.gz-cafe .gz-udfyldes { background: var(--gz-smoergul); color: #5b4a1c; font-size: 14px; line-height: 1.6; padding: 8px 12px; border-radius: 4px; }
.gz-cafe span.gz-udfyldes { display: inline; padding: 2px 6px; }

/* Temaets tomme container under siden m\0000e5  ikke l\0000e6gge hvidt ind mellem lavendelfladen og footeren */
body.pageCategory325 .site-content .site-wrapper { padding-bottom: 0 !important; }
body.pageCategory325 .site-content .row { min-height: 0 !important; }

/* ---------- Toppen: svaret til venstre, tilmeldingen til h\0000f8jre ----------
   Venstre: H1, \0000e9n s\0000e6tning med dag, tid, sted og pris, n\0000e6ste ledige aften og fire fakta (faktaene st\0000e5r i bunden,
   s\0000e5  venstre spalte slutter p\0000e5  linje med tilmeldingen). H\0000f8jre: tilmeldingen p\0000e5  en lavendelflade. */
.gz-cafe-top {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px;
  grid-template-rows: auto auto auto 1fr auto;
}
/* Temaet giver nav auto-margener; i et gitter centrerer det br\0000f8dkrummen */
.gz-cafe-top__brod { grid-column: 1 / -1; grid-row: 1; justify-self: start; margin: 0 0 26px !important; }
.gz-cafe-top__intro { grid-column: 1 / span 6; grid-row: 2; padding-right: 40px; }
.gz-cafe-naeste { grid-column: 1 / span 6; grid-row: 3; padding-right: 40px; }
.gz-cafe-fakta { grid-column: 1 / span 6; grid-row: 5; align-self: end; padding-right: 40px; }
.gz-cafe-booking { grid-column: 7 / span 6; grid-row: 2 / 6; }

.gz-cafe-top h1 { font-size: 64px !important; line-height: 1.02 !important; letter-spacing: -0.035em !important; margin: 0 0 22px !important; }
.gz-cafe-top__lede { font-size: 19px; line-height: 1.65; color: #5d5066; max-width: 520px; }

/* N\0000e6ste ledige aften: datoen i serif er sidens ene store greb */
.gz-cafe-naeste { margin-top: 38px; }
.gz-cafe-naeste[hidden], .gz-cafe-naeste [hidden] { display: none !important; }
.gz-cafe-naeste__foer { font-size: 15px; line-height: 1.5; color: #5d5066; margin-bottom: 24px !important; max-width: 520px; text-wrap: pretty; }
.gz-cafe-naeste__label { font-size: 13px; font-weight: 650; color: var(--gz-daempet); margin-bottom: 6px !important; }
.gz-cafe-naeste__dato { font-family: var(--gz-serif); font-size: 40px; line-height: 1.1; letter-spacing: -0.02em; margin-bottom: 6px !important; }
.gz-cafe-naeste__pladser { font-size: 16px; line-height: 1.5; color: #5d5066; }
/* Genvejen til tilmeldingen findes kun p\0000e5  mobil (se mediaqueryen nederst) */
.gz-cafe .gz-cafe-naeste__vaelg { display: none; }

.gz-cafe-fakta {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 32px;
  margin: 40px 0 0 !important; padding-top: 26px; border-top: 1px solid var(--gz-linje);
}
.gz-cafe-fakta > div { margin: 0; }
.gz-cafe-fakta dt { font-size: 12px; font-weight: 650; color: var(--gz-daempet); margin: 0 0 4px; }
.gz-cafe-fakta dd { font-size: 15px; line-height: 1.45; margin: 0; color: var(--gz-blomme); }

/* Tilmeldingen */
.gz-cafe-booking { background: var(--gz-lavendel); border-radius: 4px; padding: 36px 44px 34px; box-sizing: border-box; scroll-margin-top: calc(var(--gz-header-h, 80px) + 16px); }
.gz-cafe-booking h2 { font-size: 30px !important; line-height: 1.15 !important; margin: 0 0 18px !important; }
.gz-cafe-booking .gz-booking__datoer { margin-bottom: 12px; }
.gz-cafe-booking .gz-booking__datoer legend { font-size: 13px; margin-bottom: 12px; }
.gz-cafe .gz-datoer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.gz-cafe .gz-dato { min-width: 0; padding: 11px 14px 10px; }
.gz-cafe .gz-dato__note { line-height: 1.35; }
.gz-cafe .gz-dato__pris { font-size: 12px; font-weight: 650; }
.gz-cafe .gz-dato__status { font-size: 12px; }
/* M\0000f8rkere end temaets gr\0000e5  p\0000e5  hvid, men kun p\0000e5  de ikke-valgte: den valgte chip er blomme, og der skal teksten v\0000e6re hvid */
.gz-cafe .gz-dato:not(.er-udsolgt):not(:has(input:checked)) .gz-dato__status { color: #5d5066; }
.gz-cafe .gz-dato:has(input:checked) .gz-dato__status { color: rgba(255, 255, 255, .82); }
.gz-cafe-booking.er-samlet .gz-dato.er-udsolgt { display: none; }
.gz-cafe-booking__udsolgt { font-size: 13px; line-height: 1.55; margin-bottom: 4px !important; }
.gz-cafe-booking__udsolgt[hidden], .gz-cafe-booking__venteliste[hidden] { display: none; }
.gz-cafe-booking .gz-cafe-booking__venteliste { font-size: 13px; padding: 6px 10px; margin: 8px 0 0 !important; }
.gz-cafe-booking .gz-booking__status { margin: 10px 0 18px; }
.gz-cafe-booking .gz-booking__koeb { flex-wrap: wrap; margin-bottom: 16px; }
.gz-cafe-booking__pris { margin-left: auto !important; align-self: center; font-size: 13px; text-align: right; }
.gz-cafe-booking__pris strong { display: block; font-size: 16px; font-weight: 650; color: var(--gz-blomme); }
.gz-cafe-booking .gz-booking__note { max-width: none; font-size: 13px; }
/* Sm\0000e5  gr\0000e5  tekster p\0000e5  lavendel: temaets --gz-daempet giver 4,2:1 her, #5d5066 giver 6,2:1 */
.gz-cafe-booking .gz-cafe-booking__udsolgt, .gz-cafe-booking .gz-booking__note,
.gz-cafe-booking .gz-booking__status, .gz-cafe-booking .gz-cafe-booking__pris { color: #5d5066; }

/* ---------- S\0000e5dan er en aften: forsidens to-spalters greb (billede 6 spalter, tekst 5) ----------
   Billede og tekst er lige h\0000f8je: r\0000e6kken str\0000e6kker billedet til tekstens h\0000f8jde (mindst 454 px), s\0000e5  top og bund flugter
   med overskriften og sidste afsnit, ogs\0000e5  n\0000e5r [UDFYLDES] bliver til rigtig tekst. */
.gz-cafe-aften {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: stretch;
  margin-top: var(--gz-luft, 120px);
}
.gz-cafe-aften__billede {
  grid-column: 1 / span 6; grid-row: 1; min-height: 454px;
  background: var(--gz-lys) url(../img/st-side-strikkecafe.jpg) 50% 60% / cover no-repeat;
}
.gz-cafe-aften__tekst { grid-column: 8 / span 5; grid-row: 1; display: flex; flex-direction: column; justify-content: center; gap: 16px; }
.gz-cafe-aften h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 4px !important; }
.gz-cafe-aften__tekst > p { font-size: 17px; line-height: 1.7; color: #5d5066; max-width: 460px; }
.gz-cafe-aften__tekst > p.gz-udfyldes { font-size: 14px; color: #5b4a1c; }

/* ---------- Det praktiske: tre lige kolonner (4 + 4 + 4 spalter) ---------- */
.gz-cafe-praktisk { margin-top: var(--gz-luft, 120px); }
.gz-cafe-praktisk h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 32px !important; }
.gz-cafe-praktisk__kolonner { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.gz-cafe-praktisk__kolonner > div { border-top: 1px solid var(--gz-linje); padding: 24px 32px 0 0; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.gz-cafe-praktisk h3 { font-size: 24px !important; line-height: 1.2 !important; margin: 0 0 4px !important; }
.gz-cafe-praktisk p, .gz-cafe-praktisk address { font-size: 15px; line-height: 1.7; color: #5d5066; font-style: normal; margin: 0 !important; text-align: left !important; }
.gz-cafe-praktisk address { color: var(--gz-blomme); }
.gz-cafe-praktisk .gz-tekstlink { margin-top: 4px; }

/* ---------- FAQ: overskrift i 4 spalter, svarene i 7 ---------- */
.gz-cafe-faq {
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
  margin-top: var(--gz-luft, 120px);
}
.gz-cafe-faq__intro { grid-column: 1 / span 4; }
/* Over 1100 px f\0000f8lger overskriften med ned langs svarene, s\0000e5  der ikke st\0000e5r et hvidt felt ved siden af listen */
@media (min-width: 1101px) {
  .gz-cafe-faq__intro { position: sticky; top: calc(var(--gz-header-h, 91px) + 40px); }
}
.gz-cafe-faq__intro h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 16px !important; }
.gz-cafe-faq__intro p { font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-cafe-faq__liste { grid-column: 6 / span 7; border-top: 1px solid var(--gz-linje); }
.gz-cafe-faq details { border-bottom: 1px solid var(--gz-linje); }
.gz-cafe-faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 20px; padding: 22px 0; }
.gz-cafe-faq summary::-webkit-details-marker { display: none; }
.gz-cafe-faq summary::after {
  content: ""; flex-shrink: 0; margin-left: auto; width: 9px; height: 9px;
  border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-3px); transition: transform .2s ease;
}
.gz-cafe-faq details[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.gz-cafe-faq summary:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }
.gz-cafe-faq summary h3 { font-size: 22px !important; line-height: 1.25 !important; margin: 0 !important; }
.gz-cafe-faq summary:hover h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gz-cafe-faq__svar { padding: 0 48px 24px 0; }
.gz-cafe-faq__svar p { font-size: 16px; line-height: 1.7; color: #5d5066; max-width: 620px; }

/* ---------- Er aftenen udsolgt? Lavendelflade helt ud til kanten, direkte over i footeren ---------- */
.gz-cafe-videre {
  position: relative; isolation: isolate; margin-top: var(--gz-luft, 120px); padding: 88px 0 96px;
  display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: start;
}
.gz-cafe-videre::before {
  content: ''; position: absolute; inset: 0; z-index: -1; background: var(--gz-lavendel);
  box-shadow: 0 0 0 100vmax var(--gz-lavendel); clip-path: inset(0 -100vmax);
}
.gz-cafe-videre__intro { grid-column: 1 / span 4; }
.gz-cafe-videre h2 { font-size: 40px !important; line-height: 1.1 !important; margin: 0 0 16px !important; }
.gz-cafe-videre__intro p { font-size: 15px; line-height: 1.7; color: #5d5066; }
.gz-cafe-videre__links {
  grid-column: 6 / span 7; list-style: none; margin: 0 !important; padding: 0 !important;
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px;
}
.gz-cafe-videre__links li { list-style: none; margin: 0; padding: 0; }
.gz-cafe .gz-cafe-videre__links a {
  display: flex; flex-direction: column; gap: 4px; padding: 22px 0 24px; border-top: 1px solid #d9cfe3;
  text-decoration: none !important;
}
.gz-cafe-videre__links strong { font-family: var(--gz-serif); font-weight: 400; font-size: 23px; line-height: 1.2; letter-spacing: -0.02em; }
.gz-cafe-videre__links span { font-size: 14px; line-height: 1.5; color: #61546a; }
.gz-cafe-videre__links a:hover strong { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 5px; }
.gz-cafe-videre__links a:focus-visible { outline: 2px solid #80539b; outline-offset: 4px; }

/* ---------- Mellemstor sk\0000e6rm ---------- */
@media (max-width: 1100px) {
  .gz-cafe-top h1 { font-size: 50px !important; }
  .gz-cafe-top__intro, .gz-cafe-naeste, .gz-cafe-fakta { padding-right: 16px; }
  .gz-cafe-booking { padding: 32px 30px; }
  .gz-cafe .gz-datoer { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gz-cafe-aften__tekst { grid-column: 7 / span 6; }
  .gz-cafe-faq__intro, .gz-cafe-faq__liste, .gz-cafe-videre__intro, .gz-cafe-videre__links { grid-column: 1 / -1; }
  .gz-cafe-faq__intro, .gz-cafe-videre__intro { margin-bottom: 28px; }
  .gz-cafe-praktisk__kolonner > div { padding-right: 12px; }
}

/* ---------- Mobil: \0000e9t spor. H1, svaret, n\0000e6ste aften, tilmeldingen, s\0000e5  faktaene ---------- */
@media (max-width: 767px) {
  .gz-cafe { padding: 18px 6px 0; } /* temaets container giver 10 px; forsiden bruger 16 px p\0000e5  mobil */
  .gz-cafe-top { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
  .gz-cafe-top__brod, .gz-cafe-top__intro, .gz-cafe-naeste, .gz-cafe-booking, .gz-cafe-fakta { grid-column: 1; grid-row: auto; padding-right: 0; }
  .gz-cafe-top__brod { margin-bottom: 16px; }
  .gz-cafe-top h1 { font-size: 40px !important; margin-bottom: 14px !important; }
  .gz-cafe-top__lede { font-size: 16px; }
  .gz-cafe-naeste { margin-top: 22px; }
  .gz-cafe-naeste__dato { font-size: 27px; }
  .gz-cafe-naeste__foer { font-size: 14px; margin-bottom: 16px !important; }
  /* Genvejen: \0000e9n knap over folden, der ruller ned til tilmeldingen, hvor aftenen allerede er valgt */
  .gz-cafe .gz-cafe-naeste__vaelg { display: flex; width: 100%; justify-content: center; min-height: 48px; margin-top: 16px; }
  .gz-cafe .gz-cafe-naeste__vaelg[hidden] { display: none; }
  .gz-cafe-booking { order: 1; margin-top: 24px; padding: 26px 18px 24px; }
  .gz-cafe-booking h2 { font-size: 26px !important; margin-bottom: 16px !important; }
  .gz-cafe-fakta { order: 2; margin-top: 32px !important; gap: 18px 20px; }
  .gz-cafe-booking .gz-booking__koeb { width: 100%; }
  .gz-cafe-booking__pris { order: -1; flex-basis: 100%; margin-left: 0 !important; text-align: left; display: flex; gap: 8px; align-items: baseline; }
  .gz-cafe-booking__pris strong { display: inline; font-size: 15px; }

  .gz-cafe-aften { grid-template-columns: minmax(0, 1fr); row-gap: 24px; }
  .gz-cafe-aften__billede, .gz-cafe-aften__tekst { grid-column: 1; }
  .gz-cafe-aften__billede { aspect-ratio: 4 / 3; min-height: 0; }
  .gz-cafe-aften__tekst { grid-row: 2; gap: 14px; }
  .gz-cafe-aften h2 { font-size: 31px !important; }
  .gz-cafe-aften__tekst > p { font-size: 15px; }

  .gz-cafe-praktisk h2, .gz-cafe-faq__intro h2, .gz-cafe-videre h2 { font-size: 31px !important; }
  .gz-cafe-praktisk h2 { margin-bottom: 20px !important; }
  .gz-cafe-praktisk__kolonner { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .gz-cafe-praktisk__kolonner > div { padding: 20px 0 0; }

  .gz-cafe-faq__intro { margin-bottom: 20px; }
  .gz-cafe-faq summary { padding: 18px 0; }
  .gz-cafe-faq summary h3 { font-size: 19px !important; }
  .gz-cafe-faq__svar { padding-right: 0; }
  .gz-cafe-faq__svar p { font-size: 15px; }

  .gz-cafe-videre { padding: 52px 0 60px; }
  .gz-cafe-videre__intro { margin-bottom: 20px; }
  .gz-cafe-videre__links { grid-template-columns: minmax(0, 1fr); }
  .gz-cafe-videre__links strong { font-size: 20px; }
  .gz-cafe .gz-cafe-videre__links a { padding: 16px 0 18px; }
}

@media (prefers-reduced-motion: reduce) { .gz-cafe-faq summary::after { transition: none; } }
