1<!doctype html> 2<html 3 class="no-js" 4 lang="en" 5 6> 7 <head> 8 <!-- Google Tag Manager --> 9
9<script>
vendor: 343 bytes, lines 9-13
9(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 10 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 11 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 12 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 13 })(window,document,'script','dataLayer','
13GTM-NBQN8V3S
vendor: 3 bytes, line 13
13');
13</script>
13 14 <!-- End Google Tag Manager --> 15 <meta charset="utf-8"> 16 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 17 <meta name="viewport" content="width=device-width,initial-scale=1"> 18 <meta name="theme-color" content=""> 19 <link rel="canonical" href="https://www.fornasetti.com/en-us/search"> 20 <link rel="preconnect" href="https://cdn.shopify.com" crossorigin><link rel="icon" type="image/png" href="//www.fornasetti.com/cdn/shop/files/F_-_Black.png?crop=center&height=32&v=1771407265&width=32"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title>Search – Fornasetti Store</title> 21 22 23 <meta name="description" content="Where Art meets Design: Explore the unique home & furniture creations on Fornasetti® Official Store. Choose the best furniture and accessories and buy online now."> 24 25 26 27<meta property="og:site_name" content="Fornasetti Store"> 28<meta property="og:url" content="https://www.fornasetti.com/en-us/search"> 29<meta property="og:title" content="Search"> 30<meta property="og:type" content="website"> 31<meta property="og:description" content="Where Art meets Design: Explore the unique home & furniture creations on Fornasetti® Official Store. Choose the best furniture and accessories and buy online now."><meta property="og:image" content="http://www.fornasetti.com/cdn/shop/files/logo-fornasett
31i2_4e14e139-936a-419c-9236-3c4a4254aeb5.svg?v=1769419909"> 32 <meta property="og:image:secure_url" content="https://www.fornasetti.com/cdn/shop/files/logo-fornasetti2_4e14e139-936a-419c-9236-3c4a4254aeb5.svg?v=1769419909"> 33 <meta property="og:image:width" content="710"> 34 <meta property="og:image:height" content="133"><meta name="twitter:site" content="@https://x.com/FORNASETTIofcl"><meta name="twitter:card" content="summary_large_image"> 35<meta name="twitter:title" content="Search"> 36<meta name="twitter:description" content="Where Art meets Design: Explore the unique home & furniture creations on Fornasetti® Official Store. Choose the best furniture and accessories and buy online now."> 37 38<style data-shopify> 39 @font-face { 40 font-family: "DM Sans"; 41 font-weight: 400; 42 font-style: normal; 43 font-display: swap; 44 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"), 45 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff"); 46} 47 48 @font-face { 49 font-family: "DM Sans"; 50 font-weight: 400; 51 font-style: italic; 52 font-display: swap; 53 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i4.b8fe05e69ee95d5a53155c346957d8cbf5081c1a.woff2") format("woff2"), 54 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i4.403fe28ee2ea63e142575c0aa47684d65f8c23a0.woff") format("woff"); 55} 56 57 @font-face { 58 font-family: "DM Sans"; 59 font-weight: 700; 60 font-style: normal; 61 font-display: swap; 62 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"), 63 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff"); 64} 65 66 @font-face { 67 font-family: "DM Sans"; 68 font-weight: 700; 69 font-style: italic; 70 font-display: swap; 71 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i7.52b57f7d7342eb7255084623d98ab83fd96e7f9b.woff2") format("woff2"), 72 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i7.d5e14ef18a1d4a8ce78a4187580b4eb1759c2eda.woff") format("woff"); 73} 74 75 @font-face { 76 font-family: "DM Sans"; 77 font-weight: 700; 78 font-style: normal; 79 font-display: swap; 80 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"), 81 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff"); 82} 83 84 @font-face { 85 font-family: "DM Sans"; 86 font-weight: 700; 87 font-style: italic; 88 font-display: swap; 89 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i7.52b57f7d7342eb7255084623d98ab83fd96e7f9b.woff2") format("woff2"), 90 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_i7.d5e14ef18a1d4a8ce78a4187580b4eb1759c2eda.woff") format("woff"); 91} 92 93 @font-face { 94 font-family: "DM Sans"; 95 font-weight: 500; 96 font-style: normal; 97 font-display: swap; 98 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"), 99 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff"); 100} 101 102 @font-face { 103 font-family: "Playfair Display"; 104 font-weight: 400; 105 font-style: normal; 106 font-display: swap; 107 src: url("//www.fornasetti.com/cdn/fonts/playfair_display/playfairdisplay_n4.9980f3e16959dc89137cc1369bfc3ae98af1deb9.woff2") format("woff2"), 108 url("//www.fornasetti.com/cdn/fonts/playfair_display/playfairdisplay_n4.c562b7c8e5637886a811d2a017f9e023166064ee.woff") format("woff"); 109} 110 111 @font-face { 112 font-family: "Playfair Display"; 113 font-weight: 400; 114 font-style: italic; 115 font-display: swap; 116 src: url("//www.fornasetti.com/cdn/fonts/playfair_display/playfairdisplay_i4.804ea8da9192aaed0368534aa085b3c1f3411619.woff2") format("woff2"), 117 url("//www.fornasetti.com/cdn/fonts/playfair_display/playfairdisplay_i4.5538cb7a825d13d8a2333cd8a94065a93a95c710.woff") format("woff"); 118} 119 120 @font-face { 121 font-family: "DM Sans"; 122 font-weight: 500; 123 font-style: normal; 124 font-display: swap;
125 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"), 126 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff"); 127} 128@font-face { 129 font-family: "DM Sans"; 130 font-weight: 500; 131 font-style: normal; 132 font-display: swap; 133 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"), 134 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff"); 135} 136@font-face { 137 font-family: "DM Sans"; 138 font-weight: 500; 139 font-style: normal; 140 font-display: swap; 141 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"), 142 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff"); 143} 144@font-face { 145 font-family: "DM Sans"; 146 font-weight: 500; 147 font-style: normal; 148 font-display: swap; 149 src: url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"), 150 url("//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff"); 151} 152 153 154 155 :root, 156.color-scheme-1 { 157 --color-background: 246,245,243; 158 --color-secondary-background: 255,255,255; 159 --color-primary: 214,58,47; 160 --color-text-heading: 0,0,0; 161 --color-foreground: 0,0,0; 162 --color-border: 237,237,237; 163 --color-button: 0,0,0; 164 --color-button-text: 255,255,255; 165 --color-secondary-button: 0,0,0; 166 --color-secondary-button-border: 0,0,0; 167 --color-secondary-button-text: 255,255,255; 168 --color-button-hover-background: 0,0,0; 169 --color-button-hover-text: 255,255,255; 170 --color-button-before: #333333; 171 --color-field: 245,245,245; 172 --color-field-text: 0,0,0; 173 --color-link: 0,0,0; 174 --color-link-hover: 0,0,0; 175 --color-product-price-sale: 214,58,47; 176 --color-foreground-lighten-60: #626261; 177 --color-foreground-lighten-19: #c7c6c5; 178 } 179 @media (min-width: 768px) { 180 body .desktop-color-scheme-1 { 181 --color-background: 246,245,243; 182 --color-secondary-background: 255,255,255; 183 --color-primary: 214,58,47; 184 --color-text-heading: 0,0,0; 185 --color-foreground: 0,0,0; 186 --color-border: 237,237,237; 187 --color-button: 0,0,0; 188 --color-button-text: 255,255,255; 189 --color-secondary-button: 0,0,0; 190 --color-secondary-button-border: 0,0,0; 191 --color-secondary-button-text: 255,255,255; 192 --color-button-hover-background: 0,0,0; 193 --color-button-hover-text: 255,255,255; 194 --color-button-before: #333333; 195 --color-field: 245,245,245; 196 --color-field-text: 0,0,0; 197 --color-link: 0,0,0; 198 --color-link-hover: 0,0,0; 199 --color-product-price-sale: 214,58,47; 200 --color-foreground-lighten-60: #626261; 201 --color-foreground-lighten-19: #c7c6c5; 202 color: rgb(var(--color-foreground)); 203 background-color: rgb(var(--color-background)); 204 } 205 } 206 @media (max-width: 767px) { 207 body .mobile-color-scheme-1 { 208 --color-background: 246,245,243; 209 --color-secondary-background: 255,255,255; 210 --color-primary: 214,58,47; 211 --color-text-heading: 0,0,0; 212 --color-foreground: 0,0,0; 213 --color-border: 237,237,237; 214 --color-button: 0,0,0; 215 --color-button-text: 255,255,255; 216 --color-secondary-button: 0,0,0; 217 --color-secondary-button-border: 0,0,0; 218 --color-secondary-button-text: 255,255,255; 219 --color-button-hover-background: 0,0,0; 220 --color-button-hover-text: 255,255,255; 221 --color-button-before: #333333; 222 --color-field: 245,245,245; 223 --color-field-text: 0,0,0; 224 --color-link: 0,0,0; 225 --color-link-hover: 0,0,0; 226 --color-product-price-sale: 214,58,47; 227 --color-foreground-lighten-60: #626261; 228 --color-foreground-lighten-19: #c7c6c5; 229 color: rgb(var(--color-foreground)); 230 background-color: rgb(var(--color-background)); 231 } 232 } 233 234 235.color-scheme-2 {
236 --color-background: 110,51,26; 237 --color-secondary-background: 110,51,26; 238 --color-primary: 214,58,47; 239 --color-text-heading: 255,255,255; 240 --color-foreground: 255,255,255; 241 --color-border: 198,191,177; 242 --color-button: 246,242,238; 243 --color-button-text: 0,0,0; 244 --color-secondary-button: 110,51,26; 245 --color-secondary-button-border: 139,92,72; 246 --color-secondary-button-text: 255,255,255; 247 --color-button-hover-background: 246,242,238; 248 --color-button-hover-text: 0,0,0; 249 --color-button-before: #ffffff; 250 --color-field: 255,255,255; 251 --color-field-text: 0,0,0; 252 --color-link: 255,255,255; 253 --color-link-hover: 255,255,255; 254 --color-product-price-sale: 214,58,47; 255 --color-foreground-lighten-60: #c5ada3; 256 --color-foreground-lighten-19: #8a5a46; 257 } 258 @media (min-width: 768px) { 259 body .desktop-color-scheme-2 { 260 --color-background: 110,51,26; 261 --color-secondary-background: 110,51,26; 262 --color-primary: 214,58,47; 263 --color-text-heading: 255,255,255; 264 --color-foreground: 255,255,255; 265 --color-border: 198,191,177; 266 --color-button: 246,242,238; 267 --color-button-text: 0,0,0; 268 --color-secondary-button: 110,51,26; 269 --color-secondary-button-border: 139,92,72; 270 --color-secondary-button-text: 255,255,255; 271 --color-button-hover-background: 246,242,238; 272 --color-button-hover-text: 0,0,0; 273 --color-button-before: #ffffff; 274 --color-field: 255,255,255; 275 --color-field-text: 0,0,0; 276 --color-link: 255,255,255; 277 --color-link-hover: 255,255,255; 278 --color-product-price-sale: 214,58,47; 279 --color-foreground-lighten-60: #c5ada3; 280 --color-foreground-lighten-19: #8a5a46; 281 color: rgb(var(--color-foreground)); 282 background-color: rgb(var(--color-background)); 283 } 284 } 285 @media (max-width: 767px) { 286 body .mobile-color-scheme-2 { 287 --color-background: 110,51,26; 288 --color-secondary-background: 110,51,26; 289 --color-primary: 214,58,47; 290 --color-text-heading: 255,255,255; 291 --color-foreground: 255,255,255; 292 --color-border: 198,191,177; 293 --color-button: 246,242,238; 294 --color-button-text: 0,0,0; 295 --color-secondary-button: 110,51,26; 296 --color-secondary-button-border: 139,92,72; 297 --color-secondary-button-text: 255,255,255; 298 --color-button-hover-background: 246,242,238; 299 --color-button-hover-text: 0,0,0; 300 --color-button-before: #ffffff; 301 --color-field: 255,255,255; 302 --color-field-text: 0,0,0; 303 --color-link: 255,255,255; 304 --color-link-hover: 255,255,255; 305 --color-product-price-sale: 214,58,47; 306 --color-foreground-lighten-60: #c5ada3; 307 --color-foreground-lighten-19: #8a5a46; 308 color: rgb(var(--color-foreground)); 309 background-color: rgb(var(--color-background)); 310 } 311 } 312 313 314.color-scheme-3 { 315 --color-background: 246,242,238; 316 --color-secondary-background: 246,242,238; 317 --color-primary: 214,58,47; 318 --color-text-heading: 0,0,0; 319 --color-foreground: 0,0,0; 320 --color-border: 230,230,230; 321 --color-button: 0,0,0; 322 --color-button-text: 255,255,255; 323 --color-secondary-button: 246,242,238; 324 --color-secondary-button-border: 209,206,202; 325 --color-secondary-button-text: 0,0,0; 326 --color-button-hover-background: 0,0,0; 327 --color-button-hover-text: 255,255,255; 328 --color-button-before: #333333; 329 --color-field: 255,255,255; 330 --color-field-text: 0,0,0; 331 --color-link: 0,0,0; 332 --color-link-hover: 0,0,0; 333 --color-product-price-sale: 214,58,47; 334 --color-foreground-lighten-60: #62615f; 335 --color-foreground-lighten-19: #c7c4c1; 336 } 337 @media (min-width: 768px) { 338 body .desktop-color-scheme-3 { 339 --color-background: 246,242,238; 340 --color-secondary-background: 246,242,238; 341 --color-primary: 214,58,47; 342 --color-text-heading: 0,0,0; 343 --color-foreground: 0,0,0; 344 --color-border: 230,230,230; 345 --color-button: 0,0,0; 346 --color-button-text: 255,255,255; 347 --color-secondary-button: 246,242,238; 348 --color-secondary-button-border: 209,206,202; 349 --color-secondary-button-text: 0,0,0; 350 --color-button-hover-background: 0,0,0; 351 --color-button-hover-text: 255,255,255; 352 --color-button-before: #333333; 353 --color-field: 255,255,255; 354 --color-field-text: 0,0,0; 355 --color-link: 0,0,0; 356 --color-link-hover: 0,0,0; 357 --color-product-price-sale: 214,58,47; 358 --color-foreground-lighten-60: #62615f; 359 --color-foreground-lighten-19: #c7c4c1; 360 color: rgb(var(--color-foreground)); 361 background-color: rgb(var(--color-background)); 362 } 363 } 364 @media (max-width: 767px) { 365 body .mobile-color-scheme-3 { 366 --color-background: 246,242,238; 367 --color-secondary-background: 246,242,238; 368 --color-primary: 214,58,47; 369 --color-text-heading: 0,0,0; 370 --color-foreground: 0,0,0; 371 --color-border: 230,230,230; 372 --color-button: 0,0,0; 373 --color-button-text: 255,255,255; 374 --color-secondary-button: 246,242,238; 375 --color-secondary-button-border: 209,206,202; 376 --color-secondary-button-text: 0,0,0; 377 --color-button-hover-background: 0,0,0; 378 --color-button-hover-text: 255,255,255; 379 --color-button-before: #333333; 380 --color-field: 255,255,255; 381 --color-field-text: 0,0,0; 382 --color-link: 0,0,0; 383 --color-link-hover: 0,0,0; 384 --color-product-price-sale: 214,58,47; 385 --color-foreground-lighten-60: #62615f; 386 --color-foreground-lighten-19: #c7c4c1; 387 color: rgb(var(--color-foreground)); 388 background-color: rgb(var(--color-background)); 389 } 390 } 391 392 393.color-scheme-4 { 394 --color-background: 245,245,245; 395 --color-secondary-background: 230,230,230; 396 --color-primary: 214,58,47; 397 --color-text-heading: 0,0,0; 398 --color-foreground: 0,0,0; 399 --color-border: 247,247,247; 400 --color-button: 255,255,255; 401 --color-button-text: 0,0,0; 402 --color-secondary-button: 0,0,0; 403 --color-secondary-button-border: 0,0,0; 404 --color-secondary-button-text: 255,255,255; 405 --color-button-hover-background: 0,0,0; 406 --color-button-hover-text: 255,255,255; 407 --color-button-before: #333333; 408 --color-field: 255,255,255; 409 --color-field-text: 0,0,0; 410 --color-link: 0,0,0; 411 --color-link-hover: 0,0,0; 412 --color-product-price-sale: 214,58,47; 413 --color-foreground-lighten-60: #626262; 414 --color-foreground-lighten-19: #c6c6c6; 415 } 416 @media (min-width: 768px) { 417 body .desktop-color-scheme-4 { 418 --color-background: 245,245,245; 419 --color-secondary-background: 230,230,230; 420 --color-primary: 214,58,47; 421 --color-text-heading: 0,0,0; 422 --color-foreground: 0,0,0; 423 --color-border: 247,247,247; 424 --color-button: 255,255,255; 425 --color-button-text: 0,0,0; 426 --color-secondary-button: 0,0,0; 427 --color-secondary-button-border: 0,0,0; 428 --color-secondary-button-text: 255,255,255; 429 --color-button-hover-background: 0,0,0; 430 --color-button-hover-text: 255,255,255; 431 --color-button-before: #333333; 432 --color-field: 255,255,255; 433 --color-field-text: 0,0,0; 434 --color-link: 0,0,0; 435 --color-link-hover: 0,0,0; 436 --color-product-price-sale: 214,58,47; 437 --color-foreground-lighten-60: #626262; 438 --color-foreground-lighten-19: #c6c6c6; 439 color: rgb(var(--color-foreground)); 440 background-color: rgb(var(--color-background)); 441 } 442 } 443 @media (max-width: 767px) { 444 body .mobile-color-scheme-4 { 445 --color-background: 245,245,245; 446 --color-secondary-background: 230,230,230; 447 --color-primary: 214,58,47; 448 --color-text-heading: 0,0,0; 449 --color-foreground: 0,0,0; 450 --color-border: 247,247,247; 451 --color-button: 255,255,255; 452 --color-button-text: 0,0,0; 453 --color-secondary-button: 0,0,0; 454 --color-secondary-button-border: 0,0,0; 455 --color-secondary-button-text: 255,255,255; 456 --color-button-hover-background: 0,0,0; 457 --color-button-hover-text: 255,255,255; 458 --color-button-before: #333333; 459 --color-field: 255,255,255; 460 --color-field-text: 0,0,0; 461 --color-link: 0,0,0; 462 --color-link-hover: 0,0,0; 463 --color-product-price-sale: 214,58,47; 464 --color-foreground-lighten-60: #626262; 465 --color-foreground-lighten-19: #c6c6c6; 466 color: rgb(var(--color-foreground)); 467 background-color: rgb(var(--color-background)); 468 } 469 } 470 471 472.color-scheme-inverse { 473 --color-background: 0,0,0; 474 --color-secondary-background: 0,0,0; 475 --color-primary: 214,58,47; 476 --color-text-heading: 255,255,255; 477 --color-foreground: 255,255,255; 478 --color-border: 255,255,255; 479 --color-button: 255,255,255; 480 --color-button-text: 0,0,0; 481 --color-secondary-button: 0,0,0; 482 --color-secondary-button-border: 255,255,255; 483 --color-secondary-button-text: 255,255,255; 484 --color-button-hover-background: 255,255,255; 485 --color-button-hover-text: 0,0,0; 486 --color-button-before: #ffffff; 487 --color-field: 255,255,255; 488 --color-field-text: 0,0,0; 489 --color-link: 255,255,255; 490 --color-link-hover: 255,255,255; 491 --color-product-price-sale: 214,58,47; 492 --color-foreground-lighten-60: #999999; 493 --color-foreground-lighten-19: #303030; 494 } 495 @media (min-width: 768px) { 496 body .desktop-color-scheme-inverse { 497 --color-background: 0,0,0; 498 --color-secondary-background: 0,0,0; 499 --color-primary: 214,58,47; 500 --color-text-heading: 255,255,255; 501 --color-foreground: 255,255,255; 502 --color-border: 255,255,255; 503 --color-button: 255,255,255; 504 --color-button-text: 0,0,0; 505 --color-secondary-button: 0,0,0; 506 --color-secondary-button-border: 255,255,255; 507 --color-secondary-button-text: 255,255,255; 508 --color-button-hover-background: 255,255,255; 509 --color-button-hover-text: 0,0,0; 510 --color-button-before: #ffffff; 511 --color-field: 255,255,255; 512 --color-field-text: 0,0,0; 513 --color-link: 255,255,255; 514 --color-link-hover: 255,255,255; 515 --color-product-price-sale: 214,58,47; 516 --color-foreground-lighten-60: #999999; 517 --color-foreground-lighten-19: #303030; 518 color: rgb(var(--color-foreground)); 519 background-color: rgb(var(--color-background)); 520 } 521 } 522 @media (max-width: 767px) { 523 body .mobile-color-scheme-inverse { 524 --color-background: 0,0,0; 525 --color-secondary-background: 0,0,0; 526 --color-primary: 214,58,47; 527 --color-text-heading: 255,255,255; 528 --color-foreground: 255,255,255; 529 --color-border: 255,255,255; 530 --color-button: 255,255,255; 531 --color-button-text: 0,0,0; 532 --color-secondary-button: 0,0,0; 533 --color-secondary-button-border: 255,255,255; 534 --color-secondary-button-text: 255,255,255; 535 --color-button-hover-background: 255,255,255; 536 --color-button-hover-text: 0,0,0; 537 --color-button-before: #ffffff; 538 --color-field: 255,255,255; 539 --color-field-text: 0,0,0; 540 --color-link: 255,255,255; 541 --color-link-hover: 255,255,255; 542 --color-product-price-sale: 214,58,47; 543 --color-foreground-lighten-60: #999999; 544 --color-foreground-lighten-19: #303030; 545 color: rgb(var(--color-foreground)); 546 background-color: rgb(var(--color-background)); 547 } 548 } 549 550 551.color-scheme-6 { 552 --color-background: 88,44,25; 553 --color-secondary-background: 88,44,25; 554 --color-primary: 214,58,47; 555 --color-text-heading: 255,255,255; 556 --color-foreground: 255,255,255; 557 --color-border: 246,242,238; 558 --color-button: 246,242,238; 559 --color-button-text: 0,0,0; 560 --color-secondary-button: 88,44,25; 561 --color-secondary-button-border: 255,255,255; 562 --color-secondary-button-text: 255,255,255; 563 --color-button-hover-background: 0,0,0; 564 --color-button-hover-text: 255,255,255; 565 --color-button-before: #333333; 566 --color-field: 255,255,255; 567 --color-field-text: 0,0,0; 568 --color-link: 255,255,255; 569 --color-link-hover: 255,255,255; 570 --color-product-price-sale: 214,58,47; 571 --color-foreground-lighten-60: #bcaba3; 572 --color-foreground-lighten-19: #785445; 573 } 574 @media (min-width: 768px) { 575 body .desktop-color-scheme-6 { 576 --color-background: 88,44,25; 577 --color-secondary-background: 88,44,25; 578 --color-primary: 214,58,47; 579 --color-text-heading: 255,255,255; 580 --color-foreground: 255,255,255; 581 --color-border: 246,242,238; 582 --color-button: 246,242,238; 583 --color-button-text: 0,0,0; 584 --color-secondary-button: 88,44,25; 585 --color-secondary-button-border: 255,255,255; 586 --color-secondary-button-text: 255,255,255; 587 --color-button-hover-background: 0,0,0; 588 --color-button-hover-text: 255,255,255; 589 --color-button-before: #333333; 590 --color-field: 255,255,255; 591 --color-field-text: 0,0,0; 592 --color-link: 255,255,255; 593 --color-link-hover: 255,255,255; 594 --color-product-price-sale: 214,58,47; 595 --color-foreground-lighten-60: #bcaba3; 596 --color-foreground-lighten-19: #785445; 597 color: rgb(var(--color-foreground)); 598 background-color: rgb(var(--color-background)); 599 } 600 } 601 @media (max-width: 767px) { 602 body .mobile-color-scheme-6 { 603 --color-background: 88,44,25; 604 --color-secondary-background: 88,44,25; 605 --color-primary: 214,58,47; 606 --color-text-heading: 255,255,255; 607 --color-foreground: 255,255,255; 608 --color-border: 246,242,238; 609 --color-button: 246,242,238; 610 --color-button-text: 0,0,0; 611 --color-secondary-button: 88,44,25; 612 --color-secondary-button-border: 255,255,255; 613 --color-secondary-button-text: 255,255,255; 614 --color-button-hover-background: 0,0,0; 615 --color-button-hover-text: 255,255,255; 616 --color-button-before: #333333; 617 --color-field: 255,255,255; 618 --color-field-text: 0,0,0; 619 --color-link: 255,255,255; 620 --color-link-hover: 255,255,255; 621 --color-product-price-sale: 214,58,47; 622 --color-foreground-lighten-60: #bcaba3; 623 --color-foreground-lighten-19: #785445; 624 color: rgb(var(--color-foreground)); 625 background-color: rgb(var(--color-background)); 626 } 627 } 628 629 630.color-scheme-7 { 631 --color-background: 0,0,0; 632 --color-secondary-background: 0,0,0; 633 --color-primary: 231,255,161; 634 --color-text-heading: 255,255,255; 635 --color-foreground: 255,255,255; 636 --color-border: 230,230,230; 637 --color-button: 255,255,255; 638 --color-button-text: 0,0,0; 639 --color-secondary-button: 0,0,0; 640 --color-secondary-button-border: 255,255,255; 641 --color-secondary-button-text: 255,255,255; 642 --color-button-hover-background: 255,255,255; 643 --color-button-hover-text: 0,0,0; 644 --color-button-before: #ffffff; 645 --color-field: 255,255,255; 646 --color-field-text: 0,0,0; 647 --color-link: 255,255,255; 648 --color-link-hover: 255,255,255; 649 --color-product-price-sale: 214,58,47; 650 --color-foreground-lighten-60: #999999; 651 --color-foreground-lighten-19: #303030; 652 } 653 @media (min-width: 768px) { 654 body .desktop-color-scheme-7 { 655 --color-background: 0,0,0; 656 --color-secondary-background: 0,0,0; 657 --color-primary: 231,255,161; 658 --color-text-heading: 255,255,255; 659 --color-foreground: 255,255,255; 660 --color-border: 230,230,230; 661 --color-button: 255,255,255; 662 --color-button-text: 0,0,0; 663 --color-secondary-button: 0,0,0; 664 --color-secondary-button-border: 255,255,255; 665 --color-secondary-button-text: 255,255,255; 666 --color-button-hover-background: 255,255,255; 667 --color-button-hover-text: 0,0,0; 668 --color-button-before: #ffffff; 669 --color-field: 255,255,255; 670 --color-field-text: 0,0,0; 671 --color-link: 255,255,255; 672 --color-link-hover: 255,255,255; 673 --color-product-price-sale: 214,58,47; 674 --color-foreground-lighten-60: #999999; 675 --color-foreground-lighten-19: #303030; 676
676 color: rgb(var(--color-foreground)); 677 background-color: rgb(var(--color-background)); 678 } 679 } 680 @media (max-width: 767px) { 681 body .mobile-color-scheme-7 { 682 --color-background: 0,0,0; 683 --color-secondary-background: 0,0,0; 684 --color-primary: 231,255,161; 685 --color-text-heading: 255,255,255; 686 --color-foreground: 255,255,255; 687 --color-border: 230,230,230; 688 --color-button: 255,255,255; 689 --color-button-text: 0,0,0; 690 --color-secondary-button: 0,0,0; 691 --color-secondary-button-border: 255,255,255; 692 --color-secondary-button-text: 255,255,255; 693 --color-button-hover-background: 255,255,255; 694 --color-button-hover-text: 0,0,0; 695 --color-button-before: #ffffff; 696 --color-field: 255,255,255; 697 --color-field-text: 0,0,0; 698 --color-link: 255,255,255; 699 --color-link-hover: 255,255,255; 700 --color-product-price-sale: 214,58,47; 701 --color-foreground-lighten-60: #999999; 702 --color-foreground-lighten-19: #303030; 703 color: rgb(var(--color-foreground)); 704 background-color: rgb(var(--color-background)); 705 } 706 } 707 708 709.color-scheme-8 { 710 --color-background: 255,255,255; 711 --color-secondary-background: 255,255,255; 712 --color-primary: 214,58,47; 713 --color-text-heading: 0,0,0; 714 --color-foreground: 0,0,0; 715 --color-border: 230,230,230; 716 --color-button: 0,0,0; 717 --color-button-text: 255,255,255; 718 --color-secondary-button: 255,255,255; 719 --color-secondary-button-border: 255,255,255; 720 --color-secondary-button-text: 255,255,255; 721 --color-button-hover-background: 255,255,255; 722 --color-button-hover-text: 0,0,0; 723 --color-button-before: #ffffff; 724 --color-field: 245,245,245; 725 --color-field-text: 0,0,0; 726 --color-link: 0,0,0; 727 --color-link-hover: 0,0,0; 728 --color-product-price-sale: 214,58,47; 729 --color-foreground-lighten-60: #666666; 730 --color-foreground-lighten-19: #cfcfcf; 731 } 732 @media (min-width: 768px) { 733 body .desktop-color-scheme-8 { 734 --color-background: 255,255,255; 735 --color-secondary-background: 255,255,255; 736 --color-primary: 214,58,47; 737 --color-text-heading: 0,0,0; 738 --color-foreground: 0,0,0; 739 --color-border: 230,230,230; 740 --color-button: 0,0,0; 741 --color-button-text: 255,255,255; 742 --color-secondary-button: 255,255,255; 743 --color-secondary-button-border: 255,255,255; 744 --color-secondary-button-text: 255,255,255; 745 --color-button-hover-background: 255,255,255; 746 --color-button-hover-text: 0,0,0; 747 --color-button-before: #ffffff; 748 --color-field: 245,245,245; 749 --color-field-text: 0,0,0; 750 --color-link: 0,0,0; 751 --color-link-hover: 0,0,0; 752 --color-product-price-sale: 214,58,47; 753 --color-foreground-lighten-60: #666666; 754 --color-foreground-lighten-19: #cfcfcf; 755 color: rgb(var(--color-foreground)); 756 background-color: rgb(var(--color-background)); 757 } 758 } 759 @media (max-width: 767px) { 760 body .mobile-color-scheme-8 { 761 --color-background: 255,255,255; 762 --color-secondary-background: 255,255,255; 763 --color-primary: 214,58,47; 764 --color-text-heading: 0,0,0; 765 --color-foreground: 0,0,0; 766 --color-border: 230,230,230; 767 --color-button: 0,0,0; 768 --color-button-text: 255,255,255; 769 --color-secondary-button: 255,255,255; 770 --color-secondary-button-border: 255,255,255; 771 --color-secondary-button-text: 255,255,255; 772 --color-button-hover-background: 255,255,255; 773 --color-button-hover-text: 0,0,0; 774 --color-button-before: #ffffff; 775 --color-field: 245,245,245; 776 --color-field-text: 0,0,0; 777 --color-link: 0,0,0; 778 --color-link-hover: 0,0,0; 779 --color-product-price-sale: 214,58,47; 780 --color-foreground-lighten-60: #666666; 781 --color-foreground-lighten-19: #cfcfcf; 782 color: rgb(var(--color-foreground)); 783 background-color: rgb(var(--color-background)); 784 } 785 } 786 787 788.color-scheme-9 { 789 --color-background: 255,255,255; 790 --color-secondary-background: 245,245,245; 791 --color-primary: 214,58,47; 792 --color-text-heading: 0,0,0; 793 --color-foreground: 0,0,0; 794 --color-border: 237,237,237; 795 --color-button: 0,0,0; 796 --color-button-text: 255,255,255; 797 --color-secondary-button: 255,255,255; 798 --color-secondary-button-border: 204,204,204; 799 --color-secondary-button-text: 0,0,0; 800 --color-button-hover-background: 0,0,0; 801 --color-button-hover-text: 255,255,255; 802 --color-button-before: #333333; 803 --color-field: 245,245,245; 804 --color-field-text: 0,0,0; 805 --color-link: 0,0,0; 806 --color-link-hover: 0,0,0; 807 --color-product-price-sale: 214,58,47; 808 --color-foreground-lighten-60: #666666; 809 --color-foreground-lighten-19: #cfcfcf; 810 } 811 @media (min-width: 768px) { 812 body .desktop-color-scheme-9 { 813 --color-background: 255,255,255; 814 --color-secondary-background: 245,245,245; 815 --color-primary: 214,58,47; 816 --color-text-heading: 0,0,0; 817 --color-foreground: 0,0,0; 818 --color-border: 237,237,237; 819 --color-button: 0,0,0; 820 --color-button-text: 255,255,255; 821 --color-secondary-button: 255,255,255; 822 --color-secondary-button-border: 204,204,204; 823 --color-secondary-button-text: 0,0,0; 824 --color-button-hover-background: 0,0,0; 825 --color-button-hover-text: 255,255,255; 826 --color-button-before: #333333; 827 --color-field: 245,245,245; 828 --color-field-text: 0,0,0; 829 --color-link: 0,0,0; 830 --color-link-hover: 0,0,0; 831 --color-product-price-sale: 214,58,47; 832 --color-foreground-lighten-60: #666666; 833 --color-foreground-lighten-19: #cfcfcf; 834 color: rgb(var(--color-foreground)); 835 background-color: rgb(var(--color-background)); 836 } 837 } 838 @media (max-width: 767px) { 839 body .mobile-color-scheme-9 { 840 --color-background: 255,255,255; 841 --color-secondary-background: 245,245,245; 842 --color-primary: 214,58,47; 843 --color-text-heading: 0,0,0; 844 --color-foreground: 0,0,0; 845 --color-border: 237,237,237; 846 --color-button: 0,0,0; 847 --color-button-text: 255,255,255; 848 --color-secondary-button: 255,255,255; 849 --color-secondary-button-border: 204,204,204; 850 --color-secondary-button-text: 0,0,0; 851 --color-button-hover-background: 0,0,0; 852 --color-button-hover-text: 255,255,255; 853 --color-button-before: #333333; 854 --color-field: 245,245,245; 855 --color-field-text: 0,0,0; 856 --color-link: 0,0,0; 857 --color-link-hover: 0,0,0; 858 --color-product-price-sale: 214,58,47; 859 --color-foreground-lighten-60: #666666; 860 --color-foreground-lighten-19: #cfcfcf; 861 color: rgb(var(--color-foreground)); 862 background-color: rgb(var(--color-background)); 863 } 864 } 865 866 867.color-scheme-10 { 868 --color-background: 0,0,0; 869 --color-secondary-background: 0,0,0; 870 --color-primary: 255,255,255; 871 --color-text-heading: 255,255,255; 872 --color-foreground: 255,255,255; 873 --color-border: 230,230,230; 874 --color-button: 255,255,255; 875 --color-button-text: 0,0,0; 876 --color-secondary-button: 0,0,0; 877 --color-secondary-button-border: 255,255,255; 878 --color-secondary-button-text: 255,255,255; 879 --color-button-hover-background: 0,0,0; 880 --color-button-hover-text: 255,255,255; 881 --color-button-before: #333333; 882 --color-field: 245,245,245; 883 --color-field-text: 0,0,0; 884 --color-link: 255,255,255; 885 --color-link-hover: 255,255,255; 886 --color-product-price-sale: 214,58,47; 887 --color-foreground-lighten-60: #999999; 888 --color-foreground-lighten-19: #303030; 889 } 890 @media (min-width: 768px) { 891 body .desktop-color-scheme-10 { 892 --color-background: 0,0,0; 893 --color-secondary-background: 0,0,0; 894 --color-primary: 255,255,255; 895 --color-text-heading: 255,255,255; 896 --color-foreground: 255,255,255; 897 --color-border: 230,230,230; 898 --color-button: 255,255,255; 899 --color-button-text: 0,0,0; 900 --color-secondary-button: 0,0,0; 901 --color-secondary-button-border: 255,255,255; 902 --color-secondary-button-text: 255,255,255; 903 --color-button-hover-background: 0,0,0; 904 --color-button-hover-text: 255,255,255; 905 --color-button-before: #333333; 906 --color-field: 245,245,245; 907 --color-field-text: 0,0,0; 908 --color-link: 255,255,255; 909 --color-link-hover: 255,255,255; 910 --color-product-price-sale: 214,58,47; 911 --color-foreground-lighten-60: #999999; 912 --color-foreground-lighten-19: #303030; 913 color: rgb(var(--color-foreground)); 914 background-color: rgb(var(--color-background)); 915 } 916 } 917 @media (max-width: 767px) { 918 body .mobile-color-scheme-10 { 919 --color-background: 0,0,0; 920 --color-secondary-background: 0,0,0; 921 --color-primary: 255,255,255; 922 --color-text-heading: 255,255,255; 923 --color-foreground: 255,255,255; 924 --color-border: 230,230,230; 925 --color-button: 255,255,255; 926 --color-button-text: 0,0,0; 927 --color-secondary-button: 0,0,0; 928 --color-secondary-button-border: 255,255,255; 929 --color-secondary-button-text: 255,255,255; 930 --color-button-hover-background: 0,0,0; 931 --color-button-hover-text: 255,255,255; 932 --color-button-before: #333333; 933 --color-field: 245,245,245; 934 --color-field-text: 0,0,0; 935 --color-link: 255,255,255; 936 --color-link-hover: 255,255,255; 937 --color-product-price-sale: 214,58,47; 938 --color-foreground-lighten-60: #999999; 939 --color-foreground-lighten-19: #303030; 940 color: rgb(var(--color-foreground)); 941 background-color: rgb(var(--color-background)); 942 } 943 } 944 945 946.color-scheme-11 { 947 --color-background: 243,238,234; 948 --color-secondary-background: 247,247,247; 949 --color-primary: 214,58,47; 950 --color-text-heading: 0,0,0; 951 --color-foreground: 0,0,0; 952 --color-border: 255,255,255; 953 --color-button: 0,0,0; 954 --color-button-text: 255,255,255; 955 --color-secondary-button: 233,233,233; 956 --color-secondary-button-border: 233,233,233; 957 --color-secondary-button-text: 0,0,0; 958 --color-button-hover-background: 0,0,0; 959 --color-button-hover-text: 255,255,255; 960 --color-button-before: #333333; 961 --color-field: 255,255,255; 962 --color-field-text: 0,0,0; 963 --color-link: 0,0,0; 964 --color-link-hover: 0,0,0; 965 --color-product-price-sale: 214,58,47; 966 --color-foreground-lighten-60: #615f5e; 967 --color-foreground-lighten-19: #c5c1be; 968 } 969 @media (min-width: 768px) { 970 body .desktop-color-scheme-11 { 971 --color-background: 243,238,234; 972 --color-secondary-background: 247,247,247; 973 --color-primary: 214,58,47; 974 --color-text-heading: 0,0,0; 975 --color-foreground: 0,0,0; 976 --color-border: 255,255,255; 977 --color-button: 0,0,0; 978 --color-button-text: 255,255,255; 979 --color-secondary-button: 233,233,233; 980 --color-secondary-button-border: 233,233,233; 981 --color-secondary-button-text: 0,0,0; 982 --color-button-hover-background: 0,0,0; 983 --color-button-hover-text: 255,255,255; 984 --color-button-before: #333333; 985 --color-field: 255,255,255; 986 --color-field-text: 0,0,0; 987 --color-link: 0,0,0; 988 --color-link-hover: 0,0,0; 989 --color-product-price-sale: 214,58,47; 990 --color-foreground-lighten-60: #615f5e; 991 --color-foreground-lighten-19: #c5c1be; 992 color: rgb(var(--color-foreground)); 993 background-color: rgb(var(--color-background)); 994 } 995 } 996 @media (max-width: 767px) { 997 body .mobile-color-scheme-11 { 998 --color-background: 243,238,234; 999 --color-secondary-background: 247,247,247; 1000 --color-primary: 214,58,47; 1001 --color-text-heading: 0,0,0; 1002 --color-foreground: 0,0,0; 1003 --color-border: 255,255,255; 1004 --color-button: 0,0,0; 1005 --color-button-text: 255,255,255; 1006 --color-secondary-button: 233,233,233; 1007 --color-secondary-button-border: 233,233,233; 1008 --color-secondary-button-text: 0,0,0; 1009 --color-button-hover-background: 0,0,0; 1010 --color-button-hover-text: 255,255,255; 1011 --color-button-before: #333333; 1012 --color-field: 255,255,255; 1013 --color-field-text: 0,0,0; 1014 --color-link: 0,0,0; 1015 --color-link-hover: 0,0,0; 1016 --color-product-price-sale: 214,58,47; 1017 --color-foreground-lighten-60: #615f5e; 1018 --color-foreground-lighten-19: #c5c1be; 1019 color: rgb(var(--color-foreground)); 1020 background-color: rgb(var(--color-background)); 1021 } 1022 } 1023 1024 1025 body, .color-scheme-1, .color-scheme-2, .color-scheme-3, .color-scheme-4, .color-scheme-inverse, .color-scheme-6, .color-scheme-7, .color-scheme-8, .color-scheme-9, .color-scheme-10, .color-scheme-11 { 1026 color: rgb(var(--color-foreground)); 1027 background-color: rgb(var(--color-background)); 1028 } 1029 1030 :root { 1031 /* Animation variable */ 1032 --animation-nav: .5s cubic-bezier(.6, 0, .4, 1); 1033 --animation-default: .5s cubic-bezier(.3, 1, .3, 1); 1034 --animation-fast: .3s cubic-bezier(.7, 0, .3, 1); 1035 --transform-origin-start: left;
1036 --transform-origin-end: right; 1037 --duration-default: 200ms; 1038 --duration-image: 1000ms; 1039 1040 --font-body-family: "DM Sans", sans-serif; 1041 --font-body-style: normal; 1042 --font-body-weight: 400; 1043 --font-body-weight-bolder: 700; 1044 --font-body-weight-bold: 700; 1045 --font-body-size: 2.0rem; 1046 --font-body-line-height: 1.725; 1047 1048 --font-heading-family: "Playfair Display", serif; 1049 --font-heading-style: normal; 1050 --font-heading-weight: 400; 1051 --font-heading-letter-spacing: 0.0em; 1052 --font-heading-transform: uppercase; 1053 --font-heading-scale: 1.5; 1054 --font-heading-mobile-scale: 1.2; 1055 1056 --font-hd1-transform:uppercase; 1057 1058 --font-subheading-family: "DM Sans", sans-serif; 1059 --font-subheading-weight: 500; 1060 --font-subheading-scale: 0.7; 1061 --font-subheading-transform: uppercase; 1062 --font-subheading-letter-spacing: 0.0em; 1063 1064 --font-navigation-family: "DM Sans", sans-serif; 1065 --font-navigation-weight: 500; 1066 --navigation-transform: uppercase; 1067 1068 --font-button-family: "DM Sans", sans-serif; 1069 --font-button-weight: 500; 1070 --buttons-letter-spacing: 0.0em; 1071 --buttons-transform: uppercase; 1072 --buttons-height: 4.8rem; 1073 --buttons-border-width: 1px; 1074 --inputs-border-width: 1px; 1075 1076 --font-pcard-title-family: "DM Sans", sans-serif; 1077 --font-pcard-title-style: normal; 1078 --font-pcard-title-weight: 500; 1079 --font-pcard-title-scale: 1.1; 1080 --font-pcard-title-transform: none; 1081 1082 --font-h1-size: clamp( 1083 3.2rem, 1084 calc(5.45809vw + -0.986355rem), 1085 6.0rem 1086 ); 1087 --font-h2-size: clamp( 1088 2.56rem, 1089 calc(4.366472vw + -0.789084rem), 1090 4.8rem 1091 ); 1092 --font-h3-size: clamp( 1093 2.24rem, 1094 calc(3.820663vw + -0.690448rem), 1095 4.2rem 1096 ); 1097 --font-h4-size: clamp( 1098 1.76rem, 1099 calc(3.001949vw + -0.542495rem), 1100 3.3rem 1101 ); 1102 --font-hd1-size: clamp( 1103 4.8rem, 1104 calc(4.288499vw + 1.510721rem), 1105 7.0rem 1106 ); 1107 --font-hd2-size: clamp( 1108 3.84rem, 1109 calc(3.430799vw + 1.208577rem), 1110 5.6rem 1111 ); 1112 --font-hd3-size: clamp( 1113 2.88rem, 1114 calc(2.573099vw + 0.906433rem), 1115 4.2rem 1116 ); 1117 --font-h5-size: calc(var(--font-heading-scale) * 1.8rem); 1118 --font-h6-size: calc(var(--font-heading-scale) * 1.6rem); 1119 --font-subheading-size: calc(var(--font-subheading-scale) * var(--font-body-size)); 1120 --font-pcard-title-size: calc(var(--font-pcard-title-scale) * var(--font-body-size)); 1121 1122 --color-badge-sale: #a42003; 1123 --color-badge-sale-text: #FFFFFF; 1124 --color-badge-soldout: #a5a4ab; 1125 --color-badge-soldout-text: #FFFFFF; 1126 --color-badge-hot: #000000; 1127 --color-badge-hot-text: #FFFFFF; 1128 --color-badge-new: #054e4a; 1129 --color-badge-new-text: #FFFFFF; 1130 --color-cart-bubble: #000000; 1131 --color-keyboard-focus: 11 97 205; 1132 1133 --buttons-radius: 2.4rem; 1134 --inputs-radius: 0.0rem; 1135 --textareas-radius: 0.0rem; 1136 --blocks-radius: 0.0rem; 1137 --blocks-radius-mobile: 0.0rem; 1138 --small-blocks-radius: 0.0rem; 1139 --medium-blocks-radius: 0.0rem; 1140 --pcard-radius: 0.0rem; 1141 --pcard-inner-radius: 0.0rem; 1142 --badges-radius: 0.0rem; 1143 1144 --page-width: 1410px; 1145 --page-width-margin: 0rem; 1146 --header-padding-bottom: 4rem; 1147 --header-padding-bottom-mobile: 3.2rem; 1148 --header-padding-bottom-large: 6rem; 1149 --header-padding-bottom-large-lg: 4rem; 1150 } 1151 1152 *, 1153 *::before, 1154 *::after { 1155 box-sizing: inherit; 1156 } 1157 1158 html { 1159 box-sizing: border-box; 1160 font-size: 62.5%; 1161 height: 100%; 1162 } 1163 1164 body { 1165 min-height: 100%; 1166 margin: 0; 1167 font-family: var(--font-body-family); 1168 font-style: var(--font-body-style); 1169 font-weight: var(--font-body-weight); 1170 font-size: var(--font-body-size); 1171 line-height: var(--font-body-line-height); 1172 -webkit-font-smoothing: antialiased; 1173 -moz-osx-font-smoothing: grayscale; 1174 touch-action: manipulation; 1175 -webkit-text-size-adjust: 100%; 1176 font-feature-settings: normal; 1177 } 1178 @media (min-width: 1485px) { 1179 .swiper-controls--outside { 1180 --swiper-navigation-offset-x: calc((var(--swiper-navigation-size) + 2.7rem) * -1); 1181 } 1182 } 1183</style> 1184
1185 <link rel="preload" as="font" href="//www.fornasetti.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2" type="font/woff2" crossorigin> 1186 1187 1188 <link rel="preload" as="font" href="//www.fornasetti.com/cdn/fonts/playfair_display/playfairdisplay_n4.9980f3e16959dc89137cc1369bfc3ae98af1deb9.woff2" type="font/woff2" crossorigin> 1189 1190<link href="//www.fornasetti.com/cdn/shop/t/6/assets/custom-fonts.css?v=123902615147033081011771404932" rel="stylesheet" type="text/css" media="all" /><link href="//www.fornasetti.com/cdn/shop/t/6/assets/vendor.css?v=94183888130352382221759488152" rel="stylesheet" type="text/css" media="all" /><link href="//www.fornasetti.com/cdn/shop/t/6/assets/theme.css?v=151930027359216713181781519370" rel="stylesheet" type="text/css" media="all" />
1190<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
1190<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/95659295067/digital_wallets/dialog"> 1191<meta id="in-context-paypal-metadata" data-shop-id="95659295067" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 1192<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://www.fornasetti.com/search"> 1193<link rel="alternate" hreflang="en" href="https://www.fornasetti.com/search"> 1194<link rel="alternate" hreflang="it" href="https://www.fornasetti.com/it/search"> 1195<link rel="alternate" hreflang="en-AT" href="https://www.fornasetti.com/en-eu/search"> 1196<link rel="alternate" hreflang="fr-AT" href="https://www.fornasetti.com/fr-eu/search"> 1197<link rel="alternate" hreflang="it-AT" href="https://www.fornasetti.com/it-eu/search"> 1198<link rel="alternate" hreflang="en-BE" href="https://www.fornasetti.com/en-eu/search"> 1199<link rel="alternate" hreflang="fr-BE" href="https://www.fornasetti.com/fr-eu/search"> 1200<link rel="alternate" hreflang="it-BE" href="https://www.fornasetti.com/it-eu/search"> 1201<link rel="alternate" hreflang="en-BG" href="https://www.fornasetti.com/en-eu/search"> 1202<link rel="alternate" hreflang="fr-BG" href="https://www.fornasetti.com/fr-eu/search"> 1203<link rel="alternate" hreflang="it-BG" href="https://www.fornasetti.com/it-eu/search"> 1204<link rel="alternate" hreflang="en-HR" href="https://www.fornasetti.com/en-eu/search"> 1205<link rel="alternate" hreflang="fr-HR" href="https://www.fornasetti.com/fr-eu/search"> 1206<link rel="alternate" hreflang="it-HR" href="https://www.fornasetti.com/it-eu/search"> 1207<link rel="alternate" hreflang="en-CY" href="https://www.fornasetti.com/en-eu/search"> 1208<link rel="alternate" hreflang="fr-CY" href="https://www.fornasetti.com/fr-eu/search"> 1209<link rel="alternate" hreflang="it-CY" href="https://www.fornasetti.com/it-eu/search"> 1210<link rel="alternate" hreflang="en-CZ" href="https://www.fornasetti.com/en-eu/search"> 1211<link rel="alternate" hreflang="fr-CZ" href="https://www.fornasetti.com/fr-eu/search"> 1212<link rel="alternate" hreflang="it-CZ" href="https://www.fornasetti.com/it-eu/search"> 1213<link rel="alternate" hreflang="en-DE" href="https://www.fornasetti.com/en-eu/search"> 1214<link rel="alternate" hreflang="fr-DE" href="https://www.fornasetti.com/fr-eu/search"> 1215<link rel="alternate" hreflang="it-DE" href="https://www.fornasetti.com/it-eu/search"> 1216<link rel="alternate" hreflang="en-DK" href="https://www.fornasetti.com/en-eu/search"> 1217<link rel="alternate" hreflang="fr-DK" href="https://www.fornasetti.com/fr-eu/search"> 1218<link rel="alternate" hreflang="it-DK" href="https://www.fornasetti.com/it-eu/search"> 1219<link rel="alternate" hreflang="en-EE" href="https://www.fornasetti.com/en-eu/search"> 1220<link rel="alternate" hreflang="fr-EE" href="https://www.fornasetti.com/fr-eu/search"> 1221<link rel="alternate" hreflang="it-EE" href="https://www.fornasetti.com/it-eu/search"> 1222<link rel="alternate" hreflang="en-FI" href="https://www.fornasetti.com/en-eu/search"> 1223<link rel="alternate" hreflang="fr-FI" href="https://www.fornasetti.com/fr-eu/search"> 1224<link rel="alternate" hreflang="it-FI" href="https://www.fornasetti.com/it-eu/search"> 1225<link rel="alternate" hreflang="en-FR" href="https://www.fornasetti.com/en-eu/search"> 1226<link rel="alternate" hreflang="fr-FR" href="https://www.fornasetti.com/fr-eu/search"> 1227<link rel="alternate" hreflang="it-FR" href="https://www.fornasetti.com/it-eu/search"> 1228<link rel="alternate" hreflang="en-GR" href="https://www.fornasetti.com/en-eu/search"> 1229<link rel="alternate" hreflang="fr-GR" href="https://www.fornasetti.com/fr-eu/search"> 1230<link rel="alternate" hreflang="it-GR" href="https://www.fornasetti.com/it-eu/search"> 1231<link rel="alternate" hreflang="en-HU" href="https://www.fornasetti.com/en-eu/search"> 1232<link rel="alternate" hreflang="fr-HU" href="https://www.fornasetti.com/fr-eu/search"> 1233<link rel="alternate" hreflang="it-HU" href="https://www.fornasetti.com/it-eu/search"> 1234<link rel="alternate" hreflang="en-IE" href="https://www.fornasetti.com/en-eu/search"> 1235<link rel="alternate" hreflang="fr-IE" href="https://www.fornasett
1235i.com/fr-eu/search"> 1236<link rel="alternate" hreflang="it-IE" href="https://www.fornasetti.com/it-eu/search"> 1237<link rel="alternate" hreflang="en-LV" href="https://www.fornasetti.com/en-eu/search"> 1238<link rel="alternate" hreflang="fr-LV" href="https://www.fornasetti.com/fr-eu/search"> 1239<link rel="alternate" hreflang="it-LV" href="https://www.fornasetti.com/it-eu/search"> 1240<link rel="alternate" hreflang="en-LT" href="https://www.fornasetti.com/en-eu/search"> 1241<link rel="alternate" hreflang="fr-LT" href="https://www.fornasetti.com/fr-eu/search"> 1242<link rel="alternate" hreflang="it-LT" href="https://www.fornasetti.com/it-eu/search"> 1243<link rel="alternate" hreflang="en-LU" href="https://www.fornasetti.com/en-eu/search"> 1244<link rel="alternate" hreflang="fr-LU" href="https://www.fornasetti.com/fr-eu/search"> 1245<link rel="alternate" hreflang="it-LU" href="https://www.fornasetti.com/it-eu/search"> 1246<link rel="alternate" hreflang="en-MT" href="https://www.fornasetti.com/en-eu/search"> 1247<link rel="alternate" hreflang="fr-MT" href="https://www.fornasetti.com/fr-eu/search"> 1248<link rel="alternate" hreflang="it-MT" href="https://www.fornasetti.com/it-eu/search"> 1249<link rel="alternate" hreflang="en-NL" href="https://www.fornasetti.com/en-eu/search"> 1250<link rel="alternate" hreflang="fr-NL" href="https://www.fornasetti.com/fr-eu/search"> 1251<link rel="alternate" hreflang="it-NL" href="https://www.fornasetti.com/it-eu/search"> 1252<link rel="alternate" hreflang="en-PL" href="https://www.fornasetti.com/en-eu/search"> 1253<link rel="alternate" hreflang="fr-PL" href="https://www.fornasetti.com/fr-eu/search"> 1254<link rel="alternate" hreflang="it-PL" href="https://www.fornasetti.com/it-eu/search"> 1255<link rel="alternate" hreflang="en-PT" href="https://www.fornasetti.com/en-eu/search"> 1256<link rel="alternate" hreflang="fr-PT" href="https://www.fornasetti.com/fr-eu/search"> 1257<link rel="alternate" hreflang="it-PT" href="https://www.fornasetti.com/it-eu/search"> 1258<link rel="alternate" hreflang="en-RO" href="https://www.fornasetti.com/en-eu/search"> 1259<link rel="alternate" hreflang="fr-RO" href="https://www.fornasetti.com/fr-eu/search"> 1260<link rel="alternate" hreflang="it-RO" href="https://www.fornasetti.com/it-eu/search"> 1261<link rel="alternate" hreflang="en-SK" href="https://www.fornasetti.com/en-eu/search"> 1262<link rel="alternate" hreflang="fr-SK" href="https://www.fornasetti.com/fr-eu/search"> 1263<link rel="alternate" hreflang="it-SK" href="https://www.fornasetti.com/it-eu/search"> 1264<link rel="alternate" hreflang="en-SI" href="https://www.fornasetti.com/en-eu/search"> 1265<link rel="alternate" hreflang="fr-SI" href="https://www.fornasetti.com/fr-eu/search"> 1266<link rel="alternate" hreflang="it-SI" href="https://www.fornasetti.com/it-eu/search"> 1267<link rel="alternate" hreflang="en-ES" href="https://www.fornasetti.com/en-eu/search"> 1268<link rel="alternate" hreflang="fr-ES" href="https://www.fornasetti.com/fr-eu/search"> 1269<link rel="alternate" hreflang="it-ES" href="https://www.fornasetti.com/it-eu/search"> 1270<link rel="alternate" hreflang="en-SE" href="https://www.fornasetti.com/en-eu/search"> 1271<link rel="alternate" hreflang="fr-SE" href="https://www.fornasetti.com/fr-eu/search"> 1272<link rel="alternate" hreflang="it-SE" href="https://www.fornasetti.com/it-eu/search"> 1273<link rel="alternate" hreflang="en-AE" href="https://www.fornasetti.com/en-ae/search"> 1274<link rel="alternate" hreflang="en-AU" href="https://www.fornasetti.com/en-au/search"> 1275<link rel="alternate" hreflang="en-CA" href="https://www.fornasetti.com/en-ca/search"> 1276<link rel="alternate" hreflang="fr-CA" href="https://www.fornasetti.com/fr-ca/search"> 1277<link rel="alternate" hreflang="en-CH" href="https://www.fornasetti.com/en-ch/search"> 1278<link rel="alternate" hreflang="fr-CH" href="https://www.fornasetti.com/fr-ch/search"> 1279<link rel="alternate" hreflang="it-CH" href="https://www.fornasetti.com/it-ch/search"> 1280<link rel="alternate" hreflang="en-GB" href="https://www.fornasetti.com/en-gb/search"> 1281<link rel="alternate" hreflang="en-HK" href="https://www.fornasetti.com/en-hk/search"> 1282<link rel="alternate" hreflang="en-IL" href="https://www.fornasetti.com/en-int/search"> 1283<link rel="alternate" hreflang="en-JP" href="https://www.fornasett
1283i.com/en-jp/search"> 1284<link rel="alternate" hreflang="en-KR" href="https://www.fornasetti.com/en-kr/search"> 1285<link rel="alternate" hreflang="en-MY" href="https://www.fornasetti.com/en-row/search"> 1286<link rel="alternate" hreflang="en-NO" href="https://www.fornasetti.com/en-eu/search"> 1287<link rel="alternate" hreflang="fr-NO" href="https://www.fornasetti.com/fr-eu/search"> 1288<link rel="alternate" hreflang="it-NO" href="https://www.fornasetti.com/it-eu/search"> 1289<link rel="alternate" hreflang="en-NZ" href="https://www.fornasetti.com/en-row/search"> 1290<link rel="alternate" hreflang="en-SG" href="https://www.fornasetti.com/en-sg/search"> 1291<link rel="alternate" hreflang="en-US" href="https://www.fornasetti.com/en-us/search"> 1292<link rel="alternate" hreflang="en-AD" href="https://www.fornasetti.com/en-eu/search"> 1293<link rel="alternate" hreflang="fr-AD" href="https://www.fornasetti.com/fr-eu/search"> 1294<link rel="alternate" hreflang="it-AD" href="https://www.fornasetti.com/it-eu/search"> 1295<link rel="alternate" hreflang="en-AL" href="https://www.fornasetti.com/en-eu/search"> 1296<link rel="alternate" hreflang="fr-AL" href="https://www.fornasetti.com/fr-eu/search"> 1297<link rel="alternate" hreflang="it-AL" href="https://www.fornasetti.com/it-eu/search"> 1298<link rel="alternate" hreflang="en-BA" href="https://www.fornasetti.com/en-eu/search"> 1299<link rel="alternate" hreflang="fr-BA" href="https://www.fornasetti.com/fr-eu/search"> 1300<link rel="alternate" hreflang="it-BA" href="https://www.fornasetti.com/it-eu/search"> 1301<link rel="alternate" hreflang="en-BY" href="https://www.fornasetti.com/en-eu/search"> 1302<link rel="alternate" hreflang="fr-BY" href="https://www.fornasetti.com/fr-eu/search"> 1303<link rel="alternate" hreflang="it-BY" href="https://www.fornasetti.com/it-eu/search"> 1304<link rel="alternate" hreflang="en-RS" href="https://www.fornasetti.com/en-eu/search"> 1305<link rel="alternate" hreflang="fr-RS" href="https://www.fornasetti.com/fr-eu/search"> 1306<link rel="alternate" hreflang="it-RS" href="https://www.fornasetti.com/it-eu/search"> 1307<link rel="alternate" hreflang="en-ME" href="https://www.fornasetti.com/en-eu/search"> 1308<link rel="alternate" hreflang="fr-ME" href="https://www.fornasetti.com/fr-eu/search"> 1309<link rel="alternate" hreflang="it-ME" href="https://www.fornasetti.com/it-eu/search"> 1310<link rel="alternate" hreflang="en-GI" href="https://www.fornasetti.com/en-eu/search"> 1311<link rel="alternate" hreflang="fr-GI" href="https://www.fornasetti.com/fr-eu/search"> 1312<link rel="alternate" hreflang="it-GI" href="https://www.fornasetti.com/it-eu/search"> 1313<link rel="alternate" hreflang="en-IS" href="https://www.fornasetti.com/en-eu/search"> 1314<link rel="alternate" hreflang="fr-IS" href="https://www.fornasetti.com/fr-eu/search"> 1315<link rel="alternate" hreflang="it-IS" href="https://www.fornasetti.com/it-eu/search"> 1316<link rel="alternate" hreflang="en-LI" href="https://www.fornasetti.com/en-eu/search"> 1317<link rel="alternate" hreflang="fr-LI" href="https://www.fornasetti.com/fr-eu/search"> 1318<link rel="alternate" hreflang="it-LI" href="https://www.fornasetti.com/it-eu/search"> 1319<link rel="alternate" hreflang="en-MC" href="https://www.fornasetti.com/en-eu/search"> 1320<link rel="alternate" hreflang="fr-MC" href="https://www.fornasetti.com/fr-eu/search"> 1321<link rel="alternate" hreflang="it-MC" href="https://www.fornasetti.com/it-eu/search"> 1322<link rel="alternate" hreflang="en-MD" href="https://www.fornasetti.com/en-eu/search"> 1323<link rel="alternate" hreflang="fr-MD" href="https://www.fornasetti.com/fr-eu/search"> 1324<link rel="alternate" hreflang="it-MD" href="https://www.fornasetti.com/it-eu/search"> 1325<link rel="alternate" hreflang="en-MK" href="https://www.fornasetti.com/en-eu/search"> 1326<link rel="alternate" hreflang="fr-MK" href="https://www.fornasetti.com/fr-eu/search"> 1327<link rel="alternate" hreflang="it-MK" href="https://www.fornasetti.com/it-eu/search"> 1328<link rel="alternate" hreflang="en-UA" href="https://www.fornasetti.com/en-eu/search"> 1329<link rel="alternate" hreflang="fr-UA" href="https://www.fornasetti.com/fr-eu/search"> 1330<link rel="alternate" hreflang="it-UA" href="https://www.fornasetti.com/it-eu/search"> 1331<link rel="alternate" hreflang="en-AG" href="https://www.fornasett
1331i.com/en-us/search"> 1332<link rel="alternate" hreflang="en-AI" href="https://www.fornasetti.com/en-us/search"> 1333<link rel="alternate" hreflang="en-AR" href="https://www.fornasetti.com/en-us/search"> 1334<link rel="alternate" hreflang="en-AW" href="https://www.fornasetti.com/en-us/search"> 1335<link rel="alternate" hreflang="en-BM" href="https://www.fornasetti.com/en-us/search"> 1336<link rel="alternate" hreflang="en-BO" href="https://www.fornasetti.com/en-us/search"> 1337<link rel="alternate" hreflang="en-BR" href="https://www.fornasetti.com/en-us/search"> 1338<link rel="alternate" hreflang="en-BS" href="https://www.fornasetti.com/en-us/search"> 1339<link rel="alternate" hreflang="en-BZ" href="https://www.fornasetti.com/en-us/search"> 1340<link rel="alternate" hreflang="en-CL" href="https://www.fornasetti.com/en-us/search"> 1341<link rel="alternate" hreflang="en-CO" href="https://www.fornasetti.com/en-us/search"> 1342<link rel="alternate" hreflang="en-CR" href="https://www.fornasetti.com/en-us/search"> 1343<link rel="alternate" hreflang="en-DM" href="https://www.fornasetti.com/en-us/search"> 1344<link rel="alternate" hreflang="en-DO" href="https://www.fornasetti.com/en-us/search"> 1345<link rel="alternate" hreflang="en-EC" href="https://www.fornasetti.com/en-us/search"> 1346<link rel="alternate" hreflang="en-FK" href="https://www.fornasetti.com/en-us/search"> 1347<link rel="alternate" hreflang="en-GT" href="https://www.fornasetti.com/en-us/search"> 1348<link rel="alternate" hreflang="en-GY" href="https://www.fornasetti.com/en-us/search"> 1349<link rel="alternate" hreflang="en-HN" href="https://www.fornasetti.com/en-us/search"> 1350<link rel="alternate" hreflang="en-JM" href="https://www.fornasetti.com/en-us/search"> 1351<link rel="alternate" hreflang="en-KY" href="https://www.fornasetti.com/en-us/search"> 1352<link rel="alternate" hreflang="en-MQ" href="https://www.fornasetti.com/en-us/search"> 1353<link rel="alternate" hreflang="en-MS" href="https://www.fornasetti.com/en-us/search"> 1354<link rel="alternate" hreflang="en-MX" href="https://www.fornasetti.com/en-us/search"> 1355<link rel="alternate" hreflang="en-NI" href="https://www.fornasetti.com/en-us/search"> 1356<link rel="alternate" hreflang="en-PA" href="https://www.fornasetti.com/en-us/search"> 1357<link rel="alternate" hreflang="en-PE" href="https://www.fornasetti.com/en-us/search"> 1358<link rel="alternate" hreflang="en-PY" href="https://www.fornasetti.com/en-us/search"> 1359<link rel="alternate" hreflang="en-TT" href="https://www.fornasetti.com/en-us/search"> 1360<link rel="alternate" hreflang="en-UY" href="https://www.fornasetti.com/en-us/search"> 1361<link rel="alternate" hreflang="en-VE" href="https://www.fornasetti.com/en-us/search"> 1362<link rel="alternate" hreflang="en-CN" href="https://www.fornasetti.com/en-cn/search"> 1363<link rel="alternate" hreflang="en-RU" href="https://www.fornasetti.com/en-ru/search"> 1364<link rel="alternate" hreflang="en-BD" href="https://www.fornasetti.com/en-row/search"> 1365<link rel="alternate" hreflang="en-BL" href="https://www.fornasetti.com/en-row/search"> 1366<link rel="alternate" hreflang="en-BN" href="https://www.fornasetti.com/en-row/search"> 1367<link rel="alternate" hreflang="en-BT" href="https://www.fornasetti.com/en-row/search"> 1368<link rel="alternate" hreflang="en-CK" href="https://www.fornasetti.com/en-row/search"> 1369<link rel="alternate" hreflang="en-FO" href="https://www.fornasetti.com/en-row/search"> 1370<link rel="alternate" hreflang="en-GD" href="https://www.fornasetti.com/en-row/search"> 1371<link rel="alternate" hreflang="en-GF" href="https://www.fornasetti.com/en-row/search"> 1372<link rel="alternate" hreflang="en-GL" href="https://www.fornasetti.com/en-row/search"> 1373<link rel="alternate" hreflang="en-GP" href="https://www.fornasetti.com/en-row/search"> 1374<link rel="alternate" hreflang="en-ID" href="https://www.fornasetti.com/en-row/search"> 1375<link rel="alternate" hreflang="en-IN" href="https://www.fornasetti.com/en-row/search"> 1376<link rel="alternate" hreflang="en-KH" href="https://www.fornasetti.com/en-row/search"> 1377<link rel="alternate" hreflang="en-KN" href="https://www.fornasetti.com/en-row/search"> 1378<link rel="alternate" hreflang="en-LA" href="https://www.fornasett
1378i.com/en-row/search"> 1379<link rel="alternate" hreflang="en-LC" href="https://www.fornasetti.com/en-row/search"> 1380<link rel="alternate" hreflang="en-LK" href="https://www.fornasetti.com/en-row/search"> 1381<link rel="alternate" hreflang="en-MN" href="https://www.fornasetti.com/en-row/search"> 1382<link rel="alternate" hreflang="en-MO" href="https://www.fornasetti.com/en-row/search"> 1383<link rel="alternate" hreflang="en-MV" href="https://www.fornasetti.com/en-row/search"> 1384<link rel="alternate" hreflang="en-NC" href="https://www.fornasetti.com/en-row/search"> 1385<link rel="alternate" hreflang="en-NP" href="https://www.fornasetti.com/en-row/search"> 1386<link rel="alternate" hreflang="en-PG" href="https://www.fornasetti.com/en-row/search"> 1387<link rel="alternate" hreflang="en-PH" href="https://www.fornasetti.com/en-row/search"> 1388<link rel="alternate" hreflang="en-SB" href="https://www.fornasetti.com/en-row/search"> 1389<link rel="alternate" hreflang="en-SC" href="https://www.fornasetti.com/en-row/search"> 1390<link rel="alternate" hreflang="en-SR" href="https://www.fornasetti.com/en-row/search"> 1391<link rel="alternate" hreflang="en-TC" href="https://www.fornasetti.com/en-row/search"> 1392<link rel="alternate" hreflang="en-TH" href="https://www.fornasetti.com/en-row/search"> 1393<link rel="alternate" hreflang="en-TL" href="https://www.fornasetti.com/en-row/search"> 1394<link rel="alternate" hreflang="en-TO" href="https://www.fornasetti.com/en-row/search"> 1395<link rel="alternate" hreflang="en-TV" href="https://www.fornasetti.com/en-row/search"> 1396<link rel="alternate" hreflang="en-TW" href="https://www.fornasetti.com/en-row/search"> 1397<link rel="alternate" hreflang="en-VC" href="https://www.fornasetti.com/en-row/search"> 1398<link rel="alternate" hreflang="en-VG" href="https://www.fornasetti.com/en-row/search"> 1399<link rel="alternate" hreflang="en-VN" href="https://www.fornasetti.com/en-row/search"> 1400<link rel="alternate" hreflang="en-VU" href="https://www.fornasetti.com/en-row/search"> 1401<link rel="alternate" hreflang="en-WS" href="https://www.fornasetti.com/en-row/search"> 1402<link rel="alternate" hreflang="en-AM" href="https://www.fornasetti.com/en-int/search"> 1403<link rel="alternate" hreflang="en-AZ" href="https://www.fornasetti.com/en-int/search"> 1404<link rel="alternate" hreflang="en-BH" href="https://www.fornasetti.com/en-int/search"> 1405<link rel="alternate" hreflang="en-BW" href="https://www.fornasetti.com/en-int/search"> 1406<link rel="alternate" hreflang="en-CV" href="https://www.fornasetti.com/en-int/search"> 1407<link rel="alternate" hreflang="en-DZ" href="https://www.fornasetti.com/en-int/search"> 1408<link rel="alternate" hreflang="en-EG" href="https://www.fornasetti.com/en-int/search"> 1409<link rel="alternate" hreflang="en-FJ" href="https://www.fornasetti.com/en-int/search"> 1410<link rel="alternate" hreflang="en-GA" href="https://www.fornasetti.com/en-int/search"> 1411<link rel="alternate" hreflang="en-GE" href="https://www.fornasetti.com/en-int/search"> 1412<link rel="alternate" hreflang="en-GH" href="https://www.fornasetti.com/en-int/search"> 1413<link rel="alternate" hreflang="en-GM" href="https://www.fornasetti.com/en-int/search"> 1414<link rel="alternate" hreflang="en-JO" href="https://www.fornasetti.com/en-int/search"> 1415<link rel="alternate" hreflang="en-KE" href="https://www.fornasetti.com/en-int/search"> 1416<link rel="alternate" hreflang="en-KM" href="https://www.fornasetti.com/en-int/search"> 1417<link rel="alternate" hreflang="en-KW" href="https://www.fornasetti.com/en-int/search"> 1418<link rel="alternate" hreflang="en-KZ" href="https://www.fornasetti.com/en-int/search"> 1419<link rel="alternate" hreflang="en-LB" href="https://www.fornasetti.com/en-int/search"> 1420<link rel="alternate" hreflang="en-LS" href="https://www.fornasetti.com/en-int/search"> 1421<link rel="alternate" hreflang="en-MA" href="https://www.fornasetti.com/en-int/search"> 1422<link rel="alternate" hreflang="en-MG" href="https://www.fornasetti.com/en-int/search"> 1423<link rel="alternate" hreflang="en-MU" href="https://www.fornasetti.com/en-int/search"> 1424<link rel="alternate" hreflang="en-MW" href="https://www.fornasetti.com/en-int/search"> 1425<link rel="alternate" hreflang="en-MZ" href="https://www.fornasett
1425i.com/en-int/search"> 1426<link rel="alternate" hreflang="en-NA" href="https://www.fornasetti.com/en-int/search"> 1427<link rel="alternate" hreflang="en-OM" href="https://www.fornasetti.com/en-int/search"> 1428<link rel="alternate" hreflang="en-PF" href="https://www.fornasetti.com/en-int/search"> 1429<link rel="alternate" hreflang="en-QA" href="https://www.fornasetti.com/en-int/search"> 1430<link rel="alternate" hreflang="en-SA" href="https://www.fornasetti.com/en-int/search"> 1431<link rel="alternate" hreflang="en-SN" href="https://www.fornasetti.com/en-int/search"> 1432<link rel="alternate" hreflang="en-SZ" href="https://www.fornasetti.com/en-int/search"> 1433<link rel="alternate" hreflang="en-TG" href="https://www.fornasetti.com/en-int/search"> 1434<link rel="alternate" hreflang="en-TN" href="https://www.fornasetti.com/en-int/search"> 1435<link rel="alternate" hreflang="en-TR" href="https://www.fornasetti.com/en-int/search"> 1436<link rel="alternate" hreflang="en-TZ" href="https://www.fornasetti.com/en-int/search"> 1437<link rel="alternate" hreflang="en-ZA" href="https://www.fornasetti.com/en-int/search">
1438<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=5170135387"></script>
1438 1439<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
1440<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=5170135387&shop_id=95659295067" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1440
1440
1441<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":95659295067,"countryCode":"IT","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/95659295067","merchantName":"Fornasetti Store","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","maestro","masterCard","amex"],"total":{"type":"pending","label":"Fornasetti Store","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 1441
1441
1442<script id="shopify-features" type="application/json">{"accessToken":"5cb41c719856909811aa91f12dc5250b","betas":["rich-media-storefront-analytics"],"domain":"www.fornasetti.com","predictiveSearch":true,"shopId":95659295067,"locale":"en"}</script>
vendor: 1 bytes, line 1442
1442
1443<script>var Shopify = Shopify || {}; 1444Shopify.shop = "fornasetti-store.myshopify.com"; 1445Shopify.locale = "en"; 1446Shopify.currency = {"active":"USD","rate":"1.1483874"}; 1447Shopify.country = "US"; 1448Shopify.theme = {"name":"fornasetti-shopify\/main","id":187965735259,"schema_name":"Sleek","schema_version":"2.0.1","theme_store_id":null,"role":"main"}; 1449Shopify.theme.handle = "null"; 1450Shopify.theme.style = {"id":null,"handle":null}; 1451Shopify.cdnHost = "www.fornasetti.com/cdn"; 1452Shopify.routes = Shopify.routes || {}; 1453Shopify.routes.root = "/en-us/"; 1454Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 1455Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 1456Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 1457Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 1457
1457
1458<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 1458
1458
1459<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 1459
1459
1460<script> 1461 window.ShopifyPay = window.ShopifyPay || {}; 1462 window.ShopifyPay.apiHost = "shop.app\/pay"; 1463 window.ShopifyPay.redirectState = null; 1464</script>
vendor: 1 bytes, line 1464
1464
1465<script> 1466 window.Shopify = window.Shopify || {}; 1467 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 1468 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 1469 window.Shopify.SignInWithShop.eligible = false; 1470</script>
vendor: 1 bytes, line 1470
1470
1471<script id="shop-js-analytics" type="application/json">{"pageType":"search"}</script>
vendor: 1 bytes, line 1471
1471
1472<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 1472
1472
1473<script type="module"> 1474 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 1475 1476 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 1477 1478</script>
vendor: 1 bytes, line 1478
1478
1479<script> 1480 window.Shopify = window.Shopify || {}; 1481 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 1482 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]}; 1483</script>
vendor: 1 bytes, line 1483
1483
1484<script>(function() { 1485 var isLoaded = false; 1486 function asyncLoad() { 1487 if (isLoaded) return; 1488 isLoaded = true; 1489 var urls = ["https:\/\/cdn.shopify.com\/s\/files\/1\/0597\/3783\/3627\/files\/tptinstall.min.js?v=1718591634\u0026t=tapita-seo-script-tags\u0026shop=fornasetti-store.myshopify.com"]; 1490 for (var i = 0; i < urls.length; i++) { 1491 var s = document.createElement('script'); 1492 s.type = 'text/javascript'; 1493 s.async = true; 1494 s.src = urls[i]; 1495 var x = document.getElementsByTagName('script')[0]; 1496 x.parentNode.insertBefore(s, x); 1497 } 1498 }; 1499 if(window.attachEvent) { 1500 window.attachEvent('onload', asyncLoad); 1501 } else { 1502 window.addEventListener('load', asyncLoad, false); 1503 } 1504})();</script>
vendor: 1 bytes, line 1504
1504
1505<script id="__st">var __st={"a":95659295067,"offset":7200,"reqid":"a36c2549-1879-4cf9-9382-61a912018029-1790927219","pageurl":"www.fornasetti.com\/en-us\/search","u":"a87303ede5e9","p":"searchresults"};</script>
vendor: 1 bytes, line 1505
1505
1506<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 1506
1506
1507<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 1507
1507
1508<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//www.fornasetti.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1508
1508
1509<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//www.fornasetti.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
1509<script crossorigin="anonymous" defer="defer" src="//www.fornasetti.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 1509
1509
1510<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 1510
1510
1511<script> 1512 window.Shopify = window.Shopify || {}; 1513 window.Shopify.MCP = window.Shopify.MCP || {}; 1514 window.Shopify.MCP.enabled = true; 1515 window.Shopify.MCP.shop = "fornasetti-store.myshopify.com"; 1516 window.Shopify.MCP.mcpEndpoint = "https:\/\/www.fornasetti.com\/api\/mcp"; 1517 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 1518</script>
vendor: 1 bytes, line 1518
1518
1519<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/www.fornasetti.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 1520</script>
vendor: 1 bytes, line 1520
1520
1521<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://www.fornasetti.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 1522</script>
vendor: 1 bytes, line 1522
1522
1523<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 1524 function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent); 1525</script>
vendor: 1 bytes, line 1525
1525
1526<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 1527</script>
vendor: 1 bytes, line 1527
1527
1528<script id='scb4127' type='text/javascript' async='' src='https://www.fornasetti.com/cdn/shopifycloud/privacy-banner/storefront-banner.js'></script>
1528<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://www.fornasetti.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 1529<style id="shopify-accelerated-checkout-cart"> 1530 #shopify-buyer-consent { 1531 margin-top: 1em; 1532 display: inline-block; 1533 width: 100%; 1534} 1535 1536#shopify-buyer-consent.hidden { 1537 display: none; 1538} 1539 1540#shopify-subscription-policy-button { 1541 background: none; 1542 border: none; 1543 padding: 0; 1544 text-decoration: underline; 1545 font-size: inherit; 1546 cursor: pointer; 1547} 1548 1549#shopify-subscription-policy-button::before { 1550 box-shadow: none; 1551} 1552 1553 </style> 1554
1555<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
1555 1556 1557
1557<script src="//www.fornasetti.com/cdn/shop/t/6/assets/vendor.js?v=174038403214335522651759488153" defer="defer"></script>
1557 1558
1558<script src="//www.fornasetti.com/cdn/shop/t/6/assets/theme.js?v=97202670981523907601773409785" defer="defer"></script>
1558<script> 1559 if (Shopify.designMode) { 1560 document.documentElement.classList.add('shopify-design-mode'); 1561 } 1562 </script>
vendor: 1 bytes, line 1562
1562
1563<script> 1564 window.FoxTheme = window.FoxTheme || {}; 1565 document.documentElement.classList.replace('no-js', 'js'); 1566 window.shopUrl = 'https://www.fornasetti.com'; 1567 window.FoxTheme.routes = { 1568 cart_add_url: '/en-us/cart/add', 1569 cart_change_url: '/en-us/cart/change', 1570 cart_update_url: '/en-us/cart/update', 1571 cart_url: '/en-us/cart', 1572 shop_url: 'https://www.fornasetti.com', 1573 predictive_search_url: '/en-us/search/suggest', 1574 }; 1575 1576 FoxTheme.shippingCalculatorStrings = { 1577 error: "One or more errors occurred while retrieving the shipping rates:", 1578 notFound: "Sorry, we do not ship to your address.", 1579 oneResult: "There is one shipping rate for your address:", 1580 multipleResults: "There are multiple shipping rates for your address:", 1581 }; 1582 1583 FoxTheme.settings = { 1584 cartType: "drawer", 1585 moneyFormat: "${{amount}}", 1586 themeName: 'Sleek', 1587 themeVersion: '2.0.1' 1588 } 1589 1590 FoxTheme.variantStrings = { 1591 addToCart: `Add to Bag`, 1592 soldOut: `Sold out`, 1593 unavailable: `Unavailable`, 1594 unavailable_with_option: `[value] - Unavailable`, 1595 }; 1596 1597 FoxTheme.quickOrderListStrings = { 1598 itemsAdded: "[quantity] items added", 1599 itemAdded: "[quantity] item added", 1600 itemsRemoved: "[quantity] items removed", 1601 itemRemoved: "[quantity] item removed", 1602 viewCart: "View cart", 1603 each: "[money]\/ea", 1604 min_error: "This item has a minimum of [min]", 1605 max_error: "This item has a maximum of [max]", 1606 step_error: "You can only add this item in increments of [step]", 1607 }; 1608 1609 FoxTheme.accessibilityStrings = { 1610 imageAvailable: `Image [index] is now available in gallery view`, 1611 shareSuccess: `Copied`, 1612 pauseSlideshow: `Pause slideshow`, 1613 playSlideshow: `Play slideshow`, 1614 recipientFormExpanded: `Gift card recipient form expanded`, 1615 recipientFormCollapsed: `Gift card recipient form collapsed`, 1616 countrySelectorSearchCount: `[count] countries/regions found`, 1617 }; 1618 1619 FoxTheme.cartStrings = { 1620 error: `There was an error while updating your cart. Please try again.`, 1621 quantityError: `You can only add [quantity] of this item to your cart.`, 1622 duplicateDiscountError: `The discount code has already been applied to your cart.`, 1623 applyDiscountError: `The discount code cannot be applied to your cart.`, 1624 shippingInfoTooltip: "The estimated shipping cost refers to the default rate based on your current shipping destination. You may modify your shipping preference at Checkout", 1625 }; 1626 1627 FoxTheme.wishlistStrings = { 1628 unavailableMessage: "This product is currently unavailable. Please remove it from your list.", 1629 sendToFriend: "Send to a Friend", 1630 }; 1631</script>
1631 1632 1633 1634
1635<script> 1636 (function() { 1637 // Ensure dataLayer exists 1638 window.dataLayer = window.dataLayer || []; 1639 1640 /** 1641 * Build GA4 item object from product/variant data 1642 * @param {Object} product - Product object with id, title, vendor, type 1643 * @param {Object} variant - Variant object with id, price 1644 * @param {number} index - Position in list (optional) 1645 * @param {string} listId - List identifier (optional) 1646 * @param {string} listName - List name (optional) 1647 * @returns {Object} GA4 item object 1648 */ 1649 window.buildGtmItem = function(product, variant, index, listId, listName) { 1650 var item = { 1651 item_id: String(product.id || variant.product_id || ''), 1652 item_name: (product.title || '').toLowerCase(), 1653 item_brand: (product.vendor || '').toLowerCase(), 1654 item_category: (product.type || '').toLowerCase(), 1655 price: parseFloat(variant.price || 0) / 100, 1656 currency: 'USD', 1657 quantity: variant.quantity || 1 1658 }; 1659 1660 if (index !== undefined && index !== null) { 1661 item.index = index; 1662 } 1663 1664 if (listId) { 1665 item.item_list_id = listId; 1666 } 1667 1668 if (listName) { 1669 item.item_list_name = listName.toLowerCase(); 1670 } 1671 1672 return item; 1673 }; 1674 1675 /** 1676 * Push event to dataLayer with ecommerce clearing 1677 * @param {string} event - Event name 1678 * @param {Object} ecommercePayload - E-commerce data payload 1679 */ 1680 window.pushDataLayer = function(event, ecommercePayload) { 1681 // Always clear ecommerce first 1682 window.dataLayer.push({ ecommerce: null }); 1683 1684 // Push the event 1685 var payload = { 1686 event: event 1687 }; 1688 1689 if (ecommercePayload) { 1690 payload.ecommerce = ecommercePayload; 1691 } 1692 1693 window.dataLayer.push(payload); 1694 console.log('[GTM]', event, payload); 1695 }; 1696 1697 /** 1698 * SHA-256 hash utility for email/phone 1699 * @param {string} text - Text to hash 1700 * @returns {Promise<string>} SHA-256 hash in hex format 1701 */ 1702 window.hashSHA256 = function(text) { 1703 if (!text) return Promise.resolve(''); 1704 1705 return crypto.subtle.digest('SHA-256', new TextEncoder().encode(text.toLowerCase().trim())) 1706 .then(function(hashBuffer) { 1707 var hashArray = Array.from(new Uint8Array(hashBuffer)); 1708 return hashArray.map(function(b) { 1709 return b.toString(16).padStart(2, '0'); 1710 }).join(''); 1711 }); 1712 }; 1713 1714 /** 1715 * Global delegated select_item handler 1716 * Uses event delegation on document so it works for both 1717 * server-rendered AND dynamically loaded product cards 1718 * (e.g. recently viewed, related products loaded via fetch + innerHTML) 1719 */ 1720 document.addEventListener('click', function(e) { 1721 var link = e.target.closest('.gtm-product-link'); 1722 if (!link) return; 1723 if (typeof window.pushDataLayer === 'undefined' || typeof window.buildGtmItem === 'undefined') return; 1724 1725 var productData = { 1726 id: link.getAttribute('data-gtm-product-id'), 1727 title: link.getAttribute('data-gtm-product-title') || '', 1728 vendor: link.getAttribute('data-gtm-product-vendor') || '', 1729 type: link.getAttribute('data-gtm-product-type') || '' 1730 }; 1731 1732 var variantData = { 1733 id: link.getAttribute('data-gtm-variant-id'), 1734 price: parseInt(link.getAttribute('data-gtm-variant-price') || '0'), 1735 quantity: 1 1736 }; 1737 1738 var listId = link.getAttribute('data-gtm-list-id'); 1739 var listName = link.getAttribute('data-gtm-list-name'); 1740 var index = link.getAttribute('data-gtm-index'); 1741 1742 var item = window.buildGtmItem( 1743 productData, 1744 variantData, 1745 index ? parseInt(index) : undefined, 1746 listId, 1747 listName 1748 ); 1749 1750 var ecommerceData = { 1751 item_list_id: listId || undefined, 1752 item_list_name: listName ? listName.toLowerCase() : undefined, 1753 items: [item] 1754 }; 1755 1756 window.pushDataLayer('select_item', ecommerceData); 1757 1758 console.log('[GTM] select_item', ecommerceData); 1759 }); 1760 1761 /** 1762 * mobile_open_menu: fires when the user opens the mobile menu drawer 1763 */ 1764 document.addEventListener('click', function(e) { 1765 var btn = e.target.closest('.menu-drawer-button'); 1766 if (!btn) return; 1767 window.dataLayer = window.dataLayer || []; 1768 window.dataLayer.push({ event: 'mobile_open_menu' }); 1769 console.log('[GTM] mobile_open_menu'); 1770 }); 1771 1772 /** 1773 * menu_interaction: fires when the user clicks a navigation link 1774 * inside the desktop or mobile navigation menu. 1775 * Links must carry data-gtm-nav-first (and optionally data-gtm-nav-second / 1776 * data-gtm-nav-third) attributes set by the Liquid templates. 1777 */ 1778 // menu_interaction: top-level summary items (e.g. FURNITURE, HIGHLIGHTS) 1779 document.addEventListener('click', function(e) { 1780 var summary = e.target.closest('summary[data-gtm-nav-first]'); 1781 if (!summary) return; 1782 1783 var firstLevel = summary.getAttribute('data-gtm-nav-first') || undefined; 1784 var payload = { event: 'menu_interaction', section: 'text' }; 1785 if (firstLevel) payload.first_level = firstLevel; 1786 1787 window.dataLayer = window.dataLayer || []; 1788 window.dataLayer.push(payload); 1789 console.log('[GTM] menu_interaction (top-level)', payload); 1790 }); 1791 1792 document.addEventListener('click', function(e) { 1793 var link = e.target.closest('a[data-gtm-nav-first]'); 1794 if (!link) return; 1795 1796 var firstLevel = link.getAttribute('data-gtm-nav-first') || undefined; 1797 var secondLevel = link.getAttribute('data-gtm-nav-second') || undefined; 1798 var thirdLevel = link.getAttribute('data-gtm-nav-third') || undefined; 1799 1800 // Detect whether the click is in a promotions / image area 1801 var inPromo = !!( 1802 link.closest('.mega-menu__promotions') || 1803 link.closest('.menu-drawer__promotions') 1804 ); 1805 var section = inPromo ? 'image' : 'text'; 1806 1807 var payload = { event: 'menu_interaction', section: section }; 1808 if (firstLevel) payload.first_level = firstLevel; 1809 if (secondLevel) payload.second_level = secondLevel; 1810 if (thirdLevel) payload.third_level = thirdLevel; 1811 1812 window.dataLayer = window.dataLayer || []; 1813 window.dataLayer.push(payload); 1814 console.log('[GTM] menu_interaction', payload); 1815 }); 1816 })(); 1817</script>
vendor: 1 bytes, line 1817
1817
1818<script> 1819 (function() { 1820 window.dataLayer = window.dataLayer || []; 1821 var consentPushed = false; 1822 1823 function writeConsentCookieAndPush() { 1824 if (consentPushed) return; 1825 1826 var privacy = window.Shopify && window.Shopify.customerPrivacy; 1827 if (!privacy || typeof privacy.currentVisitorConsent !== 'function') return; 1828 1829 var consent = privacy.currentVisitorConsent(); 1830 1831 // Use currentVisitorConsent() for actual user choices: 1832 // 'yes' = accepted, 'no' = declined, '' = not yet decided 1833 var analyticsConsent = consent.analytics === 'yes'; 1834 var marketingConsent = consent.marketing === 'yes'; 1835 var personalizationConsent = consent.preferences === 'yes'; 1836 1837 var cookieValue = 'analytics_consent:' + (analyticsConsent ? 'true' : 'false') + ';' + 1838 'marketing_consent:' + (marketingConsent ? 'true' : 'false') + ';' + 1839 'personalization_consent:' + (personalizationConsent ? 'true' : 'false') + ';' + 1840 'necessary_consent:true'; 1841 1842 // Write cookie (expires in 1 year) 1843 var expires = new Date(); 1844 expires.setTime(expires.getTime() + (365 * 24 * 60 * 60 * 1000)); 1845 document.cookie = 'shopify_cmp_consent=' + encodeURIComponent(cookieValue) + 1846 ';expires=' + expires.toUTCString() + ';path=/;SameSite=Lax'; 1847 1848 // Push consent event + consent values to dataLayer 1849 window.dataLayer.push({ 1850 event: 'consent_event', 1851 shopify_cmp_consent: cookieValue 1852 }); 1853 consentPushed = true; 1854 1855 console.log('[GTM Consent] consent_event pushed', { 1856 shopify_cmp_consent: cookieValue 1857 }); 1858 } 1859 1860 // Listen for new consent decisions (banner interaction) 1861 document.addEventListener('visitorConsentCollected', function() { 1862 consentPushed = false; 1863 writeConsentCookieAndPush(); 1864 }); 1865 1866 // Check if consent was already given (returning visitor) 1867 function checkExistingConsent() { 1868 var privacy = window.Shopify && window.Shopify.customerPrivacy; 1869 if (!privacy || typeof privacy.currentVisitorConsent !== 'function') { 1870 return false; 1871 } 1872 1873 var consent = privacy.currentVisitorConsent(); 1874 1875 // If any consent category has been answered, consent exists 1876 if (consent.analytics !== '' || consent.marketing !== '' || consent.preferences !== '') { 1877 writeConsentCookieAndPush(); 1878 return true; 1879 } 1880 1881 return false; 1882 } 1883 1884 // Poll for customerPrivacy (loaded async via content_for_header) 1885 var attempts = 0; 1886 var poll = setInterval(function() { 1887 attempts++; 1888 if (checkExistingConsent() || attempts >= 40) { 1889 clearInterval(poll); 1890 } 1891 }, 250); 1892 })(); 1893</script>
vendor: 1 bytes, line 1893
1893
1894<script> 1895 // Clear the login tracking flag when customer is logged out, 1896 // so the next login correctly fires the login event 1897 sessionStorage.removeItem('gtm_last_customer_id'); 1898 </script>
1898<script> 1899 (function() { 1900 // GTM: Track dynamic checkout button clicks (PayPal, Shop Pay, etc.) 1901 // These buttons render inside iframes (class "component-frame"), so click events 1902 // don't bubble to the parent. We detect iframe interaction via window blur + 1903 // checking if the focused element is a payment-related iframe. 1904 if (typeof window.pushDataLayer !== 'undefined' && typeof window.buildGtmItem !== 'undefined') { 1905 var beginCheckoutFired = false; 1906 1907 function isPaymentIframe(el) { 1908 if (!el || el.tagName !== 'IFRAME') return false; 1909 // Shopify accelerated checkout component iframe 1910 if (el.classList.contains('component-frame')) return true; 1911 // Traditional Shopify payment button wrapper 1912 if (el.closest && (el.closest('.shopify-payment-button') || el.closest('[data-shopify="payment-button"]'))) return true; 1913 return false; 1914 } 1915 1916 function fireBeginCheckout() { 1917 if (beginCheckoutFired) return; 1918 beginCheckoutFired = true; 1919 1920 fetch('/en-us/cart.js') 1921 .then(function(response) { return response.json(); }) 1922 .then(function(cartJson) { 1923 if (cartJson.items && cartJson.items.length > 0) { 1924 var items = cartJson.items.map(function(cartItem) { 1925 return window.buildGtmItem( 1926 { id: cartItem.sku || '', title: cartItem.product_title || cartItem.title || '', vendor: cartItem.vendor || '', type: cartItem.product_type || '' }, 1927 { id: cartItem.variant_id || cartItem.id, price: cartItem.price || cartItem.final_price || 0, quantity: cartItem.quantity || 1 } 1928 ); 1929 }); 1930 1931 var value = items.reduce(function(sum, item) { return sum + (item.price * item.quantity); }, 0); 1932 var currency = cartJson.currency || 'EUR'; 1933 var coupon = cartJson.discount_codes && cartJson.discount_codes.length > 0 ? cartJson.discount_codes[0].code : ''; 1934 1935 window.pushDataLayer('begin_checkout', { 1936 currency: currency, 1937 value: value, 1938 coupon: coupon || undefined, 1939 checkout_type: 'paypal', 1940 items: items 1941 }); 1942 } 1943 }) 1944 .catch(function(error) { 1945 console.error('Error fetching cart for begin_checkout event:', error); 1946 beginCheckoutFired = false; 1947 }); 1948 } 1949 1950 // When a user clicks inside an iframe, the parent window fires blur 1951 // and document.activeElement becomes the iframe element. 1952 window.addEventListener('blur', function() { 1953 setTimeout(function() { 1954 if (isPaymentIframe(document.activeElement)) { 1955 fireBeginCheckout(); 1956 } 1957 }, 0); 1958 }); 1959 1960 // Reset flag when window regains focus (user returned from PayPal/checkout) 1961 window.addEventListener('focus', function() { 1962 beginCheckoutFired = false; 1963 }); 1964 } 1965 })(); 1966 </script>
1966 1967 <meta name="google-site-verification" content="QrX45tpXP4aK7Tut2xBHfoQ8D-PeZ6Jhu2W1lJQ_6kM" /> 1968<!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981
1981<script async src="https://static.klaviyo.com/onsite/js/R2hV6y/klaviyo.js?company_id=R2hV6y"></script>
1981 1982
1982<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
1982 1983 1984 1985 1986 1987 1988 1989
1989<script> 1990 window.klaviyoReviewsProductDesignMode = false 1991 </script>
1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001<!-- END app block --><link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2002<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 95659295067,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "search"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 2002
2002
2003<script> 2004 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 2005</script>
vendor: 1 bytes, line 2005
2005
2006<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
2006).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 95659295067,storefrontBaseUrl: "https://www.fornasetti.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://www.fornasetti.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"3479896411","configuration":"{\"swymApiEndpoint\":\"https:\/\/swymstore-v3pro-01.swymrelay.com\",\"swymTier\":\"v3pro-01\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5b6f6917e306bc7f24523662663331c0","type":"APP","apiClientId":1350849,"privacyPurposes":["ANALYTICS","MARKETING","PREFERENCES"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"3106242907","configuration":"{\"accountID\":\"R2hV6y\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"309199195","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"51","type":"CUSTOM","privacyPurposes":["SALE_OF_DATA"],"name":"Google Tag Manager"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Fornasetti Store","paymentSettings":{"currencyCode":"EUR"}
2006,"myshopifyDomain":"fornasetti-store.myshopify.com","countryCode":"IT","storefrontUrl":"https:\/\/www.fornasetti.com\/en-us"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://www.fornasetti.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"187965735259","themePublished":"true","eventMetadataId":"26f8d76a-98f9-452b-b060-97b64ff90c3f","pageType":"searchresults","shopId":"95659295067","storefrontBaseUrl":"https:\/\/www.fornasetti.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}],[\"search_submitted\",{\"searchResult\":{\"query\":\"\",\"productVariants\":[]}}]]"});})();</script>
2006<script> 2007 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 2008 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 2009 window.ShopifyAnalytics.meta.currency = 'USD'; 2010 var meta = {"products":[],"page":{"pageType":"searchresults","requestId":"a36c2549-1879-4cf9-9382-61a912018029-1790927219"}}; 2011 for (var attr in meta) { 2012 window.ShopifyAnalytics.meta[attr] = meta[attr]; 2013 } 2014</script>
vendor: 1 bytes, line 2014
2014
2015<script class="analytics"> 2016 (function () { 2017 var customDocumentWrite = function(content) { 2018 var jquery = null; 2019 2020 if (window.jQuery) { 2021 jquery = window.jQuery; 2022 } else if (window.Checkout && window.Checkout.$) { 2023 jquery = window.Checkout.$; 2024 } 2025 2026 if (jquery) { 2027 jquery('body').append(content); 2028 } 2029 }; 2030 2031 var hasLoggedConversion = function(token) { 2032 if (token) { 2033 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 2034 } 2035 return false; 2036 } 2037 2038 var setCookieIfConversion = function(token) { 2039 if (token) { 2040 var twoMonthsFromNow = new Date(Date.now()); 2041 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 2042 2043 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 2044 } 2045 } 2046 2047 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 2048 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 2049 if (trekkie.integrations) { 2050 return; 2051 } 2052 trekkie.methods = [ 2053 'identify', 2054 'page', 2055 'ready', 2056 'track', 2057 'trackForm', 2058 'trackLink' 2059 ]; 2060 trekkie.factory = function(method) { 2061 return function() { 2062 var args = Array.prototype.slice.call(arguments); 2063 args.unshift(method); 2064 trekkie.push(args); 2065 if (method == 'track' || method == 'page') { 2066 var pageUrl; 2067 try { 2068 pageUrl = window.location.href; 2069 } catch (e) {} 2070 var pageReferrer; 2071 try { 2072 pageReferrer = document.referrer; 2073 } catch (e) {} 2074 try { 2075 if (window.__TREKKIE_SHIM_QUEUE == null) { 2076 window.__TREKKIE_SHIM_QUEUE = []; 2077 } 2078 window.__TREKKIE_SHIM_QUEUE.push({ 2079 from: 'trekkie-stub', 2080 method: method, 2081 args: args.slice(1), 2082 pageContext: { 2083 url: pageUrl, 2084 referrer: pageReferrer 2085 } 2086 }); 2087 } catch (e) { 2088 // no-op 2089 } 2090 } 2091 return trekkie; 2092 }; 2093 }; 2094 for (var i = 0; i < trekkie.methods.length; i++) { 2095 var key = trekkie.methods[i]; 2096 trekkie[key] = trekkie.factory(key); 2097 } 2098 trekkie.load = function(config) { 2099 trekkie.config = config || {}; 2100 trekkie.config.initialDocumentCookie = document.cookie; 2101 var first = document.getElementsByTagName('script')[0]; 2102var script = document.createElement('script'); 2103script.type = 'text/javascript'; 2104script.onerror = function(e) { 2105 var scriptFallback = document.createElement('script'); 2106 scriptFallback.type = 'text/javascript'; 2107 scriptFallback.onerror = function(error) { 2108 var Monorail = { 2109 produce: function produce(monorailDomain, schemaId, payload) { 2110 var currentMs = new Date().getTime(); 2111 var event = { 2112 schema_id: schemaId, 2113 payload: payload, 2114 metadata: { 2115 event_created_at_ms: currentMs, 2116 event_sent_at_ms: currentMs 2117 } 2118 }; 2119 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 2120 }, 2121 sendRequest: function sendRequest(endpointUrl, payload) { 2122 // Try the sendBeacon API 2123 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 2124 var blobData = new window.Blob([payload], { 2125 type: 'text/plain' 2126 }); 2127 2128 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 2129 return true; 2130 } // sendBeacon was not successful 2131 2132 } // XHR beacon 2133 2134 var xhr = new XMLHttpRequest(); 2135 2136 try { 2137 xhr.open('POST', endpointUrl); 2138 xhr.setRequestHeader('Content-Type', 'text/plain'); 2139 xhr.send(payload); 2140 } catch (e) { 2141 console.log(e); 2142 } 2143 2144 return false; 2145 }, 2146 isIos12: function isIos12() { 2147 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 2148 } 2149 }; 2150 Monorail.produce('monorail-edge.shopifysvc.com', 2151 'trekkie_storefront_load_errors/1.1', 2152 {shop_id: 95659295067, 2153 theme_id: 187965735259, 2154 app_name: "storefront", 2155 context_url: window.location.href,
2156 source_url: "//www.fornasetti.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 2157 2158 }; 2159 scriptFallback.async = true; 2160 scriptFallback.src = '//www.fornasetti.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 2161 first.parentNode.insertBefore(scriptFallback, first); 2162}; 2163script.async = true; 2164script.src = '//www.fornasetti.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 2165first.parentNode.insertBefore(script, first); 2166 2167 }; 2168 trekkie.load( 2169 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":95659295067,"isMerchantRequest":null,"themeId":187965735259,"themeCityHash":"12162642305728601728","contentLanguage":"en","currency":"USD","eventMetadataId":"26f8d76a-98f9-452b-b060-97b64ff90c3f"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}} 2170 ); 2171 2172 var loaded = false; 2173 trekkie.ready(function() { 2174 if (loaded) return; 2175 loaded = true; 2176 2177 window.ShopifyAnalytics.lib = window.trekkie; 2178 2179 var originalDocumentWrite = document.write; 2180 document.write = customDocumentWrite; 2181 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 2182 document.write = originalDocumentWrite; 2183 2184 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 2185 var token = match? match[1]: undefined; 2186 if (!hasLoggedConversion(token)) { 2187 setCookieIfConversion(token); 2188 window.ShopifyAnalytics.lib.track("Performed Search",{"query":null},undefined,undefined,{"shopifyEmitted":true}); 2189 } 2190 }); 2191 2192 window.ShopifyAnalytics.lib.page(null,{"pageType":"searchresults","requestId":"a36c2549-1879-4cf9-9382-61a912018029-1790927219","shopifyEmitted":true}); 2193 2194 var eventsListenerScript = document.createElement('script'); 2195 eventsListenerScript.async = true; 2196 eventsListenerScript.src = "//www.fornasetti.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 2197 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 2198})();</script>
vendor: 1 bytes, line 2198
2198
2199<script 2200 defer 2201 src="https://www.fornasetti.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 2202 data-application="storefront-renderer" 2203 data-shop-id="95659295067" 2204 data-render-region="gcp-us-west1" 2205 data-page-type="search" 2206 data-theme-instance-id="187965735259" 2207 data-theme-name="Sleek" 2208 data-theme-version="2.0.1" 2209 data-monorail-region="shop_domain" 2210 data-resource-timing-sampling-rate="10" 2211 data-shs="true" 2212 data-shs-beacon="true" 2213 data-shs-export-with-fetch="true" 2214 data-shs-logs-sample-rate="1" 2215 data-shs-beacon-endpoint="https://www.fornasetti.com/api/collect" 2216></script>
2216 2217<meta name="shopify-y" content="00000000-0000-0000-5000-000000000000" data-expiration="1822484819000"><meta name="shopify-s" content="00000000-0000-0000-5000-000000000000" data-expiration="1790929019000"><meta name="new-cookie-storage-activated" content="t"> 2218</head> 2219 2220 <body 2221 class="search-template blocks-corner--square" 2222 data-initializing 2223 > 2224 <!-- Google Tag Manager (noscript) -->
vendor: 72 bytes, lines 2224-2225
2224 2225 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
2225GTM-NBQN8V3S
vendor: 91 bytes, lines 2225-2227
2225" 2226 height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 2227
2227<!-- End Google Tag Manager (noscript) --> 2228 2229 2230 2231 2232 <a class="skip-to-content-link button visually-hidden" href="#MainContent"> 2233 Skip to content 2234 </a><page-transition class="loading-bar"> </page-transition> 2235<div class="site-wrapper min-height-screen"> 2236 <!-- BEGIN sections: header-group --> 2237<div id="shopify-section-sections--26626610561371__jkl_header_JzGfkD" class="shopify-section shopify-section-group-header-group header-section"><link 2238 rel="stylesheet" 2239 href="//www.fornasetti.com/cdn/shop/t/6/assets/component-custom-card.css?v=68178963558480365221759488156" 2240 media="print" 2241 fetchpriority="low" 2242 onload="this.media='all'" 2243 > 2244 <link 2245 rel="stylesheet" 2246 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-header.css?v=66579117240376891201776087418" 2247 media="print" 2248 fetchpriority="low" 2249 onload="this.media='all'" 2250 > 2251 <link 2252 rel="stylesheet" 2253 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-language-selector-inline.css?v=100479752632038162041768474501" 2254 media="print" 2255 fetchpriority="low" 2256 onload="this.media='all'" 2257 > 2258 <link 2259 rel="stylesheet" 2260 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-localization-overlay.css?v=41067402203847137681768474502" 2261 media="print" 2262 fetchpriority="low" 2263 onload="this.media='all'" 2264 > 2265 <link 2266 rel="stylesheet" 2267 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-menu-drawer.css?v=122344410745334600071768474503" 2268 media="print" 2269 fetchpriority="low" 2270 onload="this.media='all'" 2271 > 2272
2272<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-header.js?v=96105454547114291691779192831" defer="defer"></script>
2272<style data-shopify> 2273 #shopify-section-sections--26626610561371__jkl_header_JzGfkD { 2274 --section-padding-top: 0px; 2275 --section-padding-bottom: 0px; 2276 --logo-width: 185px; 2277 --logo-width-mobile: 80px; 2278 --color-transparent: 255,255,255; 2279 --menu-font-size: 12px; 2280 --menu-font-weight: 600; 2281 } 2282 </style> 2283 2284 <header 2285 data-section-id="sections--26626610561371__jkl_header_JzGfkD" 2286 class="header section--padding grid items-center header--left-center color-scheme-1 header-mobile--left page-width header--show-sperator-line" 2287 2288 2289 is="sticky-header" data-sticky-type="always" 2290 2291 ><div class="header__icons header__icons--left lg:justify-start z-1 lg:hidden"> 2292 <div class="header__buttons flex items-center"> 2293 <button 2294 class="menu-drawer-button btn btn--inherit flex items-center justify-center lg:hidden" 2295 aria-controls="MenuDrawer" 2296 aria-label="Toggle menu" 2297 ><svg 2298 class="icon icon-hamburger icon--large" 2299 viewBox="0 0 21 20" 2300 fill="none" 2301 xmlns="http://www.w3.org/2000/svg" 2302> 2303 <path d="M3.76807 10.0078L17.5181 10.007" stroke="transparent" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2304 <path d="M0.5 5.00781L20.5 5.00699" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2305 <path d="M0.5 15.0078L20.5 15.007" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2306</svg> 2307 2308</button> 2309 </div> 2310 </div><div class="header__logo flex justify-center z-1"><a 2311 href="/en-us" 2312 class="h3 relative flex header__logo--image" 2313 ><img 2314 srcset="//www.fornasetti.com/cdn/shop/files/logo-fornasett
2314i2.svg?v=1760345022&width=80 1x, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=160 2x" 2315 src="//www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=80" 2316 loading="eager" 2317 width="710" 2318 height="133" 2319 alt="Fornasetti Store" 2320 class="logo header__logo--mobile md:hidden" 2321 ><img 2322 srcset="//www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=185 1x, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=370 2x" 2323 src="//www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=185" 2324 loading="eager" 2325 width="710" 2326 height="133" 2327 alt="Fornasetti Store" 2328 class="logo header__logo--desktop md:block hidden" 2329 ></a></div><div class="header__navigation hidden lg:flex"> 2330 <nav class="header__menu flex" role="navigation" aria-label="Primary"> 2331 <ul class="flex flex-wrap justify-center"><li class="flex"><style data-shopify> 2332 #Mega-menu-item-jkl_custom_card_pW3YW3 { 2333 --menu-columns: 3; 2334 --promotions-width: 38%; 2335 --promotion-columns: 2; 2336 --promo-count: 2; 2337 --calculated-promo-width: 33.34%; 2338 --calculated-list-width: 66.66%; 2339 } 2340 </style> 2341 <details 2342 id="Mega-menu-item-jkl_custom_card_pW3YW3" 2343 is="details-mega" 2344 trigger="hover" 2345 level="top" 2346 data-promo-count="2" 2347 2348 > 2349 <summary data-link="/en-us/pages/icons" data-gtm-nav-first="icons" class="z-2 font-navigation"> 2350 <span class="menu__item flex items-center relative"> 2351 <span class="reversed-link flex items-center">ICONS 2352 </span> 2353 </span> 2354 </summary> 2355 <div class="mega-menu v-scrollable"> 2356 <div class="mega-menu__container"> 2357 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">ICONS</span><ul class="mega-menu__item-child"><li><a href="/en-us/pages/icons" class="mega-menu__link" 2358 data-gtm-nav-first="icons" 2359 data-gtm-nav-second="icons" 2360 data-gtm-nav-third="iconic pieces" 2361 > 2362 <span class="mega-menu__link-text">Iconic Pieces</span> 2363 </a></li><li><a href="/en-us/pages/tema-e-variazioni-plates" class="mega-menu__link" 2364 data-gtm-nav-first="icons" 2365 data-gtm-nav-second="icons" 2366 data-gtm-nav-third="tema e variazioni plates" 2367 > 2368 <span class="mega-menu__link-text">Tema e Variazioni Plates</span> 2369 </a></li><li><a href="/en-us/pages/trumeau" class="mega-menu__link" 2370 data-gtm-nav-first="icons" 2371 data-gtm-nav-second="icons" 2372 data-gtm-nav-third="trumeau cabinet" 2373 > 2374 <span class="mega-menu__link-text">Trumeau Cabinet</span> 2375 </a></li><li><a href="/en-us/collections/decorative-trays-and-pliants" class="mega-menu__link" 2376 data-gtm-nav-first="icons" 2377 data-gtm-nav-second="icons" 2378 data-gtm-nav-third="trays" 2379 > 2380 <span class="mega-menu__link-text">Trays</span> 2381 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Shop by Motif</span><ul class="mega-menu__item-child"><li><a href="/en-us/pages/tema-e-variazioni" class="mega-menu__link" 2382 data-gtm-nav-first="icons" 2383 data-gtm-nav-second="shop by motif" 2384 data-gtm-nav-third="tema e variazioni" 2385 >
2386 <span class="mega-menu__link-text">Tema e Variazioni</span> 2387 </a></li><li><a href="/en-us/pages/architettura" class="mega-menu__link" 2388 data-gtm-nav-first="icons" 2389 data-gtm-nav-second="shop by motif" 2390 data-gtm-nav-third="architecture" 2391 > 2392 <span class="mega-menu__link-text">Architecture</span> 2393 </a></li><li><a href="/en-us/pages/astronomici" class="mega-menu__link" 2394 data-gtm-nav-first="icons" 2395 data-gtm-nav-second="shop by motif" 2396 data-gtm-nav-third="celestial motifs" 2397 > 2398 <span class="mega-menu__link-text">Celestial Motifs</span> 2399 </a></li><li><a href="/en-us/pages/flowers" class="mega-menu__link" 2400 data-gtm-nav-first="icons" 2401 data-gtm-nav-second="shop by motif" 2402 data-gtm-nav-third="floral" 2403 > 2404 <span class="mega-menu__link-text">Floral</span> 2405 </a></li><li><a href="/en-us/pages/sun" class="mega-menu__link" 2406 data-gtm-nav-first="icons" 2407 data-gtm-nav-second="shop by motif" 2408 data-gtm-nav-third="suns" 2409 > 2410 <span class="mega-menu__link-text">Suns</span> 2411 </a></li><li><a href="/en-us/pages/palloni" class="mega-menu__link" 2412 data-gtm-nav-first="icons" 2413 data-gtm-nav-second="shop by motif" 2414 data-gtm-nav-third="air balloons" 2415 > 2416 <span class="mega-menu__link-text">Air Balloons</span> 2417 </a></li><li><a href="/en-us/pages/mano" class="mega-menu__link" 2418 data-gtm-nav-first="icons" 2419 data-gtm-nav-second="shop by motif" 2420 data-gtm-nav-third="hands" 2421 > 2422 <span class="mega-menu__link-text">Hands</span> 2423 </a></li><li><a href="/en-us/pages/peccato-originale" class="mega-menu__link" 2424 data-gtm-nav-first="icons" 2425 data-gtm-nav-second="shop by motif" 2426 data-gtm-nav-third="original sin" 2427 > 2428 <span class="mega-menu__link-text">Original Sin</span> 2429 </a></li><li><a href="/en-us/pages/farfalle" class="mega-menu__link" 2430 data-gtm-nav-first="icons" 2431 data-gtm-nav-second="shop by motif" 2432 data-gtm-nav-third="butterflies" 2433 > 2434 <span class="mega-menu__link-text">Butterflies</span> 2435 </a></li><li><a href="/en-us/pages/pesci" class="mega-menu__link" 2436 data-gtm-nav-first="icons" 2437 data-gtm-nav-second="shop by motif" 2438 data-gtm-nav-third="fish motifs" 2439 > 2440 <span class="mega-menu__link-text">Fish Motifs</span> 2441 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 2442 <div class="custom-card custom-card--small blocks-radius"> 2443 <a href="/en-us/collections/furniture" class="custom-card__wrapper flex flex-col" 2444 data-gtm-nav-first="icons" 2445 2446 data-gtm-nav-second="furniture" 2447 2448 > 2449 <div class="custom-card__media media-wrapper hover-wrapper">
2450 <img src="//www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=165 165w, //www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=360 360w, //www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=535 535w, //www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=750 750w, //www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=940 940w, //www.fornasetti.com/cdn/shop/files/immagine_1_c9f4b2f6-65c7-4243-b41c-4067c231adaf.jpg?v=1784021475&width=1100 1100w" width="1100" height="1100" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2451 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2452 <div class="custom-card__summary flex-1"> 2453 <h3 class="custom-card__title h5">FURNITURE</h3> 2454 <div class="text-subtext rte text-body-sm"></div> 2455 </div> 2456 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="FURNITURE"> 2457 <svg 2458 class="icon icon--medium rtl-flip-x" 2459 width="20" 2460 height="20"
2461 viewBox="0 0 20 20" 2462 fill="none" 2463 xmlns="http://www.w3.org/2000/svg" 2464 > 2465 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2466 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2467 </svg> 2468 </button> 2469 </div></a> 2470 </div> 2471 2472 </div><div class="promotion-item" style="--index: 2;"> 2473 <div class="custom-card custom-card--small blocks-radius"> 2474 <a href="/en-us/collections/tema-e-variazioni" class="custom-card__wrapper flex flex-col" 2475 data-gtm-nav-first="icons" 2476 2477 data-gtm-nav-second="tema e variazioni plates" 2478 2479 > 2480 <div class="custom-card__media media-wrapper hover-wrapper"> 2481 <img src="//www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=165 165w, //www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=360 360w, //www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=535 535w, //www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=750 750w, //www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=940 940w, //www.fornasetti.com/cdn/shop/files/menu_piatti.jpg?v=1784046285&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2482 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2483 <div class="custom-card__summary flex-1"> 2484 <h3 class="custom-card__title h5">Tema e Variazioni Plates</h3> 2485 <div class="text-subtext rte text-body-sm"></div> 2486 </div> 2487 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Tema e Variazioni Plates"> 2488 <svg 2489 class="icon icon--medium rtl-flip-x" 2490 width="20" 2491 height="20"
2492 viewBox="0 0 20 20" 2493 fill="none" 2494 xmlns="http://www.w3.org/2000/svg" 2495 > 2496 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2497 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2498 </svg> 2499 </button> 2500 </div></a> 2501 </div> 2502 2503 </div></div></div> 2504 </div> 2505 </div> 2506 </details> 2507 2508</li><li class="flex"><style data-shopify> 2509 #Mega-menu-item-jkl_custom_card_PRHfUQ { 2510 --menu-columns: 3; 2511 --promotions-width: 38%; 2512 --promotion-columns: 3; 2513 --promo-count: 3; 2514 --calculated-promo-width: 50.01%; 2515 --calculated-list-width: 49.99%; 2516 } 2517 </style> 2518 <details 2519 id="Mega-menu-item-jkl_custom_card_PRHfUQ" 2520 is="details-mega" 2521 trigger="hover" 2522 level="top" 2523 data-promo-count="3" 2524 2525 > 2526 <summary data-link="/en-us/pages/furniture" data-gtm-nav-first="furniture" class="z-2 font-navigation"> 2527 <span class="menu__item flex items-center relative"> 2528 <span class="reversed-link flex items-center">FURNITURE 2529 </span> 2530 </span> 2531 </summary> 2532 <div class="mega-menu v-scrollable"> 2533 <div class="mega-menu__container"> 2534 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Cabinets & Storage</span><ul class="mega-menu__item-child"><li><a href="/en-us/pages/trumeau" class="mega-menu__link" 2535 data-gtm-nav-first="furniture" 2536 data-gtm-nav-second="cabinets & storage" 2537 data-gtm-nav-third="trumeau" 2538 > 2539 <span class="mega-menu__link-text">Trumeau</span> 2540 </a></li><li><a href="/en-us/collections/cabinets" class="mega-menu__link" 2541 data-gtm-nav-first="furniture" 2542 data-gtm-nav-second="cabinets & storage" 2543 data-gtm-nav-third="cabinets" 2544 > 2545 <span class="mega-menu__link-text">Cabinets</span> 2546 </a></li><li><a href="/en-us/collections/curved-cabinets" class="mega-menu__link" 2547 data-gtm-nav-first="furniture" 2548 data-gtm-nav-second="cabinets & storage" 2549 data-gtm-nav-third="curved cabinets" 2550 > 2551 <span class="mega-menu__link-text">Curved Cabinets</span> 2552 </a></li><li><a href="/en-us/collections/storage-consoles" class="mega-menu__link" 2553 data-gtm-nav-first="furniture" 2554 data-gtm-nav-second="cabinets & storage" 2555 data-gtm-nav-third="consoles" 2556 > 2557 <span class="mega-menu__link-text">Consoles</span> 2558 </a></li><li><a href="/en-us/pages/chest-of-drawers" class="mega-menu__link" 2559 data-gtm-nav-first="furniture" 2560 data-gtm-nav-second="cabinets & storage" 2561 data-gtm-nav-third="chests of drawers" 2562 > 2563 <span class="mega-menu__link-text">Chests of Drawers</span> 2564 </a></li><li><a href="/en-us/collections/cabinets-and-storage" class="mega-menu__link" 2565 data-gtm-nav-first="furniture" 2566 data-gtm-nav-second="cabinets & storage" 2567 data-gtm-nav-third="view all" 2568 > 2569 <span class="mega-menu__link-text">View all</span> 2570 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-cl
2570ickable">Seating & Tables</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/chairs" class="mega-menu__link" 2571 data-gtm-nav-first="furniture" 2572 data-gtm-nav-second="seating & tables" 2573 data-gtm-nav-third="chairs" 2574 > 2575 <span class="mega-menu__link-text">Chairs</span> 2576 </a></li><li><a href="/en-us/collections/stools" class="mega-menu__link" 2577 data-gtm-nav-first="furniture" 2578 data-gtm-nav-second="seating & tables" 2579 data-gtm-nav-third="stools" 2580 > 2581 <span class="mega-menu__link-text">Stools</span> 2582 </a></li><li><a href="/en-us/collections/tables" class="mega-menu__link" 2583 data-gtm-nav-first="furniture" 2584 data-gtm-nav-second="seating & tables" 2585 data-gtm-nav-third="tables" 2586 > 2587 <span class="mega-menu__link-text">Tables</span> 2588 </a></li><li><a href="/en-us/collections/seatings" class="mega-menu__link" 2589 data-gtm-nav-first="furniture" 2590 data-gtm-nav-second="seating & tables" 2591 data-gtm-nav-third="view all" 2592 > 2593 <span class="mega-menu__link-text">View all</span> 2594 </a></li></ul></div><div class="mega-menu__item"><a href="/en-us/collections/furniture" class="h5 mega-menu__link mega-menu__link--top font-heading" 2595 data-gtm-nav-first="furniture" 2596 data-gtm-nav-second="view all furniture" 2597 > 2598 <span class="mega-menu__link-text">View All Furniture</span> 2599 </a></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 2600 <div class="custom-card custom-card--small blocks-radius"> 2601 <a href="/en-us/pages/chest-of-drawers" class="custom-card__wrapper flex flex-col" 2602 data-gtm-nav-first="furniture" 2603 2604 data-gtm-nav-second="chest of drawers" 2605 2606 > 2607 <div class="custom-card__media media-wrapper hover-wrapper"> 2608 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_como.webp?v=1761221661&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2609 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2610 <div class="custom-card__summary flex-1"> 2611 <h3 class="custom-card__title h5">Chest of Drawers</h3> 2612 <div class="text-subtext rte text-body-sm"></div> 2613 </div> 2614 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Chest of Drawers"> 2615 <svg 2616 class="icon icon--medium rtl-flip-x" 2617 width="20" 2618 height="20"
2619 viewBox="0 0 20 20" 2620 fill="none" 2621 xmlns="http://www.w3.org/2000/svg" 2622 > 2623 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2624 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2625 </svg> 2626 </button> 2627 </div></a> 2628 </div> 2629 2630 </div><div class="promotion-item" style="--index: 2;"> 2631 <div class="custom-card custom-card--small blocks-radius"> 2632 <a href="/en-us/collections/chairs" class="custom-card__wrapper flex flex-col" 2633 data-gtm-nav-first="furniture" 2634 2635 data-gtm-nav-second="chairs" 2636 2637 > 2638 <div class="custom-card__media media-wrapper hover-wrapper"> 2639 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_sedie.webp?v=1761221699&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2640 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2641 <div class="custom-card__summary flex-1"> 2642 <h3 class="custom-card__title h5">Chairs</h3> 2643 <div class="text-subtext rte text-body-sm"></div> 2644 </div> 2645 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Chairs"> 2646 <svg 2647 class="icon icon--medium rtl-flip-x" 2648 width="20" 2649 height="20"
2650 viewBox="0 0 20 20" 2651 fill="none" 2652 xmlns="http://www.w3.org/2000/svg" 2653 > 2654 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2655 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2656 </svg> 2657 </button> 2658 </div></a> 2659 </div> 2660 2661 </div><div class="promotion-item" style="--index: 3;"> 2662 <div class="custom-card custom-card--small blocks-radius"> 2663 <a href="/en-us/collections/curved-cabinets" class="custom-card__wrapper flex flex-col" 2664 data-gtm-nav-first="furniture" 2665 2666 data-gtm-nav-second="curved cabinets" 2667 2668 > 2669 <div class="custom-card__media media-wrapper hover-wrapper"> 2670 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_stipo.jpg?v=1761221728&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2671 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2672 <div class="custom-card__summary flex-1"> 2673 <h3 class="custom-card__title h5">Curved Cabinets</h3> 2674 <div class="text-subtext rte text-body-sm"></div> 2675 </div> 2676 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Curved Cabinets"> 2677 <svg 2678 class="icon icon--medium rtl-flip-x" 2679 width="20" 2680 height="20"
2681 viewBox="0 0 20 20" 2682 fill="none" 2683 xmlns="http://www.w3.org/2000/svg" 2684 > 2685 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2686 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2687 </svg> 2688 </button> 2689 </div></a> 2690 </div> 2691 2692 </div></div></div> 2693 </div> 2694 </div> 2695 </details> 2696 2697</li><li class="flex"><style data-shopify> 2698 #Mega-menu-item-jkl_custom_card_4MbyTz { 2699 --menu-columns: 3; 2700 --promotions-width: 38%; 2701 --promotion-columns: 1; 2702 --promo-count: 2; 2703 --calculated-promo-width: 33.34%; 2704 --calculated-list-width: 66.66%; 2705 } 2706 </style> 2707 <details 2708 id="Mega-menu-item-jkl_custom_card_4MbyTz" 2709 is="details-mega" 2710 trigger="hover" 2711 level="top" 2712 data-promo-count="2" 2713 2714 > 2715 <summary data-link="/en-us/pages/accessories" data-gtm-nav-first="home accessories" class="z-2 font-navigation"> 2716 <span class="menu__item flex items-center relative"> 2717 <span class="reversed-link flex items-center">HOME ACCESSORIES 2718 </span> 2719 </span> 2720 </summary> 2721 <div class="mega-menu v-scrollable"> 2722 <div class="mega-menu__container"> 2723 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Home Accessories</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/umbrella-stands" class="mega-menu__link" 2724 data-gtm-nav-first="home accessories" 2725 data-gtm-nav-second="home accessories" 2726 data-gtm-nav-third="umbrella stands" 2727 > 2728 <span class="mega-menu__link-text">Umbrella Stands</span> 2729 </a></li><li><a href="/en-us/collections/bookends" class="mega-menu__link" 2730 data-gtm-nav-first="home accessories" 2731 data-gtm-nav-second="home accessories" 2732 data-gtm-nav-third="books & bookends" 2733 > 2734 <span class="mega-menu__link-text">Books & Bookends</span> 2735 </a></li><li><a href="/en-us/collections/vases" class="mega-menu__link" 2736 data-gtm-nav-first="home accessories" 2737 data-gtm-nav-second="home accessories" 2738 data-gtm-nav-third="vases" 2739 > 2740 <span class="mega-menu__link-text">Vases</span> 2741 </a></li><li><a href="/en-us/pages/new-rug-collection-mdw-2026" class="mega-menu__link" 2742 data-gtm-nav-first="home accessories" 2743 data-gtm-nav-second="home accessories" 2744 data-gtm-nav-third="rugs and tapestries" 2745 > 2746 <span class="mega-menu__link-text">Rugs and tapestries</span> 2747 </a></li><li><a href="/en-us/collections/decorative-panels" class="mega-menu__link" 2748 data-gtm-nav-first="home accessories" 2749 data-gtm-nav-second="home accessories" 2750 data-gtm-nav-third="framed panels" 2751 > 2752 <span class="mega-menu__link-text">Framed Panels</span> 2753 </a></li><li><a href="/en-us/collections/mirrors" class="mega-menu__link" 2754 data-gtm-nav-first="home accessories" 2755 data-gtm-nav-second="home accessories" 2756 data-gtm-nav-third="mirrors" 2757 > 2758 <span class="mega-menu__link-text">Mirrors</span> 2759 </a></li><li><a href="/en-us/collections/paper-baskets" class="mega-menu__link" 2760 data-gtm-nav-first="home accessories" 2761 data-gtm-nav-second="home accessories" 2762 data-gtm-nav-third="paper baskets" 2763 >
2764 <span class="mega-menu__link-text">Paper Baskets</span> 2765 </a></li><li><a href="/en-us/collections/accessories" class="mega-menu__link" 2766 data-gtm-nav-first="home accessories" 2767 data-gtm-nav-second="home accessories" 2768 data-gtm-nav-third="view all" 2769 > 2770 <span class="mega-menu__link-text">View all</span> 2771 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Small Objects</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/square-catchalls" class="mega-menu__link" 2772 data-gtm-nav-first="home accessories" 2773 data-gtm-nav-second="small objects" 2774 data-gtm-nav-third="square catchalls" 2775 > 2776 <span class="mega-menu__link-text">Square Catchalls</span> 2777 </a></li><li><a href="/en-us/collections/round-catchalls" class="mega-menu__link" 2778 data-gtm-nav-first="home accessories" 2779 data-gtm-nav-second="small objects" 2780 data-gtm-nav-third="round catchalls" 2781 > 2782 <span class="mega-menu__link-text">Round Catchalls</span> 2783 </a></li><li><a href="/en-us/collections/rectangular-catchalls" class="mega-menu__link" 2784 data-gtm-nav-first="home accessories" 2785 data-gtm-nav-second="small objects" 2786 data-gtm-nav-third="rectangular catchalls" 2787 > 2788 <span class="mega-menu__link-text">Rectangular Catchalls</span> 2789 </a></li><li><a href="/en-us/collections/small-containers" class="mega-menu__link" 2790 data-gtm-nav-first="home accessories" 2791 data-gtm-nav-second="small objects" 2792 data-gtm-nav-third="porcelain boxes" 2793 > 2794 <span class="mega-menu__link-text">Porcelain Boxes</span> 2795 </a></li><li><a href="/en-us/collections/cats" class="mega-menu__link" 2796 data-gtm-nav-first="home accessories" 2797 data-gtm-nav-second="small objects" 2798 data-gtm-nav-third="ceramic cats" 2799 > 2800 <span class="mega-menu__link-text">Ceramic Cats</span> 2801 </a></li><li><a href="/en-us/collections/small-objects" class="mega-menu__link" 2802 data-gtm-nav-first="home accessories" 2803 data-gtm-nav-second="small objects" 2804 data-gtm-nav-third="view all" 2805 > 2806 <span class="mega-menu__link-text">View all</span> 2807 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Cushions</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/tema-e-variazioni-cushions" class="mega-menu__link" 2808 data-gtm-nav-first="home accessories" 2809 data-gtm-nav-second="cushions" 2810 data-gtm-nav-third="tema e variazioni cushions" 2811 > 2812 <span class="mega-menu__link-text">Tema e Variazioni Cushions</span> 2813 </a></li><li><a href="/en-us/collections/silk-cushions" class="mega-menu__link" 2814 data-gtm-nav-first="home accessories" 2815 data-gtm-nav-second="cushions" 2816 data-gtm-nav-third="silk cushions" 2817 >
2818 <span class="mega-menu__link-text">Silk Cushions</span> 2819 </a></li><li><a href="/en-us/collections/essential-cushions" class="mega-menu__link" 2820 data-gtm-nav-first="home accessories" 2821 data-gtm-nav-second="cushions" 2822 data-gtm-nav-third="essential cushions" 2823 > 2824 <span class="mega-menu__link-text">Essential Cushions</span> 2825 </a></li><li><a href="/en-us/collections/outdoor-cushions" class="mega-menu__link" 2826 data-gtm-nav-first="home accessories" 2827 data-gtm-nav-second="cushions" 2828 data-gtm-nav-third="outdoor cushions" 2829 > 2830 <span class="mega-menu__link-text">Outdoor Cushions</span> 2831 </a></li><li><a href="/en-us/collections/cushions" class="mega-menu__link" 2832 data-gtm-nav-first="home accessories" 2833 data-gtm-nav-second="cushions" 2834 data-gtm-nav-third="view all" 2835 > 2836 <span class="mega-menu__link-text">View all</span> 2837 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Trays & Tray Stands</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/trays" class="mega-menu__link" 2838 data-gtm-nav-first="home accessories" 2839 data-gtm-nav-second="trays & tray stands" 2840 data-gtm-nav-third="trays" 2841 > 2842 <span class="mega-menu__link-text">Trays</span> 2843 </a></li><li><a href="/en-us/collections/tray-stands" class="mega-menu__link" 2844 data-gtm-nav-first="home accessories" 2845 data-gtm-nav-second="trays & tray stands" 2846 data-gtm-nav-third="tray stands" 2847 > 2848 <span class="mega-menu__link-text">Tray Stands</span> 2849 </a></li><li><a href="/en-us/collections/decorative-trays-and-pliants" class="mega-menu__link" 2850 data-gtm-nav-first="home accessories" 2851 data-gtm-nav-second="trays & tray stands" 2852 data-gtm-nav-third="view all" 2853 > 2854 <span class="mega-menu__link-text">View all</span> 2855 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Clocks</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/wall-clocks" class="mega-menu__link" 2856 data-gtm-nav-first="home accessories" 2857 data-gtm-nav-second="clocks" 2858 data-gtm-nav-third="wall clocks" 2859 > 2860 <span class="mega-menu__link-text">Wall Clocks</span> 2861 </a></li><li><a href="/en-us/collections/table-clocks" class="mega-menu__link" 2862 data-gtm-nav-first="home accessories" 2863 data-gtm-nav-second="clocks" 2864 data-gtm-nav-third="table clocks" 2865 > 2866 <span class="mega-menu__link-text">Table Clocks</span> 2867 </a></li><li><a href="/en-us/collections/clocks" class="mega-menu__link" 2868 data-gtm-nav-first="home accessories" 2869 data-gtm-nav-second="clocks" 2870 data-gtm-nav-third="view all" 2871 >
2872 <span class="mega-menu__link-text">View all</span> 2873 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Lamps & Lampshades</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/lamps" class="mega-menu__link" 2874 data-gtm-nav-first="home accessories" 2875 data-gtm-nav-second="lamps & lampshades" 2876 data-gtm-nav-third="lamps" 2877 > 2878 <span class="mega-menu__link-text">Lamps</span> 2879 </a></li><li><a href="/en-us/collections/lampshades" class="mega-menu__link" 2880 data-gtm-nav-first="home accessories" 2881 data-gtm-nav-second="lamps & lampshades" 2882 data-gtm-nav-third="lampshades" 2883 > 2884 <span class="mega-menu__link-text">Lampshades</span> 2885 </a></li><li><a href="/en-us/collections/lamps-and-lampshades" class="mega-menu__link" 2886 data-gtm-nav-first="home accessories" 2887 data-gtm-nav-second="lamps & lampshades" 2888 data-gtm-nav-third="view all" 2889 > 2890 <span class="mega-menu__link-text">View all</span> 2891 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 2892 <div class="custom-card custom-card--small blocks-radius"> 2893 <a href="" class="custom-card__wrapper flex flex-col" 2894 data-gtm-nav-first="home accessories" 2895 2896 data-gtm-nav-second="lamps & lampshades" 2897 2898 > 2899 <div class="custom-card__media media-wrapper hover-wrapper"> 2900 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_lampade_4aea0c54-11f5-41f8-bc5f-9c05bbe4c62e.webp?v=1784112960&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2901 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2902 <div class="custom-card__summary flex-1"> 2903 <h3 class="custom-card__title h5">Lamps & Lampshades</h3> 2904 <div class="text-subtext rte text-body-sm"></div> 2905 </div> 2906 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Lamps & Lampshades"> 2907 <svg 2908 class="icon icon--medium rtl-flip-x" 2909 width="20" 2910 height="20"
2911 viewBox="0 0 20 20" 2912 fill="none" 2913 xmlns="http://www.w3.org/2000/svg" 2914 > 2915 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2916 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2917 </svg> 2918 </button> 2919 </div></a> 2920 </div> 2921 2922 </div><div class="promotion-item" style="--index: 2;"> 2923 <div class="custom-card custom-card--small blocks-radius"> 2924 <a href="/en-us/collections/decorative-trays-and-pliants" class="custom-card__wrapper flex flex-col" 2925 data-gtm-nav-first="home accessories" 2926 2927 data-gtm-nav-second="trays & tray stands" 2928 2929 > 2930 <div class="custom-card__media media-wrapper hover-wrapper"> 2931 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_vassoi.webp?v=1761221382&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 2932 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 2933 <div class="custom-card__summary flex-1"> 2934 <h3 class="custom-card__title h5">Trays & Tray Stands</h3> 2935 <div class="text-subtext rte text-body-sm"></div> 2936 </div> 2937 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Trays & Tray Stands"> 2938 <svg 2939 class="icon icon--medium rtl-flip-x" 2940 width="20" 2941 height="20"
2942 viewBox="0 0 20 20" 2943 fill="none" 2944 xmlns="http://www.w3.org/2000/svg" 2945 > 2946 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2947 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 2948 </svg> 2949 </button> 2950 </div></a> 2951 </div> 2952 2953 </div></div></div> 2954 </div> 2955 </div> 2956 </details> 2957 2958</li><li class="flex"><style data-shopify> 2959 #Mega-menu-item-jkl_custom_card_yjaXaM { 2960 --menu-columns: 2; 2961 --promotions-width: 38%; 2962 --promotion-columns: 2; 2963 --promo-count: 2; 2964 --calculated-promo-width: 33.34%; 2965 --calculated-list-width: 66.66%; 2966 } 2967 </style> 2968 <details 2969 id="Mega-menu-item-jkl_custom_card_yjaXaM" 2970 is="details-mega" 2971 trigger="hover" 2972 level="top" 2973 data-promo-count="2" 2974 2975 > 2976 <summary data-link="/en-us/pages/tema-e-variazioni-plates" data-gtm-nav-first="plates tema e variazioni " class="z-2 font-navigation"> 2977 <span class="menu__item flex items-center relative"> 2978 <span class="reversed-link flex items-center">PLATES TEMA E VARIAZIONI 2979 </span> 2980 </span> 2981 </summary> 2982 <div class="mega-menu v-scrollable"> 2983 <div class="mega-menu__container"> 2984 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">PLATES TEMA E VARIAZIONi</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/signature-designs" class="mega-menu__link" 2985 data-gtm-nav-first="plates tema e variazioni " 2986 data-gtm-nav-second="plates tema e variazioni" 2987 data-gtm-nav-third="signature designs" 2988 > 2989 <span class="mega-menu__link-text">Signature Designs</span> 2990 </a></li><li><a href="/en-us/pages/signs-of-the-zodiac" class="mega-menu__link" 2991 data-gtm-nav-first="plates tema e variazioni " 2992 data-gtm-nav-second="plates tema e variazioni" 2993 data-gtm-nav-third="zodiac" 2994 > 2995 <span class="mega-menu__link-text">Zodiac</span> 2996 </a></li><li><a href="/en-us/collections/tema-e-variazioni-animals" class="mega-menu__link" 2997 data-gtm-nav-first="plates tema e variazioni " 2998 data-gtm-nav-second="plates tema e variazioni" 2999 data-gtm-nav-third="animals" 3000 > 3001 <span class="mega-menu__link-text">Animals</span> 3002 </a></li><li><a href="/en-us/collections/tema-e-variazioni-floral-and-fruits" class="mega-menu__link" 3003 data-gtm-nav-first="plates tema e variazioni " 3004 data-gtm-nav-second="plates tema e variazioni" 3005 data-gtm-nav-third="florals & fruits" 3006 > 3007 <span class="mega-menu__link-text">Florals & Fruits</span> 3008 </a></li><li><a href="/en-us/collections/tema-e-variazioni-architecture-and-landscapes" class="mega-menu__link" 3009 data-gtm-nav-first="plates tema e variazioni " 3010 data-gtm-nav-second="plates tema e variazioni" 3011 data-gtm-nav-third="architecture & landscapes" 3012 > 3013 <span class="mega-menu__link-text">Architecture & Landscapes</span> 3014 </a></li><li><a href="/en-us/collections/tema-e-variazioni-curiosities" class="mega-menu__link" 3015 data-gtm-nav-first="plates tema e variazioni " 3016 data-gtm-nav-second="plates tema e variazioni" 3017 data-gtm-nav-third="objects & curiosities" 3018 >
3019 <span class="mega-menu__link-text">Objects & Curiosities</span> 3020 </a></li><li><a href="/en-us/collections/gold-platinum" class="mega-menu__link" 3021 data-gtm-nav-first="plates tema e variazioni " 3022 data-gtm-nav-second="plates tema e variazioni" 3023 data-gtm-nav-third="gold & platinum" 3024 > 3025 <span class="mega-menu__link-text">Gold & Platinum</span> 3026 </a></li><li><a href="/en-us/pages/tema-e-variazioni-plates" class="mega-menu__link" 3027 data-gtm-nav-first="plates tema e variazioni " 3028 data-gtm-nav-second="plates tema e variazioni" 3029 data-gtm-nav-third="view all" 3030 > 3031 <span class="mega-menu__link-text">View all</span> 3032 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 3033 <div class="custom-card custom-card--small blocks-radius"> 3034 <a href="/en-us/pages/tema-e-variazioni-plates" class="custom-card__wrapper flex flex-col" 3035 data-gtm-nav-first="plates tema e variazioni " 3036 3037 data-gtm-nav-second="discover tema e variazioni" 3038 3039 > 3040 <div class="custom-card__media media-wrapper hover-wrapper"> 3041 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_1.webp?v=1761215912&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3042 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3043 <div class="custom-card__summary flex-1"> 3044 <h3 class="custom-card__title h5">DISCOVER TEMA E VARIAZIONI</h3> 3045 <div class="text-subtext rte text-body-sm"></div> 3046 </div> 3047 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="DISCOVER TEMA E VARIAZIONI"> 3048 <svg 3049 class="icon icon--medium rtl-flip-x" 3050 width="20" 3051 height="20"
3052 viewBox="0 0 20 20" 3053 fill="none" 3054 xmlns="http://www.w3.org/2000/svg" 3055 > 3056 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3057 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3058 </svg> 3059 </button> 3060 </div></a> 3061 </div> 3062 3063 </div><div class="promotion-item" style="--index: 2;"> 3064 <div class="custom-card custom-card--small blocks-radius"> 3065 <a href="/en-us/collections/tema-e-variazioni-plates" class="custom-card__wrapper flex flex-col" 3066 data-gtm-nav-first="plates tema e variazioni " 3067 3068 data-gtm-nav-second="discover all plates" 3069 3070 > 3071 <div class="custom-card__media media-wrapper hover-wrapper"> 3072 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_piatti_2.jpg?v=1761215934&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3073 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3074 <div class="custom-card__summary flex-1"> 3075 <h3 class="custom-card__title h5">DISCOVER ALL PLATES</h3> 3076 <div class="text-subtext rte text-body-sm"></div> 3077 </div> 3078 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="DISCOVER ALL PLATES"> 3079 <svg 3080 class="icon icon--medium rtl-flip-x" 3081 width="20" 3082 height="20"
3083 viewBox="0 0 20 20" 3084 fill="none" 3085 xmlns="http://www.w3.org/2000/svg" 3086 > 3087 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3088 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3089 </svg> 3090 </button> 3091 </div></a> 3092 </div> 3093 3094 </div></div></div> 3095 </div> 3096 </div> 3097 </details> 3098 3099</li><li class="flex"><style data-shopify> 3100 #Mega-menu-item-jkl_custom_card_dxPYYY { 3101 --menu-columns: 3; 3102 --promotions-width: 38%; 3103 --promotion-columns: 2; 3104 --promo-count: 2; 3105 --calculated-promo-width: 33.34%; 3106 --calculated-list-width: 66.66%; 3107 } 3108 </style> 3109 <details 3110 id="Mega-menu-item-jkl_custom_card_dxPYYY" 3111 is="details-mega" 3112 trigger="hover" 3113 level="top" 3114 data-promo-count="2" 3115 3116 > 3117 <summary data-link="/en-us#" data-gtm-nav-first="tableware" class="z-2 font-navigation"> 3118 <span class="menu__item flex items-center relative"> 3119 <span class="reversed-link flex items-center">TABLEWARE 3120 </span> 3121 </span> 3122 </summary> 3123 <div class="mega-menu v-scrollable"> 3124 <div class="mega-menu__container"> 3125 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><a href="/en-us/collections/art-de-la-table-1" class="h5 mega-menu__link mega-menu__link--top font-heading" 3126 data-gtm-nav-first="tableware" 3127 data-gtm-nav-second="tableware" 3128 > 3129 <span class="mega-menu__link-text">Tableware</span> 3130 </a><ul class="mega-menu__item-child"><li><a href="/en-us/collections/glassware" class="mega-menu__link" 3131 data-gtm-nav-first="tableware" 3132 data-gtm-nav-second="tableware" 3133 data-gtm-nav-third="glassware" 3134 > 3135 <span class="mega-menu__link-text">Glassware</span> 3136 </a></li><li><a href="/en-us/collections/trays-and-platters" class="mega-menu__link" 3137 data-gtm-nav-first="tableware" 3138 data-gtm-nav-second="tableware" 3139 data-gtm-nav-third="trays & platters" 3140 > 3141 <span class="mega-menu__link-text">Trays & Platters</span> 3142 </a></li><li><a href="/en-us/collections/ice-buckets" class="mega-menu__link" 3143 data-gtm-nav-first="tableware" 3144 data-gtm-nav-second="tableware" 3145 data-gtm-nav-third="ice buckets" 3146 > 3147 <span class="mega-menu__link-text">Ice Buckets</span> 3148 </a></li><li><a href="/en-us/collections/art-de-la-table-1" class="mega-menu__link" 3149 data-gtm-nav-first="tableware" 3150 data-gtm-nav-second="tableware" 3151 data-gtm-nav-third="view all" 3152 > 3153 <span class="mega-menu__link-text">View all</span> 3154 </a></li></ul></div><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">Coffee & Tea</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/tea-cups" class="mega-menu__link" 3155 data-gtm-nav-first="tableware" 3156 data-gtm-nav-second="coffee & tea" 3157 data-gtm-nav-third="tea cups" 3158 > 3159 <span class="mega-menu__link-text">Tea Cups</span> 3160 </a></li><li><a href="/en-us/collections/coffee-cups" class="mega-menu__link" 3161 data-gtm-nav-first="tableware" 3162 data-gtm-nav-second="coffee & tea" 3163 data-gtm-nav-third="coffee cups" 3164 >
3165 <span class="mega-menu__link-text">Coffee Cups</span> 3166 </a></li><li><a href="/en-us/collections/service-sets" class="mega-menu__link" 3167 data-gtm-nav-first="tableware" 3168 data-gtm-nav-second="coffee & tea" 3169 data-gtm-nav-third="teapots & tea service" 3170 > 3171 <span class="mega-menu__link-text">Teapots & Tea Service</span> 3172 </a></li><li><a href="/en-us/collections/tea-and-coffee-sets" class="mega-menu__link" 3173 data-gtm-nav-first="tableware" 3174 data-gtm-nav-second="coffee & tea" 3175 data-gtm-nav-third="view all" 3176 > 3177 <span class="mega-menu__link-text">View all</span> 3178 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 3179 <div class="custom-card custom-card--small blocks-radius"> 3180 <a href="/en-us/collections/tea-and-coffee-sets" class="custom-card__wrapper flex flex-col" 3181 data-gtm-nav-first="tableware" 3182 3183 data-gtm-nav-second="tea and coffe sets" 3184 3185 > 3186 <div class="custom-card__media media-wrapper hover-wrapper"> 3187 <img src="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=165 165w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=360 360w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=535 535w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=750 750w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=940 940w, //www.fornasetti.com/cdn/shop/files/241010_F_dropdown_menu_decorazione_2.webp?v=1760348047&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3188 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3189 <div class="custom-card__summary flex-1"> 3190 <h3 class="custom-card__title h5">TEA AND COFFE SETS</h3> 3191 <div class="text-subtext rte text-body-sm"></div> 3192 </div> 3193 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="TEA AND COFFE SETS"> 3194 <svg 3195 class="icon icon--medium rtl-flip-x" 3196 width="20" 3197 height="20"
3198 viewBox="0 0 20 20" 3199 fill="none" 3200 xmlns="http://www.w3.org/2000/svg" 3201 > 3202 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3203 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3204 </svg> 3205 </button> 3206 </div></a> 3207 </div> 3208 3209 </div><div class="promotion-item" style="--index: 2;"> 3210 <div class="custom-card custom-card--small blocks-radius"> 3211 <a href="/en-us/collections/art-de-la-table-1" class="custom-card__wrapper flex flex-col" 3212 data-gtm-nav-first="tableware" 3213 3214 data-gtm-nav-second="tableware" 3215 3216 > 3217 <div class="custom-card__media media-wrapper hover-wrapper"> 3218 <img src="//www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=165 165w, //www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=360 360w, //www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=535 535w, //www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=750 750w, //www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=940 940w, //www.fornasetti.com/cdn/shop/files/menu_tavola.jpg?v=1784046320&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3219 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3220 <div class="custom-card__summary flex-1"> 3221 <h3 class="custom-card__title h5">TABLEWARE</h3> 3222 <div class="text-subtext rte text-body-sm"></div> 3223 </div> 3224 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="TABLEWARE"> 3225 <svg 3226 class="icon icon--medium rtl-flip-x" 3227 width="20" 3228 height="20"
3229 viewBox="0 0 20 20" 3230 fill="none" 3231 xmlns="http://www.w3.org/2000/svg" 3232 > 3233 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3234 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3235 </svg> 3236 </button> 3237 </div></a> 3238 </div> 3239 3240 </div></div></div> 3241 </div> 3242 </div> 3243 </details> 3244 3245</li><li class="flex"><style data-shopify> 3246 #Mega-menu-item-jkl_custom_card_rxNLYd { 3247 --menu-columns: 2; 3248 --promotions-width: 100%; 3249 --promotion-columns: 1; 3250 --promo-count: 2; 3251 --calculated-promo-width: 33.34%; 3252 --calculated-list-width: 66.66%; 3253 } 3254 </style> 3255 <details 3256 id="Mega-menu-item-jkl_custom_card_rxNLYd" 3257 is="details-mega" 3258 trigger="hover" 3259 level="top" 3260 data-promo-count="2" 3261 3262 > 3263 <summary data-link="/en-us#" data-gtm-nav-first="fragrances" class="z-2 font-navigation"> 3264 <span class="menu__item flex items-center relative"> 3265 <span class="reversed-link flex items-center">FRAGRANCES 3266 </span> 3267 </span> 3268 </summary> 3269 <div class="mega-menu v-scrollable"> 3270 <div class="mega-menu__container"> 3271 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">FRAGRANCES</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/scented-candles" class="mega-menu__link" 3272 data-gtm-nav-first="fragrances" 3273 data-gtm-nav-second="fragrances" 3274 data-gtm-nav-third="scented candles" 3275 > 3276 <span class="mega-menu__link-text">Scented Candles</span> 3277 </a></li><li><a href="/en-us/collections/room-spray" class="mega-menu__link" 3278 data-gtm-nav-first="fragrances" 3279 data-gtm-nav-second="fragrances" 3280 data-gtm-nav-third="room mist" 3281 > 3282 <span class="mega-menu__link-text">Room Mist</span> 3283 </a></li><li><a href="/en-us/pages/fragrances" class="mega-menu__link" 3284 data-gtm-nav-first="fragrances" 3285 data-gtm-nav-second="fragrances" 3286 data-gtm-nav-third="view all" 3287 > 3288 <span class="mega-menu__link-text">View all</span> 3289 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 3290 <div class="custom-card custom-card--small blocks-radius"> 3291 <a href="/en-us/collections/home-fragrances" class="custom-card__wrapper flex flex-col" 3292 data-gtm-nav-first="fragrances" 3293 3294 data-gtm-nav-second="home fragrances" 3295 3296 > 3297 <div class="custom-card__media media-wrapper hover-wrapper"> 3298 <img src="//www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=165 165w, //www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=360 360w, //www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=535 535w, //www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=750 750w, //www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=940 940w, //www.fornasetti.com/cdn/shop/files/F_DD_1.webp?v=1761213037&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3299 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3300 <div class="custom-card__summary flex-1"> 3301 <h3 class="custom-card__title h5">HOME FRAGRANCES</h3> 3302 <div class="text-subtext rte text-body-sm"></div> 3303 </div> 3304 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="HOME FRAGRANCES"> 3305 <svg 3306 class="icon icon--medium rtl-flip-x" 3307 width="20" 3308 height="20"
3309 viewBox="0 0 20 20" 3310 fill="none" 3311 xmlns="http://www.w3.org/2000/svg" 3312 > 3313 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3314 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3315 </svg> 3316 </button> 3317 </div></a> 3318 </div> 3319 3320 </div><div class="promotion-item" style="--index: 2;"> 3321 <div class="custom-card custom-card--small blocks-radius"> 3322 <a href="/en-us/pages/home-fragrances" class="custom-card__wrapper flex flex-col" 3323 data-gtm-nav-first="fragrances" 3324 3325 data-gtm-nav-second="discover all fragrances" 3326 3327 > 3328 <div class="custom-card__media media-wrapper hover-wrapper"> 3329 <img src="//www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=165 165w, //www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=360 360w, //www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=535 535w, //www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=750 750w, //www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=940 940w, //www.fornasetti.com/cdn/shop/files/F_fragranze_generica_dsk_1.webp?v=1768987822&width=1100 1100w" width="1100" height="1375" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3330 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3331 <div class="custom-card__summary flex-1"> 3332 <h3 class="custom-card__title h5">Discover all fragrances</h3> 3333 <div class="text-subtext rte text-body-sm"></div> 3334 </div> 3335 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Discover all fragrances"> 3336 <svg 3337 class="icon icon--medium rtl-flip-x" 3338 width="20" 3339 height="20"
3340 viewBox="0 0 20 20" 3341 fill="none" 3342 xmlns="http://www.w3.org/2000/svg" 3343 > 3344 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3345 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3346 </svg> 3347 </button> 3348 </div></a> 3349 </div> 3350 3351 </div></div></div> 3352 </div> 3353 </div> 3354 </details> 3355 3356</li><li class="flex"><style data-shopify> 3357 #Mega-menu-item-jkl_custom_card_jnYJzQ { 3358 --menu-columns: 3; 3359 --promotions-width: 38%; 3360 --promotion-columns: 2; 3361 --promo-count: 2; 3362 --calculated-promo-width: 33.34%; 3363 --calculated-list-width: 66.66%; 3364 } 3365 </style> 3366 <details 3367 id="Mega-menu-item-jkl_custom_card_jnYJzQ" 3368 is="details-mega" 3369 trigger="hover" 3370 level="top" 3371 data-promo-count="2" 3372 3373 > 3374 <summary data-link="/en-us/pages/wallpaper" data-gtm-nav-first="wallpaper" class="z-2 font-navigation"> 3375 <span class="menu__item flex items-center relative"> 3376 <span class="reversed-link flex items-center">WALLPAPER 3377 </span> 3378 </span> 3379 </summary> 3380 <div class="mega-menu v-scrollable"> 3381 <div class="mega-menu__container"> 3382 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">WALLPAPER</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/icons" class="mega-menu__link" 3383 data-gtm-nav-first="wallpaper" 3384 data-gtm-nav-second="wallpaper" 3385 data-gtm-nav-third="icons" 3386 > 3387 <span class="mega-menu__link-text">Icons</span> 3388 </a></li><li><a href="/en-us/collections/skies-and-clouds" class="mega-menu__link" 3389 data-gtm-nav-first="wallpaper" 3390 data-gtm-nav-second="wallpaper" 3391 data-gtm-nav-third="skies and clouds" 3392 > 3393 <span class="mega-menu__link-text">Skies And Clouds</span> 3394 </a></li><li><a href="/en-us/collections/architecture-and-landscapes" class="mega-menu__link" 3395 data-gtm-nav-first="wallpaper" 3396 data-gtm-nav-second="wallpaper" 3397 data-gtm-nav-third="architecture and landscapes" 3398 > 3399 <span class="mega-menu__link-text">Architecture and Landscapes</span> 3400 </a></li><li><a href="/en-us/collections/natural-inspirations" class="mega-menu__link" 3401 data-gtm-nav-first="wallpaper" 3402 data-gtm-nav-second="wallpaper" 3403 data-gtm-nav-third="natural ispirations" 3404 > 3405 <span class="mega-menu__link-text">Natural Ispirations</span> 3406 </a></li><li><a href="/en-us/collections/objects-and-curiosities" class="mega-menu__link" 3407 data-gtm-nav-first="wallpaper" 3408 data-gtm-nav-second="wallpaper" 3409 data-gtm-nav-third="objects and curiosities" 3410 > 3411 <span class="mega-menu__link-text">Objects and Curiosities</span> 3412 </a></li><li><a href="/en-us/pages/wallpaper" class="mega-menu__link" 3413 data-gtm-nav-first="wallpaper" 3414 data-gtm-nav-second="wallpaper" 3415 data-gtm-nav-third="view all" 3416 > 3417 <span class="mega-menu__link-text">View all</span> 3418 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 3419 <div class="custom-card custom-card--small blocks-radius"> 3420 <a href="/en-us/pages/wallpaper" class="custom-card__wrapper flex flex-col" 3421 data-gtm-nav-first="wallpaper" 3422 3423 data-gtm-nav-second="discover more" 3424 3425 > 3426 <div class="custom-card__media media-wrapper hover-wrapper">
3427 <img src="//www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=165 165w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=360 360w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=535 535w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=750 750w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=940 940w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_1.jpg?v=1761213314&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3428 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3429 <div class="custom-card__summary flex-1"> 3430 <h3 class="custom-card__title h5">DISCOVER MORE</h3> 3431 <div class="text-subtext rte text-body-sm"></div> 3432 </div> 3433 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="DISCOVER MORE"> 3434 <svg 3435 class="icon icon--medium rtl-flip-x" 3436 width="20" 3437 height="20"
3438 viewBox="0 0 20 20" 3439 fill="none" 3440 xmlns="http://www.w3.org/2000/svg" 3441 > 3442 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3443 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3444 </svg> 3445 </button> 3446 </div></a> 3447 </div> 3448 3449 </div><div class="promotion-item" style="--index: 2;"> 3450 <div class="custom-card custom-card--small blocks-radius"> 3451 <a href="/en-us/collections/wallpaper" class="custom-card__wrapper flex flex-col" 3452 data-gtm-nav-first="wallpaper" 3453 3454 data-gtm-nav-second="discover all wallpapers" 3455 3456 > 3457 <div class="custom-card__media media-wrapper hover-wrapper"> 3458 <img src="//www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=165 165w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=360 360w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=535 535w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=750 750w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=940 940w, //www.fornasetti.com/cdn/shop/files/DDM_wallpaper_2.jpg?v=1761213332&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3459 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3460 <div class="custom-card__summary flex-1"> 3461 <h3 class="custom-card__title h5">Discover All Wallpapers</h3> 3462 <div class="text-subtext rte text-body-sm"></div> 3463 </div> 3464 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Discover All Wallpapers"> 3465 <svg 3466 class="icon icon--medium rtl-flip-x" 3467 width="20" 3468 height="20"
3469 viewBox="0 0 20 20" 3470 fill="none" 3471 xmlns="http://www.w3.org/2000/svg" 3472 > 3473 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3474 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3475 </svg> 3476 </button> 3477 </div></a> 3478 </div> 3479 3480 </div></div></div> 3481 </div> 3482 </div> 3483 </details> 3484 3485</li><li class="flex"><style data-shopify> 3486 #Mega-menu-item-jkl_custom_card_TtJcwL { 3487 --menu-columns: 4; 3488 --promotions-width: 38%; 3489 --promotion-columns: 2; 3490 --promo-count: 2; 3491 --calculated-promo-width: 33.34%; 3492 --calculated-list-width: 66.66%; 3493 } 3494 </style> 3495 <details 3496 id="Mega-menu-item-jkl_custom_card_TtJcwL" 3497 is="details-mega" 3498 trigger="hover" 3499 level="top" 3500 data-promo-count="2" 3501 3502 > 3503 <summary data-link="/en-us#" data-gtm-nav-first="gift guide" class="z-2 font-navigation"> 3504 <span class="menu__item flex items-center relative"> 3505 <span class="reversed-link flex items-center">GIFT GUIDE 3506 </span> 3507 </span> 3508 </summary> 3509 <div class="mega-menu v-scrollable"> 3510 <div class="mega-menu__container"> 3511 <div class="page-width mega-menu__wrapper"><div class="mega-menu__list"><div class="mega-menu__item"><span class="h5 mega-menu__link mega-menu__link--top font-heading mega-menu__link--non-clickable">GIFT GUIDE</span><ul class="mega-menu__item-child"><li><a href="/en-us/collections/housewarming" class="mega-menu__link" 3512 data-gtm-nav-first="gift guide" 3513 data-gtm-nav-second="gift guide" 3514 data-gtm-nav-third="housewarming" 3515 > 3516 <span class="mega-menu__link-text">Housewarming</span> 3517 </a></li><li><a href="/en-us/collections/for-loved-ones" class="mega-menu__link" 3518 data-gtm-nav-first="gift guide" 3519 data-gtm-nav-second="gift guide" 3520 data-gtm-nav-third="for loved ones" 3521 > 3522 <span class="mega-menu__link-text">For Loved Ones</span> 3523 </a></li><li><a href="/en-us/collections/summer-living" class="mega-menu__link" 3524 data-gtm-nav-first="gift guide" 3525 data-gtm-nav-second="gift guide" 3526 data-gtm-nav-third="summer living" 3527 > 3528 <span class="mega-menu__link-text">Summer Living</span> 3529 </a></li><li><a href="/en-us/collections/most-loved" class="mega-menu__link" 3530 data-gtm-nav-first="gift guide" 3531 data-gtm-nav-second="gift guide" 3532 data-gtm-nav-third="most loved" 3533 > 3534 <span class="mega-menu__link-text">Most Loved</span> 3535 </a></li></ul></div></div><div class="mega-menu__promotions mega-menu__promotions-grid"><div class="promotion-item" style="--index: 1;"> 3536 <div class="custom-card custom-card--small blocks-radius"> 3537 <a href="/en-us/pages/festive-season" class="custom-card__wrapper flex flex-col" 3538 data-gtm-nav-first="gift guide" 3539 3540 data-gtm-nav-second="gift guide" 3541 3542 > 3543 <div class="custom-card__media media-wrapper hover-wrapper"> 3544 <img src="//www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=165 165w, //www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=360 360w, //www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=535 535w, //www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&
3544width=750 750w, //www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=940 940w, //www.fornasetti.com/cdn/shop/files/DD_MENU_TAZZE.webp?v=1767779141&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3545 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3546 <div class="custom-card__summary flex-1"> 3547 <h3 class="custom-card__title h5">Gift Guide</h3> 3548 <div class="text-subtext rte text-body-sm"></div> 3549 </div> 3550 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Gift Guide"> 3551 <svg 3552 class="icon icon--medium rtl-flip-x" 3553 width="20" 3554 height="20" 3555 viewBox="0 0 20 20" 3556 fill="none" 3557 xmlns="http://www.w3.org/2000/svg" 3558 > 3559 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3560 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3561 </svg> 3562 </button> 3563 </div></a> 3564 </div> 3565 3566 </div><div class="promotion-item" style="--index: 2;"> 3567 <div class="custom-card custom-card--small blocks-radius"> 3568 <a href="/en-us/pages/calendar-plate-2026" class="custom-card__wrapper flex flex-col" 3569 data-gtm-nav-first="gift guide" 3570 3571 data-gtm-nav-second="calendar plate" 3572 3573 > 3574 <div class="custom-card__media media-wrapper hover-wrapper"> 3575 <img src="//www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=165 165w, //www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=360 360w, //www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=535 535w, //www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=750 750w, //www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=940 940w, //www.fornasetti.com/cdn/shop/files/DD_MENU_PIATTO.webp?v=1767779157&width=1100 1100w" width="1100" height="1269" loading="lazy" class="motion-reduce hover-scale-up" is="image-lazy"> 3576 </div><div class="custom-card__info md:flex items-center gap-2 z-1"> 3577 <div class="custom-card__summary flex-1"> 3578 <h3 class="custom-card__title h5">Calendar Plate</h3> 3579 <div class="text-subtext rte text-body-sm"></div> 3580 </div> 3581 <button class="btn btn--icon-circle btn--secondary hidden xl:flex" aria-label="Calendar Plate"> 3582 <svg 3583 class="icon icon--medium rtl-flip-x" 3584 width="20" 3585 height="20"
3586 viewBox="0 0 20 20" 3587 fill="none" 3588 xmlns="http://www.w3.org/2000/svg" 3589 > 3590 <path d="M5 15L15 5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3591 <path d="M6.875 5H15V13.125" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3592 </svg> 3593 </button> 3594 </div></a> 3595 </div> 3596 3597 </div></div></div> 3598 </div> 3599 </div> 3600 </details> 3601 3602</li></ul> 3603</nav> 3604 3605 3606 </div><div class="header__icons header__icons--right flex justify-end z-1"> 3607 <div class="header__buttons flex items-center justify-end"><a 3608 href="/en-us/search" 3609 class="search-drawer-button flex items-center justify-end" 3610 aria-controls="JklSearchDrawer" 3611 aria-label="Search" 3612 ><svg 3613 xmlns="http://www.w3.org/2000/svg" 3614 class="icon icon-search icon--small" 3615 viewBox="0 0 24 24" 3616 fill="none" 3617> 3618 <path d="M10.875 18.75C15.2242 18.75 18.75 15.2242 18.75 10.875C18.75 6.52576 15.2242 3 10.875 3C6.52576 3 3 6.52576 3 10.875C3 15.2242 6.52576 18.75 10.875 18.75Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3619 <path d="M16.4434 16.4453L20.9997 21.0016" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3620</svg> 3621</a><a 3622 href="#" 3623 class="account-drawer-button flex-end" 3624 aria-controls="JklAccountDrawer" 3625 aria-label="Log in" 3626 > 3627 <span class="account-drawer-button__icon-wrapper"><svg 3628 class="icon icon-account icon--small" 3629 viewBox="0 0 24 24" 3630 fill="none" 3631 xmlns="http://www.w3.org/2000/svg" 3632> 3633 <path d="M12 15C15.3137 15 18 12.3137 18 9C18 5.68629 15.3137 3 12 3C8.68629 3 6 5.68629 6 9C6 12.3137 8.68629 15 12 15Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3634 <path d="M2.90625 20.2508C3.82775 18.6544 5.15328 17.3287 6.74958 16.407C8.34588 15.4853 10.1567 15 12 15C13.8433 15 15.6541 15.4853 17.2504 16.407C18.8467 17.3287 20.1722 18.6544 21.0938 20.2508" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3635</svg> 3636</span> 3637 <span class="visually-hidden">Log in</span> 3638 </a><a 3639 href="#" 3640 class="wishlist-drawer-button flex items-center justify-center relative hidden md:flex" 3641 aria-controls="JklWishlistDrawer" 3642 aria-label="Wishlist" 3643 ><svg 3644 class="icon icon-heart icon--small " 3645 viewBox="0 0 20 20" 3646 fill="none" 3647 xmlns="http://www.w3.org/2000/svg" 3648> 3649 <path d="M10 17.5C10 17.5 1.875 13.125 1.875 7.96875C1.875 6.84987 2.31947 5.77681 3.11064 4.98564C3.90181 4.19447 4.97487 3.75 6.09375 3.75C7.85859 3.75 9.37031 4.71172 10 6.25C10.6297 4.71172 12.1414 3.75 13.9062 3.75C15.0251 3.75 16.0982 4.19447 16.8894 4.98564C17.6805 5.77681 18.125 6.84987 18.125 7.96875C18.125 13.125 10 17.5 10 17.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3650</svg> 3651 3652<span class="visually-hidden">Wishlist</span> 3653 <wishlist-count 3654 class="wishlist-count wishlist-count--absolute font-body-bolder" 3655 aria-label="Wishlist count" 3656 hidden 3657 > 3658 <span class="wishlist-count-value">0</span> 3659 </wishlist-count> 3660 </a> 3661 <a 3662 href="/" 3663 class="cart-drawer-button flex items-center justify-center relative cart-drawer-button--empty" 3664 aria-controls="JklCartDrawer" 3665 data-mobile-checkout="false" 3666 ><svg 3667 viewBox="0 0 24 24" 3668 fill="none" 3669 stroke="currentColor" 3670 stroke-width="1.5" 3671 stroke-linecap="round" 3672 stroke-linejoin="round" 3673 class="icon icon-shopping-bag icon--small" 3674 xmlns="http://www.w3.org/2000/svg" 3675 > 3676 <path d="M19.575 6.75H4.425C4.24045 6.75087 4.06254 6.81891 3.92451 6.94141C3.78648 7.06391 3.69778 7.23249 3.675 7.41562L2.34375 19.4156C2.33191 19.5202 2.34221 19.6261 2.37396 19.7264C2.40572 19.8267 2.45823 19.9192 2.52808 19.9979C2.59794 20.0766 2.68357 20.1397 2.77941 20.1831C2.87525 20.2266 2.97916 20.2494 3.08438 20.25H20.9156C21.0209 20.2494 21.1248 20.2266 21.2206 20.1831C21.3164 20.1397 21.4021 20.0766 21.4719 19.9979C21.5418 19.9192 21.5943 19.8267 21.626 19.7264C21.6578 19.6261 21.6681 19.5202 21.6563 19.4156L20.325 7.41562C20.3022 7.23249 20.2135 7.06391 20.0755 6.94141C19.9375 6.81891 19.7596 6.75087 19.575 6.75V6.75Z"/> 3677 <path d="M8.25 6.75C8.25 5.75544 8.64509 4.80161 9.34835 4.09835C10.0516 3.39509 11.0054 3 12 3C12.9946 3 13.9484 3.39509 14.6517 4.09835C15.3549 4.80161 15.75 5.75544 15.75 6.75"/> 3678 </svg><span class="visually-hidden">
3678Cart</span> 3679 <cart-count 3680 class="cart-count cart-count--absolute font-body-bolder" 3681 aria-label="0 items" 3682 3683 hidden 3684 3685 >0</cart-count> 3686 </a></div> 3687 </div> 3688 </header> 3689 <div class="fixed-overlay z-10"></div><menu-drawer id="MenuDrawer" class="menu-drawer drawer drawer--left" hidden> 3690 <div class="fixed-overlay" aria-controls="MenuDrawer"></div> 3691 <div class="drawer__inner flex flex-col w-full h-full overflow-hidden"> 3692 <div class="drawer__content menu-drawer__content flex-grow flex flex-col h-full w-full"><div class="menu-drawer__top-section"><div class="menu-drawer__auth-links flex"> 3693 <a href="/en-us/account/login" class="menu-drawer__item-link menu-drawer__auth-link flex items-center justify-between"> 3694 <span>SIGN IN</span> 3695 <img src="https://cdn.shopify.com/s/files/1/0956/5929/5067/files/mobile_menu_drawer_arrow.svg?v=1764668526" alt="" class="icon" width="15" height="15" /> 3696 </a> 3697 <a href="/en-us/account/register" class="menu-drawer__item-link menu-drawer__auth-link flex items-center justify-between"> 3698 <span>REGISTER</span> 3699 <img src="https://cdn.shopify.com/s/files/1/0956/5929/5067/files/mobile_menu_drawer_arrow.svg?v=1764668526" alt="" class="icon" width="15" height="15" /> 3700 </a> 3701 </div></div><nav class="flex-grow" role="navigation"> 3702 <ul class="menu-drawer__menus relative w-full" data-parent><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 3703 <summary class="menu-drawer__item-link flex items-center justify-between"> 3704 <span>ICONS</span><svg 3705 xmlns="http://www.w3.org/2000/svg" 3706 class="icon icon-caret-down icon--medium" 3707 viewBox="0 0 20 20" 3708 fill="none" 3709> 3710 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3711</svg> 3712</summary> 3713 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3714 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 3715 href="/en-us/pages/icons" 3716 class="menu-drawer__item-link flex items-center justify-between" 3717 data-gtm-nav-first="icons" 3718 data-gtm-nav-second="iconic pieces" 3719 >Iconic Pieces</a></li><li class="menu-drawer__item" level="child"><a 3720 href="/en-us/pages/tema-e-variazioni-plates" 3721 class="menu-drawer__item-link flex items-center justify-between" 3722 data-gtm-nav-first="icons" 3723 data-gtm-nav-second="tema e variazioni plates" 3724 >Tema e Variazioni Plates</a></li><li class="menu-drawer__item" level="child"><a 3725 href="/en-us/pages/trumeau" 3726 class="menu-drawer__item-link flex items-center justify-between" 3727 data-gtm-nav-first="icons" 3728 data-gtm-nav-second="trumeau cabinet" 3729 >Trumeau Cabinet</a></li><li class="menu-drawer__item" level="child"><a 3730 href="/en-us/collections/trays" 3731 class="menu-drawer__item-link flex items-center justify-between" 3732 data-gtm-nav-first="icons" 3733 data-gtm-nav-second="trays" 3734 >Trays</a></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 3735 <summary class="menu-drawer__item-link flex items-center justify-between"> 3736 <span>Shop by Motif</span><svg 3737 xmlns="http://www.w3.org/2000/svg" 3738 class="icon icon-caret-down icon--medium" 3739 viewBox="0 0 20 20" 3740 fill="none" 3741> 3742 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3743</svg> 3744</summary> 3745 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3746 <ul class="w-full"><li class="menu-drawer__item"> 3747 <a 3748 href="/en-us/pages/tema-e-variazioni" 3749 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3750 data-gtm-nav-second="shop by motif" 3751 data-gtm-nav-third="tema e variazioni" >Tema e Variazioni</a> 3752 </li><li class="menu-drawer__item"> 3753 <a 3754 href="/en-us/pages/architettura" 3755 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3756 data-gtm-nav-second="shop by motif" 3757 data-gtm-nav-third="architecture" >Architecture</a> 3758 </li><li class="menu-drawer__item"> 3759 <a 3760 href="/en-us/pages/astronomici" 3761 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3762 data-gtm-nav-second="shop by motif" 3763 data-gtm-nav-third="celestial motifs" >Celestial Motifs</a> 3764 </li><li class="menu-drawer__item"> 3765 <a 3766 href="/en-us/pages/flowers" 3767 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3768 data-gtm-nav-second="shop by motif" 3769 data-gtm-nav-third="floral" >Floral</a> 3770 </li><li class="menu-drawer__item"> 3771 <a 3772 href="/en-us/pages/sun" 3773 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3774 data-gtm-nav-second="shop by motif" 3775 data-gtm-nav-third="suns" >Suns</a> 3776 </li><li class="menu-drawer__item"> 3777 <a 3778 href="/en-us/pages/palloni" 3779 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3780 data-gtm-nav-second="shop by motif" 3781 data-gtm-nav-third="air balloons" >Air Balloons</a> 3782 </li><li class="menu-drawer__item"> 3783 <a 3784 href="/en-us/pages/mano" 3785 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3786 data-gtm-nav-second="shop by motif" 3787 data-gtm-nav-third="hands" >Hands</a> 3788 </li><li class="menu-drawer__item"> 3789 <a 3790 href="/en-us/pages/peccato-originale" 3791 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3792 data-gtm-nav-second="shop by motif" 3793 data-gtm-nav-third="original sin" >Original Sin</a> 3794 </li><li class="menu-drawer__item"> 3795 <a 3796 href="/en-us/pages/farfalle" 3797 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3798 data-gtm-nav-second="shop by motif" 3799 data-gtm-nav-third="butterflies" >Butterflies</a> 3800 </li><li class="menu-drawer__item"> 3801 <a 3802 href="/en-us/pages/pesci" 3803 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="icons" 3804 data-gtm-nav-second="shop by motif" 3805 data-gtm-nav-third="fish motifs" >Fish Motifs</a> 3806 </li></ul> 3807 </div> 3808 </details></li></ul> 3809 </div> 3810</details> 3811 3812</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 3813 <summary class="menu-drawer__item-link flex items-center justify-between"> 3814 <span>FURNITURE</span><svg 3815 xmlns="http://www.w3.org/2000/svg" 3816 class="icon icon-caret-down icon--medium" 3817 viewBox="0 0 20 20" 3818 fill="none" 3819> 3820 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3821</svg> 3822</summary> 3823 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3824 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 3825 <summary class="menu-drawer__item-link flex items-center justify-between">
3826 <span>Cabinets & Storage</span><svg 3827 xmlns="http://www.w3.org/2000/svg" 3828 class="icon icon-caret-down icon--medium" 3829 viewBox="0 0 20 20" 3830 fill="none" 3831> 3832 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3833</svg> 3834</summary> 3835 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3836 <ul class="w-full"><li class="menu-drawer__item"> 3837 <a 3838 href="/en-us/pages/trumeau" 3839 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3840 data-gtm-nav-second="cabinets & storage" 3841 data-gtm-nav-third="trumeau" >Trumeau</a> 3842 </li><li class="menu-drawer__item"> 3843 <a 3844 href="/en-us/collections/cabinets" 3845 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3846 data-gtm-nav-second="cabinets & storage" 3847 data-gtm-nav-third="cabinets" >Cabinets</a> 3848 </li><li class="menu-drawer__item"> 3849 <a 3850 href="/en-us/collections/curved-cabinets" 3851 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3852 data-gtm-nav-second="cabinets & storage" 3853 data-gtm-nav-third="curved cabinets" >Curved Cabinets</a> 3854 </li><li class="menu-drawer__item"> 3855 <a 3856 href="/en-us/collections/storage-consoles" 3857 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3858 data-gtm-nav-second="cabinets & storage" 3859 data-gtm-nav-third="consoles" >Consoles</a> 3860 </li><li class="menu-drawer__item"> 3861 <a 3862 href="/en-us/pages/chest-of-drawers" 3863 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3864 data-gtm-nav-second="cabinets & storage" 3865 data-gtm-nav-third="chests of drawers" >Chests of Drawers</a> 3866 </li><li class="menu-drawer__item"> 3867 <a 3868 href="/en-us/collections/cabinets-and-storage" 3869 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3870 data-gtm-nav-second="cabinets & storage" 3871 data-gtm-nav-third="view all" >View all</a> 3872 </li></ul> 3873 </div> 3874 </details></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 3875 <summary class="menu-drawer__item-link flex items-center justify-between"> 3876 <span>Seating & Tables</span><svg 3877 xmlns="http://www.w3.org/2000/svg" 3878 class="icon icon-caret-down icon--medium" 3879 viewBox="0 0 20 20" 3880 fill="none" 3881> 3882 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3883</svg> 3884</summary> 3885 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3886 <ul class="w-full"><li class="menu-drawer__item"> 3887 <a 3888 href="/en-us/collections/chairs" 3889 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3890 data-gtm-nav-second="seating & tables" 3891 data-gtm-nav-third="chairs" >Chairs</a> 3892 </li><li class="menu-drawer__item"> 3893 <a 3894 href="/en-us/collections/stools" 3895 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3896 data-gtm-nav-second="seating & tables" 3897 data-gtm-nav-third="stools" >Stools</a> 3898 </li><li class="menu-drawer__item"> 3899 <a 3900 href="/en-us/collections/tables" 3901 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3902 data-gtm-nav-second="seating & tables" 3903 data-gtm-nav-third="tables" >Tables</a> 3904 </li><li class="menu-drawer__item"> 3905 <a 3906 href="/en-us/collections/seatings" 3907 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="furniture" 3908 data-gtm-nav-second="seating & tables" 3909 data-gtm-nav-third="view all" >View all</a> 3910 </li></ul> 3911 </div> 3912 </details></li><li class="menu-drawer__item" level="child"><a 3913 href="/en-us/collections/furniture" 3914 class="menu-drawer__item-link flex items-center justify-between" 3915 data-gtm-nav-first="furniture" 3916 data-gtm-nav-second="view all furniture" 3917 >View All Furniture</a></li></ul> 3918 </div> 3919</details> 3920 3921</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 3922 <summary class="menu-drawer__item-link flex items-center justify-between"> 3923 <span>HOME ACCESSORIES</span><svg 3924 xmlns="http://www.w3.org/2000/svg" 3925 class="icon icon-caret-down icon--medium" 3926 viewBox="0 0 20 20" 3927 fill="none" 3928> 3929 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3930</svg> 3931</summary> 3932 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3933 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 3934 href="/en-us/collections/umbrella-stands" 3935 class="menu-drawer__item-link flex items-center justify-between" 3936 data-gtm-nav-first="home accessories" 3937 data-gtm-nav-second="umbrella stands" 3938 >Umbrella Stands</a></li><li class="menu-drawer__item" level="child"><a 3939 href="/en-us/collections/bookends" 3940 class="menu-drawer__item-link flex items-center justify-between" 3941 data-gtm-nav-first="home accessories" 3942 data-gtm-nav-second="books & bookends" 3943 >Books & Bookends</a></li><li class="menu-drawer__item" level="child"><a 3944 href="/en-us/collections/vases" 3945 class="menu-drawer__item-link flex items-center justify-between" 3946 data-gtm-nav-first="home accessories" 3947 data-gtm-nav-second="vases" 3948 >Vases</a></li><li class="menu-drawer__item" level="child"><a 3949 href="/en-us/pages/new-rug-collection-mdw-2026" 3950 class="menu-drawer__item-link flex items-center justify-between" 3951 data-gtm-nav-first="home accessories" 3952 data-gtm-nav-second="rugs and tapestries" 3953 >Rugs and tapestries</a></li><li class="menu-drawer__item" level="child"><a 3954 href="/en-us/collections/decorative-panels" 3955 class="menu-drawer__item-link flex items-center justify-between" 3956 data-gtm-nav-first="home accessories" 3957 data-gtm-nav-second="framed panels" 3958 >Framed Panels</a></li><li class="menu-drawer__item" level="child"><a 3959 href="/en-us/collections/mirrors" 3960 class="menu-drawer__item-link flex items-center justify-between" 3961 data-gtm-nav-first="home accessories" 3962 data-gtm-nav-second="mirrors" 3963 >Mirrors</a></li><li class="menu-drawer__item" level="child"><a 3964 href="/en-us/collections/paper-baskets" 3965 class="menu-drawer__item-link flex items-center justify-between" 3966 data-gtm-nav-first="home accessories" 3967 data-gtm-nav-second="paper baskets" 3968 >Paper Baskets</a></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 3969 <summary class="menu-drawer__item-link flex items-center justify-between">
3970 <span>Small Objects</span><svg 3971 xmlns="http://www.w3.org/2000/svg" 3972 class="icon icon-caret-down icon--medium" 3973 viewBox="0 0 20 20" 3974 fill="none" 3975> 3976 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 3977</svg> 3978</summary> 3979 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 3980 <ul class="w-full"><li class="menu-drawer__item"> 3981 <a 3982 href="/en-us/collections/square-catchalls" 3983 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 3984 data-gtm-nav-second="small objects" 3985 data-gtm-nav-third="square catchalls" >Square Catchalls</a> 3986 </li><li class="menu-drawer__item"> 3987 <a 3988 href="/en-us/collections/round-catchalls" 3989 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 3990 data-gtm-nav-second="small objects" 3991 data-gtm-nav-third="round catchalls" >Round Catchalls</a> 3992 </li><li class="menu-drawer__item"> 3993 <a 3994 href="/en-us/collections/rectangular-catchalls" 3995 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 3996 data-gtm-nav-second="small objects" 3997 data-gtm-nav-third="rectangular catchalls" >Rectangular Catchalls</a> 3998 </li><li class="menu-drawer__item"> 3999 <a 4000 href="/en-us/collections/small-containers" 4001 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4002 data-gtm-nav-second="small objects" 4003 data-gtm-nav-third="porcelain boxes" >Porcelain Boxes</a> 4004 </li><li class="menu-drawer__item"> 4005 <a 4006 href="/en-us/collections/cats" 4007 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4008 data-gtm-nav-second="small objects" 4009 data-gtm-nav-third="ceramic cats" >Ceramic Cats</a> 4010 </li><li class="menu-drawer__item"> 4011 <a 4012 href="/en-us/collections/small-objects" 4013 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4014 data-gtm-nav-second="small objects" 4015 data-gtm-nav-third="view all" >View all</a> 4016 </li></ul> 4017 </div> 4018 </details></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4019 <summary class="menu-drawer__item-link flex items-center justify-between"> 4020 <span>Cushions</span><svg 4021 xmlns="http://www.w3.org/2000/svg" 4022 class="icon icon-caret-down icon--medium" 4023 viewBox="0 0 20 20" 4024 fill="none" 4025> 4026 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4027</svg> 4028</summary> 4029 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4030 <ul class="w-full"><li class="menu-drawer__item"> 4031 <a 4032 href="/en-us/collections/tema-e-variazioni-cushions" 4033 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4034 data-gtm-nav-second="cushions" 4035 data-gtm-nav-third="tema e variazioni cushions" >Tema e Variazioni Cushions</a> 4036 </li><li class="menu-drawer__item"> 4037 <a 4038 href="/en-us/collections/silk-cushions" 4039 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4040 data-gtm-nav-second="cushions" 4041 data-gtm-nav-third="silk cushions" >Silk Cushions</a> 4042 </li><li class="menu-drawer__item"> 4043 <a 4044 href="/en-us/collections/essential-cushions" 4045 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4046 data-gtm-nav-second="cushions" 4047 data-gtm-nav-third="wool cushions" >Wool Cushions</a> 4048 </li><li class="menu-drawer__item"> 4049 <a 4050 href="/en-us/collections/outdoor-cushions" 4051 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4052 data-gtm-nav-second="cushions" 4053 data-gtm-nav-third="outdoor cushions" >Outdoor Cushions</a> 4054 </li><li class="menu-drawer__item"> 4055 <a 4056 href="/en-us/collections/cushions" 4057 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4058 data-gtm-nav-second="cushions" 4059 data-gtm-nav-third="view all" >View all</a> 4060 </li></ul> 4061 </div> 4062 </details></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4063 <summary class="menu-drawer__item-link flex items-center justify-between">
4064 <span>Trays & Tray Stands</span><svg 4065 xmlns="http://www.w3.org/2000/svg" 4066 class="icon icon-caret-down icon--medium" 4067 viewBox="0 0 20 20" 4068 fill="none" 4069> 4070 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4071</svg> 4072</summary> 4073 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4074 <ul class="w-full"><li class="menu-drawer__item"> 4075 <a 4076 href="/en-us/collections/trays" 4077 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4078 data-gtm-nav-second="trays & tray stands" 4079 data-gtm-nav-third="trays" >Trays</a> 4080 </li><li class="menu-drawer__item"> 4081 <a 4082 href="/en-us/collections/tray-stands" 4083 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4084 data-gtm-nav-second="trays & tray stands" 4085 data-gtm-nav-third="tray stands" >Tray Stands</a> 4086 </li><li class="menu-drawer__item"> 4087 <a 4088 href="/en-us/collections/decorative-trays-and-pliants" 4089 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4090 data-gtm-nav-second="trays & tray stands" 4091 data-gtm-nav-third="view all" >View all</a> 4092 </li></ul> 4093 </div> 4094 </details></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4095 <summary class="menu-drawer__item-link flex items-center justify-between"> 4096 <span>Clocks</span><svg 4097 xmlns="http://www.w3.org/2000/svg" 4098 class="icon icon-caret-down icon--medium" 4099 viewBox="0 0 20 20" 4100 fill="none" 4101> 4102 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4103</svg> 4104</summary> 4105 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4106 <ul class="w-full"><li class="menu-drawer__item"> 4107 <a 4108 href="/en-us/collections/wall-clocks" 4109 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4110 data-gtm-nav-second="clocks" 4111 data-gtm-nav-third="wall clocks" >Wall Clocks</a> 4112 </li><li class="menu-drawer__item"> 4113 <a 4114 href="/en-us/collections/table-clocks" 4115 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4116 data-gtm-nav-second="clocks" 4117 data-gtm-nav-third="table clocks" >Table Clocks</a> 4118 </li><li class="menu-drawer__item"> 4119 <a 4120 href="/en-us/collections/clocks" 4121 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4122 data-gtm-nav-second="clocks" 4123 data-gtm-nav-third="view all" >View all</a> 4124 </li></ul> 4125 </div> 4126 </details></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4127 <summary class="menu-drawer__item-link flex items-center justify-between"> 4128 <span>Lamps & Lampshades</span><svg 4129 xmlns="http://www.w3.org/2000/svg" 4130 class="icon icon-caret-down icon--medium" 4131 viewBox="0 0 20 20" 4132 fill="none" 4133> 4134 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4135</svg> 4136</summary> 4137 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4138 <ul class="w-full"><li class="menu-drawer__item"> 4139 <a 4140 href="/en-us/collections/accessories" 4141 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4142 data-gtm-nav-second="lamps & lampshades" 4143 data-gtm-nav-third="view all" >View all</a> 4144 </li><li class="menu-drawer__item"> 4145 <a 4146 href="/en-us/collections/lamps" 4147 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4148 data-gtm-nav-second="lamps & lampshades" 4149 data-gtm-nav-third="lamps" >Lamps</a> 4150 </li><li class="menu-drawer__item"> 4151 <a
4152 href="/en-us/collections/lampshades" 4153 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4154 data-gtm-nav-second="lamps & lampshades" 4155 data-gtm-nav-third="lampshades" >Lampshades</a> 4156 </li><li class="menu-drawer__item"> 4157 <a 4158 href="/en-us/collections/lamps-and-lampshades" 4159 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="home accessories" 4160 data-gtm-nav-second="lamps & lampshades" 4161 data-gtm-nav-third="view all" >View all</a> 4162 </li></ul> 4163 </div> 4164 </details></li></ul> 4165 </div> 4166</details> 4167 4168</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 4169 <summary class="menu-drawer__item-link flex items-center justify-between"> 4170 <span>PLATES TEMA E VARIAZIONI </span><svg 4171 xmlns="http://www.w3.org/2000/svg" 4172 class="icon icon-caret-down icon--medium" 4173 viewBox="0 0 20 20" 4174 fill="none" 4175> 4176 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4177</svg> 4178</summary> 4179 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4180 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 4181 href="/en-us/collections/signature-designs" 4182 class="menu-drawer__item-link flex items-center justify-between" 4183 data-gtm-nav-first="plates tema e variazioni " 4184 data-gtm-nav-second="signature designs" 4185 >Signature Designs</a></li><li class="menu-drawer__item" level="child"><a 4186 href="/en-us/pages/signs-of-the-zodiac" 4187 class="menu-drawer__item-link flex items-center justify-between" 4188 data-gtm-nav-first="plates tema e variazioni " 4189 data-gtm-nav-second="zodiac" 4190 >Zodiac</a></li><li class="menu-drawer__item" level="child"><a 4191 href="/en-us/collections/tema-e-variazioni-animals" 4192 class="menu-drawer__item-link flex items-center justify-between" 4193 data-gtm-nav-first="plates tema e variazioni " 4194 data-gtm-nav-second="animals" 4195 >Animals</a></li><li class="menu-drawer__item" level="child"><a 4196 href="/en-us/collections/tema-e-variazioni-floral-and-fruits" 4197 class="menu-drawer__item-link flex items-center justify-between" 4198 data-gtm-nav-first="plates tema e variazioni " 4199 data-gtm-nav-second="florals & fruits" 4200 >Florals & Fruits</a></li><li class="menu-drawer__item" level="child"><a 4201 href="/en-us/collections/tema-e-variazioni-architecture-and-landscapes" 4202 class="menu-drawer__item-link flex items-center justify-between" 4203 data-gtm-nav-first="plates tema e variazioni " 4204 data-gtm-nav-second="architecture & landscapes" 4205 >Architecture & Landscapes</a></li><li class="menu-drawer__item" level="child"><a 4206 href="/en-us/collections/tema-e-variazioni-curiosities" 4207 class="menu-drawer__item-link flex items-center justify-between" 4208 data-gtm-nav-first="plates tema e variazioni " 4209 data-gtm-nav-second="objects & curiosities" 4210 >Objects & Curiosities</a></li><li class="menu-drawer__item" level="child"><a 4211 href="/en-us/collections/gold-platinum" 4212 class="menu-drawer__item-link flex items-center justify-between" 4213 data-gtm-nav-first="plates tema e variazioni " 4214 data-gtm-nav-second="gold & platinum" 4215 >Gold & Platinum</a></li><li class="menu-drawer__item" level="child"><a 4216 href="/en-us/pages/tema-e-variazioni-plates" 4217 class="menu-drawer__item-link flex items-center justify-between" 4218 data-gtm-nav-first="plates tema e variazioni " 4219 data-gtm-nav-second="view all" 4220 >View all</a></li></ul> 4221 </div> 4222</details> 4223 4224</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 4225 <summary class="menu-drawer__item-link flex items-center justify-between"> 4226 <span>TABLEWARE</span><svg 4227 xmlns="http://www.w3.org/2000/svg" 4228 class="icon icon-caret-down icon--medium" 4229 viewBox="0 0 20 20" 4230 fill="none" 4231> 4232 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4233</svg> 4234</summary> 4235 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4236 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 4237 href="/en-us/collections/glassware" 4238 class="menu-drawer__item-link flex items-center justify-between" 4239 data-gtm-nav-first="tableware" 4240 data-gtm-nav-second="glassware" 4241 >Glassware</a></li><li class="menu-drawer__item" level="child"><a 4242 href="/en-us/collections/trays-and-platters" 4243 class="menu-drawer__item-link flex items-center justify-between" 4244 data-gtm-nav-first="tableware" 4245 data-gtm-nav-second="trays & platters" 4246 >Trays & Platters</a></li><li class="menu-drawer__item" level="child"><a 4247 href="/en-us/collections/ice-buckets" 4248 class="menu-drawer__item-link flex items-center justify-between" 4249 data-gtm-nav-first="tableware" 4250 data-gtm-nav-second="ice buckets" 4251 >Ice Buckets</a></li><li class="menu-drawer__item" level="child"><a 4252 href="/en-us/collections/art-de-la-table-1" 4253 class="menu-drawer__item-link flex items-center justify-between" 4254 data-gtm-nav-first="tableware" 4255 data-gtm-nav-second="view all" 4256 >View all</a></li><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4257 <summary class="menu-drawer__item-link flex items-center justify-between">
4258 <span>Coffee & Tea</span><svg 4259 xmlns="http://www.w3.org/2000/svg" 4260 class="icon icon-caret-down icon--medium" 4261 viewBox="0 0 20 20" 4262 fill="none" 4263> 4264 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4265</svg> 4266</summary> 4267 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4268 <ul class="w-full"><li class="menu-drawer__item"> 4269 <a 4270 href="/en-us/collections/tea-cups" 4271 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="tableware" 4272 data-gtm-nav-second="coffee & tea" 4273 data-gtm-nav-third="tea cups" >Tea Cups</a> 4274 </li><li class="menu-drawer__item"> 4275 <a 4276 href="/en-us/collections/coffee-cups" 4277 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="tableware" 4278 data-gtm-nav-second="coffee & tea" 4279 data-gtm-nav-third="coffee cups" >Coffee Cups</a> 4280 </li><li class="menu-drawer__item"> 4281 <a 4282 href="/en-us/collections/service-sets" 4283 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="tableware" 4284 data-gtm-nav-second="coffee & tea" 4285 data-gtm-nav-third="teapots & tea service" >Teapots & Tea Service</a> 4286 </li><li class="menu-drawer__item"> 4287 <a 4288 href="/en-us/collections/tea-and-coffee-sets" 4289 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="tableware" 4290 data-gtm-nav-second="coffee & tea" 4291 data-gtm-nav-third="view all" >View all</a> 4292 </li></ul> 4293 </div> 4294 </details></li></ul> 4295 </div> 4296</details> 4297 4298</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 4299 <summary class="menu-drawer__item-link flex items-center justify-between"> 4300 <span>FRAGRANCES</span><svg 4301 xmlns="http://www.w3.org/2000/svg" 4302 class="icon icon-caret-down icon--medium" 4303 viewBox="0 0 20 20" 4304 fill="none" 4305> 4306 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4307</svg> 4308</summary> 4309 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4310 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 4311 href="/en-us/collections/scented-candles" 4312 class="menu-drawer__item-link flex items-center justify-between" 4313 data-gtm-nav-first="fragrances" 4314 data-gtm-nav-second="scented candles" 4315 >Scented Candles</a></li><li class="menu-drawer__item" level="child"><a 4316 href="/en-us/collections/room-spray" 4317 class="menu-drawer__item-link flex items-center justify-between" 4318 data-gtm-nav-first="fragrances" 4319 data-gtm-nav-second="room mist" 4320 >Room Mist</a></li><li class="menu-drawer__item" level="child"><a 4321 href="/en-us/pages/fragrances" 4322 class="menu-drawer__item-link flex items-center justify-between" 4323 data-gtm-nav-first="fragrances" 4324 data-gtm-nav-second="view all" 4325 >View all</a></li></ul> 4326 </div> 4327</details> 4328 4329</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 4330 <summary class="menu-drawer__item-link flex items-center justify-between"> 4331 <span>WALLPAPER</span><svg 4332 xmlns="http://www.w3.org/2000/svg" 4333 class="icon icon-caret-down icon--medium" 4334 viewBox="0 0 20 20" 4335 fill="none" 4336> 4337 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4338</svg> 4339</summary> 4340 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4341 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><details is="menu-drawer-details"> 4342 <summary class="menu-drawer__item-link flex items-center justify-between">
4343 <span>WALLPAPER</span><svg 4344 xmlns="http://www.w3.org/2000/svg" 4345 class="icon icon-caret-down icon--medium" 4346 viewBox="0 0 20 20" 4347 fill="none" 4348> 4349 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4350</svg> 4351</summary> 4352 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4353 <ul class="w-full"><li class="menu-drawer__item"> 4354 <a 4355 href="/en-us/collections/icons" 4356 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4357 data-gtm-nav-second="wallpaper" 4358 data-gtm-nav-third="icons" >Icons</a> 4359 </li><li class="menu-drawer__item"> 4360 <a 4361 href="/en-us/collections/skies-and-clouds" 4362 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4363 data-gtm-nav-second="wallpaper" 4364 data-gtm-nav-third="skies and clouds" >Skies and Clouds</a> 4365 </li><li class="menu-drawer__item"> 4366 <a 4367 href="/en-us/collections/architecture-and-landscapes" 4368 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4369 data-gtm-nav-second="wallpaper" 4370 data-gtm-nav-third="architecture and landscapes" >Architecture and Landscapes</a> 4371 </li><li class="menu-drawer__item"> 4372 <a 4373 href="/en-us/collections/natural-inspirations" 4374 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4375 data-gtm-nav-second="wallpaper" 4376 data-gtm-nav-third="natural inspirations" >Natural Inspirations</a> 4377 </li><li class="menu-drawer__item"> 4378 <a 4379 href="/en-us/collections/objects-and-curiosities" 4380 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4381 data-gtm-nav-second="wallpaper" 4382 data-gtm-nav-third="objects and curiosities" >Objects and Curiosities</a> 4383 </li><li class="menu-drawer__item"> 4384 <a 4385 href="/en-us/pages/wallpaper" 4386 class="menu-drawer__item-link flex items-center justify-between" data-gtm-nav-first="wallpaper" 4387 data-gtm-nav-second="wallpaper" 4388 data-gtm-nav-third="view all" >View all</a> 4389 </li></ul> 4390 </div> 4391 </details></li></ul> 4392 </div> 4393</details> 4394 4395</li><li class="menu-drawer__item"><details is="menu-drawer-details" level="top"> 4396 <summary class="menu-drawer__item-link flex items-center justify-between"> 4397 <span>GIFT GUIDE</span><svg 4398 xmlns="http://www.w3.org/2000/svg" 4399 class="icon icon-caret-down icon--medium" 4400 viewBox="0 0 20 20" 4401 fill="none" 4402> 4403 <path d="M16.25 7.5L10 13.75L3.75 7.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4404</svg> 4405</summary> 4406 <div class="menu-drawer__submenu flex flex-col w-full" data-parent> 4407 <ul class="flex flex-col" data-parent role="list"><li class="menu-drawer__item" level="child"><a 4408 href="/en-us/collections/housewarming" 4409 class="menu-drawer__item-link flex items-center justify-between" 4410 data-gtm-nav-first="gift guide" 4411 data-gtm-nav-second="housewarming" 4412 >Housewarming</a></li><li class="menu-drawer__item" level="child"><a 4413 href="/en-us/collections/for-loved-ones" 4414 class="menu-drawer__item-link flex items-center justify-between" 4415 data-gtm-nav-first="gift guide"
4416 data-gtm-nav-second="for loved ones" 4417 >For Loved Ones</a></li><li class="menu-drawer__item" level="child"><a 4418 href="/en-us/collections/summer-living" 4419 class="menu-drawer__item-link flex items-center justify-between" 4420 data-gtm-nav-first="gift guide" 4421 data-gtm-nav-second="summer living" 4422 >Summer Living</a></li><li class="menu-drawer__item" level="child"><a 4423 href="/en-us/collections/most-loved" 4424 class="menu-drawer__item-link flex items-center justify-between" 4425 data-gtm-nav-first="gift guide" 4426 data-gtm-nav-second="most loved" 4427 >Most Loved</a></li></ul> 4428 </div> 4429</details> 4430 4431</li><li class="menu-drawer__item menu-drawer__footer-item"> 4432 <a href="/checkout" class="menu-drawer__item-link"> 4433 SHOPPING BAG 4434 </a> 4435 </li><li class="menu-drawer__item menu-drawer__footer-item"> 4436 <a href="/en-us/account" class="menu-drawer__item-link"> 4437 WISHLIST 4438 </a> 4439 </li><li class="menu-drawer__item menu-drawer__footer-item"> 4440 <button 4441 type="button" 4442 class="menu-drawer__item-link menu-drawer__language-button" 4443 onclick="openCountryLanguageModal()" 4444 aria-controls="JklCountryLanguageModal" 4445 aria-haspopup="dialog" 4446 > 4447 <span> 4448 Country: US/ENG 4449 </span> 4450 </button> 4451 </li><li class="menu-drawer__item menu-drawer__footer-item"> 4452 <a href="/en-us/pages/newsletter" class="menu-drawer__item-link"> 4453 NEWSLETTER 4454 </a> 4455 </li><li class="menu-drawer__item menu-drawer__footer-item"> 4456 <a href="/pages/customer-service" class="menu-drawer__item-link"> 4457 CUSTOMER SERVICE 4458 </a> 4459 </li> 4460 </ul> 4461 </nav></div> 4462 </div> 4463</menu-drawer>
4463<script> 4464(function() { 4465 // Function to open the country/language modal from mobile menu drawer 4466 window.openCountryLanguageModal = function() { 4467 const modal = document.getElementById('JklCountryLanguageModal'); 4468 if (modal && typeof modal.show === 'function') { 4469 modal.show(); 4470 } 4471 }; 4472})(); 4473</script>
4473 4474 4475 4476 4477<div id="JklLocalizationDrawer" class="localization-drawer drawer drawer--top" hidden 4478 data-current-country="US" 4479 data-current-language="en" 4480 data-current-market="us" 4481 data-country-languages='{"AL": ["en","fr","it"],"DZ": ["en"],"AD": ["en","fr","it"],"AI": ["en"],"AG": ["en"],"AR": ["en"],"AM": ["en"],"AW": ["en"],"AU": ["en"],"AT": ["en","fr","it"],"AZ": ["en"],"BS": ["en"],"BH": ["en"],"BD": ["en"],"BY": ["en","fr","it"],"BE": ["en","fr","it"],"BZ": ["en"],"BM": ["en"],"BT": ["en"],"BO": ["en"],"BA": ["en","fr","it"],"BW": ["en"],"BR": ["en"],"VG": ["en"],"BN": ["en"],"BG": ["en","fr","it"],"KH": ["en"],"CA": ["en","fr"],"CV": ["en"],"KY": ["en"],"CL": ["en"],"CN": ["en"],"CO": ["en"],"KM": ["en"],"CK": ["en"],"CR": ["en"],"HR": ["en","fr","it"],"CY": ["en","fr","it"],"CZ": ["en","fr","it"],"DK": ["en","fr","it"],"DM": ["en"],"DO": ["en"],"EC": ["en"],"EG": ["en"],"EE": ["en","fr","it"],"SZ": ["en"],"FK": ["en"],"FO": ["en"],"FJ": ["en"],"FI": ["en","fr","it"],"FR": ["en","fr","it"],"GF": ["en"],"PF": ["en"],"GA": ["en"],"GM": ["en"],"GE": ["en"],"DE": ["en","fr","it"],"GH": ["en"],"GI": ["en","fr","it"],"GR": ["en","fr","it"],"GL": ["en"],"GD": ["en"],"GP": ["en"],"GT": ["en"],"GY": ["en"],"HN": ["en"],"HK": ["en"],"HU": ["en","fr","it"],"IS": ["en","fr","it"],"IN": ["en"],"ID": ["en"],"IE": ["en","fr","it"],"IL": ["en"],"IT": ["en","it"],"JM": ["en"],"JP": ["en"],"JO": ["en"],"KZ": ["en"],"KE": ["en"],"KW": ["en"],"LA": ["en"],"LV": ["en","fr","it"],"LB": ["en"],"LS": ["en"],"LI": ["en","fr","it"],"LT": ["en","fr","it"],"LU": ["en","fr","it"],"MO": ["en"],"MG": ["en"],"MW": ["en"],"MY": ["en"],"MV": ["en"],"MT": ["en","fr","it"],"MQ": ["en"],"MU": ["en"],"MX": ["en"],"MD": ["en","fr","it"],"MC": ["en","fr","it"],"MN": ["en"],"ME": ["en","fr","it"],"MS": ["en"],"MA": ["en"],"MZ": ["en"],"NA": ["en"],"NP": ["en"],"NL": ["en","fr","it"],"NC": ["en"],"NZ": ["en"],"NI": ["en"],"MK": ["en","fr","it"],"NO": ["en","fr","it"],"OM": ["en"],"PA": ["en"],"PG": ["en"],"PY": ["en"],"PE": ["en"],"PH": ["en"],"PL": ["en","fr","it"],"PT": ["en","fr","it"],"QA": ["en"],"RO": ["en","fr","it"],"RU": ["en"],"WS": ["en"],"SA": ["en"],"SN": ["en"],"RS": ["en","fr","it"],"SC": ["en"],"SG": ["en"],"SK": ["en","fr","it"],"SI": ["en","fr","it"],"SB": ["en"],"ZA": ["en"],"KR": ["en"],"ES": ["en","fr","it"],"LK": ["en"],"BL": ["en"],"KN": ["en"],"LC": ["en"],"VC": ["en"],"SR": ["en"],"SE": ["en","fr","it"],"CH": ["en","fr","it"],"TW": ["en"],"TZ": ["en"],"TH": ["en"],"TL": ["en"],"TG": ["en"],"TO": ["en"],"TT": ["en"],"TN": ["en"],"TR": ["en"],"TC": ["en"],"TV": ["en"],"UA": ["en","fr","it"],"AE": ["en"],"GB": ["en"],"US": ["en"],"UY": ["en"],"VU": ["en"],"VE": ["en"],"VN": ["en"]}' 4482> 4483 <div class="fixed-overlay" aria-controls="JklLocalizationDrawer"></div> 4484 <div class="drawer__inner"> 4485 <button 4486 class="drawer__close-btn" 4487 aria-controls="JklLocalizationDrawer" 4488 type="button" 4489 aria-label="Close localization drawer" 4490 > 4491 <svg 4492 xmlns="http://www.w3.org/2000/svg" 4493 aria-hidden="true" 4494 focusable="false" 4495 class="icon icon-close icon--medium" 4496 fill="none" 4497 viewBox="0 0 24 24" 4498> 4499 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4500 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4501</svg> 4502 4503 </button> 4504 <div class="drawer__content"> 4505 4506 <div class="localization-drawer__grid"><div class="localization-drawer__section"> 4507 <h2 class="localization-drawer__title">Country/region</h2><form method="post" action="/en-us/localization" id="localization-country-29" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="country_code" value="US"> 4508 <div class="localization-drawer__list" id="country-list"> 4509 4510 4511 <div class="localization-drawer__column"> 4512 4513 4514 4515 <button 4516 type="button" 4517 class="localization-drawer__option" 4518 data-country-selector 4519 data-value="IT" 4520 > 4521 Italy 4522 </button> 4523 4524 4525 4526 4527 <button 4528 type="button" 4529 class="localization-drawer__option active" 4530 data-country-selector 4531 data-value="US" 4532 > 4533 United States 4534 </button> 4535 4536 4537 4538 4539 <button 4540 type="button" 4541 class="localization-drawer__option" 4542 data-country-selector 4543 data-value="JP" 4544 > 4545 Japan 4546 </button> 4547 4548 4549 4550 4551 <button 4552 type="button" 4553 class="localization-drawer__option" 4554 data-country-selector 4555 data-value="DE" 4556 > 4557 Germany 4558 </button> 4559 4560 4561 </div> 4562 4563 <div class="localization-drawer__column"> 4564 4565 4566 4567 <button 4568 type="button" 4569 class="localization-drawer__option" 4570 data-country-selector 4571 data-value="GB" 4572 > 4573 United Kingdom 4574 </button> 4575 4576 4577 4578 4579 <button 4580 type="button" 4581 class="localization-drawer__option" 4582 data-country-selector 4583 data-value="CN" 4584 > 4585 China 4586 </button> 4587 4588 4589 4590 4591 <button 4592 type="button" 4593 class="localization-drawer__option" 4594 data-country-selector 4595 data-value="FR" 4596 > 4597 France 4598 </button> 4599 4600 4601 4602 4603 <button 4604 type="button" 4605 class="localization-drawer__option" 4606 data-country-selector 4607 data-value="AU" 4608 > 4609 Australia 4610 </button> 4611 4612 4613 </div> 4614 </div> 4615 4616 4617 <a href="/en-us/pages/country-selector" class="localization-drawer__more" id="show-more-countries"> 4618 MORE COUNTRIES 4619 </a> 4620 4621</form></div><div class="localization-drawer__section"> 4622 <h2 class="localization-drawer__title">Language</h2><form method="post" action="/en-us/localization" id="localization-language-29" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="locale_code" value="en"> 4623 <div class="localization-drawer__list localization-drawer__list--single" id="language-list-container"> 4624 <div class="localization-drawer__column" id="language-buttons-container"> 4625 <button 4626 type="button" 4627 class="localization-drawer__option active" 4628 data-language-selector 4629 data-value="en" 4630 data-language-name="English" 4631 > 4632 English 4633 </button> 4634 4635 </div> 4636 </div></form></div> 4637 </div> 4638 </div> 4639 </div> 4640</div> 4641
4642<script> 4643(function() { 4644 const drawer = document.getElementById('JklLocalizationDrawer'); 4645 if (!drawer) return; 4646 4647 // Storage keys for persisting user's locale preferences 4648 const STORAGE_KEY_COUNTRY = 'fornasetti_selected_country'; 4649 const STORAGE_KEY_LANGUAGE = 'fornasetti_selected_language'; 4650 const STORAGE_KEY_MARKET = 'fornasetti_selected_market'; 4651 4652 // Extract the market code from Shopify's routes (e.g., "/en-eu/" -> market: "eu", language: "en") 4653 const shopifyRoot = window.Shopify?.routes?.root || '/'; 4654 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 4655 4656 let urlLanguage = null; 4657 let urlMarket = null; 4658 4659 if (localeMatch) { 4660 urlLanguage = localeMatch[1].toLowerCase(); // e.g., "en" 4661 urlMarket = localeMatch[2].toUpperCase(); // e.g., "EU", "US", "CN" 4662 } 4663 4664 // For multi-country markets (like EU), we need to use localStorage to remember the specific country 4665 // For single-country markets (like US, CN), the market code IS the country code 4666 const singleCountryMarkets = ['US', 'CN', 'JP', 'AU', 'GB']; // Markets that represent a single country 4667 4668 let actualCountry = null; 4669 let actualLanguage = urlLanguage; 4670 4671 // Check if this is a single-country market 4672 if (urlMarket && singleCountryMarkets.includes(urlMarket)) { 4673 actualCountry = urlMarket; 4674 // Save to localStorage for consistency 4675 try { 4676 localStorage.setItem(STORAGE_KEY_COUNTRY, actualCountry); 4677 localStorage.setItem(STORAGE_KEY_MARKET, urlMarket); 4678 if (actualLanguage) localStorage.setItem(STORAGE_KEY_LANGUAGE, actualLanguage); 4679 } catch (e) {} 4680 } else if (urlMarket) { 4681 // For multi-country markets (like EU), check localStorage for the saved country 4682 try { 4683 const storedCountry = localStorage.getItem(STORAGE_KEY_COUNTRY); 4684 const storedMarket = localStorage.getItem(STORAGE_KEY_MARKET); 4685 const storedLanguage = localStorage.getItem(STORAGE_KEY_LANGUAGE); 4686 4687 // If we have a stored country, use it (it was just selected by the user) 4688 if (storedCountry) { 4689 actualCountry = storedCountry; 4690 // Update the market in storage to match current URL market 4691 localStorage.setItem(STORAGE_KEY_MARKET, urlMarket); 4692 } 4693 4694 // For language, prefer URL then stored 4695 if (!actualLanguage && storedLanguage) { 4696 actualLanguage = storedLanguage; 4697 } 4698 } catch (e) {} 4699 } 4700 4701 // Fix cached HTML: Update active states based on actual country (from URL or localStorage) 4702 if (actualCountry && drawer.dataset.currentCountry !== actualCountry) { 4703 // Update country buttons 4704 const countryButtons = drawer.querySelectorAll('[data-country-selector]'); 4705 countryButtons.forEach(button => { 4706 const buttonCountry = button.getAttribute('data-value'); 4707 if (buttonCountry === actualCountry) { 4708 button.classList.add('active'); 4709 } else { 4710 button.classList.remove('active'); 4711 } 4712 }); 4713 4714 // Update the hidden input value 4715 const countryInput = drawer.querySelector('input[name="country_code"]'); 4716 if (countryInput) { 4717 countryInput.value = actualCountry; 4718 } 4719 } 4720 4721 // Fix cached HTML: Update language active states 4722 if (actualLanguage && drawer.dataset.currentLanguage !== actualLanguage) { 4723 // Update language buttons 4724 const languageButtons = drawer.querySelectorAll('[data-language-selector]'); 4725 languageButtons.forEach(button => { 4726 const buttonLanguage = button.getAttribute('data-value'); 4727 if (buttonLanguage === actualLanguage) { 4728 button.classList.add('active'); 4729 } else { 4730 button.classList.remove('active'); 4731 } 4732 }); 4733 4734 // Update the hidden input value 4735 const languageInput = drawer.querySelector('input[name="locale_code"]'); 4736 if (languageInput) { 4737 languageInput.value = actualLanguage; 4738 } 4739 } 4740 4741 // Get the country-to-languages mapping from the data attribute 4742 // This is generated by Liquid and contains each country with its available languages 4743 // based on the market configuration in Shopify Admin 4744 let countryLanguagesMap = {}; 4745 try { 4746 const countryLanguagesJson = drawer.getAttribute('data-country-languages'); 4747 if (countryLanguagesJson) { 4748 countryLanguagesMap = JSON.parse(countryLanguagesJson); 4749 } 4750 } catch (e) { 4751 console.warn('[Localization] Could not parse country languages data:', e); 4752 } 4753 4754 // Filter language buttons based on the current country's available languages 4755 function filterLanguagesByCountry(countryCode) { 4756 if (!countryCode) { 4757 return; 4758 } 4759 4760 // Get available languages for this country from the map 4761 const availableLanguages = countryLanguagesMap[countryCode] || []; 4762 4763 const languageButtons = drawer.querySelectorAll('[data-language-selector]'); 4764 languageButtons.forEach(button => { 4765 const buttonLanguage = button.getAttribute('data-value').toLowerCase(); 4766 if (availableLanguages.length === 0 || availableLanguages.map(l => l.toLowerCase()).includes(buttonLanguage)) { 4767 button.style.display = ''; 4768 } else { 4769 button.style.display = 'none'; 4770 } 4771 }); 4772 } 4773 4774 // Call the function to filter languages based on the actual country 4775 filterLanguagesByCountry(actualCountry); 4776 4777 const countryForm = document.getElementById('localization-country-29'); 4778 const languageForm = document.getElementById('localization-language-29'); 4779 4780 // Utility function to close all drawers 4781 function closeAllDrawers(excludeId = null) { 4782 // Close account drawer 4783 if (excludeId !== 'JklAccountDrawer') { 4784 const accountDrawer = document.getElementById('JklAccountDrawer'); 4785 if (accountDrawer) { 4786 accountDrawer.removeAttribute('active'); 4787 accountDrawer.removeAttribute('open'); 4788 } 4789 } 4790 4791 // Close search drawer 4792 if (excludeId !== 'JklSearchDrawer') { 4793 const searchDrawer = document.getElementById('JklSearchDrawer'); 4794 if (searchDrawer) { 4795 searchDrawer.removeAttribute('active'); 4796 searchDrawer.removeAttribute('open'); 4797 // Also hide if it has the hide method 4798 if (searchDrawer.hide && typeof searchDrawer.hide === 'function') { 4799 searchDrawer.hide(false); 4800 } 4801 } 4802 } 4803 4804 // Close cart drawer 4805 if (excludeId !== 'JklCartDrawer') { 4806 const cartDrawer = document.getElementById('JklCartDrawer'); 4807 if (cartDrawer) { 4808 cartDrawer.removeAttribute('active'); 4809 cartDrawer.removeAttribute('open'); 4810 // Also hide if it has the hide method 4811 if (cartDrawer.hide && typeof cartDrawer.hide === 'function') { 4812 cartDrawer.hide(false); 4813 } 4814 } 4815 } 4816 4817 // Close language/localization drawer 4818 if (excludeId !== 'JklLocalizationDrawer') { 4819 const localizationDrawer = document.getElementById('JklLocalizationDrawer'); 4820 if (localizationDrawer && localizationDrawer.hasAttribute('open')) { 4821 localizationDrawer.removeAttribute('open'); 4822 setTimeout(() => { 4823 localizationDrawer.setAttribute('hidden', ''); 4824 }, 700); 4825 } 4826 } 4827
4828 // Remove drawer-active class from body 4829 document.body.classList.remove('drawer-active'); 4830 } 4831 4832 // Toggle drawer (open/close) 4833 window.openLocalizationDrawer = function() { 4834 if (drawer.hasAttribute('open')) { 4835 closeDrawer(); 4836 } else { 4837 // Close all other drawers before opening 4838 closeAllDrawers('JklLocalizationDrawer'); 4839 4840 drawer.removeAttribute('hidden'); 4841 setTimeout(() => { 4842 drawer.setAttribute('open', ''); 4843 }, 10); 4844 } 4845 }; 4846 4847 // Close drawer 4848 function closeDrawer() { 4849 drawer.removeAttribute('open'); 4850 setTimeout(() => { 4851 drawer.setAttribute('hidden', ''); 4852 }, 700); 4853 } 4854 4855 // Close buttons (overlay and close button) 4856 const overlay = drawer.querySelector('.fixed-overlay'); 4857 const closeButton = drawer.querySelector('.drawer__close-btn'); 4858 4859 if (overlay) { 4860 overlay.addEventListener('click', closeDrawer); 4861 } 4862 4863 if (closeButton) { 4864 closeButton.addEventListener('click', closeDrawer); 4865 } 4866 4867 // Close on ESC key 4868 document.addEventListener('keydown', function(e) { 4869 if (e.key === 'Escape' && drawer.hasAttribute('open')) { 4870 closeDrawer(); 4871 } 4872 }); 4873 4874 // Country selector 4875 if (countryForm) { 4876 const countryInput = countryForm.querySelector('input[name="country_code"]'); 4877 const countryButtons = countryForm.querySelectorAll('[data-country-selector]'); 4878 4879 countryButtons.forEach(button => { 4880 button.addEventListener('click', function() { 4881 const value = this.getAttribute('data-value'); 4882 // Save the selected country to localStorage BEFORE form submission 4883 // This is crucial for multi-country markets like EU where multiple countries share the same URL 4884 try { 4885 localStorage.setItem(STORAGE_KEY_COUNTRY, value); 4886 // Note: The market will be updated after the page reloads based on Shopify's response 4887 // We clear the market so it gets re-detected from the new URL 4888 localStorage.removeItem(STORAGE_KEY_MARKET); 4889 } catch (e) { 4890 console.warn('[Localization] Could not save to localStorage:', e); 4891 } 4892 4893 // Ensure the form action uses the current locale-aware URL 4894 const rootUrl = (window.Shopify?.routes?.root || '/').replace(/\/$/, ''); 4895 countryForm.action = rootUrl + '/localization'; 4896 4897 countryInput.value = value; 4898 countryForm.submit(); 4899 }); 4900 }); 4901 } 4902 4903 // Language selector 4904 if (languageForm) { 4905 const languageInput = languageForm.querySelector('input[name="locale_code"]'); 4906 const languageButtons = languageForm.querySelectorAll('[data-language-selector]'); 4907 4908 languageButtons.forEach(button => { 4909 button.addEventListener('click', function() { 4910 const value = this.getAttribute('data-value'); 4911 4912 // Save the selected language to localStorage BEFORE form submission 4913 try { 4914 localStorage.setItem(STORAGE_KEY_LANGUAGE, value); 4915 } catch (e) { 4916 console.warn('[Localization] Could not save to localStorage:', e); 4917 } 4918 4919 languageInput.value = value; 4920 languageForm.submit(); 4921 }); 4922 }); 4923 } 4924})(); 4925</script>
4925 4926
4927<script type="application/ld+json"> 4928 { 4929 "@context": "http://schema.org", 4930 "@type": "Organization", 4931 "name": "Fornasetti Store", 4932 4933 "logo": "https:\/\/www.fornasetti.com\/cdn\/shop\/files\/logo-fornasetti2.svg?v=1760345022\u0026width=500", 4934 4935 "sameAs": [ 4936 "https:\/\/x.com\/FORNASETTIofcl", 4937 "https:\/\/www.facebook.com\/FornasettiOfficial", 4938 "https:\/\/it.pinterest.com\/fornasetti\/", 4939 "https:\/\/www.instagram.com\/fornasetti\/", 4940 "", 4941 "", 4942 "", 4943 "https:\/\/www.youtube.com\/channel\/UC-LRSO3tWyXFzObkPRWWAKQ", 4944 "" 4945 ], 4946 "url": "https:\/\/www.fornasetti.com" 4947 } 4948 </script>
4948 4949 4950 <link 4951 rel="stylesheet" 4952 href="//www.fornasetti.com/cdn/shop/t/6/assets/customer.css?v=60181923438869953341759488153" 4953 media="print" 4954 fetchpriority="low" 4955 onload="this.media='all'" 4956> 4957<link 4958 rel="stylesheet" 4959 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-account-drawer.css?v=97983141574320452481770658239" 4960 media="print" 4961 fetchpriority="low" 4962 onload="this.media='all'" 4963>
4964<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-account-drawer.js?v=90392930594667315771770820851" defer="defer"></script>
4964 4965 4966<account-drawer id="JklAccountDrawer" class="account-drawer drawer drawer--top" shopify-design-mode hidden> 4967 <div class="fixed-overlay" aria-controls="JklAccountDrawer"></div> 4968 <div class="drawer__inner"> 4969 <button 4970 class="drawer__close-btn" 4971 aria-controls="JklAccountDrawer" 4972 type="button" 4973 aria-label="Close account drawer" 4974 > 4975 <svg 4976 xmlns="http://www.w3.org/2000/svg" 4977 aria-hidden="true" 4978 focusable="false" 4979 class="icon icon-close icon--medium" 4980 fill="none" 4981 viewBox="0 0 24 24" 4982> 4983 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4984 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 4985</svg> 4986 4987 </button> 4988 <div class="drawer__content"><div class="account-drawer__bar"> 4989 <div class="jkl-account-drawer__content"> 4990 <div class="jkl-account-drawer__left"> 4991 <h2 class="jkl-account-drawer__heading">GET AN ACCOUNT NOW</h2> 4992 <ul class="jkl-account-drawer__benefits"> 4993 <li>Manage your order history</li> 4994 <li>Gain access to your Wishlist</li> 4995 </ul> 4996 <a href="/en-us/account/register" class="jkl-account-drawer__register-btn"> 4997 Create account 4998 </a> 4999 </div> 5000 5001 <div class="jkl-account-drawer__right"> 5002 <h2 class="jkl-account-drawer__heading">Login</h2> 5003 <p class="jkl-account-drawer__subtitle"> 5004 If you are a registered user, please enter your email and password. 5005 </p><form method="post" action="/en-us/account/login" id="customer_login" accept-charset="UTF-8" data-login-with-shop-sign-in="true" class="jkl-account-drawer__form"><input type="hidden" name="form_type" value="customer_login" /><input type="hidden" name="utf8" value="â" /><div class="jkl-account-drawer__form-row"> 5006 <div class="form-field"> 5007 <input 5008 required 5009 type="email" 5010 name="customer[email]" 5011 id="AccountDrawerEmail" 5012 autocomplete="email" 5013 autocorrect="off" 5014 autocapitalize="off" 5015 data-error-message="Please enter your email address" 5016 data-error-invalid="Please enter a valid email address" 5017 5018 placeholder="Email" 5019 class="form-control" 5020 > 5021 <span class="jkl-account-drawer__field-error" id="AccountDrawerEmailError" style="display: none;" aria-live="polite"> 5022 Please enter your email address 5023 </span> 5024 </div> 5025 5026 <div class="form-field"> 5027 <input 5028 required 5029 type="password" 5030 name="customer[password]" 5031 id="AccountDrawerPassword" 5032 autocomplete="current-password" 5033 data-error-message="Please enter your password" 5034 5035 placeholder="Password" 5036 class="form-control" 5037 > 5038 <span class="jkl-account-drawer__field-error" id="AccountDrawerPasswordError" style="display: none;" aria-live="polite"> 5039 Please enter your password 5040 </span> 5041 </div> 5042 </div> 5043 5044 <button class="jkl-account-drawer__login-btn" type="submit"> 5045 Sign in 5046 </button> 5047 5048 <button type="button" class="jkl-account-drawer__forgot-password" aria-controls="JklResetPasswordModal" data-open-reset-password-modal> 5049 Forgot your password? 5050 </button></form></div> 5051 </div> 5052 </div></div> 5053 </div> 5054</account-drawer> 5055 5056 5057 5058<link 5059 rel="stylesheet"
5060 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-reset-password-modal.css?v=135817593852905085831770658241" 5061 media="print" 5062 fetchpriority="low" 5063 onload="this.media='all'" 5064> 5065 5066<basic-modal id="JklResetPasswordModal" class="drawer modal reset-password-modal" hidden> 5067 <div class="fixed-overlay" aria-controls="JklResetPasswordModal"></div> 5068 <div class="drawer__inner"> 5069 <button 5070 class="drawer__close-btn" 5071 aria-controls="JklResetPasswordModal" 5072 type="button" 5073 aria-label="Close" 5074 > 5075 <svg 5076 xmlns="http://www.w3.org/2000/svg" 5077 aria-hidden="true" 5078 focusable="false" 5079 class="icon icon-close icon--medium" 5080 fill="none" 5081 viewBox="0 0 24 24" 5082> 5083 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 5084 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 5085</svg> 5086 5087 </button> 5088 <div class="drawer__body"> 5089 <div class="reset-password-modal__content"> 5090 <h2 class="reset-password-modal__title"> 5091 Reset password 5092 </h2> 5093 <p class="reset-password-modal__text" id="ResetPasswordModalText"> 5094 Please enter your email address to receive an email with instructions to reset your password. 5095 </p><form method="post" action="/en-us/account/recover" id="ResetPasswordModalForm" accept-charset="UTF-8" class="reset-password-modal__form"><input type="hidden" name="form_type" value="recover_customer_password" /><input type="hidden" name="utf8" value="â" /><div class="reset-password-modal__error" id="ResetPasswordModalFormError" style="display: none;"> 5096 <span class="reset-password-modal__error-message"> 5097 <svg 5098 class="icon icon-error icon--small" 5099 viewBox="0 0 16 16" 5100 fill="none" 5101 xmlns="http://www.w3.org/2000/svg" 5102> 5103 <path d="M9 11.5C9 12.0523 8.55228 12.5 8 12.5C7.44772 12.5 7 12.0523 7 11.5C7 10.9477 7.44772 10.5 8 10.5C8.55228 10.5 9 10.9477 9 11.5Z" fill="currentColor"/> 5104 <path d="M8.75 4.25001C8.75001 3.8358 8.41422 3.50001 8.00001 3.5C7.5858 3.49999 7.25001 3.83578 7.25 4.24999L7.24994 8.74999C7.24993 9.1642 7.58572 9.49999 7.99993 9.5C8.41414 9.50001 8.74993 9.16422 8.74994 8.75001L8.75 4.25001Z" fill="currentColor"/> 5105 <path fill-rule="evenodd" clip-rule="evenodd" d="M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM8 13.5C11.0376 13.5 13.5 11.0376 13.5 8C13.5 4.96243 11.0376 2.5 8 2.5C4.96243 2.5 2.5 4.96243 2.5 8C2.5 11.0376 4.96243 13.5 8 13.5Z" fill="currentColor"/> 5106</svg> 5107 5108 <span id="ResetPasswordModalFormErrorText"></span> 5109 </span> 5110 </div> 5111 5112 <div class="reset-password-modal__form-content" id="ResetPasswordModalFormContent"> 5113 <div class="reset-password-modal__field"> 5114 <div class="reset-password-modal__field-row"> 5115 <label for="ResetPasswordModalEmail" class="reset-password-modal__label"> 5116 Email* 5117 </label> 5118 <input 5119 required 5120 type="email" 5121 value="" 5122 name="email" 5123 id="ResetPasswordModalEmail" 5124 autocorrect="off" 5125 autocapitalize="off" 5126 autocomplete="email" 5127 class="reset-password-modal__input" 5128 > 5129 </div> 5130 <span class="reset-password-modal__field-error" id="ResetPasswordModalEmailError" style="display: none;" aria-live="polite"> 5131 Please enter your email address 5132 </span> 5133 </div> 5134 5135 <button class="reset-password-modal__submit-btn" type="submit" id="ResetPasswordModalSubmitBtn"> 5136 Send 5137 </button> 5138 </div></form></div> 5139 </div> 5140 </div> 5141</basic-modal> 5142
5143<script> 5144(function() { 5145 const modal = document.getElementById('JklResetPasswordModal'); 5146 if (!modal) return; 5147 5148 // Email validation regex pattern 5149 const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; 5150 5151 const form = modal.querySelector('#ResetPasswordModalForm'); 5152 const emailInput = modal.querySelector('#ResetPasswordModalEmail'); 5153 const emailError = modal.querySelector('#ResetPasswordModalEmailError'); 5154 const formContent = modal.querySelector('#ResetPasswordModalFormContent'); 5155 const formError = modal.querySelector('#ResetPasswordModalFormError'); 5156 const formErrorText = modal.querySelector('#ResetPasswordModalFormErrorText'); 5157 const submitBtn = modal.querySelector('#ResetPasswordModalSubmitBtn'); 5158 const modalText = modal.querySelector('#ResetPasswordModalText'); 5159 5160 if (!form || !emailInput) return; 5161 5162 // Success message 5163 const successMessage = 'Thank you for providing your email address. If the email address entered is registered in our database, we will shortly send you a link to reset your password.'; 5164 5165 // Track touched fields 5166 let touched = false; 5167 5168 // --- Hidden iframe for native form submission --- 5169 const iframeName = 'ResetPasswordIframe'; 5170 let iframe = document.getElementById(iframeName); 5171 if (!iframe) { 5172 iframe = document.createElement('iframe'); 5173 iframe.id = iframeName; 5174 iframe.name = iframeName; 5175 iframe.style.display = 'none'; 5176 document.body.appendChild(iframe); 5177 } 5178 // Point the form at the hidden iframe so navigation happens there 5179 form.setAttribute('target', iframeName); 5180 5181 // When the iframe finishes loading after submission, show success 5182 let formSubmitted = false; 5183 iframe.addEventListener('load', function() { 5184 if (!formSubmitted) return; 5185 formSubmitted = false; 5186 showSuccess(); 5187 }); 5188 5189 // Validate email 5190 const validateEmail = () => { 5191 const emailValue = emailInput.value.trim(); 5192 5193 if (!emailValue) { 5194 showFieldError('Please enter your email address'); 5195 return false; 5196 } else if (!emailRegex.test(emailValue)) { 5197 showFieldError('Please enter a valid email address'); 5198 return false; 5199 } else { 5200 hideFieldError(); 5201 return true; 5202 } 5203 }; 5204 5205 const showFieldError = (message) => { 5206 emailInput.classList.add('reset-password-modal__input--error'); 5207 emailInput.setAttribute('aria-invalid', 'true'); 5208 if (emailError) { 5209 emailError.textContent = message; 5210 emailError.style.display = 'block'; 5211 } 5212 }; 5213 5214 const hideFieldError = () => { 5215 emailInput.classList.remove('reset-password-modal__input--error'); 5216 emailInput.removeAttribute('aria-invalid'); 5217 if (emailError) { 5218 emailError.style.display = 'none'; 5219 } 5220 }; 5221 5222 const showFormError = (message) => { 5223 if (formError && formErrorText) { 5224 formErrorText.textContent = message; 5225 formError.style.display = 'block'; 5226 } 5227 }; 5228 5229 const hideFormError = () => { 5230 if (formError) { 5231 formError.style.display = 'none'; 5232 } 5233 }; 5234 5235 const showSuccess = () => { 5236 // Hide the form content 5237 if (formContent) { 5238 formContent.style.display = 'none'; 5239 } 5240 // Update the text to show success message 5241 if (modalText) { 5242 modalText.textContent = successMessage; 5243 } 5244 // Hide any form errors 5245 hideFormError(); 5246 // Add success class to modal for wider width 5247 modal.classList.add('reset-password-modal--success'); 5248 }; 5249 5250 // Form submit â only prevent if validation fails; otherwise let it submit natively (to the iframe) 5251 form.addEventListener('submit', function(e) { 5252 touched = true; 5253 5254 if (!validateEmail()) { 5255 e.preventDefault(); 5256 return false; 5257 } 5258 5259 // Show loading state (form will submit natively to the hidden iframe) 5260 if (submitBtn) { 5261 submitBtn.disabled = true; 5262 submitBtn.textContent = '...'; 5263 } 5264 5265 hideFormError(); 5266 formSubmitted = true; 5267 5268 // Do NOT call e.preventDefault() â let Shopify's CAPTCHA and native submission proceed 5269 }); 5270 5271 // Blur validation 5272 emailInput.addEventListener('blur', () => { 5273 touched = true; 5274 validateEmail(); 5275 }); 5276 5277 // Input validation 5278 emailInput.addEventListener('input', () => { 5279 const emailValue = emailInput.value.trim(); 5280 if (emailValue && emailRegex.test(emailValue)) { 5281 hideFieldError(); 5282 } else if (touched) { 5283 validateEmail(); 5284 } 5285 }); 5286 5287 // Focus input when modal opens 5288 modal.addEventListener('transitionend', () => { 5289 if (modal.hasAttribute('open') && emailInput) { 5290 emailInput.focus(); 5291 } 5292 }); 5293 5294 // Reset form state when modal is closed 5295 const resetFormState = () => { 5296 if (formContent) { 5297 formContent.style.display = ''; 5298 } 5299 if (modalText) { 5300 modalText.textContent = 'Please enter your email address to receive an email with instructions to reset your password.'; 5301 } 5302 if (emailInput) { 5303 emailInput.value = ''; 5304 } 5305 // Remove success class to reset width 5306 modal.classList.remove('reset-password-modal--success'); 5307 if (submitBtn) { 5308 submitBtn.disabled = false;
5309 submitBtn.textContent = 'Send'; 5310 } 5311 hideFieldError(); 5312 hideFormError(); 5313 touched = false; 5314 formSubmitted = false; 5315 }; 5316 5317 // Listen for modal close 5318 const closeBtn = modal.querySelector('.drawer__close-btn'); 5319 const overlay = modal.querySelector('.fixed-overlay'); 5320 5321 if (closeBtn) { 5322 closeBtn.addEventListener('click', () => { 5323 setTimeout(resetFormState, 300); 5324 }); 5325 } 5326 5327 if (overlay) { 5328 overlay.addEventListener('click', () => { 5329 setTimeout(resetFormState, 300); 5330 }); 5331 } 5332})(); 5333</script>
5333 5334 5335 </div><div id="shopify-section-sections--26626610561371__jkl_announcement_bar_tPkC9N" class="shopify-section shopify-section-group-header-group announcement-bar-section"><link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-announcement-bar.css?v=180572474670234854681768474489" rel="stylesheet" type="text/css" media="all" /> 5336<div 5337 data-section-index="2" 5338 class="announcement-bar color-scheme-1 page-width section--padding" 5339 style="--section-padding-top: 12px;--section-padding-bottom: 12px;--announcement-font-size: 10px;--announcement-font-weight: 400;" 5340 > 5341 <announcement-bar 5342 class="swiper announcement-bar__wrapper block" 5343 5344 autoplay autoplay-speed="5" 5345 5346 style="--content-width: 100%;" 5347 > 5348 <button class="announcement-bar__close" aria-label="Close announcement"> 5349 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"> 5350 <path d="M12 4L4 12M4 4L12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 5351 </svg> 5352 </button> 5353 <div class="swiper-wrapper items-center"><div class="swiper-slide" ><div class="announcement-bar__content rte text-center"><p class="announcement-bar__text">ENJOY FREE SHIPPING OVER 300â¬. APPLICABLE ON ELIGIBLE ITEMS.</p></div></div><div class="swiper-slide" ><a class="announcement-bar__content rte text-center" href="/en-us/pages/newsletter"><p class="announcement-bar__text">SUBSCRIBE AND GET 10% OFF YOUR FIRST ORDER!</p></a></div></div> 5354 </announcement-bar> 5355 </div> 5356 </div> 5357<!-- END sections: header-group --> 5358 5359 <main id="MainContent" class="main-content content-for-layout focus-none" role="main" tabindex="-1"> 5360 <div id="shopify-section-template--26626610692443__breadcrumbs" class="shopify-section"> 5361 5362 5363 <div 5364 id="template--26626610692443__breadcrumbs" 5365 class="section--breadcrumb" 5366 data-section-type="breadcrumb" 5367 data-section-id="template--26626610692443__breadcrumbs" 5368 > 5369 5370 <div class="breadcrumbs-wrapper"> 5371 <nav 5372 class="breadcrumbs justify-center md:justify-start" 5373 role="navigation" 5374 aria-label="breadcrumbs" 5375 > 5376 5377 5378 5379 5380 5381 5382 <span class="breadcrumbs--last">Search</span> 5383 5384 5385 </nav> 5386 5387 5388 5389 </div> 5390 </div> 5391 5392
5393<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-breadcrumbs-nav.js?v=141788427128261445091763570836" defer="defer"></script>
5393 5394<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-breadcrumbs.css?v=7779274341379298241768474490" rel="stylesheet" type="text/css" media="all" /> 5395 5396 5397</div><div id="shopify-section-template--26626610692443__main" class="shopify-section search-section"><link href="//www.fornasetti.com/cdn/shop/t/6/assets/collection.css?v=22124246789111722991765277675" rel="stylesheet" type="text/css" media="all" /> 5398<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-collection.css?v=183072563430358121501781169820" rel="stylesheet" type="text/css" media="all" /> 5399<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-quickview.css?v=53093427594506396421771343773" rel="stylesheet" type="text/css" media="all" /> 5400<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-fake-variant-swatches.css?v=10641662562787677481768832517" rel="stylesheet" type="text/css" media="all" /> 5401<link href="//www.fornasetti.com/cdn/shop/t/6/assets/component-article-card.css?v=123167926039813402641759488152" rel="stylesheet" type="text/css" media="all" /> 5402
5403<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-facets.js?v=159605795552536023501765968680" defer="defer"></script>
vendor: 1 bytes, line 5403
5403
5404<script src="//www.fornasetti.com/cdn/shop/t/6/assets/show-more.js?v=135784227224860024771759488153" defer="defer"></script>
vendor: 1 bytes, line 5404
5404
5405<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-quickview.js?v=125270946886677213841771343774" defer="defer"></script>
vendor: 1 bytes, line 5405
5405
5406<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-search.js?v=26994676672337739091770836231" defer="defer"></script>
5406<div class="section-divider page-width"> 5407 <div class="border-top no-empty"></div> 5408 </div> 5409<div class="facet-drawer-overlay" id="FacetDrawerOverlay" hidden></div> 5410
5411<script> 5412 // Backdrop management for facet and sort drawers 5413 document.addEventListener('DOMContentLoaded', function() { 5414 const facetDrawer = document.getElementById('FacetDrawer'); 5415 const sortDrawer = document.getElementById('FacetSortDrawer'); 5416 const overlay = document.getElementById('FacetDrawerOverlay'); 5417 5418 if (!overlay) return; 5419 5420 // Function to check if any drawer is open 5421 function isAnyDrawerOpen() { 5422 const facetOpen = facetDrawer && (facetDrawer.hasAttribute('active') || facetDrawer.hasAttribute('open')); 5423 const sortOpen = sortDrawer && (sortDrawer.hasAttribute('active') || sortDrawer.hasAttribute('open')); 5424 return facetOpen || sortOpen; 5425 } 5426 5427 // Function to update overlay visibility 5428 function updateOverlay() { 5429 if (isAnyDrawerOpen()) { 5430 overlay.removeAttribute('hidden'); 5431 } else { 5432 overlay.setAttribute('hidden', ''); 5433 } 5434 } 5435 5436 // Function to close all drawers 5437 function closeAllDrawers() { 5438 if (facetDrawer) { 5439 facetDrawer.removeAttribute('active'); 5440 facetDrawer.removeAttribute('open'); 5441 facetDrawer.setAttribute('hidden', ''); 5442 } 5443 if (sortDrawer) { 5444 sortDrawer.removeAttribute('active'); 5445 sortDrawer.removeAttribute('open'); 5446 sortDrawer.setAttribute('hidden', ''); 5447 } 5448 } 5449 5450 // Observe facet drawer state changes 5451 if (facetDrawer) { 5452 const facetObserver = new MutationObserver(updateOverlay); 5453 facetObserver.observe(facetDrawer, { attributes: true }); 5454 } 5455 5456 // Observe sort drawer state changes 5457 if (sortDrawer) { 5458 const sortObserver = new MutationObserver(updateOverlay); 5459 sortObserver.observe(sortDrawer, { attributes: true }); 5460 } 5461 5462 // Close all drawers when clicking on overlay 5463 overlay.addEventListener('click', closeAllDrawers); 5464 }); 5465</script>
5465 5466<div 5467 class="section--padding color-scheme-1" 5468 style="--section-padding-top: 0px;--section-padding-bottom: 100px;" 5469> 5470 <div class="collection"><div class="collection__content flex"> 5471 <div class="flex flex-col flex-grow show-toolbar" id="ProductGridWrapper"> 5472 <div class="grid gap-5 z-10 flex"></div><div id="ProductGridContainer"><div class="empty-state flex flex-col items-center justify-center gap-6 text-center"> 5473 <div class="gap-3 flex flex-col items-center justify-center text-center"><svg xmlns="http://www.w3.org/2000/svg" width="60" height="60" viewBox="0 0 60 60" fill="none"> 5474 <path d="M39.375 45L41.25 50.625" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 5475 <path d="M30 45V52.5" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 5476 <path d="M20.625 45L18.75 50.625" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 5477 <path d="M41.4844 16.1297C50.2242 17.9555 56.25 21.7969 56.25 26.25C56.25 32.4633 44.4984 37.5 30 37.5C15.5016 37.5 3.75 32.4633 3.75 26.25C3.75 21.7969 9.81094 17.932 18.5977 16.1133" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 5478 <path d="M16.875 23.4141C16.8754 24.2579 17.1615 25.0767 17.6867 25.7372C18.2119 26.3977 18.9452 26.861 19.7672 27.0516C23.1271 27.7917 26.5596 28.1518 30 28.125C33.4388 28.1517 36.8698 27.7917 40.2281 27.0516C41.0498 26.8596 41.7828 26.3961 42.3084 25.736C42.8341 25.076 43.1218 24.2579 43.125 23.4141V22.5C43.1252 20.7617 42.78 19.0407 42.1096 17.4369C41.4392 15.8331 40.4569 14.3784 39.2197 13.1574C37.9825 11.9363 36.515 10.9732 34.9026 10.3239C33.2901 9.67456 31.5647 9.35203 29.8266 9.375C22.6125 9.46875 16.875 15.4828 16.875 22.6945V23.4141Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 5479</svg> 5480<p class="h4">Search</p> 5481 <p class="m-0">Check the spelling or use a different word or phrase.</p> 5482 </div> 5483 </div></div> 5484 </div> 5485 </div></div> 5486</div> 5487 5488 5489 5490</div> 5491 </main> 5492 5493 <!-- BEGIN sections: footer-group --> 5494<div id="shopify-section-sections--26626610528603__jkl-footer" class="shopify-section shopify-section-group-footer-group"> 5495<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-footer.css?v=84446558100353244781771338615" rel="stylesheet" type="text/css" media="all" /> 5496<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-social-icons.css?v=68066986523092163811762267584" rel="stylesheet" type="text/css" media="all" /> 5497<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-language-modal.css?v=40704692200537614091768474500" rel="stylesheet" type="text/css" media="all" /> 5498<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-country-modal.css?v=69356038269502662171768474496" rel="stylesheet" type="text/css" media="all" /> 5499<link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-country-language-modal.css?v=72341828129106921351768474495" rel="stylesheet" type="text/css" media="all" />
5500<script src="//www.fornasetti.com/cdn/shop/t/6/assets/footer.js?v=56475581656799193111759488156" defer="defer"></script>
5500<footer class="footer color-scheme-1"> 5501 5502 <div class="footer__wrapper"><div class="footer__top page-width"> 5503 <div class="footer__top-wrapper f-flex"><div 5504 class="footer-block footer-block--jkl_newsletter f-column w-full lg:order-none order-first" 5505 style="--col-width:100%;--form-width: 465px;" 5506 5507 ><motion-element class="block" data-motion="fade-up" data-motion-delay="50"><div class="footer-jkl-newsletter text-center"><div class="footer-jkl-newsletter__image-wrapper flex justify-center"> 5508 <div 5509 class="footer-jkl-newsletter__image media-wrapper" 5510 style="width: 86px" 5511 > 5512 <img src="//www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=165 165w, //www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=360 360w, //www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=535 535w, //www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=750 750w, //www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=940 940w, //www.fornasetti.com/cdn/shop/files/fornasetti_hand_with_brush_icon_1a7ec61e-a21e-4292-b9f0-dfcfee6177a6.svg?v=1761894770&width=1100 1100w" width="1100" height="627" loading="lazy" class="motion-reduce" is="image-lazy"> 5513 </div> 5514 </div><h3 class="footer-block__heading inline-richtext h6"> 5515 5516Subscribe to our Newsletter 5517 </h3><div class="footer-jkl-newsletter__form" style="--form-width: 465px;"> 5518 <link href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-newsletter-form.css?v=136648413431160570141775228646" rel="stylesheet" type="text/css" media="all" /> 5519<div class="jkl-newsletter-form"><form method="post" action="/en-us/contact#ContactSubscribe-jkl_newsletter_block" id="ContactSubscribe-jkl_newsletter_block" accept-charset="UTF-8" class="contact-form" is="newsletter-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="contact[tags]" value="newsletter"> 5520 5521 <div class="jkl-newsletter-form__field-wrapper"> 5522 <div class="jkl-newsletter-form__field"> 5523 <label class="visually-hidden" for="NewsletterForm-jkl_newsletter_block"> 5524 Email 5525 </label> 5526 <input 5527 id="NewsletterForm-jkl_newsletter_block" 5528 type="email" 5529 name="contact[email]" 5530 class="jkl-newsletter-form__input" 5531 value="" 5532 placeholder="Your E-mail" 5533 aria-required="true" 5534 autocorrect="off" 5535 autocapitalize="off" 5536 autocomplete="email" 5537 5538 required 5539 ><p 5540 class="jkl-newsletter-form__error jkl-newsletter-form__email-error" 5541 id="Newsletter-email-error--jkl_newsletter_block" 5542 role="alert" 5543 style="display: none;" 5544 > 5545 Email format is wrong. Please check again 5546 </p> 5547 </div> 5548 5549 <div class="jkl-newsletter-form__consent jkl-newsletter-form__expandable"> 5550 <p class="jkl-newsletter-form__consent-text text-sm"> 5551 By registering I accept the 5552 <a href="/pages/terms-and-conditions" class="jkl-newsletter-form__consent-link"> 5553 <strong>Terms and Conditions</strong> 5554 </a> 5555 and I give my consent to receive Fornasetti e-mails on the latest collections, events and campaigns. 5556 </p> 5557 </div> 5558 5559 5560 5561 <div class="jkl-newsletter-form__bottom-row jkl-newsletter-form__expandable"><div class="jkl-newsletter-form__submit-wrapper"> 5562 <button 5563 type="submit" 5564 class="btn jkl-newsletter-form__submit btn--primary" 5565 name="commit" 5566 id="Newsletter-submit--jkl_newsletter_block" 5567 > 5568 Subscribe 5569 </button> 5570 </div> 5571 </div> 5572 </div> 5573 5574 <basic-modal class="drawer modal modal--newsletter-alert" id="NewsletterAlertModal-jkl_newsletter_block" hidden> 5575 <div 5576 class="fixed-overlay" 5577 aria-controls="NewsletterAlertModal-jkl_newsletter_block" 5578 ></div> 5579 <div class="drawer__inner v-scrollable"> 5580 <button 5581 class="drawer__close-btn z-1" 5582 aria-controls="NewsletterAlertModal-jkl_newsletter_block" 5583 aria-label="Close" 5584 > 5585 <svg 5586 xmlns="http://www.w3.org/2000/svg" 5587 aria-hidden="true" 5588 focusable="false" 5589 class="icon icon-close icon--medium" 5590 fill="none" 5591 viewBox="0 0 24 24" 5592> 5593 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 5594 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 5595</svg> 5596 5597 </button> 5598 <div class="drawer__body no-empty"> 5599 <p 5600 class="form-message alert blocks-radius h6 hidden" 5601 id="Newsletter-error-subscribed--jkl_newsletter_block" 5602 > 5603 <svg 5604 class="icon icon-error icon--medium" 5605 viewBox="0 0 16 16" 5606 fill="none" 5607 xmlns="http://www.w3.org/2000/svg" 5608> 5609 <path d="M9 11.5C9 12.0523 8.55228 12.5 8 12.5C7.44772 12.5 7 12.0523 7 11.5C7 10.9477 7.44772 10.5 8 10.5C8.55228 10.5 9 10.9477 9 11.5Z" fill="currentColor"/> 5610 <path d="M8.75 4.25001C8.75001 3.8358 8.41422 3.50001 8.00001 3.5C7.5858 3.49999 7.25001 3.83578 7.25 4.24999L7.24994 8.74999C7.24993 9.1642 7.58572 9.49999 7.99993 9.5C8.41414 9.50001 8.74993 9.16422 8.74994 8.75001L8.75 4.25001Z" fill="currentColor"/> 5611 <path fill-rule="evenodd" clip-rule="evenodd" d="M8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C4.13401 1 1 4.13401 1 8C1 11.866 4.13401 15 8 15ZM8 13.5C11.0376 13.5 13.5 11.0376 13.5 8C13.5 4.96243 11.0376 2.5 8 2.5C4.96243 2.5 2.5 4.96243 2.5 8C2.5 11.0376 4.96243 13.5 8 13.5Z" fill="currentColor"/> 5612</svg> 5613 5614You have already subscribed!</p></div> 5615 </div> 5616 </basic-modal></form></div> 5617
5618<script> 5619 (function() { 5620 const emailInput = document.getElementById('NewsletterForm-jkl_newsletter_block'); 5621 const languageSelect = document.getElementById('NewsletterLanguage-jkl_newsletter_block'); 5622 const form = document.getElementById('ContactSubscribe-jkl_newsletter_block'); 5623 const expandableElements = document.querySelectorAll('#ContactSubscribe-jkl_newsletter_block .jkl-newsletter-form__expandable'); 5624 let hasExpanded = false; 5625 5626 if (emailInput && expandableElements.length > 0) { 5627 emailInput.addEventListener('click', function() { 5628 if (!hasExpanded) { 5629 expandableElements.forEach(function(el) { 5630 el.classList.add('jkl-newsletter-form__expandable--visible'); 5631 }); 5632 hasExpanded = true; 5633 } 5634 }); 5635 } 5636 5637 if (emailInput) { 5638 const emailError = document.getElementById('Newsletter-email-error--jkl_newsletter_block'); 5639 let emailHasInteracted = false; 5640 5641 function validateEmail() { 5642 if (!emailHasInteracted) return true; 5643 5644 const emailValue = emailInput.value.trim(); 5645 5646 // Email validation pattern: checks for basic email format 5647 // ^[^\s@]+ - One or more characters that are not whitespace or @ (local part) 5648 // @ - Literal @ symbol 5649 // [^\s@]+ - One or more characters that are not whitespace or @ (domain name) 5650 // \. - Literal dot (escaped) 5651 // [^\s@]+$ - One or more characters that are not whitespace or @ (top-level domain) 5652 const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; 5653 const isValid = emailValue !== '' && emailRegex.test(emailValue); 5654 5655 if (!isValid) { 5656 emailInput.setAttribute('aria-invalid', 'true'); 5657 if (emailError) { 5658 emailError.style.display = 'block'; 5659 } 5660 emailInput.classList.add('jkl-newsletter-form__input--error'); 5661 } else { 5662 emailInput.removeAttribute('aria-invalid'); 5663 if (emailError) { 5664 emailError.style.display = 'none'; 5665 } 5666 emailInput.classList.remove('jkl-newsletter-form__input--error'); 5667 } 5668 5669 return isValid; 5670 } 5671 5672 function markEmailAsInteracted() { 5673 if (!emailHasInteracted) { 5674 emailHasInteracted = true; 5675 validateEmail(); 5676 } 5677 } 5678 5679 emailInput.addEventListener('change', function() { 5680 emailHasInteracted = true; 5681 validateEmail(); 5682 }); 5683 5684 emailInput.addEventListener('blur', function() { 5685 emailHasInteracted = true; 5686 validateEmail(); 5687 }); 5688 5689 emailInput.addEventListener('touchstart', markEmailAsInteracted, { passive: true }); 5690 emailInput.addEventListener('click', markEmailAsInteracted); 5691 5692 if (form) { 5693 form.addEventListener('submit', function(e) { 5694 emailHasInteracted = true; 5695 if (!validateEmail()) { 5696 e.preventDefault(); 5697 e.stopPropagation(); 5698 emailInput.focus(); 5699 } 5700 }); 5701 } 5702 } 5703 5704 if (languageSelect) { 5705 const languageError = document.getElementById('Newsletter-language-error--jkl_newsletter_block'); 5706 let hasInteracted = false; 5707 5708 function validateLanguage() { 5709 if (!hasInteracted) return true; 5710 5711 const isValid = languageSelect.value !== ''; 5712 5713 if (!isValid) { 5714 languageSelect.setAttribute('aria-invalid', 'true'); 5715 if (languageError) { 5716 languageError.style.display = 'block'; 5717 } 5718 languageSelect.classList.add('jkl-newsletter-form__language-select--error'); 5719 } else { 5720 languageSelect.removeAttribute('aria-invalid'); 5721 if (languageError) { 5722 languageError.style.display = 'none'; 5723 } 5724 languageSelect.classList.remove('jkl-newsletter-form__language-select--error'); 5725 } 5726 5727 return isValid; 5728 } 5729 5730 function markAsInteracted() { 5731 if (!hasInteracted) { 5732 hasInteracted = true; 5733 validateLanguage(); 5734 } 5735 } 5736 5737 languageSelect.addEventListener('change', function() { 5738 hasInteracted = true; 5739 validateLanguage(); 5740 }); 5741 5742 languageSelect.addEventListener('blur', function() { 5743 hasInteracted = true; 5744 validateLanguage(); 5745 }); 5746 5747 languageSelect.addEventListener('touchstart', markAsInteracted, { passive: true }); 5748 languageSelect.addEventListener('click', markAsInteracted); 5749 5750 if (form) { 5751 form.addEventListener('submit', function(e) { 5752 if (languageSelect.value === '') { 5753 hasInteracted = true; 5754 if (!validateLanguage()) { 5755 e.preventDefault(); 5756 e.stopPropagation(); 5757 languageSelect.focus(); 5758 } 5759 } 5760 }); 5761 } 5762 } 5763 })(); 5764</script>
5764 5765 5766 </div> 5767 </div></motion-element></div><div 5768 class="footer-block footer-block--image_text f-column w-full" 5769 style="--col-width:100%;" 5770 5771 ><motion-element class="block" data-motion="fade-up" data-motion-delay="100"><div 5772 id="Details-image_text_rgPWqr-sections--26626610528603__jkl-footer" 5773 5774 class="accordion-details footer-accordion-details" 5775 ><div class="accordion-details__content footer-image-box"> 5776 5777 <div 5778 class="footer-image-box__image media-wrapper footer-image-box__image--full-width" 5779 5780 > 5781 <img src="//www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=1100" alt="" srcset="//www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=165 165w, //www.fornasetti.com/cdn/shop/files/logo-fornasett
5781i2.svg?v=1760345022&width=360 360w, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=535 535w, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=750 750w, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=940 940w, //www.fornasetti.com/cdn/shop/files/logo-fornasetti2.svg?v=1760345022&width=1100 1100w" width="1100" height="206" loading="lazy" class="motion-reduce" is="image-lazy"> 5782 </div> 5783 5784</div> 5785 </div></motion-element></div><div 5786 class="footer-block footer-block--menu f-column w-full" 5787 style="--col-width:65%;" 5788 5789 ><motion-element class="block" data-motion="fade-up" data-motion-delay="150"><div 5790 id="Details-menu_AqhcBc-sections--26626610528603__jkl-footer" 5791 5792 class="accordion-details footer-accordion-details" 5793 ><ul class="accordion-details__content linklist linklist--horizontal list-unstyled" style="text-transform: uppercase;"><li> 5794 <a 5795 href="/en-us/pages/customer-care" 5796 class="reversed-link" 5797 > 5798 Customer service 5799 </a> 5800 </li><li> 5801 <a 5802 href="https://fornasetti.zendesk.com/hc/articles/45322201815572" 5803 class="reversed-link" 5804 > 5805 Withdrawal Form 5806 </a> 5807 </li><li> 5808 <a 5809 href="/en-us/pages/store-locator" 5810 class="reversed-link" 5811 > 5812 Store locator 5813 </a> 5814 </li><li> 5815 <a 5816 href="/en-us/pages/bespoke-services" 5817 class="reversed-link" 5818 > 5819 Bespoke services 5820 </a> 5821 </li><li> 5822 <a 5823 href="/en-us/pages/trade" 5824 class="reversed-link" 5825 > 5826 Trade 5827 </a> 5828 </li><li> 5829 <a 5830 href="/en-us/pages/vintage" 5831 class="reversed-link" 5832 > 5833 Vintage 5834 </a> 5835 </li></ul> 5836 </div> 5837</motion-element></div><div 5838 class="footer-block footer-block--socials f-column w-full" 5839 style="--col-width:35%;" 5840 5841 ><motion-element class="block" data-motion="fade-up" data-motion-delay="200"><div 5842 id="Details-socials_W37NAQ-sections--26626610528603__jkl-footer" 5843 5844 class="accordion-details footer-accordion-details" 5845 ><div class="accordion-details__content flex justify-end"> 5846<ul class="list-unstyled flex gap-x-4 gap-y-2 items-center socials footer__list-social" role="list"><li class="social__item inline-flex"> 5847 <a href="https://www.facebook.com/FornasettiOfficial" class="social__link inline-flex"><svg 5848 aria-hidden="true" 5849 focusable="false" 5850 role="presentation" 5851 class="icon icon-facebook icon--medium" 5852 viewBox="0 0 24 24" 5853 xmlns="http://www.w3.org/2000/svg" 5854> 5855 <path fill-rule="evenodd" clip-rule="evenodd" d="M4 12.4972C4 16.6986 7.06844 20.1919 11.081 20.9L11.1284 20.8621C11.1126 20.8591 11.0968 20.856 11.081 20.8528V14.8575H8.9567V12.4972H11.081V10.6089C11.081 8.48464 12.45 7.30447 14.3855 7.30447C14.9992 7.30447 15.6601 7.39888 16.2737 7.4933V9.6648H15.188C14.1494 9.6648 13.9134 10.1841 13.9134 10.845V12.4972H16.1793L15.8017 14.8575H13.9134V20.8528C13.8976 20.856 13.8818 20.8591 13.866 20.8621L13.9134 20.9C17.926 20.1919 20.9944 16.6986 20.9944 12.4972C20.9944 7.82374 17.1707 4 12.4972 4C7.82374 4 4 7.82374 4 12.4972Z" fill="currentColor"/> 5856</svg> 5857<span class="visually-hidden">Facebook</span> 5858 </a> 5859 </li><li class="social__item inline-flex"> 5860 <a href="https://www.instagram.com/fornasetti/" class="social__link inline-flex"><svg 5861 aria-hidden="true" 5862 focusable="false" 5863 role="presentation" 5864 class="icon icon-instagram icon--medium" 5865 viewBox="0 0 24 24" 5866 xmlns="http://www.w3.org/2000/svg" 5867> 5868 <path d="M11.7255 3C9.35597 3 9.0586 3.01036 8.12796 3.05271C7.19914 3.09525 6.56515 3.2423 6.0104 3.45806C5.43656 3.68091 4.9498 3.97902 4.46485 4.46416C3.97953 4.94913 3.68144 5.43591 3.45787 6.00958C3.24157 6.56453 3.09434 7.19872 3.05253 8.12721C3.01091 9.05788 3 9.35544 3 11.725C3 14.0946 3.01054 14.391 3.05271 15.3217C3.09543 16.2506 3.24248 16.8846 3.45805 17.4393C3.68107 18.0132 3.97917 18.5 4.4643 18.9849C4.94907 19.4703 5.43584 19.7691 6.00931 19.9919C6.56442 20.2077 7.1986 20.3548 8.12724 20.3973C9.05787 20.4396 9.35506 20.45 11.7244 20.45C14.094 20.45 14.3905 20.4396 15.3211 20.3973C16.25 20.3548 16.8847 20.2077 17.4398 19.9919C18.0135 19.7691 18.4995 19.4703 18.9843 18.9849C19.4696 18.5 19.7677 18.0132 19.9912 17.4395C20.2057 16.8846 20.353 16.2504 20.3966 15.3219C20.4384 14.3912 20.4493 14.0946 20.4493 11.725C20.4493 9.35544 20.4384 9.05806 20.3966 8.12739C20.353 7.19854 20.2057 6.56453 19.9912 6.00976C19.7677 5.43591 19.4696 4.94913 18.9843 4.46416C18.4989 3.97884 18.0136 3.68073 17.4393 3.45806C16.8831 3.2423 16.2487 3.09525 15.3199 3.05271C14.3892 3.01036 14.093 3 11.7227 3H11.7255ZM10.9428 4.57232C11.1751 4.57195 11.4343 4.57232 11.7255 4.57232C14.055 4.57232 14.3311 4.58068 15.251 4.62249C16.1016 4.66139 16.5633 4.80353 16.8709 4.92295C17.278 5.08109
586817.5683 5.27014 17.8735 5.57551C18.1789 5.88089 18.3679 6.17172 18.5264 6.57889C18.6458 6.88608 18.7881 7.34778 18.8269 8.19846C18.8687 9.11822 18.8777 9.39452 18.8777 11.723C18.8777 14.0515 18.8687 14.3278 18.8269 15.2475C18.788 16.0982 18.6458 16.5599 18.5264 16.8671C18.3683 17.2743 18.1789 17.5642 17.8735 17.8694C17.5681 18.1748 17.2782 18.3638 16.8709 18.522C16.5637 18.6419 16.1016 18.7837 15.251 18.8226C14.3313 18.8644 14.055 18.8735 11.7255 18.8735C9.39578 18.8735 9.11968 18.8644 8.19994 18.8226C7.34928 18.7833 6.8876 18.6412 6.57987 18.5218C6.17271 18.3636 5.88189 18.1746 5.57652 17.8692C5.27116 17.5638 5.08212 17.2737 4.92362 16.8664C4.8042 16.5592 4.66188 16.0975 4.62316 15.2468C4.58136 14.3271 4.573 14.0508 4.573 11.7208C4.573 9.39088 4.58136 9.11604 4.62316 8.19628C4.66206 7.3456 4.8042 6.8839 4.92362 6.57634C5.08176 6.16917 5.27116 5.87834 5.57652 5.57297C5.88189 5.26759 6.17271 5.07855 6.57987 4.92005C6.88741 4.80008 7.34928 4.6583 8.19994 4.61921C9.0048 4.58286 9.31671 4.57195 10.9428 4.57014V4.57232ZM16.3827 6.02103C15.8046 6.02103 15.3357 6.48945 15.3357 7.06767C15.3357 7.6457 15.8046 8.11467 16.3827 8.11467C16.9607 8.11467 17.4296 7.6457 17.4296 7.06767C17.4296 6.48964 16.9607 6.02067 16.3827 6.02067V6.02103ZM11.7255 7.24435C9.25109 7.24435 7.24495 9.25055 7.24495 11.725C7.24495 14.1994 9.25109 16.2047 11.7255 16.2047C14.1998 16.2047 16.2053 14.1994 16.2053 11.725C16.2053 9.25055 14.1997 7.24435 11.7253 7.24435H11.7255ZM11.7255 8.81667C13.3315 8.81667 14.6337 10.1187 14.6337 11.725C14.6337 13.3311 13.3315 14.6333 11.7255 14.6333C10.1192 14.6333 8.81722 13.3311 8.81722 11.725C8.81722 10.1187 10.1192 8.81667 11.7255 8.81667Z" fill="currentColor"/> 5869</svg> 5870<span class="visually-hidden">Instagram</span> 5871 </a> 5872 </li><li class="social__item inline-flex"> 5873 <a href="https://x.com/FORNASETTIofcl" class="social__link inline-flex"><svg 5874 aria-hidden="true" 5875 focusable="false" 5876 role="presentation" 5877 class="icon icon-twitter icon--medium" 5878 viewBox="0 0 24 24" 5879 xmlns="http://www.w3.org/2000/svg" 5880> 5881 <path d="M3.04221 4L9.72655 12.9408L3 20.21H4.51388L10.403 13.8457L15.1612 20.21H20.313L13.2525 10.7663L19.5135 4H17.9997L12.5761 9.86141L8.19399 4H3.04221ZM5.26848 5.11552H7.63522L18.0863 19.0943H15.7196L5.26848 5.11552Z" fill="currentColor"/> 5882</svg> 5883<span class="visually-hidden">X (Twitter)</span> 5884 </a> 5885 </li><li class="social__item inline-flex"> 5886 <a href="https://it.linkedin.com/company/fornasetti" class="social__link inline-flex"><svg 5887 aria-hidden="true" 5888 focusable="false" 5889 role="presentation" 5890 class="icon icon-linkedin icon--medium" 5891 viewBox="0 0 24 24" 5892 xmlns="http://www.w3.org/2000/svg" 5893> 5894 <text x="12" y="12" font-family="Arial, sans-serif" font-size="24" font-weight="bold" fill="currentColor" text-anchor="middle" dominant-baseline="central" alignment-baseline="central">in</text> 5895</svg> 5896 5897<span class="visually-hidden">LinkedIn</span> 5898 </a> 5899 </li><li class="social__item inline-flex"> 5900 <a href="https://www.youtube.com/channel/UC-LRSO3tWyXFzObkPRWWAKQ" class="social__link inline-flex"><svg 5901 aria-hidden="true" 5902 focusable="false" 5903 role="presentation" 5904 class="icon icon-youtube icon--medium" 5905 viewBox="0 0 24 24" 5906 xmlns="http://www.w3.org/2000/svg" 5907> 5908 <path fill-rule="evenodd" clip-rule="evenodd" d="M19.8212 5.42824C20.6776 5.65882 21.3529 6.33412 21.5835 7.19059C22.0118 8.75529 21.9953 12.0165 21.9953 12.0165C21.9953 12.0165 21.9953 15.2612 21.5835 16.8259C21.3529 17.6824 20.6776 18.3576 19.8212 18.5882C18.2565 19 11.9976 19 11.9976 19C11.9976 19 5.75529 19 4.17412 18.5718C3.31765 18.3412 2.64235 17.6659 2.41176 16.8094C2 15.2612 2 12 2 12C2 12 2 8.75529 2.41176 7.19059C2.64235 6.33412 3.33412 5.64235 4.17412 5.41176C5.73882 5 11.9976 5 11.9976 5C11.9976 5 18.2565 5 19.8212 5.42824ZM15.2091 11.8857L10.0044 14.8834V8.88807L15.2091 11.8857Z" fill="currentColor"/> 5909</svg> 5910<span class="visually-hidden">YouTube</span> 5911 </a> 5912 </li><li class="social__item inline-flex"> 5913 <a href="https://it.pinterest.com/fornasetti/" class="social__link inline-flex"><svg 5914 aria-hidden="true" 5915 focusable="false" 5916 role="presentation" 5917 class="icon icon-pinterest icon--medium" 5918 viewBox="0 0 24 24" 5919 xmlns="http://www.w3.org/2000/svg" 5920> 5921 <path d="M12.6611 3.07934C10.6273 2.79957 8.56095 3.26511 6.84363 4.38998C5.12631 5.51485 3.87398 7.22309 3.31788 9.19927C2.76179 11.1754 2.93948 13.2861 3.81815 15.1415C4.69683 16.9969 6.21713 18.4717 8.09835 19.2936C8.04748 18.6406 8.09417 17.9838 8.2369 17.3446C8.39415 16.6315 9.33848 12.7011 9.33848 12.7011C9.15043 12.2796 9.05646 11.8222 9.06308 11.3607C9.06308 10.0985 9.79152 9.15671 10.6976 9.15671C10.8604 9.15434 11.0218 9.18705 11.1708 9.25261C11.3198 9.31818 11.4529 9.41506 11.5611 9.53667C11.6694 9.65828 11.7501 9.80177 11.7979 9.95739C11.8458 10.113 11.8595 10.2771 11.8383 10.4385C11.8383 11.2035 11.347 12.3611 11.0903 13.4474C11.0396 13.6466 11.0363 13.855 11.0809 14.0557C11.1254 14.2564 11.2165 14.4438 11.3468 14.6028C11.477 14.7619 11.6428 14.8881 11.8308 14.9713C12.0188 15.0545 12.2237 15.0924 12.429 15.0819C14.0423 15.0819 15.1235 13.0156 15.1235 10.5762C15.1235 8.70622 13.885 7.30545 11.602 7.30545C11.0558 7.28423 10.5109 7.37423 10.0006 7.57001C9.49018 7.76579 9.02493 8.06325 8.63303 8.44433C8.24114 8.82542 7.93078 9.28217 7.72081 9.78687C7.51084 10.2916 7.40563 10.8337 7.41157 11.3803C7.38723 11.9866 7.58284 12.5813 7.96235 13.0547C8.03327 13.1077 8.08505 13.1822 8.10989 13.2672C8.13473 13.3521 8.13127 13.4428 8.10005 13.5256C8.06095 13.682 7.96235 14.0552 7.92326 14.192C7.91512 14.2384 7.8962 14.2823 7.86803 14.32C7.83985 14.3578 7.80319 14.3884 7.76102 14.4094C7.71885 14.4304 7.67233 14.4412 7.62521 14.441C7.5781 14.4407 7.5317 14.4294 7.48976 14.4079C6.31339 13.937 5.7592 12.6425 5.7592 11.1644C5.7592 8.74447 7.78556 5.84773 11.84 5.84773C15.0665 5.84773 17.2119 8.20813 17.2119 10.7326C17.2119
592114.0552 15.3614 16.5533 12.6271 16.5533C12.2184 16.5663 11.813 16.4761 11.4484 16.291C11.0838 16.1059 10.7718 15.8318 10.5412 15.4942C10.5412 15.4942 10.0499 17.4627 9.95301 17.835C9.75521 18.4782 9.46334 19.0886 9.08688 19.6463C9.87141 19.8843 10.6865 20.0033 11.5059 19.9999C12.6224 20.0008 13.7282 19.7815 14.7598 19.3544C15.7914 18.9274 16.7287 18.3011 17.5179 17.5113C18.3071 16.7215 18.9328 15.7838 19.3591 14.7519C19.7854 13.72 20.004 12.6141 20.0023 11.4976C20.0013 9.44485 19.2576 7.46184 17.9085 5.91469C16.5595 4.36754 14.6962 3.36074 12.6628 3.08019L12.6611 3.07934Z" fill="currentColor"/> 5922</svg> 5923<span class="visually-hidden">Pinterest</span> 5924 </a> 5925 </li><li class="social__item inline-flex"> 5926 <a href="https://open.spotify.com/user/fornasettiofficial?si=B9SUVFhQTOWPacWTzW-SsA&nd=1&dlsi=c8190675aea14c65" class="social__link inline-flex"><svg 5927 aria-hidden="true" 5928 focusable="false" 5929 role="presentation" 5930 class="icon icon-spotify icon--medium" 5931 viewBox="0 0 24 24" 5932 xmlns="http://www.w3.org/2000/svg" 5933> 5934 <g transform="translate(12, 12) scale(0.8) translate(-12, -12)"> 5935 <path d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.66 0 12 0zm5.521 17.34c-.24.359-.66.48-1.021.24-2.82-1.74-6.36-2.101-10.561-1.141-.418.122-.84-.179-.84-.66 0-.36.24-.66.54-.779 4.56-1.021 8.52-.6 11.64 1.32.42.18.479.659.242 1.02zm1.44-3.3c-.301.42-.841.6-1.262.3-3.239-1.98-8.159-2.58-11.939-1.38-.479.12-1.02-.12-1.14-.6-.12-.48.12-1.021.6-1.141C9.6 9.9 15 10.561 18.72 12.84c.361.181.54.78.241 1.2zm.12-3.36C15.24 8.4 8.82 8.16 5.16 9.301c-.6.179-1.2-.181-1.38-.721-.18-.601.18-1.2.72-1.381 4.26-1.26 11.28-1.02 15.721 1.621.539.3.719 1.02.42 1.56-.299.421-1.02.599-1.559.3z" fill="currentColor"/> 5936 </g> 5937</svg> 5938 5939<span class="visually-hidden">Spotify</span> 5940 </a> 5941 </li></ul> 5942 5943</div> 5944 </div> 5945</motion-element></div><div 5946 class="footer-block footer-block--divider f-column w-full" 5947 style="--col-width:%;" 5948 5949 ><div 5950 class="section-divider" 5951 style="padding-top: 0px; padding-bottom: 0px; margin-top: 0px; margin-bottom: 0px;" 5952 > 5953 <div 5954 class="border-top no-empty" 5955 style="border-block-start-color: #dddddd; border-block-start-width: 1px;" 5956 ></div> 5957 </div></div></div> 5958 </div> 5959 5960 <div class="footer__bottom page-width"> 5961 5962 <div class="footer__bottom-row flex justify-between items-center"> 5963 <div class="footer__localization relative z-2 flex items-center"> 5964 5965 <div class="country-switcher country-switcher--static " style="--f-max-width: 220px" data-liquid-country="US"> 5966 <noscript><form method="post" action="/en-us/localization" id="country-29_NoScript" accept-charset="UTF-8" class="selectors-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><h2 class="visually-hidden" id="CountryLabelNoScript-country-29">Country/region</h2> 5967 <div class="form-group"> 5968 <select 5969 class="localization-selector form-control form-control--plain" 5970 name="country_code" 5971 aria-labelledby="CountryLabelNoScript-country-29" 5972 ><option 5973 value="AL" 5974 5975 > 5976 Albania (EUR 5977 â¬) 5978 </option><option 5979 value="DZ" 5980 5981 > 5982 Algeria (EUR 5983 â¬) 5984 </option><option 5985 value="AD" 5986 5987 > 5988 Andorra (EUR 5989 â¬) 5990 </option><option 5991 value="AI" 5992 5993 > 5994 Anguilla (USD 5995 $) 5996 </option><option 5997 value="AG" 5998 5999 > 6000 Antigua & Barbuda (USD 6001 $) 6002 </option><option 6003 value="AR" 6004 6005 > 6006 Argentina (USD 6007 $) 6008 </option><option 6009 value="AM" 6010 6011 > 6012 Armenia (EUR 6013 â¬) 6014 </option><option 6015 value="AW" 6016 6017 > 6018 Aruba (USD 6019 $) 6020 </option><option 6021 value="AU" 6022 6023 > 6024 Australia (AUD 6025 $) 6026 </option><option 6027 value="AT" 6028 6029 > 6030 Austria (EUR 6031 â¬) 6032 </option><option 6033 value="AZ" 6034 6035 > 6036 Azerbaijan (EUR 6037 â¬) 6038 </option><option 6039 value="BS" 6040 6041 > 6042 Bahamas (USD 6043 $) 6044 </option><option 6045 value="BH" 6046 6047 > 6048 Bahrain (EUR 6049 â¬) 6050 </option><option 6051 value="BD" 6052 6053 > 6054 Bangladesh (USD 6055 $) 6056 </option><option 6057 value="BY" 6058 6059 > 6060 Belarus (EUR 6061 â¬) 6062 </option><option 6063 value="BE" 6064 6065 > 6066 Belgium (EUR 6067 â¬) 6068 </option><option 6069 value="BZ" 6070 6071 > 6072 Belize (USD 6073 $) 6074 </option><option 6075 value="BM" 6076 6077 > 6078 Bermuda (USD 6079 $) 6080 </option><option 6081 value="BT" 6082 6083 > 6084 Bhutan (USD 6085 $) 6086 </option><option 6087 value="BO" 6088 6089 > 6090 Bolivia (USD 6091 $) 6092 </option><option 6093 value="BA" 6094 6095 > 6096 Bosnia & Herzegovina (EUR 6097 â¬) 6098 </option><option 6099 value="BW" 6100 6101 > 6102 Botswana (EUR 6103 â¬) 6104 </option><option 6105 value="BR"
6106 6107 > 6108 Brazil (USD 6109 $) 6110 </option><option 6111 value="VG" 6112 6113 > 6114 British Virgin Islands (USD 6115 $) 6116 </option><option 6117 value="BN" 6118 6119 > 6120 Brunei (USD 6121 $) 6122 </option><option 6123 value="BG" 6124 6125 > 6126 Bulgaria (EUR 6127 â¬) 6128 </option><option 6129 value="KH" 6130 6131 > 6132 Cambodia (USD 6133 $) 6134 </option><option 6135 value="CA" 6136 6137 > 6138 Canada (CAD 6139 $) 6140 </option><option 6141 value="CV" 6142 6143 > 6144 Cape Verde (EUR 6145 â¬) 6146 </option><option 6147 value="KY" 6148 6149 > 6150 Cayman Islands (USD 6151 $) 6152 </option><option 6153 value="CL" 6154 6155 > 6156 Chile (USD 6157 $) 6158 </option><option 6159 value="CN" 6160 6161 > 6162 China (CNY 6163 Â¥) 6164 </option><option 6165 value="CO" 6166 6167 > 6168 Colombia (USD 6169 $) 6170 </option><option 6171 value="KM" 6172 6173 > 6174 Comoros (EUR 6175 â¬) 6176 </option><option 6177 value="CK" 6178 6179 > 6180 Cook Islands (USD 6181 $) 6182 </option><option 6183 value="CR" 6184 6185 > 6186 Costa Rica (USD 6187 $) 6188 </option><option 6189 value="HR" 6190 6191 > 6192 Croatia (EUR 6193 â¬) 6194 </option><option 6195 value="CY" 6196 6197 > 6198 Cyprus (EUR 6199 â¬) 6200 </option><option 6201 value="CZ" 6202 6203 > 6204 Czechia (EUR 6205 â¬) 6206 </option><option 6207 value="DK" 6208 6209 > 6210 Denmark (EUR 6211 â¬) 6212 </option><option 6213 value="DM" 6214 6215 > 6216 Dominica (USD 6217 $) 6218 </option><option 6219 value="DO" 6220 6221 > 6222 Dominican Republic (USD 6223 $) 6224 </option><option 6225 value="EC" 6226 6227 > 6228 Ecuador (USD 6229 $) 6230 </option><option 6231 value="EG" 6232 6233 > 6234 Egypt (EUR 6235 â¬) 6236 </option><option 6237 value="EE" 6238 6239 > 6240 Estonia (EUR 6241 â¬) 6242 </option><option 6243 value="SZ" 6244 6245 > 6246 Eswatini (EUR 6247 â¬) 6248 </option><option 6249 value="FK" 6250 6251 > 6252 Falkland Islands (USD 6253 $) 6254 </option><option 6255 value="FO" 6256 6257 > 6258 Faroe Islands (USD 6259 $) 6260 </option><option 6261 value="FJ" 6262 6263 > 6264 Fiji (EUR 6265 â¬) 6266 </option><option 6267 value="FI" 6268 6269 > 6270 Finland (EUR 6271 â¬) 6272 </option><option 6273 value="FR" 6274 6275 > 6276 France (EUR 6277 â¬) 6278 </option><option 6279 value="GF" 6280 6281 > 6282 French Guiana (USD 6283 $) 6284 </option><option 6285 value="PF" 6286 6287 > 6288 French Polynesia (EUR 6289 â¬) 6290 </option><option 6291 value="GA" 6292 6293 > 6294 Gabon (EUR 6295 â¬) 6296 </option><option 6297 value="GM" 6298 6299 > 6300 Gambia (EUR 6301 â¬) 6302 </option><option 6303 value="GE" 6304 6305 > 6306 Georgia (EUR 6307 â¬) 6308 </option><option 6309 value="DE" 6310 6311 > 6312 Germany (EUR 6313 â¬) 6314 </option><option 6315 value="GH" 6316 6317 > 6318 Ghana (EUR 6319 â¬) 6320 </option><option 6321 value="GI" 6322 6323 > 6324 Gibraltar (EUR 6325 â¬) 6326 </option><option 6327 value="GR" 6328 6329 > 6330 Greece (EUR 6331 â¬) 6332 </option><option 6333 value="GL" 6334 6335 > 6336 Greenland (USD 6337 $) 6338 </option><option 6339 value="GD" 6340 6341 > 6342 Grenada (USD 6343 $) 6344 </option><option 6345 value="GP" 6346 6347 > 6348 Guadeloupe (USD 6349 $) 6350 </option><option 6351 value="GT" 6352 6353 > 6354 Guatemala (USD 6355 $) 6356 </option><option 6357 value="GY" 6358 6359 > 6360 Guyana (USD 6361 $) 6362 </option><option 6363 value="HN" 6364 6365 > 6366 Honduras (USD 6367 $) 6368 </option><option 6369 value="HK" 6370 6371 > 6372 Hong Kong SAR (HKD 6373 $) 6374 </option><option 6375 value="HU" 6376 6377 > 6378 Hungary (EUR 6379 â¬) 6380 </option><option 6381 value="IS" 6382 6383 > 6384 Iceland (EUR 6385 â¬) 6386 </option><option 6387 value="IN" 6388 6389 > 6390 India (USD 6391 $) 6392 </option><option 6393 value="ID" 6394 6395 > 6396 Indonesia (USD 6397 $) 6398 </option><option 6399 value="IE" 6400 6401 > 6402 Ireland (EUR 6403 â¬) 6404 </option><option 6405 value="IL" 6406 6407 > 6408 Israel (EUR 6409 â¬) 6410 </option><option 6411 value="IT" 6412 6413 > 6414 Italy (EUR 6415 â¬) 6416 </option><option 6417 value="JM" 6418 6419 > 6420 Jamaica (USD 6421 $) 6422 </option><option 6423 value="JP" 6424 6425 > 6426 Japan (JPY 6427 Â¥) 6428 </option><option 6429 value="JO" 6430 6431 > 6432 Jordan (EUR 6433 â¬) 6434 </option><option 6435 value="KZ" 6436 6437 > 6438 Kazakhstan (EUR 6439 â¬) 6440 </option><option 6441 value="KE" 6442 6443 > 6444 Kenya (EUR 6445 â¬) 6446 </option><option 6447 value="KW" 6448 6449 > 6450 Kuwait (EUR 6451 â¬) 6452 </option><option 6453 value="LA" 6454 6455 > 6456 Laos (USD 6457 $) 6458 </option><option 6459 value="LV" 6460 6461 > 6462 Latvia (EUR 6463 â¬) 6464 </option><option 6465 value="LB" 6466 6467 > 6468 Lebanon (EUR 6469 â¬) 6470 </option><option 6471 value="LS" 6472 6473 > 6474 Lesotho (EUR 6475 â¬) 6476 </option><option 6477 value="LI" 6478 6479 > 6480 Liechtenstein (EUR 6481 â¬) 6482 </option><option 6483 value="LT" 6484 6485 > 6486 Lithuania (EUR 6487 â¬) 6488 </option><option 6489 value="LU" 6490 6491 > 6492 Luxembourg (EUR 6493 â¬) 6494 </option><option 6495 value="MO" 6496 6497 > 6498 Macao SAR (USD 6499 $) 6500 </option><option 6501 value="MG" 6502 6503 > 6504 Madagascar (EUR 6505 â¬) 6506 </option><option 6507 value="MW" 6508 6509 > 6510 Malawi (EUR 6511 â¬) 6512 </option><option 6513 value="MY" 6514 6515 > 6516 Malaysia (USD 6517 $) 6518 </option><option 6519 value="MV" 6520 6521 > 6522 Maldives (USD 6523 $) 6524 </option><option 6525 value="MT" 6526 6527 > 6528 Malta (EUR 6529 â¬) 6530 </option><option 6531 value="MQ" 6532 6533 > 6534 Martinique (USD 6535 $) 6536 </option><option 6537 value="MU" 6538 6539 > 6540 Mauritius (EUR 6541 â¬) 6542 </option><option 6543 value="MX" 6544 6545 > 6546 Mexico (USD 6547 $) 6548 </option><option 6549 value="MD" 6550 6551 > 6552 Moldova (EUR 6553 â¬) 6554 </option><option 6555 value="MC" 6556 6557 > 6558 Monaco (EUR 6559 â¬) 6560 </option><option 6561 value="MN" 6562 6563 > 6564 Mongolia (USD 6565 $) 6566 </option><option 6567 value="ME" 6568 6569 > 6570 Montenegro (EUR 6571 â¬) 6572 </option><option 6573 value="MS" 6574 6575 > 6576 Montserrat (USD 6577 $) 6578 </option><option 6579 value="MA" 6580 6581 > 6582 Morocco (EUR 6583 â¬) 6584 </option><option 6585 value="MZ" 6586 6587 > 6588 Mozambique (EUR 6589 â¬) 6590 </option><option 6591 value="NA" 6592 6593 > 6594 Namibia (EUR 6595 â¬) 6596 </option><option 6597 value="NP" 6598 6599 > 6600 Nepal (USD 6601 $) 6602 </option><option 6603 value="NL" 6604 6605 > 6606 Netherlands (EUR 6607 â¬) 6608 </option><option 6609 value="NC" 6610 6611 > 6612 New Caledonia (USD 6613 $) 6614 </option><option 6615 value="NZ" 6616 6617 > 6618 New Zealand (USD 6619 $) 6620 </option><option 6621 value="NI" 6622 6623 > 6624 Nicaragua (USD 6625 $) 6626 </option><option 6627 value="MK" 6628 6629 > 6630 North Macedonia (EUR 6631 â¬) 6632 </option><option 6633 value="NO" 6634 6635 > 6636 Norway (EUR 6637 â¬) 6638 </option><option 6639 value="OM" 6640 6641 > 6642 Oman (EUR 6643 â¬) 6644 </option><option 6645 value="PA" 6646 6647 > 6648 Panama (USD 6649 $) 6650 </option><option 6651 value="PG" 6652 6653 > 6654 Papua New Guinea (USD 6655 $) 6656 </option><option 6657 value="PY" 6658 6659 > 6660 Paraguay (USD 6661 $) 6662 </option><option 6663 value="PE" 6664 6665 > 6666 Peru (USD 6667 $) 6668 </option><option 6669 value="PH" 6670 6671 > 6672 Philippines (USD 6673 $) 6674 </option><option 6675 value="PL" 6676 6677 > 6678 Poland (EUR 6679 â¬) 6680 </option><option 6681 value="PT" 6682 6683 > 6684 Portugal (EUR 6685 â¬) 6686 </option><option 6687 value="QA" 6688 6689 > 6690 Qatar (EUR 6691 â¬) 6692 </option><option 6693 value="RO" 6694 6695 > 6696 Romania (EUR 6697 â¬) 6698 </option><option 6699 value="RU" 6700 6701 > 6702 Russia (RUB 6703 â½) 6704 </option><option 6705 value="WS" 6706 6707 > 6708 Samoa (USD 6709 $) 6710 </option><option 6711 value="SA" 6712 6713 > 6714 Saudi Arabia (EUR 6715 â¬) 6716 </option><option 6717 value="SN" 6718 6719 > 6720 Senegal (EUR 6721 â¬) 6722 </option><option 6723 value="RS" 6724 6725 >
6726 Serbia (EUR 6727 â¬) 6728 </option><option 6729 value="SC" 6730 6731 > 6732 Seychelles (USD 6733 $) 6734 </option><option 6735 value="SG" 6736 6737 > 6738 Singapore (SGD 6739 $) 6740 </option><option 6741 value="SK" 6742 6743 > 6744 Slovakia (EUR 6745 â¬) 6746 </option><option 6747 value="SI" 6748 6749 > 6750 Slovenia (EUR 6751 â¬) 6752 </option><option 6753 value="SB" 6754 6755 > 6756 Solomon Islands (USD 6757 $) 6758 </option><option 6759 value="ZA" 6760 6761 > 6762 South Africa (EUR 6763 â¬) 6764 </option><option 6765 value="KR" 6766 6767 > 6768 South Korea (KRW 6769 â©) 6770 </option><option 6771 value="ES" 6772 6773 > 6774 Spain (EUR 6775 â¬) 6776 </option><option 6777 value="LK" 6778 6779 > 6780 Sri Lanka (USD 6781 $) 6782 </option><option 6783 value="BL" 6784 6785 > 6786 St. Barthélemy (USD 6787 $) 6788 </option><option 6789 value="KN" 6790 6791 > 6792 St. Kitts & Nevis (USD 6793 $) 6794 </option><option 6795 value="LC" 6796 6797 > 6798 St. Lucia (USD 6799 $) 6800 </option><option 6801 value="VC" 6802 6803 > 6804 St. Vincent & Grenadines (USD 6805 $) 6806 </option><option 6807 value="SR" 6808 6809 > 6810 Suriname (USD 6811 $) 6812 </option><option 6813 value="SE" 6814 6815 > 6816 Sweden (EUR 6817 â¬) 6818 </option><option 6819 value="CH" 6820 6821 > 6822 Switzerland (CHF 6823 CHF) 6824 </option><option 6825 value="TW" 6826 6827 > 6828 Taiwan (USD 6829 $) 6830 </option><option 6831 value="TZ" 6832 6833 > 6834 Tanzania (EUR 6835 â¬) 6836 </option><option 6837 value="TH" 6838 6839 > 6840 Thailand (USD 6841 $) 6842 </option><option 6843 value="TL" 6844 6845 > 6846 Timor-Leste (USD 6847 $) 6848 </option><option 6849 value="TG" 6850 6851 > 6852 Togo (EUR 6853 â¬) 6854 </option><option 6855 value="TO" 6856 6857 > 6858 Tonga (USD 6859 $) 6860 </option><option 6861 value="TT" 6862 6863 > 6864 Trinidad & Tobago (USD 6865 $) 6866 </option><option 6867 value="TN"
6868 6869 > 6870 Tunisia (EUR 6871 â¬) 6872 </option><option 6873 value="TR" 6874 6875 > 6876 Türkiye (EUR 6877 â¬) 6878 </option><option 6879 value="TC" 6880 6881 > 6882 Turks & Caicos Islands (USD 6883 $) 6884 </option><option 6885 value="TV" 6886 6887 > 6888 Tuvalu (USD 6889 $) 6890 </option><option 6891 value="UA" 6892 6893 > 6894 Ukraine (EUR 6895 â¬) 6896 </option><option 6897 value="AE" 6898 6899 > 6900 United Arab Emirates (AED 6901 د.Ø¥) 6902 </option><option 6903 value="GB" 6904 6905 > 6906 United Kingdom (GBP 6907 £) 6908 </option><option 6909 value="US" 6910 6911 selected 6912 6913 > 6914 United States (USD 6915 $) 6916 </option><option 6917 value="UY" 6918 6919 > 6920 Uruguay (USD 6921 $) 6922 </option><option 6923 value="VU" 6924 6925 > 6926 Vanuatu (USD 6927 $) 6928 </option><option 6929 value="VE" 6930 6931 > 6932 Venezuela (USD 6933 $) 6934 </option><option 6935 value="VN" 6936 6937 > 6938 Vietnam (USD 6939 $) 6940 </option></select> 6941 <button class="btn btn--with-icon btn--square" aria-label="Update country/region"> 6942 <svg 6943 class="icon icon-arrow icon--small" 6944 viewBox="0 0 20 20" 6945 fill="none" 6946 xmlns="http://www.w3.org/2000/svg" 6947> 6948 <path d="M7.5 3.74121L13.75 9.99121L7.5 16.2412" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 6949</svg> 6950 6951 <span class="visually-hidden">Update country/region</span> 6952 </button> 6953 </div></form></noscript> 6954 <div class="no-js-hidden disclosure disclosure--up disclosure--plain disclosure--static-text"> 6955 <button 6956 type="button" 6957 class="disclosure__toggle disclosure__toggle--static-text btn--plain text-normal font-body" 6958 aria-expanded="false" 6959 aria-label="Country/region" 6960 aria-controls="JklCountryModal" 6961 aria-haspopup="dialog" 6962 > 6963 <span class="country-switcher__text"> 6964 <span class="country-switcher__label">COUNTRY:</span> 6965 <span class="country-switcher__value" data-country-display>UNITED STATES</span> 6966 </span> 6967 </button> 6968 </div> 6969 </div> 6970 6971 6972<basic-modal id="JklCountryModal" class="drawer modal country-modal" style="--modal-width: 352px;" hidden 6973 data-current-country="US" 6974 data-current-language="en" 6975> 6976 <div class="fixed-overlay" aria-controls="JklCountryModal"></div> 6977 <div class="drawer__inner"> 6978 <button 6979 class="drawer__close-btn" 6980 aria-controls="JklCountryModal" 6981 type="button" 6982 aria-label="Close" 6983 > 6984 <svg 6985 xmlns="http://www.w3.org/2000/svg" 6986 aria-hidden="true" 6987 focusable="false" 6988 class="icon icon-close icon--medium" 6989 fill="none" 6990 viewBox="0 0 24 24" 6991> 6992 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 6993 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 6994</svg> 6995 6996 </button> 6997 <div class="drawer__body v-scrollable h-full"> 6998 <h2 class="country-modal__title"> 6999 Select country 7000 </h2><form method="post" action="/en-us/localization" id="country-modal-29" accept-charset="UTF-8" class="country-modal__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="country_code" value="US"> 7001 <div class="country-modal__list" id="country-list"> 7002 7003 7004 <div class="country-modal__column"> 7005 7006 7007 7008 <button 7009 type="button" 7010 class="country-modal__option" 7011 data-country-selector 7012 data-value="IT" 7013 > 7014 ITALY 7015 </button> 7016 7017 7018 7019 7020 <button 7021 type="button" 7022 class="country-modal__option" 7023 data-country-selector 7024 data-value="CN" 7025 > 7026 CHINA 7027 </button> 7028 7029 7030 7031 7032 <button 7033 type="button" 7034 class="country-modal__option" 7035 data-country-selector 7036 data-value="DE" 7037 > 7038 GERMANY 7039 </button> 7040 7041 7042 </div> 7043 7044 <div class="country-modal__column"> 7045 7046 7047 7048 <button 7049 type="button" 7050 class="country-modal__option" 7051 data-country-selector 7052 data-value="GB" 7053 > 7054 UNITED KINGDOM 7055 </button> 7056 7057 7058 7059 7060 <button 7061 type="button" 7062 class="country-modal__option" 7063 data-country-selector 7064 data-value="JP" 7065 > 7066 JAPAN 7067 </button> 7068 7069 7070 7071 7072 <button 7073 type="button" 7074 class="country-modal__option" 7075 data-country-selector 7076 data-value="AU" 7077 > 7078 AUSTRALIA 7079 </button> 7080 7081 7082 </div> 7083 7084 <div class="country-modal__column"> 7085 7086 7087 7088 <button 7089 type="button" 7090 class="country-modal__option country-modal__option--active" 7091 data-country-selector 7092 data-value="US" 7093 > 7094 UNITED STATES 7095 </button> 7096 7097 7098 7099 7100 <button 7101 type="button" 7102 class="country-modal__option" 7103 data-country-selector 7104 data-value="FR" 7105 > 7106 FRANCE 7107 </button> 7108 7109 7110 7111 7112 <a href="/en-us/pages/country-selector" class="country-modal__more" id="show-more-countries"> 7113 MORE COUNTRIES 7114 </a> 7115 7116 </div> 7117 </div></form></div> 7118 </div> 7119</basic-modal> 7120
7121<script> 7122(function() { 7123 const modal = document.getElementById('JklCountryModal'); 7124 if (!modal) return; 7125 7126 // Storage keys for persisting user's locale preferences 7127 const STORAGE_KEY_COUNTRY = 'fornasetti_selected_country'; 7128 const STORAGE_KEY_MARKET = 'fornasetti_selected_market'; 7129 7130 // Extract the market code from Shopify's routes 7131 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7132 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7133 7134 let urlMarket = null; 7135 if (localeMatch) { 7136 urlMarket = localeMatch[2].toUpperCase(); 7137 } 7138 7139 // For multi-country markets (like EU), we need to use localStorage 7140 const singleCountryMarkets = ['US', 'CN', 'JP', 'AU', 'GB']; 7141 7142 let actualCountry = null; 7143 7144 if (urlMarket && singleCountryMarkets.includes(urlMarket)) { 7145 actualCountry = urlMarket; 7146 } else if (urlMarket) { 7147 // For multi-country markets, check localStorage 7148 try { 7149 const storedCountry = localStorage.getItem(STORAGE_KEY_COUNTRY); 7150 if (storedCountry) { 7151 actualCountry = storedCountry; 7152 } 7153 } catch (e) {} 7154 } 7155 7156 // Fix cached HTML: Update active states based on actual country 7157 if (actualCountry && modal.dataset.currentCountry !== actualCountry) { 7158 console.log('[Country Modal Fix] Correcting cached country from', modal.dataset.currentCountry, 'to', actualCountry); 7159 7160 const countryButtons = modal.querySelectorAll('[data-country-selector]'); 7161 countryButtons.forEach(button => { 7162 const buttonCountry = button.getAttribute('data-value'); 7163 if (buttonCountry === actualCountry) { 7164 button.classList.add('country-modal__option--active'); 7165 } else { 7166 button.classList.remove('country-modal__option--active'); 7167 } 7168 }); 7169 7170 const countryInput = modal.querySelector('input[name="country_code"]'); 7171 if (countryInput) { 7172 countryInput.value = actualCountry; 7173 } 7174 } 7175 7176 const countryForm = document.getElementById('country-modal-29'); 7177 7178 // Country selector 7179 if (countryForm) { 7180 const countryInput = countryForm.querySelector('input[name="country_code"]'); 7181 const countryButtons = countryForm.querySelectorAll('[data-country-selector]'); 7182 7183 countryButtons.forEach(button => { 7184 button.addEventListener('click', function() { 7185 const value = this.getAttribute('data-value'); 7186 7187 // Save the selected country to localStorage BEFORE form submission 7188 try { 7189 localStorage.setItem(STORAGE_KEY_COUNTRY, value); 7190 localStorage.removeItem(STORAGE_KEY_MARKET); // Will be re-detected from new URL 7191 } catch (e) {} 7192 7193 countryInput.value = value; 7194 countryForm.submit(); 7195 }); 7196 }); 7197 } 7198})(); 7199</script>
7199 7200 7201 7202 7203
7203<script> 7204 (function() { 7205 // Storage keys for persisting user's locale preferences 7206 const STORAGE_KEY_COUNTRY = 'fornasetti_selected_country'; 7207 7208 // Fix cached country display label 7209 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7210 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7211 7212 if (localeMatch) { 7213 const urlMarket = localeMatch[2].toUpperCase(); 7214 const singleCountryMarkets = ['US', 'CN', 'JP', 'AU', 'GB']; 7215 7216 let actualCountry = null; 7217 7218 // For single-country markets, the market IS the country 7219 if (singleCountryMarkets.includes(urlMarket)) { 7220 actualCountry = urlMarket; 7221 } else { 7222 // For multi-country markets (EU), check localStorage 7223 try { 7224 const storedCountry = localStorage.getItem(STORAGE_KEY_COUNTRY); 7225 if (storedCountry) { 7226 actualCountry = storedCountry; 7227 } 7228 } catch (e) {} 7229 } 7230 7231 const switcher = document.querySelector('.country-switcher--static'); 7232 7233 if (actualCountry && switcher && switcher.dataset.liquidCountry !== actualCountry) { 7234 // Find the country name from the modal buttons 7235 const countryModal = document.getElementById('JklCountryModal'); 7236 if (countryModal) { 7237 const countryButton = countryModal.querySelector(`[data-country-selector][data-value="${actualCountry}"]`); 7238 if (countryButton) { 7239 const countryName = countryButton.textContent.trim(); 7240 const displayElement = switcher.querySelector('[data-country-display]'); 7241 if (displayElement) { 7242 displayElement.textContent = countryName; 7243 } 7244 } 7245 } 7246 } 7247 } 7248 })(); 7249 </script>
7249 7250 7251 7252 7253 7254<div class="language-switcher language-switcher--static " data-liquid-language="en"> 7255 <noscript><form method="post" action="/en-us/localization" id="language-31_NoScript" accept-charset="UTF-8" class="selectors-form" enctype="multipart/form-data" data-disclosure-form=""><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><h2 class="visually-hidden">Language</h2> 7256 <div class="form-group"> 7257 <select 7258 class="localization-selector form-control form-control--plain" 7259 name="locale_code" 7260 aria-labelledby="CountryLabelNoScript-language-31" 7261 > 7262 7263 <option 7264 value="en" 7265 7266 selected 7267 7268 > 7269 English 7270 </option></select> 7271 <button class="btn btn--with-icon btn--square" aria-label="Update language"> 7272 <svg 7273 class="icon icon-arrow icon--small" 7274 viewBox="0 0 20 20" 7275 fill="none" 7276 xmlns="http://www.w3.org/2000/svg" 7277> 7278 <path d="M7.5 3.74121L13.75 9.99121L7.5 16.2412" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7279</svg> 7280 7281 <span class="visually-hidden">Update language</span> 7282 </button> 7283 </div> 7284 </form> 7285 </noscript> 7286 <div class="no-js-hidden disclosure disclosure--up disclosure--plain disclosure--static-text"> 7287 <button 7288 type="button" 7289 class="disclosure__toggle disclosure__toggle--static-text btn--plain text-normal font-body" 7290 aria-expanded="false" 7291 aria-label="Language" 7292 aria-controls="JklLanguageModal" 7293 aria-haspopup="dialog" 7294 > 7295 <span class="language-switcher__text"> 7296 <span class="language-switcher__label">LANGUAGE:</span> 7297 <span class="language-switcher__value" data-language-display>ENGLISH</span> 7298 </span> 7299 </button> 7300 </div> 7301</div> 7302
7303<script> 7304(function() { 7305 // Fix cached language display label 7306 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7307 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7308 7309 if (localeMatch) { 7310 const actualLanguage = localeMatch[1].toLowerCase(); 7311 const switcher = document.querySelector('.language-switcher--static'); 7312 7313 if (switcher && switcher.dataset.liquidLanguage !== actualLanguage) { 7314 // Find the language name from the modal buttons 7315 const languageModal = document.getElementById('JklLanguageModal'); 7316 if (languageModal) { 7317 const languageButton = languageModal.querySelector(`[data-language-selector][data-value="${actualLanguage}"]`); 7318 if (languageButton) { 7319 const languageName = languageButton.textContent.trim(); 7320 const displayElement = switcher.querySelector('[data-language-display]'); 7321 if (displayElement) { 7322 displayElement.textContent = languageName; 7323 } 7324 } 7325 } 7326 } 7327 } 7328})(); 7329</script>
7329 7330 7331</div> 7332 7333 <div class="footer__info flex items-center"> 7334 7335 <ul class="linklist linklist--horizontal list-unstyled"> 7336 7337 <li> 7338 <a href="/en-us/pages/sitemap">Site map</a> 7339 </li> 7340 7341 <li> 7342 <a href="/en-us/policies/privacy-policy">Privacy</a> 7343 </li> 7344 7345 <li> 7346 <a href="/en-us/pages/legal-area">Legal area</a> 7347 </li> 7348 7349 <li> 7350 <a href="/en-us/pages/cookie-policy">Cookie policy</a> 7351 </li> 7352 7353 <li> 7354 <a href="/en-us/pages/accessibility">Accessibility</a> 7355 </li> 7356 7357 </ul> 7358 7359</div><div class="footer__copyright footer__copyright--desktop"> 7360 <p class="footer__copyright-content"> 7361 © FORNASETTI STORE 2026 - all rights reserved. 7362 <br> 7363 E-commerce partner <a href="https://calicant.us/">Calicantus - P.IVA 03757590272</a> 7364 </p></div> 7365 </div> 7366 7367 7368 <div class="country-language-switcher country-language-switcher--mobile " data-liquid-country="US" data-liquid-language="en"> 7369 <button 7370 type="button" 7371 class="country-language-switcher__button" 7372 aria-expanded="false" 7373 aria-label="Translation missing: en.localization.country_language_label" 7374 aria-controls="JklCountryLanguageModal" 7375 aria-haspopup="dialog" 7376 > 7377 <span class="country-language-switcher__label">COUNTRY & LANGUAGE</span> 7378 <span class="country-language-switcher__value"> 7379 7380 <span data-country-display>UNITED STATES</span> 7381 7382 / 7383 7384 <span data-language-display>ENGLISH</span> 7385 7386 <span class="country-language-switcher__change"> (CHANGE)</span> 7387 </span> 7388 </button> 7389 </div> 7390 7391<basic-modal id="JklCountryLanguageModal" class="drawer modal country-language-modal" style="--modal-width: 352px;" hidden 7392 data-current-country="US" 7393 data-current-language="en" 7394 data-country-languages='{"AL": ["en","fr","it"],"DZ": ["en"],"AD": ["en","fr","it"],"AI": ["en"],"AG": ["en"],"AR": ["en"],"AM": ["en"],"AW": ["en"],"AU": ["en"],"AT": ["en","fr","it"],"AZ": ["en"],"BS": ["en"],"BH": ["en"],"BD": ["en"],"BY": ["en","fr","it"],"BE": ["en","fr","it"],"BZ": ["en"],"BM": ["en"],"BT": ["en"],"BO": ["en"],"BA": ["en","fr","it"],"BW": ["en"],"BR": ["en"],"VG": ["en"],"BN": ["en"],"BG": ["en","fr","it"],"KH": ["en"],"CA": ["en","fr"],"CV": ["en"],"KY": ["en"],"CL": ["en"],"CN": ["en"],"CO": ["en"],"KM": ["en"],"CK": ["en"],"CR": ["en"],"HR": ["en","fr","it"],"CY": ["en","fr","it"],"CZ": ["en","fr","it"],"DK": ["en","fr","it"],"DM": ["en"],"DO": ["en"],"EC": ["en"],"EG": ["en"],"EE": ["en","fr","it"],"SZ": ["en"],"FK": ["en"],"FO": ["en"],"FJ": ["en"],"FI": ["en","fr","it"],"FR": ["en","fr","it"],"GF": ["en"],"PF": ["en"],"GA": ["en"],"GM": ["en"],"GE": ["en"],"DE": ["en","fr","it"],"GH": ["en"],"GI": ["en","fr","it"],"GR": ["en","fr","it"],"GL": ["en"],"GD": ["en"],"GP": ["en"],"GT": ["en"],"GY": ["en"],"HN": ["en"],"HK": ["en"],"HU": ["en","fr","it"],"IS": ["en","fr","it"],"IN": ["en"],"ID": ["en"],"IE": ["en","fr","it"],"IL": ["en"],"IT": ["en","it"],"JM": ["en"],"JP": ["en"],"JO": ["en"],"KZ": ["en"],"KE": ["en"],"KW": ["en"],"LA": ["en"],"LV": ["en","fr","it"],"LB": ["en"],"LS": ["en"],"LI": ["en","fr","it"],"LT": ["en","fr","it"],"LU": ["en","fr","it"],"MO": ["en"],"MG": ["en"],"MW": ["en"],"MY": ["en"],"MV": ["en"],"MT": ["en","fr","it"],"MQ": ["en"],"MU": ["en"],"MX": ["en"],"MD": ["en","fr","it"],"MC": ["en","fr","it"],"MN": ["en"],"ME": ["en","fr","it"],"MS": ["en"],"MA": ["en"],"MZ": ["en"],"NA": ["en"],"NP": ["en"],"NL": ["en","fr","it"],"NC": ["en"],"NZ": ["en"],"NI": ["en"],"MK": ["en","fr","it"],"NO": ["en","fr","it"],"OM": ["en"],"PA": ["en"],"PG": ["en"],"PY": ["en"],"PE": ["en"],"PH": ["en"],"PL": ["en","fr","it"],"PT": ["en","fr","it"],"QA": ["en"],"RO": ["en","fr","it"],"RU": ["en"],"WS": ["en"],"SA": ["en"],"SN": ["en"],"RS": ["en","fr","it"],"SC": ["en"],"SG": ["en"],"SK": ["en","fr","it"],"SI": ["en","fr","it"],"SB": ["en"],"ZA": ["en"],"KR": ["en"],"ES": ["en","fr","it"],"LK": ["en"],"BL": ["en"],"KN": ["en"],"LC": ["en"],"VC": ["en"],"SR": ["en"],"SE": ["en","fr","it"],"CH": ["en","fr","it"],"TW": ["en"],"TZ": ["en"],"TH": ["en"],"TL": ["en"],"TG": ["en"],"TO": ["en"],"TT": ["en"],"TN": ["en"],"TR": ["en"],"TC": ["en"],"TV": ["en"],"UA": ["en","fr","it"],"AE": ["en"],"GB": ["en"],"US": ["en"],"UY": ["en"],"VU": ["en"],"VE": ["en"],"VN": ["en"]}' 7395> 7396 <div class="fixed-overlay" aria-controls="JklCountryLanguageModal"></div> 7397 <div class="drawer__inner"> 7398 <button 7399 class="drawer__close-btn" 7400 aria-controls="JklCountryLanguageModal" 7401 type="button" 7402 aria-label="Close" 7403 > 7404 <svg 7405 xmlns="http://www.w3.org/2000/svg" 7406 aria-hidden="true" 7407 focusable="false" 7408 class="icon icon-close icon--medium" 7409 fill="none" 7410 viewBox="0 0 24 24" 7411> 7412 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7413 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7414</svg> 7415 7416 </button> 7417 <div class="drawer__body v-scrollable h-full"> 7418 <div class="country-language-modal__content"><div class="country-language-modal__section"> 7419 <h2 class="country-language-modal__title"> 7420 Select country 7421 </h2><form method="post" action="/en-us/localization" id="country-language-modal-country-30" accept-charset="UTF-8" class="country-language-modal__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="country_code" value="US"> 7422 <div class="country-language-modal__list" id="country-list"> 7423 7424 7425 7426 7427 7428 <button 7429 type="button" 7430 class="country-language-modal__option" 7431 data-country-selector 7432 data-value="IT" 7433 > 7434 ITALY 7435 </button> 7436 7437 7438 7439 7440 <button 7441 type="button" 7442 class="country-language-modal__option" 7443 data-country-selector 7444 data-value="CN" 7445 > 7446 CHINA 7447 </button> 7448 7449 7450 7451 7452 <button 7453 type="button" 7454 class="country-language-modal__option" 7455 data-country-selector 7456 data-value="DE" 7457 > 7458 GERMANY 7459 </button> 7460 7461 7462 7463 7464 <button 7465 type="button" 7466 class="country-language-modal__option" 7467 data-country-selector 7468 data-value="GB" 7469 > 7470 UNITED KINGDOM 7471 </button> 7472 7473 7474 7475 7476 <button 7477 type="button" 7478 class="country-language-modal__option" 7479 data-country-selector 7480 data-value="JP" 7481 > 7482 JAPAN 7483 </button> 7484 7485 7486 7487 7488 <button 7489 type="button" 7490 class="country-language-modal__option" 7491 data-country-selector 7492 data-value="AU" 7493 > 7494 AUSTRALIA 7495 </button> 7496 7497 7498 7499 7500 <button 7501 type="button" 7502 class="country-language-modal__option country-language-modal__option--active" 7503 data-country-selector 7504 data-value="US" 7505 > 7506 UNITED STATES 7507 </button> 7508 7509 7510 7511 7512 <button 7513 type="button" 7514 class="country-language-modal__option" 7515 data-country-selector 7516 data-value="FR" 7517 > 7518 FRANCE 7519 </button> 7520 7521 7522 7523 7524 7525 <a href="/en-us/pages/country-selector" class="country-language-modal__more" id="show-more-countries"> 7526 MORE COUNTRIES 7527 <svg 7528 xmlns="http://www.w3.org/2000/svg" 7529 class="icon icon-caret-right icon--small rtl-flip-x" 7530 viewBox="0 0 20 20" 7531 fill="none" 7532> 7533 <path d="M7.5 3.75L13.75 10L7.5 16.25" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7534</svg> 7535 7536 </a> 7537 7538 </div></form></div><div class="country-language-modal__divider"></div><div class="country-language-modal__section"> 7539 <h2 class="country-language-modal__title"> 7540 Select language 7541 </h2><form method="post" action="/en-us/localization" id="country-language-modal-language-30" accept-charset="UTF-8" class="country-language-modal__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="locale_code" value="en"> 7542 <div class="country-language-modal__list" id="clm-language-list"> 7543 7544 <button 7545 type="button" 7546 class="country-language-modal__option country-language-modal__option--active" 7547 data-language-selector 7548 data-value="en" 7549 data-language-name="ENGLISH" 7550 > 7551 ENGLISH 7552 </button> 7553 7554 </div></form></div> 7555 </div> 7556 </div> 7557 </div> 7558</basic-modal> 7559
7560<script> 7561(function() { 7562 const modal = document.getElementById('JklCountryLanguageModal'); 7563 if (!modal) return; 7564 7565 // Storage keys for persisting user's locale preferences 7566 const STORAGE_KEY_COUNTRY = 'fornasetti_selected_country'; 7567 const STORAGE_KEY_LANGUAGE = 'fornasetti_selected_language'; 7568 const STORAGE_KEY_MARKET = 'fornasetti_selected_market'; 7569 7570 // Extract the market code from Shopify's routes 7571 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7572 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7573 7574 let urlLanguage = null; 7575 let urlMarket = null; 7576 7577 if (localeMatch) { 7578 urlLanguage = localeMatch[1].toLowerCase(); 7579 urlMarket = localeMatch[2].toUpperCase(); 7580 } 7581 7582 // For multi-country markets (like EU), we need to use localStorage 7583 const singleCountryMarkets = ['US', 'CN', 'JP', 'AU', 'GB']; 7584 7585 let actualCountry = null; 7586 let actualLanguage = urlLanguage; 7587 7588 if (urlMarket && singleCountryMarkets.includes(urlMarket)) { 7589 actualCountry = urlMarket; 7590 } else if (urlMarket) { 7591 try { 7592 const storedCountry = localStorage.getItem(STORAGE_KEY_COUNTRY); 7593 if (storedCountry) { 7594 actualCountry = storedCountry; 7595 } 7596 } catch (e) {} 7597 } 7598 7599 7600 // Fix cached HTML: Update active states based on actual country 7601 if (actualCountry && modal.dataset.currentCountry !== actualCountry) { 7602 7603 const countryButtons = modal.querySelectorAll('[data-country-selector]'); 7604 countryButtons.forEach(button => { 7605 const buttonCountry = button.getAttribute('data-value'); 7606 if (buttonCountry === actualCountry) { 7607 button.classList.add('country-language-modal__option--active'); 7608 } else { 7609 button.classList.remove('country-language-modal__option--active'); 7610 } 7611 }); 7612 7613 const countryInput = modal.querySelector('input[name="country_code"]'); 7614 if (countryInput) { 7615 countryInput.value = actualCountry; 7616 } 7617 } 7618 7619 if (actualLanguage && modal.dataset.currentLanguage !== actualLanguage) { 7620 7621 const languageButtons = modal.querySelectorAll('[data-language-selector]'); 7622 languageButtons.forEach(button => { 7623 const buttonLanguage = button.getAttribute('data-value'); 7624 if (buttonLanguage === actualLanguage) { 7625 button.classList.add('country-language-modal__option--active'); 7626 } else { 7627 button.classList.remove('country-language-modal__option--active'); 7628 } 7629 }); 7630 7631 const languageInput = modal.querySelector('input[name="locale_code"]'); 7632 if (languageInput) { 7633 languageInput.value = actualLanguage; 7634 } 7635 } 7636 7637 // Get the country-to-languages mapping from the data attribute 7638 let countryLanguagesMap = {}; 7639 try { 7640 const countryLanguagesJson = modal.getAttribute('data-country-languages'); 7641 if (countryLanguagesJson) { 7642 countryLanguagesMap = JSON.parse(countryLanguagesJson); 7643 } 7644 } catch (e) { 7645 console.warn('[Country-Language Modal] Could not parse country languages data:', e); 7646 } 7647 7648 // Filter language buttons based on the current country's available languages 7649 function filterLanguagesByCountry(countryCode) { 7650 if (!countryCode) { 7651 console.log('[Country-Language Modal] No country code provided, showing all languages'); 7652 return; 7653 } 7654 7655 const availableLanguages = countryLanguagesMap[countryCode] || []; 7656 7657 const languageButtons = modal.querySelectorAll('[data-language-selector]'); 7658 languageButtons.forEach(button => { 7659 const buttonLanguage = button.getAttribute('data-value').toLowerCase(); 7660 if (availableLanguages.length === 0 || availableLanguages.map(l => l.toLowerCase()).includes(buttonLanguage)) { 7661 button.style.display = ''; 7662 } else { 7663 button.style.display = 'none'; 7664 } 7665 }); 7666 } 7667 7668 // Call the function to filter languages based on the actual country 7669 filterLanguagesByCountry(actualCountry); 7670 7671 const countryForm = document.getElementById('country-language-modal-country-30'); 7672 const languageForm = document.getElementById('country-language-modal-language-30'); 7673 7674 // Country selector 7675 if (countryForm) { 7676 const countryInput = countryForm.querySelector('input[name="country_code"]'); 7677 const countryButtons = countryForm.querySelectorAll('[data-country-selector]'); 7678 7679 countryButtons.forEach(button => { 7680 button.addEventListener('click', function() { 7681 const value = this.getAttribute('data-value'); 7682 7683 // Save the selected country to localStorage BEFORE form submission 7684 try { 7685 localStorage.setItem(STORAGE_KEY_COUNTRY, value); 7686 localStorage.removeItem(STORAGE_KEY_MARKET); 7687 } catch (e) {} 7688 7689 countryInput.value = value; 7690 countryForm.submit(); 7691 }); 7692 }); 7693 } 7694 7695 // Language selector 7696 if (languageForm) { 7697 const languageInput = languageForm.querySelector('input[name="locale_code"]'); 7698 const languageButtons = languageForm.querySelectorAll('[data-language-selector]'); 7699 7700 languageButtons.forEach(button => { 7701 button.addEventListener('click', function() { 7702 const value = this.getAttribute('data-value'); 7703 7704 // Save the selected language to localStorage BEFORE form submission 7705 try { 7706 localStorage.setItem(STORAGE_KEY_LANGUAGE, value); 7707 } catch (e) {} 7708 7709 languageInput.value = value; 7710 languageForm.submit(); 7711 }); 7712 }); 7713 } 7714})(); 7715</script>
7715 7716 7717 7718 7719
7719<script> 7720 (function() { 7721 // Storage keys for persisting user's locale preferences 7722 const STORAGE_KEY_COUNTRY = 'fornasetti_selected_country'; 7723 7724 // Fix cached locale display in mobile selector 7725 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7726 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7727 7728 if (localeMatch) { 7729 const actualLanguage = localeMatch[1].toLowerCase(); 7730 const urlMarket = localeMatch[2].toUpperCase(); 7731 const singleCountryMarkets = ['US', 'CN', 'JP', 'AU', 'GB']; 7732 7733 let actualCountry = null; 7734 7735 // For single-country markets, the market IS the country 7736 if (singleCountryMarkets.includes(urlMarket)) { 7737 actualCountry = urlMarket; 7738 } else { 7739 // For multi-country markets (EU), check localStorage 7740 try { 7741 const storedCountry = localStorage.getItem(STORAGE_KEY_COUNTRY); 7742 if (storedCountry) { 7743 actualCountry = storedCountry; 7744 } 7745 } catch (e) {} 7746 } 7747 7748 const switcher = document.querySelector('.country-language-switcher--mobile'); 7749 7750 if (switcher) { 7751 const liquidCountry = switcher.dataset.liquidCountry; 7752 const liquidLanguage = switcher.dataset.liquidLanguage; 7753 7754 if ((actualCountry && liquidCountry !== actualCountry) || liquidLanguage !== actualLanguage) { 7755 // Update country display 7756 const countryModal = document.getElementById('JklCountryLanguageModal'); 7757 if (countryModal && actualCountry) { 7758 const countryButton = countryModal.querySelector('[data-country-selector][data-value="' + actualCountry + '"]'); 7759 if (countryButton) { 7760 const countryName = countryButton.textContent.trim(); 7761 const countryDisplay = switcher.querySelector('[data-country-display]'); 7762 if (countryDisplay) { 7763 countryDisplay.textContent = countryName; 7764 } 7765 } 7766 } 7767 7768 if (countryModal) { 7769 const languageButton = countryModal.querySelector('[data-language-selector][data-value="' + actualLanguage + '"]'); 7770 if (languageButton) { 7771 const languageName = languageButton.textContent.trim(); 7772 const languageDisplay = switcher.querySelector('[data-language-display]'); 7773 if (languageDisplay) { 7774 languageDisplay.textContent = languageName; 7775 } 7776 } 7777 } 7778 } 7779 } 7780 } 7781 })(); 7782 </script>
7782 7783 7784 7785 7786<div class="footer__copyright footer__copyright--mobile"> 7787 <p class="footer__copyright-content"> 7788 © FORNASETTI STORE 2026 - all rights reserved. 7789 </p></div> 7790 </div> 7791 </div> 7792</footer> 7793<basic-modal id="JklLanguageModal" class="drawer modal language-modal" style="--modal-width: 352px;" hidden 7794 data-current-country="US" 7795 data-current-language="en" 7796 data-country-languages='{"AL": ["en","fr","it"],"DZ": ["en"],"AD": ["en","fr","it"],"AI": ["en"],"AG": ["en"],"AR": ["en"],"AM": ["en"],"AW": ["en"],"AU": ["en"],"AT": ["en","fr","it"],"AZ": ["en"],"BS": ["en"],"BH": ["en"],"BD": ["en"],"BY": ["en","fr","it"],"BE": ["en","fr","it"],"BZ": ["en"],"BM": ["en"],"BT": ["en"],"BO": ["en"],"BA": ["en","fr","it"],"BW": ["en"],"BR": ["en"],"VG": ["en"],"BN": ["en"],"BG": ["en","fr","it"],"KH": ["en"],"CA": ["en","fr"],"CV": ["en"],"KY": ["en"],"CL": ["en"],"CN": ["en"],"CO": ["en"],"KM": ["en"],"CK": ["en"],"CR": ["en"],"HR": ["en","fr","it"],"CY": ["en","fr","it"],"CZ": ["en","fr","it"],"DK": ["en","fr","it"],"DM": ["en"],"DO": ["en"],"EC": ["en"],"EG": ["en"],"EE": ["en","fr","it"],"SZ": ["en"],"FK": ["en"],"FO": ["en"],"FJ": ["en"],"FI": ["en","fr","it"],"FR": ["en","fr","it"],"GF": ["en"],"PF": ["en"],"GA": ["en"],"GM": ["en"],"GE": ["en"],"DE": ["en","fr","it"],"GH": ["en"],"GI": ["en","fr","it"],"GR": ["en","fr","it"],"GL": ["en"],"GD": ["en"],"GP": ["en"],"GT": ["en"],"GY": ["en"],"HN": ["en"],"HK": ["en"],"HU": ["en","fr","it"],"IS": ["en","fr","it"],"IN": ["en"],"ID": ["en"],"IE": ["en","fr","it"],"IL": ["en"],"IT": ["en","it"],"JM": ["en"],"JP": ["en"],"JO": ["en"],"KZ": ["en"],"KE": ["en"],"KW": ["en"],"LA": ["en"],"LV": ["en","fr","it"],"LB": ["en"],"LS": ["en"],"LI": ["en","fr","it"],"LT": ["en","fr","it"],"LU": ["en","fr","it"],"MO": ["en"],"MG": ["en"],"MW": ["en"],"MY": ["en"],"MV": ["en"],"MT": ["en","fr","it"],"MQ": ["en"],"MU": ["en"],"MX": ["en"],"MD": ["en","fr","it"],"MC": ["en","fr","it"],"MN": ["en"],"ME": ["en","fr","it"],"MS": ["en"],"MA": ["en"],"MZ": ["en"],"NA": ["en"],"NP": ["en"],"NL": ["en","fr","it"],"NC": ["en"],"NZ": ["en"],"NI": ["en"],"MK": ["en","fr","it"],"NO": ["en","fr","it"],"OM": ["en"],"PA": ["en"],"PG": ["en"],"PY": ["en"],"PE": ["en"],"PH": ["en"],"PL": ["en","fr","it"],"PT": ["en","fr","it"],"QA": ["en"],"RO": ["en","fr","it"],"RU": ["en"],"WS": ["en"],"SA": ["en"],"SN": ["en"],"RS": ["en","fr","it"],"SC": ["en"],"SG": ["en"],"SK": ["en","fr","it"],"SI": ["en","fr","it"],"SB": ["en"],"ZA": ["en"],"KR": ["en"],"ES": ["en","fr","it"],"LK": ["en"],"BL": ["en"],"KN": ["en"],"LC": ["en"],"VC": ["en"],"SR": ["en"],"SE": ["en","fr","it"],"CH": ["en","fr","it"],"TW": ["en"],"TZ": ["en"],"TH": ["en"],"TL": ["en"],"TG": ["en"],"TO": ["en"],"TT": ["en"],"TN": ["en"],"TR": ["en"],"TC": ["en"],"TV": ["en"],"UA": ["en","fr","it"],"AE": ["en"],"GB": ["en"],"US": ["en"],"UY": ["en"],"VU": ["en"],"VE": ["en"],"VN": ["en"]}' 7797> 7798 <div class="fixed-overlay" aria-controls="JklLanguageModal"></div> 7799 <div class="drawer__inner"> 7800 <button 7801 class="drawer__close-btn" 7802 aria-controls="JklLanguageModal" 7803 type="button" 7804 aria-label="Close" 7805 > 7806 <svg 7807 xmlns="http://www.w3.org/2000/svg" 7808 aria-hidden="true" 7809 focusable="false" 7810 class="icon icon-close icon--medium" 7811 fill="none" 7812 viewBox="0 0 24 24" 7813> 7814 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7815 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7816</svg> 7817 7818 </button> 7819 <div class="drawer__body v-scrollable h-full"> 7820 <h2 class="language-modal__title"> 7821 Select language 7822 </h2><form method="post" action="/en-us/localization" id="language-modal-31" accept-charset="UTF-8" class="language-modal__form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="â" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/en-us/search" /><input type="hidden" name="locale_code" value="en"> 7823 <div class="language-modal__list" id="lm-language-list"> 7824 7825 <button 7826 type="button" 7827 class="language-modal__option language-modal__option--active" 7828 data-language-selector 7829 data-value="en" 7830 data-language-name="ENGLISH" 7831 > 7832 ENGLISH 7833 </button> 7834 7835 </div></form></div> 7836 </div> 7837</basic-modal> 7838
7839<script> 7840(function() { 7841 const modal = document.getElementById('JklLanguageModal'); 7842 if (!modal) return; 7843 7844 // Extract the actual language and country from Shopify's routes 7845 const shopifyRoot = window.Shopify?.routes?.root || '/'; 7846 const localeMatch = shopifyRoot.match(/^\/([a-z]{2})-([a-z]{2})\/?$/i); 7847 7848 let actualLanguage = null; 7849 let actualCountry = null; 7850 7851 if (localeMatch) { 7852 actualLanguage = localeMatch[1].toLowerCase(); 7853 actualCountry = localeMatch[2].toUpperCase(); 7854 } 7855 7856 // For multi-country markets, check localStorage for the specific country 7857 const savedCountry = localStorage.getItem('fornasetti_selected_country'); 7858 if (savedCountry) { 7859 actualCountry = savedCountry; 7860 } 7861 // Fix cached HTML: Update active states based on actual Shopify routes 7862 if (actualLanguage && modal.dataset.currentLanguage !== actualLanguage) { 7863 const languageButtons = modal.querySelectorAll('[data-language-selector]'); 7864 languageButtons.forEach(button => { 7865 const buttonLanguage = button.getAttribute('data-value'); 7866 if (buttonLanguage === actualLanguage) { 7867 button.classList.add('language-modal__option--active'); 7868 } else { 7869 button.classList.remove('language-modal__option--active'); 7870 } 7871 }); 7872 7873 const languageInput = modal.querySelector('input[name="locale_code"]'); 7874 if (languageInput) { 7875 languageInput.value = actualLanguage; 7876 } 7877 } 7878 7879 // Get the country-to-languages mapping from the data attribute 7880 let countryLanguagesMap = {}; 7881 try { 7882 const countryLanguagesJson = modal.getAttribute('data-country-languages'); 7883 if (countryLanguagesJson) { 7884 countryLanguagesMap = JSON.parse(countryLanguagesJson); 7885 } 7886 } catch (e) { 7887 console.warn('[Language Modal] Could not parse country languages data:', e); 7888 } 7889 7890 // Filter language buttons based on the current country's available languages 7891 function filterLanguagesByCountry(countryCode) { 7892 if (!countryCode) { 7893 return; 7894 } 7895 7896 const availableLanguages = countryLanguagesMap[countryCode] || []; 7897 7898 const languageButtons = modal.querySelectorAll('[data-language-selector]'); 7899 languageButtons.forEach(button => { 7900 const buttonLanguage = button.getAttribute('data-value').toLowerCase(); 7901 if (availableLanguages.length === 0 || availableLanguages.map(l => l.toLowerCase()).includes(buttonLanguage)) { 7902 button.style.display = ''; 7903 } else { 7904 button.style.display = 'none'; 7905 } 7906 }); 7907 } 7908 7909 // Call the function to filter languages based on the actual country 7910 filterLanguagesByCountry(actualCountry); 7911 7912 const languageForm = document.getElementById('language-modal-31'); 7913 7914 // Language selector 7915 if (languageForm) { 7916 const languageInput = languageForm.querySelector('input[name="locale_code"]'); 7917 const languageButtons = languageForm.querySelectorAll('[data-language-selector]'); 7918 7919 languageButtons.forEach(button => { 7920 button.addEventListener('click', function() { 7921 const value = this.getAttribute('data-value'); 7922 languageInput.value = value; 7923 // Submit the form to change the language 7924 languageForm.submit(); 7925 }); 7926 }); 7927 } 7928})(); 7929</script>
7929 7930 7931 7932 7933</div> 7934<!-- END sections: footer-group --> 7935 </div> 7936 7937 <!-- BEGIN sections: overlay-group --> 7938<div id="shopify-section-sections--26626610594139__jkl-cart-drawer" class="shopify-section shopify-section-group-overlay-group"><link 7939 rel="stylesheet" 7940 href="//www.fornasetti.com/cdn/shop/t/6/assets/cart.css?v=91442184298651106951759488152" 7941 media="print" 7942 fetchpriority="low" 7943 onload="this.media='all'" 7944 ><link 7945 rel="stylesheet" 7946 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-cart-drawer-section.css?v=23450239932111060061779192829" 7947 media="print" 7948 fetchpriority="low" 7949 onload="this.media='all'" 7950 > 7951
7951<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-cart.js?v=98482285954539739651779192830" defer="defer"></script>
7951<cart-drawer 7952 id="JklCartDrawer" 7953 class="drawer cart-drawer drawer--top cart-drawer--empty" 7954 data-section-id="sections--26626610594139__jkl-cart-drawer" 7955 data-auto-close-delay="5" 7956 shopify-design-mode 7957 hidden 7958 > 7959 <div class="fixed-overlay" aria-controls="JklCartDrawer"></div> 7960 <div class="drawer__inner"> 7961 <button 7962 class="drawer__close-btn z-1" 7963 aria-controls="JklCartDrawer" 7964 type="button" 7965 aria-label="Cart" 7966 > 7967 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"> 7968 <path d="M12 4L4 12M4 4L12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 7969 </svg> 7970 </button> 7971 <div id="CartDrawerHeader-sections--26626610594139__jkl-cart-drawer" class="drawer__header cart-drawer__header flex items-start"> 7972 <h2 class="drawer__heading h3 flex items-center gap-1"> 7973 <span>You have no items in your shopping bag.</span> 7974 7975 </h2></div> 7976 <div id="JklCartDrawer-sections--26626610594139__jkl-cart-drawer" class="drawer__content flex flex-col h-full w-full"> 7977 <div 7978 id="CartDrawerBody-sections--26626610594139__jkl-cart-drawer" 7979 class="drawer__body cart-drawer__body flex-grow v-scrollable hidden" 7980 > 7981 <div class=""><cart-items> 7982 <div class="cart-items-slideshow" data-section-id="sections--26626610594139__jkl-cart-drawer"> 7983 <button 7984 class="cart-items-slideshow__arrow cart-items-slideshow__arrow--prev" 7985 type="button" 7986 aria-label="Previous items" 7987 hidden 7988 > 7989 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> 7990 <path d="M15 18L9 12L15 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 7991 </svg> 7992 </button> 7993 <div class="cart-items-slideshow__container"> 7994 <ul role="list" class="cart-items-slideshow__list"></ul> 7995 </div> 7996 <button 7997 class="cart-items-slideshow__arrow cart-items-slideshow__arrow--next" 7998 type="button" 7999 aria-label="Next items" 8000 hidden 8001 > 8002 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> 8003 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 8004 </svg> 8005 </button> 8006 </div> 8007 </cart-items> 8008 </div> 8009 </div> 8010 <div 8011 id="CartDrawerFooter-sections--26626610594139__jkl-cart-drawer" 8012 class="drawer__footer cart-drawer__footer grid gap-4 hidden" 8013 > 8014 <div class="drawer__footer-head"></div> 8015 <div class="drawer__footer-body"> 8016 <div class="cart-drawer-footer"> 8017 <h3 class="cart-drawer-footer__heading">Order Summary</h3> 8018 8019 <div class="cart-drawer-footer__item-count"> 8020 <span class="cart-drawer-footer__item-count-label">Number of Items</span> 8021 <span class="cart-drawer-footer__item-count-value">0</span> 8022 </div> 8023 8024 <div class="cart-drawer-footer__divider"></div> 8025 8026 <div class="cart-drawer-footer__totals"> 8027 <div class="cart-drawer-footer__total-row"> 8028 <span class="cart-drawer-footer__total-label">Subtotal</span> 8029 <span class="cart-drawer-footer__total-value">$0.00</span> 8030 </div><div class="cart-drawer-footer__total-row"> 8031 <span class="cart-drawer-footer__total-label"> 8032 Shipping 8033 <button type="button" class="cart-drawer-footer__shipping-info" aria-label="Shipping"> 8034 <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none"> 8035 <circle cx="6" cy="6" r="5.5" stroke="currentColor"/> 8036 <path d="M6 4V6M6 8H6.01" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/> 8037 </svg> 8038 </button> 8039 </span>
8040 <span class="cart-drawer-footer__total-value">Calculated at checkout</span> 8041 </div> 8042 <div class="cart-drawer-footer__total-row cart-drawer-footer__total-row--total"> 8043 <span class="cart-drawer-footer__total-label">Total</span> 8044 <span class="cart-drawer-footer__total-value">$0.00</span> 8045 </div> 8046 </div> 8047 8048 <form 8049 action="/en-us/cart" 8050 method="POST" 8051 novalidate 8052 class="cart-drawer-footer__checkout-form" 8053 > 8054 <button class="cart-drawer-footer__checkout-btn" type="submit" name="checkout"> 8055 Proceed to checkout 8056 </button> 8057 </form> 8058 8059 8060 <div class="cart-drawer-footer__divider"></div> 8061 8062 <div class="cart-drawer-footer__alternative-checkout"> 8063 <p class="cart-drawer-footer__alternative-checkout-label">- OR CHECKOUT WITH -</p> 8064 <div class="additional-checkout-buttons cart-drawer-footer__alternative-buttons"> 8065 <div class="dynamic-checkout__content" id="dynamic-checkout-cart" data-shopify="dynamic-checkout-cart"> <shopify-accelerated-checkout-cart wallet-configs="[{"supports_subs":true,"supports_def_opts":false,"name":"shop_pay","wallet_params":{"shopId":95659295067,"merchantName":"Fornasetti Store","personalized":false}},{"supports_subs":true,"supports_def_opts":false,"name":"paypal","wallet_params":{"shopId":95659295067,"countryCode":"IT","merchantName":"Fornasetti Store","phoneRequired":true,"companyRequired":false,"shippingType":"shipping","shopifyPaymentsEnabled":true,"hasManagedSellingPlanState":false,"requiresBillingAgreement":false,"gatewayType":"CONNECTED","merchantId":"KBLX947R6HK32","sdkUrl":"https://www.paypal.com/sdk/js?components=buttons\u0026commit=false\u0026currency=USD\u0026locale=en_US\u0026client-id=AexZEtAxk09Ncgj6FSWFFyGKbxxAZ_LTyJ2DPdJWl1YUlecinmc5AfIaRF2qYjWlusWahlzz6SVkY5Ci\u0026merchant-id=KBLX947R6HK32\u0026intent=capture","serviceableCountryCodes":["AE","AG","AL","AM","AR","AT","AU","AW","AZ","BA","BD","BE","BG","BH","BO","BR","CA","CH","CL","CN","CO","CR","CY","CZ","DE","DK","DM","DO","EC","EE","EG","ES","FI","FR","GB","GD","GE","GP","GR","GT","HK","HN","HR","HU","ID","IE","IL","IN","IS","IT","JM","JO","JP","KR","KW","LK","LT","LU","LV","MA","MD","ME","MK","MN","MQ","MS","MT","MX","MY","NI","NL","NO","NP","NZ","PE","PG","PH","PL","PT","PY","QA","RO","RS","SA","SE","SG","SI","SK","TH","TN","TR","TW","US","UY","VE","ZA"]}}]" access-token="5cb41c719856909811aa91f12dc5250b" buyer-country="US" buyer-locale="en" buyer-currency="USD" shop-id="95659295067" cart-id="d634c1235a4b0613bc6cf834a38d8a7e" enabled-flags="["1172c16a","a1d1f9a1","f5afabb3","370070f3"]" > <div class="wallet-button-wrapper"> <ul class='wallet-cart-grid wallet-cart-grid--skeleton' role="list" data-shopify-buttoncontainer="true"> <li data-testid='grid-cell' class='wallet-cart-button-container'><div class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'> </div></li><li data-testid='grid-cell' class='wallet-cart-button-container'><div class='wallet-cart-button wallet-cart-button__skeleton' role='button' disabled aria-hidden='true'> </div></li> </ul> </div> </shopify-accelerated-checkout-cart> </div> 8066 </div> 8067 </div> 8068 8069 </div> 8070 </div> 8071 </div> 8072 </div> 8073 </div> 8074 </cart-drawer> 8075 </div><div id="shopify-section-sections--26626610594139__jkl-search-drawer" class="shopify-section shopify-section-group-overlay-group"><link 8076 rel="stylesheet"
8077 href="//www.fornasetti.com/cdn/shop/t/6/assets/search.css?v=94606528337522958341759488153" 8078 media="print" 8079 fetchpriority="low" 8080 onload="this.media='all'" 8081 > 8082 <link 8083 rel="stylesheet" 8084 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-search-drawer.css?v=162860810454210534111770836231" 8085 media="print" 8086 fetchpriority="low" 8087 onload="this.media='all'" 8088 ><search-drawer id="JklSearchDrawer" class="search-drawer drawer drawer--top" shopify-design-mode hidden> 8089 <div class="fixed-overlay" aria-controls="JklSearchDrawer"></div> 8090 <div class="drawer__inner"> 8091 <div class="drawer__content"> 8092 <div class="search-drawer__bar"> 8093 <div class="search-drawer__search-area"><form 8094 action="/en-us/search" 8095 8096 is="predictive-search" 8097 data-results-limit="5" 8098 8099 method="get" 8100 role="search" 8101 class="jkl-search__form flex flex-col w-full h-full relative" 8102 data-search-recommendation-empty="true" 8103 data-section-id="sections--26626610594139__jkl-search-drawer" 8104 > 8105 <input type="hidden" name="options[prefix]" value="last"> 8106 <div class="search__field relative flex items-center"> 8107 <input 8108 id="SearchInput-sections--26626610594139__jkl-search-drawer" 8109 class="search__input form-control" 8110 type="search" 8111 name="q" 8112 8113 placeholder="Search" 8114 8115 role="combobox" 8116 aria-expanded="false" 8117 aria-owns="predictive-search-results" 8118 aria-controls="predictive-search-results" 8119 aria-haspopup="listbox" 8120 aria-autocomplete="list" 8121 autocorrect="off" 8122 autocomplete="off" 8123 autocapitalize="off" 8124 spellcheck="false" 8125 8126 > 8127 <label class="visually-hidden" for="SearchInput-sections--26626610594139__jkl-search-drawer">Search</label> 8128 <button 8129 type="reset" 8130 class="search__reset absolute flex items-center justify-center text-subtext" 8131 aria-label="Clear search term" 8132 > 8133 <span>Clear</span> 8134 8135 8136<div class="loading__spinner hidden"> 8137 <svg 8138 aria-hidden="true" 8139 focusable="false" 8140 class="spinner icon icon--extra-medium" 8141 viewBox="0 0 66 66" 8142 xmlns="http://www.w3.org/2000/svg" 8143 > 8144 <circle class="path" fill="none" stroke-width="4" cx="33" cy="33" r="30"></circle> 8145 </svg> 8146</div> 8147 8148 </button></div> 8149 </form> 8150 <div class="search__content flex-grow hidden"><div class="search__box search__results w-full h-full"> 8151 <div 8152 id="PredictiveSearchResults-sections--26626610594139__jkl-search-drawer" 8153 role="listbox" 8154 class="h-full w-full" 8155 ></div> 8156 </div> 8157 </div> 8158 </div> 8159 <div class="search-drawer__actions"> 8160 <a href="/en-us/search" class="search-drawer__view-results" data-search-link> 8161 View results 8162 </a> 8163 <button class="search-drawer__close-btn" aria-controls="JklSearchDrawer" type="button" aria-label="Close search"> 8164 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"> 8165 <path d="M12 4L4 12M4 4L12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8166 </svg> 8167 </button> 8168 </div> 8169 </div> 8170 </div> 8171 </div> 8172 </search-drawer> 8173 8174 </div><div id="shopify-section-sections--26626610594139__jkl-wishlist-drawer" class="shopify-section shopify-section-group-overlay-group"><link 8175 rel="stylesheet" 8176 href="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-wishlist-drawer.css?v=176371464050707351771768474511" 8177 media="print" 8178 fetchpriority="low" 8179 onload="this.media='all'" 8180>
8181<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-wishlist.js?v=57489101770046902551773409784" defer="defer"></script>
8181 8182
8183<script> 8184 window.wishlistCustomerLoggedIn = false; 8185</script>
8185 8186 8187<wishlist-drawer 8188 id="JklWishlistDrawer" 8189 class="drawer wishlist-drawer drawer--top" 8190 data-section-id="sections--26626610594139__jkl-wishlist-drawer" 8191 shopify-design-mode 8192 hidden 8193> 8194 <div class="fixed-overlay" aria-controls="JklWishlistDrawer"></div> 8195 <div class="drawer__inner"> 8196 <button 8197 class="drawer__close-btn z-1" 8198 aria-controls="JklWishlistDrawer" 8199 type="button" 8200 aria-label="Wishlist" 8201 > 8202 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"> 8203 <path d="M12 4L4 12M4 4L12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8204 </svg> 8205 </button> 8206 <div class="drawer__header wishlist-drawer__header flex items-start"> 8207 <h2 class="drawer__heading h3 flex items-center gap-1"> 8208 <span id="JklWishlistDrawerTitle">Wishlist</span> 8209 <span id="JklWishlistDrawerCount" class="wishlist-count" hidden> 8210 ( <span class="wishlist-count-value">0</span> items ) 8211 </span> 8212 </h2> 8213 </div> 8214 <div 8215 id="WishlistDrawerEmpty-sections--26626610594139__jkl-wishlist-drawer" 8216 class="drawer__empty wishlist-drawer__empty flex items-center justify-center" 8217 hidden 8218 > 8219 <p>You have no items on your Wishlist.</p> 8220 </div> 8221 <div id="JklWishlistDrawer-sections--26626610594139__jkl-wishlist-drawer" class="drawer__content flex flex-col h-full w-full"> 8222 <div 8223 id="WishlistDrawerBody-sections--26626610594139__jkl-wishlist-drawer" 8224 class="drawer__body wishlist-drawer__body flex-grow v-scrollable" 8225 hidden 8226 > 8227 <div class=""> 8228 <wishlist-items> 8229 <div class="wishlist-items-slideshow" data-section-id="sections--26626610594139__jkl-wishlist-drawer"> 8230 <button 8231 class="wishlist-items-slideshow__arrow wishlist-items-slideshow__arrow--prev" 8232 type="button" 8233 aria-label="Previous items" 8234 hidden 8235 > 8236 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> 8237 <path d="M15 18L9 12L15 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 8238 </svg> 8239 </button> 8240 <div class="wishlist-items-slideshow__container"> 8241 <ul role="list" class="wishlist-items-slideshow__list"></ul> 8242 </div> 8243 <button 8244 class="wishlist-items-slideshow__arrow wishlist-items-slideshow__arrow--next" 8245 type="button" 8246 aria-label="Next items" 8247 hidden 8248 > 8249 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"> 8250 <path d="M9 18L15 12L9 6" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 8251 </svg> 8252 </button> 8253 </div> 8254 </wishlist-items> 8255 </div> 8256 </div> 8257 </div> 8258 </div> 8259</wishlist-drawer> 8260 8261 8262 8263<basic-modal id="JklShareWishlistModal" class="drawer modal share-wishlist-modal" hidden> 8264 <div class="fixed-overlay" aria-controls="JklShareWishlistModal"></div> 8265 <div class="drawer__inner share-wishlist-modal__inner"> 8266 <button 8267 class="drawer__close-btn" 8268 aria-controls="JklShareWishlistModal" 8269 type="button" 8270 aria-label="Close" 8271 > 8272 <svg 8273 xmlns="http://www.w3.org/2000/svg" 8274 aria-hidden="true" 8275 focusable="false" 8276 class="icon icon-close icon--medium" 8277 fill="none" 8278 viewBox="0 0 24 24" 8279> 8280 <path d="M18.75 5.13496L5.25 18.8544" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8281 <path d="M18.75 18.8544L5.25 5.13496" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8282</svg> 8283 8284 </button> 8285 8286 <div class="drawer__body share-wishlist-modal__body"><div class="share-wishlist-modal__success-view" id="share-wishlist-success-view" hidden> 8287 <h2 class="share-wishlist-modal__success-title">Successfully Sent!</h2> 8288 <p class="share-wishlist-modal__success-subtitle">You have successfully shared this product with:</p> 8289 <p class="share-wishlist-modal__success-email" id="share-wishlist-success-email"></p> 8290 <p class="share-wishlist-modal__success-thanks">Thanks for sharing!</p> 8291 <p class="share-wishlist-modal__success-signature">Fornasetti Customer Service Online Store</p> 8292 </div><div class="share-wishlist-modal__content" id="share-wishlist-form-view"> 8293 <h2 class="share-wishlist-modal__title">Share with Friends</h2> 8294 8295 <form id="share-wishlist-form" class="share-wishlist-modal__form" novalidate><div class="share-wishlist-modal__field"> 8296 <label for="share-your-name" class="share-wishlist-modal__label"> 8297 YOUR NAME 8298 </label> 8299 <input 8300 type="text" 8301 id="share-your-name" 8302 name="your_name" 8303 class="share-wishlist-modal__input" 8304 value="" 8305 > 8306 </div><div class="share-wishlist-modal__field"> 8307 <label for="share-your-email" class="share-wishlist-modal__label"> 8308 YOUR EMAIL ADDRESS<span class="share-wishlist-modal__required">*</span> 8309 </label> 8310 <input 8311 type="email" 8312 id="share-your-email" 8313 name="your_email" 8314 class="share-wishlist-modal__input" 8315 value="" 8316 required 8317 >
8318 <span class="share-wishlist-modal__field-error" id="share-your-email-error" hidden data-error-required="Please enter an email" data-error-invalid="Please enter a valid email address"></span> 8319 </div><div class="share-wishlist-modal__field"> 8320 <label for="share-friend-name" class="share-wishlist-modal__label"> 8321 FRIEND'S NAME<span class="share-wishlist-modal__required">*</span> 8322 </label> 8323 <input 8324 type="text" 8325 id="share-friend-name" 8326 name="friend_name" 8327 class="share-wishlist-modal__input" 8328 required 8329 > 8330 <span class="share-wishlist-modal__field-error" id="share-friend-name-error" hidden data-error-required="Please enter your friend's name"></span> 8331 </div><div class="share-wishlist-modal__field"> 8332 <label for="share-friend-email" class="share-wishlist-modal__label"> 8333 FRIEND'S EMAIL<span class="share-wishlist-modal__required">*</span> 8334 </label> 8335 <input 8336 type="email" 8337 id="share-friend-email" 8338 name="friend_email" 8339 class="share-wishlist-modal__input" 8340 required 8341 > 8342 <span class="share-wishlist-modal__field-error" id="share-friend-email-error" hidden data-error-required="Please enter your friend's email" data-error-invalid="Please enter a valid email address"></span> 8343 </div><div class="share-wishlist-modal__privacy"> 8344 <a href="/pages/privacy-policy" target="_blank" rel="noopener noreferrer"> 8345 See our Privacy Policy 8346 </a> 8347 </div><div class="share-wishlist-modal__field"> 8348 <label for="share-message" class="share-wishlist-modal__label"> 8349 PERSONAL MESSAGE 8350 </label> 8351 <textarea 8352 id="share-message" 8353 name="personal_message" 8354 class="share-wishlist-modal__textarea" 8355 maxlength="250" 8356 rows="4" 8357 ></textarea> 8358 <p class="share-wishlist-modal__char-count" id="share-char-count-text" data-template="You have REMAINING_PLACEHOLDER characters left out of 250 limit"> 8359 You have 250 characters left out of 250 limit 8360 </p> 8361 </div> 8362 8363 <p class="share-wishlist-modal__required-note"> 8364 <span class="share-wishlist-modal__required">*</span> These fields are mandatory 8365 </p><button type="submit" class="share-wishlist-modal__submit"> 8366 <span class="share-wishlist-modal__submit-text">Send</span> 8367 <span class="share-wishlist-modal__submit-loading" hidden> 8368 8369<div class="loading__spinner hidden"> 8370 <svg 8371 aria-hidden="true" 8372 focusable="false" 8373 class="spinner icon icon--extra-medium" 8374 viewBox="0 0 66 66" 8375 xmlns="http://www.w3.org/2000/svg" 8376 > 8377 <circle class="path" fill="none" stroke-width="4" cx="33" cy="33" r="30"></circle> 8378 </svg> 8379</div> 8380</span> 8381 </button><div class="share-wishlist-modal__message share-wishlist-modal__message--success" hidden> 8382 Your wishlist has been sent successfully! 8383 </div> 8384 <div class="share-wishlist-modal__message share-wishlist-modal__message--error" hidden> 8385 There was an error sending your wishlist. Please try again. 8386 </div> 8387 </form> 8388 </div> 8389 </div> 8390 </div> 8391</basic-modal> 8392
8393<script> 8394(function() { 8395 const modal = document.getElementById('JklShareWishlistModal'); 8396 if (!modal) return; 8397 8398 const form = document.getElementById('share-wishlist-form'); 8399 const formView = document.getElementById('share-wishlist-form-view'); 8400 const successView = document.getElementById('share-wishlist-success-view'); 8401 const successEmailEl = document.getElementById('share-wishlist-success-email'); 8402 const messageTextarea = document.getElementById('share-message'); 8403 const charCountText = document.getElementById('share-char-count-text'); 8404 const charCountTemplate = charCountText ? charCountText.dataset.template : 'You have REMAINING_PLACEHOLDER characters left out of 250 limit'; 8405 const submitBtn = form ? form.querySelector('.share-wishlist-modal__submit') : null; 8406 const submitText = submitBtn ? submitBtn.querySelector('.share-wishlist-modal__submit-text') : null; 8407 const submitLoading = submitBtn ? submitBtn.querySelector('.share-wishlist-modal__submit-loading') : null; 8408 const successMsg = form ? form.querySelector('.share-wishlist-modal__message--success') : null; 8409 const errorMsg = form ? form.querySelector('.share-wishlist-modal__message--error') : null; 8410 8411 // Character counter for personal message 8412 if (messageTextarea && charCountText) { 8413 messageTextarea.addEventListener('input', function() { 8414 const remaining = 250 - this.value.length; 8415 charCountText.textContent = charCountTemplate.replace('REMAINING_PLACEHOLDER', remaining); 8416 }); 8417 } 8418 8419 // Validation helper functions 8420 function isValidEmail(email) { 8421 const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/; 8422 return emailRegex.test(email); 8423 } 8424 8425 function showFieldError(inputId, errorType) { 8426 const input = document.getElementById(inputId); 8427 const errorEl = document.getElementById(inputId + '-error'); 8428 if (input && errorEl) { 8429 input.classList.add('share-wishlist-modal__input--error'); 8430 const errorMessage = errorEl.dataset['error' + errorType.charAt(0).toUpperCase() + errorType.slice(1)] || 'This field is required'; 8431 errorEl.textContent = errorMessage; 8432 errorEl.hidden = false; 8433 } 8434 } 8435 8436 function clearFieldError(inputId) { 8437 const input = document.getElementById(inputId); 8438 const errorEl = document.getElementById(inputId + '-error'); 8439 if (input && errorEl) { 8440 input.classList.remove('share-wishlist-modal__input--error'); 8441 errorEl.textContent = ''; 8442 errorEl.hidden = true; 8443 } 8444 } 8445 8446 function clearAllFieldErrors() { 8447 clearFieldError('share-your-email'); 8448 clearFieldError('share-friend-name'); 8449 clearFieldError('share-friend-email'); 8450 } 8451 8452 function validateField(inputId) { 8453 const input = document.getElementById(inputId); 8454 if (!input) return true; 8455 8456 const value = input.value.trim(); 8457 const isEmailField = input.type === 'email'; 8458 8459 // Clear previous error first 8460 clearFieldError(inputId); 8461 8462 // Check if empty 8463 if (!value) { 8464 showFieldError(inputId, 'required'); 8465 return false; 8466 } 8467 8468 // Check email format for email fields 8469 if (isEmailField && !isValidEmail(value)) { 8470 showFieldError(inputId, 'invalid'); 8471 return false; 8472 } 8473 8474 return true; 8475 } 8476 8477 function validateForm() { 8478 let isValid = true; 8479 8480 // Validate all required fields 8481 if (!validateField('share-your-email')) isValid = false; 8482 if (!validateField('share-friend-name')) isValid = false; 8483 if (!validateField('share-friend-email')) isValid = false; 8484 8485 return isValid; 8486 } 8487 8488 // Setup blur validation for required fields 8489 function setupBlurValidation() { 8490 const requiredFields = ['share-your-email', 'share-friend-name', 'share-friend-email']; 8491 8492 requiredFields.forEach(function(fieldId) { 8493 const input = document.getElementById(fieldId); 8494 if (input) { 8495 input.addEventListener('blur', function() { 8496 validateField(fieldId); 8497 }); 8498 8499 // Also clear error when user starts typing again 8500 input.addEventListener('input', function() { 8501 if (input.classList.contains('share-wishlist-modal__input--error')) { 8502 clearFieldError(fieldId); 8503 } 8504 }); 8505 } 8506 }); 8507 } 8508 8509 // Initialize blur validation 8510 setupBlurValidation(); 8511 8512 // Reset form when modal is opened 8513 function resetForm() { 8514 if (form) { 8515 // Only reset the fields that should be reset (not customer email/name) 8516 const friendName = form.querySelector('#share-friend-name'); 8517 const friendEmail = form.querySelector('#share-friend-email'); 8518 const personalMessage = form.querySelector('#share-message'); 8519 8520 if (friendName) friendName.value = ''; 8521 if (friendEmail) friendEmail.value = ''; 8522 if (personalMessage) personalMessage.value = ''; 8523 if (charCountText) charCountText.textContent = charCountTemplate.replace('REMAINING_PLACEHOLDER', '250'); 8524 if (successMsg) successMsg.hidden = true; 8525 if (errorMsg) errorMsg.hidden = true; 8526 8527 // Clear validation errors 8528 clearAllFieldErrors(); 8529 } 8530 8531 // Reset views - show form, hide success 8532 if (formView) formView.hidden = false;
8533 if (successView) successView.hidden = true; 8534 if (successEmailEl) successEmailEl.textContent = ''; 8535 } 8536 8537 // Show success view with the friend's email 8538 function showSuccessView(friendEmail) { 8539 // Hide the form view 8540 if (formView) formView.hidden = true; 8541 8542 // Show the success view with the email 8543 if (successView) successView.hidden = false; 8544 if (successEmailEl) successEmailEl.textContent = friendEmail; 8545 } 8546 8547 // Listen for modal open via mutation observer 8548 const observer = new MutationObserver(function(mutations) { 8549 mutations.forEach(function(mutation) { 8550 if (mutation.attributeName === 'hidden') { 8551 if (!modal.hasAttribute('hidden')) { 8552 // Modal was opened - reset form and messages 8553 resetForm(); 8554 } 8555 } 8556 }); 8557 }); 8558 8559 observer.observe(modal, { attributes: true }); 8560 8561 // Form submission 8562 if (form) { 8563 form.addEventListener('submit', function(e) { 8564 e.preventDefault(); 8565 8566 // Validate form fields 8567 if (!validateForm()) { 8568 return; 8569 } 8570 8571 if (!window._swat) { 8572 console.error('Swym not initialized'); 8573 if (errorMsg) { 8574 errorMsg.hidden = false; 8575 errorMsg.textContent = 'Wishlist service not available. Please try again later.'; 8576 } 8577 return; 8578 } 8579 8580 // Check if wishlist has items 8581 if (!window.swymWishlistData || !window.swymWishlistData.currentListId) { 8582 console.error('No wishlist available'); 8583 if (errorMsg) { 8584 errorMsg.hidden = false; 8585 errorMsg.textContent = 'No wishlist available to share.'; 8586 } 8587 return; 8588 } 8589 8590 const formData = new FormData(form); 8591 const yourName = formData.get('your_name') || ''; 8592 const friendEmail = formData.get('friend_email'); 8593 const friendName = formData.get('friend_name') || ''; 8594 const personalMessage = formData.get('personal_message') || ''; 8595 8596 // Construct the note with friend's name 8597 let note = personalMessage; 8598 if (friendName && note) { 8599 note = `To ${friendName}:\n\n${note}`; 8600 } else if (friendName) { 8601 note = `To ${friendName}`; 8602 } 8603 8604 // Show loading state 8605 if (submitText) submitText.hidden = true; 8606 if (submitLoading) submitLoading.hidden = false; 8607 if (submitBtn) submitBtn.disabled = true; 8608 if (successMsg) successMsg.hidden = true; 8609 if (errorMsg) errorMsg.hidden = true; 8610 8611 const params = { 8612 toEmailId: friendEmail, 8613 fromName: yourName, 8614 note: note, 8615 lid: window.swymWishlistData.currentListId 8616 }; 8617 8618 window._swat.sendListViaEmail( 8619 params, 8620 function(response) { 8621 // Success - reset loading state 8622 if (submitText) submitText.hidden = false; 8623 if (submitLoading) submitLoading.hidden = true; 8624 if (submitBtn) submitBtn.disabled = false; 8625 8626 // Show the success view with the friend's email 8627 showSuccessView(friendEmail); 8628 }, 8629 function(error) { 8630 // Error 8631 console.error('Error sending wishlist:', error); 8632 if (submitText) submitText.hidden = false; 8633 if (submitLoading) submitLoading.hidden = true; 8634 if (submitBtn) submitBtn.disabled = false; 8635 if (errorMsg) { 8636 errorMsg.hidden = false; 8637 errorMsg.textContent = error.message || 'There was an error sending your wishlist. Please try again.'; 8638 } 8639 } 8640 ); 8641 }); 8642 } 8643 8644 // Close modal function - expose globally for external use 8645 window.closeShareWishlistModal = function() { 8646 // Use BasicModal's hide method if available 8647 if (modal && typeof modal.hide === 'function') { 8648 modal.hide(); 8649 } else { 8650 modal.removeAttribute('open'); 8651 modal.setAttribute('hidden', ''); 8652 } 8653 }; 8654 8655 // Open modal function - expose globally for external use 8656 window.openShareWishlistModal = function() { 8657 // Use BasicModal's show method if available 8658 if (modal && typeof modal.show === 'function') { 8659 modal.removeAttribute('hidden'); 8660 modal.show(); 8661 } else { 8662 modal.removeAttribute('hidden'); 8663 modal.setAttribute('open', ''); 8664 } 8665 }; 8666})(); 8667</script>
8667 8668 8669 8670 8671 8672</div><div id="shopify-section-sections--26626610594139__quick-view" class="shopify-section shopify-section-group-overlay-group section-group-overlay-quick-view"> 8673</div> 8674<!-- END sections: overlay-group --> 8675<style> 8676 .back-to-top { 8677 position: fixed; 8678 bottom: calc(var(--mobile-sticky-bar-height, 0px) + var(--sticky-atc-bar-height, 0px) + 1.5rem); 8679 right: 1.5rem; 8680 opacity: 0; 8681 visibility: hidden; 8682 transition: all 0.3s ease; 8683 z-index: 10; 8684 } 8685 .back-to-top button { 8686 background: rgb(var(--color-button)); 8687 color: rgb(var(--color-button-text)); 8688 border: 0; 8689 } 8690 .mobile-sticky-bar-down .back-to-top { 8691 bottom: calc(var(--sticky-atc-bar-height, 0px) + 1.5rem); 8692 } 8693 .back-to-top svg { 8694 transform: rotate(-90deg); 8695 } 8696 .back-to-top.show { 8697 opacity: 1; 8698 visibility: visible; 8699 } 8700</style> 8701<back-to-top class="block back-to-top"> 8702 <button class="btn btn--icon"> 8703 <svg 8704 xmlns="http://www.w3.org/2000/svg" 8705 class="icon icon-arrow icon--medium" 8706 viewBox="0 0 18 18" 8707 fill="none" 8708> 8709 <path d="M2.8125 9H15.1875" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8710 <path d="M10.125 3.9375L15.1875 9L10.125 14.0625" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> 8711</svg> 8712 8713 </button> 8714</back-to-top> 8715
8716<script> 8717 class BackToTop extends HTMLElement { 8718 constructor() { 8719 super(); 8720 this.addEventListener('click', this.scrollToTop); 8721 } 8722 8723 connectedCallback() { 8724 window.addEventListener('scroll', this.toggleVisibility.bind(this)); 8725 } 8726 8727 scrollToTop() { 8728 window.scrollTo({ 8729 top: 0, 8730 behavior: 'smooth', 8731 }); 8732 } 8733 8734 toggleVisibility() { 8735 if (window.scrollY > 400) { 8736 this.classList.add('show'); 8737 } else { 8738 this.classList.remove('show'); 8739 } 8740 } 8741 } 8742 8743 customElements.define('back-to-top', BackToTop); 8744</script>
8744 8745<ul hidden> 8746 <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li> 8747 <li id="a11y-new-window-message">Opens in a new window.</li> 8748 </ul> 8749 8750 8751
8751<script src="//www.fornasetti.com/cdn/shop/t/6/assets/quick-view.js?v=2969925004022311361759488157" defer="defer"></script>
8751 8752
8753<script src="//www.fornasetti.com/cdn/shop/t/6/assets/jkl-drawer-fix.js?v=99976309182224589151765277682" defer="defer"></script>
8753 8754 <div id="shopify-block-ASEx5bUwraG4vejBpV__17641746637687052564" class="shopify-block shopify-app-block"> 8755 8756 8757<!-- BEGIN app snippet: swymVersion -->
8757<script>var __SWYM__VERSION__ = '7.0.8';</script>
8757<!-- END app snippet --> 8758<!-- BEGIN app snippet: swymCustomCss --> 8759 8760 8761 8762 8763<style id="swym-custom-css"> 8764 8765</style> 8766 8767<!-- END app snippet --> 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779
8780<script> 8781 (function () { 8782 // Get CompanyLocation Metadata for B2B customer scenerios (SFS) 8783 8784 8785 // Put metafields in window variable 8786 const commonCustomizationSettings = '{"global-settings":{"icon":"heart","primaryColor":"#03000C","secondaryColor":"#FFFFFF","storefrontLayoutType":"as-drawer","buttonType":{"displayIcon":true,"displayText":false,"style":"text"},"collectionsButtonPosition":{"position":"top-right","verticalOffset":0,"horizontalOffset":0},"pdpButtonPosition":{"position":"buy_buttons_above","verticalOffset":0,"horizontalOffset":0},"enableStorefrontLayoutNotification":true,"storefrontLayoutDrawerWidth":400}}'; 8787 try { 8788 const parsedSettings = JSON.parse(commonCustomizationSettings); 8789 if (parsedSettings) { 8790 window.SwymWishlistCommonCustomizationSettings = parsedSettings[window.Shopify.theme.schema_name] || parsedSettings['global-settings']; 8791 } else { 8792 window.SwymWishlistCommonCustomizationSettings = {}; 8793 } 8794 } catch (e) { 8795 window.SwymWishlistCommonCustomizationSettings = {}; 8796 } 8797 8798 let enabledCommonFeatures = '{"add-to-wishlist-collections-button":true,"add-to-wishlist-pdp-button":true,"sfl-popup-v2":true,"control-centre":true,"auto-add-to-wishlist-from-pdp":{"pdpViewCount":"3","notificationTimeoutDuration":"5","selectedPosition":"TopLeft","enabled":false},"multiple-wishlist":false,"social-count":{"enabledOnCollections":false}}'; 8799 try { 8800 enabledCommonFeatures = JSON.parse(enabledCommonFeatures) || {}; 8801 } catch (e) { 8802 enabledCommonFeatures = {}; 8803 } 8804 // Storing COMMON FEATURES data in the window object for potential use in the storefront JS code. 8805 window.SwymEnabledCommonFeatures = enabledCommonFeatures; 8806 8807 // Ghost-Intent Configuration 8808 // Defaults to disabled (false). Only enabled when metafields explicitly set to "true". 8809 try { 8810 let ghostIntentConfig = { 8811 isExplicitConsentNeeded: false, 8812 isExplicitConsentNeededEvenForLocalStorage: false, 8813 askForPermissionOnFirstClick: true 8814 }; 8815 8816 8817 8818 window.SwymGhostIntentConfig = ghostIntentConfig; 8819 } catch(e) { 8820 window.SwymGhostIntentConfig = { 8821 isExplicitConsentNeeded: false, 8822 isExplicitConsentNeededEvenForLocalStorage: false, 8823 askForPermissionOnFirstClick: true 8824 }; 8825 } 8826 8827 // Education Layer Configuration 8828 // Reads from common enabled-features metafield first. Falls back to old standalone metafield for backward compatibility. 8829 8830 8831 window.SwymEducationLayerEnabled = enabledCommonFeatures?.["education-layer"] ?? true; 8832 8833 // Login Nudge Configuration 8834 // Reads from common enabled-features metafield first. Falls back to old standalone metafield for backward compatibility. 8835 8836 8837 window.SwymLoginNudgeEnabled = enabledCommonFeatures?.["login-nudge"] ?? true; 8838 8839 // Initialize or ensure SwymViewProducts exists 8840 if (!window.SwymViewProducts) { 8841 window.SwymViewProducts = {}; 8842 } 8843 8844 })(); 8845</script>
8845 8846 8847<!-- BEGIN app snippet: swymLoadConsentManager -->
8848<script> 8849 (function () { 8850 if (document.querySelector("script[data-swym-consent-manager]")) return; 8851 var swymConsentManagerScript = document.createElement("script"); 8852 swymConsentManagerScript.src = "https:\/\/cdn.shopify.com\/extensions\/01a0f142-9ec3-73a2-babd-8904a7e44cee\/swym-relay-840\/assets\/swym-consent-manager.js"; 8853 swymConsentManagerScript.async = false; // run in insertion order once fetched, instead of whenever fetch resolves 8854 swymConsentManagerScript.setAttribute("data-swym-consent-manager", "true"); 8855 document.head.appendChild(swymConsentManagerScript); 8856 })(); 8857</script>
8857 8858<!-- END app snippet --> 8859
8860<script 8861 8862 id="wishlist-embed-init" 8863 defer 8864 async 8865> 8866 (function () { 8867 window.swymWishlistEmbedLoaded = true; 8868 var fullAssetUrl = "https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/apps.bundle.js"; 8869 var assetBaseUrl = fullAssetUrl?.substring(0, fullAssetUrl.lastIndexOf('/') + 1); 8870 var swymJsPath = '//procdn.swymrelay.com/code/swym-shopify.js'; 8871 var baseJsPath = swymJsPath?.substring(0, swymJsPath.lastIndexOf('/') + 1); 8872 window.SwymCurrentJSPath = baseJsPath; 8873 window.SwymAssetBaseUrl = assetBaseUrl; 8874 8875 window.SwymCurrentStorePath = "//swymstore-v3pro-01.swymrelay.com"; 8876 8877 function loadSwymShopifyScript() { 8878 var element = ""; 8879 var scriptSrc = ""; 8880 8881 8882 element = "swym-ext-shopify-script"; 8883 window.SwymShopifyCdnInUse = true; 8884 scriptSrc = "https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/swym-ext-shopify.js"; 8885 8886 8887 if (document.getElementById(element)) { 8888 return; 8889 } 8890 8891 var s = document.createElement("script"); 8892 s.id = element; 8893 s.type = "text/javascript"; 8894 s.async = true; 8895 s.defer = true; 8896 s.src = scriptSrc; 8897 8898 s.onerror = function() { 8899 console.warn("Failed to load Swym Shopify script: ", scriptSrc, " Continuing with default"); 8900 // Fallback logic here 8901 element = `swym-ext-shopify-script-${__SWYM__VERSION__}`; 8902 var fallbackJsPathVal = "\/\/procdn.swymrelay.com\/code\/swym-shopify.js"; 8903 var fallbackJsPathWithExt = fallbackJsPathVal.replace("swym-shopify", "swym-ext-shopify"); 8904 scriptSrc = fallbackJsPathWithExt + '?shop=' + encodeURIComponent(window.Shopify.shop) + '&v=' + __SWYM__VERSION__; 8905 8906 var fallbackScript = document.createElement("script"); 8907 fallbackScript.id = element; 8908 fallbackScript.type = "text/javascript"; 8909 fallbackScript.async = true; 8910 fallbackScript.defer = true; 8911 fallbackScript.src = scriptSrc; 8912 var y = document.getElementsByTagName("script")[0]; 8913 y.parentNode.insertBefore(fallbackScript, y); 8914 }; 8915 8916 var x = document.getElementsByTagName("script")[0]; 8917 x.parentNode.insertBefore(s, x); 8918 } 8919 8920 var consentAPICallbackInvoked = false; 8921 function checkConsentAndLoad() { 8922 // Allow app to load in design mode (theme editor) regardless of consent 8923 if (window.Shopify?.designMode) { 8924 loadSwymShopifyScript(); 8925 return; 8926 } 8927 8928 // Ghost-Intent: If merchant enabled explicit consent, block SDK until 8929 // consent is given through our Ghost-Intent flow (sync nudge accept). 8930 // This works on any store regardless of region (EU or non-EU). 8931 var ghostConfig = window.SwymGhostIntentConfig || {}; 8932 if (ghostConfig.isExplicitConsentNeeded || ghostConfig.isExplicitConsentNeededEvenForLocalStorage) { 8933 try { 8934 var consentKey = 'swym-ghost-consent-' + (window.Shopify && window.Shopify.shop || ''); 8935 if (localStorage.getItem(consentKey) === 'true') { 8936 // Consent was given through our flow â load SDK 8937 loadSwymShopifyScript(); 8938 return; 8939 } 8940 } catch(e) {} 8941 8942 // Check if Shopify native cookie consent was given via the cookie banner. 8943 // If user accepted cookies through Shopify's banner, load SDK normally 8944 // (Ghost-Intent is only needed when NO consent mechanism has been used). 8945 var shopifyConsentGiven = window.Shopify?.customerPrivacy?.preferencesProcessingAllowed?.(); 8946 if (shopifyConsentGiven) { 8947 loadSwymShopifyScript(); 8948 return; 8949 } 8950 8951 console.warn("[Swym Ghost-Intent] SDK blocked until explicit consent is given"); 8952 return; 8953 } 8954 8955 var isCookieBannerVisible = window.Shopify?.customerPrivacy?.shouldShowBanner?.(); 8956 if(!isCookieBannerVisible) { 8957 loadSwymShopifyScript(); 8958 return; 8959 } 8960 var shouldLoadSwymScript = window.Shopify?.customerPrivacy?.preferencesProcessingAllowed?.(); 8961 if (shouldLoadSwymScript) { 8962 loadSwymShopifyScript(); 8963 } else { 8964 console.warn("No customer consent to load Swym Wishlist Plus"); 8965 } 8966 } 8967 function initialiseConsentCheck() { 8968 document.addEventListener("visitorConsentCollected", (event) => { checkConsentAndLoad(); }); 8969 window.Shopify?.loadFeatures?.( 8970 [{name: 'consent-tracking-api', version: '0.1'}], 8971 error => { 8972 consentAPICallbackInvoked = true; 8973 if (error) { 8974 if(!window.Shopify?.customerPrivacy) { 8975 loadSwymShopifyScript(); 8976 return; 8977 } 8978 } 8979 checkConsentAndLoad(); 8980 } 8981 ); 8982 } 8983 function consentCheckFallback(retryCount) { 8984 if(!consentAPICallbackInvoked) { 8985 if (window.Shopify?.customerPrivacy) { 8986 checkConsentAndLoad(); 8987 } else if (retryCount >= 1) { 8988 console.warn("Shopify.loadFeatures unsuccessful on site, refer - https://shopify.dev/docs/api/customer-privacy#loading-the-customer-privacy-api. Proceeding with normal Swym Wishlist Plus load"); 8989 // Ghost-Intent: route through checkConsentAndLoad so SDK block is respected 8990 checkConsentAndLoad(); 8991 } else { 8992 setTimeout(() => consentCheckFallback(retryCount + 1), 1000); 8993 } 8994 } 8995 } 8996 if (document.readyState === "loading") { 8997 document.addEventListener("DOMContentLoaded", initialiseConsentCheck); 8998 window.addEventListener("load", () => consentCheckFallback(0)); 8999 } else { 9000 initialiseConsentCheck(); 9001 } 9002 9003 })(); 9004</script>
9004 9005 9006<!-- BEGIN app snippet: swymSnippet -->
9006<script defer> 9007 (function () { 9008 const currentSwymJSPath = '//procdn.swymrelay.com/code/swym-shopify.js'; 9009 const currentSwymStorePath = 'https://swymstore-v3pro-01.swymrelay.com'; 9010 const dnsPrefetchLink = `<link rel="dns-prefetch" href="${currentSwymStorePath}" crossorigin>`; 9011 const dnsPrefetchLink2 = `<link rel="dns-prefetch" href="${currentSwymJSPath}">`; 9012 const preConnectLink = `<link rel="preconnect" href="${currentSwymJSPath}">`; 9013 const swymSnippet = document.getElementById('wishlist-embed-init'); 9014 if(dnsPrefetchLink) {swymSnippet.insertAdjacentHTML('afterend', dnsPrefetchLink);} 9015 if(dnsPrefetchLink2) {swymSnippet.insertAdjacentHTML('afterend', dnsPrefetchLink2);} 9016 if(preConnectLink) {swymSnippet.insertAdjacentHTML('afterend', preConnectLink);} 9017 })() 9018</script>
vendor: 1 bytes, line 9018
9018
9019<script id="swym-snippet" type="text"> 9020 window.swymLandingURL = document.URL; 9021 window.swymCart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 9022 window.swymPageLoad = function() { 9023 window.SwymProductVariants = window.SwymProductVariants || {}; 9024 window.SwymHasCartItems = 0 > 0; 9025 window.SwymPageData = {}, window.SwymProductInfo = {}; 9026 var unknown = {et: 0}; 9027 window.SwymPageData = unknown; 9028 9029 window.SwymPageData.uri = window.swymLandingURL; 9030 }; 9031 if(window.selectCallback){ 9032 (function(){ 9033 var originalSelectCallback = window.selectCallback; 9034 window.selectCallback = function(variant){ 9035 originalSelectCallback.apply(this, arguments); 9036 try{ 9037 if(window.triggerSwymVariantEvent){ 9038 window.triggerSwymVariantEvent(variant.id); 9039 } 9040 }catch(err){ 9041 console.warn("Swym selectCallback", err); 9042 } 9043 };})();} 9044 window.swymCustomerId =null; 9045 window.swymCustomerExtraCheck = 9046 null; 9047 var swappName = ("Wishlist" || "Wishlist"); 9048 var swymJSObject = { 9049 pid: "iLXNGAWQHOFa4NUhm6NBJcrUE9uwc40lytu0QtwYvW8=", 9050 interface: "/apps/swym" + swappName + "/interfaces/interfaceStore.php?appname=" + swappName 9051 }; 9052 window.swymJSShopifyLoad = function(){ 9053 if(window.swymPageLoad) swymPageLoad(); 9054 if(!window._swat) { 9055 (function (s, w, r, e, l, a, y) { 9056 r['SwymRetailerConfig'] = s; 9057 r[s] = r[s] || function (k, v) { 9058 r[s][k] = v; 9059 }; 9060 })('_swrc', '', window); 9061 _swrc('RetailerId', swymJSObject.pid); 9062 _swrc('Callback', function(){initSwymShopify();}); 9063 }else if(window._swat.postLoader){ 9064 _swrc = window._swat.postLoader; 9065 _swrc('RetailerId', swymJSObject.pid); 9066 _swrc('Callback', function(){initSwymShopify();}); 9067 }else{ 9068 initSwymShopify();} 9069 } 9070 if(!window._SwymPreventAutoLoad) { 9071 swymJSShopifyLoad(); 9072 } 9073</script>
9073 9074 9075<style id="safari-flasher-pre"></style>
9076<script> 9077 if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) { 9078 document.getElementById("safari-flasher-pre").innerHTML = '' + '#swym-plugin,#swym-hosted-plugin{display: none;}' + '.swym-button.swym-add-to-wishlist{display: none;}' + '.swym-button.swym-add-to-watchlist{display: none;}' + '#swym-plugin #swym-notepad, #swym-hosted-plugin #swym-notepad{opacity: 0; visibility: hidden;}' + '#swym-plugin #swym-notepad, #swym-plugin #swym-overlay, #swym-plugin #swym-notification,' + '#swym-hosted-plugin #swym-notepad, #swym-hosted-plugin #swym-overlay, #swym-hosted-plugin #swym-notification' + '{-webkit-transition: none; transition: none;}' + ''; 9079 window.SwymCallbacks = window.SwymCallbacks || []; 9080 window.SwymCallbacks.push(function(tracker) { 9081 tracker.evtLayer.addEventListener(tracker.JSEvents.configLoaded, function() { 9082 var x = function() { 9083 SwymUtils.onDOMReady(function() { 9084 var d = document.createElement("div"); 9085 d.innerHTML = "<style id='safari-flasher-post'>" + "#swym-plugin:not(.swym-ready),#swym-hosted-plugin:not(.swym-ready){display: none;}" + ".swym-button.swym-add-to-wishlist:not(.swym-loaded){display: none;}" + ".swym-button.swym-add-to-watchlist:not(.swym-loaded){display: none;}" + "#swym-plugin.swym-ready #swym-notepad, #swym-plugin.swym-ready #swym-overlay, #swym-plugin.swym-ready #swym-notification," + "#swym-hosted-plugin.swym-ready #swym-notepad, #swym-hosted-plugin.swym-ready #swym-overlay, #swym-hosted-plugin.swym-ready #swym-notification" + "{-webkit-transition: opacity 0.3s, visibility 0.3ms, -webkit-transform 0.3ms !important;-moz-transition: opacity 0.3s, visibility 0.3ms, -moz-transform 0.3ms !important;-ms-transition: opacity 0.3s, visibility 0.3ms, -ms-transform 0.3ms !important;-o-transition: opacity 0.3s, visibility 0.3ms, -o-transform 0.3ms !important;transition: opacity 0.3s, visibility 0.3ms, transform 0.3ms !important;}" + "</style>"; 9086 document.head.appendChild(d); 9087 });}; 9088 setTimeout(x, 10); 9089 });});} 9090 window.SwymOverrideMoneyFormat = "${{amount}}"; 9091</script>
9091 9092<style id="swym-product-view-defaults"> .swym-button.swym-add-to-wishlist-view-product:not(.swym-loaded) { display: none; } </style><!-- END app snippet --> 9093
9094<script 9095 9096 id="swymSnippetCheckAndActivate" 9097> 9098 (function () { 9099 var duplicateProneIds = ['safari-flasher-pre', 'swym-product-view-defaults', 'swym-wrap-login-handler']; 9100 9101 function removeDuplicateIdNodes(id) { 9102 var nodes = document.querySelectorAll('#' + id); 9103 nodes.forEach(function (node, index) { 9104 if (index > 0) { 9105 node.remove(); 9106 } 9107 }); 9108 } 9109 9110 function cleanupDuplicateSnippetNodes(activeScript) { 9111 if (!activeScript) { 9112 return; 9113 } 9114 var allSwymSnippets = document.querySelectorAll('script#swym-snippet'); 9115 allSwymSnippets.forEach(function (scriptNode) { 9116 if (scriptNode !== activeScript) { 9117 scriptNode.remove(); 9118 } 9119 }); 9120 } 9121 9122 function cleanupDuplicateActivationGuards() { 9123 var guardScripts = document.querySelectorAll('script#swymSnippetCheckAndActivate'); 9124 guardScripts.forEach(function (scriptNode, index) { 9125 if (index > 0) { 9126 scriptNode.removeAttribute('id'); 9127 } 9128 }); 9129 } 9130 9131 function postDomLoad() { 9132 var activeScript = document.querySelector('script#swym-snippet:not([type="text"])'); 9133 if (!activeScript) { 9134 var inactiveScript = document.querySelector('script#swym-snippet[type="text"]'); 9135 if (inactiveScript) { 9136 inactiveScript.type = 'text/javascript'; 9137 new Function(inactiveScript.textContent)(); 9138 activeScript = inactiveScript; 9139 } 9140 } 9141 9142 cleanupDuplicateSnippetNodes(activeScript); 9143 cleanupDuplicateActivationGuards(); 9144 duplicateProneIds.forEach(removeDuplicateIdNodes); 9145 } 9146 9147 if (document.readyState === 'loading') { 9148 document.addEventListener('DOMContentLoaded', postDomLoad); 9149 } else { 9150 postDomLoad(); 9151 } 9152 })(); 9153</script>
9153 9154 9155 9156
9157<script> 9158 (function () { 9159 const themeSchemaName = window.Shopify.theme.schema_name; 9160 9161 if (!window.SwymCallbacks) { 9162 window.SwymCallbacks = []; 9163 } 9164 window.SwymCallbacks.push(swat => { 9165 if (!swat) { 9166 return; 9167 } 9168 9169 // Ghost-Intent: Sync local wishlist items to cloud when SDK loads after consent 9170 if (window.SwymLocalWishlist && window.SwymLocalWishlist.getSyncableItems().length > 0) { 9171 window.SwymLocalWishlist.syncToCloud(swat); 9172 } 9173 9174 if (window._SwymSDKOnlyMode) { 9175 return; 9176 } 9177 9178 // ENABLE COMMON FEATURES 9179 let swymEnabledCommonFeatures = window.SwymEnabledCommonFeatures; 9180 Object.keys(swymEnabledCommonFeatures).forEach(key => { 9181 if (!swymEnabledCommonFeatures[key]) return; 9182 9183 switch (key) { 9184 case 'add-to-wishlist-collections-button': 9185 // Check if app block is already handling the collections button 9186 if (window.SwymCollectionsConfig) { 9187 return; 9188 } 9189 9190 // Check if v2 default collections is handling it 9191 if (window.SwymAdvancedCollectionsWishlistConfig) { 9192 return; 9193 } 9194 9195 // Fallback to old v1 behavior if v2 config is not present 9196 swat?.collectionsApi?.setDefaultCustomizationOptions(); 9197 swat?.collectionsApi?.initializeCollections(swat, false, themeSchemaName); 9198 9199 break; 9200 case 'add-to-wishlist-pdp-button': 9201 // Check if app block is already handling the PDP button 9202 if (window.swymATWButtonConfig?.shopifyExtensionType === 'appblock') { 9203 return; 9204 } 9205 9206 if (!(window.SwymPageData && window.SwymPageData.et === 1)) { 9207 // Not initiating pdp button as it is not a product page 9208 return; 9209 } 9210 9211 // Inject addtowishlist.css into the document's <head> 9212 var head = document.head; 9213 var pdpButtonStylesheet = "https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/addtowishlistbutton.css"; 9214 var pdpButtonStylesheetTag = document.createElement('link'); 9215 pdpButtonStylesheetTag.id = `swym-pdp-button-stylesheet`; 9216 pdpButtonStylesheetTag.rel = 'stylesheet'; 9217 pdpButtonStylesheetTag.href = pdpButtonStylesheet; 9218 9219 if (!document.getElementById('swym-pdp-button-stylesheet')) { 9220 head.appendChild(pdpButtonStylesheetTag); 9221 } 9222 9223 var x = document.getElementsByTagName('script')[0]; 9224 function createAndInsertScript(id, src, onLoadCallback) { 9225 var scriptTag = document.createElement('script'); 9226 scriptTag.id = id; 9227 scriptTag.type = 'text/javascript'; 9228 scriptTag.src = src; 9229 scriptTag.onload = onLoadCallback; 9230 x.parentNode.insertBefore(scriptTag, x); 9231 } 9232 9233 var pdpButtonScript = "https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/addtowishlistbutton.js"; 9234 createAndInsertScript(`swym-pdp-button-script`, pdpButtonScript, function () { 9235 const pdpBtnApi = window.WishlistPlusPDPButtonAPI; 9236 if (pdpBtnApi) { 9237 pdpBtnApi.setDefaultCustomizationOptions(swat); 9238 pdpBtnApi.initializePDPButton(swat, true); 9239 } 9240 }); 9241 break; 9242 default: 9243 return; 9244 } 9245 }); 9246 }); 9247 })(); // IIFE to prevent polluting global scope 9248</script>
9248 9249 9250 9251
9252<script> 9253 (function () { 9254 // Get the settings from Shopify's Liquid variables and create the styles 9255 const isControlCentreEnabledFromMetafield = window?.SwymEnabledCommonFeatures?.["control-centre"]; 9256 const isCommonCustomizationEnabledFromMetafield = window?.SwymWishlistCommonCustomizationSettings && 9257 Object.keys(window.SwymWishlistCommonCustomizationSettings).length > 0; 9258 const isControlCentreEnabledFromBlockSettings = true; 9259 9260 if (!(isControlCentreEnabledFromMetafield && isCommonCustomizationEnabledFromMetafield) && !isControlCentreEnabledFromBlockSettings) { 9261 // Don't enable control centre if this is disabled and block settings are not enabled 9262 return; 9263 } 9264 9265 let borderRadius = 6; 9266 let drawerWidth = window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutDrawerWidth || 400; 9267 9268 // Check if block settings exist, use them, otherwise fall back to common settings 9269 let primaryBgColor = isControlCentreEnabledFromBlockSettings ? 9270 "#000000" : 9271 window.SwymWishlistCommonCustomizationSettings.primaryColor; 9272 9273 let primaryTextColor = isControlCentreEnabledFromBlockSettings ? 9274 "#ffffff" : 9275 window.SwymWishlistCommonCustomizationSettings.secondaryColor; 9276 9277 let secondaryBgColor = isControlCentreEnabledFromBlockSettings ? 9278 "#F4F8FE" : null; 9279 let secondaryTextColor = isControlCentreEnabledFromBlockSettings ? 9280 "#333333" : null; 9281 9282 // Only use color adjustment functions if we're using common settings 9283 if (!secondaryBgColor || !secondaryTextColor) { 9284 function adjustOpacity(color, opacity) { 9285 if (color[0] === '#') { 9286 color = color.slice(1); 9287 } 9288 9289 if (color.length === 3) { 9290 color = color.split('').map(char => char + char).join(''); 9291 } 9292 9293 const r = parseInt(color.slice(0, 2), 16); 9294 const g = parseInt(color.slice(2, 4), 16); 9295 const b = parseInt(color.slice(4, 6), 16); 9296 9297 return `rgba(${r}, ${g}, ${b}, ${opacity})`; 9298 } 9299 9300 function hexToRgb(color) { 9301 if (color[0] === '#') { 9302 color = color.slice(1); 9303 } 9304 if (color.length === 3) { 9305 color = color.split('').map(c => c + c).join(''); 9306 } 9307 9308 return { 9309 r: parseInt(color.slice(0, 2), 16), 9310 g: parseInt(color.slice(2, 4), 16), 9311 b: parseInt(color.slice(4, 6), 16) 9312 }; 9313 } 9314 9315 function getLuminance({ r, g, b }) { 9316 return 0.299 * r + 0.587 * g + 0.114 * b; 9317 } 9318 9319 function generateSecondaryColors(primaryBgColor, primaryTextColor) { 9320 const secondaryBgOpacity = 0.2; 9321 const secondaryTextOpacity = 0.8; 9322 9323 const secondaryBgColor = adjustOpacity(primaryBgColor, secondaryBgOpacity); 9324 9325 const bgRgb = hexToRgb(primaryBgColor); 9326 const bgLuminance = getLuminance(bgRgb); 9327 9328 // Determine whether to use dark or light text for contrast 9329 const lightText = adjustOpacity(primaryTextColor, secondaryTextOpacity); 9330 const darkText = adjustOpacity(primaryBgColor, secondaryTextOpacity); 9331 9332 const secondaryTextColor = bgLuminance > 186 ? darkText : lightText; 9333 9334 return { 9335 secondaryBgColor, 9336 secondaryTextColor 9337 }; 9338 } 9339 9340 const generatedColors = generateSecondaryColors(primaryBgColor, primaryTextColor); 9341 secondaryBgColor = secondaryBgColor || generatedColors.secondaryBgColor; 9342 secondaryTextColor = secondaryTextColor || generatedColors.secondaryTextColor; 9343 } 9344 9345 // Create the CSS rule 9346 let styles = ` 9347 .swym-storefront-layout-root-component { 9348 --swym-storefront-layout-ui-border-radius: ${borderRadius}px; 9349 --swym-storefront-layout-button-border-radius: ${borderRadius}px; 9350 --swym-storefront-layout-side-drawer-width: ${drawerWidth}px; 9351 --swym-storefront-layout-button-color-bg-primary: ${primaryBgColor}; 9352 --swym-storefront-layout-button-color-text-primary: ${primaryTextColor}; 9353 --swym-storefront-layout-button-color-bg-secondary: ${secondaryBgColor}; 9354 --swym-storefront-layout-button-color-text-secondary: ${secondaryTextColor}; 9355 } 9356 `; 9357 9358 // Create a <style> element and append the styles 9359 let styleSheet = document.createElement("style"); 9360 styleSheet.type = "text/css"; 9361 styleSheet.innerText = styles; 9362 document.head.appendChild(styleSheet); 9363 9364 if (typeof window.SwymStorefrontLayoutContext === 'undefined') { 9365 window.SwymStorefrontLayoutContext = {}; 9366 } 9367 if (typeof window.SwymStorefrontLayoutExtensions === 'undefined'){ 9368 window.SwymStorefrontLayoutExtensions = {}; 9369 } 9370 9371 // Expose block settings toggle state so ThemeCSSMapping can respect it. 9372 // When true, theme editor color pickers take priority over inherited theme CSS variables. 9373 SwymStorefrontLayoutContext.BlockSettingsEnabled = isControlCentreEnabledFromBlockSettings; 9374 9375 if (isControlCentreEnabledFromBlockSettings) { 9376 // If block settings are enabled, use them 9377 SwymStorefrontLayoutContext.Settings = { 9378 EnableStorefrontLayoutOnLauncher: true, 9379 EnableStorefrontLayoutNotification: window?.SwymWishlistCommonCustomizationSettings?.enableStorefrontLayoutNotification ?? true, 9380 StorefrontLayoutType: window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutType || "as-drawer", 9381 StorefrontLayoutDrawerPosition: "left", 9382 StorefrontLayoutAsSectionContainerId: "swym-wishlist-render-container", 9383 StorefrontLayoutAsSectionPageURL: "/pages/swym-wishlist", 9384 EnableStorefrontLayoutVariantSelector: true, 9385 StorefrontLayoutNotificationPosition: "left", 9386 StorefrontLayoutActionPopupPosition: "left", 9387 StorefrontLayoutNotificationDuration: 5000 9388 }; 9389 } else { 9390 // If only metafield is enabled but no block settings, use common settings 9391 SwymStorefrontLayoutContext.Settings = { 9392 EnableStorefrontLayoutOnLauncher: true, 9393 EnableStorefrontLayoutNotification: window?.SwymWishlistCommonCustomizationSettings?.enableStorefrontLayoutNotification ?? true, 9394 StorefrontLayoutType: window?.SwymWishlistCommonCustomizationSettings?.storefrontLayoutType || "as-drawer", 9395 StorefrontLayoutDrawerPosition: "left", 9396 StorefrontLayoutAsSectionContainerId: "swym-wishlist-render-container", 9397 StorefrontLayoutAsSectionPageURL: "/pages/swym-wishlist", 9398 EnableStorefrontLayoutVariantSelector: true, 9399 StorefrontLayoutNotificationPosition: "left", 9400 StorefrontLayoutActionPopupPosition: "left", 9401 StorefrontLayoutNotificationDuration: 5000 9402 }; 9403 } 9404 const storefrontLayoutCallback = (swat) =>{ 9405 SwymStorefrontLayoutContext.swat = swat; 9406 let isStoreOnPaidPlan = swat.getApp('Wishlist')?.['is-paid']; 9407 let isWishlistEnabled = swat.getApp('Wishlist')?.['enabled']; 9408 SwymStorefrontLayoutContext.Settings = { 9409 ...SwymStorefrontLayoutContext?.Settings, 9410 EnableStorefrontLayoutCollection: window?.SwymEnabledCommonFeatures?.["multiple-wishlist"] ?? false, 9411 EnableStorefrontLayout: isWishlistEnabled && (isControlCentreEnabledFromBlockSettings || isControlCentreEnabledFromMetafield), 9412 } 9413 9414 if(SwymStorefrontLayoutContext?.Settings?.EnableStorefrontLayout){ 9415 if(SwymStorefrontLayoutContext?.CustomEvents?.LayoutInitialized){ 9416 var event = new CustomEvent(SwymStorefrontLayoutContext.CustomEvents.LayoutInitialized, { 9417 detail: { settings: SwymStorefrontLayoutContext?.Settings } 9418 }); 9419 document.dispatchEvent(event); 9420 }else{ 9421 swat.utils.warn(`LayoutInitialized event is not defined.`); 9422 } 9423 }else{ 9424 swat.utils.warn(`Storefront Layout is disabled.`); 9425 document.getElementById("swym-storefront-layout-container")?.remove(); 9426 document.getElementById("swym-storefront-extention-render-container")?.remove(); 9427 } 9428 } 9429 9430 if (!window.SwymCallbacks) { 9431 window.SwymCallbacks = []; 9432 } 9433 window.SwymCallbacks.push(storefrontLayoutCallback); 9434 9435 SwymStorefrontLayoutContext.SwymCustomerData = { 9436 9437 name: null, 9438 email: null 9439 9440 };
9441 SwymStorefrontLayoutContext.isShopperLoggedIn = !!SwymStorefrontLayoutContext?.SwymCustomerData?.email; 9442 })(); 9443</script>
9443 9444 9445 9446 9447 9448 9449 <div id="swym-storefront-extention-render-container"> 9450 <!-- BEGIN app snippet: swymStorefrontLayout -->
9450<script> 9451 (function () { 9452 const isControlCentreEnabledFromMetafield = window?.SwymEnabledCommonFeatures?.["control-centre"]; 9453 const isControlCentreEnabledFromBlockSettings = true; 9454 const isCommonCustomizationEnabledFromMetafield = window?.SwymWishlistCommonCustomizationSettings && 9455 Object.keys(window.SwymWishlistCommonCustomizationSettings).length > 0; 9456 9457 if (!(isControlCentreEnabledFromMetafield && isCommonCustomizationEnabledFromMetafield) && !isControlCentreEnabledFromBlockSettings) { 9458 return; 9459 } 9460 if (typeof window.SwymStorefrontLayoutContext === 'undefined') { 9461 window.SwymStorefrontLayoutContext = {}; 9462 } 9463 9464 // Initialize strings with empty values first to prevent string changes after loadStrings() 9465 SwymStorefrontLayoutContext.Strings = { 9466 title: "", 9467 addToCart: "", 9468 addedToCart: "", 9469 addAllToCartCta: "", 9470 addAllToCartSuccessText: "", 9471 addAllToCartEmptyText: "", 9472 addAllToCartErrorText: "", 9473 soldOut: "", 9474 addingToCart: "", 9475 viewCartCta: "", 9476 moveToCartCta: "", 9477 movingToCartCta: "", 9478 removeSflItemCta: "", 9479 9480 loginHeading: "", 9481 loginText: "", 9482 loginButtonText: "", 9483 loggedUserWelcomeMessage: "", 9484 VariantSelectorBtnText: "", 9485 wishlistTitle: "", 9486 wishlistInfo: "", 9487 emptyWishlistTitle: "", 9488 emptyWishlistDescription: "", 9489 9490 collectionTitle: "", 9491 emptyCarouselCollectionText: "", 9492 emptyCollectionText: "", 9493 emptyCollectionDescription: "", 9494 9495 addToCollectionTitle: "", 9496 removeItemCta: "", 9497 addToCollectionCta: "", 9498 createCollectionCta: "", 9499 saveNewCollectionCta: "", 9500 renameCollectionCta: "", 9501 deleteCollectionCta: "", 9502 shareCollectionCta: "", 9503 saveCollectionCta: "", 9504 editCollectionCta: "", 9505 shareCollectionTitle: "", 9506 shareCollectionMessage: "", 9507 sharedCollectionMessage: "", 9508 updateCollectionTitle: "", 9509 9510 errorMessageListNameRequired: "", 9511 errorMessageListNameRequire3Char: "", 9512 errorMessageListNameAlreadyExist: "", 9513 9514 notificationMessageItemSaved: "", 9515 notificationMessageItemRemoved: "", 9516 notificationMessageAddedToCart: "", 9517 notificationMessageAddedToCollection: "", 9518 notificationMessageCollectionSaved: "", 9519 notificationMessageCollectionDeleted: "", 9520 notificationMessageCollectionUpdated: "", 9521 notificationMessageCollectionUnavailable: "", 9522 notificationMessageSFLItemSaved: "", 9523 notificationMessageSFLItemRemoved: "", 9524 notificationMessageMovedToCart: "", 9525 9526 notificationActionAddToCollection: "", 9527 notificationActionView: "", 9528 notificationActionViewCollection: "", 9529 notificationActionGoToCart: "", 9530 9531 item: "", 9532 items: "", 9533 9534 tabWishlist: "", 9535 tabSavedForLater: "", 9536 tabSavedForYou: "", 9537 9538 savedForLaterTitle: "", 9539 emptySavedForLaterTitle: "", 9540 emptySavedForLaterDescription: "", 9541 9542 awNudgeMessage: "", 9543 awNudgeMessageSub: "", 9544 awNudgeLoginCTA: "", 9545 awNudgeDismiss: "", 9546 9547 emptySingleLoggedInTitle: "", 9548 emptySingleLoggedInDescription: "", 9549 emptySingleLoggedInBullet1: "", 9550 emptySingleLoggedInBullet2: "", 9551 emptySingleLoggedInBullet3: "", 9552 emptySingleLoggedInCTA: "", 9553 9554 emptyMultiLoggedInTitle: "", 9555 emptyMultiLoggedInDescription: "", 9556 emptyMultiLoggedInCreateTitle: "", 9557 emptyMultiLoggedInCreateDescription: "", 9558 emptyMultiLoggedInBrowseLabel: "", 9559 emptyMultiLoggedInCTA: "", 9560 emptyMultiLoggedInTag1: "", 9561 emptyMultiLoggedInTag2: "", 9562 emptyMultiLoggedInTag3: "", 9563 emptyMultiLoggedInTag4: "", 9564 emptyMultiLoggedInTag5: "", 9565 9566 emptyGuestTitle: "", 9567 emptyGuestDescription: "", 9568 emptyGuestSingleNotice: "", 9569 emptyGuestMultiNotice: "", 9570 emptyGuestLoginCTA: "", 9571 emptyGuestBrowseCTA: "", 9572 emptyGuestSignupText: "", 9573 emptyGuestSignupCTA: "", 9574 9575 emptySflTitle: "", 9576 emptySflDescription: "", 9577 emptySflStep1Title: "", 9578 emptySflStep1Description: "", 9579 emptySflStep2Title: "", 9580 emptySflStep2Description: "", 9581 emptySflLoggedInNotice: "", 9582 emptySflGuestNotice: "", 9583 emptySflGoToCartCTA: "", 9584 emptySflLoginCTA: "", 9585 emptySflSignupText: "", 9586 emptySflSignupCTA: "" 9587 }; 9588 9589 SwymStorefrontLayoutContext.stringsLoaded = false;
9590 SwymStorefrontLayoutContext.StorefrontLayoutUrls = SwymStorefrontLayoutContext.StorefrontLayoutUrls || {}; 9591 SwymStorefrontLayoutContext.StorefrontLayoutUrls.Login = "\/customer_authentication\/login?return_to=%2Fen-us%2Fsearch\u0026locale=en\u0026ui_hint=full\u0026region_country=US"; 9592 9593 /** 9594 * Function to override Swym's default UI behavior. 9595 **/ 9596 const overrideSwymDefaultUI = (swat) => { 9597 try{ 9598 swat.ui.open = function(){ 9599 window.location.hash = SwymStorefrontLayoutContext?.StorefrontLayoutUrls?.List; 9600 } 9601 9602 if (swat.ui?.uiRef?.settings?.UI) { 9603 swat.ui.uiRef.settings.UI.NotificationDisabled = true; 9604 } 9605 }catch(e){ 9606 swat.utils?.warn('Error overriding Swym default UI:', e); 9607 } 9608 } 9609 9610 /** 9611 * Callback function to override Swym's default UI behavior based on Storefront Layout settings. 9612 * 9613 * - Overrides `swat.ui.open` to redirect to a custom Storefront Layout URL if enabled. 9614 * - Overrides Swym's default notifications to log notifications instead of displaying them. 9615 * - Ensures the callback is pushed to `window.SwymCallbacks` for execution when Swym is initialized. 9616 * 9617 * @param {Object} swat - Swym's UI object used for overriding UI behaviors. 9618 */ 9619 const swymStorefrontLayoutCallback = (swat) =>{ 9620 SwymStorefrontLayoutContext.swat = swat; 9621 9622 overrideSwymDefaultUI(swat); 9623 9624 9625 let triggerHeartbeat = swat?.ExtensionHealth?.triggerExtensionHeartbeat; 9626 if (typeof triggerHeartbeat !== "function") return; 9627 9628 let wishlistNewUiHeartbeatData = ''; 9629 try { 9630 wishlistNewUiHeartbeatData = JSON.parse(wishlistNewUiHeartbeatData) || {}; 9631 } catch (e) { 9632 wishlistNewUiHeartbeatData = {}; 9633 } 9634 9635 let themeId = window.Shopify.theme.id; 9636 let isDesignMode = !!window.swymDesignMode; 9637 let lastHeartbeat = isDesignMode ? wishlistNewUiHeartbeatData?.editor : wishlistNewUiHeartbeatData?.[themeId]; 9638 let themeContext = isDesignMode ? 'editor' : themeId; 9639 let extensionData = { 9640 extensionName: "wishlist-new-ui", 9641 extensionType: "app-embed", 9642 metadata: {}, 9643 themeId: themeContext, 9644 extensionSource: "default" 9645 }; 9646 /** Stop heartbeat 9647 triggerHeartbeat(extensionData, lastHeartbeat); 9648 */ 9649 } 9650 9651 if (!window.SwymCallbacks) { 9652 window.SwymCallbacks = []; 9653 } 9654 window.SwymCallbacks.push(swymStorefrontLayoutCallback); 9655 })(); 9656</script>
9656 9657<link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/storefront-layout.css">
9658<script src="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/async-wishlist-apis.js" defer="defer"></script>
vendor: 1 bytes, line 9658
9658
9659<script src="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/storefront-layout.js" defer="defer"></script>
vendor: 1 bytes, line 9659
9659
9660<script src="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/storefront-layout-components.js" defer="defer"></script>
9660 9661 9662<swym-storefront-layout class="swym-storefront-layout-root-component"></swym-storefront-layout> 9663<!-- END app snippet --> 9664 </div> 9665 <!-- BEGIN app snippet: swymEducationTooltip --> 9666 9667 9668 9669 9670 <div id="swym-education-tooltip" aria-hidden="true" 9671 data-toast-desktop-message="Interesting? Click '{{wishlistIcon}}' to save it to your {{wishlistName}}." 9672 data-toast-mobile-message="Interesting? Tap '{{wishlistIcon}}' to add to your {{wishlistName}}." 9673 data-toast-cta="Wishlist Now" 9674 data-tooltip-desktop-message="Interesting? Click '{{wishlistIcon}}' to save it to your {{wishlistName}}." 9675 data-tooltip-mobile-message="Interesting? Tap '{{wishlistIcon}}' to add to your {{wishlistName}}." 9676 data-button-transition-text-1="Price drops? Know first." 9677 data-button-transition-text-2="Almost gone. Just saying." 9678 data-button-transition-text-3="Yours when ready."> 9679 </div> 9680 9681 <div id="swym-education-tooltip-bubble" class="swym-education-tooltip swym-education-tooltip-above" aria-hidden="true" role="tooltip"> 9682 <div class="swym-education-tooltip-content"> 9683 <span class="swym-education-tooltip-message"></span> 9684 <button class="swym-education-tooltip-close" data-swym-education-tooltip-close aria-label="Close consent dialog"> 9685 <svg width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"> 9686 <path d="M18 6L6 18M6 6l12 12"></path> 9687 </svg> 9688 </button> 9689 </div> 9690 <div class="swym-education-tooltip-arrow"></div> 9691 </div> 9692 9693 <style> 9694 /* Education tooltip â positioned fixed, managed by JS */ 9695 .swym-education-tooltip { 9696 position: fixed; 9697 z-index: 500; 9698 visibility: hidden; 9699 opacity: 0; 9700 transition: opacity 0.2s ease, visibility 0.2s ease; 9701 pointer-events: none; 9702 } 9703 .swym-education-tooltip.swym-education-tooltip-visible { 9704 visibility: visible; 9705 opacity: 1; 9706 pointer-events: auto; 9707 } 9708 .swym-education-tooltip-content { 9709 background: var(--swym-storefront-layout-notification-neutral-bg-color, #FFFFFF); 9710 color: var(--swym-storefront-layout-notification-neutral-text-color, #383d41); 9711 border: 1px solid var(--swym-storefront-layout-notification-neutral-border-color, #d6d8db); 9712 padding: 10px 14px; 9713 border-radius: var(--swym-storefront-layout-ui-border-radius, 10px); 9714 font-size: 13px; 9715 line-height: 1.4; 9716 display: flex; 9717 align-items: center; 9718 gap: 8px; 9719 max-width: 320px; 9720 box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); 9721 } 9722 .swym-education-tooltip-message { 9723 flex: 1; 9724 } 9725 .swym-education-tooltip-close { 9726 background: none; 9727 border: none; 9728 color: inherit; 9729 cursor: pointer; 9730 padding: 2px; 9731 line-height: 1; 9732 flex-shrink: 0; 9733 opacity: 0.7; 9734 } 9735 .swym-education-tooltip-close:hover { 9736 opacity: 1; 9737 } 9738 9739 /* Button text fade transition for education nudge */ 9740 .swym-btn-text-fade-out { 9741 opacity: 0; 9742 transition: opacity 0.2s ease; 9743 } 9744 .swym-btn-text-fade-in { 9745 opacity: 1; 9746 transition: opacity 0.3s ease; 9747 } 9748 9749 /* Arrow â points down when tooltip is above, up when below */ 9750 .swym-education-tooltip-arrow { 9751 width: 0; 9752 height: 0; 9753 position: absolute; 9754 left: 50%; 9755 transform: translateX(-50%); 9756 } 9757 .swym-education-tooltip-above .swym-education-tooltip-arrow { 9758 bottom: -6px; 9759 border-left: 6px solid transparent; 9760 border-right: 6px solid transparent; 9761 border-top: 6px solid var(--swym-storefront-layout-notification-neutral-bg-color, #FFFFFF); 9762 } 9763 .swym-education-tooltip-below .swym-education-tooltip-arrow { 9764 top: -6px; 9765 border-left: 6px solid transparent; 9766 border-right: 6px solid transparent; 9767 border-bottom: 6px solid var(--swym-storefront-layout-notification-neutral-bg-color, #FFFFFF); 9768 } 9769 9770 /* Hidden data element */ 9771 #swym-education-tooltip { 9772 display: none; 9773 } 9774 9775 @media (max-width: 480px) { 9776 .swym-education-tooltip-content { 9777 max-width: 90vw; 9778 font-size: 12px; 9779 } 9780 } 9781 </style> 9782 9783
9783<script src="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/swym-education-tooltip.js" defer="defer"></script>
9783 9784
9784<script src="https://cdn.shopify.com/extensions/01a0f142-9ec3-73a2-babd-8904a7e44cee/swym-relay-840/assets/swym-education.js" defer="defer"></script>
9784 9785 9786<!-- END app snippet --> 9787 9788 9789</div>
9789<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
9789 9790</body> 9791</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.