@gemboss/gem-framework 0.6.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +63 -1
  2. package/dist/SOURCE.json +2 -2
  3. package/dist/gem-framework.css +206 -147
  4. package/dist/gem-runtime.js +93 -15
  5. package/dist/index.js +629 -178
  6. package/dist/plugins/before_after.d.ts +9 -0
  7. package/dist/plugins/before_after.js +37 -0
  8. package/dist/plugins/carousel.d.ts +9 -0
  9. package/dist/plugins/carousel.js +49 -0
  10. package/dist/plugins/cart-drawer.d.ts +9 -0
  11. package/dist/plugins/cart-drawer.js +69 -0
  12. package/dist/plugins/context-adapter.d.ts +9 -0
  13. package/dist/plugins/context-adapter.js +17 -0
  14. package/dist/plugins/countdown.d.ts +9 -0
  15. package/dist/plugins/countdown.js +164 -0
  16. package/dist/plugins/disclosure.d.ts +9 -0
  17. package/dist/plugins/disclosure.js +40 -0
  18. package/dist/plugins/hero-slideshow.d.ts +9 -0
  19. package/dist/plugins/hero-slideshow.js +57 -0
  20. package/dist/plugins/localization.d.ts +9 -0
  21. package/dist/plugins/localization.js +37 -0
  22. package/dist/plugins/media-gallery.d.ts +9 -0
  23. package/dist/plugins/media-gallery.js +57 -0
  24. package/dist/plugins/mobile-menu.d.ts +9 -0
  25. package/dist/plugins/mobile-menu.js +51 -0
  26. package/dist/plugins/offer-engine.d.ts +9 -0
  27. package/dist/plugins/offer-engine.js +57 -0
  28. package/dist/plugins/predictive-search.d.ts +9 -0
  29. package/dist/plugins/predictive-search.js +77 -0
  30. package/dist/plugins/promo-popup.d.ts +9 -0
  31. package/dist/plugins/promo-popup.js +117 -0
  32. package/dist/plugins/quantity-input.d.ts +9 -0
  33. package/dist/plugins/quantity-input.js +44 -0
  34. package/dist/plugins/quick-view.d.ts +9 -0
  35. package/dist/plugins/quick-view.js +69 -0
  36. package/dist/plugins/recently-viewed.d.ts +9 -0
  37. package/dist/plugins/recently-viewed.js +71 -0
  38. package/dist/plugins/reveal-on-scroll.d.ts +9 -0
  39. package/dist/plugins/reveal-on-scroll.js +37 -0
  40. package/dist/plugins/runtime-slot-loader.d.ts +9 -0
  41. package/dist/plugins/runtime-slot-loader.js +29 -0
  42. package/dist/plugins/seasonal-effects.d.ts +9 -0
  43. package/dist/plugins/seasonal-effects.js +17 -0
  44. package/dist/plugins/sticky-atc.d.ts +9 -0
  45. package/dist/plugins/sticky-atc.js +43 -0
  46. package/dist/plugins/tabs.d.ts +9 -0
  47. package/dist/plugins/tabs.js +50 -0
  48. package/dist/plugins/variant-selects.d.ts +9 -0
  49. package/dist/plugins/variant-selects.js +70 -0
  50. package/dist/popup-shell.css +91 -0
  51. package/dist/primitives.css +1430 -0
  52. package/dist/runtime-core.d.ts +51 -0
  53. package/dist/runtime-core.js +176 -0
  54. package/dist/section-gate.js +315 -86
  55. package/dist/sections.css +1116 -0
  56. package/dist/tokens.css +67 -0
  57. package/package.json +21 -1
