/* ==========================================================================
   SELVHOSTEDE FONTER (Oppdrag 5 DEL A) — Google Fonts css2 (Chrome-UA, woff2).
   Samme familienavn/vekter/unicode-range som før; font-display: swap.
   Filer: assets/fonts/<kode><nn>.woff2 (fra=Fraunces, wsa=Work Sans,
   ipm=IBM Plex Mono, bco=Barlow Condensed, psa=Public Sans).
   ========================================================================== */
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/fra00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/fra01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/fra02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/fra00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/fra01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/fra02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/fra00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/fra01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/fra02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/ipm00.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/ipm01.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/ipm02.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/ipm03.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/ipm04.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/ipm05.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/ipm06.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/ipm07.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/ipm08.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/ipm09.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/wsa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/wsa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/wsa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/wsa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/wsa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/wsa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/wsa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/wsa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/wsa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/wsa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/wsa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Work Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/wsa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/bco00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/bco01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/bco02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/bco03.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/bco04.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/bco05.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/bco06.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/bco07.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/bco08.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/psa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/psa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/psa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/psa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/psa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/psa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/psa00.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/psa01.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Public Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/psa02.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ==========================================================================
   CASA LOFOTEN — DESIGNSYSTEM
   Palett: Polarnatt. Signatur: horisontstripene fra logoen, brukt i tre
   skalaer — i merket, som seksjonsskille, og som understreking i faktabokser.
   Sesong: [data-season="summer"|"winter"] på <html>. Endrer bakgrunnstemperatur
   og sekundærfarge. Grunnidentiteten står stille.
   ========================================================================== */

:root {
  --bg:#0E141C; --surface:#182230; --raised:#202C3D;
  --ink:#F3EFE6; --muted:#A8B3C4; --line:rgba(243,239,230,.14);
  --accent:#CC7A45; --accent2:#E3A57A; --on-accent:#12161C;
  --logo-a:#00C7C0; --logo-b:#073A3E;

  --display:"Fraunces","Iowan Old Style",Georgia,serif;
  --body:"Work Sans",system-ui,-apple-system,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;

  --maxw:1140px;
  --gut:clamp(20px,5vw,56px);
  --nav-h:66px;
}
[data-season="winter"] {
  --bg:#070C12; --surface:#111A24; --raised:#18242F;
  --muted:#9AA9BC; --accent2:#5FA79C;
}

*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *{transition:none!important;animation:none!important} }

body {
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--body); font-weight:300; font-size:17px; line-height:1.64;
  -webkit-font-smoothing:antialiased; -webkit-text-size-adjust:100%;
  transition:background-color .3s;
}
img { display:block; max-width:100%; }
a { color:inherit; }
:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }

.wrap { width:min(var(--maxw),100% - 2*var(--gut)); margin-inline:auto; }
.narrow { max-width:68ch; }

/* ---------- typografi ---------- */
h1,h2,h3,h4 { font-family:var(--display); font-weight:500; line-height:1.06; letter-spacing:-.012em; margin:0; }
h1 { font-size:clamp(2.3rem,5.6vw,4.1rem); }
h2 { font-size:clamp(1.65rem,3.4vw,2.5rem); }
h3 { font-size:1.22rem; }
h4 { font-size:1.05rem; }
p { margin:0 0 1.05em; }
p:last-child { margin-bottom:0; }
.lede { font-size:1.13rem; color:var(--muted); max-width:52ch; }
.mono,.eyebrow,.chip,.meta,.marker,.crumb,.tag { font-family:var(--mono); text-transform:uppercase; letter-spacing:.14em; font-size:.68rem; font-weight:500; }
.eyebrow { color:var(--accent); display:block; margin-bottom:.85rem; }
strong,b { font-weight:600; }

/* ---------- horisont: signaturelementet ---------- */
.horizon { display:flex; flex-direction:column; gap:3px; margin:0 0 2.4rem; }
.horizon i { display:block; height:2px; background:var(--accent); }
.horizon i:nth-child(1){width:100%;opacity:.85}
.horizon i:nth-child(2){width:80%;opacity:.65}
.horizon i:nth-child(3){width:60%;opacity:.45}
.horizon i:nth-child(4){width:40%;opacity:.3}
.horizon i:nth-child(5){width:22%;opacity:.18}

