{"version":3,"sources":["../scss/04_organisms/blogs/overviews/_topic.scss","00_helpers/mixins/grid/_grid-columns.scss","00_helpers/mixins/_media-queries.scss","00_helpers/mixins/_font-style.scss","00_helpers/variables/_fonts.scss"],"names":[],"mappings":"AAAA;EAEI,2BC2ByD,EAAA;;ACiCzD;EF9DJ;IG4BE,0CCb+C;IDc/C,eCaiB;IDZjB,oBCcsB;IDbtB,iBCYmB;IJlCf,2BCoBuD,EAAA;ED7B7D;IAcQ,WAAW,EAAA;IAdnB;MAgBU,cAAc;MACd,eAAe,EAAA;EAjBzB;IAsBQ,gDAAwE,EAAA,EACzE;;AE4EH;EFnGJ;IA6BM,gDAA0E,EAAA,EAC3E","file":"topic.css","sourcesContent":[".blog-overview--topic {\n  .blog-overview__list {\n    width: grid-columns(4, 6);\n  }\n\n  // viewport l\n  @include viewport--l {\n    .block__description p {\n      @include font-style('body--l');\n      width: grid-columns(8, 12);\n    }\n\n    .blog-overview {\n      &__list {\n        width: 100%;\n        .slick-list > .slick-track {\n          margin-left: 0;\n          margin-right: 0;\n        }\n      }\n\n      &__list > .blog-overview__item {\n        width: calc(#{grid-columns(4, 12)} + (2 * #{$blog-overview-spacing--l}));\n      }\n    }\n  }\n  // viewport xxl\n  @include viewport--xxl {\n    .blog-overview__list > .blog-overview__item {\n      width: calc(#{grid-columns(4, 12)} + (2 * #{$blog-overview-spacing--xxl}));\n    }\n  }\n}\n","// @grid-columns($columns, $columns-total, $grid-gutter)\n\n// grid for viewport S & M:\n// 6 columns / 28 units\n//\n//  |   |   |   |   |   |   |   |   |   |   |   |\n//  | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 |\n//  |   |   |   |   |   |   |   |   |   |   |   |\n//\n//\n// grid for vieport L:\n// 12 columns / 58 units\n//\n//  |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |\n//  | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 |\n//  |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |\n\n@function grid-columns($columns, $columns-total, $grid-gutter: null) {\n  $column-gutter-diff: ($grid-column-units - $grid-gutter-units);\n\n  $column-units: ($columns * $grid-column-units) + (($columns - $column-gutter-diff) * $grid-gutter-units);\n  $columns-total: ($columns-total * $grid-column-units) + (($columns-total - $column-gutter-diff) * $grid-gutter-units);\n\n  // if grid gutter is provided use it in calculation\n  @if ($grid-gutter) {\n    @return calc(((#{$column-units} + (#{$grid-gutter} * #{$grid-gutter-units})) /#{$columns-total}) * 100%);\n  }\n  // if grid-gutter is not provided return default calculation\n  @else {\n    @return calc((#{$column-units}/#{$columns-total}) * 100%);\n  }\n}\n","// @viewport--x($reversed)\n\n// viewport s\n@mixin viewport--s($type: null) {\n  // inversed\n  @if ($type == 'inversed') {\n    @media (max-width: #{($breakpoint-viewport--s - 1)}) {\n      @content;\n    }\n  }\n  // range\n  @else if ($type== 'range') {\n    @media (min-width:0) and (max-width: #{($breakpoint-viewport--s - 1)}) {\n      @content;\n    }\n  }\n  // default\n  @else {\n    @media (min-width: #{$breakpoint-viewport--s}) {\n      @content;\n    }\n  }\n}\n\n// viewport m\n@mixin viewport--m($type: null) {\n  // inversed\n  @if ($type == 'inversed') {\n    @media (max-width: #{($breakpoint-viewport--m - 1)}) {\n      @content;\n    }\n  }\n  // range\n  @else if ($type== 'range') {\n    @media (min-width: $breakpoint-viewport--m) and (max-width: #{($breakpoint-viewport--l - 1)}) {\n      @content;\n    }\n  }\n  // default\n  @else {\n    @media (min-width: #{$breakpoint-viewport--m}) {\n      @content;\n    }\n  }\n}\n\n// viewport l\n@mixin viewport--l($type: null) {\n  // inversed\n  @if ($type == 'inversed') {\n    @media (max-width: #{($breakpoint-viewport--l - 1)}) {\n      @content;\n    }\n  }\n  // range\n  @else if ($type== 'range') {\n    @media (min-width: $breakpoint-viewport--l) and (max-width: #{($breakpoint-viewport--xl - 1)}) {\n      @content;\n    }\n  }\n  // default\n  @else {\n    @media (min-width: #{$breakpoint-viewport--l}) {\n      @content;\n    }\n  }\n}\n\n// viewport xl\n@mixin viewport--xl($type: null) {\n  @if ($type == 'inversed') {\n    @media (max-width: #{($breakpoint-viewport--xl - 1)}) {\n      @content;\n    }\n  }\n  // range\n  @else if ($type== 'range') {\n    @media (min-width: $breakpoint-viewport--xl) and (max-width: #{($breakpoint-viewport--xxl - 1)}) {\n      @content;\n    }\n  }\n  // default\n  @else {\n    @media (min-width: #{$breakpoint-viewport--xl}) {\n      @content;\n    }\n  }\n}\n\n// viewport xxl\n@mixin viewport--xxl($type: null) {\n  // inversed\n  @if ($type == 'inversed') {\n    @media (max-width: #{($breakpoint-viewport--xxl - 1)}) {\n      @content;\n    }\n  }\n  // default\n  @else {\n    @media (min-width: #{$breakpoint-viewport--xxl}) {\n      @content;\n    }\n  }\n}\n\n// viewport range\n@mixin viewport--range($viewport1, $viewport2) {\n  @media (min-width: #{($viewport1)}) and (max-width: #{($viewport2 - 1)}) {\n    @content;\n  }\n}\n\n// Internet Explorer 10 + 11\n@mixin internet-explorer-10-11 {\n  @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {\n    @content;\n  }\n}\n","// @font-style($font-style-small, $font-style-large)\n\n// $font-style-small - Desired type size for small/medium viewport.\n// $font-style-large - Desired type size for large viewport. This includes default fallback\n//                     for the S/M viewport.\n\n//\n// | viewport S       | viewport M       | viewport L      | default mapping |\n// |------------------|------------------|-----------------|-----------------|\n// | title l    | 40  | title l    | 40  | title xxl  | 80 | default         |\n// | title m    | 32  | title m    | 32  | title xl   | 60 | default         |\n// | title s    | 26  | title s    | 26  | title l    | 40 |                 |\n// | title s    | 26  | title s    | 26  | title m    | 32 | default         |\n// | title xs   | 20  | title xs   | 20  | title s    | 26 |                 |\n// | title xs   | 20  | title xs   | 20  | title xs   | 20 | default         |\n// | title xxs  | 18  | title xxs  | 18  | title xxs  | 18 |                 |\n// |            |     |            |     |            |    |                 |\n// | body l     | 18  | body l     | 18  | body l     | 18 |                 |\n// | body m     | 16  | body m     | 16  | body m     | 16 |                 |\n// | body s     | 12  | body s     | 12  | body s     | 12 |                 |\n\n// import variables needed for the mixins\n@import '../variables/__variables.scss';\n\n// mixin to get applicable properties for chosen type size\n@mixin typeset($type) {\n  $type: map-get($types, $type);\n\n  font-family: (map-get($type, font-family));\n  font-size: (map-get($type, font-size));\n  text-transform: (map-get($type, text-transform));\n  line-height: (map-get($type, line-height));\n}\n\n// get correct font characteristics based on font\n@mixin type-size($size) {\n  $size: map-get($type-sizes, $size);\n  @include typeset($size);\n}\n\n// mixin to get font-size\n@mixin font-style($font-style-small: 'body--l', $font-style-large: null) {\n  // if both arguments are added\n  @if ($font-style-large != null) {\n    // make sure $font-style-small & $font-style-large are not equal\n    @if ($font-style-small != $font-style-large) {\n      @include type-size($font-style-small);\n\n      @include viewport--l {\n        @include type-size($font-style-large);\n      }\n    } @else {\n      @include type-size($font-style-small);\n    }\n  } @else {\n    @include type-size($font-style-small);\n    // default font style mappings\n    @if ($font-style-small == 'title--l') {\n      @include viewport--l {\n        @include type-size('title--xxl');\n      }\n    } @else if ($font-style-small == 'title--m') {\n      @include viewport--l {\n        @include type-size('title--xl');\n      }\n    } @else if ($font-style-small == 'title--s') {\n      @include viewport--l {\n        @include type-size('title--m');\n      }\n    }\n  }\n}\n","// | viewport S       | viewport M       | viewport L      | default mapping |\n// |------------------|------------------|-----------------|-----------------|\n// | title l    | 40  | title l    | 40  | title xxl  | 80 | default         |\n// | title m    | 32  | title m    | 32  | title xl   | 60 | default         |\n// | title s    | 26  | title s    | 26  | title l    | 40 |                 |\n// | title s    | 26  | title s    | 26  | title m    | 32 | default         |\n// | title xs   | 20  | title xs   | 20  | title s    | 26 |                 |\n// | title xs   | 20  | title xs   | 20  | title xs   | 20 | default         |\n// | title xxs  | 18  | title xxs  | 18  | title xxs  | 18 |                 |\n// |            |     |            |     |            |    |                 |\n// | body l     | 18  | body l     | 18  | body l     | 18 |                 |\n// | body m     | 16  | body m     | 16  | body m     | 16 |                 |\n// | body s     | 12  | body s     | 12  | body s     | 12 |                 |\n\n// font family\n$font-family-theme: Montserrat, arial, sans-serif;\n$font-family-theme-semibold: Montserrat-SemiBold, arial, sans-serif;\n$font-family-theme-extrabold: Montserrat-ExtraBold, arial, sans-serif;\n// assets path to font\n// this path is overwritten in component CSS\n\n// font mappings - font-size / line-height / letter-spacing\n$types: (\n  12: (\n    font-size: 12px,\n    line-height: 15px,\n    text-transform: none,\n    font-family: $font-family-theme\n  ),\n  14: (\n    font-size: 14px,\n    line-height: 25px,\n    text-transform: none,\n    font-family: $font-family-theme\n  ),\n  16: (\n    font-size: 16px,\n    line-height: 25px,\n    text-transform: none,\n    font-family: $font-family-theme\n  ),\n  18: (\n    font-size: 18px,\n    line-height: 30px,\n    text-transform: none,\n    font-family: $font-family-theme\n  ),\n  20: (\n    font-size: 20px,\n    line-height: 30px,\n    text-transform: none,\n    font-family: $font-family-theme-extrabold\n  ),\n  20s: (\n    font-size: 20px,\n    line-height: 30px,\n    text-transform: none,\n    font-family: $font-family-theme-semibold\n  ),\n  26: (\n    font-size: 26px,\n    line-height: 30px,\n    text-transform: uppercase,\n    font-family: $font-family-theme-extrabold\n  ),\n  26s: (\n    font-size: 26px,\n    line-height: 30px,\n    text-transform: none,\n    font-family: $font-family-theme-semibold\n  ),\n  32: (\n    font-size: 32px,\n    line-height: 40px,\n    text-transform: uppercase,\n    font-family: $font-family-theme-extrabold\n  ),\n  32s: (\n    font-size: 32px,\n    line-height: 40px,\n    text-transform: none,\n    font-family: $font-family-theme-semibold\n  ),\n  40: (\n    font-size: 40px,\n    line-height: 45px,\n    text-transform: uppercase,\n    font-family: $font-family-theme-extrabold\n  ),\n  40s: (\n    font-size: 40px,\n    line-height: 45px,\n    text-transform: none,\n    font-family: $font-family-theme-semibold\n  ),\n  60: (\n    font-size: 60px,\n    line-height: 60px,\n    text-transform: uppercase,\n    font-family: $font-family-theme-extrabold\n  ),\n  80: (\n    font-size: 80px,\n    line-height: 80px,\n    text-transform: uppercase,\n    font-family: $font-family-theme-extrabold\n  )\n);\n\n// type-sizes - links the type-size to correct font mapping\n$type-sizes: (\n  title--xxl: 80,\n  title--xl: 60,\n  title--l: 40,\n  title--l-slim: 40s,\n  title--m: 32,\n  title--m-slim: 32s,\n  title--s: 26,\n  title--s-slim: 26s,\n  title--xs: 20,\n  title--xs-slim: 20s,\n  title--xxs: 18,\n  body--l: 18,\n  body--m: 16,\n  body--s: 14,\n  body--xs: 12\n);\n"]}