@@ -0,0 +1,1116 @@
1
+ .page-width {
2
+ max-width: var(--page-width, var(--gem-layout-page, 1200px));
3
+ margin: 0 auto;
4
+ padding: 0 1.5rem;
5
+ }
6
+ @media screen and (min-width: 750px) {
7
+ .page-width { padding: 0 5rem; }
8
+ }
9
+ .list-unstyled {
10
+ margin: 0;
11
+ padding: 0;
12
+ list-style: none;
13
+ }
14
+ .link, .link--text {
15
+ color: inherit;
16
+ text-decoration: none;
17
+ }
18
+ .focus-inset:focus-visible {
19
+ outline: 0.2rem solid rgba(var(--color-foreground, 18 18 18), 0.5);
20
+ outline-offset: 0.3rem;
21
+ }
22
+ .h2, .h5, .inline-richtext {
23
+ font-family: var(--gem-font-heading);
24
+ }
25
+ .h2 { font-size: 2rem; line-height: 1.15; }
26
+ .h5 { font-size: 1.2rem; line-height: 1.3; }
27
+ .utility-bar {
28
+ border-bottom: 0.1rem solid rgba(var(--color-foreground, 18 18 18), 0.08);
29
+ background: var(--gem-color-surface);
30
+ }
31
+ .utility-bar__grid {
32
+ display: grid;
33
+ grid-template-columns: 1fr;
34
+ align-items: center;
35
+ min-height: 3.8rem;
36
+ }
37
+ .utility-bar__grid--2-col, .utility-bar__grid--3-col {
38
+ grid-template-columns: 1fr auto;
39
+ }
40
+ .announcement-bar {
41
+ color: var(--gem-color-text);
42
+ text-align: center;
43
+ }
44
+ .announcement-bar__message {
45
+ margin: 0;
46
+ padding: 1rem 0;
47
+ min-height: 3.8rem;
48
+ display: flex;
49
+ align-items: center;
50
+ justify-content: center;
51
+ letter-spacing: 0;
52
+ }
53
+ .announcement-bar__link {
54
+ display: block;
55
+ width: 100%;
56
+ }
57
+ .gem-shell-header .localization-wrapper {
58
+ display: none !important;
59
+ }
60
+ .header-wrapper {
61
+ display: block;
62
+ position: relative;
63
+ background: var(--gem-color-background);
64
+ z-index: 3;
65
+ }
66
+ .header-wrapper--border-bottom {
67
+ border-bottom: 0.1rem solid rgba(var(--color-foreground, 18 18 18), 0.08);
68
+ }
69
+ sticky-header.header-wrapper {
70
+ position: sticky;
71
+ top: 0;
72
+ }
73
+ .header {
74
+ display: grid;
75
+ grid-template-areas: 'heading navigation icons';
76
+ grid-template-columns: auto 1fr auto;
77
+ align-items: center;
78
+ column-gap: 2rem;
79
+ padding-top: 20px;
80
+ padding-bottom: 20px;
81
+ }
82
+ .header--middle-left { grid-template-areas: 'heading navigation icons'; }
83
+ .header--middle-center { grid-template-areas: 'navigation heading icons'; grid-template-columns: 1fr auto 1fr; }
84
+ .header__heading-link, .gem-shell-header__logo {
85
+ grid-area: heading;
86
+ justify-self: start;
87
+ line-height: 1;
88
+ }
89
+ .header__heading-logo-wrapper {
90
+ display: inline-block;
91
+ max-width: 100%;
92
+ }
93
+ .header__heading-logo {
94
+ height: auto;
95
+ max-width: 100%;
96
+ }
97
+ .header .gem-shell-header__nav {
98
+ grid-area: navigation;
99
+ justify-content: flex-start;
100
+ }
101
+ .header .gem-shell-header__actions {
102
+ grid-area: icons;
103
+ justify-content: flex-end;
104
+ }
105
+ .header__icon, .gem-shell-header__action {
106
+ color: inherit;
107
+ display: inline-flex;
108
+ align-items: center;
109
+ justify-content: center;
110
+ min-width: 4.4rem;
111
+ min-height: 4.4rem;
112
+ padding: 0 0.8rem;
113
+ text-decoration: none;
114
+ }
115
+ .cart-count-bubble, .gem-shell-header__cart-count {
116
+ display: inline-flex;
117
+ align-items: center;
118
+ justify-content: center;
119
+ min-width: 1.7rem;
120
+ height: 1.7rem;
121
+ border-radius: 50%;
122
+ background: rgb(var(--color-button, 18 18 18));
123
+ color: rgb(var(--color-button-text, 255 255 255));
124
+ font-size: 0.9rem;
125
+ }
126
+ .menu-drawer-container, .gem-shell-header__drawer {
127
+ display: flex;
128
+ }
129
+ .drawer-menu .gem-shell-header__nav { display: none; }
130
+ .footer {
131
+ border-top: 0.1rem solid rgba(var(--color-foreground, 18 18 18), 0.08);
132
+ background: var(--gem-color-background);
133
+ }
134
+ .footer__content-top, .gem-shell-footer__inner {
135
+ padding-bottom: 5rem;
136
+ }
137
+ .footer__blocks-wrapper {
138
+ display: grid;
139
+ gap: 3rem;
140
+ }
141
+ @media screen and (min-width: 750px) {
142
+ .footer__blocks-wrapper.grid--4-col-tablet { grid-template-columns: repeat(4, minmax(0, 1fr)); }
143
+ }
144
+ .footer-block__heading {
145
+ margin: 0 0 2rem;
146
+ font-size: 1.6rem;
147
+ }
148
+ .footer-block__details-content {
149
+ display: grid;
150
+ gap: 1rem;
151
+ color: rgba(var(--color-foreground, 18 18 18), 0.75);
152
+ }
153
+ .footer-block__details-content .list-menu__item--link {
154
+ padding: 0;
155
+ }
156
+ .footer-block--newsletter {
157
+ display: flex;
158
+ flex-wrap: wrap;
159
+ justify-content: space-between;
160
+ gap: 3rem;
161
+ margin-top: 3rem;
162
+ }
163
+ .newsletter-form__field-wrapper, .field {
164
+ position: relative;
165
+ }
166
+ .field__input, .field input, .gem-input {
167
+ min-height: 4.5rem;
168
+ border-radius: var(--inputs-radius, 0);
169
+ }
170
+ .footer__content-bottom {
171
+ border-top: 0.1rem solid rgba(var(--color-foreground, 18 18 18), 0.08);
172
+ padding-top: 3rem;
173
+ }
174
+ .footer__content-bottom-wrapper {
175
+ display: flex;
176
+ width: 100%;
177
+ justify-content: space-between;
178
+ gap: 1.5rem;
179
+ }
180
+ .footer__copyright, .copyright__content, .policies {
181
+ font-size: 1.1rem;
182
+ }
183
+ .policies {
184
+ display: inline-flex;
185
+ gap: 1.5rem;
186
+ margin: 0;
187
+ padding: 0;
188
+ list-style: none;
189
+ }
190
+ .gem-shell-header, .gem-shell-footer {
191
+ color: var(--gem-color-text);
192
+ background: var(--gem-color-surface);
193
+ border-color: var(--gem-color-border);
194
+ }
195
+ .gem-shell-header {
196
+ border-bottom: var(--gem-border-subtle, 1px solid var(--gem-color-border));
197
+ min-height: var(--gem-component-header-height, 72px);
198
+ z-index: 20;
199
+ }
200
+ .gem-shell-header--sticky {
201
+ position: sticky;
202
+ top: 0;
203
+ }
204
+ .gem-shell-header--editorial {
205
+ background: color-mix(in srgb, var(--gem-color-surface) 88%, transparent);
206
+ backdrop-filter: blur(14px);
207
+ }
208
+ .gem-shell-header--overlay.gem-shell-header--transparent-start {
209
+ background: color-mix(in srgb, var(--gem-color-text) 18%, transparent);
210
+ color: var(--gem-color-surface);
211
+ border-bottom-color: color-mix(in srgb, var(--gem-color-surface) 24%, transparent);
212
+ backdrop-filter: blur(10px);
213
+ }
214
+ .gem-shell-header--overlay .gem-shell-header__actions .gem-shell-header__action--cart {
215
+ color: var(--gem-color-surface);
216
+ }
217
+ .gem-shell-header--scroll-background[data-gem-header-contrast-state='solid'] {
218
+ background: var(--gem-color-surface);
219
+ color: var(--gem-color-text);
220
+ }
221
+ .gem-shell-header--search-led, .gem-shell-header--mega-menu {
222
+ box-shadow: var(--gem-shadow-sm, none);
223
+ }
224
+ .gem-shell-header--split-nav .gem-shell-header__inner {
225
+ grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
226
+ }
227
+ .gem-shell-header--split-nav .gem-shell-header__logo {
228
+ grid-column: 2;
229
+ }
230
+ .gem-shell-header--split-nav .gem-shell-header__nav {
231
+ grid-column: 1;
232
+ grid-row: 1;
233
+ justify-content: flex-start;
234
+ }
235
+ .gem-shell-header--split-nav .gem-shell-header__actions {
236
+ grid-column: 3;
237
+ grid-row: 1;
238
+ justify-content: flex-end;
239
+ }
240
+ .gem-shell-header--marketplace {
241
+ --gem-component-header-height: 80px;
242
+ }
243
+ .gem-shell-header--promo-stack .gem-shell-header__announcement, .gem-shell-header__utility {
244
+ font-size: 0.8125rem;
245
+ }
246
+ .gem-shell-header__announcement {
247
+ background: var(--gem-color-accent);
248
+ color: var(--gem-color-accent-text, var(--gem-color-surface));
249
+ padding: var(--gem-space-sm) var(--gem-space-md);
250
+ text-align: center;
251
+ font-size: 0.875rem;
252
+ font-weight: 650;
253
+ }
254
+ .gem-shell-header__utility {
255
+ display: flex;
256
+ justify-content: space-between;
257
+ align-items: center;
258
+ gap: var(--gem-space-md);
259
+ width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px)));
260
+ margin-inline: auto;
261
+ padding-block: var(--gem-space-xs);
262
+ color: var(--gem-color-muted, color-mix(in srgb, var(--gem-color-text) 72%, transparent));
263
+ }
264
+ .gem-shell-header__utility nav {
265
+ display: flex;
266
+ gap: var(--gem-space-md);
267
+ }
268
+ .gem-shell-header__inner, .gem-shell-footer__inner {
269
+ width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px)));
270
+ margin-inline: auto;
271
+ }
272
+ .gem-shell-header__inner {
273
+ min-height: var(--gem-component-header-height, 72px);
274
+ display: grid;
275
+ grid-template-columns: auto minmax(0, 1fr) auto;
276
+ align-items: center;
277
+ gap: var(--gem-space-md);
278
+ }
279
+ .gem-shell-header__logo {
280
+ color: inherit;
281
+ font-family: var(--gem-font-heading);
282
+ font-weight: 750;
283
+ text-decoration: none;
284
+ }
285
+ .gem-shell-header__drawer {
286
+ display: none;
287
+ }
288
+ .gem-shell-header__drawer-toggle {
289
+ list-style: none;
290
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
291
+ border-radius: var(--gem-radius-md);
292
+ padding: var(--gem-space-sm) var(--gem-space-md);
293
+ font-weight: 700;
294
+ cursor: pointer;
295
+ }
296
+ .gem-shell-header__drawer-toggle::-webkit-details-marker {
297
+ display: none;
298
+ }
299
+ .gem-shell-header__drawer-panel {
300
+ position: absolute;
301
+ inset-inline: 0;
302
+ top: 100%;
303
+ border-top: var(--gem-border-subtle, 1px solid var(--gem-color-border));
304
+ border-bottom: var(--gem-border-subtle, 1px solid var(--gem-color-border));
305
+ background: var(--gem-color-surface);
306
+ padding: var(--gem-space-md);
307
+ box-shadow: var(--gem-shadow-md, none);
308
+ }
309
+ .gem-shell-header__drawer-nav, .gem-shell-header__drawer-actions {
310
+ display: grid;
311
+ gap: var(--gem-space-sm);
312
+ }
313
+ .gem-shell-header__drawer-actions {
314
+ margin-top: var(--gem-space-md);
315
+ padding-top: var(--gem-space-md);
316
+ border-top: var(--gem-border-subtle, 1px solid var(--gem-color-border));
317
+ }
318
+ .gem-shell-header__nav, .gem-shell-header__actions {
319
+ display: flex;
320
+ align-items: center;
321
+ gap: var(--gem-space-md);
322
+ }
323
+ .gem-shell-header__nav--editorial {
324
+ justify-content: center;
325
+ font-family: var(--gem-font-heading);
326
+ }
327
+ .gem-shell-header__nav--mega {
328
+ font-weight: 650;
329
+ }
330
+ .gem-shell-header__nav a, .gem-shell-header__actions a, .gem-shell-footer a {
331
+ color: inherit;
332
+ text-decoration: none;
333
+ }
334
+ .gem-shell-header__action--search, .gem-shell-header__action--cart {
335
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
336
+ border-radius: var(--gem-radius-md);
337
+ padding: var(--gem-space-sm) var(--gem-space-md);
338
+ }
339
+ .gem-shell-header__actions .gem-shell-header__action--cart {
340
+ background: var(--gem-color-accent);
341
+ color: var(--gem-color-accent-text, var(--gem-color-surface));
342
+ white-space: nowrap;
343
+ }
344
+ .gem-shell-header__actions .gem-shell-header__action--cart * {
345
+ color: inherit;
346
+ }
347
+ .gem-shell-header__cart-count {
348
+ display: inline-flex;
349
+ align-items: center;
350
+ justify-content: center;
351
+ min-inline-size: 1.5em;
352
+ min-block-size: 1.5em;
353
+ border-radius: var(--gem-radius-pill, 999px);
354
+ background: color-mix(in srgb, currentColor 14%, transparent);
355
+ font-size: 0.8125rem;
356
+ }
357
+ .gem-shell-header__mega, .gem-shell-header__departments, .gem-shell-header__promo-stack, .gem-shell-header__quicklinks, .gem-shell-header__trust-signal, .gem-shell-header__editorial-note, .gem-shell-header__search {
358
+ width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px)));
359
+ margin-inline: auto;
360
+ border-top: var(--gem-border-subtle, 1px solid var(--gem-color-border));
361
+ }
362
+ .gem-shell-header__mega, .gem-shell-header__departments, .gem-shell-header__promo-stack, .gem-shell-header__quicklinks {
363
+ display: grid;
364
+ grid-template-columns: repeat(3, minmax(0, 1fr));
365
+ gap: var(--gem-space-md);
366
+ padding-block: var(--gem-space-md);
367
+ }
368
+ .gem-shell-header__departments {
369
+ grid-template-columns: repeat(4, minmax(0, 1fr));
370
+ }
371
+ .gem-shell-header__promo-stack {
372
+ grid-template-columns: 2fr repeat(2, minmax(0, 1fr));
373
+ }
374
+ .gem-shell-header__quicklinks {
375
+ grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
376
+ }
377
+ .gem-shell-header__trust-signal {
378
+ padding-block: var(--gem-space-sm);
379
+ color: var(--gem-color-muted, color-mix(in srgb, var(--gem-color-text) 72%, transparent));
380
+ font-size: 0.875rem;
381
+ }
382
+ .gem-shell-header__mega a, .gem-shell-header__mega span, .gem-shell-header__departments a, .gem-shell-header__departments span, .gem-shell-header__promo-stack a, .gem-shell-header__promo-stack span, .gem-shell-header__quicklinks a {
383
+ border-radius: var(--gem-radius-md);
384
+ background: var(--gem-color-background);
385
+ padding: var(--gem-space-md);
386
+ }
387
+ .gem-shell-header__search {
388
+ display: flex;
389
+ gap: var(--gem-space-sm);
390
+ padding-block: var(--gem-space-sm);
391
+ }
392
+ .gem-shell-header__search input {
393
+ flex: 1;
394
+ min-width: 0;
395
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
396
+ border-radius: var(--gem-radius-md);
397
+ padding: var(--gem-space-md);
398
+ }
399
+ .gem-shell-header__search button {
400
+ border: 0;
401
+ border-radius: var(--gem-radius-md);
402
+ background: var(--gem-color-accent);
403
+ color: var(--gem-color-accent-text, var(--gem-color-surface));
404
+ padding-inline: var(--gem-space-lg);
405
+ font-weight: 700;
406
+ }
407
+ .gem-shell-header__search--sticky {
408
+ position: sticky;
409
+ top: var(--gem-component-header-height, 72px);
410
+ z-index: 19;
411
+ background: var(--gem-color-surface);
412
+ }
413
+ .gem-shell-header__editorial-note {
414
+ padding-block: var(--gem-space-sm);
415
+ text-align: center;
416
+ font-family: var(--gem-font-heading);
417
+ color: var(--gem-color-muted, color-mix(in srgb, var(--gem-color-text) 72%, transparent));
418
+ }
419
+ .gem-shell-footer {
420
+ border-top: var(--gem-border-subtle, 1px solid var(--gem-color-border));
421
+ padding-block: var(--gem-layout-section, 64px);
422
+ }
423
+ .gem-shell-footer__newsletter {
424
+ display: grid;
425
+ gap: var(--gem-space-md);
426
+ margin-bottom: var(--gem-space-xl);
427
+ }
428
+ .gem-shell-footer__newsletter form {
429
+ display: flex;
430
+ gap: var(--gem-space-sm);
431
+ flex-wrap: wrap;
432
+ }
433
+ .gem-shell-footer__newsletter input, .gem-shell-footer__newsletter button {
434
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
435
+ border-radius: var(--gem-radius-md);
436
+ padding: var(--gem-space-md);
437
+ background: var(--gem-color-surface);
438
+ color: var(--gem-color-text);
439
+ }
440
+ .gem-shell-footer__newsletter button {
441
+ background: var(--gem-color-accent);
442
+ color: var(--gem-color-accent-text, var(--gem-color-surface));
443
+ font-weight: 700;
444
+ }
445
+ .gem-shell-footer__grid {
446
+ display: grid;
447
+ grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
448
+ gap: var(--gem-space-lg);
449
+ }
450
+ .gem-shell-footer__grid > div, .gem-shell-footer__column {
451
+ display: grid;
452
+ gap: var(--gem-space-sm);
453
+ }
454
+ .gem-shell-footer__column {
455
+ align-content: start;
456
+ }
457
+ .gem-shell-footer__column summary {
458
+ min-height: 2.75rem;
459
+ display: flex;
460
+ align-items: center;
461
+ cursor: pointer;
462
+ font-weight: 700;
463
+ }
464
+ .gem-shell-footer__column [data-gem-footer-accordion-panel] {
465
+ display: grid;
466
+ gap: var(--gem-space-sm);
467
+ }
468
+ .gem-shell-footer__story, .gem-shell-footer__compliance, .gem-shell-footer__offer, .gem-shell-footer__support, .gem-shell-footer__community, .gem-shell-footer__markets {
469
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
470
+ border-radius: var(--gem-radius-md);
471
+ background: var(--gem-color-background);
472
+ padding: var(--gem-space-lg);
473
+ margin-bottom: var(--gem-space-xl);
474
+ }
475
+ .gem-shell-footer__story h2 {
476
+ margin: 0;
477
+ font-family: var(--gem-font-heading);
478
+ }
479
+ .gem-shell-footer__compliance strong {
480
+ display: block;
481
+ margin-bottom: var(--gem-space-sm);
482
+ }
483
+ .gem-shell-footer__offer {
484
+ background: var(--gem-color-accent);
485
+ color: var(--gem-color-accent-text, var(--gem-color-surface));
486
+ font-weight: 700;
487
+ }
488
+ .gem-shell-footer--sitemap .gem-shell-footer__grid {
489
+ grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
490
+ }
491
+ .gem-shell-footer--community .gem-shell-footer__community h2 {
492
+ margin: 0;
493
+ font-family: var(--gem-font-heading);
494
+ }
495
+ .gem-shell-footer__trust {
496
+ display: flex;
497
+ flex-wrap: wrap;
498
+ gap: var(--gem-space-sm);
499
+ margin-top: var(--gem-space-xl);
500
+ }
501
+ .gem-shell-footer__trust span {
502
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
503
+ border-radius: var(--gem-radius-md);
504
+ padding: var(--gem-space-sm) var(--gem-space-md);
505
+ }
506
+ .gem-shell-footer__bottom {
507
+ display: flex;
508
+ flex-wrap: wrap;
509
+ align-items: center;
510
+ justify-content: space-between;
511
+ gap: var(--gem-space-md);
512
+ margin-top: var(--gem-space-xl);
513
+ padding-top: var(--gem-space-lg);
514
+ border-top: var(--gem-border-subtle, 1px solid var(--gem-color-border));
515
+ }
516
+ .gem-shell-footer__social, .gem-shell-footer__payments {
517
+ display: flex;
518
+ flex-wrap: wrap;
519
+ align-items: center;
520
+ gap: var(--gem-space-xs);
521
+ margin: 0;
522
+ padding: 0;
523
+ list-style: none;
524
+ }
525
+ .gem-shell-footer__payment-icon {
526
+ width: 2.375rem;
527
+ height: auto;
528
+ }
529
+ .gem-shell-footer__social a {
530
+ display: inline-flex;
531
+ min-height: 2.25rem;
532
+ align-items: center;
533
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
534
+ border-radius: var(--gem-radius-md);
535
+ padding: var(--gem-space-xs) var(--gem-space-sm);
536
+ }
537
+ .gem-shell-footer__localization {
538
+ min-width: min(18rem, 100%);
539
+ }
540
+ .gem-shell-footer__localization .gem-select {
541
+ width: 100%;
542
+ }
543
+ @media (max-width: 760px) {
544
+ .gem-shell-header { position: sticky; top: 0; }
545
+ .gem-shell-header__inner { grid-template-columns: auto minmax(0, 1fr) auto; }
546
+ .gem-shell-header--split-nav .gem-shell-header__inner { grid-template-columns: auto 1fr auto; }
547
+ .gem-shell-header--split-nav .gem-shell-header__logo, .gem-shell-header--split-nav .gem-shell-header__nav, .gem-shell-header--split-nav .gem-shell-header__actions { grid-column: auto; grid-row: auto; }
548
+ .gem-shell-header__drawer { display: block; }
549
+ .gem-shell-header__drawer { order: -1; }
550
+ .gem-shell-header__nav { display: none; }
551
+ .gem-shell-header__actions { gap: var(--gem-space-xs); }
552
+ .gem-shell-header__actions .gem-shell-header__action:not(.gem-shell-header__action--cart) { display: none; }
553
+ .gem-shell-header__utility, .gem-shell-header__departments, .gem-shell-header__promo-stack, .gem-shell-header__quicklinks, .gem-shell-header__mega { grid-template-columns: 1fr; }
554
+ }
555
+
556
+ .gem-section {
557
+ color: var(--gem-color-text);
558
+ background: var(--gem-color-background);
559
+ padding-block: var(--gem-layout-section, var(--gem-space-3xl, 64px));
560
+ overflow: clip;
561
+ }
562
+ .gem-section__inner {
563
+ width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px)));
564
+ margin-inline: auto;
565
+ display: grid;
566
+ gap: var(--gem-space-lg);
567
+ }
568
+ .gem-section { font-family: var(--gem-font-body); }
569
+ .gem-section [class*="__copy"] ul, .gem-section [class*="__copy"] ol { list-style: none; padding-left: 0; margin: var(--gem-space-sm, 12px) 0 0; }
570
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='left'] .gem-section__inner { justify-items: start; }
571
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='left'] :is(.gem-section__inner, .gem-hero-banner__copy, [class*='__content']) { text-align: left; }
572
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='center'] .gem-section__inner { justify-items: center; }
573
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='center'] :is(.gem-section__inner, .gem-hero-banner__copy, [class*='__content']) { text-align: center; }
574
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='right'] .gem-section__inner { justify-items: end; }
575
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment='right'] :is(.gem-section__inner, .gem-hero-banner__copy, [class*='__content']) { text-align: right; }
576
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-alignment] .gem-section__inner > :is([class*='__grid'], [class*='__media'], [class*='__mosaic'], [class*='__masonry'], [class*='__frame'], [class*='__collage'], [class*='__row']) { justify-self: stretch; width: 100%; }
577
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='top'] .gem-hero-banner__copy { top: 50px; bottom: auto; }
578
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='center'] .gem-hero-banner__copy { top: 50%; bottom: auto; transform: translate(-50%, -50%); }
579
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='bottom'] .gem-hero-banner__copy { bottom: 50px; top: auto; }
580
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='top'] .gem-section__inner { align-content: start; }
581
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='center'] .gem-section__inner { align-content: center; }
582
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-position='bottom'] .gem-section__inner { align-content: end; }
583
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-media-position='left'] .gem-section__inner > [class*='__media'], :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-media-position='left'] .gem-section__inner > [class*='__grid'] > [class*='__media'] { order: -1; }
584
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-media-position='right'] .gem-section__inner > [class*='__media'], :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-media-position='right'] .gem-section__inner > [class*='__grid'] > [class*='__media'] { order: 1; }
585
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-spacing='tight'] .gem-section__inner { gap: var(--gem-space-sm); }
586
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-spacing='normal'] .gem-section__inner { gap: var(--gem-space-lg); }
587
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-spacing='roomy'] .gem-section__inner { gap: var(--gem-space-3xl); }
588
+ :is(.gem-hero-banner, .gem-hero-video, .gem-hero)[data-gem-content-spacing='tight'] :is(.gem-hero-banner__copy, .gem-hero-banner__content, .gem-hero-slideshow__copy, .gem-hero-video__content, .gem-hero__content) { row-gap: var(--gem-space-xs); }
589
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='tight'] .gem-hero-banner__copy > * + *, .gem-hero-banner[data-gem-content-spacing='tight'] .gem-hero-slideshow__copy > * + * { margin-top: var(--gem-space-xs); }
590
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='tight'] .gem-hero-banner__copy > :not(:last-child), .gem-hero-banner[data-gem-content-spacing='tight'] .gem-hero-slideshow__copy > :not(:last-child) { margin-bottom: 0; }
591
+ :is(.gem-hero-banner, .gem-hero-video, .gem-hero)[data-gem-content-spacing='normal'] :is(.gem-hero-banner__copy, .gem-hero-banner__content, .gem-hero-slideshow__copy, .gem-hero-video__content, .gem-hero__content) { row-gap: var(--gem-space-md); }
592
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='normal'] .gem-hero-banner__copy > * + *, .gem-hero-banner[data-gem-content-spacing='normal'] .gem-hero-slideshow__copy > * + * { margin-top: var(--gem-space-md); }
593
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='normal'] .gem-hero-banner__copy > :not(:last-child), .gem-hero-banner[data-gem-content-spacing='normal'] .gem-hero-slideshow__copy > :not(:last-child) { margin-bottom: 0; }
594
+ :is(.gem-hero-banner, .gem-hero-video, .gem-hero)[data-gem-content-spacing='roomy'] :is(.gem-hero-banner__copy, .gem-hero-banner__content, .gem-hero-slideshow__copy, .gem-hero-video__content, .gem-hero__content) { row-gap: var(--gem-space-xl); }
595
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='roomy'] .gem-hero-banner__copy > * + *, .gem-hero-banner[data-gem-content-spacing='roomy'] .gem-hero-slideshow__copy > * + * { margin-top: var(--gem-space-xl); }
596
+ :is(.gem-hero-banner--default, .gem-hero-banner--dawn-image-banner)[data-gem-content-spacing='roomy'] .gem-hero-banner__copy > :not(:last-child), .gem-hero-banner[data-gem-content-spacing='roomy'] .gem-hero-slideshow__copy > :not(:last-child) { margin-bottom: 0; }
597
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-width='full'] .gem-section__inner { width: 100%; max-width: none; }
598
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-width='contained'] .gem-section__inner { width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px))); max-width: none; }
599
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-content-width='narrow'] .gem-section__inner { width: min(56rem, calc(100% - var(--gem-layout-gutter, 32px))); }
600
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-height='short'] { min-height: 420px; }
601
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-height='tall'] { min-height: 760px; }
602
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-height='short'] .gem-section__inner { min-height: 420px; }
603
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-height='normal'] .gem-section__inner { min-height: auto; }
604
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-height='tall'] .gem-section__inner { min-height: 760px; }
605
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='2'] :is(.gem-section__grid, [class*='__grid']):not(.gem-row) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
606
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='2'] .gem-row:is(.gem-section__grid, [class*='__grid']):not(.gem-row .gem-row) { --gem-row-cols: 2; --gem-row-cols-md: 2; --gem-row-tracks: initial; --gem-row-tracks-md: initial; }
607
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='3'] :is(.gem-section__grid, [class*='__grid']):not(.gem-row) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
608
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='3'] .gem-row:is(.gem-section__grid, [class*='__grid']):not(.gem-row .gem-row) { --gem-row-cols: 3; --gem-row-cols-md: 3; --gem-row-tracks: initial; --gem-row-tracks-md: initial; }
609
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='4'] :is(.gem-section__grid, [class*='__grid']):not(.gem-row) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
610
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-grid-columns='4'] .gem-row:is(.gem-section__grid, [class*='__grid']):not(.gem-row .gem-row) { --gem-row-cols: 4; --gem-row-cols-md: 4; --gem-row-tracks: initial; --gem-row-tracks-md: initial; }
611
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='default'] { --gem-section-bg: var(--gem-color-background); background: transparent; }
612
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='surface'] { --gem-section-bg: var(--gem-color-surface); background: var(--gem-section-bg); padding-block: var(--gem-space-xl); }
613
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='accent'] { --gem-section-bg: var(--gem-color-accent); background: var(--gem-section-bg); color: var(--gem-color-accent-text); --gem-band-bg: var(--gem-color-accent); --gem-focus-ring: 2px solid var(--gem-color-accent-text); padding-block: var(--gem-space-xl); }
614
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='dark'] { --gem-section-bg: var(--gem-color-text); background: var(--gem-section-bg); color: var(--gem-color-background); --gem-band-bg: var(--gem-color-text); --gem-focus-ring: 2px solid var(--gem-color-background); padding-block: var(--gem-space-xl); }
615
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='light'] { --gem-section-bg: var(--gem-color-background); background: var(--gem-section-bg); color: var(--gem-color-text); padding-block: var(--gem-space-xl); }
616
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='accent'] :is(.gem-section__heading, .gem-section__body, .gem-section__eyebrow), :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-section-background='dark'] :is(.gem-section__heading, .gem-section__body, .gem-section__eyebrow) { color: inherit; }
617
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-price-color='accent'] :is(.gem-price, .gem-price__regular, [class*='__price']) { color: var(--gem-color-accent); }
618
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-price-color='red'] :is(.gem-price, .gem-price__regular, [class*='__price']) { color: #d61f1f; }
619
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-price-color='green'] :is(.gem-price, .gem-price__regular, [class*='__price']) { color: #1a7f37; }
620
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-weight='bold'] { --gem-style-weight: 1.25; }
621
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-weight='bold'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { font-weight: 800; }
622
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-weight='light'] { --gem-style-weight: 0.8; }
623
+ :is(.gem-section, .gem-hero, .gem-hero-split, .gem-hero-collage, .gem-hero-triptych, .gem-slideshow)[data-gem-text-weight='light'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { font-weight: 350; }
624
+ .gem-section[data-gem-heading-color='accent'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { color: var(--gem-color-accent); }
625
+ .gem-section[data-gem-heading-color='red'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { color: #d61f1f; }
626
+ .gem-section[data-gem-heading-color='green'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { color: #1a7f37; }
627
+ .gem-section[data-gem-heading-color='dark'] :is(.gem-section__heading, .gem-hero-banner__copy h1, .gem-hero-banner__copy h2) { color: var(--gem-color-text); }
628
+ .gem-section[data-gem-eyebrow-color='accent'] .gem-section__eyebrow { color: var(--gem-color-accent); }
629
+ .gem-section[data-gem-eyebrow-color='red'] .gem-section__eyebrow { color: #d61f1f; }
630
+ .gem-section[data-gem-eyebrow-color='green'] .gem-section__eyebrow { color: #1a7f37; }
631
+ .gem-section[data-gem-eyebrow-color='dark'] .gem-section__eyebrow { color: var(--gem-color-text); }
632
+ .gem-section[data-gem-badge-color='accent'] [class*='__badge'] { color: var(--gem-color-accent); }
633
+ .gem-section[data-gem-badge-color='red'] [class*='__badge'] { color: #d61f1f; }
634
+ .gem-section[data-gem-badge-color='green'] [class*='__badge'] { color: #1a7f37; }
635
+ .gem-section[data-gem-badge-color='dark'] [class*='__badge'] { color: var(--gem-color-text); }
636
+ .gem-section__eyebrow {
637
+ margin: 0 0 var(--gem-space-sm, 12px);
638
+ color: var(--gem-color-accent);
639
+ font-size: 0.8125rem;
640
+ font-weight: calc(650 * var(--gem-style-weight, 1));
641
+ text-transform: uppercase;
642
+ }
643
+ .gem-section__heading {
644
+ margin: 0;
645
+ font-family: var(--gem-font-heading);
646
+ font-size: clamp(calc(2rem * var(--gem-typography-heading-scale, 1)), calc(4vw * var(--gem-typography-heading-scale, 1)), calc(4rem * var(--gem-typography-heading-scale, 1)));
647
+ line-height: 1.04;
648
+ }
649
+ .gem-section__body {
650
+ margin: 0;
651
+ max-width: 64ch;
652
+ color: var(--gem-color-muted, color-mix(in srgb, var(--gem-color-text) 72%, transparent));
653
+ }
654
+ .gem-section__grid {
655
+ display: grid;
656
+ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
657
+ column-gap: var(--gem-grid-column-gap, var(--gem-space-md));
658
+ row-gap: var(--gem-grid-row-gap, var(--gem-space-md));
659
+ }
660
+ .gem-section[data-gem-composition-mode='image-with-copy'] .gem-section__inner {
661
+ align-content: center;
662
+ }
663
+ .gem-section:is([data-gem-composition-mode='slideshow'], [data-gem-composition-mode='video-led']) .gem-section__inner {
664
+ min-block-size: min(72vh, 680px);
665
+ align-content: end;
666
+ }
667
+ .gem-section[data-gem-composition-mode='category-grid'] .gem-section__grid {
668
+ grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
669
+ }
670
+ .gem-section[data-gem-composition-mode='split-collage'] .gem-section__grid {
671
+ grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
672
+ align-items: stretch;
673
+ }
674
+ .gem-section[data-gem-composition-mode='video-led'] {
675
+ background: color-mix(in srgb, var(--gem-color-text) 6%, var(--gem-color-background));
676
+ }
677
+ .gem-section:is([data-gem-product-card-mode='gallery'], [data-gem-product-card-mode='editorial']) :is(.gem-product-card-grid__grid, .gem-section__grid) {
678
+ gap: var(--gem-space-xl);
679
+ }
680
+ .gem-section:is([data-gem-product-card-mode='quick-buy'], [data-gem-product-card-mode='badge-heavy']) .gem-product-card {
681
+ position: relative;
682
+ }
683
+ .gem-section[data-gem-product-card-mode='standard'] .gem-product-card-grid__grid {}
684
+ .gem-section:is([data-gem-product-card-mode='utility'], [data-gem-collection-card-mode='dense-grid']) .gem-product-card-grid__grid {
685
+ grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
686
+ gap: var(--gem-space-sm);
687
+ }
688
+ .gem-section:is([data-gem-product-card-mode='badge-heavy'], [data-gem-badge-density='high']) .gem-badge {
689
+ border-color: var(--gem-color-accent);
690
+ color: var(--gem-color-accent);
691
+ }
692
+ .gem-section:is([data-gem-collection-card-mode='image-tile'], [data-gem-collection-card-mode='editorial-tile'], [data-gem-collection-card-mode='collage']) .gem-media {
693
+ min-block-size: clamp(12rem, 26vw, 24rem);
694
+ }
695
+ .gem-section[data-gem-collection-card-mode='editorial-tile'] .gem-section__grid {
696
+ gap: var(--gem-space-xl);
697
+ }
698
+ .gem-section[data-gem-collection-card-mode='collage'] .gem-section__grid {
699
+ grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
700
+ }
701
+ .gem-section[data-gem-card-copy-mode='minimal'] :is(.gem-product-card__vendor, .gem-product-card__description) {
702
+ display: none;
703
+ }
704
+ .gem-section:is([data-gem-image-treatment='editorial-crop'], [data-gem-image-treatment='poster']) .gem-media {
705
+ aspect-ratio: 4 / 5;
706
+ }
707
+ .gem-section:is([data-gem-proof-mode='press'], [data-gem-proof-mode='trust-strip']) .gem-reviews-proof-strip__points {}
708
+ .gem-section[data-gem-proof-mode='minimal'] .gem-reviews-proof-strip__points {
709
+ gap: var(--gem-space-sm);
710
+ }
711
+ .gem-section[data-gem-proof-mode='compliance'] .gem-reviews-proof-strip__points {
712
+ border: var(--gem-border-subtle, 1px solid var(--gem-color-border));
713
+ padding: var(--gem-space-md);
714
+ }
715
+ .gem-section[data-gem-proof-mode='testimonial'] .gem-reviews-proof-strip__points {
716
+ grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
717
+ gap: var(--gem-space-lg);
718
+ }
719
+ .gem-section[data-gem-editorial-band-mode='gridline-story'] .gem-section__inner {
720
+ border-block: var(--gem-border-subtle, 1px solid var(--gem-color-border));
721
+ padding-block: var(--gem-space-xl);
722
+ }
723
+ .gem-section:is([data-gem-editorial-band-mode='rich-text'], [data-gem-editorial-band-mode='none']) .gem-section__body {}
724
+ .gem-section[data-gem-editorial-band-mode='marquee'] .gem-section__heading {
725
+ text-transform: uppercase;
726
+ }
727
+ .gem-section[data-gem-editorial-band-mode='media-story'] .gem-section__grid {
728
+ grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
729
+ }
730
+ @media (min-width: 990px) {
731
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) {
732
+ display: grid;
733
+ grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.72fr);
734
+ gap: var(--gem-space-xl);
735
+ align-items: start;
736
+ width: min(var(--gem-layout-page, 1180px), calc(100% - var(--gem-layout-gutter, 32px)));
737
+ margin-inline: auto;
738
+ padding-block: var(--gem-space-xl);
739
+ }
740
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-section {
741
+ padding-block: 0;
742
+ overflow: visible;
743
+ }
744
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-section > .gem-section__inner {
745
+ width: 100%;
746
+ }
747
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-breadcrumbs {
748
+ grid-column: 1 / -1;
749
+ }
750
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-product-media-gallery {
751
+ grid-column: 1;
752
+ }
753
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-product-main {
754
+ grid-column: 2;
755
+ position: sticky;
756
+ top: calc(var(--gem-component-header-height, 72px) + var(--gem-space-md));
757
+ }
758
+ #MainContent:has(.gem-product-media-gallery[data-gem-section-id='product-gallery']):has(.gem-product-main[data-gem-section-id='product-main']) > .gem-section:not(.gem-breadcrumbs):not(.gem-product-media-gallery):not(.gem-product-main) {
759
+ grid-column: 1 / -1;
760
+ padding-block: var(--gem-layout-section, var(--gem-space-3xl, 64px));
761
+ }
762
+ }
763
+ @media (max-width: 760px) {
764
+ .gem-section { padding-block: calc(var(--gem-layout-section, 64px) * 0.72); }
765
+ .gem-section__inner, .gem-container { width: min(100% - 32px, var(--gem-layout-page, 1180px)); }
766
+ .gem-section__heading { font-size: clamp(1.75rem, 9vw, 2.75rem); }
767
+ .gem-section__grid { grid-template-columns: minmax(0, 1fr); }
768
+ .gem-section:is([data-gem-composition-mode='split-collage'], [data-gem-editorial-band-mode='media-story']) .gem-section__grid { grid-template-columns: minmax(0, 1fr); }
769
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__inner { grid-template-columns: minmax(0, 1fr); }
770
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__summary { position: static; }
771
+ .gem-section:is([data-gem-composition-mode='slideshow'], [data-gem-composition-mode='video-led']) .gem-section__inner { min-block-size: min(62vh, 560px); }
772
+ }
773
+ :where(.gem-section[data-gem-eyebrow='show']) .gem-section__eyebrow { display: block; letter-spacing: 0.12em; }
774
+ :where(.gem-section[data-gem-heading='section']) .gem-section__heading { margin: 0; font-family: var(--gem-font-heading); font-size: var(--gem-h2); line-height: 1.1; letter-spacing: -0.01em; text-wrap: balance; }
775
+ :where(.gem-section[data-gem-body='section']) .gem-section__body { margin: 0; color: var(--gem-color-muted); font-size: var(--gem-body); line-height: var(--gem-font-body-line-height, 1.5); }
776
+ @media (max-width: 760px) {
777
+ :where(.gem-section[data-gem-heading='section']) .gem-section__heading { font-size: min(var(--gem-h2), clamp(1.75rem, 9vw, 2.75rem)); }
778
+ }
779
+ .gem-row:where(:not([hidden])) { --gem-row-auto-sm: repeat(var(--gem-row-cols-sm), minmax(0, 1fr)); --gem-row-auto-md: repeat(var(--gem-row-cols-md), minmax(0, 1fr)); --gem-row-auto-lg: repeat(var(--gem-row-cols), minmax(0, 1fr)); display: grid; grid-template-columns: var(--gem-row-tracks-sm, var(--gem-row-auto-sm, minmax(0, 1fr))); }
780
+ :where(.gem-row > *) { min-width: 0; --gem-row-cols: initial; --gem-row-cols-md: initial; --gem-row-cols-sm: initial; --gem-row-tracks: initial; --gem-row-tracks-md: initial; --gem-row-tracks-sm: initial; --gem-row-gap: initial; --gem-row-gap-y: initial; }
781
+ @media (min-width: 750px) { .gem-row { grid-template-columns: var(--gem-row-tracks-md, var(--gem-row-auto-md, var(--gem-row-tracks, var(--gem-row-auto-lg, repeat(2, minmax(0, 1fr)))))); } }
782
+ @media (min-width: 990px) { .gem-row { grid-template-columns: var(--gem-row-tracks, var(--gem-row-auto-lg, repeat(2, minmax(0, 1fr)))); } }
783
+
784
+ /* Dawn parity profile: locked default baseline; morph presets must opt out before applying Gem visual identity. */
785
+ :root { --gem-profile-mode: dawn-parity; --gem-layout-page: 1100px; --gem-layout-gutter: 32px; --gem-layout-section: 52px; --gem-radius-md: 0px; --gem-card-radius: 0px; --gem-media-radius: 0px; --gem-grid-column-gap: 8px; --gem-grid-row-gap: 8px; }
786
+ .utility-bar, .announcement-bar, .utility-bar__grid { min-height: 38px; }
787
+ .announcement-bar__message { margin: 0; min-height: 38px; padding-block: 10px; font-size: 0.75rem; font-weight: 400; letter-spacing: 0.04em; }
788
+ .announcement-bar__message span { font-size: 0.75rem; }
789
+ .gem-announcement-bar__segments { display: flex; flex-wrap: wrap; justify-content: space-around; gap: 4px 24px; }
790
+ .gem-shell-header .localization-wrapper { display: none !important; }
791
+ .gem-shell-header { position: relative; border-bottom: 1px solid rgb(18 18 18 / 8%); background: var(--gem-color-background); }
792
+ .gem-shell-header__inner, .header { width: min(1200px, 100%); max-width: 1200px; min-height: 84px; padding: 20px 50px; gap: 20px; }
793
+ .gem-shell-header__inner.header--middle-center, .header.header--middle-center, .gem-shell-header__inner.header--middle-left, .header.header--middle-left { grid-template-areas: 'heading navigation icons'; grid-template-columns: 97.5px auto 1fr; }
794
+ @media screen and (max-width: 749px) { .header.header--middle-left, .header.header--middle-center { grid-template-areas: 'left-icons heading icons'; grid-template-columns: 1fr 2fr 1fr; } .header.header--middle-left header-drawer, .header.header--middle-center header-drawer { grid-area: left-icons; justify-self: start; } .header.header--mobile-center .header__heading, .header.header--mobile-center .header__heading-link { grid-area: heading; justify-self: center; text-align: center; } }
795
+ .collage .card__inner:not(.ratio):has(.placeholder-svg) { aspect-ratio: 1 / 1; }
796
+ .gem-shell-header__logo { display: inline-block; width: 105px; height: 37px; min-height: 0; padding: 7.5px; font-size: 1.125rem; line-height: 22px; font-weight: 400; letter-spacing: 0.08em; text-align: center; white-space: nowrap; overflow: hidden; }
797
+ .gem-shell-header__nav a, .gem-shell-header__action { border: 0; border-radius: 0; background: transparent; font-weight: 400; text-decoration: none; }
798
+ .gem-shell-header__nav { gap: 20px; }
799
+ .gem-shell-header__actions { justify-self: end; gap: 0; padding-right: 8px; }
800
+ .gem-shell-header .svg-wrapper { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; pointer-events: none; }
801
+ .gem-shell-header .svg-wrapper > svg { display: block; width: 100%; height: 100%; }
802
+ .gem-shell-header .header__icon-close { display: none; }
803
+ .gem-shell-header details[open] > summary .gem-header__icon-open { display: none; }
804
+ .gem-shell-header details[open] > summary .header__icon-close { display: inline-flex; }
805
+ .gem-shell-header .header__icons { display: flex; align-items: center; justify-content: flex-end; }
806
+ .gem-shell-header__actions .gem-shell-header__action, .gem-shell-header .header__icon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; font-size: 0; }
807
+ .gem-shell-header__actions .gem-shell-header__action--cart { background: transparent; color: var(--gem-color-text); }
808
+ .gem-shell-header__actions .gem-shell-header__action--search::before, .gem-shell-header__actions .gem-shell-header__action--search::after, .gem-shell-header__actions .gem-shell-header__action--account::before, .gem-shell-header__actions .gem-shell-header__action--cart::before, .gem-shell-header__actions .gem-shell-header__action--cart::after { content: none; display: none; }
809
+ .gem-shell-header .cart-count-bubble, .gem-shell-header__cart-count { position: absolute; left: 2.2rem; bottom: 0.8rem; display: flex; align-items: center; justify-content: center; min-width: 1.7rem; height: 1.7rem; border-radius: 100%; background: rgb(18 18 18); color: rgb(255 255 255); font-size: 0.9rem; line-height: 1; }
810
+ .gem-shell-header__drawer-toggle { border: 0; background: transparent; padding: 0; font-size: 0; }
811
+ .gem-shell-header__drawer-toggle::before { content: none; display: none; }
812
+ .gem-section { padding-block: var(--gem-layout-section); }
813
+ main > .gem-section:first-child { padding-top: 0; }
814
+ .gem-hero-banner--default { min-height: 720px; display: grid; place-items: center; text-align: center; }
815
+ .gem-hero-banner--default { position: relative; overflow: hidden; padding: 0; color: white; place-items: stretch; }
816
+ .gem-hero-banner--default .gem-hero-banner__inner { position: static; width: 100%; min-height: 720px; height: 100%; display: grid; align-items: end; justify-items: center; padding-bottom: 0; }
817
+ .gem-hero-banner--default .gem-hero-banner__media { position: absolute; inset: 0; z-index: 0; }
818
+ .gem-hero-banner--default .gem-hero-banner__media::after { content: ''; position: absolute; inset: 0; background: rgb(0 0 0 / 32%); }
819
+ .gem-hero-banner--default .gem-hero-banner__image, .gem-hero-banner--default .gem-hero-banner__placeholder { width: 100%; height: 100%; object-fit: cover; display: block; }
820
+ .gem-hero-banner--default .gem-hero-banner__copy { position: absolute; z-index: 1; left: 50%; bottom: 50px; transform: translateX(-50%); width: min(702px, 100%); margin: 0; padding: 40px 0; text-align: center; display: block; }
821
+ .gem-hero-banner--default .gem-section__heading { margin: 0; font-size: 52px; line-height: 67.6px; color: currentColor; }
822
+ .gem-hero-banner--default .gem-section__body { max-width: none; margin: 10px 0 0; color: currentColor; font-size: 16px; line-height: 28.8px; }
823
+ .gem-hero-banner--default .gem-hero-banner__copy { color: #fff; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35); }
824
+ .gem-hero-banner--default .gem-hero-banner__copy :is(.gem-section__heading, .gem-section__body, .gem-section__eyebrow, .gem-hero-banner__proof, .gem-hero-banner__disclaimer, p) { color: #fff !important; }
825
+ .gem-hero-banner--default .gem-hero-banner__actions { margin-top: 24px; }
826
+ .gem-hero-banner--default .gem-button--primary { min-width: 130px; min-height: 47px; background: transparent; border-color: currentColor; color: currentColor; padding: 0 30px; font-size: 15px; line-height: 18px; }
827
+ .gem-hero-banner--split-proof, .gem-hero-banner--editorial { min-height: auto; display: block; padding-block: 56px; text-align: left; color: var(--gem-color-text); }
828
+ .gem-hero-banner--split-proof .gem-hero-banner__inner, .gem-hero-banner--editorial .gem-hero-banner__inner { width: min(var(--gem-layout-page, 1200px), calc(100% - var(--gem-layout-gutter, 32px))); margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.82fr); gap: 48px; align-items: center; min-height: 0; }
829
+ .gem-hero-banner--split-proof .gem-hero-banner__copy, .gem-hero-banner--editorial .gem-hero-banner__copy { position: static; display: grid; gap: 14px; max-width: 40rem; margin: 0; padding: 0; text-align: left; align-content: center; }
830
+ .gem-hero-banner--split-proof .gem-section__eyebrow, .gem-hero-banner--editorial .gem-section__eyebrow { display: block; margin: 0; color: var(--gem-color-muted); font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; }
831
+ .gem-hero-banner--split-proof .gem-section__heading, .gem-hero-banner--editorial .gem-section__heading { margin: 0; font-size: 46px; line-height: 1.08; color: var(--gem-color-text); }
832
+ .gem-hero-banner--split-proof .gem-section__body, .gem-hero-banner--editorial .gem-section__body { margin: 0; max-width: 36rem; color: var(--gem-color-muted); font-size: 16px; line-height: 1.6; }
833
+ .gem-hero-banner--split-proof .gem-hero-banner__proof, .gem-hero-banner--editorial .gem-hero-banner__proof { margin: 4px 0 0; color: var(--gem-color-muted); font-size: 14px; }
834
+ .gem-hero-banner--split-proof .gem-hero-banner__actions, .gem-hero-banner--editorial .gem-hero-banner__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; }
835
+ .gem-hero-banner--split-proof .gem-hero-banner__media, .gem-hero-banner--editorial .gem-hero-banner__media { position: relative; inset: auto; min-height: 26rem; height: 100%; overflow: hidden; border-radius: 6px; background: rgb(244 244 244); }
836
+ .gem-hero-banner--split-proof .gem-hero-banner__image, .gem-hero-banner--split-proof .gem-hero-banner__placeholder, .gem-hero-banner--editorial .gem-hero-banner__image, .gem-hero-banner--editorial .gem-hero-banner__placeholder { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
837
+ .gem-hero-banner .gem-section__content { max-width: 78rem; margin-inline: auto; }
838
+ .gem-hero-banner h1, .gem-hero-banner h2, .gem-section__heading { margin: 0 0 1.5rem; font-size: clamp(calc(2.5rem * var(--gem-typography-heading-scale, 1)), calc(4vw * var(--gem-typography-heading-scale, 1)), calc(5.2rem * var(--gem-typography-heading-scale, 1))); font-weight: 400; line-height: 1.08; letter-spacing: 0; }
839
+ .gem-section__eyebrow { display: none; }
840
+ .gem-hero-banner--compact-collection { min-height: auto; display: block; text-align: left; padding-block: 25px; }
841
+ .gem-hero-banner--compact-collection .gem-section__content, .gem-product-card-grid--quick-view-grid > .gem-section__inner { width: min(var(--gem-layout-page, 1200px), calc(100% - var(--gem-layout-gutter, 32px))); margin-inline: auto; }
842
+ .gem-hero-banner--compact-collection .gem-hero-banner__inner { width: min(var(--gem-layout-page, 1200px), calc(100% - var(--gem-layout-gutter, 32px))); min-height: auto; margin-inline: auto; display: block; }
843
+ .gem-hero-banner--compact-collection .gem-hero-banner__media { display: none; }
844
+ .gem-hero-banner--compact-collection .gem-hero-banner__copy { max-width: none; }
845
+ .gem-hero-banner--compact-collection .gem-section__heading { font-size: 40px; line-height: 52px; margin: 0; }
846
+ .gem-hero-banner--compact-collection .gem-section__body { display: none; }
847
+ .gem-rich-text--dawn-intro { text-align: center; padding-block: 40px 0; }
848
+ .gem-rich-text--dawn-intro .gem-rich-text__content { width: min(780px, 100%); max-width: 780px; margin-inline: auto; }
849
+ .gem-rich-text--dawn-intro .gem-section__heading { margin: 0; font-size: 40px; line-height: 52px; }
850
+ .gem-rich-text--dawn-intro .gem-section__body { width: 100%; max-width: none; margin: 20px 0 0; font-size: 16px; line-height: 28.8px; }
851
+ .gem-rich-text--dawn-intro .gem-section__body p { margin: 0; }
852
+ .gem-rich-text--dawn-intro .gem-rich-text__blocks { display: block; width: 100%; }
853
+ .gem-button { min-width: 12rem; border-radius: 0; font-weight: 400; box-shadow: none; }
854
+ .gem-product-card-wrapper { display: block; min-width: 0; }
855
+ .gem-card, .gem-product-card { border: 0; border-radius: 0; box-shadow: none; background: transparent; padding: 0; }
856
+ .gem-product-card__media, .gem-media { border: 0; border-radius: 0; box-shadow: none; background: rgb(244 244 244); }
857
+ .gem-product-card__media { display: block; position: relative; width: 100%; height: 0; min-block-size: 0; padding-bottom: 100%; aspect-ratio: auto; overflow: hidden; }
858
+ .gem-featured-collection--editorial-grid .gem-product-card__media, .gem-product-card-grid--quick-view-grid .gem-product-card__media, .gem-main-search .gem-product-card__media, .gem-cart-recommendations--dawn-empty .gem-product-card__media { min-block-size: 0 !important; }
859
+ .gem-product-card__media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
860
+ .gem-featured-collection .gem-product-card__media > img, .gem-product-card-grid .gem-product-card__media > img { object-fit: cover; }
861
+ .gem-product-card-grid--quick-view-grid .gem-product-card__media { display: block; min-height: 0; }
862
+ .gem-product-card-grid--quick-view-grid .gem-product-card__placeholder { min-height: 0; }
863
+ .gem-product-card__content { padding-top: 8px; gap: 4px; }
864
+ .gem-product-card__title { font-weight: 400; font-size: 16px; line-height: 24px; }
865
+ .gem-product-card__price { display: block; margin-top: 4px; font-weight: 400; line-height: 24px; }
866
+ .gem-product-card__price .gem-price, .gem-product-card__price { font-size: 16px; }
867
+ .gem-product-card-grid--quick-view-grid .gem-product-card__badges { display: none; }
868
+ .gem-featured-collection--editorial-grid .gem-product-card__quick-actions, .gem-product-card-grid--quick-view-grid .gem-product-card__quick-actions, .gem-main-search .gem-product-card__quick-actions { display: none; }
869
+ .gem-cart-recommendations--dawn-empty .gem-product-card__quick-actions { display: none; }
870
+ .gem-featured-collection--editorial-grid > .gem-section__inner > .gem-section__heading, .gem-featured-collection--editorial-grid > .gem-section__inner > .gem-section__body { display: none; }
871
+ .gem-featured-collection--editorial-grid { padding-block: 28px 36px; }
872
+ .gem-featured-collection--editorial-grid .gem-section__grid, .gem-product-card-grid--quick-view-grid .gem-section__grid, .gem-main-search .gem-section__grid { grid-template-columns: repeat(var(--gem-product-card-grid-columns, 4), minmax(0, 1fr)); gap: 8px; }
873
+ .gem-product-card-grid--quick-view-grid { padding-top: 0; }
874
+ .gem-product-card-grid--quick-view-grid .gem-section__heading:empty { display: none; }
875
+ .gem-product-card-grid--quick-view-grid .gem-price:not(.gem-price--on-sale) .gem-price__compare { display: none; }
876
+ .gem-product-card-grid--quick-view-grid > .gem-section__inner { position: relative; row-gap: 0 !important; }
877
+ .gem-product-card-grid__meta { position: absolute; inset-block-start: 11px; inset-inline-end: 0; float: none; display: flex; justify-content: flex-end; align-items: center; min-height: 21px; height: 21px; margin: 0; color: rgb(18 18 18 / 75%); font-size: 16px; line-height: 28.8px; }
878
+ .gem-product-card-grid--quick-view-grid .gem-product-card-grid__meta { display: flex; }
879
+ .gem-product-card-grid__controls { display: flex; align-items: center; gap: 20px; min-height: 32px; margin: 0 0 24px; }
880
+ .gem-product-card-grid--quick-view-grid .gem-product-card-grid__controls { min-height: 51px; height: 51px; margin: 0 0 16px !important; padding-top: 10px; }
881
+ .gem-product-card-grid__grid { gap: 8px !important; }
882
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters { display: flex; align-items: center; gap: 18px; border: 0; background: transparent; padding: 0; }
883
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary { min-width: auto; border: 0; background: transparent; padding: 0; pointer-events: none; }
884
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filter, .gem-product-card-grid__controls .gem-collection-filter-toolbar__sort { display: flex; align-items: center; gap: 8px; font-size: 0.75rem; font-weight: 400; }
885
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__select { width: auto; min-width: 0; min-height: 0; border: 0; background: transparent; padding: 0; font-size: 0.75rem; }
886
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__submit { display: none; }
887
+ .gem-product-card-grid__controls::after { content: ''; display: block; clear: both; }
888
+ .gem-main-search { padding-top: 36px; }
889
+ .gem-main-search > .gem-section__inner { display: block; }
890
+ .gem-main-search .gem-section__heading { font-size: 24px !important; line-height: 31.2px !important; margin: 16px 0 30px !important; text-align: center; }
891
+ .gem-main-search .gem-search-form { width: 741px; max-width: 741px; height: 47px; grid-template-columns: minmax(0, 1fr) 44px; gap: 0; align-items: stretch; margin: 0 auto 50px; }
892
+ .gem-main-search .gem-search-form .gem-form-field { display: block; height: 47px; }
893
+ .gem-main-search .gem-search-form .gem-form-field span { display: none; }
894
+ .gem-main-search .gem-search-form .gem-input { min-height: 47px; height: 47px; border: 1px solid rgb(18 18 18 / 75%); border-right: 0; border-radius: 0; padding: 10px 16px; }
895
+ .gem-main-search .gem-search-form .gem-button { min-width: 44px; width: 44px; min-height: 47px; height: 47px; border: 1px solid rgb(18 18 18 / 75%); border-left: 0; background: transparent; color: var(--gem-color-text); font-size: 0; padding: 0; }
896
+ .gem-main-search .gem-search-form .gem-button::before { content: none; display: none; }
897
+ .gem-main-search .gem-search-form .gem-button .svg-wrapper, .gem-collection-filter-toolbar__filters summary .svg-wrapper { display: inline-flex; width: 18px; height: 18px; margin-right: 8px; }
898
+ .gem-main-search .gem-search-form .gem-button .svg-wrapper svg, .gem-collection-filter-toolbar__filters summary .svg-wrapper svg { width: 100%; height: 100%; }
899
+ .gem-main-search .gem-product-card-grid__controls { height: 51px; min-height: 51px; margin: 0 0 16px; padding-top: 10px; }
900
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__frame { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
901
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__item { aspect-ratio: 1 / 1; }
902
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__item:first-child { grid-column: 1 / -1; }
903
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__thumbs { display: none; }
904
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__summary { gap: 18px; max-width: 600px; }
905
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__summary > .gem-section__heading { font-size: 40px; line-height: 52px; margin-bottom: 0; }
906
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__text--uppercase, .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__text--subtitle { display: none; }
907
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__availability { display: none; }
908
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price, .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price .gem-price { min-height: 30px; font-size: 16px; line-height: 24px; }
909
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price .gem-price { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; font-weight: 400; }
910
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price .gem-price__regular { font-weight: 400; }
911
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__sale-badge { min-height: 22px; border-radius: 999px; background: rgb(51 79 180); color: white; padding: 4px 12px; font-size: 12px; line-height: 12px; font-weight: 400; }
912
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-section__body { margin-top: 10px; font-size: 16px; line-height: 28.8px; }
913
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons__variant-status { display: none; }
914
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-fallback { max-width: 440px; gap: 8px; }
915
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-fallback legend { font-size: 15px; line-height: 27px; margin-bottom: 0; }
916
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-pill { min-height: 36px; min-width: auto; padding: 0 20px; font-size: 13px; line-height: 16px; }
917
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story { display: block; margin-top: 36px; }
918
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story-media { aspect-ratio: 1.2 / 1; margin-bottom: 32px; overflow: hidden; background: rgb(244 244 244); }
919
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story-media img { width: 100%; height: 100%; object-fit: contain; display: block; }
920
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story h2 { margin: 0 0 16px; font-size: 24px; line-height: 31.2px; font-weight: 400; }
921
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story p { margin: 0; color: rgb(18 18 18 / 75%); font-size: 15px; line-height: 27px; }
922
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible summary h2 { display: inline; margin: 0; font: inherit; }
923
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible summary .svg-wrapper { display: inline-flex; width: 18px; height: 18px; margin-right: 12px; color: rgb(18 18 18 / 75%); }
924
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible summary .gem-product-main__collapsible-caret { margin-left: auto; margin-right: 0; width: 10px; height: 10px; }
925
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__share { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 44px; color: rgb(18 18 18 / 75%); text-decoration: none; font-size: 15px; line-height: 27px; }
926
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__share .svg-wrapper { display: inline-flex; width: 13px; height: 12px; }
927
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons { gap: 15px; max-width: 440px; }
928
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons__quantity { width: 142px; gap: 6px; font-size: 15px; line-height: 27px; }
929
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input { width: 142px; min-height: 47px; height: 47px; grid-template-columns: 44px 54px 44px; border-radius: 0; }
930
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input__button, .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input__field { min-height: 47px; height: 47px; padding-block: 0; }
931
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons__submit { background: transparent; color: rgb(18 18 18); border: 1px solid rgb(18 18 18); min-height: 47px; padding-block: 0; font-size: 15px; line-height: 18px; }
932
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] [class~='shopify-payment-button'] { position: relative; min-height: 47px; height: 47px; margin-top: -5px; overflow: hidden; }
933
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] [class~='shopify-payment-button'] > * { visibility: hidden; }
934
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] [class~='shopify-payment-button']::before { content: 'Buy it now'; position: absolute; inset: 0; display: grid; place-items: center; background: rgb(18 18 18); color: white; font-size: 15px; line-height: 18px; }
935
+ .gem-recommended-products-product-rail .gem-recommended-products__quick-view-surface, .gem-recommended-products-product-rail [data-gem-quick-view-surface] { display: none !important; }
936
+ .gem-recommended-products-product-rail .gem-recommended-products__inner:empty { min-height: 4.8rem; }
937
+ .gem-cart-main--line-items .gem-section__heading { font-size: clamp(2.4rem, 3.4vw, 4rem); }
938
+ .gem-cart-main--line-items .gem-section__body { color: rgb(18 18 18 / 75%); }
939
+ .gem-cart-main__empty { width: 1100px !important; max-width: calc(100vw - 100px) !important; margin-inline: auto; }
940
+ .gem-cart-main__login { margin-top: 4rem; }
941
+ .gem-cart-main__login h2 { margin: 0 0 1.5rem; font-size: 1.8rem; font-weight: 400; }
942
+ .gem-cart-main__login p { margin: 0; }
943
+ .gem-cart-recommendations--dawn-empty { margin-top: -135px; padding-top: 0; }
944
+ .gem-cart-recommendations--dawn-empty .gem-cart-recommendations__header { width: 1100px !important; max-width: calc(100vw - 100px) !important; margin: 0 auto 16px; }
945
+ .gem-cart-recommendations--dawn-empty .gem-section__heading { font-size: 2rem; margin: 0; }
946
+ .gem-cart-recommendations--dawn-empty .gem-cart-recommendations__rail { width: 1100px !important; max-width: calc(100vw - 100px) !important; margin-inline: auto; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
947
+ .gem-hero-collage--category-mosaic { min-height: 1003px; padding-block: 97px 36px; }
948
+ .gem-hero-collage--category-mosaic > .gem-section__inner { min-height: 870px; padding: 0; align-content: start; }
949
+ .gem-hero-collage--category-mosaic .gem-hero-collage__intro { display: none; }
950
+ .gem-hero-collage--category-mosaic .gem-hero-collage__grid { display: grid; min-height: 870px; grid-template-columns: 2fr 1fr; grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 8px; }
951
+ .gem-hero-collage--category-mosaic .gem-hero-collage__tile { position: relative; display: block; min-height: 0; overflow: hidden; border: 0; background: rgb(244 244 244); }
952
+ .gem-hero-collage--category-mosaic .gem-hero-collage__tile:first-child { grid-row: 1 / -1; }
953
+ .gem-hero-collage--category-mosaic .gem-hero-collage__media, .gem-hero-collage--category-mosaic .gem-hero-collage__image, .gem-hero-collage--category-mosaic .gem-hero-collage__placeholder { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; }
954
+ .gem-hero-collage--category-mosaic .gem-hero-collage__placeholder { background: rgb(244 244 244); }
955
+ .gem-hero-collage--category-mosaic .gem-hero-collage__content { position: absolute; left: 24px; bottom: 24px; display: grid; gap: 6px; color: rgb(18 18 18); }
956
+ .gem-hero-collage--category-mosaic .gem-hero-collage__badge, .gem-hero-collage--category-mosaic .gem-hero-collage__caption { display: none; }
957
+ .gem-hero-collage--category-mosaic .gem-hero-collage__label { font-size: 20px; line-height: 26px; font-weight: 400; }
958
+ .gem-hero-video--dawn-video { height: 552px; min-height: 552px; padding: 0; overflow: hidden; }
959
+ .gem-hero-video--dawn-video > .gem-section__inner, .gem-hero-video--dawn-video .gem-hero-video__inner, .gem-hero-video--dawn-video .gem-hero-video__media { width: 100%; max-width: none; height: 552px; min-height: 552px; }
960
+ .gem-hero-video--dawn-video .gem-hero-video__heading { text-align: center; margin: 0 0 24px; }
961
+ .gem-hero-video--dawn-video .gem-hero-video__content-wrap, .gem-hero-video--dawn-video .gem-hero-video__scrim, .gem-hero-video--dawn-video .gem-hero-video__toggle { display: none; }
962
+ .gem-hero-video--dawn-video .gem-hero-video__placeholder, .gem-hero-video--dawn-video .gem-hero-video__poster, .gem-hero-video--dawn-video .gem-hero-video__video { display: block; width: 100%; height: 100%; object-fit: cover; background: rgb(244 244 244); }
963
+ .gem-advanced-list--feature-grid { height: 243px; min-height: 243px; overflow: hidden; padding-block: 36px; }
964
+ .gem-advanced-list--feature-grid > .gem-section__inner > .gem-section__heading, .gem-advanced-list--feature-grid > .gem-section__inner > .gem-section__body { display: none; }
965
+ .gem-advanced-list--feature-grid .gem-section__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
966
+ .gem-advanced-list--feature-grid .gem-advanced-list__item { min-height: 0; text-align: center; font-size: 14px; line-height: 25.2px; }
967
+ .gem-advanced-list--feature-grid .gem-advanced-list__item h3 { display: none; }
968
+ .gem-advanced-list--feature-grid .gem-advanced-list__item .gem-richtext, .gem-advanced-list--feature-grid .gem-advanced-list__item p { margin: 0; color: rgb(18 18 18 / 75%); }
969
+ .gem-shell-footer { margin-top: 0; border-top: 1px solid rgb(18 18 18 / 8%); padding-block: 36px; background: rgb(255 255 255); color: rgb(18 18 18); }
970
+ .gem-shell-footer__inner { max-width: var(--gem-layout-page, 1200px); }
971
+ .gem-shell-footer__newsletter { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; width: 100%; max-width: 1100px; min-height: 90px; margin: 10px auto 0; padding: 0 0 20px; background: transparent; border: 0; }
972
+ .gem-shell-footer__newsletter-heading { margin: 0 0 18px; font-size: 18px; line-height: 23.4px; font-weight: 400; }
973
+ .gem-shell-footer__newsletter form { display: flex; align-items: stretch; flex-wrap: nowrap; gap: 0; width: min(100%, 480px); max-width: 480px; }
974
+ .gem-shell-footer__newsletter .gem-input { width: 100%; min-height: 45px; border: 1px solid rgb(18 18 18 / 55%); border-radius: 0; background: transparent; padding: 10px 14px; font-size: 16px; line-height: 24px; }
975
+ .gem-shell-footer__newsletter .gem-button { min-width: 45px; min-height: 45px; border-radius: 0; border: 1px solid rgb(18 18 18); background: rgb(18 18 18); color: white; font-size: 0; padding: 0; }
976
+ .gem-shell-footer__newsletter .gem-button::before { content: '\2192'; font-size: 20px; line-height: 1; }
977
+ .gem-shell-footer__support, .gem-shell-footer__markets, .gem-shell-footer__community, .gem-shell-footer__trust, .gem-shell-footer__offer { display: none; }
978
+ .gem-shell-footer__grid { display: flex; width: 100%; max-width: 1100px; gap: 8px; margin: 40px auto 0; padding-bottom: 0; }
979
+ .gem-shell-footer__grid > div, .gem-shell-footer__column, .gem-shell-footer__block { flex: 1 1 0; border: 0; background: transparent; padding: 0; box-shadow: none; }
980
+ .gem-shell-footer .footer-block__heading { margin: 0 0 20px; font-size: 18px; line-height: 23.4px; font-weight: 400; }
981
+ .gem-shell-footer .footer-block__details-content { display: grid; gap: 10px; margin: 0; padding: 0; color: rgb(18 18 18 / 75%); font-size: 14px; line-height: 25.2px; }
982
+ .gem-shell-footer .footer-block__details-content a { color: rgb(18 18 18 / 75%); text-decoration: none; }
983
+ .gem-shell-footer .footer-block__details-content p { margin: 0; max-width: 320px; }
984
+ .gem-shell-footer__bottom { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 18px; width: 100vw; min-height: 186px; margin: 50px 0 0 calc(50% - 50vw); border-top: 1px solid rgb(18 18 18 / 8%); padding: 30px calc((100vw - 1100px) / 2) 0; }
985
+ .gem-shell-footer__social, .gem-shell-footer__payments { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; list-style: none; }
986
+ .gem-shell-footer__social a { min-height: 24px; border: 0; padding: 0; color: rgb(18 18 18 / 75%); font-size: 13px; line-height: 18px; }
987
+ .gem-shell-footer__payments { margin-left: auto; gap: 6px; }
988
+ .gem-shell-footer__payment-icon { width: 38px; height: auto; }
989
+ .gem-shell-footer__payment-fallback { display: inline-grid; place-items: center; min-width: 38px; height: 24px; border: 1px solid rgb(18 18 18 / 12%); border-radius: 3px; background: white; color: rgb(18 18 18 / 72%); font-size: 8px; line-height: 1; }
990
+ .gem-shell-footer__localization { order: -1; flex: 0 0 100%; width: 100%; }
991
+ .gem-shell-footer__localization .gem-select, .gem-shell-footer__localization > .gem-select { display: inline-flex; align-items: center; min-width: 210px; min-height: 45px; border: 1px solid rgb(18 18 18 / 55%); border-radius: 0; background: transparent; padding: 10px 36px 10px 12px; color: rgb(18 18 18); font-size: 13px; line-height: 18px; }
992
+ :where(.gem-section[data-gem-eyebrow='show']) .gem-section__eyebrow { display: block; letter-spacing: 0.12em; }
993
+ :where(.gem-section[data-gem-heading='section']) .gem-section__heading { margin: 0; font-family: var(--gem-font-heading); font-size: var(--gem-h2); line-height: 1.1; letter-spacing: -0.01em; text-wrap: balance; }
994
+ :where(.gem-section[data-gem-body='section']) .gem-section__body { margin: 0; color: var(--gem-color-muted); font-size: var(--gem-body); line-height: var(--gem-font-body-line-height, 1.5); }
995
+ @media (max-width: 760px) {
996
+ :root { --gem-layout-gutter: 24px; --gem-layout-section: 36px; }
997
+ .gem-shell-header, .gem-shell-header__inner, .header { min-height: 64px; }
998
+ .gem-shell-header { --gem-component-header-height: 64px; }
999
+ .gem-shell-header__inner, .gem-shell-header__inner.header--middle-left, .gem-shell-header__inner.header--middle-center { display: grid; width: 100%; max-width: none; height: 64px; margin-inline: 0; grid-template-columns: 82px minmax(0, 1fr) 84px; grid-template-areas: 'drawer heading icons'; column-gap: 0; padding: 10px 30px; }
1000
+ .gem-shell-header__drawer { grid-area: drawer; order: 0; justify-self: start; }
1001
+ .gem-shell-header__logo { grid-area: heading; justify-self: center; }
1002
+ .gem-shell-header__actions { grid-area: icons; display: inline-flex; justify-self: start; gap: 0; }
1003
+ .gem-shell-header__actions .gem-shell-header__action.gem-shell-header__action--search, .gem-shell-header__actions .gem-shell-header__action.gem-shell-header__action--cart { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: transparent; color: rgb(18 18 18); font-size: 0; box-shadow: none; }
1004
+ .gem-shell-header__actions .gem-shell-header__action--account { display: none; }
1005
+ .gem-shell-header__action--search::before, .gem-shell-header__action--search::after, .gem-shell-header__action--cart::before, .gem-shell-header__action--cart::after { content: none; display: none; }
1006
+ .gem-shell-header .cart-count-bubble, .gem-shell-header__cart-count { display: none; }
1007
+ .gem-hero-banner--editorial, .gem-hero-banner--split-proof { min-height: auto; padding-block: 36px; }
1008
+ .gem-hero-banner--split-proof .gem-hero-banner__inner, .gem-hero-banner--editorial .gem-hero-banner__inner { grid-template-columns: 1fr; gap: 24px; }
1009
+ .gem-hero-banner--split-proof .gem-section__heading, .gem-hero-banner--editorial .gem-section__heading { font-size: 34px; }
1010
+ .gem-hero-banner--split-proof .gem-hero-banner__media, .gem-hero-banner--editorial .gem-hero-banner__media { min-height: 18rem; }
1011
+ .gem-hero-banner--default { min-height: 390px; }
1012
+ .gem-hero-banner--default .gem-hero-banner__inner { min-height: 390px; height: auto; align-items: center; justify-items: center; padding-bottom: 0; }
1013
+ .gem-hero-banner--default .gem-hero-banner__copy { position: relative; left: auto; bottom: auto; transform: none; align-self: auto; justify-self: auto; margin: 0 auto; padding-inline: 15px; }
1014
+ .gem-hero-banner--default .gem-section__heading { font-size: 40px; line-height: 52px; margin: 0; }
1015
+ .gem-hero-banner--default .gem-section__body { font-size: 15px; line-height: 27px; }
1016
+ .gem-hero-banner--default .gem-button--primary { min-width: 130px; min-height: 47px; box-sizing: border-box; font-size: 15px; line-height: 18px; }
1017
+ .gem-rich-text--dawn-intro { padding-block: 30px 0; }
1018
+ .gem-rich-text--dawn-intro .gem-rich-text__content { max-width: 320px; }
1019
+ .gem-rich-text--dawn-intro .gem-section__heading { font-size: 30px; line-height: 39px; }
1020
+ .gem-rich-text--dawn-intro .gem-section__body { font-size: 15px; line-height: 27px; }
1021
+ .gem-rich-text--dawn-intro .gem-rich-text__blocks { display: block; }
1022
+ .gem-featured-collection--editorial-grid { padding-block: 21px 27px; }
1023
+ .gem-hero-banner--compact-collection { padding-block: 25px; }
1024
+ .gem-hero-banner--compact-collection .gem-section__heading { font-size: 30px; line-height: 39px; }
1025
+ .gem-product-card-grid--quick-view-grid > .gem-section__inner, .gem-main-search > .gem-section__inner { width: calc(100% - 30px); }
1026
+ .gem-product-card-grid__grid { gap: 4px !important; }
1027
+ .gem-product-card__content { padding-top: 8px; gap: 4px; }
1028
+ .gem-product-card__title { font-size: 15px; line-height: 24px; }
1029
+ .gem-product-card__price, .gem-product-card__price .gem-price { font-size: 16px; line-height: 24px; }
1030
+ .gem-hero-banner h1, .gem-hero-banner h2, .gem-section__heading { font-size: clamp(2rem, 11vw, 3.6rem); }
1031
+ .gem-featured-collection--editorial-grid .gem-section__grid, .gem-product-card-grid--quick-view-grid .gem-section__grid, .gem-main-search .gem-section__grid { grid-template-columns: repeat(var(--gem-product-card-grid-mobile-columns, 2), minmax(0, 1fr)); }
1032
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] > .gem-section__inner { width: calc(100% - 30px); }
1033
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__frame { display: flex; gap: 0; overflow-x: auto; scroll-snap-type: x mandatory; }
1034
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-media-gallery__item { flex: 0 0 100%; scroll-snap-align: start; aspect-ratio: 1 / 1; }
1035
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__summary { gap: 15px; margin-top: 20px; }
1036
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__summary > .gem-section__heading { font-size: 30px; line-height: 39px; margin-bottom: 0; }
1037
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price, .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__price .gem-price { min-height: 30px; font-size: 16px; line-height: 24px; }
1038
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__sale-badge { min-height: 22px; padding: 4px 12px; font-size: 12px; line-height: 12px; font-weight: 400; }
1039
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-fallback { max-width: none; min-height: 112px; gap: 8px; }
1040
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-fallback legend { font-size: 15px; line-height: 27px; margin-bottom: 0; }
1041
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__variant-pill { min-height: 36px; min-width: auto; padding: 0 20px; font-size: 13px; line-height: 16px; }
1042
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons { gap: 15px; max-width: none; }
1043
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons__quantity { width: 142px; gap: 0; font-size: 15px; line-height: 27px; }
1044
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input { width: 142px; min-height: 47px; height: 47px; grid-template-columns: 44px 54px 44px; }
1045
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input__button, .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-quantity-input__field { min-height: 47px; height: 47px; padding-block: 0; }
1046
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-buy-buttons__submit { min-height: 47px; margin-top: 9px; padding-block: 0; font-size: 15px; line-height: 18px; }
1047
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] [class~='shopify-payment-button'] { min-height: 47px; height: 47px; margin-top: -5px; }
1048
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] [class~='shopify-payment-button']::before { min-height: 47px; font-size: 15px; line-height: 18px; }
1049
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-section__body { min-height: 312px; margin-top: 10px; font-size: 15px; line-height: 27px; }
1050
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-section__body + .gem-product-main__collapsible { margin-top: 9px; }
1051
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible { min-height: 51px; padding: 0; }
1052
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible + .gem-product-main__collapsible { margin-top: -15px; }
1053
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible + .gem-product-main__share { margin-top: -4px; }
1054
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible summary { min-height: 51px; padding-block: 12px; font-size: 15px; line-height: 27px; }
1055
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__collapsible .gem-richtext { display: none; }
1056
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story { margin-top: 65px; }
1057
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story-media { width: 100%; height: 296px; margin-bottom: 32px; }
1058
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story h2 { font-size: 20px; line-height: 26px; margin-bottom: 12px; }
1059
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__dawn-story p { font-size: 15px; line-height: 27px; }
1060
+ .gem-product-main[data-gem-product-main-layout='dawn-main'] .gem-product-main__share { min-height: 44px; width: 100%; font-size: 15px; line-height: 27px; }
1061
+ .gem-main-search { padding-top: 41px; }
1062
+ .gem-main-search .gem-section__heading { font-size: 20px; line-height: 26px; text-align: center; margin-bottom: 43px; }
1063
+ .gem-main-search .gem-search-form { max-width: none; width: 100%; margin-bottom: 22px; }
1064
+ .gem-main-search .gem-search-form .gem-input, .gem-main-search .gem-search-form .gem-button { min-height: 47px; }
1065
+ .gem-product-card-grid--quick-view-grid > .gem-section__inner, .gem-main-search > .gem-section__inner { position: relative; row-gap: 0; }
1066
+ .gem-product-card-grid--quick-view-grid .gem-product-card-grid__meta { position: absolute; inset-block-start: 0; inset-inline-end: 0; display: flex; float: none; justify-content: flex-end; align-items: center; min-height: 40px; height: 40px; margin: 0; font-size: 1.2rem; }
1067
+ .gem-product-card-grid__controls, .gem-main-search .gem-product-card-grid__controls { display: flex; justify-content: space-between; align-items: center; min-height: 40px; height: 40px; margin: 0 0 16px; padding-top: 0; }
1068
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__form, .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__form { display: contents; }
1069
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters, .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters { display: block; min-height: 40px; height: 40px; border: 0; background: transparent; padding: 0; overflow: hidden; }
1070
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary, .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary { display: inline-flex; align-items: center; min-height: 40px; height: 40px; border: 0; background: transparent; padding: 0; font-size: 0; pointer-events: auto; }
1071
+ .gem-collection-filter-toolbar__filters summary::before { content: none; display: none; }
1072
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary span:not(.svg-wrapper), .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary span:not(.svg-wrapper) { display: inline; font-size: 1.4rem; letter-spacing: 0; }
1073
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary .svg-wrapper, .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters summary .svg-wrapper { width: 1.6rem; height: 1.6rem; margin-right: 0.8rem; }
1074
+ .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters .gem-collection-filter-toolbar__filter, .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters label, .gem-product-card-grid__controls .gem-collection-filter-toolbar__filters select, .gem-product-card-grid__controls .gem-collection-filter-toolbar__sort, .gem-main-search .gem-product-card-grid__controls .gem-collection-filter-toolbar__sort { display: none; }
1075
+ .gem-main-search .gem-search-results-meta { margin-left: auto; font-size: 1.2rem; }
1076
+ .gem-cart-main--line-items { padding-top: 52px; padding-bottom: 38px; }
1077
+ .gem-cart-main--line-items .gem-section__heading { font-size: 30px; line-height: 39px; text-align: center; margin-bottom: 20px; }
1078
+ .gem-cart-main__empty { width: 360px !important; max-width: calc(100vw - 30px) !important; text-align: center; }
1079
+ .gem-cart-main__empty .gem-button { min-height: 47px; padding-block: 0; font-size: 15px; line-height: 18px; }
1080
+ .gem-cart-main__login { text-align: left; margin-top: 55px; }
1081
+ .gem-cart-main__login h2 { font-size: 20px; line-height: 26px; margin-bottom: 5px; }
1082
+ .gem-cart-main__login p { font-size: 15px; line-height: 27px; margin-top: 8px; }
1083
+ .gem-cart-recommendations--dawn-empty { margin-top: -46px; padding-bottom: 148px; }
1084
+ .gem-cart-recommendations--dawn-empty .gem-cart-recommendations__header { width: 360px !important; max-width: calc(100vw - 30px) !important; margin: 0 auto 15px; }
1085
+ .gem-cart-recommendations--dawn-empty .gem-section__heading { font-size: 18px; line-height: 24px; }
1086
+ .gem-cart-recommendations--dawn-empty .gem-cart-recommendations__rail { width: 360px !important; max-width: calc(100vw - 30px) !important; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row; grid-auto-columns: auto; overflow: visible; gap: 4px; padding-bottom: 0; }
1087
+ .gem-cart-recommendations--dawn-empty .gem-product-card-wrapper { width: auto; min-width: 0; }
1088
+ .gem-cart-recommendations--dawn-empty .gem-product-card__content { padding-top: 8px; gap: 5px; }
1089
+ .gem-cart-recommendations--dawn-empty .gem-product-card__title, .gem-cart-recommendations--dawn-empty .gem-product-card__price, .gem-cart-recommendations--dawn-empty .gem-product-card__price .gem-price { font-size: 15px; line-height: 24px; }
1090
+ .gem-shell-footer { margin-top: 0; padding-block: 27px; }
1091
+ .gem-shell-footer__inner { width: 100%; max-width: none; padding: 0; }
1092
+ .gem-shell-footer__grid { display: block; width: calc(100% - 80px); max-width: 310px; margin: 40px auto 0; padding-bottom: 0; }
1093
+ .gem-shell-footer__grid > div, .gem-shell-footer__column, .gem-shell-footer__block { width: 100%; margin: 0 0 40px; }
1094
+ .gem-shell-footer__grid > .gem-shell-footer__block:nth-child(1) { min-height: 176px; }
1095
+ .gem-shell-footer__grid > .gem-shell-footer__block:nth-child(2) { min-height: 222px; }
1096
+ .gem-shell-footer__grid > .gem-shell-footer__block:nth-child(3) { min-height: 95px; margin-bottom: 20px; }
1097
+ .gem-shell-footer .footer-block__heading { margin-bottom: 20px; font-size: 18px; line-height: 23.4px; }
1098
+ .gem-shell-footer .footer-block__details-content { gap: 10px; font-size: 14px; line-height: 25.2px; }
1099
+ .gem-shell-footer__newsletter { display: block; width: calc(100% - 80px); max-width: 310px; min-height: 162px; margin: 0 auto 0; padding-bottom: 0; }
1100
+ .gem-shell-footer__newsletter form { width: 100%; max-width: none; }
1101
+ .gem-shell-footer__bottom { display: flex; width: 100vw; max-width: none; min-height: 200px; margin: 9px 0 0; padding: 27px 40px 0; gap: 18px; }
1102
+ .gem-shell-footer__localization { order: 0; }
1103
+ .gem-shell-footer__payments { margin-left: 0; }
1104
+ .gem-hero-collage--category-mosaic { min-height: 709px; padding-block: 36px; }
1105
+ .gem-hero-collage--category-mosaic > .gem-section__inner { min-height: 637px; }
1106
+ .gem-hero-collage--category-mosaic .gem-hero-collage__grid { min-height: 637px; grid-template-columns: 1fr; grid-template-rows: 2fr 1fr 1fr; }
1107
+ .gem-hero-video--dawn-video { height: 212px; min-height: 212px; }
1108
+ .gem-hero-video--dawn-video > .gem-section__inner, .gem-hero-video--dawn-video .gem-hero-video__inner, .gem-hero-video--dawn-video .gem-hero-video__media { height: 212px; min-height: 212px; }
1109
+ .gem-advanced-list--feature-grid { height: 420px; min-height: 420px; padding-block: 36px; }
1110
+ .gem-advanced-list--feature-grid .gem-section__grid { grid-template-columns: 1fr; }
1111
+ :where(.gem-section[data-gem-heading='section']) .gem-section__heading { font-size: min(var(--gem-h2), clamp(1.75rem, 9vw, 2.75rem)); }
1112
+ }
1113
+ .gem-row:where(:not([hidden])) { --gem-row-auto-sm: repeat(var(--gem-row-cols-sm), minmax(0, 1fr)); --gem-row-auto-md: repeat(var(--gem-row-cols-md), minmax(0, 1fr)); --gem-row-auto-lg: repeat(var(--gem-row-cols), minmax(0, 1fr)); display: grid; grid-template-columns: var(--gem-row-tracks-sm, var(--gem-row-auto-sm, minmax(0, 1fr))); }
1114
+ :where(.gem-row > *) { min-width: 0; --gem-row-cols: initial; --gem-row-cols-md: initial; --gem-row-cols-sm: initial; --gem-row-tracks: initial; --gem-row-tracks-md: initial; --gem-row-tracks-sm: initial; --gem-row-gap: initial; --gem-row-gap-y: initial; }
1115
+ @media (min-width: 750px) { .gem-row { grid-template-columns: var(--gem-row-tracks-md, var(--gem-row-auto-md, var(--gem-row-tracks, var(--gem-row-auto-lg, repeat(2, minmax(0, 1fr)))))); } }
1116
+ @media (min-width: 990px) { .gem-row { grid-template-columns: var(--gem-row-tracks, var(--gem-row-auto-lg, repeat(2, minmax(0, 1fr)))); } }