﻿header {
  z-index: 99;
}

.hero.no-header-overlap,
.hero.no-header-overlap.full,
.hero.no-header-overlap.short {
  margin-top: 0 !important;
}

.gallery .flexslider .flex-navigation {
  width: calc(100% - 40px);
  margin: 0;
  translate: 0 -50%;
  bottom: auto;
  left: 20px;
  top: 50%;
  display: grid;
  grid-auto-flow: column;
  align-content: center;
  align-items: center;
  justify-content: space-between;
}

.gallery .flexslider .flex-navigation a {
  background: #fff;
}

.gallery .flexslider .flex-navigation a span::before {
  color: #000 !important;
}


.instagram #sb_instagram .sbi_item {
  width: 100% !important;
  aspect-ratio: 3/4;
}

.instagram #sb_instagram .sbi_item .sbi_photo_wrap {
  height: 100%;
}

.instagram #sb_instagram .sbi_item .sbi_photo {
  height: 100% !important;
  display: block;
}


/* Menus in footer */
[data-site="fornebus"] .menu-reversed {
  gap: 30px;
}


@media screen and (max-width: 63.9375em) {
  [data-site="fornebus"] .menu-reversed {
    margin-block: 30px;
    gap: 40px;
  }

  [data-site="fornebus"] footer .menu {
    margin-block: 0;
  }
}

body[data-site="glasmagasinet"] {
  background-color: #f3f3f1;
}
[data-site="glasmagasinet"] b,
[data-site="glasmagasinet"] strong {
font-weight: 600;
}

[data-site="glasmagasinet"] .hours ul li * {
  display: flex;
  align-items: center;
}

[data-site="glasmagasinet"] .hours span {
  display: block;
}

[data-site="glasmagasinet"] .hours ul li .pre,
[data-site="glasmagasinet"] .hours>div>ul li .time+span:not(:last-child) {
  margin: 0;
}

[data-site="glasmagasinet"] .hours>div>ul li {
  column-gap: 15px;
}

[data-site="glasmagasinet"] .hours ul {
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: "week weekend capacity";
}

@media screen and (max-width: 1024px) {
  [data-site="glasmagasinet"] .hours ul {
    grid-template-columns: repeat(1, 1fr);
    grid-template-areas: "week weekend" "capacity capacity";
    margin-block: 40px !important;
  }

  [data-site="glasmagasinet"] .hours ul li:nth-child(1) {
    grid-row: 1 !important;
    grid-column: auto !important;
  }

  [data-site="glasmagasinet"] .hours ul li:nth-child(2) {
    grid-row: 2 !important;
    grid-column: auto !important;
  }

  [data-site="glasmagasinet"] .hours ul li:nth-child(3) {
    grid-row: 3 !important;
    grid-column: auto !important;
    border-bottom: none !important;
  }

  [data-site="glasmagasinet"] .hours ul li .pre {
    width: 100%;
  }

  [data-site="glasmagasinet"] .hours ul li:nth-child(1) {
    padding: 0;
  }

  [data-site="glasmagasinet"] .hours ul li:nth-child(2) {
    padding: 0;
    margin-block: 20px;
  }
}


/* ---------- Glasmagasinet wider grid ---------- */

[data-site="glasmagasinet"] .grid-container {
  max-width: 100rem;
}


