@brandlab-digital/site-next 3.10.0 → 3.12.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 (61) hide show
  1. package/dist/ui-kit/brandlab-skin.d.ts +22 -0
  2. package/dist/ui-kit/brandlab-skin.d.ts.map +1 -1
  3. package/dist/ui-kit/brandlab-skin.js.map +1 -1
  4. package/dist/ui-kit/sections/accordion.d.ts +25 -0
  5. package/dist/ui-kit/sections/accordion.d.ts.map +1 -0
  6. package/dist/ui-kit/sections/accordion.js +14 -0
  7. package/dist/ui-kit/sections/accordion.js.map +1 -0
  8. package/dist/ui-kit/sections/contact-block.d.ts +51 -0
  9. package/dist/ui-kit/sections/contact-block.d.ts.map +1 -0
  10. package/dist/ui-kit/sections/contact-block.js +15 -0
  11. package/dist/ui-kit/sections/contact-block.js.map +1 -0
  12. package/dist/ui-kit/sections/cta-band.d.ts +59 -0
  13. package/dist/ui-kit/sections/cta-band.d.ts.map +1 -0
  14. package/dist/ui-kit/sections/cta-band.js +11 -0
  15. package/dist/ui-kit/sections/cta-band.js.map +1 -0
  16. package/dist/ui-kit/sections/faqs.d.ts +43 -0
  17. package/dist/ui-kit/sections/faqs.d.ts.map +1 -0
  18. package/dist/ui-kit/sections/faqs.js +40 -0
  19. package/dist/ui-kit/sections/faqs.js.map +1 -0
  20. package/dist/ui-kit/sections/index.d.ts +13 -0
  21. package/dist/ui-kit/sections/index.d.ts.map +1 -0
  22. package/dist/ui-kit/sections/index.js +13 -0
  23. package/dist/ui-kit/sections/index.js.map +1 -0
  24. package/dist/ui-kit/sections/page-header.d.ts +29 -0
  25. package/dist/ui-kit/sections/page-header.d.ts.map +1 -0
  26. package/dist/ui-kit/sections/page-header.js +9 -0
  27. package/dist/ui-kit/sections/page-header.js.map +1 -0
  28. package/dist/ui-kit/sections/price-guide.d.ts +56 -0
  29. package/dist/ui-kit/sections/price-guide.d.ts.map +1 -0
  30. package/dist/ui-kit/sections/price-guide.js +28 -0
  31. package/dist/ui-kit/sections/price-guide.js.map +1 -0
  32. package/dist/ui-kit/sections/price-table.d.ts +44 -0
  33. package/dist/ui-kit/sections/price-table.d.ts.map +1 -0
  34. package/dist/ui-kit/sections/price-table.js +29 -0
  35. package/dist/ui-kit/sections/price-table.js.map +1 -0
  36. package/dist/ui-kit/sections/proof-strip.d.ts +57 -0
  37. package/dist/ui-kit/sections/proof-strip.d.ts.map +1 -0
  38. package/dist/ui-kit/sections/proof-strip.js +20 -0
  39. package/dist/ui-kit/sections/proof-strip.js.map +1 -0
  40. package/dist/ui-kit/sections/rating-chip.d.ts +25 -0
  41. package/dist/ui-kit/sections/rating-chip.d.ts.map +1 -0
  42. package/dist/ui-kit/sections/rating-chip.js +15 -0
  43. package/dist/ui-kit/sections/rating-chip.js.map +1 -0
  44. package/dist/ui-kit/sections/reviews-band.d.ts +110 -0
  45. package/dist/ui-kit/sections/reviews-band.d.ts.map +1 -0
  46. package/dist/ui-kit/sections/reviews-band.js +104 -0
  47. package/dist/ui-kit/sections/reviews-band.js.map +1 -0
  48. package/dist/ui-kit/sections/section-sequence.d.ts +39 -0
  49. package/dist/ui-kit/sections/section-sequence.d.ts.map +1 -0
  50. package/dist/ui-kit/sections/section-sequence.js +34 -0
  51. package/dist/ui-kit/sections/section-sequence.js.map +1 -0
  52. package/dist/ui-kit/sections/site-footer-columns.d.ts +12 -0
  53. package/dist/ui-kit/sections/site-footer-columns.d.ts.map +1 -0
  54. package/dist/ui-kit/sections/site-footer-columns.js +63 -0
  55. package/dist/ui-kit/sections/site-footer-columns.js.map +1 -0
  56. package/dist/ui-kit/sections/site-footer.d.ts +59 -0
  57. package/dist/ui-kit/sections/site-footer.d.ts.map +1 -0
  58. package/dist/ui-kit/sections/site-footer.js +41 -0
  59. package/dist/ui-kit/sections/site-footer.js.map +1 -0
  60. package/dist/ui-kit/structure.css +569 -0
  61. package/package.json +6 -2