/* ---------- navigasjon ---------- */
.nav {
  position:sticky; top:0; z-index:60; min-height:var(--nav-h); height:auto;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:blur(12px); border-bottom:0;
}
.nav-in { min-height:var(--nav-h); display:flex; align-items:center; gap:1.4rem; }
.brand { display:flex; align-items:center; gap:.65rem; text-decoration:none; margin-right:auto; }
.brand svg { width:36px; height:36px; flex:0 0 36px; }
.brand span { font-family:var(--mono); font-size:.7rem; font-weight:500; letter-spacing:.26em; text-transform:uppercase; white-space:nowrap; }
.menu { display:none; gap:1.5rem; align-items:center; }
.menu a { white-space:nowrap; text-decoration:none; font-family:var(--mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.13em; color:var(--muted); padding:.4rem 0; border-bottom:1px solid transparent; }
.menu a:hover,.menu a[aria-current="page"] { color:var(--ink); border-bottom-color:var(--accent); }
.has-sub { position:relative; }
.has-sub > .subtrig {
  white-space:nowrap;
  font:inherit; font-family:var(--mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.13em;
  background:none; border:0; color:var(--muted); cursor:pointer; padding:.4rem 0;
  display:flex; align-items:center; gap:.35rem; text-decoration:none;
}
.has-sub > .subtrig:hover,.has-sub[data-open="true"] > .subtrig { color:var(--ink); }
.sub {
  position:absolute; top:100%; left:-1rem; min-width:210px; margin-top:.55rem;
  background:var(--surface); border:1px solid var(--line); padding:.5rem;
  display:none; flex-direction:column; gap:.15rem;
}
/* usynlig bro over lufta mellom trigger og meny — pekeren forlater aldri .has-sub */
.sub::before { content:""; position:absolute; left:0; right:0; top:-.7rem; height:.7rem; }
.has-sub[data-open="true"] .sub { display:flex; }
.has-sub:focus-within .sub { display:flex; }
.sub a { padding:.6rem .8rem; border:0; }
.sub a:hover { background:var(--raised); color:var(--ink); }
.nav-cta {
  font-family:var(--mono); font-size:.67rem; text-transform:uppercase; letter-spacing:.13em;
  text-decoration:none; padding:.7rem 1.1rem; background:var(--accent); color:var(--on-accent);
  white-space:nowrap;
}
.season-btn {
  font-family:var(--mono); font-size:.6rem; text-transform:uppercase; letter-spacing:.11em;
  background:transparent; color:var(--muted); border:1px solid var(--line);
  padding:.55rem .7rem; cursor:pointer; white-space:nowrap;
}
.season-btn:hover { color:var(--ink); }
.burger { display:flex; flex-direction:column; gap:4px; background:none; border:0; padding:.5rem; cursor:pointer; }
.burger i { display:block; width:22px; height:2px; background:var(--ink); }
.drawer { display:none; }
.drawer[data-open="true"] { display:block; position:fixed; inset:var(--nav-real, var(--nav-h)) 0 0; z-index:55; background:var(--bg); overflow-y:auto; padding:1.6rem var(--gut) 3rem; }
.drawer nav { display:flex; flex-direction:column; }
.drawer a { text-decoration:none; padding:1rem 0; border-bottom:1px solid var(--line); font-family:var(--display); font-size:1.35rem; }
.drawer .sub-label { font-family:var(--mono); font-size:.62rem; text-transform:uppercase; letter-spacing:.16em; color:var(--accent); padding-top:1.6rem; }
.drawer .nav-cta { display:inline-block; margin-top:1.8rem; padding:1rem 1.6rem; }

/* v16: midtlogo-menyen trenger mer bredde — ett felles brytepunkt (1200px),
   ellers vises venstregruppen uten høyregruppe/burger i spennet 1120–1199. */
@media (min-width:1200px) {
  .menu { display:flex; gap:1.15rem; }
  .burger { display:none; }
}

/* ---------- hero ---------- */
.hero { position:relative; min-height:min(92svh,860px); display:flex; flex-direction:column; }
.hero-media { position:absolute; inset:0; overflow:hidden; }
.hero-media img { width:100%; height:100%; object-fit:cover; }
.hero-media::after { content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(14,20,28,.20) 0%,rgba(14,20,28,.48) 52%,rgba(14,20,28,.90) 100%); }
.hero-body { position:relative; z-index:5; margin-top:auto; padding:3rem 0 3.4rem; }
.hero-body h1 { max-width:20ch; margin-bottom:1rem; }
.hero-body .lede { color:rgba(243,239,230,.9); }
.hero-sm { min-height:auto; }
.hero-sm .hero-body { padding:5.5rem 0 3rem; }

.cta-row { display:flex; flex-wrap:wrap; gap:.7rem; margin-top:1.9rem; }
.btn {
  font-family:var(--mono); font-size:.71rem; text-transform:uppercase; letter-spacing:.14em;
  text-decoration:none; padding:1rem 1.6rem; display:inline-block;
  background:var(--accent); color:var(--on-accent); border:1px solid var(--accent);
}
.btn:hover { background:var(--accent2); border-color:var(--accent2); }
.btn-ghost { background:transparent; color:var(--ink); border-color:var(--line); }
.btn-ghost:hover { background:var(--surface); border-color:var(--ink); }

/* ---------- faktabånd ---------- */
.facts { background:var(--surface); border-block:1px solid var(--line); }
.facts ul { list-style:none; margin:0; padding:1.1rem 0; display:flex; flex-wrap:wrap; gap:.55rem 1.6rem; }
.chip { color:var(--muted); display:flex; align-items:center; gap:.5rem; }
.chip::before { content:""; width:4px; height:4px; background:var(--accent); flex:0 0 4px; }

/* ---------- bånd ---------- */
.band { padding:clamp(3.4rem,7vw,5.6rem) 0; }
.band-alt { background:var(--surface); border-block:1px solid var(--line); }
.head { max-width:60ch; margin-bottom:2.6rem; }
.head h2 { margin-bottom:1rem; }

/* ---------- kortgrid ---------- */
.grid { display:grid; gap:1.4rem; grid-template-columns:1fr; }
.g2 { grid-template-columns:1fr; }
.card { text-decoration:none; display:flex; flex-direction:column; }
.frame { position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--raised); border:1px solid var(--line); }
.frame img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.card:hover .frame img { transform:scale(1.03); }
.frame-wide { aspect-ratio:3/2; }
.frame-tall { aspect-ratio:3/4; }
.marker { position:absolute; top:0; left:0; z-index:3; padding:.35rem .6rem; background:var(--accent); color:var(--on-accent); }
.card-body { padding-top:.9rem; }
.card-body h3 { margin-bottom:.25rem; }
.meta { color:var(--muted); }
.card p { color:var(--muted); font-size:.95rem; margin:.5rem 0 0; }

.ph { display:grid; place-items:center; padding:1.3rem; text-align:center;
  background-image:repeating-linear-gradient(45deg,var(--raised) 0 12px,var(--surface) 12px 24px); }
.ph p { margin:0; max-width:24ch; padding:.6rem .75rem; background:var(--ink); color:var(--bg);
  font-family:var(--mono); font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; }

/* ---------- delt bånd ---------- */
.split { display:grid; gap:2.4rem; align-items:center; }
.split .body p { color:var(--muted); }
.split .body h2 { margin-bottom:1rem; }