/* ---------- Feature Hero (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-feature-hero {
  position: relative;
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
}

[data-site="glasmagasinet"] .gm-feature-hero__inner {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: clamp(24px, 4vw, 64px);
  align-items: stretch;
}

[data-site="glasmagasinet"] .gm-feature-hero__image {
  position: relative;
  overflow: hidden;
  grid-column: 1/11;
  grid-row: 1;
}

[data-site="glasmagasinet"] .gm-feature-hero__image-track {
  position: absolute;
  inset: -15% 0;
  will-change: transform;
}

[data-site="glasmagasinet"] .gm-feature-hero__image-track img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

[data-site="glasmagasinet"] .gm-feature-hero__text {
  display: grid;
  grid-template-rows: auto 1fr auto;
  row-gap: clamp(20px, 3vw, 48px);
  text-align: right;
  grid-column: 7/13;
  grid-row: 1;
  z-index: 1;
  will-change: transform;
}

[data-site="glasmagasinet"] .gm-feature-hero__title-container {
  margin: 0;
  font-size: clamp(40px, 4.9vw, 80px);
  line-height: 1.1;
  text-transform: uppercase;
  color: #111;
  hyphens: manual;
}

[data-site="glasmagasinet"] .gm-feature-hero__title {
  font-family: 'cera';
  font-weight: 600;
}

@media screen and (max-width: 1200px) {
  [data-site="glasmagasinet"] .gm-feature-hero__title {
    line-height: 1;
  }
}

[data-site="glasmagasinet"] .gm-feature-hero__subtitle {
  font-weight: 300;
  font-style: italic;
}

[data-site="glasmagasinet"] .gm-feature-hero__body {
  align-self: end;
  justify-self: end;
  max-width: 36ch;
  font-size: 14px;
  line-height: 1.55;
  color: #1a1a1a;
  font-size: 17px;
  text-align: right;
}

[data-site="glasmagasinet"] .gm-feature-hero__body p {
  margin: 0 0 0.4em;
}

[data-site="glasmagasinet"] .gm-feature-hero__body p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  [data-site="glasmagasinet"] .gm-feature-hero {
    margin-block: 40px;
  }

  [data-site="glasmagasinet"] .gm-feature-hero__inner {
    grid-template-columns: 1fr;
    row-gap: 28px;
  }

  /* Reset desktop's explicit 12-col placement so the image and text
     stack into separate rows instead of overlapping. */
  [data-site="glasmagasinet"] .gm-feature-hero__image,
  [data-site="glasmagasinet"] .gm-feature-hero__text {
    grid-column: auto;
    grid-row: auto;
  }

  [data-site="glasmagasinet"] .gm-feature-hero__image {
    aspect-ratio: 4 / 5;
  }

  [data-site="glasmagasinet"] .gm-feature-hero__text {
    grid-template-rows: auto auto auto;
    row-gap: 16px;
    text-align: left;
  }

  [data-site="glasmagasinet"] .gm-feature-hero__title {
    font-size: clamp(40px, 11vw, 64px);
  }

  [data-site="glasmagasinet"] .gm-feature-hero__subtitle {
    justify-self: start;
    font-size: clamp(28px, 8vw, 48px);
  }

  [data-site="glasmagasinet"] .gm-feature-hero__body {
    justify-self: start;
    max-width: none;
    text-align: left;
  }
}

@media (prefers-reduced-motion: reduce) {

  [data-site="glasmagasinet"] .gm-feature-hero__image-track,
  [data-site="glasmagasinet"] .gm-feature-hero__text {
    transform: none !important;
  }
}


/* ---------- Article list cards (Glasmagasinet) ----------
 * Existing app.css applies several rules that need explicit overrides:
 *   .article-list ul li         { background:#fff }
 *   .article-list ul li a       { box-shadow:..., position:relative }
 *   .img-wrap                   { height:0; padding-bottom:60% } (aspect hack)
 *   .img-wrap img               { position:absolute }
 *   .content                    { background:#fff; padding:30px 30px 100px }
 *   .content .btn               { position:absolute; bottom:30px; background:#F7F7F7 }
 * We undo those, switch to aspect-ratio + flow positioning, and restyle. */

[data-site="glasmagasinet"] .article-list {
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
  margin-top: 0;
}

[data-site="glasmagasinet"] .article-list__title {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: clamp(18px, 1.8vw, 28px);
  text-transform: uppercase;
  text-align: center;
  color: #111;
  margin: 0 0 clamp(40px, 5vw, 80px);
}

/* Tighter inter-card gutter than Foundation's default. Foundation's
 * `.grid-margin-x` puts -1.625rem on the ul + +1.625rem on each cell
 * (= 52px between adjacent cards). The design wants the cards much
 * closer, so we shrink that gap to 0.5rem per side (= 16px between
 * cards) and recompute the width formula accordingly. */
[data-site="glasmagasinet"] .article-list ul.grid-x.grid-margin-x {
  margin-left: -0.5rem !important;
  margin-right: -0.5rem !important;
}