@@ -911,4 +911,573 @@
911
911
  padding: 1rem var(--bl-gutter, 1.25rem) var(--bl-gutter, 1.25rem);
912
912
  }
913
913
 
914
+ /* 30-reviews.css */
915
+ /* S7 reviews band and the rating chip: layout only. Colours, fonts and shapes come from each site's skin. */
916
+
917
+ [data-bl='rating-chip'] {
918
+ display: inline-flex;
919
+ flex-wrap: wrap;
920
+ align-items: center;
921
+ gap: 0.35rem 0.5rem;
922
+ margin: 0;
923
+ }
924
+ [data-bl='rating-chip'] > [data-slot='source'] {
925
+ display: inline-flex;
926
+ align-items: center;
927
+ min-height: 24px;
928
+ }
929
+
930
+ [data-bl-section='reviews'] {
931
+ container: bl-reviews / inline-size;
932
+ isolation: isolate;
933
+ }
934
+ [data-bl-section='reviews'] :where(ul[data-slot='list'], figure, blockquote, blockquote p, [data-slot='disclosure']) {
935
+ margin: 0;
936
+ }
937
+ [data-bl-section='reviews'] [data-slot='top'] {
938
+ display: flex;
939
+ flex-wrap: wrap;
940
+ align-items: flex-end;
941
+ justify-content: space-between;
942
+ gap: 1.5rem 2.5rem;
943
+ }
944
+ [data-bl-section='reviews'][data-align='center'] [data-slot='top'] {
945
+ flex-direction: column;
946
+ align-items: center;
947
+ text-align: center;
948
+ }
949
+ [data-bl-section='reviews'] [data-slot='list'] {
950
+ display: grid;
951
+ gap: 1.25rem;
952
+ margin-top: 2.5rem;
953
+ padding: 0;
954
+ list-style: none;
955
+ }
956
+ [data-bl-section='reviews'] [data-slot='item'] > figure {
957
+ display: flex;
958
+ flex-direction: column;
959
+ gap: 1rem;
960
+ height: 100%;
961
+ }
962
+ [data-bl-section='reviews'] [data-slot='quote'] {
963
+ flex: 1;
964
+ }
965
+ /* The reviewer's own line breaks stay. */
966
+ [data-bl-section='reviews'] [data-slot='quote'] p {
967
+ white-space: pre-line;
968
+ }
969
+ [data-bl-section='reviews'] [data-slot='more'] {
970
+ margin-top: 0.5rem;
971
+ }
972
+ [data-bl-section='reviews'] [data-slot='more'] > summary {
973
+ min-height: 24px;
974
+ cursor: pointer;
975
+ }
976
+ [data-bl-section='reviews'] [data-slot='more'][open] > summary {
977
+ margin-bottom: 0.5rem;
978
+ }
979
+ [data-bl-section='reviews'] [data-slot='author'] {
980
+ display: grid;
981
+ grid-template-columns: auto 1fr;
982
+ column-gap: 0.75rem;
983
+ align-items: center;
984
+ }
985
+ [data-bl-section='reviews'] [data-slot='avatar'] {
986
+ grid-row: span 2;
987
+ width: 48px;
988
+ height: 48px;
989
+ object-fit: cover;
990
+ }
991
+ [data-bl-section='reviews'] [data-slot='author'] > :not([data-slot='avatar']) {
992
+ grid-column: 2;
993
+ }
994
+ [data-bl-section='reviews'] [data-slot='author']:not(:has([data-slot='avatar'])) {
995
+ grid-template-columns: 1fr;
996
+ }
997
+ [data-bl-section='reviews'] [data-slot='author']:not(:has([data-slot='avatar'])) > * {
998
+ grid-column: 1;
999
+ }
1000
+ [data-bl-section='reviews'] [data-slot='disclosure'] {
1001
+ margin-top: 2rem;
1002
+ }
1003
+ [data-bl-section='reviews'][data-align='center'] [data-slot='disclosure'] {
1004
+ text-align: center;
1005
+ }
1006
+ [data-bl-section='reviews'] [data-slot='profileLink'] {
1007
+ display: inline-flex;
1008
+ align-items: center;
1009
+ min-height: 24px;
1010
+ }
1011
+
1012
+ /* The reviews page: a wall of every review, in balanced columns. */
1013
+ [data-bl-section='reviews'][data-variant='wall'] [data-slot='list'] {
1014
+ display: block;
1015
+ columns: 1;
1016
+ column-gap: 1.25rem;
1017
+ }
1018
+ [data-bl-section='reviews'][data-variant='wall'] [data-slot='item'] {
1019
+ break-inside: avoid;
1020
+ margin-bottom: 1.25rem;
1021
+ }
1022
+
1023
+ @container bl-reviews (min-width: 768px) {
1024
+ [data-bl-section='reviews']:is([data-columns='2'], [data-columns='3']) [data-slot='list'] {
1025
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1026
+ }
1027
+ [data-bl-section='reviews'][data-variant='feature'] [data-slot='list'] {
1028
+ grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
1029
+ align-items: start;
1030
+ }
1031
+ [data-bl-section='reviews'][data-variant='feature'] [data-slot='item'][data-lead='true'] {
1032
+ grid-row: span 2;
1033
+ }
1034
+ [data-bl-section='reviews'][data-variant='wall']:is([data-columns='2'], [data-columns='3']) [data-slot='list'] {
1035
+ columns: 2;
1036
+ }
1037
+ }
1038
+ @container bl-reviews (min-width: 1024px) {
1039
+ [data-bl-section='reviews'][data-columns='3']:not([data-variant='feature']) [data-slot='list'] {
1040
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1041
+ }
1042
+ [data-bl-section='reviews'][data-variant='wall'][data-columns='3'] [data-slot='list'] {
1043
+ columns: 3;
1044
+ }
1045
+ }
1046
+
1047
+ /* 31-cta.css */
1048
+ /* S8 CTA band: layout only. The photo variant's backdrop fills the band behind the content. */
1049
+
1050
+ [data-bl-section='cta'] {
1051
+ container: bl-cta / inline-size;
1052
+ isolation: isolate;
1053
+ }
1054
+ [data-bl-section='cta'] :where(h2, p) {
1055
+ margin: 0;
1056
+ }
1057
+ [data-bl-section='cta'] > [data-slot='media'] {
1058
+ position: absolute;
1059
+ inset: 0;
1060
+ z-index: -1;
1061
+ overflow: hidden;
1062
+ pointer-events: none;
1063
+ }
1064
+ [data-bl-section='cta'] > [data-slot='media'] :where(img, picture, video) {
1065
+ display: block;
1066
+ width: 100%;
1067
+ height: 100%;
1068
+ object-fit: cover;
1069
+ }
1070
+ [data-bl-section='cta'] [data-slot='content'] {
1071
+ display: grid;
1072
+ justify-items: start;
1073
+ align-content: start;
1074
+ gap: 1rem;
1075
+ }
1076
+ [data-bl-section='cta'][data-align='center'] [data-slot='content'] {
1077
+ justify-items: center;
1078
+ text-align: center;
1079
+ }
1080
+ [data-bl-section='cta'] [data-slot='actions'] {
1081
+ display: flex;
1082
+ flex-wrap: wrap;
1083
+ align-items: center;
1084
+ gap: 0.75rem 1.25rem;
1085
+ margin-top: 0.5rem;
1086
+ }
1087
+ [data-bl-section='cta'][data-align='center'] [data-slot='actions'] {
1088
+ justify-content: center;
1089
+ }
1090
+ [data-bl-section='cta'][data-variant='form'] > [data-slot='inner'] {
1091
+ display: grid;
1092
+ gap: 2.5rem;
1093
+ }
1094
+
1095
+ @container bl-cta (min-width: 1024px) {
1096
+ [data-bl-section='cta'][data-variant='form'] > [data-slot='inner'] {
1097
+ grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
1098
+ align-items: start;
1099
+ gap: 4rem;
1100
+ }
1101
+ }
1102
+
1103
+ /* 32-footer.css */
1104
+ /* S27 footer: layout only. Tone (light, ink or the photo panel) comes from each site's skin. */
1105
+
1106
+ [data-bl='footer'] {
1107
+ position: relative;
1108
+ isolation: isolate;
1109
+ container: bl-footer / inline-size;
1110
+ }
1111
+ [data-bl='footer'] :where(ul) {
1112
+ margin: 0;
1113
+ padding: 0;
1114
+ list-style: none;
1115
+ }
1116
+ [data-bl='footer'] :where(p, h2) {
1117
+ margin: 0;
1118
+ }
1119
+ [data-bl='footer'] > [data-slot='decoration'] {
1120
+ position: absolute;
1121
+ inset: 0;
1122
+ z-index: 2;
1123
+ pointer-events: none;
1124
+ }
1125
+ [data-bl='footer'] [data-slot='panel'] {
1126
+ position: relative;
1127
+ isolation: isolate;
1128
+ }
1129
+ [data-bl='footer'] [data-slot='panel'] > [data-slot='media'] {
1130
+ position: absolute;
1131
+ inset: 0;
1132
+ z-index: -1;
1133
+ overflow: hidden;
1134
+ pointer-events: none;
1135
+ }
1136
+ [data-bl='footer'] [data-slot='panel'] > [data-slot='media'] :where(img, picture) {
1137
+ display: block;
1138
+ width: 100%;
1139
+ height: 100%;
1140
+ object-fit: cover;
1141
+ }
1142
+ [data-bl='footer'] [data-slot='inner'] {
1143
+ display: grid;
1144
+ gap: 2.5rem;
1145
+ max-width: var(--bl-container, 80rem);
1146
+ margin-inline: auto;
1147
+ padding: var(--bl-space-section, 4rem) var(--bl-gutter, 1.25rem) 3rem;
1148
+ }
1149
+ [data-bl='footer'] [data-slot='brand'] {
1150
+ display: grid;
1151
+ align-content: start;
1152
+ gap: 1.25rem;
1153
+ }
1154
+ [data-bl='footer'] [data-slot='logo'] {
1155
+ display: inline-flex;
1156
+ justify-self: start;
1157
+ }
1158
+ [data-bl='footer'] [data-slot='logo'] img {
1159
+ display: block;
1160
+ width: auto;
1161
+ height: var(--bl-footer-logo-h, 56px);
1162
+ }
1163
+ [data-bl='footer'] [data-slot='licences'] {
1164
+ display: grid;
1165
+ gap: 0.25rem;
1166
+ }
1167
+ /* WCAG 2.5.8: every footer link is at least 24 px tall without relying on the spacing exception. */
1168
+ [data-bl='footer'] [data-slot='licenceLink'] {
1169
+ display: inline-flex;
1170
+ align-items: center;
1171
+ min-height: 24px;
1172
+ }
1173
+ [data-bl='footer'] [data-slot='social'] {
1174
+ display: flex;
1175
+ flex-wrap: wrap;
1176
+ gap: 0.5rem;
1177
+ }
1178
+ [data-bl='footer'] [data-slot='socialLink'] {
1179
+ display: inline-flex;
1180
+ align-items: center;
1181
+ justify-content: center;
1182
+ width: 44px;
1183
+ height: 44px;
1184
+ }
1185
+ [data-bl='footer'] [data-slot='social'] svg {
1186
+ width: 1.05rem;
1187
+ height: 1.05rem;
1188
+ }
1189
+ [data-bl='footer'] [data-slot='contact'] {
1190
+ display: grid;
1191
+ justify-items: start;
1192
+ gap: 0.25rem;
1193
+ }
1194
+ [data-bl='footer'] [data-slot='contact'] > a {
1195
+ display: inline-flex;
1196
+ align-items: center;
1197
+ min-height: 44px;
1198
+ }
1199
+ [data-bl='footer'] [data-slot='columns'] {
1200
+ display: grid;
1201
+ gap: 2rem;
1202
+ }
1203
+ [data-bl='footer'] [data-slot='columns'][data-accordion='true'] {
1204
+ gap: 0;
1205
+ }
1206
+ [data-bl='footer'] [data-slot='column'] > [data-slot='list'] {
1207
+ display: grid;
1208
+ gap: 0.15rem;
1209
+ margin-top: 0.75rem;
1210
+ }
1211
+ [data-bl='footer'] [data-slot='column'] > [data-slot='list'] a {
1212
+ display: inline-flex;
1213
+ align-items: center;
1214
+ min-height: 32px;
1215
+ }
1216
+ [data-bl='footer'] [data-slot='toggle'] {
1217
+ display: flex;
1218
+ align-items: center;
1219
+ justify-content: space-between;
1220
+ width: 100%;
1221
+ min-height: 52px;
1222
+ padding: 0;
1223
+ border: 0;
1224
+ background: none;
1225
+ color: inherit;
1226
+ font: inherit;
1227
+ letter-spacing: inherit;
1228
+ text-align: start;
1229
+ text-transform: inherit;
1230
+ cursor: pointer;
1231
+ }
1232
+ [data-bl='footer'] [data-slot='toggle'] svg {
1233
+ width: 1.1rem;
1234
+ height: 1.1rem;
1235
+ transition: rotate 150ms ease;
1236
+ }
1237
+ [data-bl='footer'] [data-slot='toggle'][aria-expanded='true'] svg {
1238
+ rotate: 180deg;
1239
+ }
1240
+ [data-bl='footer'] [data-slot='columns'][data-accordion='true'] [data-slot='column'] > [data-slot='list'] {
1241
+ margin-top: 0;
1242
+ padding-bottom: 1rem;
1243
+ }
1244
+ [data-bl='footer'] [data-slot='bottomInner'] {
1245
+ display: flex;
1246
+ flex-wrap: wrap;
1247
+ align-items: center;
1248
+ justify-content: space-between;
1249
+ gap: 0.75rem 1.5rem;
1250
+ max-width: var(--bl-container, 80rem);
1251
+ margin-inline: auto;
1252
+ padding: 1.25rem var(--bl-gutter, 1.25rem);
1253
+ }
1254
+ /* The ABN never breaks across lines on a phone. */
1255
+ [data-bl='footer'] [data-slot='legal'] > span:not([aria-hidden]) {
1256
+ white-space: nowrap;
1257
+ }
1258
+ [data-bl='footer'] [data-slot='policies'] {
1259
+ display: flex;
1260
+ flex-wrap: wrap;
1261
+ gap: 0.25rem 1.25rem;
1262
+ }
1263
+ [data-bl='footer'] [data-slot='policyLink'] {
1264
+ display: inline-flex;
1265
+ align-items: center;
1266
+ min-height: 32px;
1267
+ }
1268
+
1269
+ @container bl-footer (min-width: 640px) {
1270
+ [data-bl='footer'] [data-slot='columns'] {
1271
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1272
+ }
1273
+ }
1274
+ @container bl-footer (min-width: 1024px) {
1275
+ [data-bl='footer'] [data-slot='inner'] {
1276
+ grid-template-columns: minmax(0, 1fr) minmax(0, 1.9fr);
1277
+ gap: 4rem;
1278
+ }
1279
+ }
1280
+
1281
+ /* 33-faqs.css */
1282
+ /* Accordion and FAQs: native <details name> disclosures (one open at a time); two columns from 48rem of the section. */
1283
+
1284
+ [data-bl='accordion'] > [data-slot='item'] > [data-slot='summary'] {
1285
+ display: flex;
1286
+ align-items: center;
1287
+ justify-content: space-between;
1288
+ gap: 1rem;
1289
+ min-height: 44px;
1290
+ cursor: pointer;
1291
+ list-style: none;
1292
+ }
1293
+ [data-bl='accordion'] > [data-slot='item'] > [data-slot='summary']::-webkit-details-marker {
1294
+ display: none;
1295
+ }
1296
+ [data-bl='accordion'] [data-slot='marker'] svg {
1297
+ width: 1.25em;
1298
+ height: 1.25em;
1299
+ transition: transform 150ms ease;
1300
+ }
1301
+ [data-bl='accordion'] > [data-slot='item'][open] > [data-slot='summary'] [data-slot='marker'] svg {
1302
+ transform: rotate(180deg);
1303
+ }
1304
+
1305
+ [data-bl-section='faqs'] {
1306
+ container-type: inline-size;
1307
+ }
1308
+ [data-bl-section='faqs'] [data-slot='columns'] {
1309
+ display: grid;
1310
+ gap: 0 calc(var(--bl-gutter, 1.25rem) * 2);
1311
+ }
1312
+ @container (min-width: 48rem) {
1313
+ [data-bl-section='faqs'] [data-slot='columns'][data-columns='2'] {
1314
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1315
+ align-items: start;
1316
+ }
1317
+ }
1318
+
1319
+ /* 34-prices.css */
1320
+ /* Price table and price guide. Below 40rem of its own width the table stacks its rows; its explicit roles keep the
1321
+ table semantics, and each cell shows its column label (aria-hidden) for sighted readers. Lists styled without
1322
+ bullets carry role="list", so Safari keeps announcing them as lists. */
1323
+
1324
+ [data-bl='price-table'] {
1325
+ container-type: inline-size;
1326
+ }
1327
+ [data-bl='price-table'] > table {
1328
+ width: 100%;
1329
+ border-collapse: collapse;
1330
+ }
1331
+ [data-bl='price-table'] caption,
1332
+ [data-bl='price-table'] :where(th, td) {
1333
+ text-align: start;
1334
+ vertical-align: top;
1335
+ }
1336
+ [data-bl='price-table'] [data-slot='label'] {
1337
+ display: none;
1338
+ }
1339
+ :where([data-bl='price-table'], [data-bl-section='price-guide']) [data-slot='range'] {
1340
+ white-space: nowrap;
1341
+ }
1342
+ @container (max-width: 40rem) {
1343
+ [data-bl='price-table'] :where(table, tbody, tr, th, td) {
1344
+ display: block;
1345
+ }
1346
+ [data-bl='price-table'] thead {
1347
+ position: absolute;
1348
+ width: 1px;
1349
+ height: 1px;
1350
+ overflow: hidden;
1351
+ clip-path: inset(50%);
1352
+ white-space: nowrap;
1353
+ }
1354
+ [data-bl='price-table'] [data-slot='label'] {
1355
+ display: block;
1356
+ }
1357
+ }
1358
+
1359
+ [data-bl-section='price-guide'] :where([data-slot='cards'], [data-slot='bands']) {
1360
+ margin: 0;
1361
+ padding: 0;
1362
+ list-style: none;
1363
+ }
1364
+ [data-bl-section='price-guide'] [data-slot='cards'] {
1365
+ display: grid;
1366
+ gap: var(--bl-gutter, 1.25rem);
1367
+ grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
1368
+ }
1369
+ [data-bl-section='price-guide'] [data-slot='bands'] {
1370
+ display: grid;
1371
+ gap: 0.75rem;
1372
+ }
1373
+ [data-bl-section='price-guide'] [data-slot='band'] {
1374
+ display: flex;
1375
+ flex-wrap: wrap;
1376
+ align-items: baseline;
1377
+ justify-content: space-between;
1378
+ gap: 0.25rem 1rem;
1379
+ }
1380
+ [data-bl-section='price-guide'] [data-slot='band'] > :where([data-slot='includes'], [data-slot='excludes']) {
1381
+ flex-basis: 100%;
1382
+ }
1383
+
1384
+ /* 35-proof.css */
1385
+ /* Proof strip: one wrapping row (inline) or a grid of tiles. */
1386
+
1387
+ [data-bl-section='proof-strip'] [data-slot='list'] {
1388
+ margin: 0;
1389
+ padding: 0;
1390
+ list-style: none;
1391
+ display: flex;
1392
+ flex-wrap: wrap;
1393
+ align-items: center;
1394
+ gap: 0.75rem 2rem;
1395
+ }
1396
+ [data-bl-section='proof-strip'][data-variant='tiles'] [data-slot='list'] {
1397
+ display: grid;
1398
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
1399
+ align-items: stretch;
1400
+ gap: var(--bl-gutter, 1.25rem);
1401
+ }
1402
+ [data-bl-section='proof-strip'] [data-slot='item'] {
1403
+ display: flex;
1404
+ flex-wrap: wrap;
1405
+ align-items: center;
1406
+ gap: 0.25rem 0.5rem;
1407
+ }
1408
+ [data-bl-section='proof-strip'] [data-slot='icon'] svg {
1409
+ width: 1.5em;
1410
+ height: 1.5em;
1411
+ }
1412
+ [data-bl-section='proof-strip'] [data-slot='logos'] {
1413
+ margin-top: 1.5rem;
1414
+ }
1415
+
1416
+ /* 36-page-header.css */
1417
+ /* Page header. The photo variant puts the site's image and its scrim behind the text, edge to edge. */
1418
+
1419
+ [data-bl-section='page-header'][data-variant='photo'] {
1420
+ isolation: isolate;
1421
+ overflow: hidden;
1422
+ }
1423
+ [data-bl-section='page-header'][data-variant='photo'] > [data-slot='inner'] {
1424
+ position: static;
1425
+ }
1426
+ [data-bl-section='page-header'] :where([data-slot='media'], [data-slot='scrim']) {
1427
+ position: absolute;
1428
+ inset: 0;
1429
+ z-index: -1;
1430
+ }
1431
+ [data-bl-section='page-header'] [data-slot='media'] :where(img, picture, video) {
1432
+ width: 100%;
1433
+ height: 100%;
1434
+ object-fit: cover;
1435
+ }
1436
+
1437
+ /* 37-contact.css */
1438
+ /* Contact block: the form and the details side by side from 48rem of the section (form at the start by default). */
1439
+
1440
+ [data-bl-section='contact'] {
1441
+ container-type: inline-size;
1442
+ }
1443
+ [data-bl-section='contact'] > [data-slot='inner'] {
1444
+ display: grid;
1445
+ gap: calc(var(--bl-gutter, 1.25rem) * 2);
1446
+ }
1447
+ [data-bl-section='contact'] [data-slot='list'] {
1448
+ margin: 0;
1449
+ }
1450
+ [data-bl-section='contact'] [data-slot='value'] {
1451
+ margin: 0 0 1rem;
1452
+ }
1453
+ [data-bl-section='contact'] [data-slot='line'] {
1454
+ display: block;
1455
+ }
1456
+ @container (min-width: 48rem) {
1457
+ [data-bl-section='contact'] > [data-slot='inner'] {
1458
+ grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
1459
+ align-items: start;
1460
+ }
1461
+ [data-bl-section='contact'][data-form-side='end'] > [data-slot='inner'] {
1462
+ grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
1463
+ }
1464
+ [data-bl-section='contact'][data-form-side='end'] [data-slot='form'] {
1465
+ order: 2;
1466
+ }
1467
+ }
1468
+
1469
+ /* 38-sequence.css */
1470
+ /* Section tones assigned by SectionSequence, from the site's tokens. The photo tone takes its look from its image. */
1471
+
1472
+ [data-bl-section][data-tone='canvas'] {
1473
+ background-color: var(--bl-color-canvas, transparent);
1474
+ }
1475
+ [data-bl-section][data-tone='surface'] {
1476
+ background-color: var(--bl-color-surface, transparent);
1477
+ }
1478
+ [data-bl-section][data-tone='band'] {
1479
+ background-color: var(--bl-color-band, transparent);
1480
+ color: var(--bl-color-on-band, inherit);
1481
+ }
1482
+
914
1483
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brandlab-digital/site-next",
3
- "version": "3.10.0",
3
+ "version": "3.12.0",
4
4
  "license": "UNLICENSED",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,7 +25,7 @@
25
25
  "typecheck": "tsc --noEmit -p tsconfig.json"
26
26
  },
27
27
  "dependencies": {
28
- "@brandlab-digital/site-core": "3.10.0",
28
+ "@brandlab-digital/site-core": "3.12.0",
29
29
  "browser-image-compression": "2.0.2",
30
30
  "pdf-lib": "1.17.1",
31
31
  "server-only": "0.0.1",
@@ -174,6 +174,10 @@
174
174
  "types": "./dist/ui-kit/form/index.d.ts",
175
175
  "import": "./dist/ui-kit/form/index.js"
176
176
  },
177
+ "./ui-kit/sections": {
178
+ "types": "./dist/ui-kit/sections/index.d.ts",
179
+ "import": "./dist/ui-kit/sections/index.js"
180
+ },
177
181
  "./ui-kit/structure.css": {
178
182
  "style": "./dist/ui-kit/structure.css",
179
183
  "default": "./dist/ui-kit/structure.css"