/* BXYZ:..:eliot@bosmanxyz.xyz:..:.www.bosmanxyz.xyz */

@layer layout {
  .ram {
    position: relative;
    inline-size: 100dvw;
    min-block-size: 100svh;
    block-size: 100dvh;
    max-inline-size: 100dvw;
    max-block-size: 100dvh;
    margin-inline: auto;
    overflow: hidden;
    overflow-x: clip;
    display: flex;
    flex-direction: column;
    padding-block-end: max(var(--spelare-insats), env(safe-area-inset-bottom, 0px));
    background: var(--yta-accent);
    color: var(--text-pa-accent);
    --cta-fyll: var(--text-pa-accent);
    --cta-invert: var(--yta-accent);
    scrollbar-width: none;
    transition:
      background-color var(--rorelse-snabb) var(--ease),
      color var(--rorelse-snabb) var(--ease);
  }

  .ram[data-yta="panel"] {
    background: var(--yta-panel);
    color: var(--text-pa-panel);
    --cta-fyll: var(--text-pa-panel);
    --cta-invert: var(--yta-panel);
  }

  .ram[data-yta="mork"] {
    background: var(--yta-mork);
    color: var(--text-pa-mork);
    --cta-fyll: var(--text-pa-mork);
    --cta-invert: var(--yta-mork);
  }

  .ram[data-yta="mork"] .hem-skrivbord,
  .ram[data-yta="panel"] .hem-skrivbord,
  .ram[data-yta="svart"] .hem-skrivbord {
    background: transparent;
  }

  .ram[data-yta="svart"] {
    background: var(--yta-svart);
    color: var(--text-pa-svart);
    --cta-fyll: var(--text-pa-svart);
    --cta-invert: var(--yta-svart);
  }

  .trad {
    position: relative;
    z-index: var(--lager-innehall);
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    padding-block-start: max(var(--trad-start), env(safe-area-inset-top, 0px));
    padding-inline-start: max(var(--margin), env(safe-area-inset-left, 0px));
    padding-inline-end: max(var(--margin), env(safe-area-inset-right, 0px));
    min-block-size: 0;
    overflow: hidden;
  }

  .ram:has(.spelare:not([hidden])) {
    padding-block-end: 0;
  }

  @media not (min-width: 64rem) {
    .ram {
      padding-block-end: 0;
    }

    .trad {
      display: grid;
      grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
      column-gap: var(--gutter);
      grid-template-rows: repeat(var(--rows), minmax(0, var(--u)));
      row-gap: var(--rad-gap);
      align-content: start;
      padding-block-start: var(--margin);
      padding-block-end: var(--margin);
      padding-inline-start: var(--margin);
      padding-inline-end: var(--margin);
    }

    .nod__panel {
      transition: none;
    }

    .spelare {
      display: none;
    }
  }
}