[data-site="glasmagasinet"] .article-list ul.grid-margin-x>.cell {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-1.grid-margin-x>.cell {
  width: calc(100% - 1rem) !important;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-2.grid-margin-x>.cell {
  width: calc(50% - 1rem) !important;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-3.grid-margin-x>.cell {
  width: calc(33.33333% - 1rem) !important;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-4.grid-margin-x>.cell {
  width: calc(25% - 1rem) !important;
}

[data-site="glasmagasinet"] .article-list ul.grid-margin-y>.cell {
  margin-bottom: clamp(28px, 3.5vw, 64px);
}

/* Stack to single column below Foundation's "medium" breakpoint (64em)
 * so the article list never tries to render N-up at tablet widths.
 * Slider mode (.article-list--slider) keeps the horizontal layout. */
@media screen and (max-width: 63.9375em) {
  [data-site="glasmagasinet"] .article-list:not(.article-list--slider) ul.grid-x {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
  }

  [data-site="glasmagasinet"] .article-list:not(.article-list--slider) ul.grid-margin-x>.cell {
    width: calc(100% - 1rem) !important;
  }
}

[data-site="glasmagasinet"] .article-list ul li {
  background: transparent !important;
}

[data-site="glasmagasinet"] .article-list ul li a,
[data-site="glasmagasinet"] .article-list ul li a:hover {
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  height: 100%;
}

[data-site="glasmagasinet"] .article-list ul li a .img-wrap {
  height: auto !important;
  padding-bottom: 0 !important;
  position: relative !important;
  overflow: hidden;
  width: 100%;
  margin: 0;
  background: #e8e8e6;
}

[data-site="glasmagasinet"] .article-list ul li a .img-wrap img {
  position: relative !important;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 600ms ease;
}

[data-site="glasmagasinet"] .article-list ul li a:hover .img-wrap img {
  transform: scale(1.03);
}

[data-site="glasmagasinet"] .article-list ul.medium-up-4 li a .img-wrap {
  aspect-ratio: 3 / 4;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-3 li a .img-wrap {
  aspect-ratio: 1;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-2 li a .img-wrap {
  aspect-ratio: 16 / 10;
}

[data-site="glasmagasinet"] .article-list ul.medium-up-1 li a .img-wrap {
  aspect-ratio: 16 / 9;
}

[data-site="glasmagasinet"] .article-list ul li a .content {
  background: transparent !important;
  color: inherit !important;
  left: 0 !important;
  position: static !important;
  padding: 24px 0 0 !important;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
}

[data-site="glasmagasinet"] .article-list ul li a .content>span {
  display: block;
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6a6a6a;
  margin-bottom: 8px;
}

[data-site="glasmagasinet"] .article-list ul li a .content>span:empty {
  display: none;
}

[data-site="glasmagasinet"] .article-list ul li a .content h2 {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(24px, 2.2vw, 36px);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: #111;
  margin: 0 0 12px;
  text-transform: none;
  hyphens: auto;
}

[data-site="glasmagasinet"] .article-list ul li a .content p.lead {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.55;
  color: #1a1a1a;
  margin: 0 0 20px;
  flex: 1 1 auto;
}

[data-site="glasmagasinet"] .article-list ul li a .content .btn {
  position: static !important;
  bottom: auto !important;
  align-self: flex-start;
  display: inline-block;
  background: #4f6b62;
  color: #fff;
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 14px;
  padding: 10px 22px;
  margin: 0;
  border-radius: 0;
  text-transform: none;
  letter-spacing: 0;
  box-shadow: none !important;
  transition: opacity 150ms ease;
}

[data-site="glasmagasinet"] .article-list ul li a:hover .content .btn {
  opacity: 0.85;
  box-shadow: none !important;
}

/* Tighter copy on the 4-up layout where each column is narrow. */
[data-site="glasmagasinet"] .article-list ul.medium-up-4 li a .content h2 {
  font-size: clamp(20px, 1.6vw, 28px);
}

@media screen and (max-width: 63.9375em) {
  [data-site="glasmagasinet"] .article-list:not(.article-list--slider) ul li a .img-wrap {
    aspect-ratio: 4 / 3 !important;
  }

  [data-site="glasmagasinet"] .article-list:not(.article-list--slider) ul li a .content h2 {
    font-size: clamp(22px, 6vw, 32px);
  }
}


/* ---------- Article list: slider mode (Glasmagasinet) ----------
 * Activated when the editor toggles "Slider mode" AND the block has
 * more than 4 posts. Cards keep the same visual style as the 4-up
 * grid; the ul becomes a horizontal scroll-snap strip and stays a
 * scroller on mobile (no single-column collapse). */

[data-site="glasmagasinet"] .article-list--slider ul.grid-x {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  /* Drop Foundation's negative outer margin and use a real flexbox gap so
     the first/last card edges line up exactly with the viewport edges
     (otherwise the strip overflows by one gutter on each side and the
     overlay arrows look off-centre). */
  margin-left: 0 !important;
  margin-right: 0 !important;
  gap: 1.625rem;
}

[data-site="glasmagasinet"] .article-list--slider ul.grid-x::-webkit-scrollbar {
  display: none;
}

[data-site="glasmagasinet"] .article-list--slider ul.grid-margin-x>.cell {
  /* Four cards across with three 1.625rem gaps between them. */
  flex: 0 0 calc((100% - 3 * 1.625rem) / 4) !important;
  width: calc((100% - 3 * 1.625rem) / 4) !important;
  scroll-snap-align: start;
  margin: 0 !important;
}

/* Force the 4-up portrait aspect on slider cards even on mobile, since
 * the user wants the slider to keep the 4-grid visual style. */
[data-site="glasmagasinet"] .article-list--slider ul li a .img-wrap {
  aspect-ratio: 3 / 4 !important;
}

/* Video / GIF inside a card uses the same fit as the still image. */
[data-site="glasmagasinet"] .article-list ul li a .img-wrap video,
[data-site="glasmagasinet"] .article-list ul li a .img-wrap img {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

@media screen and (max-width: 63.9375em) {
  /* Cards stay slider-sized; show ~1.5 per viewport so the next card
     peeks on the right and signals scrollability. */
  [data-site="glasmagasinet"] .article-list--slider ul.grid-margin-x>.cell {
    flex: 0 0 65vw !important;
    width: 65vw !important;
  }
}

/* Slider arrows — overlay prev/next buttons that scroll the strip and
 * signal scrollability. JS sets --al-arrow-top so they vertically center
 * on the card image; it also toggles [hidden] on the arrow at each end. */
[data-site="glasmagasinet"] .article-list--slider .article-list__viewport {
  position: relative;
}

[data-site="glasmagasinet"] .article-list--slider .article-list__arrow {
  position: absolute;
  top: var(--al-arrow-top, 40%);
  transform: translateY(-50%);
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #fff;
  color: #111;
  cursor: pointer;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
  transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

[data-site="glasmagasinet"] .article-list--slider .article-list__arrow:hover {
  background: #111;
  color: #fff;
}

[data-site="glasmagasinet"] .article-list--slider .article-list__arrow[hidden] {
  display: none;
}

[data-site="glasmagasinet"] .article-list--slider .article-list__arrow--prev {
  left: 0.5rem;
}

[data-site="glasmagasinet"] .article-list--slider .article-list__arrow--next {
  right: 0.5rem;
}

@media screen and (max-width: 63.9375em) {
  [data-site="glasmagasinet"] .article-list--slider .article-list__arrow {
    width: 40px;
    height: 40px;
  }
}


/* ---------- New: Title (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-title {
  background: #f3f3f1;
  margin-block: clamp(30px, 2vw, 50px);
}

[data-site="glasmagasinet"] .gm-title__heading {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: clamp(36px, 5vw, 80px);
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: #111;
  margin: 0;
}

[data-site="glasmagasinet"] .gm-title__subtitle {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.04em;
  color: #1a1a1a;
  margin: clamp(24px, 3vw, 48px) 0 0;
}


/* ---------- New: Featured content (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-featured-content {
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
}

[data-site="glasmagasinet"] .gm-featured-content__body {
  max-width: 1100px;
  font-family: 'cera', Helvetica, Arial, sans-serif;
  line-height: 1.6;
  color: #1a1a1a;
  column-count: 2;
  column-gap: clamp(40px, 4vw, 80px);
}

[data-site="glasmagasinet"] .gm-featured-content__body p {
  margin: 0 0 1em;
  break-inside: avoid-column;
}

[data-site="glasmagasinet"] .gm-featured-content__body p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  [data-site="glasmagasinet"] .gm-featured-content__body {
    column-count: 1;
  }
}


/* ---------- New: Featured images (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-featured-images {
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
}

[data-site="glasmagasinet"] .gm-featured-images>.grid-container {
  max-width: unset;
}

[data-site="glasmagasinet"] .gm-featured-images__strip {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 16px;
  align-items: stretch;
}

[data-site="glasmagasinet"] .gm-featured-images__item {
  flex: 1;
  min-width: 0;
  margin: 0;
  list-style: none;
}

[data-site="glasmagasinet"] .gm-featured-images__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  aspect-ratio: 4 / 3;
}

@media screen and (max-width: 768px) {
  [data-site="glasmagasinet"] .gm-featured-images .grid-container {
    padding-inline: 0;
    max-width: none;
  }

  [data-site="glasmagasinet"] .gm-featured-images__strip {
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-inline: 20px;
    padding-inline: 20px;
    gap: 16px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  [data-site="glasmagasinet"] .gm-featured-images__strip::-webkit-scrollbar {
    display: none;
  }

  [data-site="glasmagasinet"] .gm-featured-images__item {
    flex: 0 0 85vw;
    scroll-snap-align: start;
  }
}


/* ---------- New: Quote (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-quote {
  background: #f3f3f1;
  margin-block: clamp(60px, 8vw, 140px);
}

[data-site="glasmagasinet"] .gm-quote__text {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: clamp(20px, 2.4vw, 36px);
  line-height: 1.4;
  text-align: center;
  color: #111;
  max-width: 50ch;
  margin: 0 auto;
  padding: 0;
  border: 0;
}

[data-site="glasmagasinet"] .gm-quote__text p {
  margin: 0 0 0.6em;
}

[data-site="glasmagasinet"] .gm-quote__text p:last-child {
  margin-bottom: 0;
}


/* ---------- New: Image + Text (Glasmagasinet) ---------- */

[data-site="glasmagasinet"] .gm-image-text {
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
}

[data-site="glasmagasinet"] .gm-image-text__inner {
  display: grid;
  gap: clamp(24px, 7vw, 150px);
  align-items: start;
}

[data-site="glasmagasinet"] .gm-image-text[data-image-side="right"] .gm-image-text__inner {
  grid-template-columns: 1fr 3fr;
  grid-template-areas: "copy media";
}


[data-site="glasmagasinet"] .gm-image-text[data-image-side="left"] .gm-image-text__inner {
  grid-template-columns: 3fr 1fr;
  grid-template-areas: "media copy";
}

@media screen and (max-width: 1300px) {
  [data-site="glasmagasinet"] .gm-image-text[data-image-side="left"] .gm-image-text__inner {
    grid-template-columns: 2fr 1fr;
  }

  [data-site="glasmagasinet"] .gm-image-text[data-image-side="right"] .gm-image-text__inner {
    grid-template-columns: 1fr 2fr;
  }
}

[data-site="glasmagasinet"] .gm-image-text__media {
  grid-area: media;
  height: 100%;
}

[data-site="glasmagasinet"] .gm-image-text__copy {
  grid-area: copy;
}

[data-site="glasmagasinet"] .gm-image-text__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

[data-site="glasmagasinet"] .gm-image-text__copy {
  margin-block: clamp(8px, 1.5vw, 24px);
}

[data-site="glasmagasinet"] .gm-image-text__heading {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(28px, 3vw, 48px);
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: #111;
  margin: 0 0 clamp(16px, 2vw, 28px);
}

[data-site="glasmagasinet"] .gm-image-text__body {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  line-height: 1.6;
  color: #1a1a1a;
}

[data-site="glasmagasinet"] .gm-image-text__body p {
  margin: 0 0 1em;
}
[data-site="glasmagasinet"] .gm-image-text__body a {
  line-break: anywhere;
}


[data-site="glasmagasinet"] .gm-image-text__body p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {

  /* Mobile: image always stacks above the copy regardless of side. */
  [data-site="glasmagasinet"] .gm-image-text[data-image-side="right"] .gm-image-text__inner,
  [data-site="glasmagasinet"] .gm-image-text[data-image-side="left"] .gm-image-text__inner {
    grid-template-columns: 1fr;
    grid-template-areas: "media" "copy";
    gap: 24px;
  }
}


/* ---------- New: Occasions accordion (Glasmagasinet) ----------
 * Open/close uses the modern grid-template-rows: 0fr -> 1fr transition
 * so the panel slides without us animating a height directly. */

[data-site="glasmagasinet"] .gm-occasions {
  background: #f3f3f1;
  margin-block: clamp(40px, 6vw, 100px);
}

[data-site="glasmagasinet"] .gm-occasions__inner {
  max-width: 1100px;
}

[data-site="glasmagasinet"] .gm-occasions__title {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 500;
  font-size: clamp(18px, 1.8vw, 28px);
  text-transform: uppercase;
  text-align: center;
  color: #111;
  margin: 0 0 clamp(40px, 5vw, 80px);
}

[data-site="glasmagasinet"] .gm-occasions__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

[data-site="glasmagasinet"] .gm-occasions__item {
  list-style: none;
  margin: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.18);
}

[data-site="glasmagasinet"] .gm-occasions__item:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.18);
}

[data-site="glasmagasinet"] .gm-occasions__row {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) 4fr auto;
  align-items: center;
  gap: clamp(20px, 3vw, 60px);
  width: 100%;
  padding: clamp(10px, 1.2vw, 20px) clamp(8px, 1vw, 16px);
  background: transparent;
  border: 0;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

[data-site="glasmagasinet"] .gm-occasions__date {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: clamp(15px, 1.20vw, 20px);
  color: #1a1a1a;
}

[data-site="glasmagasinet"] .gm-occasions__heading {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: clamp(15px, 1.20vw, 20px);
  color: #111;
}

[data-site="glasmagasinet"] .gm-occasions__chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #111;
  transition: transform 350ms ease;
  transform-origin: center;
}

[data-site="glasmagasinet"] .gm-occasions__item.is-open .gm-occasions__chevron {
  transform: scaleY(-1);
}

/* The slide animation: grid-template-rows transitions from 0fr to 1fr.
 * The inner element must have overflow:hidden + min-height:0 for the
 * row-track collapse to clip the content. */
[data-site="glasmagasinet"] .gm-occasions__panel {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 400ms ease;
}

[data-site="glasmagasinet"] .gm-occasions__item.is-open .gm-occasions__panel {
  grid-template-rows: 1fr;
}

[data-site="glasmagasinet"] .gm-occasions__panel-inner {
  overflow: hidden;
  min-height: 0;
}

[data-site="glasmagasinet"] .gm-occasions__panel-content {
  padding: clamp(24px, 3vw, 48px) clamp(8px, 1vw, 16px) clamp(32px, 5vw, 80px);
}

[data-site="glasmagasinet"] .gm-occasions__panel-heading {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: clamp(28px, 3.4vw, 38px);
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: #111;
  margin: 0 0 clamp(12px, 1.5vw, 24px);
}

[data-site="glasmagasinet"] .gm-occasions__panel-date {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 14px;
  color: #1a1a1a;
  margin: 0 0 clamp(20px, 3vw, 40px);
}

[data-site="glasmagasinet"] .gm-occasions__panel-body {
  font-family: 'cera', Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #1a1a1a;
  max-width: 80ch;
}

[data-site="glasmagasinet"] .gm-occasions__panel-body p {
  margin: 0 0 1em;
}

[data-site="glasmagasinet"] .gm-occasions__panel-body p:last-child {
  margin-bottom: 0;
}

/* Reduced-motion: snap open/close instead of sliding. */
@media (prefers-reduced-motion: reduce) {
  [data-site="glasmagasinet"] .gm-occasions__panel {
    transition: none;
  }

  [data-site="glasmagasinet"] .gm-occasions__chevron {
    transition: none;
  }
}