/* ---------- faktaboks ---------- */
.box { background:var(--surface); border:1px solid var(--line); padding:1.6rem 1.8rem; }
.box.on-alt { background:var(--raised); }
.box h4 { margin-bottom:.9rem; font-family:var(--mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.14em; color:var(--accent); }
.box dl { margin:0; display:grid; grid-template-columns:auto 1fr; gap:.55rem 1.4rem; font-size:.95rem; }
.box dt { color:var(--muted); font-family:var(--mono); font-size:.64rem; text-transform:uppercase; letter-spacing:.12em; align-self:center; }
.box dd { margin:0; }
.box ul { margin:0; padding-left:1.15rem; color:var(--muted); font-size:.95rem; }
.box li { margin-bottom:.4rem; }

/* ---------- romlisting ---------- */
.rooms { display:grid; gap:1.4rem; grid-template-columns:1fr; }

/* ---------- tabell ---------- */
.table { width:100%; border-collapse:collapse; font-size:.95rem; }
.table th,.table td { text-align:left; padding:.85rem .6rem; border-bottom:1px solid var(--line); }
.table th { font-family:var(--mono); font-size:.63rem; text-transform:uppercase; letter-spacing:.12em; color:var(--accent); font-weight:500; }
.table td.num { font-family:var(--mono); font-size:.85rem; color:var(--muted); white-space:nowrap; }
.scroll-x { overflow-x:auto; }

/* ---------- tillit / anmeldelser ---------- */
.trust { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:1.1rem 2.4rem; }
.trust li { display:flex; align-items:baseline; gap:.55rem; }
.trust .n { font-family:var(--display); font-size:1.6rem; font-weight:500; color:var(--accent); }
.trust .l { font-family:var(--mono); font-size:.63rem; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }
.quote { border-left:2px solid var(--accent); padding-left:1.2rem; margin:0; }
.quote p { font-family:var(--display); font-size:1.15rem; font-style:italic; }
.quote footer { font-family:var(--mono); font-size:.63rem; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }

/* ---------- FAQ ---------- */
.faq { border-top:1px solid var(--line); }
.faq details { border-bottom:1px solid var(--line); }
.faq summary { cursor:pointer; padding:1.15rem 0; font-family:var(--display); font-size:1.1rem; list-style:none; display:flex; justify-content:space-between; gap:1rem; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:"+"; color:var(--accent); font-family:var(--mono); }
.faq details[open] summary::after { content:"–"; }
.faq .a { padding:0 0 1.3rem; color:var(--muted); max-width:70ch; }

/* ---------- brødsmuler ---------- */
.crumb { color:var(--muted); padding:1.2rem 0 0; }
.crumb a { text-decoration:none; }
.crumb a:hover { color:var(--ink); }
.crumb span { opacity:.5; margin:0 .5rem; }

/* ---------- tag / filter ---------- */
.tags { display:flex; flex-wrap:wrap; gap:.45rem; margin-bottom:2.2rem; }
.tag { padding:.5rem .85rem; border:1px solid var(--line); color:var(--muted); background:none; cursor:pointer; font:inherit; font-family:var(--mono); font-size:.65rem; text-transform:uppercase; letter-spacing:.12em; }
.tag[aria-pressed="true"] { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }

/* ---------- booking ---------- */
.booking-embed { background:var(--surface); border:1px solid var(--line); padding:2rem; min-height:280px; display:grid; place-items:center; text-align:center; }
.booking-embed .mono { color:var(--muted); }
.sticky-book { position:fixed; left:0; right:0; bottom:0; z-index:50; padding:.7rem var(--gut); background:var(--surface); border-top:1px solid var(--line); display:flex; gap:.8rem; align-items:center; justify-content:space-between; }
.sticky-book .p { font-family:var(--mono); font-size:.63rem; text-transform:uppercase; letter-spacing:.11em; color:var(--muted); }
@media (min-width:1000px) { .sticky-book { display:none; } }
body.has-sticky { padding-bottom:4.6rem; }


/* ---------- galleri per rom ---------- */
.gallery { position:relative; }
.gallery .strip { display:flex; height:100%; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.gallery .strip::-webkit-scrollbar { display:none; }
.gallery .strip img { flex:0 0 100%; width:100%; height:100%; object-fit:cover; scroll-snap-align:start; }
.gnav { position:absolute; top:50%; transform:translateY(-50%); z-index:4;
  width:38px; height:38px; display:grid; place-items:center; cursor:pointer;
  background:rgba(14,20,28,.62); color:#F3EFE6; border:1px solid rgba(243,239,230,.25);
  font-size:1.15rem; line-height:1; }
.gnav:hover { background:var(--accent); color:var(--on-accent); border-color:var(--accent); }
.gprev { left:.5rem; } .gnext { right:.5rem; }
.gcount { position:absolute; right:.55rem; bottom:.55rem; z-index:4;
  padding:.28rem .55rem; background:rgba(14,20,28,.62); color:#F3EFE6;
  font-family:var(--mono); font-size:.62rem; letter-spacing:.1em; }

/* ---------- anmeldelser ---------- */
.reviews { display:grid; gap:1.4rem; grid-template-columns:1fr; }
.review { background:var(--surface); border:1px solid var(--line); border-top:2px solid var(--accent); padding:1.7rem 1.8rem; display:flex; flex-direction:column; }
.band-alt .review { background:var(--raised); }
.review .stars { color:var(--accent); letter-spacing:.18em; font-size:.8rem; margin-bottom:.9rem; }
.review p { font-size:1.02rem; }
.review footer { margin-top:auto; padding-top:1rem; font-family:var(--mono); font-size:.62rem; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }
@media (min-width:900px) { .reviews { grid-template-columns:1fr 1fr; } }

/* ---------- Lodgify booking box — grafisk plassholder ---------- */
.bookbox { display:grid; gap:1.4rem; }
.bookbox .panel { background:var(--surface); border:1px solid var(--line); padding:1.6rem; }
.cal-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:1rem; font-family:var(--mono); font-size:.7rem; text-transform:uppercase; letter-spacing:.13em; }
.cal-head button { background:none; border:1px solid var(--line); color:var(--muted); width:30px; height:30px; cursor:default; }
.cal { width:100%; border-collapse:collapse; table-layout:fixed; text-align:center; font-family:var(--mono); font-size:.78rem; }
.cal th { padding:.45rem 0; color:var(--muted); font-weight:500; font-size:.6rem; text-transform:uppercase; letter-spacing:.08em; }
.cal td { padding:.55rem 0; border:1px solid var(--line); color:var(--ink); }
.cal td.off { color:var(--muted); opacity:.35; text-decoration:line-through; }
.cal td.sel { background:var(--accent); color:var(--on-accent); }
.bb-row { display:grid; grid-template-columns:1fr 1fr; gap:.8rem; margin-bottom:.8rem; }
.bb-field { border:1px solid var(--line); padding:.8rem .9rem; }
.bb-field .l { display:block; font-family:var(--mono); font-size:.58rem; text-transform:uppercase; letter-spacing:.12em; color:var(--muted); margin-bottom:.3rem; }
.bb-field .v { font-size:.98rem; }
.bb-note { font-family:var(--mono); font-size:.62rem; text-transform:uppercase; letter-spacing:.11em; color:var(--muted); margin-top:1rem; }
@media (min-width:900px) { .bookbox { grid-template-columns:1.4fr 1fr; align-items:start; } }

/* ---------- footer ---------- */
.foot { background:var(--surface); border-top:1px solid var(--line); padding:3.4rem 0 2.4rem; }
.foot-grid { display:grid; gap:2.2rem; grid-template-columns:1fr; }
.foot h4 { font-family:var(--mono); font-size:.65rem; text-transform:uppercase; letter-spacing:.14em; color:var(--accent); margin-bottom:1rem; }
.foot ul { list-style:none; margin:0; padding:0; }
.foot li { margin-bottom:.5rem; }
.foot a { text-decoration:none; color:var(--muted); font-size:.95rem; }
.foot a:hover { color:var(--ink); }
.foot-base { margin-top:2.6rem; padding-top:1.6rem; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:.8rem 1.6rem; justify-content:space-between; }
.foot-base p { font-family:var(--mono); font-size:.62rem; text-transform:uppercase; letter-spacing:.11em; color:var(--muted); margin:0; }

/* ---------- sesongsynlighet ---------- */
[data-season="summer"] .winter-only,[data-season="winter"] .summer-only { display:none !important; }
/* brukes både som blokk (hero-media) og inline (tekstbytte i h1/lede) */
h1 > .summer-only, h1 > .winter-only,
.eyebrow > .summer-only, .eyebrow > .winter-only,
.lede > .summer-only, .lede > .winter-only { display:inline; }

/* ---------- responsivt ---------- */
@media (min-width:640px) {
  .grid { grid-template-columns:repeat(2,1fr); }
  .rooms { grid-template-columns:repeat(2,1fr); }
  .foot-grid { grid-template-columns:repeat(2,1fr); }
}
@media (min-width:900px) {
  .grid { grid-template-columns:repeat(3,1fr); }
  .g2 { grid-template-columns:repeat(2,1fr); }
  .split { grid-template-columns:1fr 1fr; gap:3.4rem; }
  .split.rev .body { order:2; }
  .foot-grid { grid-template-columns:repeat(4,1fr); }
}
@media (min-width:1100px) {
  .rooms { grid-template-columns:repeat(3,1fr); }
}

/* v8: omtale-statistikk */
.mentions{display:flex;flex-direction:column;gap:.55rem;justify-content:center}
.mention{display:grid;grid-template-columns:9rem 1fr 2rem;align-items:center;gap:.7rem}
.mention-label{font-size:.85rem;color:var(--muted)}
.mention-bar{height:8px;background:var(--raised);border-radius:4px;overflow:hidden}
.mention-bar span{display:block;height:100%;background:var(--accent);border-radius:4px}
.mention-count{font-size:.8rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}

/* v8: guide-brødtekst fra markdown */
.guide-body h2{margin-top:2.4rem}
.guide-body h3{margin-top:1.6rem}
.guide-body ul,.guide-body ol{margin:1rem 0 1rem 1.2rem;display:grid;gap:.45rem}
.guide-body table{margin:1.2rem 0}
.guide-body p{margin-top:.9rem}

/* ==========================================================================
   V16 — låst designretning (konfigstreng: meny=midtlogo, pal=polarnatt,
   hero=video, bookhero=ja, tid=polaroid, band=standard, reels=tre, usp=typo,
   sitat=anfoersel, kal=smal). Fakta-boksene er erstattet av løpetekst.
   ========================================================================== */

/* ---------- meny: midtstilt logo, delt meny ---------- */
.nav-center .nav-in { display:grid; grid-template-columns:1fr auto 1fr; gap:1.6rem; }
.nav-center .brandcenter { margin:0; justify-self:center; grid-column:2; }
.nav-center .menu.nh { justify-content:flex-end; grid-column:1; margin:0; }
.nav-center .nav-right { display:none; grid-column:3; align-items:center; gap:1.5rem; margin-left:0; }
.nav-center .menu.nv { justify-content:flex-start; margin-left:0; }
.nav-center .nav-right .nav-cta { margin-left:.4rem; }
.nav-center .burger { grid-column:3; justify-self:end; }
@media (min-width:1200px) {
  .nav-center .menu.nh,.nav-center .nav-right { display:flex; }
  .nav-center .burger { display:none; }
}
@media (max-width:1199.98px) {
  .nav-center .nav-in { grid-template-columns:44px auto 1fr; }
  .nav-center .brandcenter { justify-self:start; grid-column:2; }
}
/* dropdown uten JS + kun på pekere som faktisk kan hovre (touch-fiks) */
@media (hover:hover) { .has-sub:hover .sub { display:flex; } }

/* ---------- hero v16: bilde i innholdsbredde, tekstbånd under ---------- */
.hero2 { padding-top:clamp(1.2rem,3vw,2.4rem); }
.hero2-media { position:relative; overflow:hidden; border-radius:14px;
  background:var(--raised); border:1px solid var(--line); aspect-ratio:16/9; }
.hero2-media .hm,.hero2-media .hm img,.hero2-media > video {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.hero2-media .hm img { position:static; }
.hero2-media .hm { position:absolute; inset:0; }
.hero2-text { padding:clamp(1.9rem,4vw,3rem) 0 clamp(2.2rem,4vw,3rem); max-width:1120px; }
.hero2-text h1 { max-width:22ch; margin:.15rem 0 1rem; }
.hero2-sm .hero2-media { aspect-ratio:21/9; }
@media (max-width:700px) { .hero2-media,.hero2-sm .hero2-media { aspect-ratio:4/3; } }

/* ---------- sesongpille (glidende blå markør) — også lyd/rytme ---------- */
.season-pill { position:absolute; right:14px; bottom:14px; z-index:6;
  display:inline-flex; align-items:center; padding:4px; border:1px solid rgba(243,239,230,.28);
  background:rgba(7,12,18,.58); backdrop-filter:blur(8px); border-radius:999px;
  cursor:pointer; color:#F3EFE6; }
.season-pill span { position:relative; z-index:2; padding:.42rem .85rem;
  font-family:var(--mono); font-size:.6rem; text-transform:uppercase; letter-spacing:.12em;
  display:inline-flex; align-items:center; gap:.4rem; min-width:5.4rem; justify-content:center; }
.season-pill .sp-marker { position:absolute; top:4px; bottom:4px; left:4px; width:calc(50% - 4px);
  background:#274B6B; border-radius:999px; transition:transform .3s ease; }
[data-season="winter"] .season-pill:not(.rytme-pill):not(.vid-sound) .sp-marker { transform:translateX(100%); }
[data-season="summer"] .season-pill:not(.rytme-pill):not(.vid-sound) .sp-w { color:var(--muted); }
[data-season="winter"] .season-pill:not(.rytme-pill):not(.vid-sound) .sp-s { color:var(--muted); }

/* ---------- videokontroller ---------- */
.vid-ui { position:absolute; right:14px; top:14px; z-index:6; display:flex; gap:.55rem; align-items:center; }
.vid-ui .season-pill { position:static; }
.vid-sound[data-on="true"] .sp-marker { transform:translateX(100%); }
.vid-sound:not([data-on="true"]) .sp-w { color:var(--muted); }
.vid-sound[data-on="true"] .sp-s { color:var(--muted); }
.vid-pill { display:inline-flex; padding:4px; gap:2px; border:1px solid rgba(243,239,230,.28);
  background:rgba(7,12,18,.58); backdrop-filter:blur(8px); border-radius:999px; }
.vid-pill button { display:grid; place-items:center; width:34px; height:34px; border-radius:999px;
  background:none; border:0; color:#F3EFE6; cursor:pointer; }
.vid-pill button:hover { background:#274B6B; }
.vid-pill .ic-play { display:none; }
/* v31: paused-tilstanden ligger på videoens container (.hero2-media) så flere
   videoer på samme side (property-hero-velgeren) styres uavhengig */
.hero2-media[data-paused="true"] .ic-play { display:block; }
.hero2-media[data-paused="true"] .ic-pause { display:none; }
@media (max-width:700px) {
  .vid-ui { right:8px; top:8px; gap:.4rem; }
  .vid-sound span { min-width:0; padding:.38rem .6rem; }
}

/* ---------- booking-søkelinje i hero (mørk polarnatt-variant) ---------- */
.bookbar { position:relative; z-index:7; margin:-2.1rem auto 0; width:min(860px,100%);
  display:grid; grid-template-columns:1fr 1fr auto auto; align-items:stretch; gap:1px;
  background:rgba(24,34,48,.92); backdrop-filter:blur(10px);
  border:1px solid rgba(243,239,230,.16); border-radius:12px; padding:8px; }
.bb-field { background:#202C3D; border-radius:7px; padding:.6rem .95rem; min-width:0; }
.bb-label { display:block; font-family:var(--mono); font-size:.56rem; text-transform:uppercase;
  letter-spacing:.13em; color:var(--muted); margin-bottom:.18rem; }
.bb-value { font-size:.92rem; color:var(--ink); white-space:nowrap; }
.bb-step { display:inline-flex; align-items:center; gap:.65rem; }
.bb-step i { display:grid; place-items:center; width:20px; height:20px; border:1px solid var(--line);
  border-radius:50%; color:var(--muted); font-style:normal; font-size:.85rem; }
.bb-step b { font-weight:500; font-size:.92rem; }
.bb-search { display:inline-flex; align-items:center; gap:.5rem; border-radius:7px;
  padding:0 1.35rem; align-self:stretch; }
@media (max-width:820px) {
  .bookbar { grid-template-columns:1fr 1fr; margin-top:.9rem; }
  .bb-search { grid-column:1 / -1; justify-content:center; padding:.9rem 1.35rem; }
}

/* ---------- løpetekst (erstatter faktabokser) ---------- */
.intro-prose { margin-top:1.5rem; }
.intro-prose p { font-size:1.06rem; line-height:1.75; color:var(--muted); }
.intro-prose p:first-child { color:var(--ink); }

/* ---------- USP — typografivarianten ---------- */
.usp-typo { padding-block:clamp(3rem,6vw,4.8rem); }
.usp-grid { display:grid; gap:2.6rem 2.2rem; grid-template-columns:1fr; }
.usp-h { font-size:clamp(1.7rem,2.9vw,2.35rem); line-height:1.08; margin-bottom:.7rem; }
.usp-h em { display:block; font-style:italic; font-weight:400; color:var(--accent2); }
.usp .meta { margin-bottom:.65rem; }
.usp p:not(.meta) { color:var(--muted); font-size:.97rem; max-width:34ch; }
@media (min-width:820px) { .usp-grid { grid-template-columns:repeat(3,1fr); } }

/* ---------- rytmen — polaroid-tidslinje ---------- */
.rytme-head { display:flex; align-items:flex-end; justify-content:space-between;
  gap:1.4rem; flex-wrap:wrap; margin-bottom:2.4rem; }
.rytme-head h2 { margin:0; }
.rytme-pill { position:static; }
section[data-rytme="winter"] .rytme-pill .sp-marker { transform:translateX(100%); }
section[data-rytme="summer"] .rytme-pill .sp-w { color:var(--muted); }
section[data-rytme="winter"] .rytme-pill .sp-s { color:var(--muted); }
/* skjuleregler bundet til seksjonen, med !important (uavhengig av sidesesongen) */
section[data-rytme="summer"] .pol-winter { display:none !important; }
section[data-rytme="winter"] .pol-summer { display:none !important; }
.pol-row { display:flex; gap:1.15rem; align-items:flex-start; }
.pol { flex:1 1 0; min-width:0; margin:0; background:#F3EFE6; border-radius:4px;
  padding:9px 9px 0; box-shadow:0 10px 26px rgba(0,0,0,.38); }
.pol-0 { transform:rotate(-1.7deg); } .pol-1 { transform:rotate(1.2deg); }
.pol-2 { transform:rotate(-.8deg); } .pol-3 { transform:rotate(1.6deg); }
.pol-4 { transform:rotate(-1.2deg); }
.pol-img { aspect-ratio:1/1; overflow:hidden; background:#DDD6C8; }
.pol-img img { width:100%; height:100%; object-fit:cover; }
.pol figcaption { padding:.7rem .25rem .85rem; color:#22303A; }
.pol-time { display:block; font-family:var(--mono); font-size:.6rem; letter-spacing:.16em;
  color:#8A5A34; margin-bottom:.22rem; }
.pol-cap { display:block; font-family:var(--display); font-size:.98rem; line-height:1.22; }
.pol-note { display:block; font-size:.72rem; color:#5C6B76; margin-top:.3rem; line-height:1.35; }
@media (max-width:999.98px) {
  .pol-row { overflow-x:auto; scroll-snap-type:x mandatory; padding:.4rem .2rem 1rem;
    scrollbar-width:none; }
  .pol-row::-webkit-scrollbar { display:none; }
  .pol { flex:0 0 min(66vw,270px); scroll-snap-align:start; }
}

/* ---------- three places to start — reel-tiles ---------- */
.reel-tile .gallery { aspect-ratio:4/3; }
.reel-tile h3 a { text-decoration:none; }
.reel-tile h3 a:hover { color:var(--accent2); }

/* ---------- sitater — anførselstegn-varianten ---------- */
.q-grid { display:grid; gap:1.6rem; grid-template-columns:1fr; }
.q { position:relative; margin:0; padding:0; } /* v28: stort q-mark fjernet — aapningstegnet ligger inline i teksten */
.q blockquote { margin:0; }
.q blockquote p { font-family:var(--display); font-size:1.08rem; line-height:1.55; font-weight:400; }
.q figcaption { margin-top:1rem; font-family:var(--mono); font-size:.62rem;
  text-transform:uppercase; letter-spacing:.12em; color:var(--muted); }
@media (min-width:900px) { .q-grid { grid-template-columns:1fr 1fr; gap:2.4rem 3.2rem; } }

/* ---------- kalender — sentrert smal Booking Box (alltid lys) ---------- */
.center-head { margin-inline:auto; text-align:center; }
.center-head .lede { margin-inline:auto; }
.center-meta { text-align:center; margin-top:1.4rem; }
.bxbox { display:block; width:min(420px,100%); margin:0 auto; background:#F7F5F0;
  color:#22303A; border-radius:12px; padding:1.4rem; border:1px solid #E3DDCE;
  box-shadow:0 14px 34px rgba(0,0,0,.35); }
.bx-row { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; margin-bottom:.7rem; }
.bx-field { border:1px solid #D8D1C0; border-radius:8px; padding:.7rem .85rem; background:#FFFDF8; }
.bx-label { display:block; font-family:var(--mono); font-size:.56rem; text-transform:uppercase;
  letter-spacing:.13em; color:#5C6B76; margin-bottom:.2rem; }
.bx-value { font-size:.95rem; }
.bx-step { display:inline-flex; align-items:center; gap:.75rem; }
.bx-step i { display:grid; place-items:center; width:22px; height:22px; border:1px solid #D8D1C0;
  border-radius:50%; color:#5C6B76; font-style:normal; }
.bx-step b { font-weight:500; }
.bx-note { font-family:var(--mono); font-size:.6rem; text-transform:uppercase;
  letter-spacing:.12em; color:#5C6B76; margin:.9rem 0; text-align:center; }
.bx-btn { display:block; text-align:center; border-radius:8px; }

/* ---------- v16: fasilitetsgrid + fremhevet guide ---------- */
.fac-grid { display:grid; gap:1.4rem; grid-template-columns:1fr; }
@media (min-width:700px) { .fac-grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1050px) { .fac-grid { grid-template-columns:repeat(3,1fr); } }
.feature-guide { margin-top:3rem; }
.feature-guide h2 a:hover { color:var(--accent2); }

/* ---------- v16: hostbilde-valg (fjernes før lansering) ---------- */
.cand-grid { display:grid; gap:1.1rem; grid-template-columns:repeat(2,1fr); }
@media (min-width:700px) { .cand-grid { grid-template-columns:repeat(4,1fr); } }
.cand { margin:0; }
.cand figcaption { padding-top:.45rem; font-family:var(--mono); font-size:.6rem;
  text-transform:uppercase; letter-spacing:.1em; color:var(--muted); }
.cand figcaption b { color:var(--accent); margin-right:.35rem; }

/* ---------- v16: Lofoten-kartet (stilisert SVG) ---------- */
.lm-wrap { display:grid; gap:2rem; grid-template-columns:1fr; align-items:start; }
@media (min-width:960px) { .lm-wrap { grid-template-columns:1.55fr 1fr; gap:2.8rem; } }
.lofmap { width:100%; height:auto; display:block; background:var(--bg);
  border:1px solid var(--line); border-radius:14px; }
.lm-land { fill:var(--raised); stroke:var(--line); stroke-width:1.5; }
.lm-road { fill:none; stroke:var(--accent); stroke-width:3; stroke-dasharray:9 7;
  stroke-linecap:round; opacity:.85; }
.lm-road-minor { stroke-width:2; stroke-dasharray:4 6; opacity:.6; }
.lm-m circle { fill:var(--surface); stroke:var(--accent); stroke-width:2; }
.lm-m text { fill:var(--ink); font-family:"IBM Plex Mono",monospace; font-size:12px;
  text-anchor:middle; letter-spacing:0; }
.lm-casa circle:first-of-type { fill:none; stroke:var(--logo-a); stroke-width:2.5; }
.lm-casa circle:last-of-type { fill:var(--logo-a); }
.lm-casa text { fill:var(--ink); font-family:"IBM Plex Mono",monospace; font-size:13px;
  letter-spacing:.14em; text-transform:uppercase; }
.lm-water { fill:var(--muted); font-family:"Fraunces",serif; font-style:italic;
  font-size:16px; opacity:.85; }
.lm-sea { font-size:20px; opacity:.55; }
.lm-e10 { fill:var(--accent); font-family:"IBM Plex Mono",monospace; font-size:12px;
  letter-spacing:.12em; }
.lm-n path { fill:var(--muted); }
.lm-n text { fill:var(--muted); font-family:"IBM Plex Mono",monospace; font-size:12px;
  letter-spacing:.1em; }
.lm-legend { list-style:none; margin:0; padding:0; columns:1; }
.lm-legend li { display:flex; gap:.7rem; align-items:baseline; padding:.42rem 0;
  border-bottom:1px solid var(--line); font-size:.93rem; }
.lm-legend b { flex:0 0 1.7rem; height:1.7rem; display:grid; place-items:center;
  border:1px solid var(--accent); border-radius:50%; color:var(--ink);
  font-family:var(--mono); font-size:.68rem; font-weight:500; align-self:center; }
.lm-legend .lg-note { color:var(--muted); }

/* ---------- v16: interaktiv turviser (MapLibre) ---------- */
.turviser { width:100%; height:min(72vh,560px); border:1px solid var(--line);
  border-radius:14px; overflow:hidden; background:var(--raised); position:relative; }
.turviser .tv-off { position:absolute; inset:0; display:grid; place-items:center;
  margin:0; padding:1.4rem; color:var(--muted); font-family:var(--mono);
  font-size:.85rem; text-align:center; }
.turviser:has(.maplibregl-canvas-container) .tv-off { display:none; }

/* ---------- v17: polaroid-reel (lang serie i tidslinje-språket) ---------- */
.pol-reel { position:relative; }
.pol-reel .strip { display:flex; gap:1.15rem; align-items:flex-start;
  overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none;
  padding:.4rem .2rem 1rem; }
.pol-reel .strip::-webkit-scrollbar { display:none; }
.pol-reel .pol { flex:0 0 min(31%,300px); scroll-snap-align:start; }
@media (max-width:759.98px) { .pol-reel .pol { flex-basis:min(66vw,270px); } }
.pol-reel .gnav { top:40%; }
.pol figcaption.pol-empty { padding:.55rem 0; }

/* v18: midtlogo — stablet (ikon over ordmerke), som i konfiguratorens midtlogo-variant */
.nav-center .brandcenter { flex-direction:column; gap:.3rem; padding:.35rem 0; }
.nav-center .brandcenter svg { width:44px; height:44px; flex:0 0 44px; }
.nav-center .brandcenter span { font-size:.66rem; letter-spacing:.3em; }
@media (max-width:1199.98px) {
  .nav-center .brandcenter { flex-direction:row; gap:.55rem; padding:0; }
  .nav-center .brandcenter svg { width:34px; height:34px; flex:0 0 34px; }
}

/* ---------- v18: 3D-oversiktskartet som hero på Close by ---------- */
.ovmap { height:min(74vh,640px); border-radius:14px 14px 0 0; }
.ovm { display:flex; flex-direction:column; align-items:center; gap:2px; cursor:pointer; }
.ovm-i { width:30px; height:30px; display:grid; place-items:center; border-radius:50%;
  background:rgba(14,20,28,.82); color:#F3EFE6; border:1.5px solid rgba(243,239,230,.55);
  box-shadow:0 3px 10px rgba(0,0,0,.45); }
.ovm-i svg { width:17px; height:17px; display:block; }
.ovm-casa .ovm-i { width:44px; height:44px; background:none; border:0; box-shadow:0 4px 14px rgba(0,0,0,.55); }
.ovm-casa .ovm-i svg { width:44px; height:44px; }
.ovm-hike .ovm-i { color:#DFA916; }
.ovm-beach .ovm-i { color:#7FD1CB; }
.ovm-airport .ovm-i, .ovm-ferry .ovm-i { color:#CC7A45; }
.ovm-l { font-family:"IBM Plex Mono",monospace; font-size:.58rem; letter-spacing:.08em;
  text-transform:uppercase; color:#F3EFE6; background:rgba(14,20,28,.72);
  padding:.14rem .4rem; border-radius:3px; white-space:nowrap; }
.ovm-casa { z-index:10; }  /* Casa Lofoten ligger alltid oeverst i markoerbunken */
.ovmap .maplibregl-popup-content { background:#182230; color:#F3EFE6; font-family:"IBM Plex Mono",monospace;
  font-size:.72rem; border:1px solid rgba(243,239,230,.25); border-radius:6px; }
.ovmap .maplibregl-popup-tip { border-top-color:#182230; }

/* ---------- v18: vertssitater på About-heroen ---------- */
.hq { position:absolute; left:14px; right:14px; bottom:14px; z-index:5;
  display:flex; gap:.8rem; flex-wrap:wrap; }
.hq-card { margin:0; max-width:340px; background:rgba(7,12,18,.72); backdrop-filter:blur(8px);
  border:1px solid rgba(243,239,230,.22); border-left:2px solid var(--accent);
  padding:.75rem .95rem; }
.hq-card blockquote { margin:0; font-family:var(--display); font-size:.95rem; line-height:1.35; color:#F3EFE6; }
.hq-card figcaption { margin-top:.4rem; font-family:var(--mono); font-size:.6rem;
  letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
@media (max-width:700px) { .hq { position:static; margin-top:.8rem; } .hq-card { max-width:none; } }

/* ---------- v22b: etikett-uten-ikon (fjorder/områder) ---------- */
.ovm-label { cursor:default; }
.ovm-l.ovm-water { font-family:"Fraunces",serif; font-style:italic; text-transform:none;
  letter-spacing:.06em; font-size:.78rem; background:none; color:#EAF2F5;
  text-shadow:0 1px 6px rgba(7,12,18,.9), 0 0 2px rgba(7,12,18,.9); padding:0; }

/* ---------- v24: generelle grep ---------- */
/* Mer luft under logoen — høyere toppmeny (eiers punkt «Generelt på alle sider») */
.nav-center { padding:.5rem 0 1.05rem; }
@media (max-width:1199.98px) { .nav-center { padding:.45rem 0 .7rem; } }
/* About-heroen: original beskjæring — media følger bildets eget format */
.hero2-media.hm-natural { aspect-ratio:auto; }
.hero2-media.hm-natural .hm img { position:static; height:auto; }
/* Sitater i normal tekststørrelse (eiers «ikke for dominerende»-stil) */
.q-plain { margin:1.6rem 0 0; padding:0; list-style:none; display:grid; gap:.55rem; }
.q-plain li { font-size:1rem; line-height:1.55; color:var(--ink); }
/* v29: ::before-hermetegnet fjernet — aapningstegnet ligger inline i markupen (v28) */
.q-plain .qa { color:var(--muted); font-family:var(--mono); font-size:.72rem;
  letter-spacing:.08em; white-space:nowrap; }

/* v24: About — sitatene i full bredde, stablet */
.q-stack { grid-template-columns:1fr; margin-top:2.2rem; }

/* ---------- v25 ---------- */
/* Sitater i like kolonner */
.q-plain.q-cols4 { grid-template-columns:repeat(4,1fr); gap:1.2rem; }
.q-plain.q-cols3 { grid-template-columns:repeat(3,1fr); gap:1.2rem; }
.q-plain.q-cols2 { grid-template-columns:repeat(2,1fr); gap:1.2rem; } /* v30: sauna-introen */
@media (max-width:900px) { .q-plain.q-cols4 { grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px) { .q-plain.q-cols4, .q-plain.q-cols3, .q-plain.q-cols2 { grid-template-columns:1fr; } }
/* Fullbredde-innledninger der eier ber om det */
.lede-wide { max-width:none; }
/* About-heroen i original beskjæring: .hm var absolutt-posisjonert og kollapset
   naar aspektlaasen ble slaatt av — naa flyter den naturlig */
.hero2-media.hm-natural .hm { position:static; }
.hero2-media.hm-natural .hm img { width:100%; height:auto; display:block; }
/* v25: rombeskrivelsene i vanlig brødtekst (samme font/størrelse under alle bilder) */
.room-note { font-size:1rem; line-height:1.55; color:var(--ink); margin:.35rem 0 0; }

/* ---------- v26: sitatstil ---------- */
.q-plain li .qt { font-style:italic; display:block; }
.q-plain li::before { font-style:normal; }
.q-plain .qmark, .q .qmark { color:var(--accent); font-style:normal; }
.q-plain .qa { display:block; margin-top:.35rem; white-space:nowrap; }
.q blockquote p { font-style:italic; }
/* v46-t1: nowrap fjernet — 54-tegns kildelinjer sprengte mobilbredden (horisontal scroll paa 8+ sider). Desktop-sporet er >=500px og paavirkes ikke. */
/* v26: About — 2 sitatkolonner i From Susanne + hero-beskjæring */
.q-grid.q-cols2 { grid-template-columns:1fr 1fr; margin-top:2.4rem; }
@media (max-width:760px) { .q-grid.q-cols2 { grid-template-columns:1fr; } }
/* Portrettbildet i 21/9-heroen: vis mest mulig av originalen — juster
   prosenten (0 % = topp) til ansiktene sitter riktig */
/* v29 (eiers valg, variant B): About-heroen i standard 21:9-hoyde; portrettet vises
   i full hoyde midtstilt uten zoom (contain), sidene er kortflatens moerke farge */
.hero2 .hm img.about-contain { object-fit:contain; }
/* v31: HERO-VELGER på property (midlertidig valgverktøy for eierne):
   tre paneler i samme 21:9-ramme; C viser portrettfilmen i full høyde
   midtstilt uten zoom på den mørke kortflaten (About-heroens contain-løsning) */
.hv-pane[hidden] { display:none !important; }
.hv-contain > video { object-fit:contain; background:var(--raised); }
.hv-picker { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap;
  margin:0 0 .8rem; }
.hv-picker .hv-label { font-family:var(--mono); font-size:.62rem;
  text-transform:uppercase; letter-spacing:.14em; color:var(--muted); }
.hv-picker button { font-family:var(--mono); font-size:.62rem; text-transform:uppercase;
  letter-spacing:.12em; color:var(--ink); background:var(--raised);
  border:1px solid var(--line); border-radius:999px; padding:.5rem .95rem; cursor:pointer; }
.hv-picker button[aria-pressed="true"] { border-color:var(--accent); color:var(--accent); }
.hv-picker button:hover { background:#274B6B; }
/* v26: booking-intro — sitatet like høyt som teksten med overskriften */
.intro-quote { align-items:stretch; }
.q-side { display:flex; flex-direction:column; justify-content:center; height:100%;
  margin:0; padding-left:1.4rem; border-left:1px solid var(--line); }
.q-side blockquote p { font-size:clamp(1.25rem,2vw,1.6rem); line-height:1.45; }
/* v28: .q-side .q-mark utgaatt */
@media (max-width:900px) { .q-side { border-left:0; padding-left:0; height:auto; margin-top:1.2rem; } }

/* webside11: kart-popup med hovedbilde + myk scroll til stedet i listen */
html { scroll-behavior:smooth; }
.pl-anchor { scroll-margin-top: calc(var(--nav-real, var(--nav-h, 64px)) + 1.2rem); }
.ovmap .maplibregl-popup-content a.ovm-pop { color:#F3EFE6; text-decoration:none; display:block; }
.ovmap .maplibregl-popup-content a.ovm-pop img { display:block; width:200px; height:140px;
  object-fit:cover; border-radius:8px; margin-bottom:.55rem; }
.ovmap .maplibregl-popup-content .ovm-go { color:#CC7A45; }

/* webside12: faktaboksen paa Close by som lesbar to-kolonners tabell */
.factrows { display:grid; grid-template-columns:max-content 1fr; column-gap:1.6rem; row-gap:.6rem; }
.factrows .fl { font-family:var(--mono); font-size:.68rem; text-transform:uppercase;
  letter-spacing:.1em; color:var(--muted); align-self:baseline; padding-top:.18rem; }
.factrows .fv { color:var(--ink); }
/* webside12: full bredde paa utvalgte overskrifter/ingresser */
.head-wide { max-width:none; }
.h1-wide { max-width:none !important; }

/* ---------- webside14: Plan your trip-indeksen (A/B-velger) ---------- */
/* Kompaktlisten (alternativ B) */
.gv-list { border-top:1px solid var(--line); margin-top:1.6rem; }
.gv-item { display:grid; grid-template-columns:1fr auto; gap:.3rem 1.4rem;
  align-items:start; padding:1.15rem 0; border-bottom:1px solid var(--line); }
.gv-item h3 { margin:0 0 .35rem; font-size:1.18rem; }
.gv-item h3 a { text-decoration:none; }
.gv-item h3 a:hover { color:var(--accent); }
.gv-item p { margin:0; color:var(--muted); max-width:62ch; }
.gv-tag { font-family:var(--mono); font-size:.62rem; text-transform:uppercase;
  letter-spacing:.08em; color:var(--muted); white-space:nowrap; padding-top:.35rem; }
/* «Coming»-seksjonen (felles) — maks 3 i bredden per designregel */
.gv-coming { display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; margin-top:1.6rem; }
.gv-coming-item { display:flex; justify-content:space-between; align-items:baseline;
  gap:1rem; background:var(--raised); border:1px solid var(--line);
  border-radius:10px; padding:.85rem 1rem; }
.gv-coming-item > span:first-child { font-family:var(--display); font-size:1rem; }
@media (max-width:900px) { .gv-coming { grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px) { .gv-coming { grid-template-columns:1fr; }
  .gv-item { grid-template-columns:1fr; } .gv-tag { padding-top:0; } }

/* ---------- webside14 del 2: guide-redesign (mnd-/stedsruter) ---------- */
.g2-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:.9rem; margin-top:1.6rem; }
.g2-grid .box { margin:0; }
.g2-grid .box h4 { margin-bottom:.45rem; }
.g2-grid .box p { margin:0; }
.g2-grid .box p + p { margin-top:.55rem; }
@media (max-width:760px) { .g2-grid { grid-template-columns:1fr; } }
/* v46-t1: paa de smaleste mobilene (<=379px) faar etikettkolonnen i faktabokser
   lov aa bryte — ellers tvinger «FROM LEKNES AIRPORT» + verdi horisontal scroll.
   Ingen endring fra 380px og opp. */
@media (max-width:379px) {
  .factrows { grid-template-columns:minmax(0,max-content) 1fr; column-gap:1rem; }
}
