Browse code

Progress

Benjamin Roth authored on21/02/2023 19:42:19
Showing1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,1170 @@
1
+@if not-imported("import_once_func") { @import "import_once_func"; }
2
+@if not-imported("framework") { @import "framework"; }
3
+
4
+.mod_iso_productlist {
5
+
6
+  $gutter-width: floor((1 / 1200) * 1000000) / 1000000 * 60;
7
+  .product_list {
8
+    display: flex;
9
+    flex-wrap: wrap;
10
+    align-items: flex-start;
11
+    margin-left: -#{$gutter-width * 100%};
12
+    margin-top: -#{$gutter-width * 100%};
13
+    margin-bottom: 1.5rem;
14
+  }
15
+
16
+  .product {
17
+    flex: 0;
18
+    min-width: 0;
19
+    margin-top: $gutter-width * 100%;
20
+    margin-left: $gutter-width * 100%;
21
+    flex-basis: 33.333% - ($gutter-width * 100%);
22
+    max-width: 33.333% - ($gutter-width * 100%);
23
+
24
+    @include font-size(15px,$mm:1,$tm:1);
25
+    position: relative;
26
+    padding-bottom: 35px;
27
+
28
+    @include for-tablet {
29
+      flex-basis: 50% - ($gutter-width * 100%);
30
+      max-width: 50% - ($gutter-width * 100%);
31
+    }
32
+
33
+    @include for-mobile {
34
+      flex-basis: 100% - ($gutter-width * 100%);
35
+      max-width: 100% - ($gutter-width * 100%);
36
+    }
37
+  }
38
+
39
+  .product_content {
40
+    //position: relative;
41
+    transition: all 0.75s cubic-bezier(0.5, 1, 0.89, 1);
42
+    height: 8em;
43
+    overflow: hidden;
44
+    &:not(.expanded) {
45
+      .product_content_inner {
46
+        height: 100%;
47
+        -webkit-mask-image: -webkit-gradient(linear, left 60%, left bottom, from(rgba(0, 0, 0, 1)), to(rgba(0, 0, 0, 0)));
48
+        mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 60%, rgba(0, 0, 0, 0));
49
+      }
50
+    }
51
+
52
+    .expand-toggle {
53
+      cursor: pointer;
54
+      content: '';
55
+      position: absolute;
56
+      left: 0;
57
+      bottom: 0;
58
+      -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 123 62' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cpath d='M57.548,60.943c2.509,1.409 5.581,1.409 8.09,0l54.92,-36.13c2.31,-1.41 3.18,-5.08 1.74,-7.05l-7,-15c-1.39,-2.22 -5.14,-2.78 -7.46,-1.37l-46.24,30.23l-45.67,-29.95c-2.6,-1.69 -6.36,-0.84 -7.52,0.85l-7.22,15.24c-1.45,2.25 -0.29,5.64 1.73,7.05l54.63,36.13Z' style='fill:%23000000;fill-rule:nonzero;'/%3E%3C/svg%3E");
59
+      mask-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 123 62' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cpath d='M57.548,60.943c2.509,1.409 5.581,1.409 8.09,0l54.92,-36.13c2.31,-1.41 3.18,-5.08 1.74,-7.05l-7,-15c-1.39,-2.22 -5.14,-2.78 -7.46,-1.37l-46.24,30.23l-45.67,-29.95c-2.6,-1.69 -6.36,-0.84 -7.52,0.85l-7.22,15.24c-1.45,2.25 -0.29,5.64 1.73,7.05l54.63,36.13Z' style='fill:%23000000;fill-rule:nonzero;'/%3E%3C/svg%3E");
60
+      -webkit-mask-repeat: no-repeat;
61
+      mask-repeat: no-repeat;
62
+      width: 30px;
63
+      height: 15px;
64
+      background-color: $color-bg-secondary;
65
+      @include transition(all 0.25s ease);
66
+    }
67
+
68
+    &.expanded {
69
+      .expand-toggle {
70
+        @include transform(rotate(180deg));
71
+        @include transform(scaleY(-1));
72
+      }
73
+    }
74
+  }
75
+
76
+  .image_container {
77
+    margin-bottom: 1.5em;
78
+  }
79
+
80
+  .datum {
81
+    font-family: $font-family-alternate;
82
+    letter-spacing: 0.125em;
83
+    font-weight: 700;
84
+    font-size: font-size(17px);
85
+  }
86
+
87
+  .shopping_container {
88
+    margin-top: 1.5em;
89
+    display: flex;
90
+
91
+    > * {
92
+      flex: 1 0 auto;
93
+    }
94
+
95
+    .offer {
96
+      flex: 0 0 auto;
97
+    }
98
+  }
99
+
100
+  .actions {
101
+    align-self: center;
102
+    padding-left: 15px;
103
+    text-align: right;
104
+
105
+    .quantity_container {
106
+      display: inline;
107
+      vertical-align: top;
108
+      input {
109
+        width: 45px;
110
+        height: 38px;
111
+      }
112
+    }
113
+  }
114
+
115
+  .not_buyable {
116
+    margin-top: 0.25em;
117
+    span {
118
+      display: inline-block;
119
+      @include border-radius(3px);
120
+      background-color: $color-bg-tertiary;
121
+      font-family: $font-family-alternate;
122
+      letter-spacing: 0.125em;
123
+      font-weight: 700;
124
+      font-size: font-size(12px);
125
+      color: $color-bg-primary;
126
+      padding: 4px 5px 2px;
127
+      text-transform: uppercase;
128
+    }
129
+  }
130
+
131
+  button {
132
+    &.add_to_cart {
133
+      background-color: $color-bg-secondary;
134
+      border-color: $color-bg-secondary;
135
+      height: 38px;
136
+      line-height: 30px;
137
+      text-align: center;
138
+      padding: 3px 5px;
139
+      position: relative;
140
+
141
+      &:hover {
142
+        background-color: mix(#fff,$color-bg-secondary,20%);
143
+        border-color: mix(#fff,$color-bg-secondary,20%);
144
+      }
145
+
146
+      svg.cart-image {
147
+        height: 30px;
148
+        fill: white;
149
+      }
150
+      svg.plus {
151
+        fill: #fff;
152
+        position: absolute;
153
+        top: 1px;
154
+        right: 1px;
155
+        height: 10px;
156
+        width: 10px;
157
+      }
158
+    }
159
+  }
160
+
161
+  .price {
162
+    font-family: $font-family-alternate;
163
+    letter-spacing: 0.125em;
164
+    font-weight: 700;
165
+    font-size: font-size(17px);
166
+    color: $color-bg-secondary;
167
+
168
+    &:after {
169
+      content: 'Preis pro Person';
170
+      font-family: $font-family;
171
+      font-size: font-size(15px);
172
+      font-weight: 700;
173
+      letter-spacing: normal;
174
+      color: $color-text;
175
+      margin-left: 0.5ex;
176
+    }
177
+  }
178
+
179
+  h3 {
180
+    font-size: font-size(17px);
181
+  }
182
+
183
+  .registration_info {
184
+    margin-top: 1.5em;
185
+  }
186
+}
187
+
188
+
189
+.mod_iso_cumulativefilter {
190
+  position: relative;
191
+  z-index: 1;
192
+  margin-bottom: 40px;
193
+
194
+  .clearall {
195
+    position: relative;
196
+    padding: 0;
197
+    margin: 0;
198
+    display: inline-block;
199
+    text-align: center;
200
+    font-size: font-size(14px);
201
+    line-height: 1.5;
202
+    font-weight: 700;
203
+    vertical-align: baseline;
204
+    cursor: pointer;
205
+    @include text-overflow-ellipsis;
206
+    color: $color-bg-secondary;
207
+    border-bottom: 1px $color-bg-secondary solid;
208
+    @include transition(all 0.25s);
209
+
210
+    &:hover {
211
+      color: $color-bg-primary;
212
+      border-bottom-color: $color-bg-primary;
213
+    }
214
+
215
+    /*&:before {
216
+      @include transition(all 0.25s);
217
+      display: block;
218
+      content: '';
219
+      width: 1.25em;
220
+      height: 1.25em;
221
+      -webkit-mask-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23000000" viewBox="0 0 32 32"%3E%3Cpath d="M6.393 26.806l10.192-10.192c0.327-0.327 0.327-0.859 0-1.186s-0.859-0.327-1.186 0l-10.192 10.192c-0.327 0.327-0.327 0.859 0 1.186s0.859 0.327 1.186 0z"%3E%3C/path%3E%3Cpath d="M5.165 6.38l10.235 10.235c0.327 0.327 0.859 0.327 1.186 0s0.327-0.859 0-1.186l-10.235-10.235c-0.327-0.327-0.859-0.327-1.186 0s-0.327 0.859 0 1.186z"%3E%3C/path%3E%3Cpath d="M25.607 26.806l-10.192-10.192c-0.327-0.327-0.327-0.859 0-1.186s0.859-0.327 1.186 0l10.192 10.192c0.327 0.327 0.327 0.859 0 1.186s-0.859 0.327-1.186 0z"%3E%3C/path%3E%3Cpath d="M26.835 6.38l-10.235 10.235c-0.327 0.327-0.859 0.327-1.186 0s-0.327-0.859 0-1.186l10.235-10.235c0.327-0.327 0.859-0.327 1.186 0s0.327 0.859 0 1.186z"%3E%3C/path%3E%3C/svg%3E');
222
+      mask-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" fill="%23000000" viewBox="0 0 32 32"%3E%3Cpath d="M6.393 26.806l10.192-10.192c0.327-0.327 0.327-0.859 0-1.186s-0.859-0.327-1.186 0l-10.192 10.192c-0.327 0.327-0.327 0.859 0 1.186s0.859 0.327 1.186 0z"%3E%3C/path%3E%3Cpath d="M5.165 6.38l10.235 10.235c0.327 0.327 0.859 0.327 1.186 0s0.327-0.859 0-1.186l-10.235-10.235c-0.327-0.327-0.859-0.327-1.186 0s-0.327 0.859 0 1.186z"%3E%3C/path%3E%3Cpath d="M25.607 26.806l-10.192-10.192c-0.327-0.327-0.327-0.859 0-1.186s0.859-0.327 1.186 0l10.192 10.192c0.327 0.327 0.327 0.859 0 1.186s-0.859 0.327-1.186 0z"%3E%3C/path%3E%3Cpath d="M26.835 6.38l-10.235 10.235c-0.327 0.327-0.859 0.327-1.186 0s-0.327-0.859 0-1.186l10.235-10.235c0.327-0.327 0.859-0.327 1.186 0s0.327 0.859 0 1.186z"%3E%3C/path%3E%3C/svg%3E');
223
+      -webkit-mask-repeat: no-repeat;
224
+      mask-repeat: no-repeat;
225
+      position: absolute;
226
+      right: 10px;
227
+      top: 50%;
228
+      @include transform(translate(0,-50%));
229
+      background-color: $color-bg-primary;
230
+    }
231
+
232
+    &:hover {
233
+      &:before {
234
+        @include transform(translate(0,-50%) scale(1.25,1.25));
235
+      }
236
+    }*/
237
+  }
238
+
239
+  ul {
240
+    margin: 0;
241
+  }
242
+
243
+  > .level_1 {
244
+    z-index: 1;
245
+    height: 2.5em;
246
+    opacity: 1;
247
+    visibility: visible;
248
+    margin-bottom: 1.25em;
249
+
250
+    @include for-tablet {
251
+      min-height: 2.5em;
252
+      height: auto;
253
+    }
254
+
255
+    /*height: 0;
256
+    opacity: 0;
257
+    visibility: hidden;*/
258
+
259
+    font-weight: 700;
260
+    font-size: font-size(14px);
261
+    letter-spacing: 0.125em;
262
+    text-transform: uppercase;
263
+    font-family: $font-family-alternate;
264
+    display: flex;
265
+    align-items: center;
266
+    justify-content: flex-start;
267
+    position: relative;
268
+
269
+    > li {
270
+      background-color: $color-bg-secondary;
271
+      @include border-radius(3px);
272
+      color: $color-text-invert;flex: 0 0 auto;
273
+      @include transition(all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94));
274
+      text-align: left;
275
+      position: relative;
276
+      padding: 0 15px;
277
+      margin: 0 15px;
278
+      width: 200px;
279
+      max-width: 100%;
280
+      height: 100%;
281
+
282
+      .label {
283
+        display: block;
284
+        padding-right: 1.43em;
285
+        position: relative;
286
+        line-height: 2.5em;
287
+        @include transition(all 0.25s);
288
+
289
+        &:after {
290
+          content: '';
291
+          width: .8em;
292
+          height: 1.12em;
293
+          -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 123 175' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cpath d='M57.548,1.057c2.509,-1.409 5.581,-1.409 8.09,-0l54.92,36.13c2.31,1.41 3.18,5.08 1.74,7.05l-7,15c-1.39,2.22 -5.14,2.78 -7.46,1.37l-46.24,-30.23l-45.67,29.95c-2.6,1.69 -6.36,0.84 -7.52,-0.85l-7.22,-15.24c-1.45,-2.25 -0.29,-5.64 1.73,-7.05l54.63,-36.13Z' style='fill-rule:nonzero;'/%3E%3Cpath d='M57.548,173.908c2.509,1.409 5.581,1.409 8.09,-0l54.92,-36.13c2.31,-1.41 3.18,-5.08 1.74,-7.05l-7,-15c-1.39,-2.22 -5.14,-2.78 -7.46,-1.37l-46.24,30.23l-45.67,-29.95c-2.6,-1.69 -6.36,-0.84 -7.52,0.85l-7.22,15.24c-1.45,2.25 -0.29,5.64 1.73,7.05l54.63,36.13Z' style='fill-rule:nonzero;'/%3E%3C/svg%3E");
294
+          mask-image: url("data:image/svg+xml,%3Csvg width='100%25' height='100%25' viewBox='0 0 123 175' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xml:space='preserve' xmlns:serif='http://www.serif.com/' style='fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;'%3E%3Cpath d='M57.548,1.057c2.509,-1.409 5.581,-1.409 8.09,-0l54.92,36.13c2.31,1.41 3.18,5.08 1.74,7.05l-7,15c-1.39,2.22 -5.14,2.78 -7.46,1.37l-46.24,-30.23l-45.67,29.95c-2.6,1.69 -6.36,0.84 -7.52,-0.85l-7.22,-15.24c-1.45,-2.25 -0.29,-5.64 1.73,-7.05l54.63,-36.13Z' style='fill-rule:nonzero;'/%3E%3Cpath d='M57.548,173.908c2.509,1.409 5.581,1.409 8.09,-0l54.92,-36.13c2.31,-1.41 3.18,-5.08 1.74,-7.05l-7,-15c-1.39,-2.22 -5.14,-2.78 -7.46,-1.37l-46.24,30.23l-45.67,-29.95c-2.6,-1.69 -6.36,-0.84 -7.52,0.85l-7.22,15.24c-1.45,2.25 -0.29,5.64 1.73,7.05l54.63,36.13Z' style='fill-rule:nonzero;'/%3E%3C/svg%3E");
295
+          -webkit-mask-repeat: no-repeat;
296
+          mask-repeat: no-repeat;
297
+          //width: 40px;
298
+          //height: 20px;
299
+          background-color: $color-white;
300
+          position: absolute;
301
+          right: 0;
302
+          top: 50%;
303
+          @include transform(translate(0,-50%));
304
+          pointer-events: none;
305
+          @include transition(all 0.25s);
306
+        }
307
+      }
308
+
309
+      &,
310
+      .label {
311
+        cursor: pointer;
312
+      }
313
+
314
+      &.trail {
315
+        color: $color-nav-hover;
316
+        background-color: mix($color-bg-secondary,#fff,60%);
317
+
318
+        .label {
319
+          &:after {
320
+            background-color: $color-bg-primary;
321
+            @include transform(translate(0,-50%) rotate(90deg));
322
+          }
323
+        }
324
+      }
325
+
326
+      &:hover { /** IE compatibility **/
327
+        background-color: mix($color-bg-secondary,#fff,60%);
328
+
329
+        .label {
330
+          color: $color-nav-hover;
331
+
332
+          &:after {
333
+            background-color: $color-bg-primary;
334
+          }
335
+        }
336
+      }
337
+
338
+      &:hover,
339
+      &:focus-within {
340
+        background-color: mix($color-bg-secondary,#fff,60%);
341
+
342
+        .label {
343
+          color: $color-nav-hover;
344
+
345
+          &:after {
346
+            background-color: $color-bg-primary;
347
+          }
348
+        }
349
+      }
350
+
351
+      &:focus-within a {
352
+        outline: none;
353
+      }
354
+
355
+      &:hover { /** IE compatibility **/
356
+        > .dropdown {
357
+          visibility: visible;
358
+          opacity: 1;
359
+          display: block;
360
+        }
361
+      }
362
+
363
+      &:hover,
364
+      &:focus-within {
365
+        > .dropdown {
366
+          visibility: visible;
367
+          opacity: 1;
368
+          display: block;
369
+        }
370
+      }
371
+
372
+      &:first-child {
373
+        margin-left: 0;
374
+        .dropdown {
375
+          left: 0;
376
+          @include transform(none);
377
+        }
378
+      }
379
+      &:last-child {
380
+        margin-right: 0;
381
+        .dropdown {
382
+          left: auto;
383
+          right: 0;
384
+          @include transform(none);
385
+        }
386
+      }
387
+
388
+      .dropdown {
389
+        @include transition(all 0.25s);
390
+        min-width: 100%;
391
+        max-width: 350px;
392
+        opacity: 0;
393
+        visibility: hidden;
394
+        position: absolute;
395
+        top: 100%;
396
+        left: 50%;
397
+        @include transform(translate(-50%,0));
398
+        cursor: default;
399
+
400
+        &.-large {
401
+          width: 350px;
402
+          max-width: calc(100vw - 40px);
403
+        }
404
+
405
+        ul {
406
+          margin-top: 2px;
407
+          padding: 5px 20px;
408
+          background-color: $color-bg-secondary;
409
+          background-color: mix($color-bg-secondary,#fff,60%);
410
+          @include border-radius(3px);
411
+
412
+          li {
413
+            text-align: left;
414
+            padding: 5px 0;
415
+
416
+            &.active {
417
+              a {
418
+                color: $color-nav-hover;
419
+                &:after {
420
+                  opacity: 1;
421
+                  //visibility: visible;
422
+                }
423
+              }
424
+              strong {
425
+                color: $color-link-alt;
426
+              }
427
+            }
428
+          }
429
+        }
430
+
431
+        a,
432
+        strong {
433
+          @include transition(all 0.25s);
434
+          display: block;
435
+          color: $color-text-invert;
436
+          text-transform: uppercase;
437
+          font-weight: 600;
438
+          font-size: font-size(12px);
439
+          letter-spacing: 0.2em;
440
+          line-height: 1.5;
441
+          position: relative;
442
+          padding-left: 30px;
443
+          @include text-overflow-ellipsis;
444
+
445
+          &:not(strong) {
446
+            &:before,
447
+            &:after {
448
+              position: absolute;
449
+              top: 0.75em;
450
+              left: 10px;
451
+              width: 18px;
452
+              height: 18px;
453
+              content: '';
454
+              @include transform(translate(-50%, -50%));
455
+              @include border-radius(2px);
456
+              @include box-sizing(border-box);
457
+            }
458
+
459
+            &:before {
460
+              border: 1px $color-text-invert solid;
461
+            }
462
+
463
+            &:after {
464
+              @include transition(all 0.25s);
465
+              width: 10px;
466
+              height: 10px;
467
+              background-color: $color-white;
468
+              opacity: 0;
469
+              /*visibility: hidden;*/
470
+            }
471
+          }
472
+
473
+          &:hover {
474
+            color: $color-nav-hover;
475
+
476
+            &:after {
477
+              opacity: 0.7;
478
+              /*visibility: visible;*/
479
+            }
480
+          }
481
+        }
482
+
483
+      }
484
+
485
+      &.nav {
486
+        .dropdown {
487
+          max-width: none;
488
+          .list-wrapper {
489
+            margin-top: 2px;
490
+            padding: 5px 20px;
491
+            background-color: $color-bg-secondary;
492
+            @include border-radius(3px);
493
+            overflow: hidden;
494
+
495
+            display: flex;
496
+            align-items: flex-start;
497
+            flex-wrap: wrap;
498
+            position: relative
499
+          }
500
+          ul {
501
+            margin-top: 0;
502
+            padding: 0;
503
+            background: none;
504
+            @include border-radius(unset);
505
+            > li {
506
+              width: 170px;
507
+              &:nth-child(1n+6) {
508
+                margin-left: 30px;
509
+              }
510
+            }
511
+          }
512
+          a,
513
+          strong {
514
+            padding-left: 0;
515
+
516
+            &:before,
517
+            &:after {
518
+              display: none;
519
+            }
520
+          }
521
+        }
522
+      }
523
+    }
524
+
525
+    @include for-tablet {
526
+      font-size: font-size(12px);
527
+
528
+      > li {
529
+        padding: 0 10px;
530
+      }
531
+    }
532
+    @include for-max-size(820px) {
533
+      flex-direction: column;
534
+
535
+      > li {
536
+        margin: 15px 0 0;
537
+        padding: 0 20px;
538
+        width: 100%;
539
+        text-align: left;
540
+        @include box-sizing(border-box);
541
+
542
+        > .dropdown {
543
+          height: auto;
544
+          max-height: 0;
545
+          position: relative;
546
+          left: auto;
547
+          right: auto;
548
+          bottom: auto;
549
+          top: auto;
550
+          min-width: 0;
551
+          max-width: none;
552
+          overflow-y: auto;
553
+          @include transform(none);
554
+          @include transition(all 0.25s 0.25s);
555
+          &.-large {
556
+            width: auto;
557
+            max-width: none;
558
+          }
559
+
560
+          a {
561
+            pointer-events: none;
562
+          }
563
+        }
564
+
565
+        &:hover,
566
+        &:focus-within {
567
+          > .dropdown {
568
+            height: auto;
569
+            max-height: 45em;
570
+            visibility: visible;
571
+            opacity: 1;
572
+            display: block;
573
+            a {
574
+              pointer-events: unset;
575
+            }
576
+          }
577
+        }
578
+      }
579
+    }
580
+  }
581
+}
582
+
583
+/**
584
+ * CART-BUTTON
585
+ */
586
+#cart-button {
587
+  position: fixed;
588
+  top: 33.333%;
589
+  right: 0;
590
+  margin-top: -33px;
591
+  height: 66px;
592
+  width: 66px;
593
+  z-index: 10;
594
+
595
+  a {
596
+    position: absolute;
597
+    right: 0;
598
+    left: 0;
599
+    top: 0;
600
+    bottom: 0;
601
+    display: block;
602
+    background-color: $color-bg-primary;
603
+    color: $color-bg-secondary;
604
+    text-align: center;
605
+    line-height: 66px;
606
+    //@include border-radius(60px);
607
+    /*-webkit-box-shadow: 2px 2px 10px -2px rgba(0,0,0,.7);
608
+    -moz-box-shadow: 2px 2px 10px -2px rgba(0,0,0,.7);
609
+    box-shadow: 2px 2px 10px -2px rgba(0,0,0,.7);*/
610
+    -webkit-transition: all 0.2s ease;
611
+    -moz-transition: all 0.2s ease;
612
+    -ms-transition: all 0.2s ease;
613
+    -o-transition: all 0.2s ease;
614
+    transition: all 0.2s ease;
615
+    text-decoration: none;
616
+    &:hover {
617
+      background-color: mix($color-bg-primary,#fff,90%);
618
+      color: $color-text-invert;
619
+
620
+      .ico {
621
+        path {
622
+          fill: $color-text-invert;
623
+        }
624
+      }
625
+    }
626
+  }
627
+
628
+  .ico {
629
+    vertical-align: 0;
630
+    width: 36px;
631
+    height: 36px;
632
+    path {
633
+      @include transition(all 0.2s ease);
634
+      fill: $color-bg-secondary;
635
+    }
636
+  }
637
+
638
+  .title {
639
+    @include font-alt;
640
+    display: block;
641
+    text-align: center;
642
+    line-height: 20px;
643
+    font-size: font-size(7px);
644
+    margin-top: -20px;
645
+  }
646
+
647
+  .amount {
648
+    width: 2em;
649
+    height: 2em;
650
+    text-align: center;
651
+    line-height: 2em;
652
+    font-size: font-size(12px);
653
+    background-color: $color-bg-secondary;
654
+    color: $color-text-invert;
655
+    display: block;
656
+    -webkit-border-radius: 99em;
657
+    -moz-border-radius: 99em;
658
+    border-radius: 99em;
659
+    position: absolute;
660
+    left: -12px;
661
+    top: -12px;
662
+    border: $color-bg-primary 1px solid;
663
+  }
664
+}
665
+
666
+// Cart
667
+#cart,
668
+.mod_iso_checkout .orderproducts,
669
+.mod_iso_orderdetails {
670
+  .collection {
671
+    position: relative;
672
+    margin-bottom: $gutter-default;
673
+
674
+    .product {
675
+      display: flex;
676
+      flex-wrap: wrap;
677
+      align-items: flex-end;
678
+      //margin: 0 -#{$gutter-default/2};
679
+      padding: $gutter-default/2 0;
680
+      border-top: 1px $color-bg-secondary solid;
681
+
682
+      &.row_first {
683
+        border-top: none;
684
+      }
685
+
686
+      > * {
687
+        flex: 1;
688
+        margin: 0 $gutter-default/2;
689
+      }
690
+
691
+      .image {
692
+        flex: 0 0 75px;
693
+        text-align: center;
694
+      }
695
+
696
+      .name {
697
+        align-self: flex-start;
698
+        flex-grow: 4;
699
+
700
+        ul {
701
+          font-size: font-size(14px);
702
+        }
703
+      }
704
+
705
+      .quantity {
706
+        label {
707
+          font-size: font-size(12px);
708
+          text-align: center;
709
+        }
710
+        flex: 0 0 3em;
711
+      }
712
+
713
+      .actions {
714
+        text-align: right;
715
+      }
716
+
717
+      .remove {
718
+        vertical-align: text-bottom;
719
+        text-indent: -999em;
720
+        overflow: hidden;
721
+        width: 18px;
722
+        height: 1.5em;
723
+        display: inline-block;
724
+        color: #900;
725
+        text-align: right;
726
+
727
+        &:before {
728
+          //@include iconfont;
729
+          content: "×";
730
+          line-height: 30px;
731
+          font-size: 30px;
732
+          display: block;
733
+        }
734
+      }
735
+    }
736
+
737
+    .price {
738
+      text-align: right;
739
+      font-weight: 400;
740
+    }
741
+
742
+    .summary {
743
+      display: flex;
744
+      align-items: flex-start;
745
+      //margin: 0 -#{$gutter-default/2};
746
+
747
+      &.foot_0 {
748
+        padding-top: $gutter-default/2;
749
+        border-top: 2px $color-bg-secondary solid;
750
+      }
751
+
752
+      &.total {
753
+        padding-top: $gutter-default/2;
754
+        font-weight: 700;
755
+      }
756
+
757
+      > * {
758
+        flex: 1;
759
+        margin: 0 $gutter-default/2;
760
+      }
761
+
762
+      .col_0 {
763
+        flex: 0 0 75px;
764
+      }
765
+
766
+      .name {
767
+        flex: 4 1 3em;
768
+        margin-left: $gutter-default*1.5;
769
+        text-align: right;
770
+      }
771
+    }
772
+  }
773
+
774
+  .submit_container {
775
+    display: flex;
776
+    align-items: center;
777
+
778
+    > {
779
+      .button_update {
780
+        margin-right: auto;
781
+      }
782
+      .button_checkout,
783
+      .next {
784
+        margin-left: auto;
785
+      }
786
+    }
787
+
788
+    button {
789
+      &.button_update {
790
+        @include button;
791
+      }
792
+      &.button_checkout,
793
+      &.next {
794
+        @include button;
795
+        margin-left: auto;
796
+        border-color: $color-bg-primary;
797
+        background: $color-bg-primary;
798
+        color: $color-text-invert;
799
+
800
+        &:after {
801
+          display: none;
802
+        }
803
+      }
804
+    }
805
+    @include for-max-size(500px) {
806
+      flex-wrap: wrap;
807
+
808
+      > * {
809
+        flex-basis: 100%;
810
+        flex-shrink: 0;
811
+        margin: 20px 0 0;
812
+
813
+        button.submit {
814
+          max-width: none;
815
+          display: block;
816
+          width: 100%;
817
+          margin: 0;
818
+        }
819
+      }
820
+    }
821
+  }
822
+
823
+  @media screen and (max-width:699px)
824
+  {
825
+    .collection {
826
+      .product {
827
+
828
+        > div {
829
+          order: 6;
830
+        }
831
+
832
+        .image {
833
+          order: 1;
834
+        }
835
+        .name {
836
+          flex: 0 1 calc(100% - (6 * #{$gutter-default} / 2) - 93px);
837
+          align-self: center;
838
+          order: 2;
839
+        }
840
+
841
+        .quantity {
842
+          //margin-left: calc(75px + (3 * 1.25%));
843
+          margin-left: auto;
844
+        }
845
+
846
+        .price:not(.total) {
847
+          flex: 0 0 5.25em;
848
+          text-align: right;
849
+        }
850
+
851
+        //.quantity,
852
+        .price.total {
853
+          flex: 0 0 100%-$gutter-default;
854
+          text-align: right;
855
+        }
856
+
857
+        .actions {
858
+          order: 3;
859
+        }
860
+      }
861
+
862
+      .summary {
863
+        .col_0 {
864
+          display: none;
865
+        }
866
+        .price.total {
867
+          flex: 0 0 5.25em;
868
+        }
869
+        .remove {
870
+          display: none;
871
+        }
872
+      }
873
+    }
874
+  }
875
+}
876
+
877
+.mod_iso_checkout {
878
+  .steps {
879
+    margin-top: auto;
880
+    margin-bottom: 40px;
881
+    ul {
882
+      display: flex;
883
+      justify-content: space-between;
884
+
885
+      li {
886
+        position: relative;
887
+        display: flex;
888
+        flex-direction: column;
889
+        align-items: center;
890
+        flex: 1;
891
+
892
+        &::before {
893
+          position: absolute;
894
+          content: "";
895
+          border-bottom: 2px solid $color-bg-primary;
896
+          width: 100%;
897
+          top: 20px;
898
+          left: -50%;
899
+          z-index: 2;
900
+        }
901
+
902
+        &::after {
903
+          position: absolute;
904
+          content: "";
905
+          border-bottom: 2px solid $color-bg-primary;
906
+          width: 100%;
907
+          top: 20px;
908
+          left: 50%;
909
+          z-index: 2;
910
+        }
911
+
912
+        &:first-child {
913
+          &::before {
914
+            content: none;
915
+          }
916
+        }
917
+
918
+        &:last-child {
919
+          &::after {
920
+            content: none;
921
+          }
922
+        }
923
+
924
+        &.active {
925
+          .counter {
926
+            background: $color-bg-primary;
927
+            color: $color-text-invert;
928
+          }
929
+        }
930
+
931
+        &.passed {
932
+          .counter {
933
+            background: $color-bg-secondary;
934
+            color: $color-text-invert;
935
+          }
936
+        }
937
+
938
+        &:not(.passed):not(.active) {
939
+          .label {
940
+            color: $color-bg-tertiary;
941
+          }
942
+        }
943
+      }
944
+
945
+      .counter {
946
+        position: relative;
947
+        z-index: 5;
948
+        display: flex;
949
+        justify-content: center;
950
+        align-items: center;
951
+        width: 40px;
952
+        height: 40px;
953
+        border-radius: 50%;
954
+        background: $color-bg-tertiary;
955
+        color: $color-text;
956
+        margin-bottom: 6px;
957
+      }
958
+
959
+      .label {
960
+        @include font-alt;
961
+        font-size: font-size(12px);
962
+      }
963
+    }
964
+  }
965
+
966
+  .address_new .grid-holder {
967
+    display: grid;
968
+    grid-template-columns: repeat(3, 1fr);
969
+    column-gap: 20px;
970
+    row-gap: 1.5rem;
971
+    .widget {
972
+      margin-bottom: 0;
973
+    }
974
+
975
+    @include for-tablet {
976
+      grid-template-columns: repeat(2, 1fr);
977
+    }
978
+
979
+    @include for-mobile {
980
+      grid-template-columns: repeat(1, 1fr);
981
+    }
982
+  }
983
+
984
+  .widget-checkbox,
985
+  .widget-radio {
986
+    > fieldset {
987
+      display: grid;
988
+      grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
989
+      column-gap: 10px;
990
+      row-gap: 10px;
991
+      > span {
992
+        background-color: $color-bg-lightplatin;
993
+        padding: 1em 1em 1em 2.75em;
994
+        @include box-sizing(content-box);
995
+      }
996
+    }
997
+    input[type="radio"],
998
+    input[type="checkbox"] {
999
+      top: 1.125em;
1000
+      left: 1em;
1001
+    }
1002
+  }
1003
+
1004
+  .submit_container {
1005
+    margin-top: 1.5em;
1006
+    display: grid;
1007
+    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
1008
+    column-gap: 10px;
1009
+    row-gap: 10px;
1010
+
1011
+    > * {
1012
+      text-align: center;
1013
+      &:first-child {
1014
+        text-align: left;
1015
+      }
1016
+      &:last-child {
1017
+        text-align: right;
1018
+      }
1019
+    }
1020
+
1021
+    button {
1022
+      &.next {
1023
+        border-color: $color-bg-primary;
1024
+        background: $color-bg-primary;
1025
+        color: $color-text-invert;
1026
+      }
1027
+    }
1028
+  }
1029
+
1030
+  .info_containers {
1031
+    display: grid;
1032
+    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
1033
+    column-gap: 10px;
1034
+    row-gap: 10px;
1035
+    align-items: stretch;
1036
+    padding: 0;
1037
+    margin-bottom: $gutter-default;
1038
+
1039
+    > * {
1040
+      background-color: $color-bg-lightplatin;
1041
+      display: block;
1042
+      position: relative;
1043
+      text-transform: none;
1044
+      font-size: font-size(14px);
1045
+      font-weight: 400;
1046
+      padding: 15px;
1047
+    }
1048
+
1049
+    h4 {
1050
+      font-family: $font-family;
1051
+      font-size: font-size(14px);
1052
+      line-height: 1.3;
1053
+      font-weight: 600;
1054
+      text-transform: uppercase;
1055
+      padding: 0;
1056
+      display: block;
1057
+      min-height: 2*1.3em;
1058
+    }
1059
+
1060
+    @include for-tablet {
1061
+      flex-direction: column;
1062
+
1063
+      > * {
1064
+        margin-left: 0;
1065
+        margin-top: 10px;
1066
+        &:first-child {
1067
+          margin-top: 0;
1068
+        }
1069
+      }
1070
+    }
1071
+  }
1072
+
1073
+  .edit {
1074
+    margin-left: 10px;
1075
+    float: right;
1076
+    font-size: font-size(10px);
1077
+    text-transform: uppercase;
1078
+    letter-spacing: 0.1em;
1079
+    color: $color-text;
1080
+    font-weight: 600;
1081
+    line-height: 16px;
1082
+
1083
+    svg {
1084
+      font-size: 16px;
1085
+      vertical-align: bottom;
1086
+      @include transition(all 0.25s);
1087
+      use {
1088
+        --color1: currentColor;
1089
+        --color2: currentColor;
1090
+      }
1091
+    }
1092
+
1093
+    &:hover {
1094
+      svg {
1095
+        color: $color-link;
1096
+        use {
1097
+          --color1: currentColor;
1098
+          --color2: currentColor;
1099
+        }
1100
+      }
1101
+    }
1102
+  }
1103
+
1104
+  .orderproducts {
1105
+    background-color: $color-bg-lightplatin;
1106
+    position: relative;
1107
+    padding: 15px;
1108
+    margin-bottom: $gutter-default;
1109
+
1110
+    .boxed {
1111
+      margin-bottom: 1.5em;
1112
+    }
1113
+
1114
+    .edit {
1115
+      line-height: 1.5*font-size(18px);
1116
+      svg {
1117
+        height: 1.5*font-size(18px);
1118
+      }
1119
+    }
1120
+
1121
+    .collection-header {
1122
+      margin-bottom: 20px;
1123
+    }
1124
+  }
1125
+}
1126
+
1127
+.mod_iso_orderdetails {
1128
+  .info_containers {
1129
+    display: grid;
1130
+    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
1131
+    column-gap: 10px;
1132
+    row-gap: 10px;
1133
+    align-items: stretch;
1134
+    padding: 0;
1135
+    margin-bottom: $gutter-default;
1136
+
1137
+    > * {
1138
+      background-color: $color-bg-lightplatin;
1139
+      display: block;
1140
+      position: relative;
1141
+      text-transform: none;
1142
+      font-size: font-size(14px);
1143
+      font-weight: 400;
1144
+      padding: 15px;
1145
+    }
1146
+
1147
+    h4 {
1148
+      font-family: $font-family;
1149
+      font-size: font-size(14px);
1150
+      line-height: 1.3;
1151
+      font-weight: 600;
1152
+      text-transform: uppercase;
1153
+      padding: 0;
1154
+      display: block;
1155
+      min-height: 2*1.3em;
1156
+    }
1157
+
1158
+    @include for-tablet {
1159
+      flex-direction: column;
1160
+
1161
+      > * {
1162
+        margin-left: 0;
1163
+        margin-top: 10px;
1164
+        &:first-child {
1165
+          margin-top: 0;
1166
+        }
1167
+      }
1168
+    }
1169
+  }
1170
+}