@layer components {
  .logotyp {
    display: none;
  }

  .hem-skrivbord__mark {
    display: block;
    flex: 0 1 auto;
    align-self: stretch;
    min-inline-size: 0;
    min-block-size: 0;
    inline-size: auto;
    block-size: auto;
    max-inline-size: 100%;
    max-block-size: 100%;
    aspect-ratio: var(--hem-mark-ratio);
    background-color: currentColor;
    mask: url("../assets/grafik/logotyp.svg") center / contain no-repeat;
    -webkit-mask: url("../assets/grafik/logotyp.svg") center / contain no-repeat;
    pointer-events: none;
  }

  .black {
    display: none;
  }

  .black__lager {
    position: absolute;
    opacity: 0;
    transition: opacity var(--rorelse-standard) var(--ease);
    background-color: var(--dekor-fyll);
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
  }

  .black__lager[data-lager="hem"] {
    inset-inline-start: var(--black-hem-x);
    inset-block-start: var(--black-hem-y);
    inline-size: var(--black-hem-b);
    block-size: var(--black-hem-h);
    background-color: var(--dekor-fyll);
    mask-image: url("../assets/grafik/black-hem.svg");
    -webkit-mask-image: url("../assets/grafik/black-hem.svg");
  }

  .black__lager[data-lager="restaurant"] {
    inset-inline-start: var(--black-restaurant-x);
    inset-block-start: var(--black-restaurant-y);
    inline-size: var(--black-restaurant-b);
    block-size: var(--black-restaurant-h);
    background-color: var(--dekor-fyll);
    mask-image: url("../assets/grafik/black-restaurant.svg");
    -webkit-mask-image: url("../assets/grafik/black-restaurant.svg");
  }

  .black__lager[data-lager="meny"] {
    inset-inline-start: var(--black-meny-x);
    inset-block-start: var(--black-meny-y);
    inline-size: var(--black-meny-b);
    block-size: var(--black-meny-h);
    background-color: var(--dekor-fyll);
    mask-image: url("../assets/grafik/black-meny.svg");
    -webkit-mask-image: url("../assets/grafik/black-meny.svg");
  }

  .black__lager[data-lager="program"] {
    inset-inline-start: var(--black-program-x);
    inset-block-start: var(--black-program-y);
    inline-size: var(--black-program-b);
    block-size: var(--black-program-h);
    background-color: var(--dekor-fyll-program);
    mask-image: url("../assets/grafik/black-program.svg");
    -webkit-mask-image: url("../assets/grafik/black-program.svg");
    z-index: var(--lager-black);
  }

  .black__lager[data-lager="om"] {
    inset-inline-start: var(--black-om-x);
    inset-block-start: var(--black-om-y);
    inline-size: var(--black-om-b);
    block-size: var(--black-om-h);
    background-color: var(--dekor-fyll);
    mask-image: url("../assets/grafik/black-om.png");
    -webkit-mask-image: url("../assets/grafik/black-om.png");
  }

  .ram[data-black="hem"] .black__lager[data-lager="hem"],
  .ram[data-black="restaurant"] .black__lager[data-lager="restaurant"],
  .ram[data-black="meny"] .black__lager[data-lager="meny"],
  .ram[data-black="program"] .black__lager[data-lager="program"],
  .ram[data-black="program-lista"] .black__lager[data-lager="program"],
  .ram[data-black="om"] .black__lager[data-lager="om"] {
    opacity: 1;
  }

  .nod {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    min-block-size: 0;
  }

  .nod > :is(h2, h3) {
    display: contents;
  }

  .nod[data-tillstand="expanderad"],
  .nod[data-tillstand="expanderar"] {
    flex: 1 1 auto;
    min-block-size: 0;
  }

  .nod__reglage {
    position: relative;
    z-index: var(--lager-list);
    display: flex;
    flex-direction: column;
    flex: 0 0 var(--rad-hojd);
    inline-size: 100%;
    color: inherit;
    text-decoration: none;
  }

  .nod__titel {
    display: block;
    flex: 0 0 var(--rad-text);
    padding-inline-start: 0;
    padding-inline-end: 0;
    inline-size: 100%;
    font-size: var(--typ-nav);
    line-height: var(--rad-text);
    font-weight: var(--vikt-rubrik);
  }

  .nod[data-niva="1"] .nod__titel {
    padding-inline-start: calc(var(--col) + var(--gutter));
  }

  [data-nod="booking"] > .nod__panel > .nod__inre[data-pinna="sista"] > .nod[data-blad] .nod__titel {
    padding-inline-start: 0;
  }

  .nod[data-justera="hoger"] .nod__titel {
    text-align: end;
  }

  .nod[data-justera="mitten"]:not([data-handelse]) .nod__titel {
    text-align: center;
    padding-inline: 0;
  }

  .nod[data-justera="vanster"] .nod__titel {
    text-align: start;
  }

  .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderad"] + .nod:not([data-handelse]) .nod__titel,
  .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderar"] + .nod:not([data-handelse]) .nod__titel {
    text-align: end;
  }

  .etikett--kort {
    display: none;
  }

  .nod[data-tillstand="expanderad"] .etikett--kort,
  .nod[data-tillstand="expanderar"] .etikett--kort {
    display: inline;
  }

  .nod[data-tillstand="expanderad"] .etikett--lang,
  .nod[data-tillstand="expanderar"] .etikett--lang {
    display: none;
  }

  .ram[data-yta="accent"] .nod[data-blad][data-tillstand="expanderad"] > :is(h2, h3) .nod__titel,
  .ram[data-yta="accent"] .nod[data-blad][data-tillstand="expanderar"] > :is(h2, h3) .nod__titel {
    color: var(--text-vald);
  }

  .nod__linje {
    display: block;
    flex: 0 0 var(--linje-tjocklek);
    block-size: var(--linje-tjocklek);
    inline-size: 100%;
    background: var(--linje-farg);
  }

  .ram[data-black="hem"] .trad > .nod[data-niva="0"] > h2 .nod__linje {
    inline-size: var(--col);
    max-inline-size: var(--col);
  }

  .ram[data-yta="accent"][data-black="hem"] .trad > .nod:last-child .nod__reglage {
    flex-basis: var(--rad-text);
  }

  .ram[data-yta="accent"][data-black="hem"] .trad > .nod:last-child > h2 .nod__linje {
    background: transparent;
    block-size: 0;
    flex-basis: 0;
  }

  .ram[data-yta="accent"] .trad > .nod > h2 .nod__linje {
    background: var(--linje-farg);
  }

  .ram[data-yta="accent"] .nod[data-justera] .nod__linje {
    background: var(--linje-farg-panel);
  }

  .ram[data-yta="accent"] .nod[data-justera][data-tillstand="expanderad"] .nod__linje,
  .ram[data-yta="accent"] .nod[data-justera][data-tillstand="expanderar"] .nod__linje,
  .ram[data-yta="accent"] .nod[data-justera][data-ton="mork"] .nod__linje,
  .ram[data-yta="accent"] .nod[data-justera]:has(+ .nod[data-ton="mork"]) .nod__linje {
    background: var(--linje-farg);
  }

  .ram[data-yta="panel"] .nod__linje {
    background: var(--linje-farg-panel);
  }

  .ram[data-yta="panel"] .nod[data-tillstand="hopfalld"]:has(+ .nod[data-tillstand="expanderad"]:not(:last-child)) .nod__linje,
  .ram[data-yta="panel"] .nod[data-tillstand="hopfalld"]:has(+ .nod[data-tillstand="expanderar"]:not(:last-child)) .nod__linje,
  .ram[data-yta="panel"] .nod[data-tillstand="expanderad"]:last-child .nod__linje,
  .ram[data-yta="panel"] .nod[data-tillstand="expanderar"]:last-child .nod__linje {
    background: var(--linje-farg-panel);
  }

  .ram[data-yta="mork"] .nod__linje {
    background: var(--linje-farg-mork);
  }

  .ram[data-yta="svart"] .nod__linje {
    background: var(--linje-farg-svart);
  }

  .ram[data-yta="mork"] .nod__inre[data-pinna] > .nod:last-child .nod__linje {
    background: var(--linje-farg-mork);
  }

  .nod[data-ton="mork"] .nod__reglage {
    color: var(--yta-mork);
  }

  .nod[data-ton="mork"] .nod__linje {
    background: var(--linje-farg);
  }

  .ram[data-yta="svart"] .nod[data-ton="mork"] .nod__reglage {
    color: inherit;
  }

  .ram[data-yta="svart"] .nod[data-ton="mork"] .nod__linje {
    background: var(--linje-farg-svart);
  }

  .nod[data-yta-nod="mork"][data-tillstand="expanderad"] > h3 > .nod__reglage,
  .nod[data-yta-nod="mork"][data-tillstand="expanderar"] > h3 > .nod__reglage {
    position: absolute;
    inline-size: var(--dold-spalt);
    block-size: var(--dold-spalt);
    overflow: hidden;
    clip-path: inset(50%);
    flex-basis: auto;
  }

  .nod__panel {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    min-block-size: 0;
    transition:
      grid-template-rows var(--rorelse-standard) var(--ease),
      opacity var(--rorelse-standard) var(--ease);
    opacity: 0;
  }

  .nod[data-tillstand="expanderar"] > .nod__panel,
  .nod[data-tillstand="expanderad"] > .nod__panel {
    grid-template-rows: 1fr;
    opacity: 1;
    flex: 1 1 auto;
    min-block-size: 0;
  }

  .nod[data-tillstand="kollapsar"] > .nod__panel {
    grid-template-rows: 0fr;
    opacity: 0;
  }

  .nod__inre[data-pinna] > .nod[data-tillstand="expanderad"]:not(:last-child) > .nod__panel:not(:has(.cta)),
  .nod__inre[data-pinna] > .nod[data-tillstand="expanderar"]:not(:last-child) > .nod__panel:not(:has(.cta)) {
    border-block-end: var(--linje-tjocklek) solid var(--linje-farg);
  }

  .ram[data-yta="accent"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderad"]:not(:last-child) > .nod__panel,
  .ram[data-yta="accent"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderar"]:not(:last-child) > .nod__panel {
    border-block-end-color: var(--linje-farg);
  }

  .ram[data-yta="panel"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderad"]:not(:last-child) > .nod__panel,
  .ram[data-yta="panel"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderar"]:not(:last-child) > .nod__panel {
    border-block-end-color: var(--linje-farg-panel);
  }

  .ram[data-yta="mork"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderad"]:not(:last-child) > .nod__panel,
  .ram[data-yta="mork"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderar"]:not(:last-child) > .nod__panel {
    border-block-end-color: var(--linje-farg-mork);
  }

  .ram[data-yta="svart"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderad"]:not(:last-child) > .nod__panel,
  .ram[data-yta="svart"] .nod__inre[data-pinna] > .nod[data-tillstand="expanderar"]:not(:last-child) > .nod__panel {
    border-block-end-color: var(--linje-farg-svart);
  }

  .nod__inre {
    min-block-size: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  .ram[data-black="om"] .trad > .nod[data-nod="about"] > h2 .nod__linje {
    inline-size: var(--linje-halv);
    background: var(--linje-farg);
  }

  .ram[data-yta="mork"] .nod__inre[data-pinna] > .nod[data-nod="menu"]:last-child .nod__linje {
    background: var(--linje-farg-mork);
  }

  .kok,
  .om-falt {
    flex: 1 1 auto;
    min-block-size: 0;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .om-falt {
    display: flex;
    flex-direction: column;
  }

  .om-falt [data-komponent="textblock"] {
    flex: none;
  }

  @media not (min-width: 64rem) {
    .nod[data-nod="restaurant"]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre[data-pinna] {
      display: flex;
      flex-direction: column;
      overflow-x: hidden;
      overflow-y: auto;
      min-block-size: 0;
      touch-action: pan-y;
    }

    .nod[data-nod="restaurant"] > .nod__panel > .nod__inre > .nod[data-nod="menu"] {
      flex: 0 0 auto;
    }

    .nod[data-nod="restaurant"] > .nod__panel > .nod__inre > .nod[data-nod="menu"] > h3 {
      display: none;
    }

    .nod[data-nod="restaurant"][data-vy="meny"] .kok {
      display: none;
    }

    .nod[data-nod="restaurant"][data-vy="meny"] > .nod__panel > .nod__inre > .nod[data-nod="menu"] {
      flex: 0 0 auto;
      min-block-size: 0;
    }

    .nod[data-nod="restaurant"][data-vy="meny"] [data-nod="menu"] > .nod__panel {
      flex: 0 0 auto;
      min-block-size: 0;
      display: flex;
      flex-direction: column;
      overflow: visible;
    }
  }

  .nod[data-tillstand="expanderad"] > .nod__panel > .nod__inre:not([data-pinna]),
  .nod[data-tillstand="expanderar"] > .nod__panel > .nod__inre:not([data-pinna]) {
    flex: 1 1 auto;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .nod[data-tillstand="expanderad"] > .nod__panel > .nod__inre:not([data-pinna]):has(.cta),
  .nod[data-tillstand="expanderar"] > .nod__panel > .nod__inre:not([data-pinna]):has(.cta) {
    overflow: hidden;
  }

  .nod__flode {
    flex: 1 1 auto;
    min-block-size: 0;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .nod[data-tillstand="expanderad"] > .nod__panel > .nod__inre[data-pinna],
  .nod[data-tillstand="expanderar"] > .nod__panel > .nod__inre[data-pinna] {
    flex: 1 1 auto;
    overflow: hidden;
  }

  .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderad"] + .nod ~ .nod,
  .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderar"] + .nod ~ .nod {
    display: none;
  }

  .galleri {
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  .galleri[data-axel="x"] {
    container-type: inline-size;
  }

  .galleri__bana {
    display: flex;
    flex-wrap: nowrap;
    inline-size: 100%;
    min-inline-size: 100%;
    transform: translateX(calc(-100cqw * var(--galleri-steg, 0)));
    transition: transform var(--rorelse-standard) var(--ease);
  }

  .galleri[data-layout="kolonn"][data-axel="x"] .galleri__bana {
    gap: var(--gutter);
    min-inline-size: 0;
    transform: translateX(calc(-1 * var(--galleri-steg, 0) * var(--bx-gallery-kolonn-steg)));
  }

  .galleri[data-axel="x"] .galleri__bild {
    flex: 0 0 100%;
    inline-size: 100%;
    min-inline-size: 100%;
    max-inline-size: 100%;
  }

  .galleri[data-index="0"] {
    --galleri-steg: 0;
  }

  .galleri[data-index="1"] {
    --galleri-steg: 1;
  }

  .galleri[data-index="2"] {
    --galleri-steg: 2;
  }

  .galleri[data-index="3"] {
    --galleri-steg: 3;
  }

  .galleri[data-index="4"] {
    --galleri-steg: 4;
  }

  .galleri[data-index="5"] {
    --galleri-steg: 5;
  }

  .galleri[data-index="6"] {
    --galleri-steg: 6;
  }

  .galleri[data-index="7"] {
    --galleri-steg: 7;
  }

  .galleri[data-index="8"] {
    --galleri-steg: 8;
  }

  .galleri[data-index="9"] {
    --galleri-steg: 9;
  }

  .galleri[data-index="10"] {
    --galleri-steg: 10;
  }

  .galleri[data-index="11"] {
    --galleri-steg: 11;
  }

  .galleri__bild {
    flex: 0 0 100%;
    inline-size: 100%;
    margin: 0;
  }

  .galleri__bild .media__bild {
    inline-size: auto;
    block-size: auto;
    max-inline-size: 100%;
    max-block-size: var(--media-max-block);
    object-fit: contain;
  }

  .galleri[data-format="program"] .media__bild {
    max-block-size: min(var(--media-max-block), var(--media-program-hojd));
    opacity: var(--media-tathet-program);
  }

  .galleri[data-format="lokal"] .media__bild {
    max-inline-size: 100%;
    max-block-size: var(--media-max-block);
    opacity: var(--media-tathet-lokal);
  }

  .galleri[data-format="restaurant"] {
    inline-size: 100%;
    max-inline-size: none;
    flex: none;
  }

  .galleri[data-format="restaurant"] .galleri__bana {
    flex: 0 0 auto;
    inline-size: 100%;
    min-block-size: 0;
  }

  .galleri[data-format="restaurant"] .galleri__bild {
    aspect-ratio: var(--media-restaurant-ratio-mobil);
    block-size: auto;
    overflow: hidden;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] .galleri__bild {
    aspect-ratio: auto;
    block-size: 100%;
  }

  [data-komponent="bx-gallery-full-controller"] {
    display: flex;
    flex-direction: column;
    flex: none;
    inline-size: 100%;
    margin-block-start: var(--bx-gallery-full-topp);
    max-block-size: var(--bx-gallery-full-yta);
    min-block-size: 0;
  }

  [data-komponent="bx-gallery-full-controller"] > .galleri {
    display: grid;
    grid-template-rows: minmax(0, var(--bx-gallery-full-bild-hojd)) minmax(0, var(--styrenhet-band));
    inline-size: 100%;
    max-inline-size: none;
    min-block-size: 0;
    max-block-size: var(--bx-gallery-full-yta);
    overflow: hidden;
    flex: 1 1 auto;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] .galleri__bana {
    grid-row: 1;
    align-self: stretch;
    min-block-size: 0;
    max-block-size: none;
    block-size: 100%;
    inline-size: 100%;
    align-items: stretch;
    overflow: visible;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-axel="x"][data-format="restaurant"] .galleri__bild {
    flex: 0 0 100cqw;
    inline-size: 100cqw;
    min-inline-size: 100cqw;
    max-inline-size: 100cqw;
    block-size: 100%;
    min-block-size: 0;
    aspect-ratio: auto;
    overflow: hidden;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet {
    grid-row: 2;
    display: grid;
    grid-template-columns: minmax(calc(var(--u) * 2), auto) minmax(0, 1fr) minmax(calc(var(--u) * 2), auto);
    align-items: center;
    align-content: center;
    justify-items: center;
    column-gap: var(--gutter);
    block-size: 100%;
    min-block-size: 0;
    max-block-size: var(--styrenhet-band);
    padding-block: var(--styrenhet-insats);
    box-sizing: border-box;
    color: var(--text-pa-accent);
    background-color: var(--yta-accent);
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg,
  [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg {
    min-block-size: 0;
  }

  .ram[data-yta="panel"] [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  .ram[data-yta="panel"] [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet {
    color: var(--text-pa-panel);
    background-color: var(--yta-panel);
  }

  .ram[data-yta="mork"] [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  .ram[data-yta="mork"] [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  .ram[data-yta="svart"] [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  .ram[data-yta="svart"] [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet {
    color: var(--text-pa-mork);
    background-color: transparent;
  }

  .ram[data-yta="svart"] [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
  .ram[data-yta="svart"] [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet {
    color: var(--text-pa-svart);
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg:first-of-type,
  [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg:first-of-type {
    grid-column: 1;
    justify-self: start;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__bildtext,
  [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__bildtext {
    grid-column: 2;
    justify-self: center;
    inline-size: 100%;
    max-inline-size: min(100%, var(--span-4));
    margin: 0;
    text-align: center;
    text-wrap: balance;
  }

  [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg:last-of-type,
  [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__steg:last-of-type {
    grid-column: 3;
    justify-self: end;
  }

  .galleri[data-format="restaurant"] .media__bild {
    inline-size: 100%;
    block-size: 100%;
    max-inline-size: none;
    max-block-size: none;
    object-fit: cover;
    object-position: center;
    opacity: var(--media-tathet-restaurant);
  }

  [data-nod="restaurant"] .media__bild,
  [data-nod="restaurant"] .las-stycke__media .media__bild {
    opacity: var(--media-tathet-restaurant);
  }

  [data-nod="program"] .media__bild {
    opacity: var(--media-tathet-program);
  }

  [data-nod="about"] .media__bild {
    opacity: var(--media-tathet-lokal);
  }

  .kok:has(> .kok__falt) {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    flex: 0 1 auto;
  }

  .kok__falt {
    flex: 0 0 auto;
    min-block-size: auto;
    block-size: auto;
    padding-block: var(--u);
    box-sizing: border-box;
  }

  .kok__falt[data-falt="vy"] {
    inline-size: 100%;
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    column-gap: var(--gutter);
    align-content: start;
  }

  .kok__falt[data-falt="rutnat"],
  .kok__falt[data-falt="text"] {
    inline-size: 100%;
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    column-gap: var(--gutter);
    row-gap: var(--gutter);
    align-content: start;
  }

  .kok__falt[data-falt="staende"] {
    inline-size: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    row-gap: var(--staende-gap);
  }

  .kok__falt[data-falt="staende"] [data-komponent="bx-gallery-full-controller"] {
    flex: 0 1 auto;
    inline-size: min(var(--staende-inline), calc(var(--staende-max-block) * 4 / 5));
    max-block-size: var(--staende-max-block);
    margin-block-start: 0;
    overflow: hidden;
  }

  .kok__falt[data-falt="staende"] [data-komponent="bx-gallery-full-controller"] > .galleri {
    aspect-ratio: var(--media-restaurant-ratio-mobil);
    max-block-size: var(--staende-max-block);
    grid-template-rows: minmax(0, 1fr) minmax(0, var(--styrenhet-band));
  }

  .kok__falt[data-falt="staende"] [data-komponent="textblock"] {
    flex: 0 0 auto;
    grid-column: auto;
    justify-self: center;
    align-self: center;
    max-inline-size: min(var(--staende-inline), calc(var(--staende-max-block) * 4 / 5));
    text-align: center;
  }

  .kok__falt[data-falt="staende"] [data-komponent="textblock"] > .brod {
    max-inline-size: none;
    padding-block: 0;
    text-align: center;
  }

  [data-komponent="bx-gallery-rutnat"] {
    --bx-rutnat-kol: 3;
    grid-column: 1 / -1;
    inline-size: 100%;
    min-block-size: 0;
  }

  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="1"] { --bx-rutnat-kol: 1; }
  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="2"] { --bx-rutnat-kol: 2; }
  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="3"] { --bx-rutnat-kol: 3; }
  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="4"] { --bx-rutnat-kol: 4; }
  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="5"] { --bx-rutnat-kol: 5; }
  [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner="6"] { --bx-rutnat-kol: 6; }

  .galleri[data-layout="rutnat"] {
    display: grid;
    grid-template-columns: repeat(var(--bx-rutnat-kol), minmax(0, 1fr));
    column-gap: var(--gutter);
    row-gap: var(--gutter);
    inline-size: 100%;
  }

  .galleri[data-layout="rutnat"] .galleri__bild {
    display: flex;
    flex-direction: column;
    margin: 0;
    inline-size: 100%;
    min-inline-size: 0;
    block-size: auto;
    aspect-ratio: auto;
    overflow: hidden;
  }

  .galleri[data-layout="rutnat"] .media__bild {
    inline-size: 100%;
    block-size: auto;
    aspect-ratio: var(--media-restaurant-ratio-skrivbord);
    object-fit: cover;
    object-position: center;
    opacity: var(--media-tathet-restaurant);
  }

  .galleri[data-format="restaurant"][data-layout="rutnat"] .galleri__bild {
    aspect-ratio: auto;
    block-size: auto;
  }

  .ram:not([data-sida="hem"]) .media__bild {
    opacity: var(--media-tathet-program);
  }

  .galleri[data-layout="rutnat"] .galleri__bildtext {
    margin-block-start: var(--gutter);
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
  }

  [data-komponent="bx-gallery-column-controller"] {
    --bx-gallery-kolonn-rad-tillagg: 0;
    --bx-gallery-kolonn-synliga: var(--cols);
    --bx-gallery-kolonn-celle-block: calc(
      var(--bx-gallery-kolonn-block) + var(--bx-gallery-kolonn-rad-tillagg) * var(--bx-gallery-kolonn-rad-steg)
    );
    grid-column: 1 / -1;
    inline-size: 100%;
    min-block-size: 0;
  }

  [data-komponent="bx-gallery-column-controller"] > .galleri[data-layout="kolonn"] {
    display: grid;
    grid-template-rows: minmax(0, auto) minmax(0, var(--styrenhet-band));
    inline-size: 100%;
    max-inline-size: none;
    min-block-size: 0;
    overflow: hidden;
    --bx-gallery-kolonn-celle-inline: calc(
      (100cqw - var(--gutter) * (var(--bx-gallery-kolonn-synliga) - 1)) / var(--bx-gallery-kolonn-synliga)
    );
    --bx-gallery-kolonn-steg: calc(var(--bx-gallery-kolonn-celle-inline) + var(--gutter));
  }

  [data-komponent="bx-gallery-column-controller"] .galleri[data-layout="kolonn"] .galleri__bana {
    grid-row: 1;
    overflow: hidden;
    align-items: stretch;
  }

  [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="5"] {
    --bx-gallery-kolonn-rad-tillagg: 1;
  }

  [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="4"] {
    --bx-gallery-kolonn-rad-tillagg: 2;
  }

  [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="3"] {
    --bx-gallery-kolonn-rad-tillagg: 3;
  }

  [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="2"] {
    --bx-gallery-kolonn-rad-tillagg: 4;
  }

  .galleri[data-layout="kolonn"] {
    inline-size: 100%;
    max-inline-size: none;
  }

  .galleri[data-layout="kolonn"][data-axel="x"] .galleri__bild {
    flex: 0 0 var(--bx-gallery-kolonn-celle-inline);
    inline-size: auto;
    min-inline-size: 0;
    max-inline-size: none;
    margin: 0;
    block-size: var(--bx-gallery-kolonn-celle-block, var(--bx-gallery-kolonn-block));
    min-block-size: 0;
    overflow: hidden;
  }

  .galleri[data-layout="kolonn"] .media__bild {
    inline-size: 100%;
    block-size: 100%;
    max-inline-size: none;
    max-block-size: none;
    object-fit: cover;
    object-position: center;
    opacity: var(--media-tathet-restaurant);
  }

  .kok__falt[data-falt="marginalia"] {
    align-content: start;
    row-gap: calc(var(--u) * 2);
  }

  [data-komponent="bx-gallery-marginalia"] {
    grid-column: 1 / -1;
    inline-size: 100%;
    min-block-size: 0;
  }

  [data-komponent="bx-gallery-marginalia"] > .galleri[data-layout="marginalia"] {
    display: grid;
    grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
    column-gap: var(--gutter);
    inline-size: 100%;
  }

  .galleri[data-layout="marginalia"] .marginalia__spalt {
    display: none;
  }

  .galleri[data-layout="marginalia"] .galleri__bild {
    margin: 0;
    inline-size: 100%;
    max-block-size: var(--bx-marginalia-max-block);
    aspect-ratio: var(--bx-marginalia-ratio);
    overflow: hidden;
  }

  .galleri[data-layout="marginalia"] .galleri__bild + .galleri__bild {
    margin-block-start: var(--bx-marginalia-luft);
  }

  .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(odd) {
    grid-column: 1;
    justify-self: start;
    inline-size: var(--col);
  }

  .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(even) {
    grid-column: 2;
    justify-self: end;
    inline-size: var(--col);
  }

  .galleri[data-layout="marginalia"] .marginalia__brod {
    margin: 0;
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
    text-align: center;
  }

  .galleri[data-layout="marginalia"] .media__bild {
    inline-size: 100%;
    block-size: 100%;
    max-inline-size: none;
    max-block-size: none;
    object-fit: cover;
    object-position: center;
    opacity: var(--media-tathet-restaurant);
  }

  .galleri[data-snapp="om"] .media__bild {
    opacity: var(--media-tathet-lokal);
  }

  @media not (min-width: 64rem) {
    .galleri[data-snapp="om"] .media__bild {
      max-block-size: calc(var(--falt-block) / 2);
    }
  }

  .galleri[data-axel="y"] {
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
  }

  .galleri[data-axel="y"] .galleri__bana {
    display: flex;
    flex-direction: column;
    transform: none;
  }

  .galleri[data-axel="y"] .galleri__bild {
    flex: none;
    inline-size: 100%;
    block-size: calc(var(--u) * 8);
  }

  .galleri[data-axel="y"] .media__bild {
    inline-size: 100%;
    block-size: 100%;
    max-inline-size: none;
    max-block-size: none;
    object-fit: cover;
    object-position: center;
    opacity: var(--media-tathet-program);
  }

  .rulla-pekare {
    display: none;
  }

  @media (min-width: 64rem) and (hover: hover) and (pointer: fine) {
    [data-pekare="rulla"] {
      cursor: none;
    }

    [data-pekare="rulla"] :is(a, button, [data-atgard]) {
      cursor: pointer;
    }

    .rulla-pekare {
      display: block;
      position: fixed;
      inset-block-start: 0;
      inset-inline-start: 0;
      z-index: var(--lager-fot);
      pointer-events: none;
      user-select: none;
      font-family: var(--typsnitt-rubrik);
      font-weight: var(--vikt-rubrik);
      font-size: var(--typ-nav);
      line-height: var(--typ-nav-hojd);
      white-space: nowrap;
      color: var(--kalla-sekundar);
      translate: calc(var(--rulla-x, 0) * 1px + var(--rulla-insats-x)) calc(var(--rulla-y, 0) * 1px + var(--rulla-insats-y));
    }

    .rulla-pekare[data-synlig="nej"] {
      visibility: hidden;
    }

    .rulla-pekare[data-variant="gra"],
    .rulla-pekare[data-variant="ljus"],
    .rulla-pekare[data-variant="mork"] {
      color: var(--kalla-sekundar);
    }

    .nod__reglage[data-pekare="oppna"] .nod__titel {
      color: var(--text-pa-pek);
    }

    .ram:is([data-yta="accent"], [data-yta="panel"]) .nod__reglage[data-pekare="oppna"] .nod__titel {
      color: var(--text-pa-accent);
    }

    .galleri[data-axel="x"] {
      cursor: auto;
    }

    .galleri[data-axel="y"] .galleri__bild {
      block-size: calc(var(--falt-block) / 2);
    }
  }

  .styrenhet {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-inline: 0;
    block-size: calc(var(--u) * 2);
    min-block-size: calc(var(--u) * 2);
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
  }

  .styrenhet__steg {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    min-inline-size: calc(var(--u) * 2);
    min-block-size: calc(var(--u) * 2);
    color: inherit;
  }

  .styrenhet__tecken {
    display: block;
    block-size: 1em;
    inline-size: 1em;
  }

  [data-atgard="galleri/nasta"] .styrenhet__tecken {
    transform: scaleX(-1);
  }

  .styrenhet__bildtext {
    flex: 1 1 auto;
    text-align: center;
  }

  @media (min-width: 64rem) {
    :not([data-komponent="bx-gallery-full-controller"]):has(> .galleri[data-axel="x"]) {
      display: grid;
      grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
      column-gap: var(--gutter);
    }

    :not([data-komponent="bx-gallery-full-controller"]):has(> .galleri[data-axel="x"]) > * {
      grid-column: 1 / -1;
    }

    .galleri[data-axel="x"]:not([data-format="restaurant"]) {
      display: flex;
      flex-direction: column;
      inline-size: auto;
      max-inline-size: var(--galleri-span);
      min-inline-size: 0;
      min-block-size: var(--galleri-yta);
      grid-column: 1 / span 3;
    }

    [data-komponent="bx-gallery-full-controller"] > .galleri[data-axel="x"][data-format="restaurant"] {
      display: grid;
      grid-column: 1 / -1;
      inline-size: 100%;
      max-inline-size: none;
      min-inline-size: 0;
      min-block-size: 0;
      max-block-size: var(--bx-gallery-full-yta);
      justify-self: stretch;
      overflow: hidden;
    }

    .galleri[data-axel="x"][data-justera="vanster"],
    [data-justera="vanster"] .galleri[data-axel="x"]:not([data-justera]) {
      grid-column: 1 / span 3;
    }

    .galleri[data-axel="x"][data-justera="mitten"],
    [data-justera="mitten"] .galleri[data-axel="x"]:not([data-justera]) {
      grid-column: 1 / -1;
      justify-self: center;
      inline-size: var(--span-3);
    }

    .galleri[data-axel="x"][data-justera="hoger"],
    [data-justera="hoger"] .galleri[data-axel="x"]:not([data-justera]) {
      grid-column: 4 / span 3;
    }

    .om-falt:has(> .galleri[data-axel="x"]):not(
      :has(> [data-komponent="textblock"][data-kolumn="a"]):has(> [data-komponent="textblock"][data-kolumn="f"])
    ) {
      grid-template-rows: auto minmax(0, 1fr);
      padding-block-end: var(--u);
      overflow: hidden;
    }

    .om-falt:has(> .galleri[data-snapp="om"]):has(> [data-komponent="textblock"][data-kolumn="a"]):has(
        > [data-komponent="textblock"][data-kolumn="f"]
      ) {
      grid-template-rows: var(--u) minmax(0, 1fr);
      align-items: stretch;
      padding-block-end: var(--u);
      overflow: hidden;
    }

    .om-falt:has(> .galleri[data-snapp="om"]):has(> [data-komponent="textblock"][data-kolumn="a"]):has(
        > [data-komponent="textblock"][data-kolumn="f"]
      )
      > [data-komponent="textblock"] {
      grid-row: 1 / -1;
      align-self: stretch;
      overflow-x: hidden;
      overflow-y: auto;
      scrollbar-width: none;
    }

    .galleri[data-axel="x"][data-snapp="om"] {
      grid-column: 3 / span 2;
      grid-row: 1;
      justify-self: stretch;
      align-self: stretch;
      inline-size: auto;
      max-inline-size: none;
      min-block-size: 0;
      max-block-size: 100%;
    }

    .om-falt:has(> .galleri[data-snapp="om"]):has(> [data-komponent="textblock"][data-kolumn="a"]):has(
        > [data-komponent="textblock"][data-kolumn="f"]
      )
      > .galleri[data-axel="x"][data-snapp="om"] {
      grid-row: 2 / -1;
    }

    .galleri[data-axel="x"]:not([data-format="restaurant"]) .galleri__bana,
    .galleri[data-axel="x"]:not([data-format="restaurant"]) .galleri__bild {
      block-size: var(--galleri-bild-hojd);
    }

    .galleri[data-axel="x"][data-snapp="om"] .galleri__bana {
      flex: 1 1 auto;
      min-block-size: 0;
      block-size: auto;
    }

    .galleri[data-axel="x"][data-snapp="om"] .galleri__bild {
      flex: 0 0 100%;
      block-size: 100%;
    }

    .galleri[data-axel="x"] .galleri__bild {
      overflow: hidden;
    }

    .galleri[data-axel="x"] .media__bild {
      inline-size: 100%;
      block-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      object-fit: cover;
      object-position: center;
    }

    .galleri[data-axel="x"]:not([data-format="restaurant"]) .styrenhet {
      inline-size: 100%;
      max-inline-size: none;
      margin-block: 0;
      margin-inline: 0;
      block-size: var(--styrenhet-band);
      padding-block: var(--styrenhet-insats);
    }

    [data-nod="restaurant"] .kok:not(:has(> .kok__falt)) {
      display: grid;
      grid-template-columns: repeat(var(--cols), minmax(0, 1fr));
      column-gap: var(--gutter);
      row-gap: var(--gutter);
      align-content: start;
    }

    [data-nod="restaurant"] .kok__falt[data-falt="vy"] {
      align-content: start;
    }

    .galleri[data-layout="marginalia"] .marginalia__spalt {
      display: flex;
      flex-direction: column;
      justify-content: center;
      grid-column: 2 / span 4;
      grid-row: 1 / -1;
      align-self: stretch;
      padding-inline: var(--gutter);
      text-align: center;
    }

    .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(odd) {
      grid-column: 1;
      justify-self: start;
      inline-size: var(--col);
    }

    .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(even) {
      grid-column: 6;
      justify-self: end;
      inline-size: var(--col);
    }

    [data-komponent="bx-gallery-full-controller"][data-bredd-kolonner="6"] {
      grid-column: 1 / -1;
    }

    [data-komponent="bx-gallery-rutnat"] {
      grid-column: 1 / -1;
    }

    [data-komponent="bx-gallery-column-controller"] {
      justify-self: stretch;
    }

    [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="6"] {
      --bx-gallery-kolonn-synliga: 6;
    }

    [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="5"] {
      --bx-gallery-kolonn-synliga: 5;
    }

    [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="4"] {
      --bx-gallery-kolonn-synliga: 4;
    }

    [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="3"] {
      --bx-gallery-kolonn-synliga: 3;
    }

    [data-komponent="bx-gallery-column-controller"][data-bredd-kolonner="2"] {
      --bx-gallery-kolonn-synliga: 2;
    }

    [data-komponent="bx-gallery-full-controller"][data-bredd-kolonner="4"] {
      grid-column: span 4;
    }

    [data-komponent="bx-gallery-full-controller"][data-bredd-kolonner="3"] {
      grid-column: span 3;
    }

    [data-komponent="bx-gallery-full-controller"][data-bredd-kolonner="2"] {
      grid-column: span 2;
    }

    [data-komponent="bx-gallery-full-controller"][data-bredd-kolonner="1"] {
      grid-column: span 1;
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__bildtext {
      max-inline-size: var(--span-4);
    }
  }

  .brod {
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
    padding-inline: 0;
    padding-block-start: var(--gutter);
    padding-block-end: var(--gutter);
    max-inline-size: var(--copy-bredd);
  }

  .las-stycke {
    display: flex;
    flex-direction: column;
    gap: var(--gutter);
    padding-block-end: var(--gutter);
  }

  .las-stycke[data-justera="vanster"] {
    text-align: start;
  }

  .las-stycke[data-justera="mitten"] {
    text-align: center;
  }

  .las-stycke[data-justera="hoger"] {
    text-align: end;
  }

  .las-stycke__media {
    margin: 0;
    inline-size: 100%;
  }

  .las-stycke__media .media__bild {
    inline-size: auto;
    block-size: auto;
    max-inline-size: 100%;
    max-block-size: var(--media-max-block);
    object-fit: contain;
  }

  .las-stycke .brod {
    padding-block-start: 0;
    max-inline-size: none;
  }

  .kok > .galleri + .las-stycke .brod,
  .kok > [data-komponent="bx-gallery-full-controller"] + .las-stycke .brod {
    padding-block-start: var(--gutter);
  }

  .brod[data-insats="nasta"] {
    padding-inline-start: calc(var(--col) + var(--gutter));
    padding-inline-end: 0;
    max-inline-size: none;
  }

  .lankrad {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: var(--lank-dekor-block);
    margin-inline: 0;
    margin-block-start: var(--typ-brod-hojd);
    margin-block-end: var(--lank-rad-efter);
    font-size: var(--typ-brod);
    line-height: var(--lank-rad-hojd);
  }

  .lankrad a {
    text-decoration: underline;
    text-decoration-thickness: var(--lank-underline-tjocklek);
    text-underline-offset: var(--lank-underline-offset);
  }

  .meny-inledning {
    margin: 0;
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
    text-align: justify;
  }

  .meny-inledning p {
    margin: 0;
    text-align: justify;
  }

  .meny-inledning__slut {
    text-align-last: center;
  }

  .meny-lista {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-inline-start: 0;
    padding-block-start: 0;
    padding-block-end: 0;
    font-size: var(--typ-nav);
    line-height: var(--u);
  }

  .meny-grupp {
    margin-block-end: var(--u);
  }

  .meny-grupp:last-child {
    margin-block-end: 0;
  }

  @media not (min-width: 64rem) {
    [data-nod="menu"] > .nod__panel > .nod__inre {
      display: flex;
      flex-direction: column;
      flex: 0 0 auto;
      min-block-size: 0;
      overflow: visible;
      background: transparent;
    }

    .nod[data-nod="menu"]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre {
      flex: 0 0 auto;
      overflow: visible;
    }

    [data-nod="menu"] .meny-inledning {
      margin-block-start: var(--u);
      padding-inline: var(--program-text-insats);
    }

    [data-nod="menu"] .meny-gif[data-meny-gif="1"] {
      display: flex;
      position: relative;
      align-self: center;
      align-items: center;
      justify-content: center;
      margin-block-start: var(--u);
      margin-block-end: var(--u);
      margin-inline: auto;
      inline-size: var(--meny-gif-mobil-inline);
      block-size: var(--meny-gif-mobil-block);
      min-block-size: var(--meny-gif-mobil-block);
      overflow: hidden;
      background: transparent;
    }

    [data-nod="menu"] .meny-gif[data-meny-gif="2"] {
      display: none;
    }

    [data-nod="menu"] .meny-gif[data-meny-gif="1"] .meny-gif__bild {
      inline-size: 100%;
      max-inline-size: 100%;
      block-size: 100%;
      object-fit: cover;
      object-position: center;
    }

    [data-nod="menu"] .meny-lista {
      inline-size: 100%;
      margin-inline: 0;
      min-block-size: 0;
      overflow: visible;
    }

    [data-nod="menu"] .meny-grupp__rubrik {
      block-size: auto;
      text-align: start;
      padding-inline: var(--program-text-insats);
    }

    [data-nod="menu"] .meny-rad {
      display: flex;
      flex-direction: column;
      align-items: stretch;
      block-size: auto;
      min-block-size: var(--u);
      padding-block: var(--baseline);
      padding-inline: var(--program-text-insats);
      line-height: var(--typ-nav-hojd);
      text-align: start;
    }

    [data-nod="menu"] .meny-rad:not(.meny-grupp__rubrik) {
      border-block-end: var(--lank-underline-tjocklek) solid currentColor;
    }

    [data-nod="menu"] .meny-rad__namn,
    [data-nod="menu"] .meny-rad__pris,
    [data-nod="menu"] .meny-rad__meta {
      text-align: start;
      justify-self: stretch;
      overflow-wrap: anywhere;
    }
  }

  .meny-gif {
    display: none;
    margin: 0;
  }

  .meny-gif__bild {
    display: block;
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 1;
  }

  .meny-gif__bild[data-aktiv="nej"] {
    opacity: 0;
  }

  .meny-gif__bild[data-aktiv="ja"] {
    opacity: 1;
  }

  .meny-grupp__rubrik {
    block-size: var(--u);
    margin-block-end: 0;
    font-size: var(--typ-nav);
    line-height: var(--u);
    font-weight: var(--vikt-rubrik);
    text-align: center;
  }

  .meny-rad {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: var(--gutter);
    block-size: var(--u);
    line-height: var(--u);
    align-items: center;
    text-align: center;
  }

  .meny-rad__namn,
  .meny-rad__pris {
    text-align: center;
  }

  .meny-rad__meta {
    text-align: end;
    justify-self: end;
  }

  .meny-rad__meta:empty {
    display: none;
  }

  .cta {
    flex: 0 0 var(--cta-hojd);
    display: flex;
    align-items: center;
    inline-size: 100%;
    padding-block: 0;
    padding-inline-start: calc(var(--col) + var(--gutter));
    padding-inline-end: 0;
    font-size: var(--typ-nav);
    line-height: var(--rad-text);
    text-align: start;
    background: transparent;
    color: inherit;
    border-block-start: var(--linje-tjocklek) solid currentColor;
    border-block-end: var(--linje-tjocklek) solid currentColor;
    transition:
      background-color var(--rorelse-snabb) var(--ease),
      color var(--rorelse-snabb) var(--ease),
      border-color var(--rorelse-snabb) var(--ease);
  }

  .cta:hover,
  .cta[data-pekare="cta"] {
    background: var(--cta-fyll);
    color: var(--cta-invert);
    border-block-color: var(--cta-fyll);
  }

  .tebi {
    inset: 0;
    inline-size: 100%;
    block-size: 100dvh;
    max-inline-size: none;
    max-block-size: none;
    margin: auto;
    padding: var(--margin) var(--margin) 0;
    border: 0;
    background: var(--yta-accent);
    color: var(--text-pa-accent);
    font-family: var(--typsnitt-rubrik);
    font-weight: var(--vikt-rubrik);
    font-size: var(--typ-nav);
    line-height: var(--rad-text);
  }

  .tebi::backdrop {
    background: var(--yta-accent);
  }

  .ram[data-yta="accent"] .tebi,
  .ram[data-yta="accent"] .tebi::backdrop {
    background: var(--yta-accent);
    color: var(--text-pa-accent);
  }

  .ram[data-yta="panel"] .tebi,
  .ram[data-yta="panel"] .tebi::backdrop {
    background: var(--yta-panel);
    color: var(--text-pa-panel);
  }

  .ram[data-yta="mork"] .tebi,
  .ram[data-yta="mork"] .tebi::backdrop {
    background: var(--yta-mork);
    color: var(--text-pa-mork);
  }

  .ram[data-yta="svart"] .tebi,
  .ram[data-yta="svart"] .tebi::backdrop {
    background: var(--yta-svart);
    color: var(--text-pa-svart);
  }

  .tebi__form {
    display: flex;
    flex-direction: column;
    min-block-size: 100%;
  }

  .tebi__dag,
  .tebi__rad {
    display: flex;
    align-items: center;
    flex: 0 0 var(--rad-hojd);
    padding-inline: 0;
    font-size: var(--typ-nav);
    line-height: var(--rad-text);
    text-align: start;
    border-block-end: var(--linje-tjocklek) solid var(--linje-farg-panel);
  }

  .ram[data-yta="panel"] .tebi__dag,
  .ram[data-yta="panel"] .tebi__rad {
    border-block-end-color: var(--linje-farg);
  }

  .tebi__vy {
    display: flex;
    flex-direction: column;
  }

  .tebi__vy[hidden],
  .tebi__rad[hidden],
  .tebi__lank[hidden] {
    display: none;
  }

  .tebi__status {
    padding: var(--gutter);
    font-size: var(--typ-brod);
    line-height: var(--typ-brod-hojd);
  }

  .tebi__nav {
    margin-block-start: auto;
  }

  .tebi__lank {
    text-decoration: none;
    color: inherit;
  }

  .fot {
    display: none;
  }

  .spelare {
    position: relative;
    z-index: var(--lager-fot);
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    --spelare-rad: var(--spelare-hojd);
    --spelare-antal: 0;
    background: var(--yta-mork);
    color: var(--text-pa-mork);
    font-size: var(--typ-nav);
    line-height: var(--typ-nav-hojd);
    text-align: center;
  }

  .ram[data-yta="svart"] .spelare {
    background: var(--yta-panel);
    color: var(--yta-svart);
  }

  .spelare[hidden] {
    display: none;
  }

  .spelare__lista {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    block-size: 0;
    transition: block-size var(--rorelse-standard) var(--ease);
  }

  .spelare[data-lista="ja"] .spelare__lista {
    block-size: calc(var(--spelare-rad) * var(--spelare-antal));
  }

  .spelare__spar {
    flex: 0 0 var(--spelare-rad);
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
    padding-inline-start: var(--insats-inline-rad);
    border: 0;
    border-block-end: var(--strek) solid currentColor;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: start;
    cursor: pointer;
  }

  .spelare__spar[data-vald="ja"] {
    text-decoration: underline;
    text-underline-offset: var(--lank-underline-offset);
  }

  .spelare__rad {
    flex: 0 0 calc(var(--spelare-hojd) + max(var(--spelare-insats), env(safe-area-inset-bottom, 0px)));
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr)) var(--spelare-hojd);
    align-items: center;
    padding-inline-start: max(var(--spelare-insats), env(safe-area-inset-left, 0px));
    padding-inline-end: max(0rem, env(safe-area-inset-right, 0px));
    padding-block-end: max(var(--spelare-insats), env(safe-area-inset-bottom, 0px));
  }

  .spelare__rad button {
    cursor: pointer;
  }

  .spelare__lista-vaxla[hidden] {
    visibility: hidden;
    pointer-events: none;
  }

  .spelare__ljud {
    position: absolute;
    inline-size: var(--dold-spalt);
    block-size: var(--dold-spalt);
    overflow: hidden;
    clip-path: inset(50%);
  }

  @media not (min-width: 64rem) {
    [data-nod="program"] [data-handelse] .nod__titel {
      padding-inline: var(--program-text-insats);
      text-align: start;
      justify-content: flex-start;
    }

    [data-nod="program"] .cta {
      justify-content: center;
      text-align: center;
      padding-inline-start: 0;
      padding-inline-end: 0;
    }

    [data-nod="program"] .galleri[data-axel="y"] {
      overflow-x: auto;
      overflow-y: hidden;
      flex: 0 0 auto;
      scroll-snap-type: x mandatory;
    }

    [data-nod="program"] .galleri[data-axel="y"] .galleri__bana {
      flex-direction: row;
      transform: none;
    }

    [data-nod="program"] .galleri[data-axel="y"] .galleri__bild {
      flex: 0 0 100%;
      inline-size: 100%;
      block-size: var(--media-program-hojd);
      scroll-snap-align: start;
      scroll-snap-stop: always;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderad"] + .nod ~ .nod,
    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-tillstand="expanderar"] + .nod ~ .nod {
      display: flex;
    }

    [data-nod="program"][data-tillstand="expanderad"] > .nod__panel > .nod__inre[data-pinna="nasta"],
    [data-nod="program"][data-tillstand="expanderar"] > .nod__panel > .nod__inre[data-pinna="nasta"] {
      overflow-x: hidden;
      overflow-y: auto;
      min-block-size: 0;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) {
      flex: 0 0 auto;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel {
      flex: 0 0 auto;
      grid-template-rows: auto;
      overflow: visible;
      min-block-size: 0;
    }

    [data-nod="program"] [data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre:not([data-pinna]),
    [data-nod="program"] [data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre:not([data-pinna]):has(.cta) {
      flex: 0 0 auto;
      min-block-size: auto;
      overflow: visible;
    }

    [data-nod="program"] [data-handelse] .nod__flode {
      flex: 0 0 auto;
      overflow: visible;
    }

    [data-nod="program"] [data-handelse] .cta {
      flex: 0 0 var(--cta-hojd);
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse] > :is(h2, h3) .nod__reglage {
      box-sizing: border-box;
      flex: 0 0 var(--mobil-handelse-rad);
      min-block-size: var(--mobil-handelse-rad);
    }

    [data-nod="program"] [data-handelse] .nod__titel {
      display: flex;
      align-items: center;
      flex: 1 1 auto;
      min-block-size: var(--mobil-handelse-titel);
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse]:not(
      [data-tillstand="expanderad"]
    ):not([data-tillstand="expanderar"]) {
      flex: 0 0 var(--mobil-handelse-rad);
      min-block-size: var(--mobil-handelse-rad);
    }
  }

  @media not (min-width: 40rem) {
    [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"]:is([data-tillstand="expanderad"], [data-tillstand="expanderar"]) {
      flex: 0 0 calc(var(--program-halv) - var(--trad-start) - (var(--u) * 2));
      max-block-size: calc(var(--program-halv) - var(--trad-start) - (var(--u) * 2));
      min-block-size: 0;
      overflow: hidden;
    }

    [data-nod="program"] [data-nod="idag"]:is([data-tillstand="expanderad"], [data-tillstand="expanderar"]) > .nod__panel {
      flex: 1 1 auto;
      min-block-size: 0;
      overflow: hidden;
    }

    [data-nod="program"] [data-nod="idag"]:is([data-tillstand="expanderad"], [data-tillstand="expanderar"]) > .nod__panel > .nod__inre:not([data-pinna]) {
      display: flex;
      flex-direction: column;
      block-size: var(--idag-kropp);
      max-block-size: var(--idag-kropp);
      overflow: hidden;
    }

    [data-nod="program"] [data-nod="idag"] .galleri[data-axel="y"] {
      flex: none;
      overflow: hidden;
      aspect-ratio: 4 / 5;
      inline-size: var(--idag-media-bredd);
      max-inline-size: 100%;
      block-size: auto;
      max-block-size: var(--idag-media-hojd);
      margin-block: var(--u);
      margin-inline: auto;
    }

    [data-nod="program"] [data-nod="idag"] .galleri[data-axel="y"] .galleri__bild {
      flex: 0 0 100%;
      inline-size: 100%;
      block-size: 100%;
      aspect-ratio: 4 / 5;
    }

    [data-nod="program"] [data-nod="idag"] .galleri[data-axel="y"] .media__bild {
      inline-size: 100%;
      block-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      object-fit: cover;
      object-position: center;
      opacity: var(--media-tathet-program);
    }

    [data-nod="program"] [data-nod="idag"] .nod__flode {
      flex: 1 1 auto;
      min-block-size: calc(var(--u) * 2);
      padding-block-end: var(--u);
      overflow-x: hidden;
      overflow-y: auto;
    }

    [data-nod="program"] [data-nod="idag"] .nod__flode .brod {
      padding-block: 0;
    }

    [data-nod="program"] [data-nod="idag"] .cta {
      flex: 0 0 var(--cta-hojd);
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"] + .nod {
      flex: 0 0 var(--mobil-handelse-rad);
      min-block-size: var(--mobil-handelse-rad);
      margin-block-end: 0;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse]:last-child:not(
      [data-tillstand="expanderad"]
    ):not([data-tillstand="expanderar"]) {
      flex: 0 0 var(--mobil-handelse-rad);
      min-block-size: var(--mobil-handelse-rad);
      margin-block-end: 0;
    }

    [data-nod="program"] .cta {
      background: var(--cta-fyll);
      color: var(--cta-invert);
      border-block-color: var(--cta-fyll);
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"] + .nod > :is(h2, h3) .nod__reglage {
      border-block-start: var(--linje-tjocklek) solid var(--linje-farg);
      box-sizing: border-box;
      flex-basis: var(--mobil-handelse-rad);
    }

    .ram[data-yta="svart"] [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"] + .nod > :is(h2, h3) .nod__reglage,
    .ram[data-yta="mork"] [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"] + .nod > :is(h2, h3) .nod__reglage {
      border-block-start-color: var(--linje-farg-mork);
    }
  }

  @media not (min-width: 64rem) {
    .spelare,
    .spelare:not([hidden]) {
      display: none;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] {
      overflow-x: hidden;
      overflow-y: auto;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > .nod[data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) {
      flex: 0 0 auto;
      max-block-size: none;
      overflow: visible;
    }

    [data-nod="program"] [data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel {
      flex: 0 0 auto;
      grid-template-rows: auto;
      overflow: visible;
      min-block-size: 0;
    }

    [data-nod="program"] [data-handelse]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre:not([data-pinna]) {
      display: flex;
      flex-direction: column;
      flex: 0 0 auto;
      min-block-size: auto;
      overflow: visible;
      padding-block-start: 0;
      padding-block-end: var(--mobil-handelse-luft);
      gap: 0;
    }

    [data-nod="program"] [data-handelse] .galleri[data-axel="y"] {
      flex: 0 0 auto;
      inline-size: 100%;
      max-inline-size: 100%;
      aspect-ratio: 4 / 5;
      min-block-size: var(--mobil-handelse-media-min);
      block-size: auto;
      margin-block: 0;
      margin-inline: 0;
      overflow: hidden;
    }

    [data-nod="program"] [data-handelse] .galleri[data-axel="y"] .galleri__bild {
      flex: 0 0 100%;
      inline-size: 100%;
      block-size: 100%;
      aspect-ratio: 4 / 5;
    }

    [data-nod="program"] [data-handelse] .galleri[data-axel="y"] .media__bild {
      inline-size: 100%;
      block-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      object-fit: cover;
      object-position: center;
      opacity: var(--media-tathet-program);
    }

    [data-nod="program"] [data-handelse] .nod__flode {
      flex: 0 0 auto;
      min-block-size: 0;
      padding-block-start: var(--mobil-handelse-luft);
      padding-block-end: var(--mobil-handelse-luft);
      overflow: visible;
    }

    [data-nod="program"] [data-handelse] .cta {
      flex: 0 0 var(--cta-hojd);
      padding-inline-start: 0;
      padding-inline-end: 0;
    }

    [data-nod="program"] .nod__inre[data-pinna="nasta"] > [data-nod="idag"]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) {
      flex: 0 0 auto;
      max-block-size: none;
      overflow: visible;
    }

    [data-nod="program"] [data-nod="idag"]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel {
      flex: 0 0 auto;
      min-block-size: 0;
      overflow: visible;
    }

    [data-nod="program"] [data-nod="idag"]:is(
      [data-tillstand="expanderad"],
      [data-tillstand="expanderar"]
    ) > .nod__panel > .nod__inre:not([data-pinna]) {
      block-size: auto;
      max-block-size: none;
    }

    [data-nod="program"] [data-nod="idag"] .galleri[data-axel="y"] {
      flex: 0 0 auto;
      align-self: stretch;
      inline-size: 100%;
      max-inline-size: 100%;
      aspect-ratio: 4 / 5;
      min-block-size: var(--mobil-handelse-media-min);
      block-size: auto;
      max-block-size: none;
      margin-block: 0;
      margin-inline: 0;
      overflow: hidden;
    }

    [data-nod="program"] [data-nod="idag"] .galleri[data-axel="y"] .media__bild {
      object-fit: cover;
    }

    [data-nod="program"] [data-nod="idag"] .nod__flode {
      flex: 0 0 auto;
    }

    [data-nod="restaurant"] .kok {
      flex: 0 0 auto;
      min-block-size: auto;
      overflow-x: hidden;
      overflow-y: visible;
    }

    [data-nod="restaurant"] .kok__falt[data-falt="vy"] {
      min-block-size: auto;
      block-size: auto;
      align-content: start;
    }

    [data-nod="restaurant"] .kok__falt[data-falt="rutnat"],
    [data-nod="restaurant"] .kok__falt[data-falt="text"] {
      min-block-size: auto;
    }

    [data-komponent="bx-gallery-rutnat"] {
      grid-column: 1 / -1;
      --bx-rutnat-kol: 1;
    }

    [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner-mobil="1"] { --bx-rutnat-kol: 1; }
    [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner-mobil="2"] { --bx-rutnat-kol: 2; }
    [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner-mobil="3"] { --bx-rutnat-kol: 3; }
    [data-komponent="bx-gallery-rutnat"][data-bredd-kolonner-mobil="4"] { --bx-rutnat-kol: 4; }

    .galleri[data-layout="rutnat"] .media__bild {
      aspect-ratio: var(--media-restaurant-ratio-mobil);
    }

    [data-komponent="bx-gallery-full-controller"] {
      grid-column: 1 / -1;
      inline-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      margin-block-start: 0;
    }

    [data-komponent="bx-gallery-full-controller"] > .galleri {
      display: grid;
      grid-template-rows: auto auto;
      grid-column: 1 / -1;
      inline-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      overflow: visible;
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] .galleri__bana {
      grid-row: 1;
      block-size: auto;
      max-block-size: none;
      min-block-size: var(--mobil-handelse-media-min);
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] .galleri__bild {
      aspect-ratio: var(--media-restaurant-ratio-mobil);
      block-size: auto;
      min-block-size: var(--mobil-handelse-media-min);
      inline-size: 100%;
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] .media__bild {
      inline-size: 100%;
      block-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      object-fit: contain;
      object-position: center;
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet,
    [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet {
      position: static;
      grid-row: 2;
      display: grid;
      grid-template-columns: minmax(calc(var(--u) * 2), auto) minmax(0, 1fr) minmax(calc(var(--u) * 2), auto);
      inline-size: 100%;
      block-size: auto;
      min-block-size: var(--styrenhet-band);
      max-block-size: none;
      padding-block-start: var(--u);
      padding-block-end: 0;
      overflow: visible;
    }

    [data-komponent="bx-gallery-full-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__bildtext,
    [data-komponent="bx-gallery-column-controller"] .galleri[data-format="restaurant"] > .styrenhet .styrenhet__bildtext {
      overflow-wrap: anywhere;
    }

    [data-komponent="bx-gallery-column-controller"] {
      grid-column: 1 / -1;
      --bx-gallery-kolonn-synliga: 1;
      --bx-gallery-kolonn-celle-block: auto;
    }

    [data-komponent="bx-gallery-column-controller"] > .galleri[data-layout="kolonn"] {
      display: grid;
      grid-template-rows: auto auto;
      max-block-size: none;
      overflow: visible;
    }

    .galleri[data-layout="kolonn"][data-axel="x"] .galleri__bild {
      flex: 0 0 100%;
      inline-size: 100%;
      max-inline-size: none;
      block-size: auto;
      min-block-size: var(--mobil-handelse-media-min);
      aspect-ratio: var(--media-restaurant-ratio-mobil);
    }

    .galleri[data-layout="kolonn"] .media__bild {
      object-fit: contain;
    }

    .kok__falt[data-falt="marginalia"] {
      min-block-size: 0;
      padding-block: var(--u);
      row-gap: var(--u);
    }

    [data-komponent="bx-gallery-marginalia"] {
      grid-column: 1 / -1;
    }

    [data-komponent="bx-gallery-marginalia"] > .galleri[data-layout="marginalia"] {
      grid-template-columns: minmax(0, 1fr);
      row-gap: var(--u);
    }

    .galleri[data-layout="marginalia"] .galleri__bild,
    .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(odd),
    .galleri[data-layout="marginalia"] .galleri__bild:nth-of-type(even) {
      grid-column: 1 / -1;
      justify-self: stretch;
      inline-size: 100%;
      max-inline-size: none;
      max-block-size: none;
      min-block-size: var(--mobil-handelse-media-min);
    }

    .galleri[data-layout="marginalia"] .galleri__bild + .galleri__bild {
      margin-block-start: 0;
    }

    .galleri[data-layout="marginalia"] .marginalia__spalt {
      display: block;
      grid-column: 1 / -1;
    }

    .galleri[data-layout="marginalia"] .media__bild {
      object-fit: contain;
    }

    [data-nod="about"] .om-falt,
    [data-nod="booking"] > .nod__panel > .nod__inre {
      display: flex;
      flex-direction: column;
      gap: var(--u);
      overflow-x: hidden;
      overflow-y: auto;
    }

    [data-nod="about"] [data-komponent="textblock"],
    [data-nod="booking"] [data-komponent="textblock"],
    [data-nod="about"] .galleri,
    [data-nod="booking"] .nod[data-niva="1"] {
      grid-column: 1 / -1;
      inline-size: 100%;
      max-inline-size: none;
    }

    [data-nod="about"] .galleri[data-axel="x"] {
      display: grid;
      grid-template-rows: auto auto;
      flex: 0 0 auto;
      max-inline-size: none;
      min-block-size: auto;
      overflow: visible;
    }

    [data-nod="about"] .galleri[data-axel="x"] .galleri__bana {
      grid-row: 1;
    }

    [data-nod="about"] .galleri[data-axel="x"] .galleri__bild {
      aspect-ratio: var(--media-restaurant-ratio-mobil);
      min-block-size: var(--mobil-handelse-media-min);
      block-size: auto;
      inline-size: 100%;
    }

    [data-nod="about"] .galleri[data-axel="x"] > .styrenhet {
      grid-row: 2;
      display: grid;
      grid-template-columns: minmax(calc(var(--u) * 2), auto) minmax(0, 1fr) minmax(calc(var(--u) * 2), auto);
      align-items: center;
      justify-items: center;
      position: static;
      inline-size: 100%;
      block-size: auto;
      min-block-size: var(--styrenhet-band);
      margin: 0;
      padding-block-start: var(--u);
      padding-block-end: 0;
    }

    [data-nod="about"] .galleri[data-snapp="om"] .media__bild {
      inline-size: 100%;
      block-size: 100%;
      max-block-size: none;
      object-fit: contain;
    }

    [data-nod="booking"] .nod[data-niva="1"] .nod__titel {
      padding-inline-start: 0;
    }
  }
}


.brod p + p,
.brod p + ul,
.brod p + ol,
.brod ul + p,
.brod ol + p,
.brod ul + ul,
.brod ol + ol,
.contra-form__text + .contra-form__text {
  margin-block-start: var(--typ-brod-hojd);
}

.brod ul,
.brod ol {
  padding-inline-start: var(--u);
}

.brod ul {
  list-style: disc;
}

.brod ol {
  list-style: decimal;
}

.brod li + li {
  margin-block-start: calc(var(--typ-brod-hojd) / 2);
}

.spelare__titel {
  display: flex;
  align-items: center;
  justify-content: center;
  min-inline-size: 0;
  overflow: hidden;
  white-space: nowrap;
}

.spelare__titel-text {
  display: inline-block;
  flex: 0 0 auto;
  max-inline-size: none;
  white-space: nowrap;
  will-change: transform;
}

.spelare__titel[data-rull="ja"] {
  justify-content: flex-start;
}

.spelare__titel[data-rull="ja"] > .spelare__titel-text {
  animation: spelare-rull var(--rull-tid, 8s) var(--ease-standard) infinite alternate;
  animation-delay: 1.2s;
}

@keyframes spelare-rull {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-1 * var(--rull-avstand, 0px)));
  }
}

@media (prefers-reduced-motion: reduce) {
  .spelare__titel[data-rull="ja"] > .spelare__titel-text {
    animation: none;
  }

  .spelare__titel[data-rull="ja"] {
    mask-image: linear-gradient(to right, #000 80%, transparent 100%);
  }
}

em,
i,
.handelsvitrin__stycke em,
.handelsvitrin__etikett em,
.brod em,
.meny-inledning em {
  font-family: var(--typsnitt-betoning);
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.01em;
}



[data-nod="restaurant"][data-horn="rund"] .galleri[data-format="restaurant"] .galleri__bild,
[data-nod="restaurant"][data-horn="rund"] .galleri[data-format="restaurant"] .galleri__bild img,
[data-nod="restaurant"][data-horn="rund"] .galleri[data-format="restaurant"] .galleri__bana {
  border-radius: calc(var(--u) / 3);
  overflow: hidden;
}

.contra-form-block {
  padding-block-start: var(--u);
}

.contra-form__rubrik,
.contra-form__kvitto,
.contra-form__fel,
.contra-form__varning {
  margin: 0 0 calc(var(--u) / 2);
  font-size: var(--typ-brod);
  line-height: var(--typ-brod-hojd);
}

.contra-form__fel,
.contra-form__varning {
  color: var(--kalla-tredje);
}

.contra-form__fallucka {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.contra-form__steg {
  margin: 0;
  padding: 0;
  border: 0;
  min-inline-size: 0;
}

.contra-form__rad {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  gap: 0;
  padding-block: var(--baseline);
  border-block-start: var(--linje-tjocklek) solid currentColor;
  border-block-end: var(--linje-tjocklek) solid currentColor;
  font-size: var(--typ-nav);
  line-height: var(--u);
}

.contra-form__namn {
  display: block;
  font-size: var(--typ-brod);
  line-height: var(--typ-brod-hojd);
  opacity: 0.6;
}

.contra-form__varde {
  box-sizing: border-box;
  inline-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: var(--typ-nav);
  line-height: var(--u);
}

textarea.contra-form__varde {
  resize: vertical;
  min-block-size: calc(var(--u) * 2);
  line-height: var(--typ-nav-hojd);
}

.contra-form__varde:focus {
  outline: none;
}

.contra-form__rad:focus-within {
  border-block-end-width: calc(var(--linje-tjocklek) * 1.5);
}

.contra-form__varde::placeholder {
  color: currentColor;
  opacity: 0.35;
}

.contra-form__varde:user-invalid {
  color: var(--kalla-tredje);
}

.contra-form__rad:has(.contra-form__varde:user-invalid) {
  border-block-end-color: var(--kalla-tredje);
}

.contra-form__styr {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gutter);
  margin-block-start: var(--u);
}

.contra-form__knapp {
  padding: 0;
  border: 0;
  border-block-end: var(--lank-underline-tjocklek) solid currentColor;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: var(--typ-nav);
  line-height: var(--u);
  cursor: pointer;
  transition: opacity var(--tau) var(--ease);
}

.contra-form__knapp--tyst {
  opacity: 0.6;
}

.contra-form__knapp:hover,
.contra-form__knapp:focus-visible {
  opacity: 1;
  border-block-end-width: calc(var(--lank-underline-tjocklek) * 1.5);
}

.contra-form__knapp:focus-visible {
  outline: var(--fokus-linje) solid var(--fokus-farg);
  outline-offset: var(--fokus-linje);
}

.contra-form__knapp[data-synlig="nej"] {
  display: none;
}

@media (min-width: 64rem) {
  html[data-huvud="skrivbord"] .ram [data-komponent="textblock"][data-kolumn="ab"].contra-form-block {
    grid-column: 1 / -1;
    max-inline-size: none;
    inline-size: 100%;
    justify-self: stretch;
  }

  html[data-huvud="skrivbord"] .ram .contra-form-block .contra-form {
    max-inline-size: none;
  }

  html[data-huvud="skrivbord"] .ram .contra-form__namn,
  html[data-huvud="skrivbord"] .ram .contra-form__varde,
  html[data-huvud="skrivbord"] .ram .contra-form__styr,
  html[data-huvud="skrivbord"] .ram .contra-form__rubrik,
  html[data-huvud="skrivbord"] .ram .contra-form__varning,
  html[data-huvud="skrivbord"] .ram .contra-form__kvitto,
  html[data-huvud="skrivbord"] .ram .contra-form__fel {
    margin-inline: auto;
    inline-size: calc(2 * var(--col) + var(--gutter));
    max-inline-size: 100%;
    text-align: center;
  }

  html[data-huvud="skrivbord"] .ram .contra-form__styr {
    justify-content: center;
  }

  html[data-huvud="skrivbord"] .ram textarea.contra-form__varde {
    text-align: start;
  }
}

@media (min-width: 64rem) {
  html[data-huvud="skrivbord"]
    .ram
    [data-nod="booking"]
    [data-komponent="textblock"][data-kolumn="ab"].contra-bok-text {
    inline-size: calc(2 * var(--col) + var(--gutter));
    max-inline-size: 100%;
    margin-inline: auto;
    align-self: center;
    justify-self: center;
  }

  html[data-huvud="skrivbord"] .ram .contra-bok-text > .brod {
    padding-inline: 0;
    text-align: justify;
  }

  html[data-huvud="skrivbord"] .ram .contra-bok-text > .brod p:last-child {
    text-align-last: center;
  }
}

.cta[href="#tebi-reservations"] {
  cursor: pointer;
}
