PageSourceSearch

https://www.anelet.com/products/mt-advent-calendar-2026

html anelet.com collected 2026-10-07 13:10:38 UTC 413,033 bytes, 7,725 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3  <head>
4    <!-- prefetch dns -->
5<meta http-equiv="x-dns-prefetch-control" content="on">
6<link rel="dns-prefetch" href="https://cdn.shoplineapp.com">
7<link rel="preconnect" href="https://cdn.shoplineapp.com" crossorigin>
8<link rel="dns-prefetch" href="https://shoplineimg.com">
9<link rel="preconnect" href="https://shoplineimg.com">
10<link rel="dns-prefetch" href="https://shoplineimg.com">
11
12<link rel="preconnect" href="https://shoplineimg.com" title="image-service-origin">
13
14
15  <link rel="preload" href="https://cdn.shoplineapp.com/s/javascripts/currencies.js" as="script">
16
17
18
19
20
21
22
23
24
25
26
27
28  
29  
30  
31    
32    <link rel="preload" as="image" href="https://shoplineimg.com/6576a1830ee9d100760d043d/6ab37ddf376ab931829295cc/800x.webp?source_format=jpg" media="(max-height: 950px)">
33  
34
35
36
37
38
39
40
41  
42
43
44  <title ng-non-bindable>【Margot&amp;Tita】Advent Calendar 2026 - Limited quantity</title>
45
46<meta name="description" content="Margot&amp;Tita 2026 Advent Calendar features 24 fragrances to discover, wear, and layer according to your mood and occasion. A beautifully curated Christmas gift for fragrance lovers.">
47
48
49  <meta name="keywords" content="倒數月曆,倒數日曆,聖誕月曆">
50
51
52
53
54<link rel="alternate" type="text/plain" href="https://www.anelet.com/llms.txt">
55<link rel="alternate" type="text/plain" href="https://www.anelet.com/llms-full.txt">
56
57
58
59
60
61
62  
63
64
65
66
67
68  <meta property="og:title" content="【Margot&amp;Tita】Advent Calendar 2026 - Limited quantity">
69
70<meta property="og:type" content="product"/>
71
72
73  <meta property="og:url" content="https://www.anelet.com/products/mt-advent-calendar-2026">
74  <link rel="canonical" href="https://www.anelet.com/products/mt-advent-calendar-2026">
75
76<meta property="og:description" content="Margot&amp;Tita 2026 Advent Calendar features 24 fragrances to discover, wear, and layer according to your mood and occasion. A beautifully curated Christmas gift for fragrance lovers.">
77
78
79  <meta property="og:image" content="https://img.shoplineapp.com/media/image_clips/6ab37ddf376ab931829295cc/original.jpg?1790148063=&amp;owner_id=6576a1830ee9d100760d043d">
80  <meta name="thumbnail" content="https://img.shoplineapp.com/media/image_clips/6ab37ddf376ab931829295cc/original.jpg?1790148063=&amp;owner_id=6576a1830ee9d100760d043d">
81
82
83
84
85
86
87
88  
88<script type="application/ld+json">
89    {"@context":"https://schema.org","@type":"WebSite","name":"Anelet義法香品BAR首創領導品牌","url":"https://www.anelet.com"}
90  </script>
90
91
92
93
94
95
96<script type="application/ld+json">
97  {"@context": "https://schema.org","@type": "Organization","name": "Anelet義法香品BAR首創領導品牌","url": "https://www.anelet.com","logo": "https://img.shoplineapp.com/media/image_clips/6576ee9491ffba18a0c992b8/original.png?1702293140"}
98</script>
98
99
100
101
102
103
104
105
106  <meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
107
108<meta name="mobile-web-app-capable" content="yes">
109<meta name="format-detection" content="telephone=no" />
110<meta name="google" value="notranslate">
111
112
113
114  <link rel="shortcut icon" type="image/png" href="https://img.shoplineapp.com/media/image_clips/6576e9197585543b99776d58/original.png?1702291737">
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134  
135  
136  
137  
138  
139  
140  
141  
142    <meta name="google-site-verification" content="W3Wn20X00bFliJC7uOkvb4WEb0jRDwDC9lA4IUOHdiA">
143  
144  
145  
146  
147  
148  
149
150
151
152
153
154
155
156
157
158
159
160
161  
162    
163    
164
165    
166      
167  
168  
169  <link rel="stylesheet" href="/assets/common-898e3d282d673c037e3500beff4d8e9de2ee50e01c27252b33520348e0b17da0.css" media="all" onload="">
170
171
172
173      
174      
175  
176  
177  <link rel="stylesheet" href="/assets/theme_kingsman_v2-c960f9542773c7880a404b0a05ccb6f1711b0461f71bea7eef2b7f00e711aeda.css" media="all" onload="">
178
179
180    
181
182    
183
184  
185  
186  
187  
188
189
190  
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207  <link media="all" rel="stylesheet" href="https://cdn.shoplineapp.com/packs/css/intl_tel_input-0d9daf73.chunk.css" />
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227<script type="text/javascript">
228  window.mainConfig = JSON.parse('{\"sessionId\":\"\",\"merchantId\":\"6576a1830ee9d100760d043d\",\"appCoreHost\":\"shoplineapp.com\",\"assetHost\":\"https://cdn.shoplineapp.com/packs/\",\"apiBaseUrl\":\"http://shoplineapp.com\",\"eventTrackApi\":\"https://events.shoplytics.com/api\",\"frontCommonsApi\":\"https://front-commons.shoplineapp.com/api\",\"appendToUrl\":\"\",\"env\":\"production\",\"merchantData\":{\"_id\":\"6576a1830ee9d100760d043d\",\"addon_limit_enabled\":true,\"base_country_code\":\"TW\",\"base_currency\":{\"id\":\"twd\",\"iso_code\":\"TWD\",\"alternate_symbol\":\"NT\$\",\"name\":\"New Taiwan Dollar\",\"symbol_first\":true,\"subunit_to_unit\":1},\"base_currency_code\":\"TWD\",\"beta_feature_keys\":[],\"brand_home_url\":\"https://www.anelet.com\",\"checkout_setting\":{\"enable_membership_autocheck\":true,\"enable_subscription_autocheck\":false,\"enforce_user_login_on_checkout\":true,\"enable_sc_fast_checkout\":false,\"enable_lock_cart_sc_product\":true,\"multi_checkout\":{\"enabled\":false}},\"current_plan_key\":\"basket\",\"current_theme_key\":\"kingsman_v2\",\"delivery_option_count\":11,\"enabled_stock_reminder\":false,\"handle\":\"anelet\",\"identifier\":\"\",\"instagram_access_token\":\"\",\"instagram_id\":\"\",\"invoice_activation\":\"active\",\"mobile_logo_media_url\":\"https://img.shoplineapp.com/media/image_clips/6576e9147585543c92776937/original.png?1702291731\",\"name\":\"Anelet義法香品BAR首創領導品牌\",\"order_setting\":{\"invoice_activation\":\"active\",\"current_invoice_service_provider\":\"tradevan\",\"short_message_activation\":\"inactive\",\"default_out_of_stock_reminder\":true,\"auto_cancel_expired_orders\":true,\"auto_revert_credit\":true,\"enabled_order_auth_expiry\":true,\"enable_order_split_einvoice_reissue\":true,\"no_duplicate_uniform_invoice\":true,\"hourly_auto_invoice\":true,\"enabled_location_id\":true,\"enabled_sf_hidden_product_name\":false,\"slp_auto_refund\":false,\"customer_return_order\":{\"enabled\":false,\"available_return_days\":\"7\"},\"customer_cancel_order\":{\"enabled\":true,\"auto_revert_credit\":true},\"custom_fields\":[{\"type\":\"textarea\",\"label\":\"本店支援 line pay 付款,歡迎使用 line pay 進行結帳\",\"display_type\":\"text_field\",\"name_translations\":{\"zh-hant\":\"本店支援 LINE Pay 付款,歡迎使用 LINE Pay 進行結帳\"},\"hint_translations\":{\"en\":\"\",\"zh-hant\":\"\",\"zh-hk\":\"\",\"zh-cn\":\"\",\"zh-tw\":\"\",\"vi\":\"\",\"ms\":\"\",\"ja\":\"\",\"th\":\"\",\"id\":\"\",\"de\":\"\",\"fr\":\"\"}},{\"type\":\"text\",\"label\":\"送禮包裝|如需贈禮請於選單勾選\",\"display_type\":\"dropdown\",\"dropdown_options\":[{\"zh-hant\":\"品牌提袋\"},{\"zh-hant\":\"品牌禮卡+提袋\"}],\"name_translations\":{\"zh-hant\":\"送禮包裝|如需贈禮請於選單勾選\"},\"hint_translations\":{\"zh-hant\":\"\"},\"field_id\":\"67568a24f06b45000ea817af\"},{\"type\":\"text\",\"label\":\"30ml淡香精二、三支限定|需升級為二或三入禮盒裝請備註\",\"display_type\":\"text_field\",\"name_translations\":{\"zh-hant\":\"30ml淡香精二、三支限定|需升級為二或三入禮盒裝請備註\"},\"field_id\":\"67568a24f06b45000ea817b0\"}],\"invoice\":{\"tax_id\":\"\",\"tax_type\":\"1\"},\"invoice_tradevan\":{\"tax_id\":\"28307396\",\"oversea_tax_type\":\"1\",\"tax_type\":\"1\",\"zero_tax_reason\":\"\",\"n_p_o_b_a_n\":{\"name\":\"財團法人中華民國兒童癌症基金會\",\"code\":\"88888\",\"short_name\":\"兒癌基金會\",\"tax_id\":\"04140854\",\"county\":\"臺北市\"},\"source\":{\"business_group_code\":\"SL28307396\",\"business_type_code\":\"SLEC1\"}},\"facebook_messenging\":{\"status\":\"active\"},\"status_update_sms\":{\"status\":\"deactivated\"},\"private_info_handle\":{\"enabled\":true,\"custom_fields_enabled\":false}},\"payment_method_count\":10,\"product_setting\":{\"enabled_show_member_price\":true,\"enabled_product_review\":true,\"variation_display\":\"dropdown\",\"price_range_enabled\":true,\"enabled_pos_product_customized_price\":false,\"enabled_pos_product_price_tier\":false,\"preorder_add_to_cart_button_display\":\"depend_on_stock\",\"enabled_pos_pinned_product\":false},\"promotion_setting\":{\"show_promotion_reminder\":true,\"show_coupon\":true,\"multi_order_discount_strategy\":\"order_or_tier_promotion\",\"order_promotions_ignore_exclude_product\":true,\"order_gift_exclude_credit_and_point\":true,\"order_gift_threshold_mode\":\"after_all_discounts\",\"order_free_shipping_threshold_mode\":\"after_all_discounts\",\"category_item_gift_threshold_mode\":\"before_discounts\",\"category_item_free_shipping_threshold_mode\":\"before_discounts\"},\"rollout_keys\":[\"2026_pdp_revamp_mobile_addon_products\",\"3_layer_category\",\"3_layer_navigation\",\"3_layer_variation\",\"711_CB_13countries\",\"711_CB_pickup_TH\",\"711_c2b_report_v2\",\"711_cross_delivery\",\"AdminCancelRecurringSubscription_V1\",\"MC_WA_Template_Management\",\"MC_manual_order\",\"MO_Apply_Coupon_Code\",\"StaffCanBeDeleted_V1\",\"SummaryStatement_V1\",\"UTM_export\",\"UTM_register\",\"abandoned_cart_notification\",\"add_system_fontstyle\",\"add_to_cart_revamp\",\"addon_products_limit_10\",\"addon_products_limit_unlimited\",\"addon_quantity\",\"address_format_batch2\",\"address_format_jp\",\"address_format_my\",\"address_format_us\",\"address_format_vn\",\"admin_app_extension\",\"admin_clientele_profile\",\"admin_custom_domain\",\"admin_image_service\",\"admin_js_revamp_action_logs\",\"admin_js_upgrade_SL-32913\",\"admin_js_upgrade_SL-45990\",\"admin_logistic_bank_account\",\"admin_manual_order\",\"admin_realtime\",\"admin_search_crawl_setting\",\"admin_vietnam_dong\",\"admin_whitelist_ip\",\"adminapp_order_form\",\"adminapp_wa_contacts_list\",\"ads_system_new_tab\",\"advanced_menu_app\",\"advanced_menu_app_availability\",\"adyen_my_sc\",\"affiliate_by_product\",\"affiliate_dashboard\",\"affiliate_kol_report\",\"affiliate_kol_report_appstore\",\"affiliate_multiple_promotion\",\"affiliate_product_level_attribution\",\"alipay_hk_sc\",\"android_pos_agent_clockin_n_out\",\"android_pos_purchase_order_partial_in_storage\",\"android_pos_save_send_receipt\",\"android_pos_v2_force_upgrade_version_1-50-0_date_2025-08-30\",\"app_categories_filtering\",\"app_multiplan\",\"app_subscription_prorated_billing\",\"apply_multi_order_discount\",\"apps_store\",\"apps_store_blog\",\"apps_store_fb_comment\",\"apps_store_wishlist\",\"appstore_free_trial\",\"archive_order_data\",\"archive_order_ui\",\"assign_products_to_category\",\"auth_flow_revamp\",\"auto_credit\",\"auto_credit_notify\",\"auto_credit_percentage\",\"auto_credit_recurring\",\"auto_reply_comment\",\"auto_reply_fb\",\"auto_save_sf_plus_address\",\"availability_buy_online_pickup_instore\",\"availability_preview_buy_online_pickup_instore\",\"back_in_stock_appstore\",\"back_in_stock_notify\",\"basket_comparising_link_CNY\",\"basket_comparising_link_HKD\",\"basket_comparising_link_TWD\",\"basket_invoice_field\",\"basket_pricing_page_cny\",\"basket_pricing_page_hkd\",\"basket_pricing_page_myr\",\"basket_pricing_page_sgd\",\"basket_pricing_page_thb\",\"basket_pricing_page_twd\",\"basket_pricing_page_usd\",\"basket_pricing_page_vnd\",\"basket_subscription_coupon\",\"basket_subscription_email\",\"bianco_setting\",\"bidding_select_product\",\"bing_ads\",\"birthday_format_v2\",\"block_gtm_for_lighthouse\",\"blog\",\"blog_app\",\"blog_revamp_admin\",\"blog_revamp_admin_category\",\"blog_revamp_doublewrite\",\"blog_revamp_related_products\",\"blog_revamp_shop_category\",\"blog_revamp_singleread\",\"breadcrumb\",\"broadcast_addfilter\",\"broadcast_advanced_filters\",\"broadcast_analytics\",\"broadcast_center\",\"broadcast_clone\",\"broadcast_email_html\",\"broadcast_facebook_template\",\"broadcast_line_template\",\"broadcast_preset_time\",\"broadcast_to_unsubscribers_sms\",\"broadcast_unsubscribe_email\",\"bulk_action_customer\",\"bulk_action_product\",\"bulk_assign_point\",\"bulk_import_multi_lang\",\"bulk_payment_delivery_setting\",\"bulk_printing_labels_711C2C\",\"bulk_update_dynamic_fields\",\"bulk_update_job\",\"bulk_update_new_fields\",\"bulk_update_product_download_with_filter\",\"bulk_update_tag\",\"bulk_update_tag_enhancement\",\"bundle_add_type\",\"bundle_group\",\"bundle_page\",\"bundle_pricing\",\"bundle_promotion_apply_enhancement\",\"bundle_stackable\",\"buy_button\",\"buy_now_button\",\"buyandget_promotion\",\"callback_service\",\"cancel_order_by_customer\",\"cancel_order_by_customer_v2\",\"cart_addon\",\"cart_addon_condition\",\"cart_addon_limit\",\"cart_use_product_service\",\"cart_uuid\",\"category_banner_multiple\",\"category_limit_unlimited\",\"category_sorting\",\"channel_fb\",\"channel_integration\",\"channel_line\",\"charge_shipping_fee_by_product_qty\",\"chat_widget\",\"chat_widget_facebook\",\"chat_widget_ig\",\"chat_widget_line\",\"chat_widget_livechat\",\"chat_widget_whatsapp\",\"chatbot_card_carousel\",\"chatbot_card_template\",\"chatbot_image_widget\",\"chatbot_keywords_matching\",\"chatbot_welcome_template\",\"checkout_membercheckbox_toggle\",\"checkout_revamp_checkout_page_v2024\",\"checkout_revamp_v2024\",\"checkout_setting\",\"cn_pricing_page_2019\",\"cod_not_pickup_blacklist\",\"combine_orders_app\",\"comment_list_export\",\"component_h1_tag\",\"connect_new_facebookpage\",\"consolidated_billing\",\"contact_us_mobile\",\"cookie_consent\",\"country_code\",\"coupon_center_back_to_cart\",\"coupon_center_enhancement_phase1\",\"coupon_notification\",\"coupon_v2\",\"create_staff_revamp\",\"credit_amount_condition_hidden\",\"credit_campaign\",\"credit_condition_5_tier_ec\",\"credit_installment_payment_fee_hidden\",\"credit_point_report\",\"credit_point_triggerpoint\",\"crm_email_custom\",\"crm_notify_preview\",\"crm_sms_custom\",\"crm_sms_notify\",\"cross_shop_tracker\",\"custom_css\",\"custom_home_delivery_tw\",\"custom_notification_shorten_url\",\"custom_notify\",\"custom_order_export\",\"customer_advanced_filter\",\"customer_coupon\",\"customer_custom_field_limit_5\",\"customer_data_secure\",\"customer_edit\",\"customer_export_v2\",\"customer_group\",\"customer_group_analysis\",\"customer_group_broadcast\",\"customer_group_customer_spend_period\",\"customer_group_filter_p2\",\"customer_group_filter_p3\",\"customer_group_regenerate\",\"customer_group_sendcoupon\",\"customer_group_smartrfm_filter\",\"customer_import_50000_failure_report\",\"customer_import_v2\",\"customer_import_v3\",\"customer_list\",\"customer_new_report\",\"customer_referral\",\"customer_referral_notify\",\"customer_search_match\",\"customer_tag\",\"dashboard_v2\",\"dashboard_v2_revamp\",\"date_picker_v2\",\"deep_link_support_linepay\",\"deep_link_support_payme\",\"deep_search\",\"default_theme_ultrachic\",\"delivery_time\",\"delivery_time_with_quantity\",\"design_submenu\",\"dev_center_app_store\",\"disable_footer_brand\",\"disable_old_upgrade_reminder\",\"domain_applicable\",\"doris_bien_setting\",\"dusk_setting\",\"dynamic_
228shipping_rate_refactor\",\"ec_order_unlimit\",\"ecpay_expirydate\",\"ecpay_payment_gateway\",\"einvoice_bulk_update\",\"einvoice_edit\",\"einvoice_list_by_day\",\"einvoice_newlogic\",\"einvoice_tradevan\",\"email_credit_expire_notify\",\"email_custom\",\"email_member_forget_password_notify\",\"email_member_register_notify\",\"email_order_notify\",\"email_verification\",\"enable_body_script\",\"enable_calculate_api_promotion_apply\",\"enable_calculate_api_promotion_filter\",\"enable_cart_api\",\"enable_cart_service\",\"enable_corejs_splitting\",\"enable_lazysizes_image_tag\",\"enable_new_css_bundle\",\"enable_order_revamp_transfer_order\",\"enable_order_revamp_update_order\",\"enable_order_status_callback_revamp_for_promotion\",\"enable_order_status_callback_revamp_for_storefront\",\"enable_promotion_usage_record\",\"enable_shopjs_splitting\",\"enhanced_catalog_feed\",\"exclude_product\",\"exclude_product_v2\",\"execute_shipment_permission\",\"export_inventory_report_v2\",\"express_cart\",\"express_checkout_pages\",\"extend_reminder\",\"external_redeem_coupon\",\"facebook_ads\",\"facebook_dia\",\"facebook_line_promotion_notify\",\"facebook_login\",\"facebook_messenger_subscription\",\"facebook_notify\",\"facebook_oauth_pages_utility_messaging\",\"facebook_pixel_manager\",\"fb_1on1_chat\",\"fb_broadcast\",\"fb_broadcast_sc\",\"fb_broadcast_sc_p2\",\"fb_entrance_optimization\",\"fb_feed_unlimit\",\"fb_group\",\"fb_menu\",\"fb_messenger_onetime_notification\",\"fb_multi_category_feed\",\"fb_offline_conversions_api\",\"fb_pixel_matching\",\"fb_pixel_v2\",\"fb_post_management\",\"fb_product_set\",\"fb_quick_signup_link\",\"fb_shop_now_button\",\"fb_ssapi\",\"fb_sub_button\",\"fb_welcome_msg\",\"fbe_oe\",\"fbe_shop\",\"fbe_v2\",\"fbe_v2_edit\",\"feature_alttag_phase1\",\"feature_alttag_phase2\",\"flash_price_campaign\",\"fm_order_receipt\",\"fmt_c2c_newlabel\",\"fmt_revision\",\"footer_brand\",\"footer_builder\",\"footer_builder_new\",\"form_builder\",\"form_builder_access\",\"form_builder_user_management\",\"form_builder_v2_elements\",\"form_builder_v2_receiver\",\"form_builder_v2_report\",\"freeshipping_promotion_condition\",\"get_coupon\",\"get_promotions_by_cart\",\"gift_promotion_condition\",\"gift_shipping_promotion_discount_condition\",\"gifts_limit_10\",\"gifts_limit_unlimited\",\"godaddy\",\"google_ads_api\",\"google_ads_manager\",\"google_analytics_4\",\"google_analytics_manager\",\"google_dynamic_remarketing_tag\",\"google_enhanced_conversions\",\"google_merchant_api\",\"google_preorder_feed\",\"google_product_category_3rdlayer\",\"google_recaptcha\",\"google_remarketing_manager\",\"google_signup_login\",\"google_tag_manager\",\"gp_tw_sc\",\"group_url_bind_post_live\",\"h2_tag_phase1\",\"hct_logistics_bills_report\",\"hidden_product\",\"hidden_product_p2\",\"hide_credit_point_record_balance\",\"hk_pricing_page_2019\",\"hkd_pricing_page_disabled_2020\",\"ig_browser_notify\",\"ig_live\",\"ig_login_entrance\",\"ig_new_api\",\"image_gallery\",\"image_gallery_p2\",\"image_host_by_region\",\"image_limit_100000\",\"image_limit_30000\",\"image_widget_mobile\",\"inbox_manual_order\",\"inbox_send_cartlink\",\"increase_variation_limit\",\"instagram_create_post\",\"instagram_post_sales\",\"instant_order_form\",\"integrated_label_711\",\"integrated_sfexpress\",\"integration_one\",\"inventory_change_reason\",\"inventory_search_v2\",\"invtransfer_purchaseorder_picker_use_product_service\",\"job_api_products_export\",\"job_api_user_export\",\"job_product_import\",\"jquery_v3\",\"kingsman_v2_setting\",\"layout_engine_service_kingsman_blogs\",\"layout_engine_service_kingsman_layout\",\"layout_engine_service_kingsman_member_center\",\"layout_engine_service_kingsman_pdp\",\"layout_engine_service_kingsman_plp\",\"layout_engine_service_kingsman_promotions\",\"layout_engine_service_varm_blogs\",\"layout_engine_service_varm_member_center\",\"layout_engine_service_varm_pdp\",\"layout_engine_service_varm_plp\",\"layout_engine_service_varm_promotions\",\"line_1on1_chat\",\"line_abandon_notification\",\"line_ads_tag\",\"line_broadcast\",\"line_in_chat_shopping\",\"line_live\",\"line_login\",\"line_login_mobile\",\"line_point_cpa_tag\",\"line_shopping_new_fields\",\"line_signup\",\"live_after_keyword\",\"live_ai_tag_comments\",\"live_announce_bids\",\"live_announce_buyer\",\"live_bidding\",\"live_broadcast_v2\",\"live_bulk_checkoutlink\",\"live_bulk_edit\",\"live_checkout_notification\",\"live_checkout_notification_all\",\"live_checkout_notification_message\",\"live_comment_discount\",\"live_comment_robot\",\"live_create_product_v2\",\"live_crosspost\",\"live_dashboard_product\",\"live_event_discount\",\"live_exclusive_price\",\"live_fb_group\",\"live_fhd_video\",\"live_general_settings\",\"live_group_event\",\"live_host_panel\",\"live_ig_messenger_broadcast\",\"live_ig_product_recommend\",\"live_im_switch\",\"live_keyword_switch\",\"live_line_broadcast\",\"live_line_management\",\"live_line_multidisplay\",\"live_luckydraw_enhancement\",\"live_messenger_broadcast\",\"live_order_block\",\"live_print_advanced\",\"live_product_auto_order_tag\",\"live_product_recommend\",\"live_shopline_announcement\",\"live_shopline_beauty_filter\",\"live_shopline_keyword\",\"live_shopline_product_card\",\"live_shopline_view\",\"live_shopline_view_marquee\",\"live_show_storefront_facebook\",\"live_show_storefront_shopline\",\"live_stream_settings\",\"locale_revamp\",\"lock_cart_sc_product\",\"logistic_bill_v2_711_b2c\",\"logistic_bill_v2_711_c2c\",\"logistic_bill_v2_fmt_b2c\",\"logistic_bill_v2_fmt_c2c\",\"logistic_bill_v2_fmt_frozen\",\"logistics_kyc_application_entrance\",\"logo_favicon\",\"luckydraw_products\",\"luckydraw_qualification\",\"manual_activation\",\"manual_order\",\"manual_order_7-11\",\"manual_order_ec_to_sc\",\"manually_bind_post\",\"marketing_affiliate\",\"marketing_affiliate_p2\",\"marketing_sms_subscribed\",\"mc-history-instant\",\"mc_711crossborder\",\"mc_ad_tag\",\"mc_assign_message\",\"mc_auto_bind_member\",\"mc_autoreply_cotent\",\"mc_autoreply_question\",\"mc_autoreply_trigger\",\"mc_broadcast\",\"mc_broadcast_v2\",\"mc_bulk_read\",\"mc_chatbot_template\",\"mc_delete_message\",\"mc_edit_cart\",\"mc_history_instant\",\"mc_history_post\",\"mc_im\",\"mc_inbox_autoreply\",\"mc_input_status\",\"mc_instant_notifications\",\"mc_invoicetitle_optional\",\"mc_keyword_autotagging\",\"mc_line_broadcast\",\"mc_line_broadcast_all_friends\",\"mc_line_cart\",\"mc_logistics_hct\",\"mc_logistics_tcat\",\"mc_manage_blacklist\",\"mc_mark_todo\",\"mc_new_menu\",\"mc_phone_tag\",\"mc_reminder_unpaid\",\"mc_reply_pic\",\"mc_setting_message\",\"mc_setting_orderform\",\"mc_shop_message_refactor\",\"mc_smart_advice\",\"mc_sort_waitingtime\",\"mc_sort_waitingtime_new\",\"mc_tw_invoice\",\"media_gcp_upload\",\"member_center_profile_revamp\",\"member_import_notify\",\"member_info_reward\",\"member_info_reward_subscription\",\"member_join_notice\",\"member_password_setup_notify\",\"member_points\",\"member_points_expiry_enhancement\",\"member_points_notify\",\"member_price\",\"membership_tier_double_write\",\"membership_tier_logic_revamp\",\"membership_tier_notify\",\"membership_tiers\",\"memebr_center_point_credit_revamp\",\"menu_limit_100\",\"menu_limit_unlimited\",\"merchant_automatic_payment_setting\",\"merchant_bills_credits\",\"message_center_v3\",\"message_revamp\",\"mo_remove_discount\",\"mobile_and_email_signup\",\"mobile_signup_p2\",\"modularize_address_format\",\"molpay_credit_card\",\"multi_lang\",\"multicurrency\",\"my_pricing_page_2019\",\"myapp_reauth_alert\",\"myr_pricing_page_disabled_2020\",\"new_app_subscription\",\"new_layout_for_mobile_and_pc\",\"new_onboarding_flow\",\"new_return_management\",\"new_settings_apply_all_promotion\",\"new_signup_flow\",\"new_sinopac_3d\",\"notification_custom_sending_time\",\"npb_theme_philia\",\"npb_widget_font_size_color\",\"ob_revamp\",\"ob_sgstripe\",\"ob_twecpay\",\"oceanpay\",\"old_fbe_removal\",\"onboarding_basketplan\",\"onboarding_handle\",\"one_new_filter\",\"one_page_store\",\"one_page_store_1000\",\"one_page_store_checkout\",\"one_page_store_clone\",\"one_page_store_login\",\"one_page_store_product_set\",\"one_page_store_promotion_checkbox\",\"online_credit_redemption_toggle\",\"online_store_design\",\"online_store_design_setup_guide_basketplan\",\"opb_bank_transfer_deprecation_consent\",\"opb_combine_payment\",\"opb_invoice\",\"opb_single_checkout_revamp\",\"opb_tw_virtual_acct\",\"order_add_to_cart\",\"order_archive_calculation_revamp_crm_amount\",\"order_archive_calculation_revamp_crm_member\",\"order_archive_product_testing\",\"order_archive_testing\",\"order_archive_testing_crm\",\"order_archive_testing_order_details\",\"order_archive_testing_return_order\",\"order_confirmation_slip_upload\",\"order_custom_field_limit_5\",\"order_custom_notify\",\"order_decoupling_product_revamp\",\"order_discount_stackable\",\"order_export_366day\",\"order_export_v2\",\"order_filter_shipped_date\",\"order_message_broadcast\",\"order_new_source\",\"order_promotion_split\",\"order_search_custom_field\",\"order_search_sku\",\"order_select_across_pages\",\"order_slp_auto_refund\",\"order_sms_notify\",\"order_split\",\"order_status_non_automation\",\"order_status_tag_color\",\"order_tag\",\"orderemail_new_logic\",\"other_
228custom_notify\",\"out_of_stock_order\",\"page_builder_revamp\",\"page_builder_revamp_theme_setting\",\"page_builder_revamp_theme_setting_initialized\",\"page_builder_section_cache_enabled\",\"page_builder_widget_accordion\",\"page_builder_widget_blog\",\"page_builder_widget_category\",\"page_builder_widget_collage\",\"page_builder_widget_countdown\",\"page_builder_widget_custom_liquid\",\"page_builder_widget_instagram\",\"page_builder_widget_product_text\",\"page_builder_widget_subscription\",\"page_builder_widget_video\",\"page_limit_unlimited\",\"page_use_product_service\",\"page_view_cache\",\"pakpobox\",\"partial_free_shipping\",\"payme\",\"payment_condition\",\"payment_fee_config\",\"payment_image\",\"payment_slip_notify\",\"paypal_upgrade\",\"pdp_image_lightbox\",\"pdp_image_lightbox_icon\",\"pdp_product_sold_count\",\"pending_subscription\",\"philia_setting\",\"pickup_remember_store\",\"pickup_remember_store_checkout_revamp_v2024\",\"plp_label_wording\",\"plp_product_seourl\",\"plp_variation_selector\",\"plp_wishlist\",\"point_campaign\",\"point_redeem_to_cash\",\"point_tier_expiration_notify\",\"pos_only_product_settings\",\"pos_retail_store_price\",\"pos_setup_guide_basketplan\",\"post_cancel_connect\",\"post_commerce_stack_comment\",\"post_fanpage_luckydraw\",\"post_fb_group\",\"post_general_setting\",\"post_lock_pd\",\"post_sales_dashboard\",\"postsale_auto_reply\",\"postsale_create_post\",\"postsale_ig_auto_reply\",\"postsales_connect_multiple_posts\",\"preorder_limit\",\"preset_publish\",\"price_discount_label_plp\",\"product_available_time\",\"product_cost_permission\",\"product_feed_info\",\"product_feed_manager_availability\",\"product_feed_revamp\",\"product_index_v2\",\"product_info\",\"product_limit_1000\",\"product_limit_unlimited\",\"product_log_v2\",\"product_page_limit_10\",\"product_quantity_update\",\"product_recommendation_abtesting\",\"product_revamp_doublewrite\",\"product_revamp_singleread\",\"product_review_bulk_export_import\",\"product_review_import\",\"product_review_import_installable\",\"product_review_plp\",\"product_review_reward\",\"product_review_reward_conditions\",\"product_search\",\"product_set_revamp\",\"product_set_show_out_of_stock\",\"product_set_v2_enhancement\",\"product_set_with_member_price\",\"product_subscription_applied_credits\",\"product_summary\",\"promotion_blacklist\",\"promotion_filter_by_date\",\"promotion_first_purchase\",\"promotion_first_purchase_channel\",\"promotion_hour\",\"promotion_limit_10\",\"promotion_limit_100\",\"promotion_limit_unlimited\",\"promotion_minitem\",\"promotion_page\",\"promotion_page_reminder\",\"promotion_page_seo_button\",\"promotion_product_picker_v2\",\"promotion_record_archive_test\",\"promotion_reminder\",\"promotion_revamp_phase1-1\",\"promotion_revamp_phase1-2\",\"purchase_limit_campaign\",\"quick_answer\",\"recaptcha_reset_pw\",\"redirect_301_settings\",\"rejected_bill_reminder\",\"remove_fblike_sc\",\"rep_download_log_ip_identity\",\"repay_cookie\",\"replace_janus_interface\",\"replace_lms_old_oa_interface\",\"reports\",\"revert_credit\",\"revert_credit_p2\",\"revert_credit_status\",\"reward_campaign_copy\",\"reward_campaign_exclude_product\",\"sales_dashboard\",\"sangria_setting\",\"sc_advanced_keyword\",\"sc_ai_chat_analysis\",\"sc_ai_suggested_reply\",\"sc_alipay_standard\",\"sc_atm\",\"sc_auto_bind_member\",\"sc_autodetect_address\",\"sc_autodetect_paymentslip\",\"sc_autoreply_icebreaker\",\"sc_broadcast_permissions\",\"sc_clearcart\",\"sc_clearcart_all\",\"sc_comment_label\",\"sc_comment_list\",\"sc_conversations_statistics_sunset\",\"sc_download_adminapp\",\"sc_facebook_broadcast\",\"sc_facebook_live\",\"sc_fb_ig_subscription\",\"sc_gpt_chatsummary\",\"sc_gpt_content_generator\",\"sc_gpt_knowledge_base\",\"sc_group_pm_commentid\",\"sc_group_webhook\",\"sc_intercom\",\"sc_keywords\",\"sc_line_live_pl\",\"sc_list_search\",\"sc_live_line\",\"sc_lock_inventory\",\"sc_manual_order\",\"sc_mc_settings\",\"sc_mo_711emap\",\"sc_order_unlimit\",\"sc_outstock_msg\",\"sc_overall_statistics\",\"sc_overall_statistics_api_v3\",\"sc_overall_statistics_v2\",\"sc_pickup\",\"sc_post_feature\",\"sc_product_set\",\"sc_product_variation\",\"sc_sidebar\",\"sc_similar_question_replies\",\"sc_slp_subscription_promotion\",\"sc_standard\",\"sc_store_pickup\",\"sc_wa_contacts_list\",\"sc_wa_message_report\",\"sc_wa_permissions\",\"scheduled_home_page\",\"search_function_image_gallery\",\"security_center\",\"select_all_customer\",\"select_all_inventory\",\"send_coupon_notification\",\"sensitive_operation_email_notify\",\"session_expiration_period\",\"setup_guide_basketplan\",\"sfexpress_centre\",\"sfexpress_eflocker\",\"sfexpress_service\",\"sfexpress_store\",\"sg_onboarding_currency\",\"share_cart_link\",\"shop_builder_plp\",\"shop_category_filter\",\"shop_category_filter_bulk_action\",\"shop_product_search_rate_limit\",\"shop_related_recaptcha\",\"shop_template_advanced_setting\",\"shopback_cashback\",\"shopline_captcha\",\"shopline_email_captcha\",\"shopline_product_reviews\",\"shoplytics_api_ordersales_v4\",\"shoplytics_api_psa_wide_table\",\"shoplytics_benchmark\",\"shoplytics_broadcast_api_v3\",\"shoplytics_channel_store_permission\",\"shoplytics_credit_analysis\",\"shoplytics_credit_analysis_reward_birthday_breakdown\",\"shoplytics_customer_refactor_api_v3\",\"shoplytics_date_picker_v2\",\"shoplytics_event_realtime_refactor_api_v3\",\"shoplytics_events_api_v3\",\"shoplytics_export_flex\",\"shoplytics_homepage_v2\",\"shoplytics_invoices_api_v3\",\"shoplytics_lite\",\"shoplytics_membership_tier_growth\",\"shoplytics_online_order_source\",\"shoplytics_orders_api_v3\",\"shoplytics_ordersales_v3\",\"shoplytics_payments_api_v3\",\"shoplytics_pro\",\"shoplytics_product_revamp_api_v3\",\"shoplytics_promotions_api_v3\",\"shoplytics_psa_multi_stores_export\",\"shoplytics_psa_sub_categories\",\"shoplytics_rfim_enhancement_v3\",\"shoplytics_session_metrics\",\"shoplytics_staff_api_v3\",\"shoplytics_to_hd\",\"shoplytics_tracker_first_party\",\"shopping_session_enabled\",\"signin_register_revamp\",\"sitemap_cache_6hr\",\"sitemap_enhance_lang\",\"skya_setting\",\"sl_admin_inventory_count\",\"sl_admin_inventory_transfer\",\"sl_admin_purchase_order\",\"sl_admin_supplier\",\"sl_inventory_transfer_by_warehouse\",\"sl_logistics_bulk_action\",\"sl_logistics_fmt_freeze\",\"sl_logistics_modularize\",\"sl_payment_alipay\",\"sl_payment_cc\",\"sl_payment_standard_v2\",\"sl_payment_type_check\",\"sl_payments_apple_pay\",\"sl_payments_cc_promo\",\"sl_payments_my_cc\",\"sl_payments_my_fpx\",\"sl_payments_sg_cc\",\"sl_payments_tw_cc\",\"sl_pos\",\"sl_pos_SHOPLINE_Payments_tw\",\"sl_pos_admin\",\"sl_pos_admin_cancel_order\",\"sl_pos_admin_delete_order\",\"sl_pos_admin_inventory_transfer\",\"sl_pos_admin_order_archive_testing\",\"sl_pos_admin_purchase_order\",\"sl_pos_admin_register_shift\",\"sl_pos_admin_staff\",\"sl_pos_agent_by_channel\",\"sl_pos_agent_clockin_n_out\",\"sl_pos_agent_performance\",\"sl_pos_android_A4_printer\",\"sl_pos_android_check_cart_items_with_local_db\",\"sl_pos_android_order_reduction\",\"sl_pos_android_receipt_enhancement\",\"sl_pos_app_order_archive_testing\",\"sl_pos_app_transaction_filter_enhance\",\"sl_pos_apps_store\",\"sl_pos_bugfender_log_reduction\",\"sl_pos_bulk_import_update_enhancement\",\"sl_pos_check_duplicate_create_order\",\"sl_pos_claim_coupon\",\"sl_pos_convert_order_to_cart_by_snapshot\",\"sl_pos_credit_redeem\",\"sl_pos_customerID_duplicate_check\",\"sl_pos_customer_info_by_search\",\"sl_pos_customer_info_enhancement\",\"sl_pos_customer_product_preference\",\"sl_pos_customized_price\",\"sl_pos_disable_touchid_unlock\",\"sl_pos_discount\",\"sl_pos_einvoice_alert\",\"sl_pos_einvoice_refactor\",\"sl_pos_feature_permission\",\"sl_pos_force_upgrade_1-109-0\",\"sl_pos_force_upgrade_1-110-1\",\"sl_pos_free_gifts_promotion\",\"sl_pos_from_Swift_to_OC\",\"sl_pos_
228iOS_A4_printer\",\"sl_pos_iOS_app_transaction_filter_enhance\",\"sl_pos_iOS_cashier_revamp_cart\",\"sl_pos_iOS_cashier_revamp_product_list\",\"sl_pos_iPadOS_version_upgrade_remind_16_0_0\",\"sl_pos_initiate_couchbase\",\"sl_pos_inventory_count\",\"sl_pos_inventory_count_difference_reason\",\"sl_pos_inventory_count_for_selected_products\",\"sl_pos_inventory_feature_module\",\"sl_pos_inventory_transfer_app_can_create_note_date\",\"sl_pos_inventory_transfer_insert_enhancement\",\"sl_pos_inventory_transfer_request\",\"sl_pos_invoice_carrier_scan\",\"sl_pos_invoice_product_name_filter\",\"sl_pos_invoice_swiftUI_revamp\",\"sl_pos_invoice_toast_show\",\"sl_pos_ios_receipt_info_enhancement\",\"sl_pos_ios_small_label_enhancement\",\"sl_pos_ios_version_upgrade_remind\",\"sl_pos_itc\",\"sl_pos_logo_terms_and_condition\",\"sl_pos_member_points\",\"sl_pos_member_price\",\"sl_pos_multiple_payments\",\"sl_pos_new_report_customer_analysis\",\"sl_pos_new_report_daily_payment_methods\",\"sl_pos_new_report_overview\",\"sl_pos_new_report_product_preorder\",\"sl_pos_new_report_transaction_detail\",\"sl_pos_no_minimum_age\",\"sl_pos_one_einvoice_setting\",\"sl_pos_order_reduction\",\"sl_pos_order_refactor_admin\",\"sl_pos_order_upload_using_pos_service\",\"sl_pos_partial_return\",\"sl_pos_password_setting_refactor\",\"sl_pos_payment\",\"sl_pos_payment_method_picture\",\"sl_pos_payment_method_prioritized_and_hidden\",\"sl_pos_payoff_preorder\",\"sl_pos_pin_products\",\"sl_pos_price_by_channel\",\"sl_pos_product_add_to_cart_refactor\",\"sl_pos_product_list_ui_revamp\",\"sl_pos_product_set\",\"sl_pos_product_variation_ui\",\"sl_pos_promotion\",\"sl_pos_promotion_by_channel\",\"sl_pos_purchase_order_onlinestore\",\"sl_pos_purchase_order_partial_in_storage\",\"sl_pos_receipt_enhancement\",\"sl_pos_receipt_information\",\"sl_pos_receipt_preorder_return_enhancement\",\"sl_pos_receipt_setting_by_channel\",\"sl_pos_receipt_swiftUI_revamp\",\"sl_pos_register_shift\",\"sl_pos_report_shoplytics_psi\",\"sl_pos_revert_credit\",\"sl_pos_save_send_receipt\",\"sl_pos_shopline_payment_invoice_new_flow\",\"sl_pos_show_coupon\",\"sl_pos_stock_refactor\",\"sl_pos_supplier_refactor\",\"sl_pos_terminal_bills\",\"sl_pos_terminal_settlement\",\"sl_pos_terminal_tw\",\"sl_pos_toast_revamp\",\"sl_pos_transaction_conflict\",\"sl_pos_transaction_view_admin\",\"sl_pos_transfer_onlinestore\",\"sl_pos_user_permission\",\"sl_pos_variation_setting_refactor\",\"sl_purchase_order_by_warehouse\",\"sl_purchase_order_search_create_enhancement\",\"slp_bank_promotion\",\"slp_product_subscription\",\"slp_remember_credit_card\",\"slp_swap\",\"smart_omo_appstore\",\"smart_omo_credits\",\"smart_omo_customer_tag_note\",\"smart_omo_express_cart\",\"smart_omo_points\",\"smart_omo_redeem_coupon\",\"smart_omo_send_coupon\",\"smart_omo_show_coupon\",\"smart_product_recommendation\",\"smart_product_recommendation_plus\",\"smart_product_recommendation_plus_cart\",\"smart_product_recommendation_regular\",\"smart_recommended_related_products\",\"sms_broadcast\",\"sms_custom\",\"sms_with_shop_name\",\"social_channel_revamp\",\"social_channel_user\",\"social_name_in_order\",\"sort_out_of_stock_products_last\",\"split_order_applied_creditpoint\",\"sso_lang_th\",\"sso_lang_vi\",\"staff_elasticsearch\",\"staff_limit_5\",\"staff_limit_unlimited\",\"staff_service_migration\",\"static_resource_host_by_region\",\"stop_slp_approvedemail\",\"store_crm_pwa\",\"store_pick_up\",\"store_referral_export_import\",\"store_referral_setting\",\"storefront_app_extension\",\"storefront_return\",\"stripe_3d_secure\",\"stripe_3ds_cny\",\"stripe_3ds_hkd\",\"stripe_3ds_myr\",\"stripe_3ds_sgd\",\"stripe_3ds_thb\",\"stripe_3ds_usd\",\"stripe_3ds_vnd\",\"stripe_google_pay\",\"stripe_payment_intents\",\"stripe_radar\",\"stripe_subscription_my_account\",\"structured_data\",\"studio_livestream\",\"sub_sgstripe\",\"subscription_config_edit\",\"subscription_config_edit_delivery_payment\",\"subscription_currency\",\"subscription_order_expire_notify\",\"subscription_order_notify\",\"subscription_product\",\"subscription_promotion\",\"subscription_tw_virtual_acct\",\"tappay_3D_secure\",\"tappay_sdk_v2_3_2\",\"tappay_sdk_v3\",\"tax_inclusive_setting\",\"taxes_settings\",\"tcat_711pickup_sl_logisitics\",\"tcat_logistics_bills_report\",\"tcat_newlabel\",\"tcat_sftp\",\"th_pricing_page_2020\",\"thb_pricing_page_disabled_2020\",\"theme_bianco\",\"theme_doris_bien\",\"theme_kingsman_v2\",\"theme_level_3\",\"theme_sangria\",\"theme_ultrachic\",\"tier_birthday_credit\",\"tier_member_points\",\"tier_member_price\",\"tier_reward_app_availability\",\"tier_reward_app_installation\",\"tier_reward_app_p2\",\"tier_reward_credit\",\"tnc-checkbox\",\"toggle_mobile_category\",\"tw_app_shopback_cashback\",\"tw_fm_sms\",\"tw_pricing_page_2019\",\"tw_stripe_subscription\",\"twd_pricing_page_disabled_2020\",\"uc_integration\",\"uc_v2_endpoints\",\"ultra_setting\",\"unified_admin\",\"use_ngram_for_order_search\",\"user_center_social_channel\",\"user_credits\",\"user_credits_revamp_double_read\",\"validate_password_complexity\",\"variant_image_selector\",\"variant_saleprice_cost_weight\",\"variation_label_swatches\",\"varm_setting\",\"vn_pricing_page_2020\",\"vnd_pricing_page_disabled_2020\",\"wa_broadcast_customer_group\",\"wa_system_template\",\"wa_template_custom_content\",\"whatsapp_accept_marketing\",\"whatsapp_catalog\",\"whatsapp_extension\",\"whatsapp_order_form\",\"whatsapp_orderstatus_toggle\",\"wishlist_app\",\"yahoo_dot\",\"zotabox\",\"zotabox_installable\"],\"shop_default_home_url\":\"https://anelet.shoplineapp.com\",\"shop_status\":\"open\",\"show_sold_out\":true,\"sl_payment_merchant_id\":\"2620371809908959232\",\"supported_languages\":[\"en\",\"zh-hant\"],\"tags\":[\"cosmetic\"],\"time_zone\":\"Asia/Taipei\",\"updated_at\":\"2026-10-07T07:45:16.687Z\",\"user_setting\":{\"_id\":\"6576a183e2f261000eaf0a8c\",\"created_at\":\"2023-12-11T05:43:31.444Z\",\"data\":{\"general_fields\":[{\"type\":\"gender\",\"options\":{\"order\":{\"include\":\"false\",\"required\":\"false\"},\"signup\":{\"include\":\"true\",\"required\":\"true\"},\"profile\":{\"include\":\"true\",\"required\":\"true\"}}},{\"type\":\"birthday\",\"options\":{\"order\":{\"include\":\"false\",\"required\":\"false\"},\"signup\":{\"include\":\"true\",\"required\":\"true\"},\"profile\":{\"include\":\"true\",\"required\":\"true\"}}}],\"minimum_age_limit\":13,\"custom_fields\":[],\"signup_method\":\"email_and_mobile\",\"sms_verification\":{\"status\":\"true\",\"supported_countries\":[\"HK\",\"TW\",\"CN\",\"TH\",\"MY\",\"SG\",\"JP\",\"KR\",\"ID\",\"MO\"]},\"facebook_login\":{\"status\":\"active\",\"app_id\":\"6943808995717026\"},\"google_login\":{\"status\":\"inactive\",\"client_id\":\"\",\"client_secret\":\"\"},\"enable_facebook_comment\":null,\"facebook_comment\":null,\"line_login\":{\"status\":\"active\"},\"recaptcha_signup\":{\"status\":\"true\",\"site_key\":\"6LdXuMspAAAAAOq6CWV8J2I49kmGJoGxnZ2qvhcb\"},\"email_verification\":{\"status\":\"true\"},\"login_with_verification\":{\"status\":\"true\"},\"upgrade_reminder\":{\"status\":\"active\"}
228,\"enable_member_point\":true,\"enable_user_credit\":true,\"birthday_format\":\"YYYY/MM/DD\",\"send_birthday_credit_period\":\"monthly\",\"member_info_reward\":{\"enabled\":false,\"reward_on\":[],\"subscription_reward_on\":[],\"coupons\":{\"enabled\":false,\"promotion_ids\":[]}},\"login_lambda_callback_function_name\":null,\"enable_age_policy\":true,\"force_complete_info\":false,\"membership_promo_banner\":{\"text\":{\"display\":\"default\",\"custom_content\":{\"en\":{\"title\":\"\",\"content\":\"\"},\"zh-hant\":{\"title\":\"\",\"content\":\"\"}}},\"image\":{\"display\":\"hidden\",\"custom_content\":{\"en\":\"\",\"zh-hant\":\"\"}}},\"user_credit_expired\":{\"sms\":{\"status\":\"inactive\"},\"email\":{\"status\":\"active\"},\"line_mes_api\":{\"status\":\"inactive\"}}},\"item_type\":\"\",\"key\":\"users\",\"name\":null,\"owner_id\":\"6576a1830ee9d100760d043d\",\"owner_type\":\"Merchant\",\"publish_status\":\"published\",\"status\":\"active\",\"updated_at\":\"2026-03-10T07:37:47.451Z\",\"value\":null},\"price_range_preview\":false},\"localeData\":{\"loadedLanguage\":{\"name\":\"English\",\"code\":\"en\"},\"supportedLocales\":[{\"name\":\"English\",\"code\":\"en\"},{\"name\":\"繁體中文\",\"code\":\"zh-hant\"}]},\"currentUser\":null,\"themeSettings\":{\"hide_language_selector\":false,\"is_multicurrency_enabled\":true,\"messages_enabled\":true,\"hide_languages\":[],\"page_background\":\"ffffff\",\"page_text\":\"282210\",\"page_text_link\":\"282210\",\"announcement_background\":\"f7f3ee\",\"announcement_text\":\"282210\",\"header_background\":\"ffffff\",\"header_text\":\"332d27\",\"header_icon\":\"332d27\",\"primary_background\":\"a68a49\",\"primary_text\":\"ffffff\",\"buy_now_background\":\"a68a49\",\"buy_now_text\":\"ffffff\",\"product_promotion_label_background\":\"f7f3ee\",\"product_promotion_label_text\":\"282210\",\"footer_background\":\"f7f3ee\",\"footer_text\":\"282210\",\"footer_icon\":\"282210\",\"copyright_background\":\"f7f3ee\",\"copyright_text\":\"282210\",\"anti_fraud_background\":\"f7f3ee\",\"anti_fraud_text\":\"282210\",\"font_title\":\"Noto Sans\",\"font_size_title\":\"1.2\",\"font_paragraph\":\"Noto Sans\",\"font_size_paragraph\":\"1\",\"mobile_categories_collapsed\":true,\"mobile_categories_removed\":true,\"categories_collapsed\":false,\"image_fill\":false,\"variation_image_style\":\"square\",\"variation_image_size\":\"md\",\"plp_variation_selector\":{\"enabled\":false,\"show_variation\":\"1\"},\"variation_image_selector_enabled\":false,\"variation_image_selector_variation\":\"1\",\"product_name_align\":\"center\",\"product_custom_label_style\":\"rounded-rectangle\",\"show_products_total\":false,\"category_page\":\"24\",\"hide_share_buttons\":true,\"goto_top\":false,\"enable_gdpr_cookies_banner\":false,\"updated_with_new_page_builder\":true,\"enabled_quick_cart\":true,\"opens_in_new_tab\":false,\"plp_wishlist\":true,\"buy_now_button\":{\"enabled\":true},\"enabled_sort_by_sold\":true,\"plp_variation_display\":{\"type\":\"hidden\",\"show_variation\":\"1\"},\"plp_variation_display_type\":\"hidden\",\"plp_variation_display_variation\":\"1\",\"show_promotions_on_product\":true,\"secondary_color\":\"282210\",\"email_button_background\":\"f7f3ee\",\"email_button_text\":\"282210\"},\"isMultiCurrencyEnabled\":true,\"features\":{\"plans\":{\"free\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":true,\"user_credit\":{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"standard\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":true,\"user_credit\":{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"starter\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":true,\"user_credit\":{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"pro\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":false,\"user_credit\"
228:{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"business\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":true,\"membership\":true,\"shopline_logo\":false,\"user_credit\":{\"manaul\":false,\"auto\":false},\"facebook_comments_plugin\":true,\"variant_image_selector\":false},\"basic\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":false,\"user_credit\":{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"basic2018\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":false,\"membership\":false,\"shopline_logo\":true,\"user_credit\":{\"manaul\":false,\"auto\":false},\"variant_image_selector\":false},\"sc\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":true,\"membership\":false,\"shopline_logo\":true,\"user_credit\":{\"manaul\":false,\"auto\":false},\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"variant_image_selector\":false},\"advanced\":{\"member_price\":false,\"cart_addon\":false,\"google_analytics_ecommerce\":true,\"membership\":false,\"shopline_logo\":false,\"user_credit\":{\"manaul\":false,\"auto\":false},\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"variant_image_selector\":false},\"premium\":{\"member_price\":true,\"cart_addon\":true,\"google_analytics_ecommerce\":true,\"membership\":true,\"shopline_logo\":false,\"user_credit\":{\"manaul\":true,\"auto\":true},\"google_dynamic_remarketing\":true,\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"wish_list\":true,\"facebook_messenger_subscription\":true,\"product_feed\":true,\"express_checkout\":true,\"variant_image_selector\":true},\"enterprise\":{\"member_price\":true,\"cart_addon\":true,\"google_analytics_ecommerce\":true,\"membership\":true,\"shopline_logo\":false,\"user_credit\":{\"manaul\":true,\"auto\":true},\"google_dynamic_remarketing\":true,\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"wish_list\":true,\"facebook_messenger_subscription\":true,\"product_feed\":true,\"express_checkout\":true,\"variant_image_selector\":true},\"crossborder\":{\"member_price\":true,\"cart_addon\":true,\"google_analytics_ecommerce\":true,\"membership\":true,\"shopline_logo\":false,\"user_credit\":{\"manaul\":true,\"auto\":true},\"google_dynamic_remarketing\":true,\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"wish_list\":true,\"facebook_messenger_subscription\":true,\"product_feed\":true,\"express_checkout\":true,\"variant_image_selector\":true},\"o2o\":{\"member_price\":true,\"cart_addon\":true,\"google_analytics_ecommerce\":true,\"membership\":true,\"shopline_logo\":false,\"user_credit\":{\"manaul\":true,\"auto\":true},\"google_dynamic_remarketing\":true,\"facebook_comments_plugin\":true,\"facebook_chat_plugin\":true,\"wish_list\":true,\"facebook_messenger_subscription\":true,\"product_feed\":true,\"express_checkout\":true,\"subscription_product\":true,\"variant_image_selector\":true}}},\"requestCountry\":\"US\",\"trackerEventData\":{\"Product ID\":\"6aa36e90de77e200134fb066\"},\"isRecaptchaEnabled\":true,\"isRecaptchaEnterprise\":false,\"recaptchaEnterpriseSiteKey\":\"6LeMcv0hAAAAADjAJkgZLpvEiuc6migO0KyLEadr\",\"recaptchaEnterpriseCheckboxSiteKey\":\"6LfQVEEoAAAAAAzllcvUxDYhfywH7-aY52nsJ2cK\",\"recaptchaSiteKey\":\"6LdXuMspAAAAAOq6CWV8J2I49kmGJoGxnZ2qvhcb\",\"currencyData\":{\"supportedCurrencies\":[{\"name\":\"\$ HKD\",\"symbol\":\"\$\",\"iso_code\":\"hkd\"},{\"name\":\"P MOP\",\"symbol\":\"P\",\"iso_code\":\"mop\"},{\"name\":\"¥ CNY\",\"symbol\":\"¥\",\"iso_code\":\"cny\"},{\"name\":\"\$ TWD\",\"symbol\":\"\$\",\"iso_code\":\"twd\"},{\"name\":\"\$ USD\",\"symbol\":\"\$\",\"iso_code\":\"usd\"},{\"name\":\"\$ SGD\",\"symbol\":\"\$\",\"iso_code\":\"sgd\"},{\"name\":\"€ EUR\",\"symbol\":\"€\",\"iso_code\":\"eur\"},{\"name\":\"\$ AUD\",\"symbol\":\"\$\",\"iso_code\":\"aud\"},{\"name\":\"£ GBP\",\"symbol\":\"£\",\"iso_code\":\"gbp\"},{\"name\":\"₱ PHP\",\"symbol\":\"₱\",\"iso_code\":\"php\"},{\"name\":\"RM MYR\",\"symbol\":\"RM\",\"iso_code\":\"myr\"},{\"name\":\"฿ THB\",\"symbol\":\"฿\",\"iso_code\":\"thb\"},{\"name\":\"د.إ AED\",\"symbol\":\"د.إ\",\"iso_code\":\"aed\"},{\"name\":\"¥ JPY\",\"symbol\":\"¥\",\"iso_code\":\"jpy\"},{\"name\":\"\$ BND\",\"symbol\":\"\$\",\"iso_code\":\"bnd\"},{\"name\":\"₩ KRW\",\"symbol\":\"₩\",\"iso_code\":\"krw\"},{\"name\":\"Rp IDR\",\"symbol\":\"Rp\",\"iso_code\":\"idr\"},{\"name\":\"₫ VND\",\"symbol\":\"₫\",\"iso_code\":\"vnd\"},{\"name\":\"\$ CAD\",\"symbol\":\"\$\",\"iso_code\":\"cad\"}],\"requestCountryCurrencyCode\":\"TWD\"},\"previousUrl\":\"\",\"checkoutLandingPath\":\"/cart\",\"webpSupported\":65,\"pageType\":\"products-show\",\"paypalCnCl
228ientId\":\"AYVtr8kMzEyRCw725vQM_-hheFyo1FuWeaup4KPSvU1gg44L-NG5e2PNcwGnMo2MLCzGRg4eVHJhuqBP\",\"efoxPayVersion\":\"1.0.60\",\"universalPaymentSDKUrl\":\"https://cdn.myshopline.com\",\"shoplinePaymentCashierSDKUrl\":\"https://cdn.myshopline.com/pay/paymentElement/1.7.1/index.js\",\"shoplinePaymentV2Env\":\"prod\",\"shoplinePaymentGatewayEnv\":\"prod\",\"shoplinePaymentsIntegratedEnv\":\"production\",\"currentPath\":\"/products/mt-advent-calendar-2026\",\"isExceedCartLimitation\":null,\"familyMartEnv\":\"prod\",\"familyMartConfig\":{\"cvsname\":\"familymart.shoplineapp.com\"},\"familyMartFrozenConfig\":{\"cvsname\":\"familymartfreeze.shoplineapp.com\",\"cvslink\":\"https://familymartfreeze.shoplineapp.com/familymart_freeze_callback\",\"emap\":\"https://ecmfme.map.com.tw/ReceiveOrderInfo.aspx\"},\"pageIdentifier\":\"product_detail\",\"staticResourceHost\":\"https://static.shoplineapp.com/\",\"facebookAppId\":\"467428936681900\",\"facebookSdkVersion\":\"v2.7\",\"criteoAccountId\":null,\"criteoEmail\":null,\"shoplineCaptchaEnv\":\"prod\",\"shoplineCaptchaPublicKey\":\"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCUXpOVJR72RcVR8To9lTILfKJnfTp+f69D2azJDN5U9FqcZhdYfrBegVRKxuhkwdn1uu6Er9PWV4Tp8tRuHYnlU+U72NRpb0S3fmToXL3KMKw/4qu2B3EWtxeh/6GPh3leTvMteZpGRntMVmJCJdS8PY1CG0w6QzZZ5raGKXQc2QIDAQAB\",\"defaultBlockedSmsCountries\":\"PS,MG,KE,AO,KG,UG,AZ,ZW,TJ,NG,GT,DZ,BD,BY,AF,LK,MA,EH,MM,EG,LV,OM,LT,UA,RU,KZ,KH,LY,ML,MW,IR,EE\",\"featureEnabledList\":{\"smartProductRecommendation\":{\"cartSidebarEnabled\":true,\"cartProductsEnabled\":true}}}');
229</script>
229
230
231
232
233
234
235  
235<script
236    src="https://browser.sentry-cdn.com/6.8.0/bundle.tracing.min.js"
237    integrity="sha384-PEpz3oi70IBfja8491RPjqj38s8lBU9qHRh+tBurFb6XNetbdvlRXlshYnKzMB0U"
238    crossorigin="anonymous"
239    defer
240  ></script>
240
241  
241<script
242    src="https://browser.sentry-cdn.com/6.8.0/captureconsole.min.js"
243    integrity="sha384-FJ5n80A08NroQF9DJzikUUhiCaQT2rTIYeJyHytczDDbIiejfcCzBR5lQK4AnmVt"
244    crossorigin="anonymous"
245    defer
246  ></script>
246
247
248
249
250<script>
251  function sriOnError (event) {
252    if (window.Sentry) window.Sentry.captureException(event);
253
254    var script = document.createElement('script');
255    var srcDomain = new URL(this.src).origin;
256    script.src = this.src.replace(srcDomain, '');
257    if (this.defer) script.setAttribute("defer", "defer");
258    document.getElementsByTagName('head')[0].insertBefore(script, null);
259  }
260</script>
260
261
262
263
264<script>
265window.lazySizesConfig = {}
266Object.assign(window.lazySizesConfig, {
267  lazyClass: 'sl-lazy',
268  loadingClass: 'sl-lazyloading',
269  loadedClass: 'sl-lazyloaded',
270  preloadClass: 'sl-lazypreload',
271  errorClass: 'sl-lazyerror',
272  iframeLoadMode: '1',
273  loadHidden: false
274})
275</script>
275
276
277
278<script>
279/*! lazysizes - v5.3.2 */
280(function(window, factory) {
281	var lazySizes = factory(window, window.document, Date);
282	window.lazySizes = lazySizes;
283	if(typeof module == 'object' && module.exports){
284		module.exports = lazySizes;
285	}
286}(typeof window != 'undefined' ?
287      window : {},
288/**
289 * @typedef { import("./types/global
vendor: 8,338 bytes, lines 289-674
289").LazySizesConfigPartial } LazySizesConfigPartial
290 */
291function l(window, document, Date) { // Pass in the window Date function also for SSR because the Date class can be lost
292	'use strict';
293	/*jshint eqnull:true */
294
295	var lazysizes,
296		/**
297		 * @type { LazySizesConfigPartial }
298		 */
299		lazySizesCfg;
300
301	(function(){
302		var prop;
303
304		var lazySizesDefaults = {
305			lazyClass: 'lazyload',
306			loadedClass: 'lazyloaded',
307			loadingClass: 'lazyloading',
308			preloadClass: 'lazypreload',
309			errorClass: 'lazyerror',
310			//strictClass: 'lazystrict',
311			autosizesClass: 'lazyautosizes',
312			fastLoadedClass: 'ls-is-cached',
313			iframeLoadMode: 0,
314			srcAttr: 'data-src',
315			srcsetAttr: 'data-srcset',
316			sizesAttr: 'data-sizes',
317			//preloadAfterLoad: false,
318			minSize: 40,
319			customMedia: {},
320			init: true,
321			expFactor: 1.5,
322			hFac: 0.8,
323			loadMode: 2,
324			loadHidden: true,
325			ricTimeout: 0,
326			throttleDelay: 125,
327		};
328
329		lazySizesCfg = window.lazySizesConfig || window.lazysizesConfig || {};
330
331		for(prop in lazySizesDefaults){
332			if(!(prop in lazySizesCfg)){
333				lazySizesCfg[prop] = lazySizesDefaults[prop];
334			}
335		}
336	})();
337
338	if (!document || !document.getElementsByClassName) {
339		return {
340			init: function () {},
341			/**
342			 * @type { LazySizesConfigPartial }
343			 */
344			cfg: lazySizesCfg,
345			/**
346			 * @type { true }
347			 */
348			noSupport: true,
349		};
350	}
351
352	var docElem = document.documentElement;
353
354	var supportPicture = window.HTMLPictureElement;
355
356	var _addEventListener = 'addEventListener';
357
358	var _getAttribute = 'getAttribute';
359
360	/**
361	 * Update to bind to window because 'this' becomes null during SSR
362	 * builds.
363	 */
364	var addEventListener = window[_addEventListener].bind(window);
365
366	var setTimeout = window.setTimeout;
367
368	var requestAnimationFrame = window.requestAnimationFrame || setTimeout;
369
370	var requestIdleCallback = window.requestIdleCallback;
371
372	var regPicture = /^picture$/i;
373
374	var loadEvents = ['load', 'error', 'lazyincluded', '_lazyloaded'];
375
376	var regClassCache = {};
377
378	var forEach = Array.prototype.forEach;
379
380	/**
381	 * @param ele {Element}
382	 * @param cls {string}
383	 */
384	var hasClass = function(ele, cls) {
385		if(!regClassCache[cls]){
386			regClassCache[cls] = new RegExp('(\\s|^)'+cls+'(\\s|$)');
387		}
388		return regClassCache[cls].test(ele[_getAttribute]('class') || '') && regClassCache[cls];
389	};
390
391	/**
392	 * @param ele {Element}
393	 * @param cls {string}
394	 */
395	var addClass = function(ele, cls) {
396		if (!hasClass(ele, cls)){
397			ele.setAttribute('class', (ele[_getAttribute]('class') || '').trim() + ' ' + cls);
398		}
399	};
400
401	/**
402	 * @param ele {Element}
403	 * @param cls {string}
404	 */
405	var removeClass = function(ele, cls) {
406		var reg;
407		if ((reg = hasClass(ele,cls))) {
408			ele.setAttribute('class', (ele[_getAttribute]('class') || '').replace(reg, ' '));
409		}
410	};
411
412	var addRemoveLoadEvents = function(dom, fn, add){
413		var action = add ? _addEventListener : 'removeEventListener';
414		if(add){
415			addRemoveLoadEvents(dom, fn);
416		}
417		loadEvents.forEach(function(evt){
418			dom[action](evt, fn);
419		});
420	};
421
422	/**
423	 * @param elem { Element }
424	 * @param name { string }
425	 * @param detail { any }
426	 * @param noBubbles { boolean }
427	 * @param noCancelable { boolean }
428	 * @returns { CustomEvent }
429	 */
430	var triggerEvent = function(elem, name, detail, noBubbles, noCancelable){
431		var event = document.createEvent('Event');
432
433		if(!detail){
434			detail = {};
435		}
436
437		detail.instance = lazysizes;
438
439		event.initEvent(name, !noBubbles, !noCancelable);
440
441		event.detail = detail;
442
443		elem.dispatchEvent(event);
444		return event;
445	};
446
447	var updatePolyfill = function (el, full){
448		var polyfill;
449		if( !supportPicture && ( polyfill = (window.picturefill || lazySizesCfg.pf) ) ){
450			if(full && full.src && !el[_getAttribute]('srcset')){
451				el.setAttribute('srcset', full.src);
452			}
453			polyfill({reevaluate: true, elements: [el]});
454		} else if(full && full.src){
455			el.src = full.src;
456		}
457	};
458
459	var getCSS = function (elem, style){
460		return (getComputedStyle(elem, null) || {})[style];
461	};
462
463	/**
464	 *
465	 * @param elem { Element }
466	 * @param parent { Element }
467	 * @param [width] {number}
468	 * @returns {number}
469	 */
470	var getWidth = function(elem, parent, width){
471		width = width || elem.offsetWidth;
472
473		while(width < lazySizesCfg.minSize && parent && !elem._lazysizesWidth){
474			width =  parent.offsetWidth;
475			parent = parent.parentNode;
476		}
477
478		return width;
479	};
480
481	var rAF = (function(){
482		var running, waiting;
483		var firstFns = [];
484		var secondFns = [];
485		var fns = firstFns;
486
487		var run = function(){
488			var runFns = fns;
489
490			fns = firstFns.length ? secondFns : firstFns;
491
492			running = true;
493			waiting = false;
494
495			while(runFns.length){
496				runFns.shift()();
497			}
498
499			running = false;
500		};
501
502		var rafBatch = function(fn, queue){
503			if(running && !queue){
504				fn.apply(this, arguments);
505			} else {
506				fns.push(fn);
507
508				if(!waiting){
509					waiting = true;
510					(document.hidden ? setTimeout : requestAnimationFrame)(run);
511				}
512			}
513		};
514
515		rafBatch._lsFlush = run;
516
517		return rafBatch;
518	})();
519
520	var rAFIt = function(fn, simple){
521		return simple ?
522			function() {
523				rAF(fn);
524			} :
525			function(){
526				var that = this;
527				var args = arguments;
528				rAF(function(){
529					fn.apply(that, args);
530				});
531			}
532		;
533	};
534
535	var throttle = function(fn){
536		var running;
537		var lastTime = 0;
538		var gDelay = lazySizesCfg.throttleDelay;
539		var rICTimeout = lazySizesCfg.ricTimeout;
540		var run = function(){
541			running = false;
542			lastTime = Date.now();
543			fn();
544		};
545		var idleCallback = requestIdleCallback && rICTimeout > 49 ?
546			function(){
547				requestIdleCallback(run, {timeout: rICTimeout});
548
549				if(rICTimeout !== lazySizesCfg.ricTimeout){
550					rICTimeout = lazySizesCfg.ricTimeout;
551				}
552			} :
553			rAFIt(function(){
554				setTimeout(run);
555			}, true)
556		;
557
558		return function(isPriority){
559			var delay;
560
561			if((isPriority = isPriority === true)){
562				rICTimeout = 33;
563			}
564
565			if(running){
566				return;
567			}
568
569			running =  true;
570
571			delay = gDelay - (Date.now() - lastTime);
572
573			if(delay < 0){
574				delay = 0;
575			}
576
577			if(isPriority || delay < 9){
578				idleCallback();
579			} else {
580				setTimeout(idleCallback, delay);
581			}
582		};
583	};
584
585	//based on http://modernjavascript.blogspot.de/2013/08/building-better-debounce.html
586	var debounce = function(func) {
587		var timeout, timestamp;
588		var wait = 99;
589		var run = function(){
590			timeout = null;
591			func();
592		};
593		var later = function() {
594			var last = Date.now() - timestamp;
595
596			if (last < wait) {
597				setTimeout(later, wait - last);
598			} else {
599				(requestIdleCallback || run)(run);
600			}
601		};
602
603		return function() {
604			timestamp = Date.now();
605
606			if (!timeout) {
607				timeout = setTimeout(later, wait);
608			}
609		};
610	};
611
612	var loader = (function(){
613		var preloadElems, isCompleted, resetPreloadingTimer, loadMode, started;
614
615		var eLvW, elvH, eLtop, eLleft, eLright, eLbottom, isBodyHidden;
616
617		var regImg = /^img$/i;
618		var regIframe = /^iframe$/i;
619
620		var supportScroll = ('onscroll' in window) && !(/(gle|ing)bot/.test(navigator.userAgent));
621
622		var shrinkExpand = 0;
623		var currentExpand = 0;
624
625		var isLoading = 0;
626		var lowRuns = -1;
627
628		var resetPreloading = function(e){
629			isLoading--;
630			if(!e || isLoading < 0 || !e.target){
631				isLoading = 0;
632			}
633		};
634
635		var isVisible = function (elem) {
636			if (isBodyHidden == null) {
637				isBodyHidden = getCSS(document.body, 'visibility') == 'hidden';
638			}
639
640			return isBodyHidden || !(getCSS(elem.parentNode, 'visibility') == 'hidden' && getCSS(elem, 'visibility') == 'hidden');
641		};
642
643		var isNestedVisible = function(elem, elemExpand){
644			var outerRect;
645			var parent = elem;
646			var visible = isVisible(elem);
647
648			eLtop -= elemExpand;
649			eLbottom += elemExpand;
650			eLleft -= elemExpand;
651			eLright += elemExpand;
652
653			while(visible && (parent = parent.offsetParent) && parent != document.body && parent != docElem){
654				visible = ((getCSS(parent, 'opacity') || 1) > 0);
655
656				if(visible && getCSS(parent, 'overflow') != 'visible'){
657					outerRect = parent.getBoundingClientRect();
658					visible = eLright > outerRect.left &&
659						eLleft < outerRect.right &&
660						eLbottom > outerRect.top - 1 &&
661						eLtop < outerRect.bottom + 1
662					;
663				}
664			}
665
666			return visible;
667		};
668
669		var checkElements = function() {
670			var eLlen, i, rect, autoLoadElem, loadedSomething, elemExpand, elemNegativeExpand, elemExpandVal,
671				beforeExpandVal, defaultExpand, preloadExpand, hFac;
672			var lazyloadElems = lazysizes.elements;
673
674			
674// Modify the lazysizes source code, to extend support for lazy loading of shadow dom internal elements
675			// In order not to affect all merchants, conditional judgments are added to only affect incremental merchants.
676			// Triggering conditions:
677			//    1、feature key 'enable_shadow_dom' is on
678			//    2、use filter 'rich_content_format' to output content
679			if (lazysizes.extraElements && lazysizes.extraElements.length > 0) {
680				lazyloadElems = Array.from(lazyloadElems).concat(lazysizes.extraElements);
681			}
vendor: 11,323 bytes, lines 681-1101
681
682
683			if((loadMode = lazySizesCfg.loadMode) && isLoading < 8 && (eLlen = lazyloadElems.length)){
684
685				i = 0;
686
687				lowRuns++;
688
689				for(; i < eLlen; i++){
690
691					if(!lazyloadElems[i] || lazyloadElems[i]._lazyRace){continue;}
692
693					if(!supportScroll || (lazysizes.prematureUnveil && lazysizes.prematureUnveil(lazyloadElems[i]))){unveilElement(lazyloadElems[i]);continue;}
694
695					if(!(elemExpandVal = lazyloadElems[i][_getAttribute]('data-expand')) || !(elemExpand = elemExpandVal * 1)){
696						elemExpand = currentExpand;
697					}
698
699					if (!defaultExpand) {
700						defaultExpand = (!lazySizesCfg.expand || lazySizesCfg.expand < 1) ?
701							docElem.clientHeight > 500 && docElem.clientWidth > 500 ? 500 : 370 :
702							lazySizesCfg.expand;
703
704						lazysizes._defEx = defaultExpand;
705
706						preloadExpand = defaultExpand * lazySizesCfg.expFactor;
707						hFac = lazySizesCfg.hFac;
708						isBodyHidden = null;
709
710						if(currentExpand < preloadExpand && isLoading < 1 && lowRuns > 2 && loadMode > 2 && !document.hidden){
711							currentExpand = preloadExpand;
712							lowRuns = 0;
713						} else if(loadMode > 1 && lowRuns > 1 && isLoading < 6){
714							currentExpand = defaultExpand;
715						} else {
716							currentExpand = shrinkExpand;
717						}
718					}
719
720					if(beforeExpandVal !== elemExpand){
721						eLvW = innerWidth + (elemExpand * hFac);
722						elvH = innerHeight + elemExpand;
723						elemNegativeExpand = elemExpand * -1;
724						beforeExpandVal = elemExpand;
725					}
726
727					rect = lazyloadElems[i].getBoundingClientRect();
728
729					if ((eLbottom = rect.bottom) >= elemNegativeExpand &&
730						(eLtop = rect.top) <= elvH &&
731						(eLright = rect.right) >= elemNegativeExpand * hFac &&
732						(eLleft = rect.left) <= eLvW &&
733						(eLbottom || eLright || eLleft || eLtop) &&
734						(lazySizesCfg.loadHidden || isVisible(lazyloadElems[i])) &&
735						((isCompleted && isLoading < 3 && !elemExpandVal && (loadMode < 3 || lowRuns < 4)) || isNestedVisible(lazyloadElems[i], elemExpand))){
736						unveilElement(lazyloadElems[i]);
737						loadedSomething = true;
738						if(isLoading > 9){break;}
739					} else if(!loadedSomething && isCompleted && !autoLoadElem &&
740						isLoading < 4 && lowRuns < 4 && loadMode > 2 &&
741						(preloadElems[0] || lazySizesCfg.preloadAfterLoad) &&
742						(preloadElems[0] || (!elemExpandVal && ((eLbottom || eLright || eLleft || eLtop) || lazyloadElems[i][_getAttribute](lazySizesCfg.sizesAttr) != 'auto')))){
743						autoLoadElem = preloadElems[0] || lazyloadElems[i];
744					}
745				}
746
747				if(autoLoadElem && !loadedSomething){
748					unveilElement(autoLoadElem);
749				}
750			}
751		};
752
753		var throttledCheckElements = throttle(checkElements);
754
755		var switchLoadingClass = function(e){
756			var elem = e.target;
757
758			if (elem._lazyCache) {
759				delete elem._lazyCache;
760				return;
761			}
762
763			resetPreloading(e);
764			addClass(elem, lazySizesCfg.loadedClass);
765			removeClass(elem, lazySizesCfg.loadingClass);
766			addRemoveLoadEvents(elem, rafSwitchLoadingClass);
767			triggerEvent(elem, 'lazyloaded');
768		};
769		var rafedSwitchLoadingClass = rAFIt(switchLoadingClass);
770		var rafSwitchLoadingClass = function(e){
771			rafedSwitchLoadingClass({target: e.target});
772		};
773
774		var changeIframeSrc = function(elem, src){
775			var loadMode = elem.getAttribute('data-load-mode') || lazySizesCfg.iframeLoadMode;
776
777			// loadMode can be also a string!
778			if (loadMode == 0) {
779				elem.contentWindow.location.replace(src);
780			} else if (loadMode == 1) {
781				elem.src = src;
782			}
783		};
784
785		var handleSources = function(source){
786			var customMedia;
787
788			var sourceSrcset = source[_getAttribute](lazySizesCfg.srcsetAttr);
789
790			if( (customMedia = lazySizesCfg.customMedia[source[_getAttribute]('data-media') || source[_getAttribute]('media')]) ){
791				source.setAttribute('media', customMedia);
792			}
793
794			if(sourceSrcset){
795				source.setAttribute('srcset', sourceSrcset);
796			}
797		};
798
799		var lazyUnveil = rAFIt(function (elem, detail, isAuto, sizes, isImg){
800			var src, srcset, parent, isPicture, event, firesLoad;
801
802			if(!(event = triggerEvent(elem, 'lazybeforeunveil', detail)).defaultPrevented){
803
804				if(sizes){
805					if(isAuto){
806						addClass(elem, lazySizesCfg.autosizesClass);
807					} else {
808						elem.setAttribute('sizes', sizes);
809					}
810				}
811
812				srcset = elem[_getAttribute](lazySizesCfg.srcsetAttr);
813				src = elem[_getAttribute](lazySizesCfg.srcAttr);
814
815				if(isImg) {
816					parent = elem.parentNode;
817					isPicture = parent && regPicture.test(parent.nodeName || '');
818				}
819
820				firesLoad = detail.firesLoad || (('src' in elem) && (srcset || src || isPicture));
821
822				event = {target: elem};
823
824				addClass(elem, lazySizesCfg.loadingClass);
825
826				if(firesLoad){
827					clearTimeout(resetPreloadingTimer);
828					resetPreloadingTimer = setTimeout(resetPreloading, 2500);
829					addRemoveLoadEvents(elem, rafSwitchLoadingClass, true);
830				}
831
832				if(isPicture){
833					forEach.call(parent.getElementsByTagName('source'), handleSources);
834				}
835
836				if(srcset){
837					elem.setAttribute('srcset', srcset);
838				} else if(src && !isPicture){
839					if(regIframe.test(elem.nodeName)){
840						changeIframeSrc(elem, src);
841					} else {
842						elem.src = src;
843					}
844				}
845
846				if(isImg && (srcset || isPicture)){
847					updatePolyfill(elem, {src: src});
848				}
849			}
850
851			if(elem._lazyRace){
852				delete elem._lazyRace;
853			}
854			removeClass(elem, lazySizesCfg.lazyClass);
855
856			rAF(function(){
857				// Part of this can be removed as soon as this fix is older: https://bugs.chromium.org/p/chromium/issues/detail?id=7731 (2015)
858				var isLoaded = elem.complete && elem.naturalWidth > 1;
859
860				if( !firesLoad || isLoaded){
861					if (isLoaded) {
862						addClass(elem, lazySizesCfg.fastLoadedClass);
863					}
864					switchLoadingClass(event);
865					elem._lazyCache = true;
866					setTimeout(function(){
867						if ('_lazyCache' in elem) {
868							delete elem._lazyCache;
869						}
870					}, 9);
871				}
872				if (elem.loading == 'lazy') {
873					isLoading--;
874				}
875			}, true);
876		});
877
878		/**
879		 *
880		 * @param elem { Element }
881		 */
882		var unveilElement = function (elem){
883			if (elem._lazyRace) {return;}
884			var detail;
885
886			var isImg = regImg.test(elem.nodeName);
887
888			//allow using sizes="auto", but don't use. it's invalid. Use data-sizes="auto" or a valid value for sizes instead (i.e.: sizes="80vw")
889			var sizes = isImg && (elem[_getAttribute](lazySizesCfg.sizesAttr) || elem[_getAttribute]('sizes'));
890			var isAuto = sizes == 'auto';
891
892			if( (isAuto || !isCompleted) && isImg && (elem[_getAttribute]('src') || elem.srcset) && !elem.complete && !hasClass(elem, lazySizesCfg.errorClass) && hasClass(elem, lazySizesCfg.lazyClass)){return;}
893
894			detail = triggerEvent(elem, 'lazyunveilread').detail;
895
896			if(isAuto){
897				 autoSizer.updateElem(elem, true, elem.offsetWidth);
898			}
899
900			elem._lazyRace = true;
901			isLoading++;
902
903			lazyUnveil(elem, detail, isAuto, sizes, isImg);
904		};
905
906		var afterScroll = debounce(function(){
907			lazySizesCfg.loadMode = 3;
908			throttledCheckElements();
909		});
910
911		var altLoadmodeScrollListner = function(){
912			if(lazySizesCfg.loadMode == 3){
913				lazySizesCfg.loadMode = 2;
914			}
915			afterScroll();
916		};
917
918		var onload = function(){
919			if(isCompleted){return;}
920			if(Date.now() - started < 999){
921				setTimeout(onload, 999);
922				return;
923			}
924
925
926			isCompleted = true;
927
928			lazySizesCfg.loadMode = 3;
929
930			throttledCheckElements();
931
932			addEventListener('scroll', altLoadmodeScrollListner, true);
933		};
934
935		return {
936			_: function(){
937				started = Date.now();
938
939				lazysizes.elements = document.getElementsByClassName(lazySizesCfg.lazyClass);
940				preloadElems = document.getElementsByClassName(lazySizesCfg.lazyClass + ' ' + lazySizesCfg.preloadClass);
941
942				addEventListener('scroll', throttledCheckElements, true);
943
944				addEventListener('resize', throttledCheckElements, true);
945
946				addEventListener('pageshow', function (e) {
947					if (e.persisted) {
948						var loadingElements = document.querySelectorAll('.' + lazySizesCfg.loadingClass);
949
950						if (loadingElements.length && loadingElements.forEach) {
951							requestAnimationFrame(function () {
952								loadingElements.forEach( function (img) {
953									if (img.complete) {
954										unveilElement(img);
955									}
956								});
957							});
958						}
959					}
960				});
961
962				if(window.MutationObserver){
963					new MutationObserver( throttledCheckElements ).observe( docElem, {childList: true, subtree: true, attributes: true} );
964				} else {
965					docElem[_addEventListener]('DOMNodeInserted', throttledCheckElements, true);
966					docElem[_addEventListener]('DOMAttrModified', throttledCheckElements, true);
967					setInterval(throttledCheckElements, 999);
968				}
969
970				addEventListener('hashchange', throttledCheckElements, true);
971
972				//, 'fullscreenchange'
973				['focus', 'mouseover', 'click', 'load', 'transitionend', 'animationend'].forEach(function(name){
974					document[_addEventListener](name, throttledCheckElements, true);
975				});
976
977				if((/d$|^c/.test(document.readyState))){
978					onload();
979				} else {
980					addEventListener('load', onload);
981					document[_addEventListener]('DOMContentLoaded', throttledCheckElements);
982					setTimeout(onload, 20000);
983				}
984
985				if(lazysizes.elements.length){
986					checkElements();
987					rAF._lsFlush();
988				} else {
989					throttledCheckElements();
990				}
991			},
992			checkElems: throttledCheckElements,
993			unveil: unveilElement,
994			_aLSL: altLoadmodeScrollListner,
995		};
996	})();
997
998
999	var autoSizer = (function(){
1000		var autosizesElems;
1001
1002		var sizeElement = rAFIt(function(elem, parent, event, width){
1003			var sources, i, len;
1004			elem._lazysizesWidth = width;
1005			width += 'px';
1006
1007			elem.setAttribute('sizes', width);
1008
1009			if(regPicture.test(parent.nodeName || '')){
1010				sources = parent.getElementsByTagName('source');
1011				for(i = 0, len = sources.length; i < len; i++){
1012					sources[i].setAttribute('sizes', width);
1013				}
1014			}
1015
1016			if(!event.detail.dataAttr){
1017				updatePolyfill(elem, event.detail);
1018			}
1019		});
1020		/**
1021		 *
1022		 * @param elem {Element}
1023		 * @param dataAttr
1024		 * @param [width] { number }
1025		 */
1026		var getSizeElement = function (elem, dataAttr, width){
1027			var event;
1028			var parent = elem.parentNode;
1029
1030			if(parent){
1031				width = getWidth(elem, parent, width);
1032				event = triggerEvent(elem, 'lazybeforesizes', {width: width, dataAttr: !!dataAttr});
1033
1034				if(!event.defaultPrevented){
1035					width = event.detail.width;
1036
1037					if(width && width !== elem._lazysizesWidth){
1038						sizeElement(elem, parent, event, width);
1039					}
1040				}
1041			}
1042		};
1043
1044		var updateElementsSizes = function(){
1045			var i;
1046			var len = autosizesElems.length;
1047			if(len){
1048				i = 0;
1049
1050				for(; i < len; i++){
1051					getSizeElement(autosizesElems[i]);
1052				}
1053			}
1054		};
1055
1056		var debouncedUpdateElementsSizes = debounce(updateElementsSizes);
1057
1058		return {
1059			_: function(){
1060				autosizesElems = document.getElementsByClassName(lazySizesCfg.autosizesClass);
1061				addEventListener('resize', debouncedUpdateElementsSizes);
1062			},
1063			checkElems: debouncedUpdateElementsSizes,
1064			updateElem: getSizeElement
1065		};
1066	})();
1067
1068	var init = function(){
1069		if(!init.i && document.getElementsByClassName){
1070			init.i = true;
1071			autoSizer._();
1072			loader._();
1073		}
1074	};
1075
1076	setTimeout(function(){
1077		if(lazySizesCfg.init){
1078			init();
1079		}
1080	});
1081
1082	lazysizes = {
1083		/**
1084		 * @type { LazySizesConfigPartial }
1085		 */
1086		cfg: lazySizesCfg,
1087		autoSizer: autoSizer,
1088		loader: loader,
1089		init: init,
1090		uP: updatePolyfill,
1091		aC: addClass,
1092		rC: removeClass,
1093		hC: hasClass,
1094		fire: triggerEvent,
1095		gW: getWidth,
1096		rAF: rAF,
1097	};
1098
1099	return lazysizes;
1100}
1101));
1102</script>
1102
1103
1104
1105
1106
1107  
1108<script>
1109(function(createShadowDom) {
1110  window.slShadowDomCreate = window.slShadowDomCreate ? window.slShadowDomCreate : createShadowDom;
1111}(
1112function() {
1113  'use strict';
1114
1115  var DATA_SHADOW_STATUS = 'data-shadow-status';
1116  var SHADOW_CONTENT_TAG_NAME =  'SL-SHADOW-CONTENT';
1117  var SHADOW_STATUS = {
1118    init: 'init',
1119    complete: 'complete',
1120  }
1121
1122  var eventDelegate = function($dom, eventName, fn) {
1123    if (!$dom) {
1124      return;
1125    }
1126    var triFunction = function(event) {
1127      if (!event || (!event.target || !event.srcElement)) {
1128        return
1129      }
1130      var target = event.target || event.srcElement;
1131      var currentTarget = event.currentTarget;
1132
1133      while (target !== currentTarget) {
1134        if (target.matches('a')) {
1135          var sTarget = target;
1136          event.delegateTarget = sTarget;
1137          fn.apply(sTarget, [event]);
1138        }
1139
1140        target = target.parentNode;
1141      }
1142    }
1143    $dom.addEventListener(eventName, triFunction);
1144  }
1145  // prevent link in page builder preview
1146  var preventLinkForPreview = function(ele) {
1147    var isPreview = window.location.href.includes('is_preview=2');
1148    if (isPreview) {
1149      eventDelegate(ele, 'click', function(event) {
1150        event.preventDefault();
1151      })
1152    }
1153  }
1154
1155  var createShadowDom = function (root) {
1156    if (!(root instanceof HTMLElement)) {
1157      console.warn('SL shadow dom warning: The root is not HTMLElement');
1158      return;
1159    }
1160
1161    var isShadowDomRoot = !!root.shadowRoot;
1162    var shadowContent = root.previousElementSibling;
1163    var shadowContentTagName = shadowContent && shadowContent.tagName;
1164    var shadowStatus = root.getAttribute(DATA_SHADOW_STATUS);
1165
1166    if (shadowStatus) {
1167      return;
1168    }
1169
1170    if (shadowContentTagName != SHADOW_CONTENT_TAG_NAME) {
1171      console.warn('SL shadow dom warning: The shadow content does not match shadow tag name');
1172      return;
1173    }
1174
1175    if (isShadowDomRoot) {
1176      console.warn('SL shadow dom warning: The root is aready shadow root');
1177      return;
1178    }
1179
1180    root.setAttribute(DATA_SHADOW_STATUS, SHADOW_STATUS.init);
1181    var shadowRoot = root.attachShadow({ mode: 'open' });
1182    shadowRoot.appendChild(shadowContent);
1183    preventLinkForPreview(shadowContent);
1184    // Extend lazysizes for shadow dom
1185    root.slUpdateLazyExtraElements && root.slUpdateLazyExtraElements();
1186    root.setAttribute(DATA_SHADOW_STATUS, SHADOW_STATUS.complete);
1187  };
1188
1189  try {
1190    document.querySelectorAll('sl-shadow-root').forEach(function (shadowDomRoot) {
1191      createShadowDom(shadowDomRoot);
1192    });
1193  } catch (e) {
1194    console.warn('createShadowDom warning:', e)
1195  }
1196}
1197))
1198</script>
1198
1199
1200  
1201<script>
1202/**
1203 * lazySizes does not support lazy loading of shadow dom internal elements,We can be extended by extending the HTML prototype method LazySizes.extraElements
1204 *  HTMLElement.slUpdateLazyExtraElements trigger condition:
1205 *    1、feature key 'enable_shadow_dom' is on
1206 *    2、use filter 'rich_content_format' to output content
1207 */
1208(function(){
1209  if (!window.lazySizes) {
1210    console.warn('Lazysizes warning: window.lazySizes is undefined');
1211    return;
1212  }
1213  var lazyClass = window.lazySizesConfig ? window.lazySizesConfig.lazyClass : 'sl-lazy';
1214  var lazySelector = '.' + lazyClass;
1215  if (typeof window.lazySizes.extraElements === 'undefined') {
1216    window.lazySizes.extraElements = [];
1217  }
1218  HTMLElement.prototype.slUpdateLazyExtraElements = function updateLazyExtraElements() {
1219    var elements = [];
1220    if (this.shadowRoot) {
1221      elements = Array.from(this.shadowRoot.querySelectorAll(lazySelector));
1222    }
1223    elements = elements.concat(Array.from(this.querySelectorAll(lazySelector)));
1224    var extraElements = window.lazySizes.extraElements;
1225    if (elements.length === 0) {
1226      return elements;
1227    }
1228
1229    if (extraElements && extraElements.length > 0) {
1230      window.lazySizes.extraElements = extraElements.concat(elements);
1231    } else {
1232      window.lazySizes.extraElements = elements;
1233    }
1234    window.lazySizes.loader.checkElems();
1235
1236    // Use event delegation to listen to the lazyloaded event of lazy loading elements
1237    // When the lazy loading elements are loaded, update lazySizes.extraElements
1238    this.shadowRoot.addEventListener('lazyloaded', function(event) {
1239      var extraElements = window.lazySizes.extraElements;
1240      if (extraElements && extraElements.length > 0) {
1241        var newExtraElements = extraElements.filter(function(item) {
1242          return item !== event.target;
1243        });
1244        if (newExtraElements.length > 0) {
1245          window.lazySizes.extraElements = newExtraElements;
1246        } else {
1247          delete window.lazySizes.extraElements;
1248        }
1249      }
1250    });
1251
1252    return elements;
1253  };
1254}())
1255</script>
1255
1256
1257
1258
1259
1260
1261  
1261<script src="https://cdn.shoplineapp.com/s/javascripts/currencies.js" defer></script>
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271<script>
1272  function generateGlobalSDKObserver(variableName, options = {}) {
1273    const { isLoaded = (sdk) => !!sdk } = options;
1274    return {
1275      [variableName]: {
1276        funcs: [],
1277        notify: function() {
1278          while (this.funcs.length > 0) {
1279            const func = this.funcs.shift();
1280            func(window[variableName]);
1281          }
1282        },
1283        subscribe: function(func) {
1284          if (isLoaded(window[variableName])) {
1285            func(window[variableName]);
1286          } else {
1287            this.funcs.push(func);
1288          }
1289          const unsubscribe = function () {
1290            const index = this.funcs.indexOf(func);
1291            if (index > -1) {
1292              this.funcs.splice(index, 1);
1293            }
1294          };
1295          return unsubscribe.bind(this);
1296        },
1297      },
1298    };
1299  }
1300
1301  window.globalSDKObserver = Object.assign(
1302    {},
1303    generateGlobalSDKObserver('grecaptcha', { isLoaded: function(sdk) { return sdk && sdk.render }}),
1304    generateGlobalSDKObserver('FB'),
1305  );
1306</script>
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315  
1315<script defer="defer" integrity="sha256-Qb6FmL3YT6tJXI+iy3eliOSBYLI80ZEbaaS9/VwFA5A=" src="https://cdn.shoplineapp.com/assets/common-41be8598bdd84fab495c8fa2cb77a588e48160b23cd1911b69a4bdfd5c050390.js" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
1315
1316  
1316<script src="https://cdn.shoplineapp.com/assets/ng_common-c3830effc84c08457126115db49c6c892f342863b5dc72000d3ef45831d97155.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-w4MO/8hMCEVxJhFdtJxsiS80KGO13HIADT70WDHZcVU="></script>
1316
1317
1318
1319
1320
1321
1322  
1322<script src="https://r2cdn.myshopline.com/static/rs/adff/prod/latest/bundle.iife.js" defer></script>
1322
1323
1324
1325
1326
1327
1328  
1329    
1330    
1330<script integrity="sha256-X514esAI3IqHQH6NVwihfDB6F+mMWKbAdRILeQLusLc=" src="https://cdn.shoplineapp.com/packs/js/runtime~shop-fd4657bd4045e1a444eb.js" crossorigin="anonymous" defer="defer" onerror="sriOnError.call(this, event)"></script>
vendor: 1 bytes, line 1330
1330
1331<script src="https://cdn.shoplineapp.com/packs/js/shared~38c579ec-012f556dd93892b25387.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-lrRMNxsgfVtjX7VGkF5BUfRSkznDlo2znYRv8/JWGcc="></script>
vendor: 1 bytes, line 1331
1331
1332<script defer="defer" integrity="sha256-3rQUFoKt1nnQ/vihJwT2q5mbdmAtd6x5eq+2OJOITc8=" src="https://cdn.shoplineapp.com/packs/js/shared~74eb226d-b2ac25db5761420970e8.chunk.js" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1332
1332
1333<script src="https://cdn.shoplineapp.com/packs/js/shared~0e7b4f31-9b6e9e6c2394fac35fc1.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-PUS072JptM/CIgmLqb+7vaFN9psSRKVlhYt4KaqfXIs="></script>
vendor: 1 bytes, line 1333
1333
1334<script integrity="sha256-bLBbIA3rj/qkdJQqaRM44YCBZQKdhgv3w1ydQPQ3x+w=" src="https://cdn.shoplineapp.com/packs/js/shared~e64cb4ed-7fe78d650b1d274c4ff6.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1334
1334
1335<script defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-IIY3qGGHi1YJ1yZLA1as4+mkl05wFUZ+/TjI6kodYkw=" src="https://cdn.shoplineapp.com/packs/js/shared~479d7c7d-03af887c4f77c6e88f9d.chunk.js"></script>
vendor: 1 bytes, line 1335
1335
1336<script crossorigin="anonymous" integrity="sha256-2u6JjFXv2trTPlgunioIp09lWrz3tcYE86/4c6vwOzw=" src="https://cdn.shoplineapp.com/packs/js/shared~29a769ad-393664929447bc9fa70f.chunk.js" defer="defer" onerror="sriOnError.call(this, event)"></script>
vendor: 1 bytes, line 1336
1336
1337<script onerror="sriOnError.call(this, event)" crossorigin="anonymous" defer="defer" integrity="sha256-ci5Q0TcaCsM5T2eooRSMLVBRzAKpRpSBgcmy1CNr+Us=" src="https://cdn.shoplineapp.com/packs/js/shared~74bff3d6-22d5c66502aec0ec0d1d.chunk.js"></script>
vendor: 1 bytes, line 1337
1337
1338<script src="https://cdn.shoplineapp.com/packs/js/shared~81bba2e3-14ad7178e73b4d4fa1a6.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-pwToiIHTsLYuK0d7WT0PcjpM4THLJHZupttZW/3Vb88="></script>
vendor: 1 bytes, line 1338
1338
1339<script src="https://cdn.shoplineapp.com/packs/js/shared~ecf1c238-9450a105774984d7fab1.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-17+PAKdgJ2Kx7rDjlfr/rw54cYDggOkVhHqub227A9M="></script>
vendor: 1 bytes, line 1339
1339
1340<script integrity="sha256-Om+G2g1jthPhBVbzOe/9deNzAOhAIsY3gnr75vIxKMg=" src="https://cdn.shoplineapp.com/packs/js/shared~9cb81af4-eec2034514eceae2deee.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1340
1340
1341<script src="https://cdn.shoplineapp.com/packs/js/shared~f8ef5884-1e6a6d8227eb7dfe6e40.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-8GI3edURZ60na0xugmWiykL/J64mTHiuUTjWSihwe7A="></script>
vendor: 1 bytes, line 1341
1341
1342<script defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-5Fn52MSbPqCXjTWsGua4ZEEVV4IfgTzIMX0m//C5kPY=" src="https://cdn.shoplineapp.com/packs/js/shared~ea9a1e23-3f60007f64092ec80c98.chunk.js"></script>
vendor: 1 bytes, line 1342
1342
1343<script integrity="sha256-+hBELJkyaD3Cl77ntKZehLWIJwYq9jcsapqQ6BnZdhs=" src="https://cdn.shoplineapp.com/packs/js/shared~dbe7acde-ac6d4c382bfcf6d00e32.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1343
1343
1344<script src="https://cdn.shoplineapp.com/packs/js/shared~d54d7c1c-ed042a14f96f9e557937.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-A8+e89sdHaO2r9+8JlOFQSsjpRG0+pdp/ijri/RXQGk="></script>
vendor: 1 bytes, line 1344
1344
1345<script integrity="sha256-R10cnkedmTvof3N9k1kYh/ow3sAJ7PFS84Hcrd87zYU=" src="https://cdn.shoplineapp.com/packs/js/shared~200bedfd-01e29ef13f7d96fbbc59.chunk.js" crossorigin="anonymous" defer="defer" onerror="sriOnError.call(this, event)"></script>
vendor: 1 bytes, line 1345
1345
1346<script src="https://cdn.shoplineapp.com/packs/js/vendors~shop-aeef42d0a65bef64c557.chunk.js" crossorigin="anonymous" defer="defer" onerror="sriOnError.call(this, event)" integrity="sha256-H/dxEGsgNbcv3E+/Ew7bAzajf0vxbUCpqnbobPMkiAY="></script>
vendor: 1 bytes, line 1346
1346
1347<script onerror="sriOnError.call(this, event)" crossorigin="anonymous" defer="defer" integrity="sha256-px0hwHLmr6HSfZJ4VYXXfdAQlNARtrXH9zmQjZDIxUg=" src="https://cdn.shoplineapp.com/packs/js/shop-409620e91cc0532d117b.chunk.js"></script>
1347
1348
1349    
1350      
1351      
1352        
1352<script defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-TPO40JBlTeqRTsn6af9xC6Zy1dH62szDWtPmAsRS8GU=" src="https://cdn.shoplineapp.com/packs/js/runtime~ng-module/main-6c63fad529b3d3ce95ab.js"></script>
vendor: 1 bytes, line 1352
1352
1353<script onerror="sriOnError.call(this, event)" crossorigin="anonymous" defer="defer" integrity="sha256-0cK+KKphGet+feZEkUelI81vvgjhnlVSEjfdGeDgdx0=" src="https://cdn.shoplineapp.com/packs/js/shared~5c85c39c-6c175d18ade3adbce7a8.chunk.js"></script>
vendor: 1 bytes, line 1353
1353
1354<script src="https://cdn.shoplineapp.com/packs/js/shared~9ee0282b-4f6ab278c4980134da4e.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-/PO0ruocBQbO9LKW9u2X9ZrQk8GHsgSR/N3Jyvh0n4A="></script>
vendor: 1 bytes, line 1354
1354
1355<script src="https://cdn.shoplineapp.com/packs/js/ng-module/main-1624a4b036ed7140973e.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-SeYg54rAc9kDWjwN4pRnbh5dY6ETyJrmbWRKLfZhg34="></script>
1355
1356      
1357    
1358
1359    
1359<script integrity="sha256-V2Jc8Nn4o2yK5be6F3It+hOZaYQqlif6vGQIAn1CZCc=" src="https://cdn.shoplineapp.com/packs/js/runtime~ng-locale/en-9dccac0e252dbd4355df.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1359
1359
1360<script onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-UxtD5LCsz+DQhUlVsHPagWxxIBMgrWkmqYOPtMTrDbI=" src="https://cdn.shoplineapp.com/packs/js/ng-locale/en-6301cfb7135ace17fdac.chunk.js" defer="defer"></script>
1360
1361
1362    
1363      
1363<script src="https://cdn.shoplineapp.com/packs/js/runtime~sdk-f522c86ff158d2d89237.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-PLwTi4I2V3opwEpyMqpevxbRq/3i+kPkB3M2MaILiCU="></script>
vendor: 1 bytes, line 1363
1363
1364<script src="https://cdn.shoplineapp.com/packs/js/shared~360be618-84ff916e0c6be5d560f3.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-Oj07c7babUAedq0zKPc4+LJ0uo1lRdF+jXZBKK9uhWs="></script>
vendor: 1 bytes, line 1364
1364
1365<script defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-vdS7l3OT4pNUq6OD7xLtXcYznH2Ry+s1Z8QLk1i9dng=" src="https://cdn.shoplineapp.com/packs/js/shared~789f1c9c-3956bc45f72f3366a289.chunk.js"></script>
vendor: 1 bytes, line 1365
1365
1366<script onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-LaLq+3A/5ZXnJHQzUtOzA53oPOuGYzUi+aFnUKjJzxM=" src="https://cdn.shoplineapp.com/packs/js/sdk-bf552ac290e8189cdf12.chunk.js" defer="defer"></script>
1366
1367    
1368
1369    
1370      
1370<script src="https://cdn.shoplineapp.com/packs/js/runtime~app_extension_sdk-149384e324bcb048ef13.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-jdz3nZXyEIqcTxX7IJ9pESoYgrpE8sJ2jOPp3wETZwU="></script>
vendor: 1 bytes, line 1370
1370
1371<script src="https://cdn.shoplineapp.com/packs/js/app_extension_sdk-6c1b77cc085ed77d6b11.chunk.js" defer="defer" onerror="sriOnError.call(this, event)" crossorigin="anonymous" integrity="sha256-eM9xe26mETfquqKtFBktklBl6lnlIaulvfTlHeFQoXQ="></script>
1371
1372    
1373
1374    
1375    
1376    
1377    
1378
1379    
1380
1381    
1382
1383    
1383<script crossorigin="anonymous" integrity="sha256-APrRC4EF/GiMwSzPV1G7I/7ovnk6OuTPA+uvrTQicpA=" src="https://cdn.shoplineapp.com/packs/js/runtime~intl_tel_input-6ceb7ec3b81909f77141.js" defer="defer" onerror="sriOnError.call(this, event)"></script>
vendor: 1 bytes, line 1383
1383
1384<script crossorigin="anonymous" integrity="sha256-GgZ72/9MkAbYdrr40Hq/OM9YcTojft/UC87qZrPqS0E=" src="https://cdn.shoplineapp.com/packs/js/intl_tel_input-8f500d7b0d66e9dcf73b.chunk.js" defer="defer" onerror="sriOnError.call(this, event)"></script>
1384
1385
1386    
1387
1388    
1389
1390    
1391    
1392
1393    
1394  
1395
1396
1397<style>
1398  :root {
1399  --announcement-background: #f7f3ee;
1400  --announcement-background-h: 33;
1401  --announcement-background-s: 36%;
1402  --announcement-background-l: 95%;
1403  --announcement-text: #282210;
1404  --announcement-text-h: 45;
1405  --announcement-text-s: 43%;
1406  --announcement-text-l: 11%;
1407  --anti-fraud-background: #f7f3ee;
1408  --anti-fraud-background-h: 33;
1409  --anti-fraud-background-s: 36%;
1410  --anti-fraud-background-l: 95%;
1411  --anti-fraud-text: #282210;
1412  --anti-fraud-text-h: 45;
1413  --anti-fraud-text-s: 43%;
1414  --anti-fraud-text-l: 11%;
1415  --buy-now-background: #a68a49;
1416  --buy-now-background-h: 42;
1417  --buy-now-background-s: 39%;
1418  --buy-now-background-l: 47%;
1419  --buy-now-text: #ffffff;
1420  --buy-now-text-h: 0;
1421  --buy-now-text-s: 0%;
1422  --buy-now-text-l: 100%;
1423  --category-page: 24;
1424  --copyright-background: #f7f3ee;
1425  --copyright-background-h: 33;
1426  --copyright-background-s: 36%;
1427  --copyright-background-l: 95%;
1428  --copyright-text: #282210;
1429  --copyright-text-h: 45;
1430  --copyright-text-s: 43%;
1431  --copyright-text-l: 11%;
1432  --email-button-background: #f7f3ee;
1433  --email-button-background-h: 33;
1434  --email-button-background-s: 36%;
1435  --email-button-background-l: 95%;
1436  --email-button-text: #282210;
1437  --email-button-text-h: 45;
1438  --email-button-text-s: 43%;
1439  --email-button-text-l: 11%;
1440  --font-paragraph: "Noto Sans TC", var(--system-sans);
1441  --font-size-paragraph: 1;
1442  --font-size-title: 1.2;
1443  --font-title: "Noto Sans TC", var(--system-sans);
1444  --footer-background: #f7f3ee;
1445  --footer-background-h: 33;
1446  --footer-background-s: 36%;
1447  --footer-background-l: 95%;
1448  --footer-icon: #282210;
1449  --footer-icon-h: 45;
1450  --footer-icon-s: 43%;
1451  --footer-icon-l: 11%;
1452  --footer-text: #282210;
1453  --footer-text-h: 45;
1454  --footer-text-s: 43%;
1455  --footer-text-l: 11%;
1456  --header-background: #ffffff;
1457  --header-background-h: 0;
1458  --header-background-s: 0%;
1459  --header-background-l: 100%;
1460  --header-icon: #332d27;
1461  --header-icon-h: 30;
1462  --header-icon-s: 13%;
1463  --header-icon-l: 18%;
1464  --header-text: #332d27;
1465  --header-text-h: 30;
1466  --header-text-s: 13%;
1467  --header-text-l: 18%;
1468  --page-background: #ffffff;
1469  --page-background-h: 0;
1470  --page-background-s: 0%;
1471  --page-background-l: 100%;
1472  --page-text: #282210;
1473  --page-text-h: 45;
1474  --page-text-s: 43%;
1475  --page-text-l: 11%;
1476  --page-text-link: #282210;
1477  --page-text-link-h: 45;
1478  --page-text-link-s: 43%;
1479  --page-text-link-l: 11%;
1480  --primary-background: #a68a49;
1481  --primary-background-h: 42;
1482  --primary-background-s: 39%;
1483  --primary-background-l: 47%;
1484  --primary-text: #ffffff;
1485  --primary-text-h: 0;
1486  --primary-text-s: 0%;
1487  --primary-text-l: 100%;
1488  --product-promotion-label-background: #f7f3ee;
1489  --product-promotion-label-background-h: 33;
1490  --product-promotion-label-background-s: 36%;
1491  --product-promotion-label-background-l: 95%;
1492  --product-promotion-label-text: #282210;
1493  --product-promotion-label-text-h: 45;
1494  --product-promotion-label-text-s: 43%;
1495  --product-promotion-label-text-l: 11%;
1496  --secondary-color: #282210;
1497  --secondary-color-h: 45;
1498  --secondary-color-s: 43%;
1499  --secondary-color-l: 11%;
1500  --cookie-consent-popup-z-index: 1000;
1501}
1502</style>
1503
1504<script type="text/javascript">
1505
1506
1507
1508
1509var shoplyticsTrackerSrc = window.location.origin + '/event/assets/js/shoplytics-tracker/latest/shoplytics-tracker.js';
1510
1511(function(e,t,s,c,n,o,p){e.shoplytics||((p=e.shoplytics=function(){
1512p.exec?p.exec.apply(p,arguments):p.q.push(arguments)
1513}).v='2.0',p.q=[],(n=t.createElement(s)).async=!0,
1514n.src=c,(o=t.getElementsByTagName(s)[0]).parentNode.insertBefore(n,o))
1515})(window,document,'script',shoplyticsTrackerSrc);
1516
1517window.SHOPLYTICS_TRACKER_REGISTER = {"language":"en","merchant_id":"6576a1830ee9d100760d043d","user_id":""};
1518
1519shoplytics('init', 'shop', {
1520  register: window.SHOPLYTICS_TRACKER_REGISTER
1521});
1522
1523
1524
1525// for facebook login redirect
1526if (location.hash === '#_=_') {
1527  history.replaceState(null, document.title, location.toString().replace(/#_=_$/, ''));
1528}
1529
1530
1531function SidrOptions(options) {
1532  if (options === undefined) { options = {}; }
1533  this.side = options.side || 'left';
1534  this.speed = options.speed || 200;
1535  this.name = options.name;
1536  this.onOpen = options.onOpen || angular.noop;
1537  this.onClose = options.onClose || angular.noop;
1538}
1539window.SidrOptions = SidrOptions;
1540
1541
1542window.resizeImages = function(element) {
1543  var images = (element || document).getElementsByClassName("sl-lazy-image")
1544  var styleRegex = /background\-image:\ *url\(['"]?(https\:\/\/(shoplineimg.com)\/[^'"\)]*)+['"]?\)/
1545
1546  for (var i = 0; i < images.length; i++) {
1547    var image = images[i]
1548    try {
1549      var src = image.getAttribute('src') || image.getAttribute('style').match(styleRegex)[1]
1550    } catch(e) {
1551      continue;
1552    }
1553    var setBySrc, head, tail, width, height;
1554    try {
1555      if (!src) { throw 'Unknown source' }
1556
1557      setBySrc = !!image.getAttribute('src') // Check if it's setting the image url by "src" or "style"
1558      var urlParts = src.split("?"); // Fix issue that the size pattern can be in external image url
1559      var result = urlParts[0].match(/(.*)\/(\d+)?x?(\d+)?(.*)/) // Extract width and height from url (e.g. 1000x1000), putting the rest into head and tail for repackaging back
1560      head = result[1]
1561      tail = result[4]
1562      width = parseInt(result[2], 10);
1563      height = parseInt(result[3], 10);
1564
1565      if (!!((width || height) && head != '') !== true) { throw 'Invalid image source'; }
1566    } catch(e) {
1567      if (typeof e !== 'string') { console.error(e) }
1568      continue;
1569    }
1570
1571    var segment = parseInt(image.getAttribute('data-resizing-segment') || 200, 10)
1572    var scale = window.devicePixelRatio > 1 ? 2 : 1
1573
1574    // Resize by size of given element or image itself
1575    var refElement = image;
1576    if (image.getAttribute('data-ref-element')) {
1577      var selector = image.getAttribute('data-ref-element');
1578      if (selector.indexOf('.') === 0) {
1579        refElement = document.getElementsByClassName(image.getAttribute('data-ref-element').slice(1))[0]
1580      } else {
1581        refElement = document.getElementById(image.getAttribute('data-ref-element'))
1582      }
1583    }
1584    var offsetWidth = refElement.offsetWidth;
1585    var offsetHeight = refElement.offsetHeight;
1586    var refWidth = image.getAttribute('data-max-width') ? Math.min(parseInt(image.getAttribute('data-max-width')), offsetWidth) : offsetWidth;
1587    var refHeight = image.getAttribute('data-max-height') ? Math.min(parseInt(image.getAttribute('data-max-height')), offsetHeight) : offsetHeight;
1588
1589    // Get desired size based on view, segment and screen scale
1590    var resizedWidth = isNaN(width) === false ? Math.ceil(refWidth * scale / segment) * segment : undefined
1591    var resizedHeight = isNaN(height) === false ? Math.ceil(refHeight * scale / segment) * segment : undefined
1592
1593    if (resizedWidth || resizedHeight) {
1594      var newSrc = head + '/' + ((resizedWidth || '') + 'x' + (resizedHeight || '')) + (tail || '') + '?';
1595      for (var j = 1; j < urlParts.length; j++) { newSrc += urlParts[j]; }
1596      if (newSrc !== src) {
1597        if (setBySrc) {
1598          image.setAttribute('src', newSrc);
1599        } else {
1600          image.setAttribute('style', image.getAttribute('style').replace(styleRegex, 'background-image:url('+newSrc+')'));
1601        }
1602        image.dataset.size = (resizedWidth || '') + 'x' + (resizedHeight || '');
1603      }
1604    }
1605  }
1606}
1607let createDeferredPromise = function() {
1608  let deferredRes, deferredRej;
1609  let deferredPromise = new Promise(function(res, rej) {
1610    deferredRes = res;
1611    deferredRej = rej;
1612  });
1613  deferredPromise.resolve = deferredRes;
1614  deferredPromise.reject = deferredRej;
1615  return deferredPromise;
1616}
1617
1618// For app extension sdk
1619window.APP_EXTENSION_SDK_ANGULAR_JS_LOADED = createDeferredPromise();
1620
1621
1622  window.runTaskInIdle = function runTaskInIdle(task) {
1623    try {
1624      if (!task) return;
1625      task();
1626    } catch (err) {
1627      console.error(err);
1628    }
1629  }
1630
1631
1632window.runTaskQueue = function runTaskQueue(queue) {
1633  if (!queue || queue.length === 0) return;
1634
1635  const task = queue.shift();
1636  window.runTaskInIdle(task);
1637
1638  window.runTaskQueue(queue);
1639}
1640
1641
1642window.addEventListener('DOMContentLoaded', function() {
1643
1644app.value('mainConfig', window.mainConfig);
1645
1646
1647  var appExtensionSdkData = JSON.parse('{\"merchantId\":\"6576a1830ee9d100760d043d\",\"cookieConsent\":null,\"loadedCurrency\":\"twd\",\"pageIdentifier\":\"product_detail\",\"themeKey\":\"kingsman_v2\",\"loadedLanguage\":{\"name\":\"English\",\"code\":\"en\"},\"appExtensionData\":{\"appIds\":[\"63a2b2930064c0001dd692f9\",\"61162030bc1390001da5cede\"]},\"pdpProduct\":{\"id\":\"6aa36e90de77e200134fb066\",\"variation_keys\":[],\"main_product_id\":\"6aa36e90de77e200134fb066\",\"category_ids\":[\"6576a18539088e1747f312e7\",\"65e1e198ec746f00174f55b1\",\"657aa87ede10d2001acc4a9e\",\"657aaaac2e3708001498029a\",\"65e1d71be61a7200179e743f\"],\"tags\":\"倒數月曆,margot\\u0026tita\",\"variation_rendered\":false,\"variation_ids\":null,\"default_variation_id\":null,\"addon_product_rendered\":false,\"addon_product_ids\":null}}');
1648app.value('appExtensionSdkData', appExtensionSdkData);
1649
1650
1651
1652app.value('flash', {});
1653
1654app.value('flash_data', {});
1655app.constant('imageServiceEndpoint', "https://shoplineimg.com/")
1656app.constant('staticImageHost', 'static.shoplineapp.com/web')
1657app.constant('staticResourceHost', 'https://static.shoplineapp.com/')
1658app.constant('FEATURES_LIMIT', JSON.parse('{"disable_image_service":false,"product_variation_limit":400,"paypal_spb_checkout":false,"mini_fast_checkout":false,"fast_checkout_qty":false,"buynow_checkout":false,"blog_category":false,"blog_post_page_limit":false,"shop_category_filter":true,"stripe_card_hk":false,"bulk_update_tag":true,"dynamic_
1658shipping_rate_refactor":true,"promotion_reminder":true,"promotion_page_reminder":true,"modularize_address_format":true,"point_redeem_to_cash":true,"fb_login_integration":false,"product_summary":true,"plp_wishlist":true,"ec_order_unlimit":true,"sc_order_unlimit":true,"inventory_search_v2":true,"sc_lock_inventory":true,"crm_notify_preview":true,"plp_variation_selector":true,"category_banner_multiple":true,"order_confirmation_slip_upload":true,"tier_upgrade_v2":false,"plp_label_wording":true,"order_search_custom_field":true,"ig_browser_notify":true,"ig_browser_disabled":false,"send_product_tag_to_shop":false,"ads_system_new_tab":true,"payment_image":true,"sl_logistics_bulk_action":true,"disable_orderconfirmation_mail":false,"payment_slip_notify":true,"product_set_child_products_limit":20,"product_set_limit":-1,"sl_payments_hk_promo":false,"domain_redirect_ec2":false,"affiliate_kol_report":true,"applepay_newebpay":false,"atm_newebpay":false,"cvs_newebpay":false,"ec_fast_checkout":false,"checkout_setting":true,"omise_payment":false,"member_password_setup_notify":true,"membership_tier_notify":true,"auto_credit_notify":true,"customer_referral_notify":true,"member_points_notify":true,"member_import_notify":true,"crm_sms_custom":true,"crm_email_custom":true,"customer_group":true,"app_checkout_page_v2":false,"cart_api_slp_payment_callback":false,"restricted_product_risk_center_integration":false,"mask_check_stock_api_quantity":false,"tier_auto_downgrade":false,"scheduled_home_page":true,"sc_wa_contacts_list":true,"broadcast_to_unsubscribers_sms":true,"sc_post_feature":true,"google_product_category_3rdlayer":true,"purchase_limit_campaign":true,"order_item_name_edit":false,"block_analytics_request":false,"subscription_order_notify":true,"fb_domain_verification":false,"disable_html5mode":false,"einvoice_edit":true,"order_search_sku":true,"cancel_order_by_customer_v2":true,"storefront_pdp_enhancement":false,"storefront_plp_enhancement":false,"storefront_adv_enhancement":false,"product_cost_permission":true,"promotion_first_purchase":true,"block_gtm_for_lighthouse":true,"use_critical_css_liquid":false,"flash_price_campaign":true,"inventory_change_reason":true,"ig_login_entrance":true,"contact_us_mobile":true,"sl_payment_hk_alipay":false,"3_layer_variation":true,"einvoice_tradevan":true,"tradevan_multi_tax_product_set":false,"order_add_to_cart":true,"order_new_source":true,"einvoice_bulk_update":true,"molpay_alipay_tng":false,"fastcheckout_add_on":false,"plp_product_seourl":true,"country_code":true,"sc_keywords":true,"bulk_printing_labels_711C2C":true,"search_function_image_gallery":true,"social_channel_user":true,"sc_overall_statistics":true,"product_main_images_limit":12,"order_custom_notify":true,"new_settings_apply_all_promotion":true,"new_order_label_711b2c":false,"payment_condition":true,"store_pick_up":true,"other_custom_notify":true,"crm_sms_notify":true,"sms_custom":true,"product_set_revamp":true,"charge_shipping_fee_by_product_qty":true,"whatsapp_extension":true,"new_live_selling":false,"tier_member_points":true,"fb_broadcast_sc_p2":true,"fb_entrance_optimization":true,"shopback_cashback":true,"bundle_add_type":true,"google_ads_api":true,"google_analytics_4":true,"customer_group_smartrfm_filter":true,"shopper_app_entrance":false,"enable_cart_service":true,"store_crm_pwa":true,"store_referral_export_import":true,"store_referral_setting":true,"delivery_time_with_quantity":true,"tier_reward_app_installation":true,"tier_reward_app_availability":true,"stop_slp_approvedemail":true,"google_content_api":false,"buy_online_pickup_instore":false,"subscription_order_expire_notify":true,"payment_octopus":false,"payment_hide_hk":false,"line_ads_tag":true,"get_coupon":true,"coupon_notification":true,"payme_single_key_migration":false,"fb_bdapi":false,"mc_sort_waitingtime_new":true,"disable_itc":false,"sl_payment_alipay":true,"sl_pos_sg_gst_on_receipt":false,"buyandget_promotion":true,"line_login_mobile":true,"vulnerable_js_upgrade":false,"replace_janus_interface":true,"enable_calculate_api_promotion_filter":true,"combine_orders":false,"tier_reward_app_p2":true,"slp_remember_credit_card":true,"subscription_promotion":true,"lock_cart_sc_product":true,"extend_reminder":true,"customer_search_match":true,"slp_product_subscription":true,"customer_group_sendcoupon":true,"sl_payments_apple_pay":true,"apply_multi_order_discount":true,"enable_calculate_api_promotion_apply":true,"product_revamp_doublewrite":true,"tcat_711pickup_emap":false,"page_builder_widget_blog":true,"page_builder_widget_accordion":true,"page_builder_widget_category":true,"page_builder_widget_instagram":true,"page_builder_widget_custom_liquid":true,"page_builder_widget_product_text":true,"page_builder_widget_subscription":true,"page_builder_widget_video":true,"page_builder_widget_collage":true,"npb_theme_sangria":false,"npb_theme_philia":true,"npb_theme_bianco":false,"line_point_cpa_tag":true,"affiliate_by_product":true,"order_select_across_pages":true,"page_builder_widget_count_down":false,"deep_link_support_payme":true,"deep_link_support_linepay":true,"split_order_applied_creditpoint":true,"product_review_reward":true,"rounding_to_one_decimal":false,"disable_image_service_lossy_compression":false,"order_status_non_automation":true,"member_info_reward":true,"order_discount_stackable":true,"enable_cart_api":true,"product_revamp_singleread":true,"deep_search":true,"new_plp_initialized":false,"shop_builder_plp":true,"old_fbe_removal":true,"fbig_shop_disabled":false,"repay_cookie":true,"gift_promotion_condition":true,"blog_revamp_singleread":true,"blog_revamp_doublewrite":true,"credit_condition_tier_limit":5,"credit_condition_5_tier_ec":true,"credit_condition_50_tier_ec":false,"return_order_revamp":false,"expand_sku_on_plp":false,"sl_pos_shopline_payment_invoice_new_flow":true,"credit_campaign_tier":{"active_campaign_limit":-1,"condition_limit":3},"promotion_page":true,"bundle_page":true,"bulk_update_tag_enhancement":true,"use_ngram_for_order_search":true,"notification_custom_sending_time":true,"promotion_by_platform":false,"promotion_gift_multi_numbers":false,"product_feed_revamp":true,"one_page_store":true,"one_page_store_limit":1000,"one_page_store_clone":true,"one_page_store_checkout_v2":false,"header_content_security_policy":false,"product_set_child_products_required_quantity_limit":50,"blog_revamp_admin":true,"blog_revamp_posts_limit":3000,"blog_revamp_admin_category":true,"blog_revamp_shop_category":true,"blog_revamp_categories_limit":10,"blog_revamp_related_products":true,"product_feed_manager":false,"product_feed_manager_availability":true,"checkout_membercheckbox_toggle":true,"youtube_accounting_linking":false,"crowdfunding_app":false,"prevent_duplicate_orders_tempfix":false,"product_review_plp":true,"product_attribute_tag_awoo":false,"sl_pos_customer_info_enhancement":true,"sl_pos_customer_product_preference":true,"sl_pos_payment_method_prioritized_and_hidden":true,"sl_pos_payment_method_picture":true,"facebook_line_promotion_notify":true,"sl_admin_purchase_order":true,"sl_admin_inventory_transfer":true,"sl_admin_supplier":true,"sl_admin_inventory_count":true,"shopline_captcha":true,"shopline_email_captcha":true,"layout_engine_service_kingsman_plp":true,"layout_engine_service_kingsman_pdp":true,"layout_engine_service_kingsman_promotions":true,"layout_engine_service_kingsman_blogs":true,"layout_engine_service_kingsman_member_center"
1658:true,"layout_engine_service_kingsman_npb":false,"layout_engine_service_kingsman_layout":true,"layout_engine_service_kingsman_one_page_stores":false,"layout_engine_service_varm_plp":true,"layout_engine_service_varm_pdp":true,"layout_engine_service_varm_promotions":true,"layout_engine_service_varm_blogs":true,"layout_engine_service_varm_member_center":true,"layout_engine_service_philia_plp":false,"layout_engine_service_philia_pdp":false,"layout_engine_service_philia_promotions":false,"layout_engine_service_philia_blogs":false,"layout_engine_service_philia_member_center":false,"2026_pdp_revamp_mobile_abtesting":false,"2026_pdp_revamp_mobile_addon_products":true,"2026_pdp_revamp_mobile_product_set":false,"pdp_revamp_admin_entrypoint":false,"smart_product_recommendation":true,"one_page_store_product_set":true,"page_use_product_service":true,"price_discount_label_plp":true,"pdp_image_lightbox":true,"advanced_menu_app":true,"smart_product_recommendation_plus":true,"sitemap_cache_6hr":true,"sitemap_enhance_lang":true,"smart_product_recommendation_plus_more_placements":false,"smart_product_recommendation_plus_cart":true,"smart_product_recommendation_plus_blog":false,"bulk_update_redirect_301_limit_20w":false,"pdp_product_sold_count":true,"edit_pdp_product_sold_count":false,"dynamic_
1658shipping_rate_refactor_jp":false,"sl_cashback":false,"sl_cashback_app_avaliable":false,"admin_search_crawl_setting":true,"blog_revamp_multi_lang":false,"sl_payment_integrated":false,"slp_repay_same_method":false,"slp_repay_credit_card_shop":false,"shoplytics_tracker_first_party":true,"checkout_revamp_checkout_page_v2024":true,"security_center":true,"freeshipping_promotion_condition":true,"gift_shipping_promotion_discount_condition":true,"promotion_first_purchase_channel":true,"enable_shopjs_splitting":true,"enable_body_script":true,"enable_corejs_splitting":true,"member_info_reward_subscription":true,"session_expiration_period":true,"point_campaign":true,"online_credit_redemption_toggle":true,"shoplytics_payments_api_v3":true,"shoplytics_staff_api_v3":true,"shoplytics_invoices_api_v3":true,"shoplytics_broadcast_api_v3":true,"enable_promotion_usage_record":true,"archive_order_ui":true,"archive_order_data":true,"order_archive_calculation_revamp_crm_amount":true,"order_archive_calculation_revamp_crm_member":true,"subscription_config_edit_delivery_payment":true,"one_page_store_checkout":true,"cart_use_product_service":true,"order_export_366day":true,"promotion_record_archive_test":true,"order_archive_testing_return_order":true,"order_archive_testing_order_details":true,"order_archive_testing":true,"promotion_page_seo_button":true,"order_archive_testing_crm":true,"order_archive_product_testing":true,"shoplytics_customer_refactor_api_v3":true,"shoplytics_session_metrics":true,"checkout_revamp_v2024":true,"product_set_v2_enhancement":true,"customer_import_50000_failure_report":true,"manual_order_ec_to_sc":true,"group_url_bind_post_live":true,"shoplytics_product_revamp_api_v3":true,"shoplytics_event_realtime_refactor_api_v3":true,"shoplytics_ordersales_v3":true,"payment_fee_config":true,"subscription_config_edit":true,"affiliate_dashboard":true,"export_inventory_report_v2":true,"fb_offline_conversions_api":true,"member_center_profile_revamp":true,"enable_new_css_bundle":true,"broadcast_preset_time":true,"email_custom":true,"social_channel_revamp":true,"memebr_center_point_credit_revamp":true,"customer_data_secure":true,"coupon_v2":true,"tcat_711pickup_sl_logisitics":true,"customer_export_v2":true,"shoplytics_channel_store_permission":true,"customer_group_analysis":true,"slp_bank_promotion":true,"admin_js_upgrade_SL-32913":true,"google_preorder_feed":true,"replace_lms_old_oa_interface":true,"bulk_update_job":true,"custom_home_delivery_tw":true,"birthday_format_v2":true,"preorder_limit":true,"mobile_and_email_signup":true,"exclude_product_v2":true,"smart_omo_customer_tag_note":true,"credit_point_report":true,"sl_payments_cc_promo":true,"user_center_social_channel":true,"enable_lazysizes_image_tag":true,"whatsapp_accept_marketing":true,"line_live":true,"smart_omo_points":true,"smart_omo_credits":true,"credit_campaign":true,"credit_point_triggerpoint":true,"smart_omo_redeem_coupon":true,"smart_omo_send_coupon":true,"smart_omo_show_coupon":true,"send_coupon_notification":true,"external_redeem_coupon":true,"711_CB_pickup_TH":true,"cookie_consent":true,"smart_omo_express_cart":true,"customer_group_regenerate":true,"customer_group_filter_p3":true,"customer_group_filter_p2":true,"page_builder_revamp_theme_setting_initialized":true,"page_builder_revamp_theme_setting":true,"page_builder_revamp":true,"customer_group_broadcast":true,"partial_free_shipping":true,"broadcast_addfilter":true,"social_name_in_order":true,"admin_app_extension":true,"fb_group":true,"fb_broadcast_sc":true,"711_CB_13countries":true,"sl_payment_type_check":true,"sl_payment_standard_v2":true,"shop_category_filter_bulk_action":true,"einvoice_list_by_day":true,"bulk_action_product":true,"bulk_action_customer":true,"pos_only_product_settings":true,"tax_inclusive_setting":true,"one_new_filter":true,"order_tag":true,"out_of_stock_order":true,"cross_shop_tracker":true,"sl_logistics_modularize":true,"fbe_shop":true,"sc_manual_order":true,"sc_sidebar":true,"fb_multi_category_feed":true,"credit_amount_condition_hidden":true,"credit_installment_payment_fee_hidden":true,"sc_facebook_live":true,"category_sorting":true,"dashboard_v2_revamp":true,"customer_tag":true,"customer_coupon":true,"bulk_assign_point":true,"zotabox":true,"locale_revamp":true,"facebook_notify":true,"stripe_payment_intents":true,"customer_edit":true,"fbe_v2_edit":true,"payment":{"oceanpay":true,"sl_payment":true,"payme":true,"sl_logistics_fmt_freeze":true,"stripe_google_pay":true},"fb_pixel_v2":true,"fb_feed_unlimit":true,"customer_referral":true,"fb_product_set":true,"message_center_v3":true,"email_credit_expire_notify":true,"enhanced_catalog_feed":true,"theme_level":3,"chatbot_keywords_matching":true,"dusk_setting":true,"varm_setting":true,"skya_setting":true,"philia_setting":true,"theme_doris_bien":true,"theme_bianco":true,"theme_sangria":true,"preset_publish":true,"membership_tiers":5,"cart_addon_condition":true,"chatbot_image_widget":true,"chatbot_card_carousel":true,"uc_v2_endpoints":true,"uc_integration":true,"member_price":true,"revert_credit":true,"buy_n
1658ow_button":true,"blog":true,"reports":true,"custom_css":true,"multicurrency":true,"chatbot_welcome_template":true,"smart_recommended_related_products":true,"order_custom_field_limit":5,"sl_payments_my_cc":true,"sl_payments_tw_cc":true,"sl_payments_sg_cc":true,"sl_payments_my_fpx":true,"sl_payment_cc":true,"express_cart":true,"chatbot_card_template":true,"customer_custom_field_limit":5,"sfexpress_centre":true,"sfexpress_store":true,"sfexpress_service":true,"sfexpress_eflocker":true,"product_page_limit":-1,"gifts_limit":-1,"disable_old_upgrade_reminder":true,"image_limit":100000,"domain_applicable":true,"share_cart_link":true,"exclude_product":true,"cancel_order_by_customer":true,"storefront_return":true,"admin_manual_order":true,"fbe_v2":true,"promotion_limit":-1,"th_pricing_page_2020":true,"shoplytics_to_hd":true,"stripe_subscription_my_account":true,"user_credit":{"manual":true},"google_recaptcha":true,"product_feed_info":true,"disable_footer_brand":true,"footer_brand":true,"design":{"logo_favicon":true,"shop_template_advanced_setting":true},"fb_ssapi":true,"user_settings":{"facebook_login":true},"fb_quick_signup_link":true,"design_submenu":true,"vn_pricing_page_2020":true,"line_signup":true,"google_signup_login":true,"toggle_mobile_category":true,"online_store_design":true,"tcat_newlabel":true,"auto_reply_fb":true,"ig_new_api":true,"google_ads_manager":true,"facebook_pixel_manager":true,"bing_ads":true,"google_remarketing_manager":true,"google_analytics_manager":true,"yahoo_dot":true,"google_tag_manager":true,"order_split":true,"line_in_chat_shopping":true,"cart_addon":true,"enable_cart_addon_item":true,"studio_livestream":true,"fb_shop_now_button":true,"dashboard_v2":true,"711_cross_delivery":true,"product_log_v2":true,"integration_one":true,"fb_1on1_chat":true,"line_1on1_chat":true,"admin_custom_domain":true,"facebook_ads":true,"product_info":true,"hidden_product_p2":true,"channel_integration":true,"sl_logistics_fmt_freeze":true,"sl_pos_admin_order_archive_testing":true,"sl_pos_receipt_preorder_return_enhancement":true,"sl_pos_receipt_setting_by_channel":true,"sl_pos_purchase_order_onlinestore":true,"sl_pos_inventory_count_for_selected_products":true,"sl_pos_credit_redeem":true,"sl_pos_receipt_information":true,"sl_pos_android_A4_printer":true,"sl_pos_iOS_A4_printer":true,"sl_pos_pin_products":true,"sl_pos_price_by_channel":true,"sl_pos_terminal_bills":true,"sl_pos_promotion_by_channel":true,"sl_pos_bulk_import_update_enhancement":true,"sl_pos_free_gifts_promotion":true,"sl_pos_transfer_onlinestore":true,"sl_pos_new_report_daily_payment_methods":true,"sl_pos_new_report_overview":true,"sl_pos_new_report_transaction_detail":true,"sl_pos_new_report_product_preorder":true,"sl_pos_new_report_customer_analysis":true,"sl_pos_terminal_tw":true,"sl_pos_SHOPLINE_Payments_tw":true,"sl_pos_user_permission":true,"sl_pos_feature_permission":true,"sl_pos_report_shoplytics_psi":true,"sl_pos_einvoice_refactor":true,"sl_pos_member_points":true,"sl_pos_product_set":true,"pos_retail_store_price":true,"sl_pos_save_send_receipt":true,"sl_pos_partial_return":true,"sl_pos_variation_setting_refactor":true,"sl_pos_password_setting_refactor":true,"sl_pos_supplier_refactor":true,"sl_pos_admin_staff":true,"sl_pos_customized_price":true,"sl_pos_member_price":true,"sl_pos_admin_register_shift":true,"sl_pos_logo_terms_and_condition":true,"sl_pos_inventory_transfer_request":true,"sl_pos_admin_inventory_transfer":true,"sl_pos_inventory_count":true,"sl_pos_transaction_conflict":true,"sl_pos_transaction_view_admin":true,"sl_pos_admin_delete_order":true,"sl_pos_admin_cancel_order":true,"sl_pos_order_refactor_admin":true,"sl_pos_purchase_order_partial_in_storage":true,"sl_pos_admin_purchase_order":true,"sl_pos_promotion":true,"sl_pos_payment":true,"sl_pos_discount":true,"email_member_forget_password_notify":true,"sl_pos_admin":true,"sl_pos":true,"subscription_currency":true,"subscription_product":true,"broadcast_center":true,"bundle_pricing":true,"bundle_group":true,"unified_admin":true,"email_member_register_notify":true,"shopline_product_reviews":true,"tier_member_price":true,"email_order_notify":true,"custom_notify":true,"marketing_affiliate_p2":true,"member_points":true,"blog_app":true,"wishlist_app":true,"hidden_product":true,"product_quantity_update":true,"line_shopping_new_fields":true,"staff_limit":-1,"broadcast_unsubscribe_email":true,"menu_limit":-1,"revert_credit_p2":true,"new_sinopac_3d":true,"category_limit":-1,"image_gallery_p2":true,"taxes_settings":true,"customer_advanced_filter":true,"membership":{"index":true,"export":true,"import":true,"view_user":true,"blacklist":true},"marketing_affiliate":true,"addon_products_limit":-1,"order_filter_shipped_date":true,"variant_image_selector":true,"variant_saleprice_cost_weight":true,"variation_label_swatches":true,"image_widget_mobile":true,"fmt_revision":true,"back_
1658in_stock_notify":true,"ecpay_expirydate":true,"product_available_time":true,"select_all_customer":true,"operational_bill":true,"product_limit":-1,"auto_credit":true,"page_limit":-1,"abandoned_cart_notification":true,"currency":{"vietnam_dong":true}}'))
1659app.constant('RESOLUTION_LIST', JSON.parse('[200,400,600,800,1000,1200,1400,1600,1800,2000]'))
1660app.constant('NEW_RESOLUTION_LIST', JSON.parse('[375,540,720,900,1080,1296,1512,2160,2960,3260,3860]'))
1661
1662
1663app.config(function (AnalyticsProvider) {
1664
1665
1666  AnalyticsProvider.startOffline(true);
1667
1668});
1669
1670app.value('fbPixelSettings', [{"single_variation":false,"trackingCode":"2098034467214410","unique_ids":true}]);
1671
1672<!-- translation for angular -->
1673app.constant('ANGULAR_LOCALE', {
1674  ...{"DATETIME_FORMATS":{"AMPMS":"[\"am\", \"pm\"]","DAY":"[\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"]","MONTH":"[\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"]","SHORTDAY":"[\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"]","SHORTMONTH":"[\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"]","fullDate":"EEEE, MMMM d, y","longDate":"MMMM d, y","medium":"MMM d, y h:mm:ss a","mediumDate":"MMM d, y","mediumTime":"h:mm:ss a","short":"M/d/yy h:mm a","shortDate":"M/d/yy","shortTime":"h:mm a"},"NUMBER_FORMATS":{"CURRENCY_SYM":"$","DECIMAL_SEP":".","GROUP_SEP":",","PATTERNS":[{"gSize":3,"lgSize":3,"maxFrac":3,"minFrac":0,"minInt":1,"negPre":"-","negSuf":"","posPre":"","posSuf":""},{"gSize":3,"lgSize":3,"maxFrac":2,"minFrac":2,"minInt":1,"negPre":"-¤","negSuf":"","posPre":"¤","posSuf":""}]},"id":"en"},
1675  pluralCat: function(n, opt_precision) {
1676    if (['ja'].indexOf('en') >= 0) { return PLURAL_CATEGORY.OTHER; }
1677    var i = n | 0;
1678    var vf = getVF(n, opt_precision);
1679    if (i == 1 && vf.v == 0) {
1680      return PLURAL_CATEGORY.ONE;
1681    }
1682    return PLURAL_CATEGORY.OTHER;
1683  }
1684});
1685
1686
1687
1688
1689  
1690app.value('product', {"_id":"6aa36e90de77e200134fb066","owner_id":"6576a1830ee9d100760d043d","field_titles":[],"hide_price":false,"same_price":false,"location_id":"","sku":"mtbox15*24_Calenda_2026\u0000_1","brand":"Margot Tita","mpn":"","gtin":"301185188398","summary_translations":{"zh-hant":"・法國香水之都格拉斯製造\n・蘊含90%天然成分的純素香水\n・便攜式容量可隨時補充香氣\n・根據喜好自由混香,打造專屬香味\n・內含20款15ml迷你淡香精、2款髮香噴霧、1款身體油、1款室內噴霧","en":"・French Eau de Parfum made in Grasse\n・Long-lasting fragrance\n・Layerable with our other fragrances\n・15 ml format to take anywhere\n・+90% naturally-derived ingredients"},"title_translations":{"zh-hant":"【Margot\u0026Tita】2026 限量聖誕倒數月曆","en":"【Margot\u0026Tita】Advent Calendar 2026 - Limited quantity"},"unlimited_quantity":false,"out_of_stock_orderable":true,"price":{"cents":16560,"currency_symbol":"NT$","currency_iso":"TWD","label":"NT$16,560","dollars":16560.0},"price_sale":{"cents":8900,"currency_symbol":"NT$","currency_iso":"TWD","label":"NT$8,900","dollars":8900.0},"max_order_quantity":-1,"status":"active","supplier_id":"","seo_keywords":"倒數月曆,倒數日曆,聖誕月曆","is_preorder":true,"preorder_note_translations":{"zh-hant":"本商品為預購產品,約10月底陸續出貨。","en":"Pre-order item. Shipping begins in late October."},"stock_ids":["6aa36e90de77e200134fb069","6aa36e90de77e200134fb068"],"weight":1.0,"subscription_enabled":false,"subscription_period_type":"day","subscription_period_duration":7,"subscription_recurring_count_limit":-1,"schedule_publish_at":"2026-09-30T16:00:00.000Z","gender":"unisex","age_group":"all_ages","adult":"no","condition":"new","amazon_url":"","amazon_asin":"","taxable":false,"price_max":{"cents":0,"currency_symbol":"NT$","currency_iso":"TWD","label":"","dollars":0.0},"member_price_max":{"cents":0,"currency_symbol":"NT$","currency_iso":"TWD","label":"","dollars":0.0},"addon_product_priorities":{},"blacklisted_delivery_option_ids":["657c25df7c6b83001a0a382e","65800cb8965f7e0020881194","65801b10620aa60023ef7c57","65801b10620aa60023ef7c5a","668371b788b7dd001c21d609","65bb357dfa3cbc000e787f54"],"blacklisted_payment_ids":[],"blacklisted_feed_channels":[],"related_product_ids":["6718b7b6dcc5b4000b7e8ee7","658b942a3790d100018c6b1c","6736fc14b7945e000fdaeee8","6718b1ee6
1690d5f45000ee2dec6"],"is_excluded_promotion":true,"created_by":"admin","root_product_id":"6aa36e90de77e200134fb067","feed_category":{"google_product_category":"Health \u0026 Beauty \u003e Personal Care \u003e Cosmetics","google_category_id":"health_beauty","google_option_id":"personal_care","google_3rd_layer_option_id":"cosmetics","facebook_category_id":"health_beauty","fb_product_category":"health \u0026 beauty \u003e beauty","facebook_option_id":"beauty"},"retail_status":"draft","type":"product","feed_variations":{"color":"","size":"15ml","custom":{},"material":""},"member_price":{"cents":0,"currency_symbol":"NT$","currency_iso":"TWD","label":"","dollars":0.0},"lowest_member_price":{"cents":8900,"currency_symbol":"NT$","currency_iso":"TWD","label":"NT$8,900","dollars":8900.0},"available_start_time":null,"available_end_time":null,"is_reminder_active":true,"flash_price_sets":[],"pos_category_ids":["665452dff1c36000134010c2"],"media":[{"images":{"original":{"width":1080.0,"height":1080.0,"url":"https://img.shoplineapp.com/media/image_clips/6ab37ddf376ab931829295cc/original.jpg?1790148063=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6ab37ddf376ab931829295cc","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6ab37ddf376ab931829295cc/2000x.webp?source_format=jpg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6ab37ddf376ab931829295cc/400x.webp?source_format=jpg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6ab37ddf376ab931829295cc/400x.webp?source_format=jpg"},{"images":{"original":{"width":1180.0,"height":1180.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa45352f7367cf6ccdd75e/original.jpg?1789543733=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa45352f7367cf6ccdd75e","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45352f7367cf6ccdd75e/2000x.webp?source_format=jpg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45352f7367cf6ccdd75e/400x.webp?source_format=jpg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45352f7367cf6ccdd75e/400x.webp?source_format=jpg"},{"images":{"original":{"width":1080.0,"height":1080.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa45500be759c32a96bf5b/original.jpeg?1789543760=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa45500be759c32a96bf5b","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45500be759c32a96bf5b/2000x.webp?source_format=jpeg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45500be759c32a96bf5b/400x.webp?source_format=jpeg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45500be759c32a96bf5b/400x.webp?source_format=jpeg"},{"images":{"original":{"width":1080.0,"height":1080.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa449f74a226c536dfaaca/original.jpg?1789543582=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa449f74a226c536dfaaca","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa449f74a226c536dfaaca/2000x.webp?source_format=jpg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa449f74a226c536dfaaca/400x.webp?source_format=jpg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa449f74a226c536dfaaca/400x.webp?source_format=jpg"},{"images":{"original":{"width":1540.0,"height":1540.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa457c60f3cdc20a8066de/original.jpeg?1789543803=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa457c60f3cdc20a8066de","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa457c60f3cdc20a8066de/2000x.webp?source_format=jpeg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa457c60f3cdc20a8066de/400x.webp?source_format=jpeg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa457c60f3cdc20a8066de/400x.webp?source_format=jpeg"},{"images":{"original":{"width":1540.0,"height":1540.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa458463f015cde24e071f/original.jpeg?1789543811=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa458463f015cde24e071f","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa458463f015cde24e071f/2000x.webp?source_format=jpeg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa458463f015cde24e071f/400x.webp?source_format=jpeg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa458463f015cde24e071f/400x.webp?source_format=jpeg"}
1690,{"images":{"original":{"width":1080.0,"height":1080.0,"url":"https://img.shoplineapp.com/media/image_clips/6aaa45bc512ab1cb464cab10/original.jpg?1789543867=\u0026owner_id=6576a1830ee9d100760d043d"}},"_id":"6aaa45bc512ab1cb464cab10","alt_translations":{},"blurhash":"","detail_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45bc512ab1cb464cab10/2000x.webp?source_format=jpg","default_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45bc512ab1cb464cab10/400x.webp?source_format=jpg","thumb_image_url":"https://shoplineimg.com/6576a1830ee9d100760d043d/6aaa45bc512ab1cb464cab10/400x.webp?source_format=jpg"}],"cover_media_array":[{"_id":"6ab37ddf376ab931829295cc","original_image_url":"https://img.shoplineapp.com/media/image_clips/6ab37ddf376ab931829295cc/original.jpg?1790148063=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa45352f7367cf6ccdd75e","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa45352f7367cf6ccdd75e/original.jpg?1789543733=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa45500be759c32a96bf5b","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa45500be759c32a96bf5b/original.jpeg?1789543760=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa449f74a226c536dfaaca","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa449f74a226c536dfaaca/original.jpg?1789543582=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa457c60f3cdc20a8066de","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa457c60f3cdc20a8066de/original.jpeg?1789543803=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa458463f015cde24e071f","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa458463f015cde24e071f/original.jpeg?1789543811=\u0026owner_id=6576a1830ee9d100760d043d"},{"_id":"6aaa45bc512ab1cb464cab10","original_image_url":"https://img.shoplineapp.com/media/image_clips/6aaa45bc512ab1cb464cab10/original.jpg?1789543867=\u0026owner_id=6576a1830ee9d100760d043d"}],"variations":[],"variant_options":[],"addon_promotions":"","retail_price":{"cents":8900,"currency_symbol":"NT$","currency_iso":"TWD","label":"NT$8,900","dollars":8900.0},"quantity":0,"stock_id":"6aa36e90de77e200134fb069","warehouse":{"_id":"6576a233a62aa00018ca4759","name_translations":{"zh-cn":"预设仓库","zh-hant":"預設倉庫","en":"Primary"}},"is_stock_shared":false,"wish_list_items":[],"product_price_tiers":[{"membership_tier_id":"658c015d797582001acd8213","member_price":null},{"membership_tier_id":"658c0106a12b38000e26dbcc","member_price":null}],"link":{"_id":"6aa36e9275c5b6af7213ee65","status":"active","type":"product","section":"seo","owner_id":"6576a1830ee9d100760d043d","value_id":"6aa36e90de77e200134fb066","name_translations":{},"image_id":""},"filter_tags":[],"labels":[{"id":"6abdb46cba087b14536df472","name_translations":{"zh-hant":"新品上市","en":"NEW"}}],"bundle_set":null,"sold_out":false,"child_products":[],"identifier_exists":true,"price_range":"","member_price_range":"","tax_type":"","oversea_tax_type":"","preorder_limit":6,"total_orderable_quantity":6,"cart_tag":{"_id":"","name_translations":{},"priority":0},"allow_gift":false,"display_sales_count":0,"custom_sales_count":0});
1691app.value('products', []);
1692app.value('variantId', "");
1693app.value('advanceFilterData', null);
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704    try {
1705    var $searchPanelMobile;
1706
1707    
1708      var $mask = $('<div class="Modal-mask sl-modal-mask" style="display: none;"></div>');
1709
1710      function showMask() {
1711        $mask.css({'opacity': '0.3', 'display': 'block'});
1712
1713        $('.Product-searchField-panel').removeClass('is-show');
1714      }
1715
1716      function hideMask() {
1717        $mask.css({'opacity': '0'});
1718        setTimeout(function() {
1719          $mask.css({'display': 'none'});
1720        }, 200);
1721      }
1722
1723      var cartPanelOptions = new SidrOptions({
1724        name: 'cart-panel',
1725        onOpen: function() {
1726          showMask();
1727          angular.element('body').scope().$broadcast('cart.reload');
1728        },
1729        onClose: hideMask
1730      });
1731
1732      $('.sl-cart-toggle').sidr(cartPanelOptions);
1733      $('.sl-menu-panel-toggle').sidr(new SidrOptions({ name: 'MenuPanel', onOpen: showMask, onClose: hideMask }));
1734
1735      $mask
1736        .appendTo('body')
1737        .on('click', function() {
1738          $.sidr('close', 'MenuPanel');
1739          $.sidr('close', 'cart-panel');
1740          hideMask();
1741        });
1742    
1743
1744      $( ".body-wrapper" ).on("click touch touchmove", function(e) {
1745        if ($(".body-wrapper").hasClass("sidr-open" )) {
1746          e.preventDefault();
1747          e.stopPropagation();
1748          $.sidr('close','left-panel');
1749          $.sidr('close','cart-panel');
1750          $.sidr('close','currency-panel');
1751          $.sidr('close','language-panel');
1752          $('html, body').css({'overflow': 'auto'});
1753        }
1754      });
1755
1756      $(document).ready(function() {
1757        if (typeof Sentry !== 'undefined') {
1758  var LOG_LEVELS = {
1759    'Verbose': ['log', 'info', 'warn', 'error', 'debug', 'assert'],
1760    'Info': ['info', 'warn', 'error'],
1761    'Warning': ['warn', 'error'],
1762    'Error': ['error'],
1763  };
1764
1765  var config = {
1766    dsn: 'https://[email protected]/5797752',
1767    env: 'production',
1768    commitId: '',
1769    sampleRate: 1,
1770    tracesSampleRate: 0,
1771    logLevels: LOG_LEVELS['Error'],
1772    beforeSend: function(event) {
1773      try {
1774        if ([
1775            'gtm',
1776            'gtag/js',
1777            'tracking',
1778            'pixel/events',
1779            'signals/iwl',
1780            'rosetta.ai',
1781            'twk-chunk',
1782            'webpush',
1783            'jquery',
1784            '<anonymous>'
1785          ].some(function(filename) {
1786            return event.exception.values[0].stacktrace.frames[0].filename.toLowerCase().indexOf(filename) > -1;
1787          }) ||
1788          event.exception.values[0].stacktrace.frames[1].function.toLowerCase().indexOf('omni') > -1
1789        ) {
1790          return null;
1791        }
1792      } catch (e) {}
1793
1794      return event;
1795    },
1796  };
1797
1798  var pageName = '';
1799
1800  try {
1801    var pathName = window.location.pathname;
1802
1803    if (pathName.includes('/cart')) {
1804      pageName = 'cart';
1805    }
1806    if (pathName.includes('/checkout')) {
1807      pageName = 'checkout';
1808    }
1809  } catch (e) {}
1810
1811  var exclusionNames = [];
1812  var isLayoutEngine = false;
1813
1814  /**
1815   * Check if the current page contains gtm
1816   */
1817  var checkHasGtm = function() {
1818    return Array.from(document.scripts).some(function(script) {
1819      return script.src.includes('gtm.js');
1820    });
1821  }
1822
1823  Sentry.init({
1824    dsn: config.dsn,
1825    environment: config.env,
1826    release: config.commitId,
1827    integrations: function(integrations) {
1828      var ourIntegrations = integrations.concat([
1829        new Sentry.Integrations.BrowserTracing(),
1830        new Sentry.Integrations.CaptureConsole({ levels: config.logLevels }),
1831      ]);
1832
1833      if (isLayoutEngine || checkHasGtm()) {
1834        exclusionNames = ["GlobalHandlers", "TryCatch", "CaptureConsole"];
1835      }
1836
1837      var finalIntegrations =
1838        ourIntegrations.filter(function(integration) {
1839          return !exclusionNames.includes(integration.name);
1840        });
1841      return finalIntegrations;
1842    },
1843    sampleRate: config.sampleRate,
1844    tracesSampler: function(samplingContext) {
1845      const transactionContext = samplingContext.transactionContext || {};
1846      const op = transactionContext.op || '';
1847
1848      if (op === 'cartV2.ui.action') {
1849        return 1.0;
1850      }
1851      return config.tracesSampleRate;
1852    },
1853    attachStacktrace: true,
1854    denyUrls: [
1855      'graph.facebook.com',
1856      'connect.facebook.net',
1857      'static.xx.fbcdn.net',
1858      'static.criteo.net',
1859      'sslwidget.criteo.com',
1860      'cdn.shopify.com',
1861      'googletagservices.com',
1862      'googletagmanager.com',
1863      'google-analytics.com',
1864      'googleadservices.com',
1865      'googlesyndication.com',
1866      'googleads.g.doubleclick.net',
1867      'adservice.google.com',
1868      'cdn.mouseflow.com',
1869      'cdn.izooto.com',
1870      'static.zotabox.com',
1871      'static.hotjar.com',
1872      'd.line-scdn.net',
1873      'bat.bing.com',
1874      's.yimg.com',
1875      'js.fout.jp',
1876      'load.sumo.com',
1877      '.easychat.co',
1878      '.chimpstatic.com',
1879      '.yotpo.com',
1880      '.popin.cc',
1881      '.iterable.com',
1882      '.alexametrics.com',
1883      '.giphy.com',
1884      'stats.zotabox.com',
1885      'stats.g.doubleclick.net',
1886      'www.facebook.com',
1887    ],
1888    beforeSend: config.beforeSend,
1889  });
1890
1891  
1892
1893  var tags = {
1894    page_locale: 'en',
1895    user_country: 'US',
1896    handle: 'anelet',
1897    cart_owner_id: '',
1898    cart_owner_type: '',
1899    cart_id: '',
1900  };
1901
1902  if (pageName) {
1903    tags.page = pageName;
1904  }
1905
1906  Sentry.setTags(tags);
1907}
1908
1909
1910        $searchPanelMobile = $jq('.search-panel-mobile');
1911        // to show a loading dialog when a huge Product Description Image/Video blocks page content from rednering
1912        $("#product-loading").remove();
1913
1914        var lazyClasses = ['sl-lazy', 'sl-lazyloading', 'sl-lazyloaded', 'sl-lazypreload', 'sl-lazyerror'];
1915        $jq(".additional-details-content, .ProductDetail-additional, .ProductDetail-gallery")
1916          .find("img[data-src]:not([data-src='']), iframe[data-src]:not([data-src=''])")
1917          .each(function() {
1918            var domClassList = ($(this).attr('class') || '').split(/\s+/);
1919            // check used lazysizes
1920            var hasLazyClass = domClassList.some(function(className) {
1921              return lazyClasses.includes(className);
1922            });
1923            if (!hasLazyClass) {
1924              $(this)
1925                .attr('src', $(this).attr('data-src'))
1926                .removeAttr('data-src');
1927            }
1928        });
1929
1930        if ($jq("#home-carousel").length > 0) {
1931          runTaskInIdle(() => {
1932            $jq("#home-carousel").owlCarousel({
1933              items: 1,
1934              singleItem: true,
1935              autoPlay: true,
1936              stopOnHover: true,
1937              lazyLoad : true,
1938              onLoadedLazy: function(event) { window.resizeImages(event.target); },
1939              autoHeight:true,
1940              navigation: true,
1941              navigationText: false,
1942            });
1943          });
1944        }
1945
1946        $jq(".owl-carousel").each(function () {
1947          runTaskInIdle(() => {
1948            var owl = $jq(this);
1949            owl.owlCarousel({
1950              loop: true,
1951              items: 1,
1952              margin: 10,
1953              nav: false,
1954              lazyLoad: true,
1955              onLoadedLazy: function(event) {
1956                window.resizeImages(event.target);
1957              },
1958              onInitialized: function() {
1959                //owl-stage have transition: 0.25s Time difference
1960                setTimeout(function() {
1961                  owl.prev('.owl-carousel-first-initializing').hide();
1962                  owl
1963                    .removeClass('initializing')
1964                    .trigger('refresh.owl.carousel');
1965                }, 300);
1966              },
1967              autoplay: true,
1968              autoplayTimeout: (parseFloat($jq(this).data('interval')) || 5) * 1000,
1969              autoHeight: true,
1970              autoplayHoverPause: false // https://github.com/OwlCarousel2/OwlCarousel2/pull/1777
1971            });
1972          });
1973        });
1974
1975        function restartCarousel() {
1976          if (document.visibilityState === 'visible') {
1977            $jq(".owl-carousel").each(function (_, element) {
1978              var $carousel = $jq(element);
1979              var owlCarouselInstance = $carousel.data("owl.carousel");
1980              var isAutoplay = owlCarouselInstance.settings.autoplay;
1981              if (isAutoplay) {
1982                $carousel.trigger('stop.owl.autoplay');
1983                $carousel.trigger('next.owl.carousel');
1984              }
1985            });
1986          }
1987        }
1988        document.addEventListener('visibilitychange', restartCarousel);
1989
1990        setTimeout(function() {
1991          $jq('.title-container.ellipsis').dotdotdot({
1992            wrap: 'letter'
1993          });
1994
1995          var themeKey = 'kingsman_v2';
1996          var heightToDot = {
1997            varm: 55,
1998            philia: 45,
1999            skya: 45
2000          };
2001
2002          $jq('.Product-item .Product-info .Product-title').dotdotdot({
2003            wrap: 'letter',
2004            ellipsis: '...',
2005            height: heightToDot[themeKey] || 40
2006          });
2007        });
2008
2009        // avoid using FB.XFBML.parse() as it breaks the fb-checkbox rendering, if u encounter resize issue, solve with CSS instead
2010      });
2011
2012      $(document).on('click', '.m-search-button', function(){
2013          $searchPanelMobile.toggleClass('click');
2014          if ($('.body-wrapper').hasClass('sidr-open')) {
2015            $.sidr('close','left-panel');
2016            $.sidr('close','cart-panel');
2017            $.sidr('close','language-panel');
2018            $.sidr('close','currency-panel');
2019            $('html, body').css({'overflow': 'auto'});
2020          }
2021      });
2022
2023      $(document).on('click', '.search-mask', function() {
2024        $searchPanelMobile.toggleClass('click');
2025      });
2026
2027      
2028
2029
2030      if (window.scriptQueue && window.scriptQueue.length > 0) {
2031        runTaskQueue(window.scriptQueue);
2032      }
2033
2034      
2035    } catch (e) {
2036      console.error(e);
2037    }
2038
2039    window.renderSingleRecaptchaForSendCode = function(element) {
2040      var widgetId = window.grecaptcha.render(element, {
2041        sitekey: "6LdXuMspAAAAAOq6CWV8J2I49kmGJoGxnZ2qvhcb"
2042      }, true);
2043
2044      element.dataset.widgetId = widgetId;
2045    };
2046
2047    
2048      window.renderSingleRecaptcha = function(element) {
2049        var widgetId = window.grecaptcha.render(element, {
2050          sitekey: "6LdXuMspAAAAAOq6CWV8J2I49kmGJoGxnZ2qvhcb"
2051        }, true);
2052
2053        element.dataset.widgetId = widgetId;
2054      };
2055    
2056
2057    window.initRecaptcha = function() {
2058      // Delay event binding to avoid angular clear registered events
2059      
2060        document.querySelectorAll('.g-recaptcha:not([id$="send-code
2060-recaptcha"]').forEach(renderSingleRecaptcha);
2061      
2062
2063      document.querySelectorAll('#quick-sign-up-send-code-recaptcha').forEach(renderSingleRecaptchaForSendCode);
2064
2065      
2066        if (document.getElementById('sign-up-recaptcha')) {
2067          document.getElementById('sign-up-recaptcha').disabled = true;
2068        }
2069      
2070      angular.element(document).scope().$root.recaptchaLoaded = true;
2071      window.globalSDKObserver.grecaptcha.notify();
2072    }
2073
2074    window.onRecaptchaLoaded = function() {
2075      if (!window.grecaptcha.render) {
2076        window.grecaptcha.ready(function() {
2077          initRecaptcha();
2078        });
2079        return;
2080      }
2081      initRecaptcha();
2082    };
2083
2084    
2085      runTaskInIdle(() => {
2086        angular.element(document).ready(function() {
2087          var tag = document.createElement("script");
2088          tag.src = "https://www.recaptcha.net/recaptcha/api.js?onload=onRecaptchaLoaded&render=explicit";
2089          document.getElementsByTagName("head")[0].appendChild(tag);
2090        });
2091        angular.bootstrap(document, ['shop_app']);
2092      });
2093      runTaskInIdle(() => {
2094        window.APP_EXTENSION_SDK_ANGULAR_JS_LOADED.resolve();
2095      });
2096    
2097});
2098
2099</script>
2099
2100
2101<base href="/">
2102
2103<!-- CSRF -->
2104<meta name="csrf-param" content="authenticity_token" />
2105<meta name="csrf-token" content="6ok+EmnBLudrvT5iLsKAyEcr30PMwzoBW9kNQ00zMG22WmFFQrZhw/bIbx62MTM+JGisIOZjqzRFihlAhmnoig==" />
2106
2107<!-- Start of Criteo one tag -->
2108
2109<!-- End of Criteo one tag -->
2110
2111
2112
2113
2114
2115  </head>
2116
2117  
2118  
2119  
2120  
2121  
2122  
2123  
2124  
2125    
2126  
2127  
2128  
2129
2130  
2131  
2132  
2133  
2134  
2135
2136  <body class="products show mix-navigation-fixed kingsman_v2 light_theme v2_theme" ng-controller="MainController">
2137    
2138    
2139      
2140  
2141  
2142  
2143  
2144  <link rel="stylesheet" href="/assets/theme_kingsman_v2_setting-67bf495948743fe6c5f2c89c7d5ae1f07864267476771ab085828cd4329c2163.css" media="print" onload="this.media=&#34;all&#34;">
2145
2146
2147
2148  
2149  
2150    
2151      <style>
2152        .variation-label:hover,.variation-label.variation-label--selected,.ProductList-breadcrumb a:hover,.ProductDetail-breadcrumb a:hover,.PromotionPage-banner .PromotionPage-breadcrumb a:hover,.member-center-coupon-nav .active,.product-available-info-time,.category-advance-filter .filter-data .filter-item-title .expend-toggle:hover,.category-advance-filter .filter-data .filter-item label:hover,.facebook-banner .fa-times,.facebook-banner .wording,sl-list-page-wishlist-button .plp-wishlist-button .fa-heart,.text-primary-color,.text-primary-color a,.text-primary-color a:hover{color:#a68a49}.basic-popover-mobile .member-referral-link,.basic-popover-mobile .member-referral-link:hover{color:#a68a49 !important}.nav-bg-color,.nav-bg-color .NavigationBar-nestedList .NavigationBar-nestedList-dropdown,.nav-bg-color.sidr,.cart-primary-bg-color:not(:empty),.primary-bg-color-tag,.primary-bg-title-color:before,.primary-hover-bg-color li:hover,.cart-chkt-btn,.cart-chkt-btn:hover,.pagination li.active a:after,.pagination li a:hover:after,.pagination li a:active:after,.pagination li a:focus:after,.addon-promotions-container .addon-item-chkbox input:checked+span,#Footer .container:last-child .item:after,.navigation-menu .navigation-menu-item,.navigation-menu .navigation-menu-second-layer,.navigation-menu .navigation-menu-third-layer,.navigation-menu .scroll-left:not(.scroll-disable):hover,.navigation-menu .scroll-right:not(.scroll-disable):hover,.custom-dropdown .custom-dropdown-option:hover,#shopline-copyright,.coupon-card-image,.category-advance-filter .filter-data .filter-item-title .expend-toggle:hover .advance-filter-icon.close-icon::before,.category-advance-filter .filter-data .filter-item-title .expend-toggle:hover .advance-filter-icon.close-icon::after,.category-advance-filter .filter-data .filter-item-title .expend-toggle:hover .advance-filter-icon.open-icon::before,.category-advance-filter .filter-data .filter-item-title .expend-toggle:hover .advance-filter-icon.open-icon::after{background:#a68a49}.btn-color-primary,.member-profile-save,.mobile-verification-btn,.session-varify-code-btn,.MemberCenter .product-review-block .btn-primary,.quick-cart-cancel,.basic-popover-desktop .close-button,.basic-popover-desktop .body .description .icon,.basic-popover-desktop .body .action-button,#get-welcome-member-referral-credits .close-section .close-button,#get-welcome-member-referral-credits .body .continue{background:#a68a49 !important}.member-price-tag,.product-customized-labels,.modal-confirm .modal-footer .btn-confirm,.btn-cart-fixed:not(.btn-buy-now),.ProductList-settings category-filter-button .advance-filter-button:hover,.category-advance-filter .apply-button,.category-advance-filter .filter-data .filter-item label input[type='checkbox']:checked::after,.member-center-profile__submit-button,.member-center-profile__retry-button,.member-center-profile__member-referral-modal-button,.member-center-profile__email-verification-modal-button,.member-center-profile__submit-button:hover,.member-center-profile__retry-button:hover,.member-center-profile__member-referral-modal-button:hover,.member-center-profile__email-verification-modal-button:hover{background-color:#a68a49}.variation-label:hover,.variation-label.variation-label--selected,.cart-chkt-btn,.addon-promotions-container .addon-promotion-item-wrapper .addon-selected,.addon-promotions-container .addon-item-chkbox input:checked+span,.modal-confirm .modal
2152-footer .btn-confirm,.variant-image.selected .image-container,.btn-cart-fixed:not(.btn-buy-now),.product-available-info,.category-advance-filter .filter-data .filter-price-range input:focus,.category-advance-filter .filter-data .filter-price-range input:hover,.member-center-profile__submit-button,.member-center-profile__retry-button,.member-center-profile__member-referral-modal-button,.member-center-profile__email-verification-modal-button,.member-center-profile__submit-button:hover,.member-center-profile__retry-button:hover,.member-center-profile__member-referral-modal-button:hover,.member-center-profile__email-verification-modal-button:hover{border-color:#a68a49}.btn-color-primary,.member-profile-save,.mobile-verification-btn,.session-varify-code-btn,.MemberCenter .product-review-block .btn-primary,.basic-popover-desktop .body .action-button,#get-welcome-member-referral-credits .body .continue,.checkout-coupon-list-card:hover>.checkout-coupon-list-card-body{border-color:#a68a49 !important}.Product-promotions,.Util-cssToggle ~ .Util-cssToggleLabel{border-left-color:#a68a49}.product-available-info-time{border-bottom-color:#a68a49}.product-available-info-icon .icon-clock,.js-sticky-cart-button-container.fast-checkout-container.has-buy-now-button .icon-cart{fill:#a68a49}.customer-review-bar-color{background-color:rgba(43,56,100,0.3) !important}.facebook-quick-signup-success-page .title{color:#a68a49}.facebook-quick-signup-success-page .btn-facebook-redirect{background-color:#a68a49}.facebook-quick-signup-success-page .btn-facebook-redirect:hover{background-color:#a68a49;color:#fff;opacity:0.8}.facebook-quick-signup-failure-page .title{color:#a68a49}.facebook-quick-signup-failure-page .btn-facebook-redirect{background-color:#a68a49}.facebook-quick-signup-failure-page .btn-facebook-redirect:hover{background-color:#a68a49;color:#fff;opacity:0.8}.multi-checkout-confirm .multi-checkout-confirm__delivery_notice{color:#a68a49}.multi-checkout-confirm .multi-checkout-confirm__delivery_notice:before,.multi-checkout-confirm .multi-checkout-confirm__delivery_notice:after{background-color:#a68a49}#checkout-object__section .checkout-object__info_cart-header{color:#a68a49}#checkout-object__section .checkout-object__info_cart-header .icon-basket{fill:#a68a49}#signup-login-page .solid-btn:not([disabled]){background-color:#a68a49;border-color:#a68a49}#signup-login-page .solid-btn:not([disabled]):hover{color:#fff;opacity:0.9}#signup-login-page .solid-btn[data-loading]{background-color:#a68a49;border-color:#a68a49}#signup-login-page .outline-btn:not([disabled]){color:#a68a49;border-color:#a68a49}#signup-login-page .outline-btn:not([disabled]):hover{color:#fff;background-color:#a68a49;border-color:#a68a49;opacity:0.9}#signup-login-page .outline-btn[data-loading]{color:#a68a49;border-color:#a68a49}.member-center-profile__submit-button:hover,.member-center-profile__retry-button:hover,.member-center-profile__member-referral-modal-button:hover,.member-center-profile__email-verification-modal-button:hover{opacity:0.9}
2153
2154      </style>
2155    
2156    
2157      <style>
2158        .nav-bg-color .navigation-menu-item-label,.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus,.ProductDetail-product-info .btn-custom:not(.btn-buy-now),.member-price-tag,.product-customized-labels,.ProductList-settings-list li:hover,.btn-cart-fixed:not(.btn-buy-now),.modal-confirm .modal-footer .btn-confirm,.NavigationBar-nestedList .NavigationBar-nestedList-dropdown .fa.menu-list-item,#shopline-copyright>a{color:#ffffff}.nav-bg-color .MenuPanel-section .MenuPanel-section-header,.nav-bg-color .MenuPanel-section .List-item a,.cart-chkt-btn,.QuickCart-modal .quick-cart-body .product-info .btn-custom,.btn-color-primary,.member-profile-save,.mobile-verification-btn,.MemberCenter .product-review-block .btn-primary,.custom-dropdown .custom-dropdown-option:hover,.basic-popover-desktop .body .action-button,#get-welcome-member-referral-credits .body .continue{color:#ffffff !important}.cart-chkt-btn:hover .ladda-spinner div,.basic-popover-desktop .close-button:before,.basic-popover-desktop .close-button:after,#get-welcome-member-referral-credits .close-section .close-button:before,#get-welcome-member-referral-credits .close-section .close-button:after{background:#ffffff !important}.nav-bg-color .MenuPanel-othersMenu .List-item{border-color:#ffffff}.addon-promotions-container .addon-item-chkbox span:before{border-left-color:#ffffff}.nav-bg-color .MenuPanel-section .MenuPanel-section-header:not(:first-child):before{border-top-color:#ffffff}.quick-cart-cancel-holder .quick-cart-cancel:before,.quick-cart-cancel-holder .quick-cart-cancel:after,.addon-promotions-container .addon-item-chkbox span:before{border-bottom-color:#ffffff}.nav-bg-color .MenuPanel-othersMenu .List-item svg{fill:#ffffff}
2159
2160      </style>
2161    
2162    
2163      <style>
2164        .product-info .price-sale,.product-info .price-regular:not(.price-crossed),.product-info .quick-cart-price>div>div:not(.price-crossed),.ProductDetail-product-info .price-sale,.ProductDetail-product-info .price-regular:not(.price-crossed),.addon-promotions-container .addon-promotion-item .price-sale,.NavigationBar .List-item:hover .App-currencyDropdown .Label:first-letter,.NavigationBar .List-item:hover .CartPanel-toggleButton .Cart-count,.NavigationBar .List-item:hover .NavigationBar-actionMenu-button span,.Wishlist-addItem-block .btn-add-wishlist,.Back-in-stock-addItem-block .btn-add-back-in-stock,.ProductList-nestedList-dropdown .Label:hover,.PromotionPage-container product-item .price-sale,.PromotionPage-container redeem-gift-item .price-sale,.PromotionCart-content .product-content .price-details{color:#282210}.tertiary-color-price,.tertiary-hover-color:hover,.ProductReview-container a.primary-color-hover:hover,.ProductReview-container .List-item a.primary-color-hover:hover,.ProductReview-container .List-item a.disabled{color:#282210 !important}.NavigationBar .List-item:hover .CartPanel-toggleButton .Cart-count:not(:empty),.NavigationBar .NavigationBar-nestedList .multi-sub .sub-prev:hover>span,.NavigationBar .NavigationBar-nestedList .multi-sub .sub-next:hover>span{background:#282210}.PromotionCart-content .product-content .input-group-btn>.btn{border-color:#282210}.form-quantity .input-group-btn .btn-checkout{border-color:#282210 !important}.form-quantity .input-group-btn:last-child .btn-checkout:after,.accordion-box .accordion-title span:after,.addon-promotions-container .addon-promotion-item .quantity-container span:last-child button:after{border-left-color:#282210}.form-quantity .input-group-btn .btn-checkout:before,.accordion-box .accordion-title span:before,.addon-promotions-container .addon-promotion-item .quantity-container button:before{border-bottom-color:#282210}.tertiary-fill-icon,.NavigationBar .List-item:hover svg.icons,.PromotionPage-container product-item .boxify-image-wrapper .btn-add-to-promotion-cart svg,.PromotionPage-container redeem-gift-item .boxify-image-wrapper .btn-add-to-promotion-cart svg{fill:#282210}.tertiary-hover-icon:hover svg{fill:#282210 !important}.ProductReview-container a{text-decoration:none !important}
2165
2166      </style>
2167    
2168  
2169
2170  
2171  
2172  
2173    <link rel="dns-prefetch" href="https://fonts.googleapis.com">
2173<link rel="preconnect" href="https://fonts.googleapis.com"><link rel="dns-prefetch" href="https://fonts.gstatic.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
2174		
2174<script>
2175			window.addEventListener('load', function() {
2176				const link = document.createElement('link');
2177				link.rel = 'stylesheet';
2178				link.href = 'https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700&display=swap';
2179				link.media = 'print';
2180				link.onload = () => {
2181					link.media = 'all';
2182				}
2183				document.head.appendChild(link);
2184			});
2185		</script>
2185
2186	
2187  
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197  <style>
2198    /* Custom CSS */
2199    .primary-bg-color-tag {
2200    background-color: transparent; /* 設置父元素背景為透明 */
2201}
2202.primary-bg-color-tag .product-customized-labels-content {
2203    background-color: #a50014; /* 修改子元素背景色為紅色 */
2204    color: #ffffff; /* 修改文字顏色 */
2205    font-size: 13px; /* 修改文字大小 */
2206    border-radius: 3px; /* 添加微小的圓角 */
2207    padding: 5px 8px; /* 增加內邊距 */
2208}
2209  </style>
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220    
2221    
2222    
2223
2224    <div ng-controller="FbInAppBrowserPopupController" ng-cloak>
2225  <div
2226    ng-if="showFbHint"
2227    class="in-app-browser-popup__container"
2228  >
2229    <div class="in-app-browser-popup__layout">
2230      <div class="in-app-browser-popup__main">
2231        <p class="in-app-browser-popup__desc">
2232          {{ 'fb_in_app_browser_popup.desc' | translate }}
2233          <span class="in-app-browser-popup__copy-link" ng-click="copyUrl()">{{ 'fb_in_app_browser_popup.copy_link' | translate }}</span>
2234        </p>
2235      </div>
2236      <div class="in-app-browser-popup__footer">
2237        <button class="in-app-browser-popup__close-btn" ng-click="handleClose()">
2238          {{ 'close' | translate }}
2239        </button>
2240      </div>
2241    </div>
2242  </div>
2243</div>
2244
2245    <div ng-controller="InAppBrowserPopupController" ng-cloak>
2246  <div
2247    ng-if="canShowInAppHint && showMissingSessionKeyWarning"
2248    class="in-app-browser-popup__container"
2249  >
2250    <div class="in-app-browser-popup__layout">
2251      <div class="in-app-browser-popup__main">
2252        <p class="in-app-browser-popup__desc">
2253          {{ 'in_app_browser_popup.desc' | translate }}
2254        </p>
2255      </div>
2256      <div class="in-app-browser-popup__footer">
2257        <button class="in-app-browser-popup__close-btn" ng-click="handleClose()">
2258          {{ 'close' | translate }}
2259        </button>
2260      </div>
2261    </div>
2262  </div>
2263</div>
2264
2265    
2266      <div
2267  id="cookie-consent-popup"
2268  ng-controller="CookieConsentPopupController"
2269  ng-cloak
2270  data-nosnippet
2271>
2272  <div ng-if="state('showPopup')">
2273    <div
2274      ng-show="!state('showDetailSettingsPanel')"
2275      class="cookie-consent-popup__container"
2276    >
2277      <div class="cookie-consent-popup__layout">
2278        <div class="cookie-consent-popup__header">
2279          <div class="cookie-consent-popup__title">
2280            {{word('consent_title')}}
2281          </div>
2282        </div>
2283        <div class="cookie-consent-popup__main">
2284          <p class="cookie-consent-popup__desc">
2285            {{word('consent_desc')}} <a href="{{alink('read_more')}}" target="_blank" rel="noopener noreferrer">{{word('read_more')}}</a>
2286          </p>
2287        </div>
2288        <div class="cookie-consent-popup__footer">
2289          <button class="cookie-consent-popup__settings-btn" ng-click="click('settings')">
2290            {{word('settings')}}
2291          </button>
2292          <button
2293            class="cookie-consent-popup__accept-btn ladda-button"
2294            ladda="state('loading')"
2295            data-style="slide-down"
2296            ng-click="click('accept')"
2297          >
2298            {{word('accept')}}
2299          </button>
2300        </div>
2301      </div>
2302    </div>
2303
2304    <div
2305      ng-show="state('showDetailSettingsPanel')"
2306      class="cookie-consent-detail-settings-panel__container"
2307    >
2308      <div class="cookie-consent-detail-settings-panel__layout">
2309        <div class="cookie-consent-detail-settings-panel__top-right">
2310          <button
2311            ng-click="click('discard')"
2312            class="cookie-consent-detail-settings-panel__discard-btn"
2313          >
2314          </button>
2315        </div>
2316        <div class="cookie-consent-detail-settings-panel__header">
2317          <div class="cookie-consent-detail-settings-panel__title">
2318            {{word('consent_title')}}
2319          </div>
2320        </div>
2321        <div class="cookie-consent-detail-settings-panel__main">
2322          <p class="cookie-consent-detail-settings-panel__desc">
2323            {{word('consent_desc')}} <a href="{{alink('read_more')}}">{{word('read_more')}}</a>
2324          </p>
2325          <div class="cookie-consent-detail-settings-panel__separator"></div>
2326          <div ng-repeat="setting in state('cookieConsentSettings')" class="cookie-consent-detail-sett
2326ings-panel__item">
2327            <div class="cookie-consent-detail-settings-panel__item-header">
2328              <div class="cookie-consent-detail-settings-panel__item-title">{{setting.title}}</div>
2329              <label for="{{setting.key}}" class="cookie-consent-switch__container">
2330                <input id="{{setting.key}}" ng-model="setting.on" ng-disabled="setting.disabled" type="checkbox" class="cookie-consent-switch__checkbox">
2331                <span class="cookie-consent-switch__slider round"></span>
2332              </label>
2333            </div>
2334            <div class="cookie-consent-detail-settings-panel__item-main">
2335              <p class="cookie-consent-detail-settings-panel__item-desc">{{setting.description}}</p>
2336            </div>
2337          </div>
2338        </div>
2339        <div class="cookie-consent-detail-settings-panel__footer">
2340          <button
2341            class="cookie-consent-detail-settings-panel__save-btn ladda-button"
2342            ladda="state('loading')"
2343            data-style="slide-down"
2344            ng-click="click('save_preferences')"
2345          >
2346            {{word('save_preferences')}}
2347          </button>
2348        </div>
2349      </div>
2350    </div>
2351  </div>
2352</div>
2353
2354    
2355
2356    
2357
2358
2359    
2360    
2361    
2362    
2363      
2364
2365
2366
2367
2368
2369<style type="text/css">
2370  body.cart.index #shopline-section-announcement,body.checkout.index #shopline-section-announcement,body.orders.confirm #shopline-section-announcement{display:none}#shopline-section-announcement{position:sticky;z-index:25;left:0;right:0;top:0}#shopline-section-announcement~.NavigationBar{top:auto}.announcement{width:100%;display:flex;overflow:hidden;background-color:var(--announcement-background,#fdc500);position:relative}.announcement--column{flex-direction:column}.announcement__viewport{width:100%;overflow:hidden}.announcement__slider{position:relative;display:grid;background-color:var(--announcement-background,#fdc500);touch-action:pan-y}.announcement__slider>.announcement__countdown,.announcement__slider>.announcement__link,.announcement__slider>.announcement__text{grid-area:1/1;visibility:hidden;width:100%}.announcement__slider>.announcement__slide--active,.announcement__slider>.announcement__slide--incoming,.announcement__slider>.announcement__slide--outgoing{visibility:visible}.announcement__slide--incoming-next-mobile{animation:announcement-slide-in-right .42s ease}.announcement__slide--outgoing-next-mobile{animation:announcement-slide-out-left .42s ease}.announcement__slide--incoming-previous-mobile{animation:announcement-slide-in-left .42s ease}.announcement__slide--outgoing-previous-mobile{animation:announcement-slide-out-right .42s ease}.announcement__slide--incoming-next-desktop{animation:announcement-slide-in-bottom 1s linear}.announcement__slide--outgoing-next-desktop{animation:announcement-slide-out-top 1s linear}@keyframes announcement-slide-in-right{from{transform:translateX(100%)}}@keyframes announcement-slide-out-left{to{transform:translateX(-100%)}}@keyframes announcement-slide-in-left{from{transform:translateX(-100%)}}@keyframes announcement-slide-out-right{to{transform:translateX(100%)}}@keyframes announcement-slide-in-bottom{from{transform:translateY(100%)}}@keyframes announcement-slide-out-top{to{transform:translateY(-100%)}}.announcement__arrow{display:none;position:absolute;top:50%;z-index:1;width:18px;height:18px;padding:0;border:0;background:0 0;color:var(--announcement-text,#fff);transform:translateY(-50%);cursor:pointer}.announcement__arrow svg{display:block;width:18px;height:18px;fill:currentColor}.announcement__arrow--previous{left:max(16px,(100% - 1170px) / 2 + 16px)}.announcement__arrow--next{right:max(16px,(100% - 1170px) / 2 + 16px)}@media (min-width:768px){.announcement__viewport{width:min(100% - 92px,1078px);margin:0 auto}.announcement__arrow{display:block}}.announcement__text{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;height:100%;padding:10px 20px;background-color:var(--announcement-background,#fdc500)}.announcement__title{color:var(--announcement-text,#fff);padding:0;margin:0;text-align:center;word-break:break-word;font-size:calc(1.4rem * var(--font-size-paragraph, 1))}.announcement__title span{white-space:pre-wrap}.announcement__link{width:100%;flex-shrink:0}.announcement__link.disabled{cursor:auto}.announcement__countdown{width:100%;min-width:100%;height:100%;padding:10px 20px;background-color:var(--announcement-background,#fdc500);color:var(--announcement-text,#fff);will-change:transform}.announcement__countdown .countdown-block{display:flex;align-items:center;justify-content:center;flex-shrink:0;gap:16px}@media (max-width:767px){.announcement__countdown .countdown-block{flex-direction:column}}.announcement__countdown .countdown-block__title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;padding:0;margin:0;text-align:center;word-break:break-word;font-size:calc(1.4rem * var(--font-size-paragraph, 1))}.announcement__countdown .countdown-block__body{display:flex;gap:16px}.announcement__countdown .countdown-block__button{border-radius:3px;padding:5px 16px;text-align:center;text-decoration:none;font-size:calc(1.4rem * var(--font-size-paragraph, 1));word-break:break-word;color:var(--announcement-background,#fdc500);background-color:var(--announcement-text,#fff);border:1px solid var(--announcement-text,#fff)}.announcement__countdown .countdown-block__button:hover{cursor:pointer}.announcement__countdown .countdown-block__button.disabled{opacity:.6}.announcement__countdown .countdown-timer{display:flex;align-items:center;position:relative}.announcement__countdown .time-unit{display:flex;flex-direction:column;align-items:center;
2370gap:calc(4px * var(--font-size-paragraph,1));width:31px}.announcement__countdown .time-unit-name{height:10px;font-size:calc(10px * var(--font-size-paragraph, 1));display:flex;align-items:center;text-align:center;text-transform:capitalize;white-space:nowrap}.announcement__countdown .time-part-wrapper{display:flex;align-items:center;position:relative}.announcement__countdown .time-part{text-align:center;width:calc(12px * var(--font-size-paragraph,1));height:calc(20px * var(--font-size-paragraph,1));overflow:hidden;display:inline-block;box-sizing:border-box}.announcement__countdown .digit-wrapper{transform:translateY(0);transition:transform .2s ease-in-out;transform:translateY(-90%)}.announcement__countdown .digit-wrapper[data-value="0"]{transform:translateY(-90%)}.announcement__countdown .digit-wrapper[data-value="1"]{transform:translateY(-80%)}.announcement__countdown .digit-wrapper[data-value="2"]{transform:translateY(-70%)}.announcement__countdown .digit-wrapper[data-value="3"]{transform:translateY(-60%)}.announcement__countdown .digit-wrapper[data-value="4"]{transform:translateY(-50%)}.announcement__countdown .digit-wrapper[data-value="5"]{transform:translateY(-40%)}.announcement__countdown .digit-wrapper[data-value="6"]{transform:translateY(-30%)}.announcement__countdown .digit-wrapper[data-value="7"]{transform:translateY(-20%)}.announcement__countdown .digit-wrapper[data-value="8"]{transform:translateY(-10%)}.announcement__countdown .digit-wrapper[data-value="9"]{transform:translateY(0)}.announcement__countdown .digit{display:inline-block;font-size:calc(1.6rem * var(--font-size-paragraph, 1));font-weight:700}.announcement__countdown .colon{font-size:calc(1.4rem * var(--font-size-paragraph, 1));text-align:center;font-weight:400;line-height:20px;margin-bottom:calc(12px * var(--font-size-paragraph,1));width:28px}.announcement--revamp.announcement--column{gap:0}@media (min-width:768px){.announcement--revamp.announcement--column{padding:0 16px}}.announcement--revamp.announcement--column .announcement__content,.announcement--revamp.announcement--column .announcement__link{max-width:none}.announcement--revamp .announcement__content{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;width:100%;max-width:1170px}.announcement--revamp .announcement__text{gap:4px;padding:12px 16px}.announcement--revamp .announcement__text--has-button .announcement__content,.announcement--revamp .announcement__text--has-subtitle .announcement__content{flex-direction:column;gap:4px}.announcement--revamp .announcement__text--has-button:not(.announcement__text--has-subtitle) .announcement__content{flex-direction:row;gap:8px 12px}.announcement--revamp .announcement__text--has-button:not(.announcement__text--has-subtitle) .announcement__meta{flex:0 0 auto;width:auto}.announcement--revamp .announcement__title{display:flex;min-width:0;font-size:calc(var(--announcement-title-font-size, 14px) * var(--font-size-paragraph, 1));font-weight:400;line-height:1.45;letter-spacing:0;max-width:100%}.announcement--revamp .announcement__meta{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;width:100%;min-width:0;max-width:100%}.announcement--revamp .announcement__subtitle{color:var(--announcement-text,#fff);margin:0;padding:0;min-width:0;max-width:100%;font-size:calc(var(--announcement-subtitle-font-size, 12px) * var(--font-size-paragraph, 1));line-height:1.35;letter-spacing:0;text-align:center;word-break:break-word}.announcement--revamp .announcement__btn{display:inline-block;flex-shrink:0;max-width:340px;padding:4px 10px;border:none;border-radius:4px;background-color:var(--announcement-text,#fff);color:var(--announcement-background,#fdc500);font-size:calc(12px * var(--font-size-paragraph, 1));line-height:1.2;letter-spacing:0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.announcement--revamp .announcement__link{max-width:1170px;margin:0 auto;text-decoration:none}.announcement--revamp .announcement__slider>.announcement__countdown,.announcement--revamp .announcement__slider>.announcement__link,.announcement--revamp .announcement__slider>.announcement__text{min-height:100%;min-width:0}.announcement--revamp .announcement__slider>.announcement__link{display:flex}.announcement--revamp .announcement__countdown{display:flex;align-items:center;justify-content:center;padding:12px 16px}.announcement--revamp .announcement__countdown .countdown-block__button:hover{cursor:inherit}.announcement--revamp .announcement__countdown .countdown-block__button.disabled:hover{cursor:default}.announcement--revamp .announcement__countdown .countdown-block{flex-wrap:wrap;gap:4px 16px}@media (max-width:767px){.announcement--revamp .announcement__countdown .countdown-block{gap:4px}}.announcement--revamp .announcement__countdown .countdown-block__title{display:block;flex:0 0 auto;max-width:100%;overflow:visible;line-height:1.45;letter-spacing:0}.announcement--revamp .announcement__countdown:not([data-started=true]) .countdown-block__title{font-size:calc(var(--announcement-countdown-start-title-font-size, 14px) * var(--font-size-paragraph, 1))}.announcement--revamp .announcement__countdown[data-started=true] .countdown-block__title{font-size:calc(var(--announcement-countdown-end-title-font-size, 14px) * var(--font-size-paragraph, 1))}.announcement--revamp .announcement__countdown .countdown-block__body{align-items:center;justify-content:center;flex:0 0 auto;flex-wrap:wrap;gap:16px;max-width:100%}@media (max-width:767px){.announcement--revamp .announcement__countdown .countdown-block__body{gap:8px 12px}}.announcement--revamp .announcement__countdown .countdown-timer{gap:8px;flex-shrink:0}.announcement--revamp .announcement__countdown .time-unit{flex-direction:row;align-items:center;gap:2px;width:auto}.announcement--revamp .announcement__countdown .time-part{width:calc(10px * var(--font-size-paragraph,1
2370));height:calc(14px * var(--font-size-paragraph,1) * 1.35);font-size:calc(14px * var(--font-size-paragraph, 1));font-weight:600;line-height:1.35;letter-spacing:0}.announcement--revamp .announcement__countdown .digit{display:flex;align-items:center;justify-content:center;height:calc(14px * var(--font-size-paragraph,1) * 1.35);line-height:calc(14px * var(--font-size-paragraph, 1) * 1.35);font-size:calc(14px * var(--font-size-paragraph, 1));font-weight:600;letter-spacing:0}.announcement--revamp .announcement__countdown .time-unit-name{height:auto;font-size:calc(10px * var(--font-size-paragraph, 1));font-weight:500;line-height:1.35;letter-spacing:0;text-transform:none}.announcement--revamp .announcement__countdown .colon{display:inline-flex;align-items:center;justify-content:center;font-size:calc(12px * var(--font-size-paragraph, 1));line-height:1.35;letter-spacing:0;margin-bottom:0;width:4px}@media (min-width:768px){.announcement--revamp .announcement__countdown .countdown-block__title,.announcement--revamp .announcement__subtitle,.announcement--revamp .announcement__title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.announcement--revamp .announcement__title span{display:inline-block;max-width:100%}.announcement--revamp .announcement__countdown .countdown-block__body{flex-shrink:0}.announcement--revamp .announcement__text--has-button .announcement__meta,.announcement--revamp .announcement__text--has-button:not(.announcement__text--has-subtitle) .announcement__content{flex-wrap:nowrap}.announcement--revamp .announcement__text--has-button:not(.announcement__text--has-subtitle) .announcement__content{gap:8px 16px}.announcement--revamp .announcement__text--has-button .announcement__meta{gap:8px}}@media (max-width:767px){.announcement--revamp .announcement__btn{flex-shrink:1;max-width:min(340px,100%)}.announcement--revamp .announcement__countdown .countdown-block__body{width:100%}}
2371</style>
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388  
2389    
2390    
2391  
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401    
2402
2403    
2404    
2405
2406    
2407    
2408      
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419<style type="text/css">
2420  .header{left:0;right:0;z-index:20;position:relative}.header svg.icons{width:20px;height:20px;fill:#333;margin-bottom:-2px}.header svg.icons.icon-bag{width:22px;height:22px}.header svg.icons.icon-globe-v2{width:17px;height:17px}.NavigationBar-actionMenu-container{max-width:100%;margin:0 auto;padding:0 20px}.NavigationBar-actionMenu-container .NavigationBar-icon{display:flex;align-items:center;padding:10px 0;margin:0 -10px}.header__main-menu{width:100%;text-align:center;margin-bottom:0;display:flex;align-items:center;justify-content:center}.header--sticky{box-shadow:0 2px 6px 0 rgba(0,0,0,.06)}.header--sticky.header--desktop{z-index:50}.user-reminder-desktop{z-index:51}.header__logo{flex:1;text-align:center}.header__logo.header__logo--home:not(.header__logo--top-center){display:none}.header__logo--top-center{display:block;align-self:center;margin-bottom:10px;margin:0 auto}.header__logo--home,.header__logo--middle-center{margin:0 auto}.header__logo--middle-left{text-align:left}.header__logo--top-left{align-self:flex-start}.header__logo.pull-left img{-o-object-position:left;object-position:left}.header__logo--center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.header__logo--hidden{visibility:hidden;display:block}.header--desktop{display:none!important;transform:translate3d(0,0,0)}@media (min-width:1200px){.header--desktop{display:block!important}}.header--desktop .header__logo{margin:0 auto;min-height:40px;max-height:140px}.header--desktop .header__logo img{max-height:inherit;min-height:40px;width:auto;height:auto}.header--desktop .dropdown-menu li:hover{color:#888}.header--desktop ul.NavigationBar-actionMenu{flex:1;display:flex;align-items:center;min-width:290px}.header--desktop ul.NavigationBar-actionMenu:last-child{justify-content:flex-end}.header--desktop ul.NavigationBar-actionMenu.--placed-end{justify-content:end}.header--desktop ul.NavigationBar-actionMenu .App-currencyDropdown.mw-auto{min-width:auto}.header--desktop ul.NavigationBar-actionMenu .App-currencyDropdown .dropdown-toggle .Label span:first-child{display:none}.header--desktop .Product-searchField input{width:0;height:inherit;border:0;margin:0;padding:4px 0;color:#000;opacity:1;font-weight:400;transition:all .5s;outline:0;font-size:14px;border-bottom:1px solid #eee;background-color:unset}.header--desktop .Product-searchField button{display:inline-block;height:inherit;border:0;padding:0;background-color:transparent}.header--desktop .Product-searchField button>i{vertical-align:initial}.header--desktop .Product-searchField--active input,.header--desktop .Product-searchField:hover input{width:110px}.header--desktop .Product-searchField input:focus{width:110px}.header--desktop .cart-over-limit{position:relative;top:0;right:0}.header--desktop .cart-over-limit .basic-popover-desktop{top:30px;left:-117px}.NavigationBar-icon{justify-content:space-between}.header--mobile{display:block;z-index:20}@media (min-width:1200px){.header--mobile{display:none}}.header--mobile li.List-item{list-style:none}.header--mobile .header__container{display:flex;align-items:center}.header--mobile .header__logo{display:flex;align-items:center;padding:8px 15px}.header--mobile .header__logo img{max-height:100%;width:100%;height:auto}.header--mobile .header__logo.pull-left{flex:auto}.header--mobile .header__action-menu{display:flex;flex:1;align-items:center;justify-content:flex-end;margin:0}.header--mobile .header__action-menu.--logo-center{justify-content:unset}.header--mobile .header__action-menu>.List-item{margin:0 9px}.header--mobile .header__action-menu>.List-item:last-child{margin-right:0}.header--mobile .header__action-menu>.List-item.List-item--center{flex-grow:2;text-align:center;display:flex;justify-content:space-around}.header--mobile .header__action-menu>.List-item .NavigationBar-actionMenu-button{font-size:18px;line-height:0}.header--mobile .header__action-menu basic-popover.cart-over-limit{position:relative;top:36px;right:117px}.header--mobile .Product-searchField-form{position:fixed;z-index:10;left:0;right:0;top:-60px;background:#fff;padding:15px 15px 14px 10px;opacity:0;visibility:hidden;transition-duration:.2s}.header--mobile .Product-searchField-form.active{top:0;opacity:1;visibility:visible}.header--mobile .Product-searchField-form input{border:none;border-bottom:1px solid #eee;font-size:14px;height:auto;padding:5px 0;width:calc(100% - 60px);background-color:unset}.header--mobile .CartPanel-toggleButton .Cart-count{top:1px!important}.my-scroll .header.header--sticky .NavigationBar-actionMenu-container .NavigationBar-icon{padding:5px 0}.my-scroll .header.header--sticky.header--desktop .header__logo{max-height:none}
2420.my-scroll .header:not(.header--sticky) .NavigationBar-sticky{position:relative;animation:none}
2421</style>
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431<div id="shopline-section-header">
2432  
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452<style>
2453  .header--desktop .navigation-menu,
2454  .header--desktop .header__main-menu,
2455  .home.index.my-scroll .header--desktop .header__main-menu {
2456    justify-content: center;
2457  }
2458
2459  .home.index .header--desktop .navigation-menu {
2460    width: 100%;
2461    flex-grow: 1;
2462    align-items: center;
2463  }
2464
2465  .header--desktop .header__logo img {
2466    
2467    max-height: 90px;
2468  }
2469
2470  .my-scroll .header--desktop.header--sticky .header__logo img {
2471    
2472    max-height: 45px;
2473  }
2474
2475  
2476  #shopline-section-header {
2477    position: sticky;
2478    z-index: 100;
2479    top: 0;
2480  }
2481  
2482
2483  .header--desktop .icons.icon-nav-dollor {
2484    font-weight: bold;
2485    transform: scaleX(1.15);
2486  }
2487</style>
2488
2489
2490<nav class="header header--desktop header--sticky js-navigationbar-desktop">
2491  <div class="NavigationBar-sticky-wrapper">
2492    <div class="NavigationBar-sticky js-sticky">
2493      
2494
2495
2496
2497      <div class="NavigationBar-actionMenu-container clearfix">
2498        
2499        
2500
2501        <div class="NavigationBar-icon clearfix" style="padding: 10px;">
2502          
2503          
2504
2505          
2506          
2507            <ul class="NavigationBar-actionMenu">
2508              
2509
2510
2511
2512
2513<li class="List-item">
2514  <div class="NavigationBar-actionMenu-button App-currencyDropdown dropdown mw-auto" dropdown data-nosnippet>
2515    <div class="dropdown-toggle" dropdown-toggle>
2516      <span class="icons icon-nav-dollor">$</span>
2517      
2518      <span class="fa fa-angle-down"></span>
2519    </div>
2520    <ul class="NavigationBar-actionMenu-dropdown dropdown-menu sl-currency-chooser">
2521      
2522        <li class="List-item sl-currency-chooser-currency" href="#hkd">$ HKD</li>
2523      
2524        <li class="List-item sl-currency-chooser-currency" href="#mop">P MOP</li>
2525      
2526        <li class="List-item sl-currency-chooser-currency" href="#cny">Â¥ CNY</li>
2527      
2528        <li class="List-item sl-currency-chooser-currency" href="#twd">$ TWD</li>
2529      
2530        <li class="List-item sl-currency-chooser-currency" href="#usd">$ USD</li>
2531      
2532        <li class="List-item sl-currency-chooser-currency" href="#sgd">$ SGD</li>
2533      
2534        <li class="List-item sl-currency-chooser-currency" href="#eur">€ EUR</li>
2535      
2536        <li class="List-item sl-currency-chooser-currency" href="#aud">$ AUD</li>
2537      
2538        <li class="List-item sl-currency-chooser-currency" href="#gbp">£ GBP</li>
2539      
2540        <li class="List-item sl-currency-chooser-currency" href="#php">₱ PHP</li>
2541      
2542        <li class="List-item sl-currency-chooser-currency" href="#myr">RM MYR</li>
2543      
2544        <li class="List-item sl-currency-chooser-currency" href="#thb">฿ THB</li>
2545      
2546        <li class="List-item sl-currency-chooser-currency" href="#aed">د.إ AED</li>
2547      
2548        <li class="List-item sl-currency-chooser-currency" href="#jpy">Â¥ JPY</li>
2549      
2550        <li class="List-item sl-currency-chooser-currency" href="#bnd">$ BND</li>
2551      
2552        <li class="List-item sl-currency-chooser-currency" href="#krw">₩ KRW</li>
2553      
2554        <li class="List-item sl-currency-chooser-currency" href="#idr">Rp IDR</li>
2555      
2556        <li class="List-item sl-currency-chooser-currency" href="#vnd">₫ VND</li>
2557      
2558        <li class="List-item sl-currency-chooser-currency" href="#cad">$ CAD</li>
2559      
2560    </ul>
2561  </div>
2562</li>
2563
2564
2565
2566
2567<li class="List-item">
2568  <div class="NavigationBar-actionMenu-button App-languageDropdown dropdown" dropdown data-nosnippet>
2569    <div class="dropdown-toggle" dropdown-toggle>
2570      <svg class="icons icon-globe-v2">
2571        <use xlink:href="#icon-globe-v2"></use>
2572      </svg>
2573      
2574    </div>
2575    <ul class="NavigationBar-actionMenu-dropdown dropdown-menu sl-language-chooser">
2576      
2577        <li class="List-item sl-language-chooser-language" href="#en">English</li>
2578      
2579        <li class="List-item sl-language-chooser-language" href="#zh-hant">繁體中文</li>
2580      
2581    </ul>
2582  </div>
2583</li>
2584
2585
2586            </ul>
2587          
2588
2589          
2590          
2591            <a class="header__logo header__logo--middle-center" href="/">
2592              <img
2593                src="https://shoplineimg.com/6576a1830ee9d100760d043d/6576ee9491ffba18a0c992b8/1200x.webp?source_format=png"
2594                width="1168"
2595                height="1168"
2596                loading="lazy"
2597              >
2598            </a>
2599          
2600
2601          <ul class="NavigationBar-actionMenu">
2602            
2603            
2604
2605            
2606            
2607              <li class="List-item">
2608                <a class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon MessageDialog-showButton sl-message-toggle">
2609                  <svg class="icons icon-bubble">
2610                    <use xlink:href="#icon-bubble"></use>
2611                  </svg>
2612                  
2613                </a>
2614              </li>
2615            
2616
2617            
2618            
2619              <li class="List-item">
2620                <div class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon Product-searchField ">
2621                  <form class="Product-searchField-form sl-product-search">
2622                    <input
2623                      disabled
2624                      maxlength="50"
2625                      placeholder="Search Products"
2626                    >
2627                    <button disabled type="submit">
2628                      <svg class="icons icon-magnifier">
2629                        <use xlink:href="#icon-magnifier"></use>
2630                      </svg>
2631                      
2632                    </button>
2633                  </form>
2634                </div>
2635              </li>
2636            
2637
2638            
2639            <li class="List-item">
2640              
2641                <a href="/users/sign_in" class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon">
2642                  <svg class="icons icon-user">
2643                    <use xlink:href="#icon-user"></use>
2644                  </svg>
2645                  
2646                </a>
2647              
2648              
2649<user-reminder-desktop
2650  campaign-rule="null"
2651></user-reminder-desktop>
2652
2653            </li>
2654
2655            
2656            <basic-popover class="cart-over-limit"></basic-popover>
2657            <li class="List-item">
2658              <a class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon NavigationBar-actionMenu-cart CartPanel-toggleButton sl-cart-toggle">
2659                <svg class="icons icon-bag">
2660                  <use xlink:href="#icon-bag"></use>
2661                </svg>
2662                <span
2663                  class=" sl-cart-count Cart-count primary-color"
2664                  count-style="icon"
2665                ></span>
2666              </a>
2667            </li>
2668          </ul>
2669        </div>
2670      </div>
2671
2672      
2673      <div class="NavigationBar-container nav-bg-color">
2674        <ul class="header__main-menu">
2675          
2676            
2677
2678<li class="navigation-menu nav-color basic-menu-desktop">
2679  <ul class="navigation-menu-top-layer">
2680    
2681      
2682        <li class="navigation-menu-item navigation-menu-item--nested">
2683          <a
2684            class="navigation-menu-item-label"
2685            link-highlight="https://www.anelet.com/categories/週年慶優惠"
2686            href="https://www.anelet.com/categories/週年慶優惠"
2687            target=""
2688          >
2689            ⭐️週年慶優惠⭐️<span class="fa fa-angle-down"></span>
2690          </a>
2691          <ul class="navigation-menu-second-layer">
2692            <div class="second-layer-scroll-buttons">
2693              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
2694              <span class="fa fa-angle-right scroll-right"></span>
2695            </div>
2696            
2697              
2698                <li class="navigation-menu-item">
2699                  <a
2700                    class="navigation-menu-item-label"
2701                    link-highlight="https://www.anelet.com/categories/香氣加乘|淡香精多件優惠"
2702                    href="https://www.anelet.com/categories/香氣加乘|淡香精多件優惠"
2703                    target=""
2704                  >
2705                    香氣加乘|淡香精多件優惠
2706                  </a>
2707                </li>
2708              
2709            
2710              
2711                <li class="navigation-menu-item">
2712                  <a
2713                    class="navigation-menu-item-label"
2714                    link-highlight="https://www.anelet.com/categories/香氣滿載|擴香多件優惠"
2715                    href="https://www.anelet.com/categories/香氣滿載|擴香多件優惠"
2716                    target=""
2717                  >
2718                    香氣滿載|擴香多件優惠
2719                  </a>
2720                </li>
2721              
2722            
2723              
2724                <li class="navigation-menu-item">
2725                  <a
2726                    class="navigation-menu-item-label"
2727                    link-highlight="https://www.anelet.com/categories/香氛延續|擴香補充瓶送棒"
2728                    href="https://www.anelet.com/categories/香氛延續|擴香補充瓶送棒"
2729                    target=""
2730                  >
2731                    香氛延續|擴香補充瓶送棒
2732                  </a>
2733                </li>
2734              
2735            
2736              
2737                <li class="navigation-menu-item">
2738                  <a
2739                    class="navigation-menu-item-label"
2740                    link-highlight="https://www.anelet.com/categories/隨身精選|中性香買1送1"
2741                    href="https://www.anelet.com/categories/隨身精選|中性香買1送1"
2742                    target=""
2743                  >
2744                    隨身精選|中性香買1送1
2745                  </a>
2746                </li>
2747              
2748            
2749              
2750                <li class="navigation-menu-item">
2751                  <a
2752                    class="navigation-menu-item-label"
2753                    link-highlight="https://www.anelet.com/categories/純粹香氛|中性香買大送小"
2754                    href="https://www.anelet.com/categories/純粹香氛|中性香買大送小"
2755                    target=""
2756                  >
2757                    純粹香氛|中性香買大送小
2758                  </a>
2759                </li>
2760              
2761            
2762              
2763                <li class="navigation-menu-item">
2764                  <a
2765                    class="navigation-menu-item-label"
2766                    link-highlight="https://www.anelet.com/categories/質感居家|噴霧9折送"
2767                    href="https://www.anelet.com/categories/質感居家|噴霧9折送"
2768                    target=""
2769                  >
2770                    質感居家|噴霧9折送
2771                  </a>
2772                </li>
2773              
2774            
2775              
2776                <li class="navigation-menu-item">
2777                  <a
2778                    class="navigation-menu-item-label"
2779                    link-highlight="https://www.anelet.com/categories/暖心相伴|保溫瓶2件8折"
2780                    href="https://www.anelet.com/categories/暖心相伴|保溫瓶2件8折"
2781                    target=""
2782                  >
2783                    暖心相伴|保溫瓶2件8折
2784                  </a>
2785                </li>
2786              
2787            
2788          </ul>
2789        </li>
2790      
2791    
2792      
2793        <li class="navigation-menu-item navigation-menu-item--nested">
2794          <a
2795            class="navigation-menu-item-label"
2796            link-highlight="https://www.anelet.com/categories/編輯嚴選"
2797            href="https://www.anelet.com/categories/編輯嚴選"
2798            target=""
2799          >
2800            編輯嚴選<span class="fa fa-angle-down"></span>
2801          </a>
2802          <ul class="navigation-menu-second-layer">
2803            <div class="second-layer-scroll-buttons">
2804              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
2805              <span class="fa fa-angle-right scroll-right"></span>
2806            </div>
2807            
2808              
2809                <li class="navigation-menu-item">
2810                  <a
2811                    class="navigation-menu-item-label"
2812                    link-highlight="https://www.anelet.com/categories/尋找夏天香水的清爽呼吸"
2813                    href="https://www.anelet.com/categories/尋找夏天香水的清爽呼吸"
2814                    target=""
2815                  >
2816                    尋找夏天香水的清爽呼吸
2817                  </a>
2818                </li>
2819              
2820            
2821              
2822                <li class="navigation-menu-item">
2823                  <a
2824                    class="navigation-menu-item-label"
2825                    link-highlight="https://www.anelet.com/categories/讓花香調的春意擁抱你"
2826                    href="https://www.anelet.com/categories/讓花香調的春意擁抱你"
2827                    target=""
2828                  >
2829                    讓花香調的春意擁抱你
2830                  </a>
2831                </li>
2832              
2833            
2834              
2835                <li class="navigation-menu-item">
2836                  <a
2837                    class="navigation-menu-item-label"
2838                    link-highlight="https://www.anelet.com/categories/神秘而深邃的東方韻味"
2839                    href="https://www.anelet.com/categories/神秘而深邃的東方韻味"
2840                    target=""
2841                  >
2842                    神秘而深邃的東方韻味
2843                  </a>
2844                </li>
2845              
2846            
2847              
2848                <li class="navigation-menu-item">
2849                  <a
2850                    class="navigation-menu-item-label"
2851                    link-highlight="https://www.anelet.com/categories/感受木質調的自然之聲"
2852                    href="https://www.anelet.com/categories/感受木質調的自然之聲"
2853                    target=""
2854                  >
2855                    感受木質調的自然之聲
2856                  </a>
2857                </li>
2858              
2859            
2860              
2861                <li class="navigation-menu-item">
2862                  <a
2863                    class="navigation-menu-item-label"
2864                    link-highlight="https://www.anelet.com/categories/mix-and-match"
2865                    href="https://www.anelet.com/categories/mix-and-match"
2866                    target=""
2867                  >
2868                    高段位混香組合
2869                  </a>
2870                </li>
2871              
2872            
2873          </ul>
2874        </li>
2875      
2876    
2877      
2878        <li class="navigation-menu-item navigation-menu-item--nested">
2879          <a
2880            class="navigation-menu-item-label"
2881            link-highlight="https://www.anelet.com/categories/fragrances"
2882            href="https://www.anelet.com/categories/fragrances"
2883            target=""
2884          >
2885            香水香精<span class="fa fa-angle-down"></span>
2886          </a>
2887          <ul class="navigation-menu-second-layer">
2888            <div class="second-layer-scroll-buttons">
2889              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
2890              <span class="fa fa-angle-right scroll-right"></span>
2891            </div>
2892            
2893              
2894                <li class="navigation-menu-item">
2895                  <a
2896                    class="navigation-menu-item-label"
2897                    link-highlight="https://www.anelet.com/categories/womens-perfume"
2898                    href="https://www.anelet.com/categories/womens-perfume"
2899                    target=""
2900                  >
2901                    女性香水
2902                  </a>
2903                </li>
2904              
2905            
2906              
2907                <li class="navigation-menu-item">
2908                  <a
2909                    class="navigation-menu-item-label"
2910                    link-highlight="https://www.anelet.com/categories/unisex-perfume"
2911                    href="https://www.anelet.com/categories/unisex-perfume"
2912                    target=""
2913                  >
2914                    中性香水
2915                  </a>
2916                </li>
2917              
2918            
2919              
2920                <li class="navigation-menu-item">
2921                  <a
2922                    class="navigation-menu-item-label"
2923                    link-highlight="https://www.anelet.com/categories/mens-perfume"
2924                    href="https://www.anelet.com/categories/mens-perfume"
2925                    target=""
2926                  >
2927                    男性香水
2928                  </a>
2929                </li>
2930              
2931            
2932              
2933                <li class="navigation-menu-item">
2934                  <a
2935                    class="navigation-menu-item-label"
2936                    link-highlight="https://www.anelet.com/categories/hair-perfume"
2937                    href="https://www.anelet.com/categories/hair-perfume"
2938                    target=""
2939                  >
2940                    髮香噴霧
2941                  </a>
2942                </li>
2943              
2944            
2945              
2946                <li class="navigation-menu-item">
2947                  <a
2948                    class="navigation-menu-item-label"
2949                    link-highlight="https://www.anelet.com/categories/perfume-gift-sets"
2950                    href="https://www.anelet.com/categories/perfume-gift-sets"
2951                    target=""
2952                  >
2953                    香水禮盒
2954                  </a>
2955                </li>
2956              
2957            
2958          </ul>
2959        </li>
2960      
2961    
2962      
2963        <li class="navigation-menu-item navigation-menu-item--nested">
2964          <a
2965            class="navigation-menu-item-label"
2966            link-highlight="https://www.anelet.com/categories/home-fragrances"
2967            href="https://www.anelet.com/categories/home-fragrances"
2968            target=""
2969          >
2970            居家香氛<span class="fa fa-angle-down"></span>
2971          </a>
2972          <ul class="navigation-menu-second-layer">
2973            <div class="second-layer-scroll-buttons">
2974              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
2975              <span class="fa fa-angle-right scroll-right"></span>
2976            </div>
2977            
2978              
2979                <li class="navigation-menu-item">
2980                  <a
2981                    class="navigation-menu-item-label"
2982                    link-highlight="https://www.anelet.com/categories/room-spray"
2983                    href="https://www.anelet.com/categories/room-spray"
2984                    target=""
2985                  >
2986                    室內噴霧
2987                  </a>
2988                </li>
2989              
2990            
2991              
2992                <li class="navigation-menu-item">
2993                  <a
2994                    class="navigation-menu-item-label"
2995                    link-highlight="https://www.anelet.com/categories/reed-diffuser"
2996                    href="https://www.anelet.com/categories/reed-diffuser"
2997                    target=""
2998                  >
2999                    室內擴香
3000                  </a>
3001                </li>
3002              
3003            
3004              
3005                <li class="navigation-menu-item">
3006                  <a
3007                    class="navigation-menu-item-label"
3008                    link-highlight="https://www.anelet.com/categories/solid-perfume"
3009                    href="https://www.anelet.com/categories/solid-perfume"
3010                    target=""
3011                  >
3012                    香氛蠟塊
3013                  </a>
3014                </li>
3015              
3016            
3017              
3018                <li class="navigation-menu-item">
3019                  <a
3020                    class="navigation-menu-item-label"
3021                    link-highlight="https://www.anelet.com/categories/scented-candle"
3022                    href="https://www.anelet.com/categories/scented-candle"
3023                    target=""
3024                  >
3025                    香氛蠟燭
3026                  </a>
3027                </li>
3028              
3029            
3030              
3031                <li class="navigation-menu-item">
3032                  <a
3033                    class="navigation-menu-item-label"
3034                    link-highlight="https://www.anelet.com/categories/fragrance-gift-sets"
3035                    href="https://www.anelet.com/categories/fragrance-gift-sets"
3036                    target=""
3037                  >
3038                    香氛禮盒
3039                  </a>
3040                </li>
3041              
3042            
3043              
3044                <li class="navigation-menu-item">
3045                  <a
3046                    class="navigation-menu-item-label"
3047                    link-highlight="https://www.anelet.com/categories/fabrics-spray"
3048                    href="https://www.anelet.com/categories/fabrics-spray"
3049                    target=""
3050                  >
3051                    衣物噴霧
3052                  </a>
3053                </li>
3054              
3055            
3056          </ul>
3057        </li>
3058      
3059    
3060      
3061        <li class="navigation-menu-item navigation-menu-item--nested">
3062          <a
3063            class="navigation-menu-item-label"
3064            link-highlight="https://www.anelet.com/categories/life-style"
3065            href="https://www.anelet.com/categories/life-style"
3066            target=""
3067          >
3068            時尚配件<span class="fa fa-angle-down"></span>
3069          </a>
3070          <ul class="navigation-menu-second-layer">
3071            <div class="second-layer-scroll-buttons">
3072              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
3073              <span class="fa fa-angle-right scroll-right"></span>
3074            </div>
3075            
3076              
3077                <li class="navigation-menu-item">
3078                  <a
3079                    class="navigation-menu-item-label"
3080                    link-highlight="https://www.anelet.com/categories/thermal-bottle"
3081                    href="https://www.anelet.com/categories/thermal-bottle"
3082                    target=""
3083                  >
3084                    保溫瓶
3085                  </a>
3086                </li>
3087              
3088            
3089              
3090                <li class="navigation-menu-item">
3091                  <a
3092                    class="navigation-menu-item-label"
3093                    link-highlight="https://www.anelet.com/categories/slimming-cosmetotextiles"
3094                    href="https://www.anelet.com/categories/slimming-cosmetotextiles"
3095                    target=""
3096                  >
3097                    塑身衣
3098                  </a>
3099                </li>
3100              
3101            
3102          </ul>
3103        </li>
3104      
3105    
3106      
3107        <li class="navigation-menu-item navigation-menu-item--nested">
3108          <a
3109            class="navigation-menu-item-label"
3110            link-highlight="https://www.anelet.com/categories/brands"
3111            href="https://www.anelet.com/categories/brands"
3112            target=""
3113          >
3114            品牌總覽<span class="fa fa-angle-down"></span>
3115          </a>
3116          <ul class="navigation-menu-second-layer">
3117            <div class="second-layer-scroll-buttons">
3118              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
3119              <span class="fa fa-angle-right scroll-right"></span>
3120            </div>
3121            
3122              
3123                <li class="navigation-menu-item">
3124                  <a
3125                    class="navigation-menu-item-label"
3126                    link-highlight="https://www.anelet.com/categories/youfirst"
3127                    href="https://www.anelet.com/categories/youfirst"
3128                    target=""
3129                  >
3130                    L&#39;ESSENZA / YOUFIRST
3131                  </a>
3132                </li>
3133              
3134            
3135              
3136                <li class="navigation-menu-item">
3137                  <a
3138                    class="navigation-menu-item-label"
3139                    link-highlight="https://www.anelet.com/categories/lytess"
3140                    href="https://www.anelet.com/categories/lytess"
3141                    target=""
3142                  >
3143                    LYTESS
3144                  </a>
3145                </li>
3146              
3147            
3148              
3149                <li class="navigation-menu-item">
3150                  <a
3151                    class="navigation-menu-item-label"
3152                    link-highlight="https://www.anelet.com/categories/margot-tita"
3153                    href="https://www.anelet.com/categories/margot-tita"
3154                    target=""
3155                  >
3156                    MARGOT&amp;TITA
3157                  </a>
3158                </li>
3159              
3160            
3161              
3162                <li class="navigation-menu-item">
3163                  <a
3164                    class="navigation-menu-item-label"
3165                    link-highlight="https://www.anelet.com/categories/my-fragrances"
3166                    href="https://www.anelet.com/categories/my-fragrances"
3167                    target=""
3168                  >
3169                    MY FRAGRANCES
3170                  </a>
3171                </li>
3172              
3173            
3174              
3175                <li class="navigation-menu-item">
3176                  <a
3177                    class="navigation-menu-item-label"
3178                    link-highlight="https://www.anelet.com/categories/piuforty"
3179                    href="https://www.anelet.com/categories/piuforty"
3180                    target=""
3181                  >
3182                    PIÙFORTY
3183                  </a>
3184                </li>
3185              
3186            
3187          </ul>
3188        </li>
3189      
3190    
3191      
3192        <li class="navigation-menu-item navigation-menu-item--nested">
3193          <a
3194            class="navigation-menu-item-label"
3195            link-highlight="https://www.anelet.com/categories/香調列表"
3196            href="https://www.anelet.com/categories/香調列表"
3197            target=""
3198          >
3199            香調列表<span class="fa fa-angle-down"></span>
3200          </a>
3201          <ul class="navigation-menu-second-layer">
3202            <div class="second-layer-scroll-buttons">
3203              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
3204              <span class="fa fa-angle-right scroll-right"></span>
3205            </div>
3206            
3207              
3208                <li class="navigation-menu-item">
3209                  <a
3210                    class="navigation-menu-item-label"
3211                    link-highlight="https://www.anelet.com/categories/woody-perfumes"
3212                    href="https://www.anelet.com/categories/woody-perfumes"
3213                    target=""
3214                  >
3215                    木質調
3216                  </a>
3217                </li>
3218              
3219            
3220              
3221                <li class="navigation-menu-item">
3222                  <a
3223                    class="navigation-menu-item-label"
3224                    link-highlight="https://www.anelet.com/categories/spicy-perfumes"
3225                    href="https://www.anelet.com/categories/spicy-perfumes"
3226                    target=""
3227                  >
3228                    辛香調
3229                  </a>
3230                </li>
3231              
3232            
3233              
3234                <li class="navigation-menu-item">
3235                  <a
3236                    class="navigation-menu-item-label"
3237                    link-highlight="https://www.anelet.com/categories/oriental-perfumes"
3238                    href="https://www.anelet.com/categories/oriental-perfumes"
3239                    target=""
3240                  >
3241                    東方調
3242                  </a>
3243                </li>
3244              
3245            
3246              
3247                <li class="navigation-menu-item">
3248                  <a
3249                    class="navigation-menu-item-label"
3250                    link-highlight="https://www.anelet.com/categories/fruity-perfumes"
3251                    href="https://www.anelet.com/categories/fruity-perfumes"
3252                    target=""
3253                  >
3254                    果香調
3255                  </a>
3256                </li>
3257              
3258            
3259              
3260                <li class="navigation-menu-item">
3261                  <a
3262                    class="navigation-menu-item-label"
3263                    link-highlight="https://www.anelet.com/categories/floral-perfumes"
3264                    href="https://www.anelet.com/categories/floral-perfumes"
3265                    target=""
3266                  >
3267                    花香調
3268                  </a>
3269                </li>
3270              
3271            
3272              
3273                <li class="navigation-menu-item">
3274                  <a
3275                    class="navigation-menu-item-label"
3276                    link-highlight="https://www.anelet.com/categories/parfums-cirus"
3277                    href="https://www.anelet.com/categories/parfums-cirus"
3278                    target=""
3279                  >
3280                    柑橘調
3281                  </a>
3282                </li>
3283              
3284            
3285              
3286                <li class="navigation-menu-item">
3287                  <a
3288                    class="navigation-menu-item-label"
3289                    link-highlight="https://www.anelet.com/categories/aquatic-perfumes"
3290                    href="https://www.anelet.com/categories/aquatic-perfumes"
3291                    target=""
3292                  >
3293                    海洋調
3294                  </a>
3295                </li>
3296              
3297            
3298              
3299                <li class="navigation-menu-item">
3300                  <a
3301                    class="navigation-menu-item-label"
3302                    link-highlight="https://www.anelet.com/categories/gourmet-perfumes"
3303                    href="https://www.anelet.com/categories/gourmet-perfumes"
3304                    target=""
3305                  >
3306                    甜點調
3307                  </a>
3308                </li>
3309              
3310            
3311              
3312                <li class="navigation-menu-item">
3313                  <a
3314                    class="navigation-menu-item-label"
3315                    link-highlight="https://www.anelet.com/categories/fougere-perfumes"
3316                    href="https://www.anelet.com/categories/fougere-perfumes"
3317                    target=""
3318                  >
3319                    薰苔調
3320                  </a>
3321                </li>
3322              
3323            
3324              
3325                <li class="navigation-menu-item">
3326                  <a
3327                    class="navigation-menu-item-label"
3328                    link-highlight="https://www.anelet.com/categories/musc-perfumes"
3329                    href="https://www.anelet.com/categories/musc-perfumes"
3330                    target=""
3331                  >
3332                    麝香調
3333                  </a>
3334                </li>
3335              
3336            
3337          </ul>
3338        </li>
3339      
3340    
3341      
3342        <li class="navigation-menu-item navigation-menu-item--nested">
3343          <a
3344            class="navigation-menu-item-label"
3345            link-highlight="https://www.anelet.com/pages/the-blog"
3346            href="https://www.anelet.com/pages/the-blog"
3347            target=""
3348          >
3349            New Page<span class="fa fa-angle-down"></span>
3350          </a>
3351          <ul class="navigation-menu-second-layer">
3352            <div class="second-layer-scroll-buttons">
3353              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
3354              <span class="fa fa-angle-right scroll-right"></span>
3355            </div>
3356            
3357              
3358                <li class="navigation-menu-item">
3359                  <a
3360                    class="navigation-menu-item-label"
3361                    link-highlight="https://www.anelet.com/pages/best-perfume"
3362                    href="https://www.anelet.com/pages/best-perfume"
3363                    target=""
3364                  >
3365                    Best Perfume
3366                  </a>
3367                </li>
3368              
3369            
3370              
3371                <li class="navigation-menu-item">
3372                  <a
3373                    class="navigation-menu-item-label"
3374                    link-highlight="https://www.anelet.com/pages/know-how"
3375                    href="https://www.anelet.com/pages/know-how"
3376                    target=""
3377                  >
3378                    KNOW-HOW
3379                  </a>
3380                </li>
3381              
3382            
3383          </ul>
3384        </li>
3385      
3386    
3387      
3388        <li class="navigation-menu-item navigation-menu-item--nested">
3389          <a
3390            class="navigation-menu-item-label"
3391            link-highlight="https://www.anelet.com/pages/brandstory"
3392            href="https://www.anelet.com/pages/brandstory"
3393            target="_self"
3394          >
3395            關於我們<span class="fa fa-angle-down"></span>
3396          </a>
3397          <ul class="navigation-menu-second-layer">
3398            <div class="second-layer-scroll-buttons">
3399              <span class="fa fa-angle-left scroll-left scroll-disable"></span>
3400              <span class="fa fa-angle-right scroll-right"></span>
3401            </div>
3402            
3403              
3404                <li class="navigation-menu-item">
3405                  <a
3406                    class="navigation-menu-item-label"
3407                    link-highlight="https://www.anelet.com/pages/member"
3408                    href="https://www.anelet.com/pages/member"
3409                    target=""
3410                  >
3411                    會員獨享
3412                  </a>
3413                </li>
3414              
3415            
3416              
3417                <li class="navigation-menu-item">
3418                  <a
3419                    class="navigation-menu-item-label"
3420                    link-highlight="https://www.anelet.com/pages/collaboration"
3421                    href="https://www.anelet.com/pages/collaboration"
3422                    target=""
3423                  >
3424                    New Page
3425                  </a>
3426                </li>
3427              
3428            
3429              
3430                <li class="navigation-menu-item">
3431                  <a
3432                    class="navigation-menu-item-label"
3433                    link-highlight="https://www.anelet.com/about/policy"
3434                    href="https://www.anelet.com/about/policy"
3435                    target=""
3436                  >
3437                    Return Policy
3438                  </a>
3439                </li>
3440              
3441            
3442              
3443                <li class="navigation-menu-item">
3444                  <a
3445                    class="navigation-menu-item-label"
3446                    link-highlight="https://www.anelet.com/about/delivery-policy"
3447                    href="https://www.anelet.com/about/delivery-policy"
3448                    target=""
3449                  >
3450                    Delivery Policy
3451                  </a>
3452                </li>
3453              
3454            
3455          </ul>
3456        </li>
3457      
3458    
3459  </ul>
3460</li>
3461
3462          
3463        </ul>
3464      </div>
3465    </div>
3466  </div>
3467</nav>
3468
3469  
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483<style>
3484  .header--mobile .header__logo img {
3485    object-fit: contain;
3486    max-width: 126px;
3487    max-height: 37px;
3488  }
3489</style>
3490
3491
3492
3493
3494<nav class="header header--mobile header--sticky js-navigationbar-mobile">
3495  <div class="header__container clearfix">
3496    
3497
3498
3499    
3500
3501  <div ng-cloak facebook-banner class="facebook-banner">
3502    <div ng-if="state.isBannerOpened" class="facebook-banner-wrapper">
3503      <div ng-click="onClose()" class="close-icon-wrapper">
3504        <i class="fa fa-times"></i>
3505      </div>
3506      <p ng-click="copy()" class="wording" ng-bind-html="'facebook_banner.description' | translate"></p>
3507      <input type="hidden" id="location-copy-url" value="{{ currentLocation }}" readonly>
3508    </div>
3509  </div>
3510
3511
3512
3513    
3514    
3515
3516    <ul class="header__action-menu  --logo-center ">
3517      
3518      
3519      <li class="List-item">
3520        <svg class="icons icon-magnifier js-menu-search">
3521          <use xlink:href="#icon-magnifier"></use>
3522        </svg>
3523        <form class="Product-searchField-form sl-product-search js-product-searchfield-form" action="">
3524          <button disabled type="submit">
3525            <svg class="icons icon-magnifier">
3526              <use xlink:href="#icon-magnifier"></use>
3527            </svg>
3528          </button>
3529          <input disabled maxlength="50" type="search" placeholder="Search Products">
3530        </form>
3531      </li>
3532      
3533
3534      
3535      
3536        <li class="List-item">
3537          <a href="/users/sign_in" class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon">
3538            <svg class="icons icon-user">
3539              <use xlink:href="#icon-user"></use>
3540            </svg>
3541          </a>
3542        </li>
3543      
3544
3545      
3546      
3547        <li class="List-item List-item--center">
3548          <a class="header__logo header__logo--center" href="/">
3549            <img
3550              src="https://shoplineimg.com/6576a1830ee9d100760d043d/6576e9147585543c92776937/378x.webp?source_format=png"
3551              width="1168"
3552              height="334"
3553              loading="lazy"
3554            >
3555          </a>
3556          <a class="header__logo header__logo--hidden" href="/">
3557            <img
3558              src="https://shoplineimg.com/6576a1830ee9d100760d043d/6576e9147585543c92776937/378x.webp?source_format=png"
3559              width="1168"
3560              height="334"
3561              loading="lazy"
3562            >
3563          </a>
3564        </li>
3565      
3566
3567      
3568      <basic-popover class="cart-over-limit"></basic-popover>
3569      <li class="List-item">
3570        <a class="NavigationBar-actionMenu-button NavigationBar-actionMenu-icon NavigationBar-actionMenu-cart CartPanel-toggleButton sl-cart-toggle">
3571          <svg class="icons icon-bag">
3572            <use xlink:href="#icon-bag"></use>
3573          </svg>
3574          <span class="Cart-count sl-cart-count cart-primary-bg-color"></span>
3575        </a>
3576      </li>
3577
3578      
3579      <li class="List-item">
3580        <div class="NavigationBar-actionMenu-button sl-menu-panel-toggle">
3581          <i></i>
3582        </div>
3583      </li>
3584    </ul>
3585  </div>
3586</nav>
3587
3588</div>
3589
3590
3591
3592
3593
3594<div id="MenuPanel" class="MenuPanel nav-bg-color">
3595  <div class="MenuPanel-section">
3596    
3597    
3598      
3599      <ul class="MenuPanel-menu">
3600        
3601          
3602            <li
3603              class="List-item MenuPanel-nestedList sl-dropdown"
3604              is-collapsed="true"
3605              is-mobile-collapsed="true"
3606            >
3607              <a class="Label" link-highlight="https://www.anelet.com/categories/週年慶優惠" href="https://www.anelet.com/categories/週年慶優惠">
3608                ⭐️週年慶優惠⭐️
3609                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-69548baa9ca76c32e50269a6"></i>
3610              </a>
3611              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-69548baa9ca76c32e50269a6">
3612                
3613                  
3614                    <li class="List-item">
3615                      <a class="Label" link-highlight="https://www.anelet.com/categories/香氣加乘|淡香精多件優惠" href="https://www.anelet.com/categories/香氣加乘|淡香精多件優惠">
3616                        香氣加乘|淡香精多件優惠
3617                      </a>
3618                    </li>
3619                  
3620                
3621                  
3622                    <li class="List-item">
3623                      <a class="Label" link-highlight="https://www.anelet.com/categories/香氣滿載|擴香多件優惠" href="https://www.anelet.com/categories/香氣滿載|擴香多件優惠">
3624                        香氣滿載|擴香多件優惠
3625                      </a>
3626                    </li>
3627                  
3628                
3629                  
3630                    <li class="List-item">
3631                      <a class="Label" link-highlight="https://www.anelet.com/categories/香氛延續|擴香補充瓶送棒" href="https://www.anelet.com/categories/香氛延續|擴香補充瓶送棒">
3632                        香氛延續|擴香補充瓶送棒
3633                      </a>
3634                    </li>
3635                  
3636                
3637                  
3638                    <li class="List-item">
3639                      <a class="Label" link-highlight="https://www.anelet.com/categories/隨身精選|中性香買1送1" href="https://www.anelet.com/categories/隨身精選|中性香買1送1">
3640                        隨身精選|中性香買1送1
3641                      </a>
3642                    </li>
3643                  
3644                
3645                  
3646                    <li class="List-item">
3647                      <a class="Label" link-highlight="https://www.anelet.com/categories/純粹香氛|中性香買大送小" href="https://www.anelet.com/categories/純粹香氛|中性香買大送小">
3648                        純粹香氛|中性香買大送小
3649                      </a>
3650                    </li>
3651                  
3652                
3653                  
3654                    <li class="List-item">
3655                      <a class="Label" link-highlight="https://www.anelet.com/categories/質感居家|噴霧9折送" href="https://www.anelet.com/categories/質感居家|噴霧9折送">
3656                        質感居家|噴霧9折送
3657                      </a>
3658                    </li>
3659                  
3660                
3661                  
3662                    <li class="List-item">
3663                      <a class="Label" link-highlight="https://www.anelet.com/categories/暖心相伴|保溫瓶2件8折" href="https://www.anelet.com/categories/暖心相伴|保溫瓶2件8折">
3664                        暖心相伴|保溫瓶2件8折
3665                      </a>
3666                    </li>
3667                  
3668                
3669              </ul>
3670            </li>
3671          
3672        
3673          
3674            <li
3675              class="List-item MenuPanel-nestedList sl-dropdown"
3676              is-collapsed="true"
3677              is-mobile-collapsed="true"
3678            >
3679              <a class="Label" link-highlight="https://www.anelet.com/categories/編輯嚴選" href="https://www.anelet.com/categories/編輯嚴選">
3680                編輯嚴選
3681                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-66b982bf72fb3d7b94b37749"></i>
3682              </a>
3683              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-66b982bf72fb3d7b94b37749">
3684                
3685                  
3686                    <li class="List-item">
3687                      <a class="Label" link-highlight="https://www.anelet.com/categories/尋找夏天香水的清爽呼吸" href="https://www.anelet.com/categories/尋找夏天香水的清爽呼吸">
3688                        尋找夏天香水的清爽呼吸
3689                      </a>
3690                    </li>
3691                  
3692                
3693                  
3694                    <li class="List-item">
3695                      <a class="Label" link-highlight="https://www.anelet.com/categories/讓花香調的春意擁抱你" href="https://www.anelet.com/categories/讓花香調的春意擁抱你">
3696                        讓花香調的春意擁抱你
3697                      </a>
3698                    </li>
3699                  
3700                
3701                  
3702                    <li class="List-item">
3703                      <a class="Label" link-highlight="https://www.anelet.com/categories/神秘而深邃的東方韻味" href="https://www.anelet.com/categories/神秘而深邃的東方韻味">
3704                        神秘而深邃的東方韻味
3705                      </a>
3706                    </li>
3707                  
3708                
3709                  
3710                    <li class="List-item">
3711                      <a class="Label" link-highlight="https://www.anelet.com/categories/感受木質調的自然之聲" href="https://www.anelet.com/categories/感受木質調的自然之聲">
3712                        感受木質調的自然之聲
3713                      </a>
3714                    </li>
3715                  
3716                
3717                  
3718                    <li class="List-item">
3719                      <a class="Label" link-highlight="https://www.anelet.com/categories/mix-and-match" href="https://www.anelet.com/categories/mix-and-match">
3720                        高段位混香組合
3721                      </a>
3722                    </li>
3723                  
3724                
3725              </ul>
3726            </li>
3727          
3728        
3729          
3730            <li
3731              class="List-item MenuPanel-nestedList sl-dropdown"
3732              is-collapsed="true"
3733              is-mobile-collapsed="true"
3734            >
3735              <a class="Label" link-highlight="https://www.anelet.com/categories/fragrances" href="https://www.anelet.com/categories/fragrances">
3736                香水香精
3737                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-657abede9b091a00177a33c5"></i>
3738              </a>
3739              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-657abede9b091a00177a33c5">
3740                
3741                  
3742                    <li class="List-item">
3743                      <a class="Label" link-highlight="https://www.anelet.com/categories/womens-perfume" href="https://www.anelet.com/categories/womens-perfume">
3744                        女性香水
3745                      </a>
3746                    </li>
3747                  
3748                
3749                  
3750                    <li class="List-item">
3751                      <a class="Label" link-highlight="https://www.anelet.com/categories/unisex-perfume" href="https://www.anelet.com/categories/unisex-perfume">
3752                        中性香水
3753                      </a>
3754                    </li>
3755                  
3756                
3757                  
3758                    <li class="List-item">
3759                      <a class="Label" link-highlight="https://www.anelet.com/categories/mens-perfume" href="https://www.anelet.com/categories/mens-perfume">
3760                        男性香水
3761                      </a>
3762                    </li>
3763                  
3764                
3765                  
3766                    <li class="List-item">
3767                      <a class="Label" link-highlight="https://www.anelet.com/categories/hair-perfume" href="https://www.anelet.com/categories/hair-perfume">
3768                        髮香噴霧
3769                      </a>
3770                    </li>
3771                  
3772                
3773                  
3774                    <li class="List-item">
3775                      <a class="Label" link-highlight="https://www.anelet.com/categories/perfume-gift-sets" href="https://www.anelet.com/categories/perfume-gift-sets">
3776                        香水禮盒
3777                      </a>
3778                    </li>
3779                  
3780                
3781              </ul>
3782            </li>
3783          
3784        
3785          
3786            <li
3787              class="List-item MenuPanel-nestedList sl-dropdown"
3788              is-collapsed="true"
3789              is-mobile-collapsed="true"
3790            >
3791              <a class="Label" link-highlight="https://www.anelet.com/categories/home-fragrances" href="https://www.anelet.com/categories/home-fragrances">
3792                居家香氛
3793                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-657abfadd1619b001ab68915"></i>
3794              </a>
3795              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-657abfadd1619b001ab68915">
3796                
3797                  
3798                    <li class="List-item">
3799                      <a class="Label" link-highlight="https://www.anelet.com/categories/room-spray" href="https://www.anelet.com/categories/room-spray">
3800                        室內噴霧
3801                      </a>
3802                    </li>
3803                  
3804                
3805                  
3806                    <li class="List-item">
3807                      <a class="Label" link-highlight="https://www.anelet.com/categories/reed-diffuser" href="https://www.anelet.com/categories/reed-diffuser">
3808                        室內擴香
3809                      </a>
3810                    </li>
3811                  
3812                
3813                  
3814                    <li class="List-item">
3815                      <a class="Label" link-highlight="https://www.anelet.com/categories/solid-perfume" href="https://www.anelet.com/categories/solid-perfume">
3816                        香氛蠟塊
3817                      </a>
3818                    </li>
3819                  
3820                
3821                  
3822                    <li class="List-item">
3823                      <a class="Label" link-highlight="https://www.anelet.com/categories/scented-candle" href="https://www.anelet.com/categories/scented-candle">
3824                        香氛蠟燭
3825                      </a>
3826                    </li>
3827                  
3828                
3829                  
3830                    <li class="List-item">
3831                      <a class="Label" link-highlight="https://www.anelet.com/categories/fragrance-gift-sets" href="https://www.anelet.com/categories/fragrance-gift-sets">
3832                        香氛禮盒
3833                      </a>
3834                    </li>
3835                  
3836                
3837                  
3838                    <li class="List-item">
3839                      <a class="Label" link-highlight="https://www.anelet.com/categories/fabrics-spray" href="https://www.anelet.com/categories/fabrics-spray">
3840                        衣物噴霧
3841                      </a>
3842                    </li>
3843                  
3844                
3845              </ul>
3846            </li>
3847          
3848        
3849          
3850            <li
3851              class="List-item MenuPanel-nestedList sl-dropdown"
3852              is-collapsed="true"
3853              is-mobile-collapsed="true"
3854            >
3855              <a class="Label" link-highlight="https://www.anelet.com/categories/life-style" href="https://www.anelet.com/categories/life-style">
3856                時尚配件
3857                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-65e6862d251f91000e0fbe
3857c0"></i>
3858              </a>
3859              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-65e6862d251f91000e0fbec0">
3860                
3861                  
3862                    <li class="List-item">
3863                      <a class="Label" link-highlight="https://www.anelet.com/categories/thermal-bottle" href="https://www.anelet.com/categories/thermal-bottle">
3864                        保溫瓶
3865                      </a>
3866                    </li>
3867                  
3868                
3869                  
3870                    <li class="List-item">
3871                      <a class="Label" link-highlight="https://www.anelet.com/categories/slimming-cosmetotextiles" href="https://www.anelet.com/categories/slimming-cosmetotextiles">
3872                        塑身衣
3873                      </a>
3874                    </li>
3875                  
3876                
3877              </ul>
3878            </li>
3879          
3880        
3881          
3882            <li
3883              class="List-item MenuPanel-nestedList sl-dropdown"
3884              is-collapsed="true"
3885              is-mobile-collapsed="true"
3886            >
3887              <a class="Label" link-highlight="https://www.anelet.com/categories/brands" href="https://www.anelet.com/categories/brands">
3888                品牌總覽
3889                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-65e1ce8731a020001a732509"></i>
3890              </a>
3891              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-65e1ce8731a020001a732509">
3892                
3893                  
3894                    <li class="List-item">
3895                      <a class="Label" link-highlight="https://www.anelet.com/categories/youfirst" href="https://www.anelet.com/categories/youfirst">
3896                        L&#39;ESSENZA / YOUFIRST
3897                      </a>
3898                    </li>
3899                  
3900                
3901                  
3902                    <li class="List-item">
3903                      <a class="Label" link-highlight="https://www.anelet.com/categories/lytess" href="https://www.anelet.com/categories/lytess">
3904                        LYTESS
3905                      </a>
3906                    </li>
3907                  
3908                
3909                  
3910                    <li class="List-item">
3911                      <a class="Label" link-highlight="https://www.anelet.com/categories/margot-tita" href="https://www.anelet.com/categories/margot-tita">
3912                        MARGOT&amp;TITA
3913                      </a>
3914                    </li>
3915                  
3916                
3917                  
3918                    <li class="List-item">
3919                      <a class="Label" link-highlight="https://www.anelet.com/categories/my-fragrances" href="https://www.anelet.com/categories/my-fragrances">
3920                        MY FRAGRANCES
3921                      </a>
3922                    </li>
3923                  
3924                
3925                  
3926                    <li class="List-item">
3927                      <a class="Label" link-highlight="https://www.anelet.com/categories/piuforty" href="https://www.anelet.com/categories/piuforty">
3928                        PIÙFORTY
3929                      </a>
3930                    </li>
3931                  
3932                
3933              </ul>
3934            </li>
3935          
3936        
3937          
3938            <li
3939              class="List-item MenuPanel-nestedList sl-dropdown"
3940              is-collapsed="true"
3941              is-mobile-collapsed="true"
3942            >
3943              <a class="Label" link-highlight="https://www.anelet.com/categories/香調列表" href="https://www.anelet.com/categories/香調列表">
3944                香調列表
3945                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-65e6b912cf2a2d001144f3b9"></i>
3946              </a>
3947              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-65e6b912cf2a2d001144f3b9">
3948                
3949                  
3950                    <li class="List-item">
3951                      <a class="Label" link-highlight="https://www.anelet.com/categories/woody-perfumes" href="https://www.anelet.com/categories/woody-perfumes">
3952                        木質調
3953                      </a>
3954                    </li>
3955                  
3956                
3957                  
3958                    <li class="List-item">
3959                      <a class="Label" link-highlight="https://www.anelet.com/categories/spicy-perfumes" href="https://www.anelet.com/categories/spicy-perfumes">
3960                        辛香調
3961                      </a>
3962                    </li>
3963                  
3964                
3965                  
3966                    <li class="List-item">
3967                      <a class="Label" link-highlight="https://www.anelet.com/categories/oriental-perfumes" href="https://www.anelet.com/categories/oriental-perfumes">
3968                        東方調
3969                      </a>
3970                    </li>
3971                  
3972                
3973                  
3974                    <li class="List-item">
3975                      <a class="Label" link-highlight="https://www.anelet.com/categories/fruity-perfumes" href="https://www.anelet.com/categories/fruity-perfumes">
3976                        果香調
3977                      </a>
3978                    </li>
3979                  
3980                
3981                  
3982                    <li class="List-item">
3983                      <a class="Label" link-highlight="https://www.anelet.com/categories/floral-perfumes" href="https://www.anelet.com/categories/floral-perfumes">
3984                        花香調
3985                      </a>
3986                    </li>
3987                  
3988                
3989                  
3990                    <li class="List-item">
3991                      <a class="Label" link-highlight="https://www.anelet.com/categories/parfums-cirus" href="https://www.anelet.com/categories/parfums-cirus">
3992                        柑橘調
3993                      </a>
3994                    </li>
3995                  
3996                
3997                  
3998                    <li class="List-item">
3999                      <a class="Label" link-highlight="https://www.anelet.com/categories/aquatic-perfumes" href="https://www.anelet.com/categories/aquatic-perfumes">
4000                        海洋調
4001                      </a>
4002                    </li>
4003                  
4004                
4005                  
4006                    <li class="List-item">
4007                      <a class="Label" link-highlight="https://www.anelet.com/categories/gourmet-perfumes" href="https://www.anelet.com/categories/gourmet-perfumes">
4008                        甜點調
4009                      </a>
4010                    </li>
4011                  
4012                
4013                  
4014                    <li class="List-item">
4015                      <a class="Label" link-highlight="https://www.anelet.com/categories/fougere-perfumes" href="https://www.anelet.com/categories/fougere-perfumes">
4016                        薰苔調
4017                      </a>
4018                    </li>
4019                  
4020                
4021                  
4022                    <li class="List-item">
4023                      <a class="Label" link-highlight="https://www.anelet.com/categories/musc-perfumes" href="https://www.anelet.com/categories/musc-perfumes">
4024                        麝香調
4025                      </a>
4026                    </li>
4027                  
4028                
4029              </ul>
4030            </li>
4031          
4032        
4033          
4034            <li
4035              class="List-item MenuPanel-nestedList sl-dropdown"
4036              is-collapsed="true"
4037              is-mobile-collapsed="true"
4038            >
4039              <a class="Label" link-highlight="https://www.anelet.com/pages/the-blog" href="https://www.anelet.com/pages/the-blog">
4040                New Page
4041                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-6595331fb717c0000edeaef2"></i>
4042              </a>
4043              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-6595331fb717c0000edeaef2">
4044                
4045                  
4046                    <li class="List-item">
4047                      <a class="Label" link-highlight="https://www.anelet.com/pages/best-perfume" href="https://www.anelet.com/pages/best-perfume">
4048                        Best Perfume
4049                      </a>
4050                    </li>
4051                  
4052                
4053                  
4054                    <li class="List-item">
4055                      <a class="Label" link-highlight="https://www.anelet.com/pages/know-how" href="https://www.anelet.com/pages/know-how">
4056                        KNOW-HOW
4057                      </a>
4058                    </li>
4059                  
4060                
4061              </ul>
4062            </li>
4063          
4064        
4065          
4066            <li
4067              class="List-item MenuPanel-nestedList sl-dropdown"
4068              is-collapsed="true"
4069              is-mobile-collapsed="true"
4070            >
4071              <a class="Label" link-highlight="https://www.anelet.com/pages/brandstory" href="https://www.anelet.com/pages/brandstory">
4072                關於我們
4073                <i class="fa sl-dropdown-toggle" data-toggle="collapse" href="#menu-mobile-65e1ea9597b584001789ffa6"></i>
4074              </a>
4075              <ul class="MenuPanel-nestedList-dropdown sl-dropdown-list collapse" id="menu-mobile-65e1ea9597b584001789ffa6">
4076                
4077                  
4078                    <li class="List-item">
4079                      <a class="Label" link-highlight="https://www.anelet.com/pages/member" href="https://www.anelet.com/pages/member">
4080                        會員獨享
4081                      </a>
4082                    </li>
4083                  
4084                
4085                  
4086                    <li class="List-item">
4087                      <a class="Label" link-highlight="https://www.anelet.com/pages/collaboration" href="https://www.anelet.com/pages/collaboration">
4088                        New Page
4089                      </a>
4090                    </li>
4091                  
4092                
4093                  
4094                    <li class="List-item">
4095                      <a class="Label" link-highlight="https://www.anelet.com/about/policy" href="https://www.anelet.com/about/policy">
4096                        Return Policy
4097                      </a>
4098                    </li>
4099                  
4100                
4101                  
4102                    <li class="List-item">
4103                      <a class="Label" link-highlight="https://www.anelet.com/about/delivery-policy" href="https://www.anelet.com/about/delivery-policy">
4104                        Delivery Policy
4105                      </a>
4106                    </li>
4107                  
4108                
4109              </ul>
4110            </li>
4111          
4112        
4113      </ul>
4114    
4115
4116    
4117    
4118
4119    
4120    
4121      <div class="MenuPanel-section-header">
4122        Account
4123      </div>
4124      <ul class="MenuPanel-accountMenu">
4125        <li class="List-item">
4126          <a class="Label" href="/users/sign_in">Sign in</a>
4127        </li>
4128        <li class="List-item">
4129          <a class="Label" href="/users/sign_up">Sign up</a>
4130        </li>
4131      </ul>
4132    
4133
4134    
4135    
4136    
4137    
4138
4139    
4140      <ul class="MenuPanel-othersMenu">
4141        
4142          <li class="List-item">
4143            <a class="sl-currency-menu-open">
4144              <i class="fa fa-dollar"></i>
4145            </a>
4146          </li>
4147        
4148        
4149          <li class="List-item">
4150            <a class="sl-language-menu-open">
4151              <svg class="icons icon-globe-v2">
4152                <use xlink:href="#icon-globe-v2"></use>
4153              </svg>
4154            </a>
4155          </li>
4156        
4157        
4158          <li class="List-item">
4159            <a class="MessageDialog-showButton sl-message-toggle">
4160              <svg class="icons icon-bubble">
4161                <use xlink:href="#icon-bubble"></use>
4162              </svg>
4163            </a>
4164          </li>
4165        
4166      </ul>
4167    
4168  </div>
4169</div>
4170
4171
4172
4173
4174
4175
4176
4177
4178<script type="text/javascript">
4179document.addEventListener('DOMContentLoaded', function() {
4180(function() {
4181  function getMenus() {
4182    var menuData = [];
4183    $('.navigation-menu-second-layer').each(function() {
4184      var topLayerMenu = $(this).parent();
4185      var secondLayerMenu = $(this);
4186      var secondLayerMenuScrollWidth = secondLayerMenu[0].scrollWidth;
4187      var secondLayerMenuItemWidth = secondLayerMenu.find('li').outerWidth(true);
4188      var secondLayerMenuScrollButtons = secondLayerMenu.find('.second-layer-scroll-buttons');
4189      var thirdLayerData = [];
4190      secondLayerMenu.find('.navigation-menu-item--nested').each(function() {
4191        thirdLayerData.push({
4192          parentItem: $(this),
4193          toggleButton: $(this).find('.navigation-menu-third-layer-toggle'),
4194          menu: $(this).find('.navigation-menu-third-layer')
4195        });
4196      });
4197      menuData.push({
4198        topLayer: {
4199          menu: topLayerMenu
4200        },
4201        secondLayer: {
4202          menu: secondLayerMenu,
4203          itemWidth: secondLayerMenuItemWidth,
4204          scrollWidth: secondLayerMenuScrollWidth,
4205          scrollButtons: secondLayerMenuScrollButtons,
4206          scrollLeftButton: secondLayerMenuScrollButtons.find('.scroll-left'),
4207          scrollRightButton: secondLayerMenuScrollButtons.find('.scroll-right'),
4208          isOneColumnMenu: secondLayerMenuItemWidth === secondLayerMenuScrollWidth,
4209          isScrollable: secondLayerMenuScrollWidth > parseInt($(secondLayerMenu).css('max-width'), 10)
4210        },
4211        thirdLayer: thirdLayerData
4212      });
4213    });
4214    return menuData;
4215  }
4216
4217  function setSecondLayerMenu() {
4218    menus.forEach(function(currentMenu) {
4219      currentMenu.secondLayer.menu.css('width', currentMenu.secondLayer.scrollWidth);
4220      currentMenu.secondLayer.isScrollable = currentMenu.secondLayer.scrollWidth > currentMenu.secondLayer.menu.outerWidth();
4221      if (currentMenu.secondLayer.isScrollable) {
4222        currentMenu.secondLayer.scrollButtons.css('display', 'flex');
4223        setSecondLayerMenuScrollButtonEvent(currentMenu.secondLayer);
4224      }
4225      if (currentMenu.secondLayer.isOneColumnMenu) {
4226        currentMenu.secondLayer.menu.css('overflow', 'unset');
4227      }
4228    });
4229  }
4230
4231  function setSecondLayerMenuScrollButtonEvent(secondLayer) {
4232    var scrollDistance = 800;
4233    secondLayer.scrollLeftButton.on('click', function() {
4234      var currentScrollLeft = secondLayer.menu.scrollLeft();
4235      secondLayer.menu.animate({ scrollLeft: currentScrollLeft - scrollDistance });
4236    });
4237    secondLayer.scrollRightButton.on('click', function() {
4238      var currentScrollLeft = secondLayer.menu.scrollLeft();
4239      secondLayer.menu.animate({ scrollLeft: currentScrollLeft + scrollDistance });
4240    });
4241    secondLayer.menu.on('scroll',
4242      _.throttle(function() {
4243        secondLayer.menu.scrollLeft() === 0
4244          ? secondLayer.scrollLeftButton.addClass('scroll-disable')
4245          : secondLayer.scrollLeftButton.removeClass('scroll-disable');
4246        secondLayer.menu.scrollLeft() + secondLayer.menu.outerWidth() === secondLayer.scrollWidth
4247          ? secondLayer.scrollRightButton.addClass('scroll-disable')
4248          : secondLayer.scrollRightButton.removeClass('scroll-disable');
4249      }, 200)
4250    );
4251  }
4252
4253  function setSecondLayerMenuPosition() {
4254    var minRightSpace = 80;
4255    var lastOpenedMenu = lastOpenedMenuObject.get();
4256    menus.forEach(function(currentMenu) {
4257      currentMenu.secondLayer.menu.css('width', currentMenu.secondLayer.scrollWidth);
4258      /* reset second layer menu position */
4259      currentMenu.secondLayer.menu.addClass('navigation-menu-second-layer-origin-position');
4260      /* set right space */
4261      var hasOpenedOneColumnMenu =
4262        lastOpenedMenu.thirdLayerMenu &&
4263        lastOpenedMenu.isOneColumnMenu &&
4264        currentMenu.secondLayer.menu[0] === lastOpenedMenu.secondLayerMenu[0];
4265      var secondLayerMenuRightSpace = $(window).width() - (
4266        currentMenu.secondLayer.menu.offset().left + currentMenu.secondLayer.menu.outerWidth()
4267      );
4268      var shouldSetRightSpace = Math.floor(secondLayerMenuRightSpace) <= minRightSpace;
4269      var rightSpace = minRightSpace;
4270      if (shouldSetRightSpace) {
4271        if (hasOpenedOneColumnMenu) {
4272          rightSpace += currentMenu.secondLayer.menu.outerWidth();
4273        }
4274      } else {
4275        if (hasOpenedOneColumnMenu && secondLayerMenuRightSpace - lastOpenedMenu.thirdLayerMenu.outerWidth() < minRightSpace) {
4276          rightSpace = secondLayerMenuRightSpace + currentMenu.secondLayer.menu.outerWidth();
4277        } else {
4278          rightSpace = secondLayerMenuRightSpace;
4279        }
4280      }
4281      currentMenu.secondLayer.menu.css({
4282        position: 'fixed',
4283        top: currentMenu.topLayer.menu.height() + currentMenu.topLayer.menu.position().top,
4284        right: rightSpace,
4285        left: 'unset'
4286      });
4287      currentMenu.secondLayer.menu.removeClass('navigation-menu-second-layer-origin-position');
4288      /* set scroll direction control buttons */
4289      if (currentMenu.secondLayer.isScrollable) {
4290        currentMenu.secondLayer.scrollButtons.css('right',
4291          $(window).width() - (
4292            currentMenu.secondLayer.menu.offset().left +
4293            currentMenu.secondLayer.menu.outerWidth() +
4294            currentMenu.secondLayer.scrollButtons.outerWidth()
4295          )
4296        );
4297      }
4298    });
4299  }
4300
4301  function setThirdLayerMenuPosition() {
4302    menus.forEach(function(currentMenu) {
4303      currentMenu.thirdLayer.forEach(function(currentThirdLayer) {
4304        currentThirdLayer.menu.css({
4305          position: 'absolute',
4306          transform: currentMenu.secondLayer.isOneColumnMenu ? 'translateX(100%)' : 'unset',
4307          top: currentThirdLayer.parentItem.position().top * -1,
4308          left: currentMenu.secondLayer.isOneColumnMenu ? 'unset' : '100%',
4309          height:
4310            currentMenu.secondLayer.isOneColumnMenu &&
4311            currentThirdLayer.menu.height() > currentMenu.secondLayer.menu.height()
4312              ? currentThirdLayer.menu.height()
4313              : currentMenu.secondLayer.menu.height()
4314        });
4315      });
4316    });
4317  }
4318
4319  function setThirdLayerMenuClickEvent() {
4320    menus.forEach(function(currentMenu) {
4321      currentMenu.thirdLayer.forEach(function(currentThirdLayer) {
4322        currentThirdLayer.toggleButton.on('click', function(e) {
4323          if (e.target !== this) return;
4324          var lastOpenedMenu = lastOpenedMenuObject.get();
4325          var isOpen = currentThirdLayer.menu.css('display') !== 'none';
4326          /* if second layer menu is one column */
4327          var isSameSecondLayerMenu;
4328          var isOpenFromRight;
4329          if (
4330            currentMenu.secondLayer.isOneColumnMenu ||
4331            (lastOpenedMenu.secondLayerMenu && lastOpenedMenu.isOneColumnMenu)
4332          ) {
4333            if (lastOpenedMenu.secondLayerMenu) {
4334              isSameSecondLayerMenu = currentMenu.secondLayer.menu[0] === lastOpenedMenu.secondLayerMenu[0];
4335            }
4336            if (
4337              (isOpen || lastOpenedMenu.isOneColumnMenu) &&
4338              lastOpenedMenu.topLayerMenu.offset().left > lastOpenedMenu.secondLayerMenu.offset().left
4339            ) {
4340              lastOpenedMenu.secondLayerMenu.css('right', '-=' + currentMenu.secondLayer.itemWidth + 'px');
4341            }
4342            if (!isOpen && currentMenu.secondLayer.isOneColumnMenu) {
4343              currentThirdLayer.menu.addClass('navigation-menu-third-layer-shadow ');
4344              var secondLayerMenuOffsetRight = $(window).width() - (
4345                currentMenu.secondLayer.menu.offset().left + currentMenu.secondLayer.menu.outerWidth()
4346              );
4347              var shouldOpenFromRightSide = Math.floor(secondLayerMenuOffsetRight) <= currentMenu.secondLayer.itemWidth;
4348              if (shouldOpenFromRightSide && !isSameSecondLayerMenu) {
4349                currentMenu.secondLayer.menu.css('right', '+=' + currentMenu.secondLayer.itemWidth + 'px');
4350              }
4351            } else {
4352              lastOpenedMenu.thirdLayerMenu.removeClass('navigation-menu-third-layer-shadow');
4353            }
4354            isOpenFromRight = shouldOpenFromRightSide || (isSameSecondLayerMenu && lastOpenedMenu.isOpenFromRight);
4355          }
4356          /* close last opened third layer menu */
4357          if (lastOpenedMenu.thirdLayerMenu) {
4358            lastOpenedMenu.thirdLayerMenuToggleButton
4359              .removeClass('navigation-menu-third-layer-toggle--open fa-angle-left')
4360              .addClass('navigation-menu-third-layer-toggle--close fa-angle-right');
4361            lastOpenedMenu.thirdLayerMenu.css('display', 'none');
4362            if (lastOpenedMenu.isScrollable) {
4363              lastOpenedMenu.scrollButtons.css('display', 'flex');
4364            }
4365            lastOpenedMenuObject.reset();
4366          }
4367          /* open current third layer menu */
4368          if (!isOpen) {
4369            currentThirdLayer.menu.css('display', 'flex');
4370            currentThirdLayer.toggleButton
4371              .removeClass('navigation-menu-third-layer-toggle--close fa-angle-right')
4372              .addClass('navigation-menu-third-layer-toggle--open fa-angle-left');
4373            if (
4374              currentMenu.secondLayer.menu.outerWidth() - (
4375                currentMenu.secondLayer.itemWidth * 2 + currentThirdLayer.parentItem.position().left
4376              ) < 0
4377            ) {
4378              currentMenu.secondLayer.menu.animate({
4379                scrollLeft: currentMenu.secondLayer.menu.scrollLeft() + currentMenu.secondLayer.scrollWidth
4380              });
4381            } else if (currentThirdLayer.parentItem.position().left < 0) {
4382              currentMenu.secondLayer.menu.animate({
4383                scrollLeft: currentMenu.secondLayer.menu.scrollLeft() - Math.abs(currentThirdLayer.parentItem.position().left)
4384              });
4385            }
4386            /* set last opened third layer menu */
4387            lastOpenedMenuObject.set({
4388              topLayerMenu: currentMenu.topLayer.menu,
4389              secondLayerMenu: currentMenu.secondLayer.menu,
4390              thirdLayerMenu: currentThirdLayer.menu,
4391              thirdLayerMenuToggleButton: currentThirdLayer.toggleButton,
4392              isOpenFromRight: isOpenFromRight,
4393              isOneColumnMenu: currentMenu.secondLayer.isOneColumnMenu,
4394              isScrollable: currentMenu.secondLayer.isScrollable,
4395              scrollButtons: currentMenu.secondLayer.scrollButtons
4396            });
4397            if (currentMenu.secondLayer.isScrollable) {
4398              currentMenu.secondLayer.scrollButtons.css('display', 'none');
4399            }
4400          }
4401        });
4402      });
4403    });
4404  }
4405
4406  var makeLastOpenMenuObject = function() {
4407    var currentData = {};
4408    return {
4409      get: function() {
4410        return currentData;
4411      },
4412      set: function(openedMenuObject) {
4413        currentData = {
4414          topLayerMenu: openedMenuObject.topLayerMenu,
4415          secondLayerMenu: openedMenuObject.secondLayerMenu,
4416          thirdLayerMenu: openedMenuObject.thirdLayerMenu,
4417          thirdLayerMenuToggleButton: openedMenuObject.thirdLayerMenuToggleButton,
4418          isOpenFromRight: openedMenuObject.isOpenFromRight,
4419          isOneColumnMenu: openedMenuObject.isOneColumnMenu,
4420          isScrollable: openedMenuObject.isScrollable,
4421          scrollButtons: openedMenuObject.scrollButtons
4422        };
4423      },
4424      reset: function() {
4425        currentData = {};
4426      }
4427    };
4428  };
4429
4430  function checkScroll() {
4431    if ($(window).scrollTop() > 100) {
4432      $('body').addClass('my-scroll');
4433    } else {
4434      $('body').removeClass('my-scroll');
4435    }
4436  }
4437
4438  function setSideBarClickEvent(openSel, closeSel, menuName) {
4439    $(openSel).sidr(new SidrOptions({ name: menuName }));
4440    $(openSel).off(); /* remove click event handler from sidr */
4441    $('body').on('click.' + menuName, openSel, function(e) {
4442      $.sidr('close', 'MenuPanel', function() {
4443        $.sidr('open', menuName, function() {
4444          $('.sl-modal-mask').css({ display: 'block', opacity: 0.3, zIndex: 10 });
4445
4446          var zIndex = $('#shopline-section-header, .NavigationBar.mod-desktop').css('z-index');
4447          if (zIndex && zIndex !== 'auto') $('.sl-modal-mask').css('z-index', zIndex);
4448        });
4449      });
4450    });
4451    $('body').on('click.' + menuName, closeSel, function(e) {
4452      $.sidr('close', menuName, function() {
4453        $.sidr('open', 'MenuPanel');
4454      });
4455    });
4456    $('.sl-modal-mask').on('click', function() {
4457      $.sidr('close', menuName);
4458    });
4459  }
4460
4461  function setSmallViewSearchBarClickEvents() {
4462    var bannerHeight = ($('.trial-banner').height() || 0) + ($('.js-announcement').height() || 0);
4463    $('.js-product-searchfield-form').css('top', bannerHeight);
4464    $('.js-menu-search').on('click', function() {
4465      $('.js-product-searchfield-form').addClass('active');
4466      $('.sl-modal-mask').css({ display: 'block', opacity: 0.3, zIndex: 10 });
4467    });
4468    $('.sl-modal-mask').on('click', function() {
4469      $('.js-product-searchfield-form').removeClass('active');
4470
4471      var zIndex = $('#shopline-section-header, .NavigationBar.mod-desktop').css('z-index');
4472      if (zIndex && zIndex !== 'auto') $('.sl-modal-mask').css('z-index', zIndex);
4473    });
4474  }
4475
4476  function adjustStickyHeight() {
4477    var previewingClosedStoreBanner = $('.js-previewing-closed-store-banner');
4478    var previewingClosedStoreBannerHeight = previewingClosedStoreBanner.length ? previewingClosedStoreBanner.height() : 0;
4479  }
4480
4481  function setMenuPosition() {
4482    function setPosition() {
4483      adjustStickyHeight();
4484      setSecondLayerMenuPosition();
4485      setThirdLayerMenuPosition();
4486    }
4487    var logo = document.querySelector('.js-sticky img');
4488    if (logo) {
4489      if (logo.complete) {
4490        setPosition();
4491      } else {
4492        logo.addEventListener('load', setPosition);
4493      }
4494    }
4495  }
4496
4497  function initMenu() {
4498    if (window.matchMedia('(max-width: 1199px)').matches) {
4499      return;
4500    }
4501    menus = getMenus();
4502    lastOpenedMenuObject = makeLastOpenMenuObject();
4503    checkScroll();
4504    setSecondLayerMenu();
4505    setMenuPosition();
4506    setThirdLayerMenuClickEvent();
4507    isInited = true;
4508  }
4509
4510  function setMobileSearchBarPosition() {
4511    var bannerHeight = ($('.trial-banner').height() || 0) + ($('.js-announcement').height() || 0);
4512    $('.js-product-searchfield-form').css('top', bannerHeight);
4513  }
4514
4515  /* init */
4516  var menus = null;
4517  var isInited = false;
4518  var lastOpenedMenuObject = null;
4519  setSmallViewSearchBarClickEvents();
4520  setSideBarClickEvent('.sl-language-menu-open', '.sl-language-menu-close', 'LanguagePanel');
4521  setSideBarClickEvent('.sl-currency-menu-open', '.sl-currency-menu-close', 'CurrencyPanel');
4522  initMenu();
4523
4524  /* watch */
4525  $(window).on('resize', _.throttle(function() {
4526    if (isInited) {
4527      menus = getMenus();
4528      setMenuPosition();
4529      setMobileSearchBarPosition();
4530    } else {
4531      initMenu();
4532    }
4533  }, 200));
4534
4535  $(window).on('scroll', _.throttle(function() {
4536    if (isInited) {
4537      checkScroll();
4538      menus = getMenus();
4539      checkScroll();
4540      setMenuPosition();
4541    } else {
4542      initMenu();
4543    }
4544  }, 200));
4545})();
4546});
4547</script>
4547
4548
4549
4550
4551<script type="text/javascript">
4552const menuEventCategory = 'Menu';
4553const shopScope = 'shop';
4554const shoplyticsMenuEventData = {
4555  event_category: menuEventCategory,
4556  scope: shopScope,
4557};
4558
4559window.APP_EXTENSION_SDK_ANGULAR_JS_LOADED.then(() => {
4560  const trackerService = angular
4561    .element('body')
4562    .injector()
4563    .get('trackerService');
4564
4565  function sendEvent(eventType, data = {}) {
4566    /* send shoplytics event */
4567    trackerService.track({
4568      type: eventType,
4569      data: {
4570        ...shoplyticsMenuEventData,
4571        ...data,
4572      },
4573    });
4574  }
4575
4576  function bindMenuClickEvent({
4577    type,
4578    containerSelector,
4579    excludeTargetSelector,
4580  }) {
4581    $(containerSelector).on('click', 'a', function (e) {
4582      /* exclude specific elements */
4583      if (
4584        excludeTargetSelector &&
4585        ($(e.target).is(excludeTargetSelector) ||
4586          $(e.target).closest(excludeTargetSelector).length > 0)
4587      ) {
4588        return;
4589      }
4590
4591      const li = $(this).closest('li');
4592      // desktop and mobile have different file structure
4593      const depth =
4594        li.parentsUntil(containerSelector, 'ul').length +
4595        (type === 'mobile' ? 1 : 0);
4596
4597      sendEvent(trackerService.menuTrackerType.MENU_CLICK, {
4598        menu_level: depth,
4599      });
4600    });
4601  }
4602
4603  function subscribeMenuClick() {
4604    /* menu click event - mobile, exclude toggle icon */
4605    bindMenuClickEvent({
4606      type: 'mobile',
4607      containerSelector: '#MenuPanel .MenuPanel-mainMenu',
4608      excludeTargetSelector: '.sl-dropdown-toggle, .sl-advanced-menu-trigger',
4609    });
4610    /* menu click event - desktop */
4611    bindMenuClickEvent({
4612      type: 'desktop',
4613      containerSelector: '.header--desktop .navigation-menu',
4614    });
4615  }
4616
4617  /* menu click event */
4618  subscribeMenuClick();
4619
4620  /* search icon click event - for both desktop & mobile */
4621  $('.header--mobile .js-menu-search, .header--desktop .icon-magnifier').on('click', function () {
4622    sendEvent(trackerService.menuTrackerType.SEARCH_PRODUCT_ICON_CLICK);
4623  });
4624
4625  $('.sl-menu-panel-toggle').on('pointerdown', function () {
4626    sendEvent(trackerService.menuTrackerType.HEADER_HAMBURGER_CLICK);
4627  });
4628});
4629</script>
4629
4630
4631
4632
4633
4634    
4635
4636    
4637    <div id="cart-panel" class="CartPanel js-cart-panel">
4638  <div class="CartPanel-section">
4639    <div ng-controller="CartsController">
4640      
4641<div class="clear"></div>
4642<!-- Hint: Cart Empty -->
4643<div ng-cloak class="cart-panel-empty-wrapper" ng-class="{'has-related-products': currentCart.isCartEmpty() && isSmartProductRecommendationPlusCartEnabled}" ng-show="currentCart.isCartEmpty()">
4644  <div class="CartPanel-hint"> Your Shopping Cart is empty. </div>
4645  <div class="cart-related-products" ng-if="currentCart.isCartEmpty() && isSmartProductRecommendationPlusCartEnabled">
4646    <div class="cart-related-products-title">{{ 'cart.related_products.title' | translate }}</div>
4647    <cart-lazyload-related-products data-allow-empty-product-ids="true">
4648      <div class="cart-related-products-loading">
4649        <div class="cart-related-products-loading-image loading-placeholder"></div>
4650        <div class="cart-related-products-loading-content">
4651          <div class="cart-related-products-loading-title loading-placeholder"></div>
4652          <div class="cart-related-products-loading-price-details loading-placeholder"></div>
4653        </div>
4654      </div>
4655      <div class="cart-related-products-list"></div>
4656    </cart-lazyload-related-products>
4657  </div>
4658</div>
4659
4660<div class="cart-panel-content" data-e2e-id="cart-panel_container" ng-cloak ng-hide="currentCart.isCartEmpty()">
4661  <!-- CartItems -->
4662  <div class="cart-items">
4663    <div
4664      ng-repeat="item in currentCart.getItems() track by item._id"
4665      ng-if="item.type !== 'gift'"
4666      class="cart-item-container"
4667      data-cart-item-id="{{ item._id }}"
4668      product-id="{{ item.product_id }}"
4669    >
4670      <!-- Item -->
4671      <div class="cart-item">
4672        <a ng-if="item.product.type !== 'gift'" ng-href="/products/{{item.product_id}}" target="_blank" class="product-link js-product-link">
4673          <img
4674            class="sl-lazy-image cart-item-image"
4675            ng-src="{{ getImgSrc(item, '200x200f') }}"
4676            alt="{{ (item.variation.media ? item.variation.media.alt_translations : item.product.cover_media.alt_translations) | translateModel }}"
4677          />
4678        </a>
4679        <img
4680          class="sl-lazy-image cart-item-image"
4681          ng-if="item.product.type === 'gift'"
4682          ng-src="{{ getImgSrc(item, '200x200f') }}"
4683          alt="{{ (item.variation.media
4684                    ? item.variation.media.alt_translations
4685                    : item.product.cover_media.alt_translations) | translateModel
4686                }}"
4687        />
4688        <div class="cart-item-content" style="float:left;width:130px;">
4689          <div class="wrap--bundle-title-variation">
4690            <div
4691              ng-show="['bundle_pricing', 'bundle_percentage', 'bundle_amount', 'bundle_gift'].includes(item.applied_promotion.discount_type)"
4692              class="label promotion-label label-default"
4693            >
4694              {{ 'product.bundled_products.label' | translate }}
4695            </div>
4696            <div
4697              ng-show="['bundle_group', 'bundle_group_percentage', 'bundle_group_amount', 'bundle_group_gift'].includes(item.applied_promotion.discount_type)"
4698              class="label promotion-label label-default"
4699            >
4700              {{ 'product.bundle_group_products.label' | translate }}
4701            </div>
4702            <div
4703              ng-show="['buyandget_free', 'buyandget_percentage', 'buyandget_pricing'].includes(item.applied_promotion.discount_type)"
4704              class="label promotion-label label-default"
4705            >
4706              {{ 'product.buyandget.label' | translate }}
4707            </div>
4708            <div
4709              ng-show="item.type === 'redeem_gift' || item.type === 'manual_gift'"
4710              class="label promotion-label label-default"
4711            >
4712              {{ 'product.gift.label' | translate }}
4713            </div>
4714            <div ng-show="item.type == 'addon_product'" class="label promotion-label label-default">{{ 'product.addon_products.label' | translate }}</div>
4715            <div class="title">{{item.product.title_translations|translateModel}}</div>
4716            <div ng-repeat="field in item.variation.fields track by $index" class="item-variation">
4717              <div ng-class="$index === 0 ? 'variation' : 'variation space-variation'">{{ field.name_translations | translateModel }}</div>
4718            </div>
4719            <ul ng-if="isProductSetEnabled && item.product.type === 'product_set' && item.product.child_products" class="product-set-item-list">
4720              <li class="child-product-item" ng-repeat="childProduct in item.product.child_products track by childProduct._id">
4721                <p class="child-product-title">{{ childProduct.title_translations | translateModel }}</p>
4722                <p class="child-variation-title" ng-if="childProduct.child_variation">{{ getChildVariationShorthand(childProduct.child_variation) }}</p>
4723              </li>
4724            </ul>
4725            <span
4726              class="variation-open-button"
4727              ng-if="!state.variationOpenedChildren.has(item._id) && item.product.type === 'product_set'"
4728              ng-click="onClickOpenVariation(item._id)"
4729            >
4730              {{ 'product.set.open_variation' | translate }}
4731              <i class="fa fa-angle-down"></i>
4732            </span>
4733            <ul ng-if="isProductSetRevampEnabled && item.product.type === 'product_set' && item.product.child_products && state.variationOpenedChildren.has(item._id)" class="product-set-item-list">
4734              <li
4735                class="child-product-item"
4736                ng-repeat="selectedChildProduct in item.item_data.selected_child_products track by (selectedChildProduct.child_product_id + selectedChildProduct.child_variation_id)"
4737              >
4738                <p class="child-product-title">
4739                  {{ getSelectedItemDetail(selectedChildProduct, item).childProductName }}
4740                  x {{ selectedChildProduct.quantity || 1 }}
4741                </p>
4742                <p class="child-variation-title" ng-if="selectedChildProduct.child_variation_id">
4743                  {{ getSelectedItemDetail(selectedChildProduct, item).childVariationName }}
4744                </p>
4745              </li>
4746            </ul>
4747            <div ng-if="checkJoinVariantsEnabled()" class="joined-variants" ng-bind-html="joinVariants(item)"></div>
4748            <div class="variation" ng-hide="item.variation.fields">{{item.variation.name}}</div>
4749          </div>
4750          <div class="price-details">
4751            {{item.quantity}}<span style="margin:0 3px;">x</span>
4752            <span
4753              ng-if="currentCart.getItemPrice(item).label !== '' && item.type !== 'redeem_gift' && item.type !== 'manual_gift'"
4754              ng-bind-html="currentCart.getItemPrice(item).label | changeCurrency"
4755            ></span>
4756            <span
4757              ng-if="item.type === 'manual_gift' || (currentCart.getItemPrice(item).label === '' && item.type !== 'redeem_gift')"
4758              ng-bind-html="'NT$0' | changeCurrency"
4759            ></span>
4760            <span ng-if="item.type === 'redeem_gift'">
4761              {{ item.unit_point }} Point
4762            </span>
4763          </div>
4764        </div>
4765        <!--cart-item-content-->
4766        <div class="remove" ng-if="shouldShowDeleteButton">
4767          <a ng-click="removeItemFromCart(item._id,$event)">
4768            <span>Remove</span>
4769            <svg class="icons icon-delete">
4770              <use xlink:href="#icon-delete"></use>
4771            </svg>
4772          </a>
4773        </div>
4774        <div class="clear"></div>
4775      </div>
4776      <!-- Item end-->
4777      <!-- Addon items -->
4778      <div
4779        class="addon-cart-item cart-item"
4780        ng-repeat="addonItem in item.addon_items track by addonItem._id"
4781        ng-init="addonItemPrice = addonItem.price ? (addonItem.quantity * addonItem.price.cents / mainConfig.merchantData.base_currency.subunit_to_unit) : ''"
4782        data-cart-item-id="{{ addonItem._id }}"
4783      >
4784        <span class="product-link js-product-link">
4785          <img
4786            class="cart-item-image"
4787            ng-src="{{ getImgSrc(addonItem, '200x200f') }}"
4788            alt="{{addonItem.product.cover_media.alt_translations | translateModel}}"
4789          />
4790        </span>
4791        <div class="cart-item-content" style="float:left;width:130px;">
4792          <div class="wrap--bundle-title-variation">
4793            <div class="label promotion-label label-default">{{ 'product.addon_products.label' | translate }}</div>
4794            <div class="title">{{addonItem.product.title_translations|translateModel}}</div>
4795          </div>
4796          <div class="price-details">
4797            {{addonItem.quantity}}<span style="margin:0 3px;">x</span>
4798            <span ng-show="addonItem.price.label" ng-bind-html="addonItem.price.label | changeCurrency"></span>
4799            <span ng-hide="addonItem.price.label">{{ mainConfig.merchantData.base_currency.alternate_symbol + "0" }}</span>
4800          </div>
4801        </div>
4802        <div class="remove" ng-if="shouldShowDeleteButton">
4803          <a ng-click="removeItemFromCart(addonItem._id,$event)">
4804            <span>Remove</span>
4805            <svg class="icons icon-delete">
4806              <use xlink:href="#icon-delete"></use>
4807            </svg>
4808          </a>
4809        </div>
4810        <div class="clear"></div>
4811      </div>
4812      <!-- Addon items end -->
4813    </div>
4814    <div data-e2e-id="cart-sidebar-related-products_container" class="cart-related-products" ng-if="isSmartProductRecommendationPlusCartEnabled && getCartProductIds()">
4815      <div class="cart-related-products-title">{{ 'cart.related_products.title' | translate }}</div>
4816      <cart-lazyload-related-products ng-attr-data-product-ids="{{ getCartProductIds() }}">
4817        <div class="cart-related-products-loading">
4818          <div class="cart-related-products-loading-image loading-placeholder"></div>
4819          <div class="cart-related-products-loading-content">
4820            <div class="cart-related-products-loading-title loading-placeholder"></div>
4821            <div class="cart-related-products-loading-price-details loading-placeholder"></div>
4822          </div>
4823        </div>
4824        <div class="cart-related-products-list"></div>
4825      </cart-lazyload-related-products>
4826    </div>
4827    <div class="clear"></div>
4828  </div>
4829  <!-- CartItems end -->
4830
4831  <div class="clear"></div>
4832  <!-- Checkout button -->
4833  <div class="cart-chkt-btn-cont">
4834    
4835    <button
4836      id="btn-checkout"
4837      data-e2e-id="checkout_button"
4838      class="cart-chkt-btn ladda-button"
4839      data-style="slide-down"
4840      ladda="checkoutButtonLoading"
4841      ng-click="onCheckoutClicked($event)"
4842    >
4843      {{ 'cart.checkout' | translate }}
4844    </button>
4845  </div>
4846  <!-- Checkout button end -->
4847</div>
4848
4849    </div>
4850  </div>
4851</div>
4852
4853    <div id="LanguagePanel" class="MenuPanel nav-bg-color" data-nosnippet>
4854  <div class="MenuPanel-section">
4855    <div class="MenuPanel-section-header sl-language-menu-close">
4856      <span class="fa fa-chevron-left"></span>
4857      Language
4858    </div>
4859    <ul class="sl-language-chooser">
4860      
4861        <li class="List-item">
4862          <a class="Label sl-language-chooser-language" href="#en">English</a>
4863        </li>
4864      
4865        <li class="List-item">
4866          <a class="Label sl-language-chooser-language" href="#zh-hant">繁體中文</a>
4867        </li>
4868      
4869    </ul>
4870  </div>
4871</div>
4872
4873
4874    <div id="CurrencyPanel" class="MenuPanel nav-bg-color" data-nosnippet>
4875  <div class="MenuPanel-section">
4876    <div class="MenuPanel-section-header sl-currency-menu-close">
4877      <span class="fa fa-chevron-left"></span>
4878      Currency
4879    </div>
4880    <ul class="sl-currency-chooser" id="menu-others-currency">
4881      
4882        <li class="List-item">
4883          <a class="Label sl-currency-chooser-currency" href="#hkd">$ HKD</a>
4884        </li>
4885      
4886        <li class="List-item">
4887          <a class="Label sl-currency-chooser-currency" href="#mop">P MOP</a>
4888        </li>
4889      
4890        <li class="List-item">
4891          <a class="Label sl-currency-chooser-currency" href="#cny">Â¥ CNY</a>
4892        </li>
4893      
4894        <li class="List-item">
4895          <a class="Label sl-currency-chooser-currency" href="#twd">$ TWD</a>
4896        </li>
4897      
4898        <li class="List-item">
4899          <a class="Label sl-currency-chooser-currency" href="#usd">$ USD</a>
4900        </li>
4901      
4902        <li class="List-item">
4903          <a class="Label sl-currency-chooser-currency" href="#sgd">$ SGD</a>
4904        </li>
4905      
4906        <li class="List-item">
4907          <a class="Label sl-currency-chooser-currency" href="#eur">€ EUR</a>
4908        </li>
4909      
4910        <li class="List-item">
4911          <a class="Label sl-currency-chooser-currency" href="#aud">$ AUD</a>
4912        </li>
4913      
4914        <li class="List-item">
4915          <a class="Label sl-currency-chooser-currency" href="#gbp">£ GBP</a>
4916        </li>
4917      
4918        <li class="List-item">
4919          <a class="Label sl-currency-chooser-currency" href="#php">₱ PHP</a>
4920        </li>
4921      
4922        <li class="List-item">
4923          <a class="Label sl-currency-chooser-currency" href="#myr">RM MYR</a>
4924        </li>
4925      
4926        <li class="List-item">
4927          <a class="Label sl-currency-chooser-currency" href="#thb">฿ THB</a>
4928        </li>
4929      
4930        <li class="List-item">
4931          <a class="Label sl-currency-chooser-currency" href="#aed">د.إ AED</a>
4932        </li>
4933      
4934        <li class="List-item">
4935          <a class="Label sl-currency-chooser-currency" href="#jpy">Â¥ JPY</a>
4936        </li>
4937      
4938        <li class="List-item">
4939          <a class="Label sl-currency-chooser-currency" href="#bnd">$ BND</a>
4940        </li>
4941      
4942        <li class="List-item">
4943          <a class="Label sl-currency-chooser-currency" href="#krw">₩ KRW</a>
4944        </li>
4945      
4946        <li class="List-item">
4947          <a class="Label sl-currency-chooser-currency" href="#idr">Rp IDR</a>
4948        </li>
4949      
4950        <li class="List-item">
4951          <a class="Label sl-currency-chooser-currency" href="#vnd">₫ VND</a>
4952        </li>
4953      
4954        <li class="List-item">
4955          <a class="Label sl-currency-chooser-currency" href="#cad">$ CAD</a>
4956        </li>
4957      
4958    </ul>
4959  </div>
4960</div>
4961
4962
4963
4964    
4965
4966    
4967    <div id="Content" class="js-content">
4968      <div class="container ProductDetail-container" data-e2e-id="product-detail_container" ng-controller="ProductsShowController">
4969  <div class="ProductDetail-wrapper">
4970    <!-- Breadcrumb -->
4971    <div class="ProductDetail-breadcrumb" id="ProductDetail-breadcrumb">
4972      <div class="block-inner">
4973        <a class="Label" href="/products">View All</a>
4974        
4975          
4976            / <a class="Label" href="/categories/fragrances">香水香精</a>
4977          
4978            / <a class="Label" href="/categories/perfume-gift-sets">香水禮盒</a>
4979          
4980        
4981      </div>
4982    </div>
4983    <!-- END Breadcrumb -->
4984
4985    <div ng-show="false">
4986      <div class="ProductDetail-product ProductDetail-loading-data clearfix">
4987        <div class="ProductDetail-product-gallery clearfix">
4988          <div>
4989            <span class="loading-placeholder pull-left"></span>
4990            <span class="loading-placeholder pull-left"></span>
4991            <span class="loading-placeholder pull-left"></span>
4992          </div>
4993          <span class="loading-placeholder"></span>
4994        </div>
4995        <div class="ProductDetail-product-info">
4996          <div class="box-default">
4997              <div class="Product-title">【Margot&amp;amp;Tita】Advent Calendar 2026 - Limited quantity</div>
4998            <div>
4999              <div class="loading-line">
5000                <span class="loading-placeholder"></span>
5001                <span class="loading-placeholder"></span>
5002              </div>
5003              <div class="loading-line">
5004                <span class="loading-placeholder"></span>
5005                <span class="loading-placeholder"></span>
5006              </div>
5007            </div>
5008          </div>
5009        </div>
5010      </div>
5011    </div>
5012    <div ng-cloak>
5013      <div class="ProductDetail-product js-product-detail clearfix" sl-component="product-info">
5014        <div class="ProductDetail-product-gallery js-product-gallery">
5015          <product-variant-gallery enable-popup-slide="true" entry-point="pdp_product_photo" item-size="100" item-margin="10" enable-show-all-image="true" enable-zoom-in="true"></product-variant-gallery>
5016          <div class="prod-mobile js-prod-mobile"></div>
5017        </div>
5018
5019        <div class="ProductDetail-product-info js-product-info">
5020          <div class="box-default">
5021            <h1 class="Product-title">【Margot&amp;Tita】Advent Calendar 2026 - Limited quantity</h1>
5022
5023            
5024              <p class="Product-summary Product-summary-block">・French Eau de Parfum made in Grasse<br/>・Long-lasting fragrance<br/>・Layerable with our other fragrances<br/>・15 ml format to take anywhere<br/>・+90% naturally-derived ingredients</p>
5025              <hr/>
5026            
5027
5028            <product-available-info></product-available-info>
5029
5030            <div class='product-sale-sold-count text-cap' ng-if="showSoldCount()">
5031              <svg class="product-sale-sold-count-icon"><use xlink:href="#icon-sale-sold-count"></use></svg>
5032              <span ng-bind-html="getSoldCountText()"></span>
5033            </div>
5034
5035            
5036              <div class="promotion-wrap">
5037                <input class="Util-cssToggle" type="checkbox" name="Promotion-tags-toggle" id="Promotion-tags-toggle" />
5038                <div class="Product-promotions">
5039                  
5040                    <p class="Product-promotions-tag">
5041                      <span>Until <span local-datetime>2026-10-30T16:00:00.000+00:00</span></span> Anniversary: Free Gift with Purchase on order
5042                    </p>
5043                  
5044                    <p class="Product-promotions-tag">
5045                      Free shipping on purchases over $2,000 on order
5046                    </p>
5047                  
5048                </div>
5049                
5050              </div>
5051            
5052
5053            
5054
5055  
5056    
5057  
5058    
5059  
5060    
5061  
5062    
5063  
5064    
5065  
5066    
5067  
5068    
5069  
5070    
5071  
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081  
5082    <div class="not-same-price">
5083      <div class="global-primary dark-primary price-regular price js-price price-crossed">NT$16,560</div>
5084      
5085        <div class="price-sale price js-price">NT$8,900</div>
5086      
5087      
5088    </div>
5089  
5090
5091
5092<div class='product-review-summary-container'>
5093  <div class='product-review-box' ng-if="ratingSource == 'shopline' && shoplineProductReview">
5094  <span
5095    class="review-summary-info-stars"
5096    review-stars
5097    score="shoplineProductReview.avg_score"
5098    total-score="5"
5099  >
5100  </span>
5101  <span class='review-summary-data'>
5102    <span>{{shoplineProductReview.avg_score}}</span>(<a ng-click="scrollToProductReviews()">
5103      {{shoplineProductReview.total}} {{'product.product_review.reviews' | translate}}
5104    </a>)
5105  </span>
5106</div>
5107
5108<div class='product-review-box' ng-if="ratingSource == 'amazon' && amazonProductReview">
5109  <span
5110    class="review-summary-info-stars"
5111    review-stars
5112    score="amazonProductReview.avg_rating"
5113    total-score="5"
5114  >
5115  </span>
5116  <span class='review-summary-data'>
5117    <span>{{amazonProductReview.avg_rating}}</span>(<a ng-click="scrollToProductReviews()">
5118      {{amazonProductReview.total_comment_count}} {{'product.product_review.reviews' | translate}}
5119    </a>)
5120  </span>
5121</div>
5122
5123</div>
5124
5125
5126
5127  
5128  
5129    <div ng-show="showPreorderLabel()" class="label label-default checkout-label txt-preorder"><span>Pre-order item. Shipping begins in late October.</span></div>
5130  
5131
5132
5133<!-- variations -->
5134
5135  <!-- Product Set -->
5136  
5137  <!-- End of Product Set -->
5138
5139  <!-- Product Set Revamp -->
5140  
5141  <!-- End of Product Set Revamp -->
5142
5143  <!-- No Variation && Add to Cart -->
5144  <div ng-show="state.checkoutReady && hasStock && state.productSetCheckoutReady" class="product-variation-dropdown no-variation" product-variation-dropdown emit-event="pdp-variation-change">
5145    <div class="action-title global-secondary">
5146      <span class="variation_title" ng-if="!productSetService.isProductSetRevampEnabled(product)">Quantity</span>
5147      <span class="variation_title" ng-if="productSetService.isProductSetRevampEnabled(product)">Product set quantity</span>
5148    </div>
5149    <div class="quantity" >
5150
5151      <!-- Quantity as Inputbox -->
5152      <div class="form-inline form-quantity" style="display:inline-block;margin-bottom:10px" ng-show="state.checkoutReady" ng-class="state.checkoutReady ? 'form-block' : null"><div class="input-group">
5153      <span class="input-group-btn"><button type="button" class="btn btn-default btn-checkout" ng-click="decQuantity()"><i class="fa fa-minus"></i></button></span>
5154      <input dynamic-name="product_variation_$index"
5155        class="form-control form-control-xs form-control-inline"
5156        type="text"
5157        ng-model="addItemQuantity"
5158        ng-change="addItemQuantityInputChange()"
5159        maxlength="5"/>
5160      <span class="input-group-btn"><button type="button" class="btn btn-default btn-checkout" ng-click="incQuantity()"><i class="fa fa-plus"></i></button></span>
5161    </div>
5162  </div>
5163  <!-- Addon Item -->
5164  
5165
5166  
5167    
5168  
5169    
5170  
5171    
5172  
5173    
5174  
5175    
5176  
5177    
5178  
5179    
5180  
5181    
5182  
5183
5184
5185
5186
5187
5188
5189  <!-- Addon Item End -->
5190      <div class="product-detail-button-container has-buy-now-button">
5191        
5192        
5193        
5194        <button id="btn-add-to-cart"
5195                data-e2e-id="add-to-cart_button"
5196                ng-show="!state.addonItemEnabled"
5197                class="btn btn-custom btn-purchase-action ladda-button js-btn-main-add-to-cart js-btn-show btn-color-primary"
5198                data-style="slide-down"
5199                ladda="loading"
5200                ng-disabled="addItemQuantity == '' || addItemQuantity == 0 || addItemQuantity < 0 || addItemQuantity > 99999"
5201                ng-click="addItemToCart()"
5202                ui-scrollfix
5203                ui-scrollfix-sizing-element="#btn-add-to-car"
5204                ui-scrollfix-container-element=".js-sticky-cart-button-container"
5205        >
5206          <span class="fa fa-shopping-cart"></span>
5207          <span class="ladda-label" ng-bind="getAddToCartButtonText(true, '')"></span>
5208        </button>
5209        
5210          
5211          <button
5212  class="btn btn-buy-now btn-purchase-action btn-custom ladda-button form-control-inline js-btn-main-buy-now js-btn-show js-btn-scroll"
5213  ng-click="addItemToCart($event,true)"
5214  ng-show="
5215            !state.addonItemEnabled && !addItemQuantity == &#39;&#39; || addItemQuantity == 0 || addItemQuantity &lt; 0 || addItemQuantity &gt; 99999
5216          "
5217  ladda="loading"
5218  data-style="slide-down"
5219  
5220    id="#btn-buy-now"
5221    ui-scrollfix
5222    ui-scrollfix-sizing-element="#btn-buy-now"
5223    ui-scrollfix-container-element=".js-sticky-cart-button-container"
5224  
5225>
5226  <div class="btn-buy-now-content">
5227    <svg class="buy-now-icon"><use xlink:href="#icon-bag"></use></svg>
5228    
5229      <span class="buy-now-text" ng-bind="'product.buy_now' | translate"></span>
5230    
5231  </div>
5232</button>
5233
5234        
5235        
5236      </div>
5237      
5238      <div class="amazon-wishlist-block-align" ng-class="{'hidden': state.addonItemEnabled}">
5239        <div class="amazon-wishlist-block  no-amazon-btn">
5240          <div class="buy-at-amazon-button">
5241            
5242          </div>
5243          <div>
5244            
5245  <div ng-controller="ProductWishlistController">
5246    <div class="Back-in-stock-addItem-block">
5247      <back-in-stock-button
5248        product="product"
5249        wishlist-item="wishlistItem"
5250        is-item-in-back-in-stock="isItemInBackInStock"
5251        ng-if="shouldShowBackInStockBtn() && !state.addonItemEnabled&&state.checkoutReady&&hasStock"
5252      >
5253        <button
5254          ng-click="toggleBackInStock()"
5255          class="btn-add-back-in-stock btn-color-primary btn btn-custom js-btn-back-in-stock"
5256          ng-class="{ 'is-active': isItemInBackInStock }"
5257        >
5258          <div id="back-in-stock-content">
5259            <div class="font-style" ng-if="isItemInBackInStock">In Stock Notification On</div>
5260            <div class="font-style" ng-if="!isItemInBackInStock">Notify When in Stock</div>
5261          </div>
5262        </button>
5263        
5264          <div class="Tooltip-backInStockTooltip">
5265            <div class="Tooltip-backInStockTooltip-content">
5266              <a href='/users/sign_in'>Sign in/up now</a>
5267            </div>
5268          </div>
5269        
5270      </back-in-stock-button>
5271    </div>
5272    <div class="Wishlist-addItem-block "
5273      ng-if="!state.addonItemEnabled&amp;&amp;state.checkoutReady&amp;&amp;hasStock"
5274    >
5275      <sl-wishlist-button
5276        get-target-wishlist-item="getTargetWishlistItem()"
5277        product="product"
5278        variation-selected="variationSelected"
5279        selected-product-set-data="selectedProductSetData"
5280        wishlist-item="wishlistItem"
5281        is-item-in-wishlist="isItemInWishlist"
5282        class="btn-add-wishlist"
5283        ng-class="{ 'is-active': isItemInWishlist }"
5284        ng-click = "toggleWishlistItem()"
5285      >
5286        <i class="fa fa-heart-o"></i>
5287        <i class="fa fa-heart"></i>
5288        <svg class="icons icon-heart-v2">
5289          <use xlink:href="#icon-heart-v2"></use>
5290        </svg>
5291        <span>Add to Wishlist</span>
5292        
5293          <div class="Tooltip-wishlistTooltip">
5294            <div class="Tooltip-wishlistTooltip-content">
5295              <a ng-click="toLoginPage($event, '/users/sign_in')">
5296                Sign in/up now
5297              </a>
5298            </div>
5299          </div>
5300        
5301      </sl-wishlist-button>
5302    </div>
5303  </div>
5304
5305
5306          </div>
5307        </div>
5308      </div>
5309    </div>
5310  </div>
5311  <!-- end of No Variation && Add to Cart -->
5312
5313
5314<!-- Warning: too much quantity -->
5315<div class="txt-notify" ng-show="addItemQuantity > 99999">
5316  <div class="out-of-stock">products.quantity_limit99999</div>
5317</div>
5318
5319<!-- Warning: not valid quantity -->
5320<div class="txt-notify" ng-show="invalidQuantity">
5321  <div class="out-of-stock">This quantity is invalid, please enter a valid quantity.</div>
5322</div>
5323
5324<!-- Out of Stock -->
5325<div class="txt-notify" ng-show="showOutOfStockHint()">
5326  <div class="out-of-stock txt-sold-out">Sold Out</div>
5327</div>
5328
5329<!-- cannot add to cart -->
5330<div class="txt-notify js-popup-not-enough-stock" ng-switch="orderQuantityStatus" ng-show="hasStock && !isOutOfStockOrderable()">
5331  <span ng-switch-when="out_of_stock">
5332    <div class="out-of-stock">
5333      <p class="reset-bottom-to-zero">Not enough stock.
5334Your item was not added to your cart.
5335</p>
5336    </div>
5337  </span>
5338  <span ng-switch-when="low_stock">
5339    <div class="out-of-stock">
5340      <p class="reset-bottom-to-zero">Not enough stock.
5341Please adjust your quantity.
5342</p>
5343    </div>
5344  </span>
5345  <span ng-switch-when="out_of_orderable_quantity">
5346    <div class="out-of-stock">
5347      <p class="reset-bottom-to-zero">{{'products.quick_cart.out_of_number_hint'| translate}}</p>
5348    </div>
5349  </span>
5350  <span ng-switch-when="includes_preorder">
5351    <div class="out-of-stock">
5352      <p class="reset-bottom-to-zero">{{'product.preorder_limit.hint'| translate}}</p>
5353    </div>
5354  </span>
5355</div>
5356<span class="txt-notify js-popup-purchase-limit" ng-if="reachedPurchaseLimit">
5357  <div class="out-of-stock">
5358    <p class="reset-bottom-to-zero">Limit -1 per order.</p>
5359  </div>
5360</span>
5361<div class="out-of-stock txt-notify js-popup-item-left" ng-if="showStockQuantityHint()">
5362  <p class="with-addon">{{'products.quick_cart.quantity_of_stock_hint'| translate : {message: quantityOfStock} }}</p>
5363</div>
5364
5365<div ng-if="!(state.checkoutReady && hasStock && state.productSetCheckoutReady)">
5366  <div ng-if="productStockInitializedChecked && shouldShowMessageMeBtn()" class="wrap-message-btn">
5367    <div class="messagetobuy dark-secondary">Please message the shop owner for order details.</div>
5368    <button
5369      class="btn btn-custom btn-color-primary js-btn-contact-us" ng-click="showMessageForm()">
5370      MESSAGE
5371    </button>
5372  </div>
5373  <div class="detail-product-wishlist">
5374    
5375  <div ng-controller="ProductWishlistController">
5376    <div class="Back-in-stock-addItem-block">
5377      <back-in-stock-button
5378        product="product"
5379        wishlist-item="wishlistItem"
5380        is-item-in-back-in-stock="isItemInBackInStock"
5381        ng-if="shouldShowBackInStockBtn() && !(state.checkoutReady&&hasStock)&&state.productSetCheckoutReady"
5382      >
5383        <button
5384          ng-click="toggleBackInStock()"
5385          class="btn-add-back-in-stock btn-color-primary btn btn-custom js-btn-back-in-stock"
5386          ng-class="{ 'is-active': isItemInBackInStock }"
5387        >
5388          <div id="back-in-stock-content">
5389            <div class="font-style" ng-if="isItemInBackInStock">In Stock Notification On</div>
5390            <div class="font-style" ng-if="!isItemInBackInStock">Notify When in Stock</div>
5391          </div>
5392        </button>
5393        
5394          <div class="Tooltip-backInStockTooltip">
5395            <div class="Tooltip-backInStockTooltip-content">
5396              <a href='/users/sign_in'>Sign in/up now</a>
5397            </div>
5398          </div>
5399        
5400      </back-in-stock-button>
5401    </div>
5402    <div class="Wishlist-addItem-block "
5403      ng-if="!(state.checkoutReady&amp;&amp;hasStock)&amp;&amp;state.productSetCheckoutReady"
5404    >
5405      <sl-wishlist-button
5406        get-target-wishlist-item="getTargetWishlistItem()"
5407        product="product"
5408        variation-selected="variationSelected"
5409        selected-product-set-data="selectedProductSetData"
5410        wishlist-item="wishlistItem"
5411        is-item-in-wishlist="isItemInWishlist"
5412        class="btn-add-wishlist"
5413        ng-class="{ 'is-active': isItemInWishlist }"
5414        ng-click = "toggleWishlistItem()"
5415      >
5416        <i class="fa fa-heart-o"></i>
5417        <i class="fa fa-heart"></i>
5418        <svg class="icons icon-heart-v2">
5419          <use xlink:href="#icon-heart-v2"></use>
5420        </svg>
5421        <span>Add to Wishlist</span>
5422        
5423          <div class="Tooltip-wishlistTooltip">
5424            <div class="Tooltip-wishlistTooltip-content">
5425              <a ng-click="toLoginPage($event, '/users/sign_in')">
5426                Sign in/up now
5427              </a>
5428            </div>
5429          </div>
5430        
5431      </sl-wishlist-button>
5432    </div>
5433  </div>
5434
5435
5436  </div>
5437</div>
5438<!--cart actions-->
5439
5440          </div>
5441
5442          
5443
5444          <div class="ProductDetail-additionalInfo accordion-box">
5445            <div class="ProductDetail-description accordion-item active">
5446              <div class="ProductDetail-description-title accordion-title js-accordion-title" data-tab-name="description"><span>Description</span></div>
5447              <div class="ProductDetail-description-content accordion-content">
5448                
5449
5450
5451        <!-- START SHOPLINE RICH CONTENT -->
5452          <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
5453<html><body>
5454<span style="font-size: medium;">More than just a calendar, the 2026 edition reveals a true olfactory wardrobe: a collection of fragrances to discover, wear, and combine according to your desires, your mood, and every occasion. 24 bottles of 15ml, totaling 360ml of scented surprises, to reinvent your scent day after day.</span><div><span style="font-size: medium;"><br></span></div>
5455<div>
5456<div><span style="font-size: medium;">Behind the 24 doors, a generous olfactory palette is revealed, where floral, musky, woody, solar, and gourmand scents meet. Bright and delicate fragrances stand alongside more enveloping, sensual, or comforting trails, allowing you to change your perfume as naturally as you change your outfit.</span></div>
5457<div><span style="font-size: medium;"><br></span></div>
5458</div>
5459<div><span style="font-size: medium;"><br></span></div>
5460<div>
5461<div><span style="font-size: medium; font-weight: bold;">Eau de parfum</span></div>
5462<div><span style="font-size: medium;"><br></span></div>
5463<div><span style="font-size: medium; font-weight: bold;">Au bout de la nuit – 15 ml</span></div>
5464<div>
5465<div><span style="font-size: medium;">TOP • Ylang-ylang, Lemon, Plum, Mandarin, Bergamot</span></div>
5466<div><span style="font-size: medium;">HEART • Jasmine, Rose, Geranium, White flowers</span></div>
5467<div><span style="font-size: medium;">BASE • Sandalwood, Musk, Patchouli</span></div>
5468</div>
5469<div><span style="font-size: medium;"><br></span></div>
5470<div><span style="font-size: medium; font-weight: bold;">Ça baigne pour moi – 15 ml</span></div>
5471<div>
5472<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">AQUATIC EAU DE PARFUM</span></p>
5473<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">TOP • Lemon, Bergamot, Aromatic notes</span></p>
5474<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">HEART • Marine notes, Apple, Tobacco, Sandalwood</span></p>
5475<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">BASE • Musk, Amber, Oakmoss</span></p>
5476</div>
5477<div><span style="font-size: medium;"><br></span></div>
5478<div><span style="font-size: medium; font-weight: bold;">Jeu dangereux – 15 ml</span></div>
5479<div>
5480<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">WOODY EAU DE PARFUM</span></p>
5481<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">TOP • Cardamom, Bergamot, Lemon</span></p>
5482<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">HEART • Cedar, Cashmere wood, Honey notes</span></p>
5483<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">BASE • Vetiver, Vanilla, Sandalwood, Musk</span></p>
5484</div>
5485<div><span style="font-size: medium;"><br></span></div>
5486<div><span style="font-size: medium; font-weight: bold;">La femme parfaite – 15 ml</span></div>
5487<div>
5488<div><span style="font-size: medium;">FLORAL EAU DE PARFUM </span></div>
5489<div><span style="font-size: medium;">TOP • Lychee, Pink berries, Orange, Blackcurrant</span></div>
5490<div><span style="font-size: medium;">HEART • Peach, Lily of the Valley, Rose, Violet</span></div>
5491<div><span style="font-size: medium;">BASE • Vanilla, Musk, Patchouli, Raspberry, Woody</span></div>
5492</div>
5493<div><span style="font-size: medium;"><br></span></div>
5494<div><span style="font-size: medium; font-weight: bold;">L'amour est dans l'air – 15 ml</span></div>
5495<div>
5496<div><span style="font-size: medium;">FLORAL EAU DE PARFUM </span></div>
5497<div><span style="font-size: medium;">TOP • Blackberry, Apple, Bergamot, Jasmine</span></div>
5498<div><span style="font-size: medium;">HEART • Orange blossom, Peony, Lily of the valley</span></div>
5499<div><span style="font-size: medium;">BASE • Sandalwood, Patchouli, Musky, Vanilla</span></div>
5500</div>
5501<div><span style="font-size: medium;"><br></span></div>
5502<div><span style="font-size: medium; font-weight: bold;">Les secrets de Margot – 15 ml</span></div>
5503<div>
5504<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">FLORAL EAU DE PARFUM</span><br></p>
5505<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">TOP • Pear, Bergamot</span></p>
5506<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">HEART • Rose, Jasmine, Morning Dew</span></p>
5507<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">
5507BASE • Vanilla, White peach, Blond wood</span></p>
5508</div>
5509<div><span style="font-size: medium;"><br></span></div>
5510<div><span style="font-size: medium; font-weight: bold;">Minuit dans tes bras – 15 ml</span></div>
5511<div>
5512<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">FLORAL EAU DE PARFUM</span><br></p>
5513<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">TOP • Pink Pepper, Peach</span></p>
5514<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">HEART • Jasmine, Sandalwood, Milky notes</span></p>
5515<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">BASE • Amber, Benzoin, Vanilla, Musks</span></p>
5516</div>
5517<div><span style="font-size: medium;"><br></span></div>
5518<div><span style="font-size: medium; font-weight: bold;">Nous les femmes – 15 ml</span></div>
5519<div>
5520<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">FRUITY</span><span style="font-size: medium;"> EAU DE PARFUM</span></p>
5521<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">TOP • Blackcurrant, Candy apple, Passion fruit</span></p>
5522<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">HEART • Raspberry, Rose, Jasmine</span></p>
5523<p class="MsoNormal" style="margin: 0cm;"><span style="font-size: medium;">BASE • Musk, Sandalwood, Vanilla</span></p>
5524</div>
5525<div><span style="font-size: medium;"><br></span></div>
5526<div><span style="font-size: medium; font-weight: bold;">Nuit féerique – 15 ml</span></div>
5527<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, LINALYL ACETATE, PINENE, VANILLIN, LINALOOL, ROSE KETONES, HEXAMETHYLINDANOPYRAN, MYROXYLON PEREIRAE OIL/EXTRACT, BETA-CARYOPHYLLENE, BENZYL BENZOATE, TERPINOLENE, CITRAL, BENZYL CINNAMATE, CITRONELLOL, JUNIPERUS VIRGINIANA OIL, CEDRUS ATLANTICA OIL/EXTRACT.</span></div>
5528<div><span style="font-size: medium;"><br></span></div>
5529<div><span style="font-size: medium;">Rêve musqué – 15 ml</span></div>
5530<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), JUNIPERUS VIRGINIA OIL, AMYL SALICYLATE, LINALOOL, ROSE KETONES, HEXADECANOLACTONE, LINALYL ACETATE, HYDROXYCITRONELLAL, TRIMETHYLBENZENEPROPANOL, CINNAMYL ALCOHOL, BENZALDEHYDE, ISOEUGENOL, ALPHA-ISOMETHYL IONONE.</span></div>
5531<div><span style="font-size: medium;"><br></span></div>
5532<div><span style="font-size: medium;">Sous les étoiles – 15 ml</span></div>
5533<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), HEXAMETHYLINDANOPYRAN, LINALYL ACETATE, LINALOOL, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, ALPHA-ISOMETHYL IONONE, VANILLIN, POGOSTEMON CABLIN OIL, COUMARIN, GERANYL ACETATE, PINENE, BENZALDEHYDE, CITRONELLOL, ROSE KETONE, BETA-CARYOPHYLLENE, ANISE ALCOHOL, TRIMETHYLCYCLOPENTENYL METHYLISOPENTENOL.</span></div>
5534<div><span style="font-size: medium;"><br></span></div>
5535<div><span style="font-size: medium;">Sous un soleil doré – 15 ml</span></div>
5536<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, LINALYL ACETATE, LIMONENE, HEXAMETHYLINDANOPYRAN, CITRUS AURANTIUM BERGAMIA PEEL OIL, CITRUS LIMON OIL/EXTRACT, POGOSTEMON CABLIN OIL, PINENE, COUMARIN, CITRONELLOL, ALPHA-ISOMETHYL IONONE, BETA-CARYOPHYLLENE, EUGENOL, ROSE KETONE, CITRAL, GERANYL ACETATE, TERPINOLENE, HEXYL CINNAMAL, ALPHA-TERPINENE, ACETYL CEDRENE, CITRUS AURANTIUM FLOWER OIL, TERPINEOL, GERANIOL, VANILLIN.</span></div>
5537<div><span style="font-size: medium;"><br></span></div>
5538<div><span style="font-size: medium;">Tombé du ciel – 15 ml</span></div>
5539<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), VANILLIN, HEXAMETHYLINDANOPYRAN, HEXYL CINNAMAL, LINALYL ACETATE, LINALOOL, POGOSTEMON CABLIN OIL, HYDROXYCITRONELLAL, LIMONENE, CITRUS AURANTIUM PEEL OIL, GERANIOL, BETA-CARYOPHYLLENE, CITRUS MEDICA LIMONUM PEEL OIL, ROSE KETONE, GERANYL ACETATE, PINENE, CITRUS AURANTIUM FLOWER OIL, CITRAL.</span></div>
5540<div><span style="font-size: medium;"><br></span></div>
5541<div><span style="font-size: medium;">Un air de malice – 15 ml</span></div>
5542<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), HEXAMETHYLINDANOPYRAN, LINALYL ACETATE, LINALOOL, HYDROXYCITRONELLAL, POGOSTEMON CABLIN OIL, LIMONENE, VANILLIN, HEXADECANOLACTONE, CITRONELLOL, GERANYL ACETATE, PINENE, COUMARIN, ROSE KETONE, CINNAMAL, CITRAL, BENZYL BENZOATE, EUGENOL.</span></div>
5543<div><span style="font-size: medium;"><br></span></div>
5544<div><span style="font-size: medium;">Week-end à Arcachon – 15 ml</span></div>
5545<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXAMETHYLINDANOPYRAN, LINALOOL, LIMONENE, LINALYL ACETATE, GERANYL ACETATE, CITRUS AURANTIUM PEEL OIL, EUGENOL, VANILLIN, HEXYL CINNAMAL, GERANIOL, PINENE, BETA-CARYOPHYLLENE, CITRONELLOL, HYDROXYCITRONELLAL, ISOEUGENOL, TERPINOLENE.</span></div>
5546<div><span style="font-size: medium;"><br></span></div>
5547<div><span style="font-size: medium;">Week-end à Biarritz – 15 ml</span></div>
5548<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXAMETHYLINDANOPYRAN, LINALOOL, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, LINALYL ACETATE, CITRONELLOL, JUNIPERUS VIRGINIANA OIL, CITRUS AURANTIUM PEEL OIL, EBANOL, ALPHA-ISOMETHYL IONONE, HYDROXYCITRONELLAL, GERANYL ACETATE, PINENE, GERANIOL, ISOEUGENYL ACETATE, ROSE KETONE, BETA-CARYOPHYLLENE, TERPINOLENE, TERPINEOL, CITRAL, ALPHA-TERPINENE.</span></div>
5549<div><span style="font-size: medium;"><br></span></div>
5550<div><span style="font-size: medium;">Week-end à Saint-Tropez – 15 ml</span></div>
5551<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, VANILLIN, COUMARIN, LIMONENE, CITRUS AURANTIUM PEEL OIL, BENZALDEHYDE, CITRUS LIMON PEEL OIL, ROSE KETONES, PINENE, TRIMETHYLCYCLOPENTENYL METHYLISOPENTENOL.</span></div>
5552<div><span style="font-size: medium;"><br></span></div>
5553<div><span style="font-size: medium;">Week-end au Ferret – 15 ml</span></div>
5554<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXYL CINNAMAL, LINALOOL, LINALYL ACETATE, COUMARIN, EBANOL, LIMONENE, CITRUS AURANTIUM PEEL OIL, CITRUS MEDICA LIMONUM PEEL OIL, ROSE KETONE, BENZALDEHYDE, GERANYL ACETATE, HYDROXYCITRONELLAL, TERPINEOL, PINENE, VANILLIN.</span></div>
5555<div><span style="font-size: medium;"><br></span></div>
5556<div><span style="font-size: medium;">Week-end au paradis – 15 ml</span></div>
5557<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), AMYL SALICYLATE, VANILLIN, TERPINEOL, DI
5557METHYL PHENETHYL ACETATE, ISOEUGENYL ACETATE, HEXADECANOLACTONE, GERANYL ACETATE.</span></div>
5558<div><span style="font-size: medium;"><br></span></div>
5559<div><span style="font-size: medium;">Alors on s'aime – 15 ml</span></div>
5560<div><span style="font-size: medium;">INGREDIENTS: ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HYDROXYCITRONELLAL, VANILLIN, LINALYL ACETATE, LIMONENE, COUMARIN, CITRUS AURANTIUM BERGAMIA FRUIT OIL, ROSE KETONE, PINENE, LINALOOL, GERANYL ACETATE.</span></div>
5561<div><span style="font-size: medium;"><br></span></div>
5562<div><span style="font-size: medium;">Hair care and fragrances</span></div>
5563<div><span style="font-size: medium;"><br></span></div>
5564<div><span style="font-size: medium;">Dry oil Week-end au Ferret – 15 ml</span></div>
5565<div><span style="font-size: medium;">COCO-CAPRYLATE/CAPRATE, PRUNUS ARMENIACA KERNEL OIL, SIMMONDSIA CHINENSIS SEED OIL, PRUNUS AMYGDALUS DULCIS OIL, PARFUM, HELIANTHUS ANNUUS SEED OIL, TOCOPHEROL, HEXYL CINNAMAL, COUMARIN, LIMONENE, HYDROXYCITRONELLAL, LINALOOL.</span></div>
5566<div><span style="font-size: medium;"><br></span></div>
5567<div><span style="font-size: medium;">Hair perfume Baisers et coquillages – 15 ml</span></div>
5568<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), GLYCERIN, ORYZA SATIVA (RICE) EXTRACT, POTASSIUM SORBATE, CITRIC ACID, SORBIC ACID, TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, HEXAMETHYLINDANOPYRAN, VANILLIN, LINALYL ACETATE, HYDROXYCITRONELLAL, CITRUS AURANTIUM BERGAMIA PEEL OIL, COUMARIN, LIMONENE, EBANOL, GERANYL ACETATE, JUNIPERUS VIRGINIANA OIL, CITRONELLOL, DIMETHYL PHENETHYL ACETATE, PINENE, CITRUS AURANTIUM PEEL OIL, GERANIOL, ALPHA-ISOMETHYL IONONE, POGOSTEMON CABLIN OIL, ROSE KETONE, BENZALDEHYDE.</span></div>
5569<div><span style="font-size: medium;"><br></span></div>
5570<div><span style="font-size: medium;">Hair perfume Onde sensuelle – 15 ml</span></div>
5571<div><span style="font-size: medium;">ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), GLYCERIN, ORYZA SATIVA (RICE) EXTRACT, POTASSIUM SORBATE, CITRIC ACID, SORBIC ACID, HEXAMETHYLINDANOPYRAN, TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, JUNIPERUS VIRGINIANA OIL, ALPHA-ISOMETHYL IONONE, LIMONENE, CITRUS AURANTIUM PEEL OIL, BENZYL ALCOHOL, VANILLIN, LINALYL ACETATE, DIMETHYL PHENETHYL ACETATE, ROSE KETONES, COUMARIN, PINENE, HYDROXYCITRONELLAL, HEXYL CINNAMAL, CITRONELLOL.</span></div>
5572<div><span style="font-size: medium;"><br></span></div>
5573<div><span style="font-size: medium;">Room fragrance</span></div>
5574<div><span style="font-size: medium;">Jardin de mon enfance – 15 ml</span></div>
5575</div>
5576<div><span style="font-size: medium;"><br></span></div>
5577<div><span style="font-size: medium;"><br></span></div>
5578<div>
5579<div><span style="font-weight: bold; color: rgb(151, 131, 106); font-size: medium;">+ USAGE TIPS</span></div>
5580<div><span style="font-size: medium;"><br></span></div>
5581<div><span style="font-size: medium;">・Spray the perfume about 10 cm from your skin. Focus on hot spots (wrists, hollows of the arms, behind the ears) for long-lasting wear of your perfume.</span></div>
5582<div><span style="font-size: medium;"><br></span></div>
5583<div><span style="font-size: medium;">・Take your 30ml perfume everywhere to reperfume yourself as you wish.</span></div>
5584<div><span style="font-size: medium;"><br></span></div>
5585<div><span style="font-size: medium;">・Create your own fragrance by mixing two complementary scents!</span></div>
5586<div><span style="font-size: medium;"><br></span></div>
5587<div><span style="font-size: medium;">・Do not spray on eyes or irritated skin. For external use only.</span></div>
5588<div><span style="font-size: medium;"><br></span></div>
5589<div><span style="font-size: medium;">・Keep away from heat and flame.</span></div>
5590</div>
5591</body></html>
5592
5593        <!-- END SHOPLINE RICH CONTENT -->
5594      
5595
5596              </div>
5597            </div>
5598            
5599            <div class="ProductDetail-shipping-payment accordion-item">
5600              <div class="ProductDetail-shipping-payment-title accordion-title js-accordion-title" data-tab-name="deliveryPayment"><span>Shipping &amp; Payment</span></div>
5601              <div class="ProductDetail-shipping-payment-content accordion-content">
5602                <h3>Delivery Options</h3>
5603                <ul>
5604                  
5605                    <li>Tcat - Room Temp.</li>
5606                  
5607                    <li>Tcat - Room Temp. (Collect on Delivery)</li>
5608                  
5609                    <li>Tcat - Room Temp.</li>
5610                  
5611                    <li>Tcat - Room Temp. (Collect on Delivery)</li>
5612                  
5613                    <li>到店自取(僅供預約客使用,官網客請勿選擇)</li>
5614                  
5615                </ul>
5616                <h3>Payment Options</h3>
5617                <ul>
5618                  
5619                    <li>Credit Card Installment</li>
5620                  
5621                    <li>銀行轉帳</li>
5622                  
5623                    <li>LINE Pay</li>
5624                  
5625                    <li>Apple Pay</li>
5626                  
5627                    <li>Pay on Family Mart Store Pickup (C2C)</li>
5628                  
5629                    <li>Credit Card</li>
5630                  
5631                    <li>Pay on 7-11 Store Pickup (C2C)</li>
5632                  
5633                    <li>Tcat (Collect on Delivery)</li>
5634                  
5635                </ul>
5636              </div>
5637            </div>
5638            
5639              <div class="ProductDetail-customer-reviews accordion-item active" id='product-review-section'>
5640                <div class="ProductDetail-customer-reviews-title accordion-title js-accordion-title" data-tab-name="review">
5641                  <span>Customer Reviews</span>
5642                </div>
5643                <div class="ProductDetail-customer-reviews-content accordion-content">
5644                  <div class='product-reviews-container' ng-cloak>
5645  <div
5646    class="review-summary-source"
5647    ng-if="amazonProductReviewEnabled || productReviewEnabled"
5648  >
5649    <select
5650      ng-change='setRatingSource(ratingSource)'
5651      ng-model='ratingSource'
5652      class='selectpicker js-selectpicker form-control form-control-sm form-control-inline'
5653    >
5654      
5655        <option value='shopline'>Rating Source: This Shop</option>
5656      
5657      
5658    </select>
5659  </div>
5660
5661  
5662    <shopline-product-review></shopline-product-review>
5663  
5664
5665  
5666
5667  <div class='product-review-no-data' ng-if="shouldShowNoReviewsMsg()">
5668    No review for this product
5669  </div>
5670</div>
5671
5672                </div>
5673              </div>
5674            
5675          </div>
5676        </div>
5677      </div>
5678    </div>
5679
5680    
5681    
5682      
5683        
5684      
5685    
5686    
5687      <div class="ProductDetail-relatedProducts" id="relatedProduct">
5688        <h3 class="ProductDetail-relatedProducts-title">You might also like...</h3>
5689        <div class="ProductDetail-relatedProducts-list" id="relatedProductList">
5690          <lazyload-related-products data-product-id="6aa36e90de77e200134fb066" data-page-type="product_detail">
5691            
5692              
5693                <div class="Product-item autofill-item">
5694                  <div class="Image-boxify">
5695                    <div class="Image-boxify-image loading-placeholder loading-image"></div>
5696                  </div>
5697                  <span class="loading-placeholder loading-title"></span>
5698                  <span class="loading-placeholder loading-price"></span>
5699                </div>
5700              
5701                <div class="Product-item autofill-item">
5702                  <div class="Image-boxify">
5703                    <div class="Image-boxify-image loading-placeholder loading-image"></div>
5704                  </div>
5705                  <span class="loading-placeholder loading-title"></span>
5706                  <span class="loading-placeholder loading-price"></span>
5707                </div>
5708              
5709                <div class="Product-item autofill-item">
5710                  <div class="Image-boxify">
5711                    <div class="Image-boxify-image loading-placeholder loading-image"></div>
5712                  </div>
5713                  <span class="loading-placeholder loading-title"></span>
5714                  <span class="loading-placeholder loading-price"></span>
5715                </div>
5716              
5717                <div class="Product-item autofill-item">
5718                  <div class="Image-boxify">
5719                    <div class="Image-boxify-image loading-placeholder loading-image"></div>
5720                  </div>
5721                  <span class="loading-placeholder loading-title"></span>
5722                  <span class="loading-placeholder loading-price"></span>
5723                </div>
5724              
5725            
5726          </lazyload-related-products>
5727        </div>
5728      </div>
5729    
5730
5731  </div>
5732  <div ng-show="state.showStickyButton" class="js-sticky-cart-button-container"></div>
5733</div>
5734
5735    </div>
5736
5737    
5738    
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751  
5752    
5753
5754    
5755      
5756      
5757      
5758        <div id="shopline-section-footer">
5759          
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782<style type="text/css">
5783.section-width{padding:30px 15px;width:100%;margin:0 auto}.section-width.section-full-width{padding:0;margin:0;width:100%}@media (min-width:768px){.section-width{width:750px}}@media (min-width:992px){.section-width{width:970px}}@media (min-width:1200px){.section-width{width:1170px}}#shopline-section-footer{background-color:var(--footer-background,#fff);color:var(--footer-text,#333);font-size:calc(1.4rem * var(--font-size-paragraph, 1))}#shopline-section-footer>.section-width{border-top:1px solid hsla(var(--footer-background-h,0deg),var(--footer-background-s,0%),80%,.5)}#shopline-section-footer .NavigationBar-actionMenu-button{font-size:calc(1.4rem * var(--font-size-paragraph, 1));color:var(--footer-text,#333)}#shopline-section-footer .NavigationBar-actionMenu-button svg{fill:var
5783(--footer-text,#333)}#shopline-section-footer .NavigationBar-actionMenu-button:hover{color:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),40%,1)}#shopline-section-footer .NavigationBar-actionMenu-button:hover svg{fill:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),40%,1)}#shopline-section-footer .NavigationBar-actionMenu-button .NavigationBar-actionMenu-dropdown{background-color:var(--footer-background,#fff);border-color:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),80%,.2)}#shopline-section-footer .NavigationBar-actionMenu-button .NavigationBar-actionMenu-dropdown li{color:var(--footer-text,#333)}#shopline-section-footer .NavigationBar-actionMenu-button .NavigationBar-actionMenu-dropdown li:hover{color:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),40%,1)}.footer-wrapper .NavigationBar-actionMenu-button.init .NavigationBar-actionMenu-dropdown,.footer-wrapper .NavigationBar-actionMenu-button.init .os-content{visibility:visible}.footer-wrapper .NavigationBar-actionMenu-button .NavigationBar-actionMenu-dropdown,.footer-wrapper .NavigationBar-actionMenu-button .os-content{visibility:hidden}.footer-wrapper .NavigationBar-actionMenu-button svg{width:22px;height:22px;vertical-align:middle}.footer-wrapper .footer-grid-items{display:flex;text-align:center;word-break:break-word}.footer-wrapper .footer-grid-items.--text_align_left{text-align:left}.footer-wrapper .footer-grid-items.--text_align_right{text-align:right}.footer-wrapper .footer-grid-items .footer-grid-item{flex-grow:1;width:25%}.footer-wrapper .footer-grid-items a{color:var(--footer-text,#333)}.footer-wrapper .footer-grid-items .text-title{font-family:var(--font-family-title);font-size:calc(1.8rem * var(--font-size-title, 1));margin-bottom:30px}.footer-wrapper .footer-grid-items p:not(.text-title){margin:0;padding:0}.footer-wrapper .footer-payment-icons{padding:15px;text-align:center}.footer-wrapper .footer-payment-icons.--text_align_left{text-align:left}.footer-wrapper .footer-payment-icons.--text_align_right{text-align:right}.footer-wrapper .footer-payment-icons img{display:inline-block;width:62px;vertical-align:baseline}.footer-wrapper .footer-social-icon-wrapper svg,.footer-wrapper .footer-social-icon-wrapper svg *{fill:var(--footer-icon,#333)}.footer-selector{border-top:1px solid hsla(var(--footer-background-h,0deg),var(--footer-background-s,0%),80%,.5);margin:0 15px;padding:30px 0;text-align:center}.footer-selector.--text_align_left{text-align:left}.footer-selector.--text_align_right{text-align:right}.footer-selector .NavigationBar-actionMenu-button{display:inline-block;width:initial;margin-right:20px}.footer-anti-fraud{text-align:center;color:var(--anti-fraud-text,#fff);background-color:var(--anti-fraud-background,#2b3864);padding:20px 0;font-size:calc(1.2rem * var(--font-size-paragraph, 1))}.footer-anti-fraud.--text_align_left{text-align:left}.footer-anti-fraud.--text_align_right{text-align:right}.footer-copyright{text-align:center;color:var(--copyright-text,#fff);background-color:var(--copyright-background,#2b3864);padding:20px 0;font-size:calc(1.2rem * var(--font-size-paragraph, 1))}.footer-copyright.--text_align_left{text-align:left}.footer-copyright.--text_align_right{text-align:right}.footer-copyright .section-width{padding:0 30px}.social-content{margin-bottom:20px}.footer-grid-item__image{height:100%;width:100%;position:absolute;top:0;left:0;object-fit:cover}.footer__mask{position:relative}.footer__mask.--with-padding{padding-bottom:100%}.footer__mask::after{content:'';display:block;width:100%;height:100%;position:absolute;top:0;left:0}.footer__mask--0::after{background-color:rgba(0,0,0,0)}.footer__mask--20::after{background-color:rgba(0,0,0,.2)}.footer__mask--40::after{background-color:rgba(0,0,0,.4)}.footer__mask--60::after{background-color:rgba(0,0,0,.6)}.footer__mask--80::after{background-color:rgba(0,0,0,.8)}@media screen and (max-width:767px){.footer-grid-items{flex-direction:column}.footer-wrapper .footer-grid-items .footer-grid-item{width:100%}}
5784subscription-form{word-break:break-word}.subscription__content,.subscription__title{padding:15px 0;margin:0}@media (min-width:768px){.subscription__content,.subscription__title{padding:15px}}.subscription__title{font-family:var(--font-family-title);font-size:calc(2.4rem * var(--font-size-title, 1));font-weight:400;letter-spacing:inherit;text-transform:none}.subscription__content,.subscription__content>*{font-size:calc(1.6rem * var(--font-size-paragraph, 1));line-height:2rem}.subscription__content a{color:var(--page-text-link,#3493fb)}.subscription__form{padding:15px 0;display:flex;flex-direction:column;gap:15px}@media (min-width:768px){.subscription__form{flex-direction:row;align-items:flex-start;padding:15px}}.subscription__form--error .subscription__input{border-color:#a94442}.subscription__form--error .subscription__error-message{display:block}.subscription__error-message{display:none;color:#a94442;text-align:left}.subscription__input-container{flex-grow:1;flex-shrink:0}.subscription__input{color:var(--page-text,#333);border-color:hsla(var(--page-background-h,0deg),var(--page-background-s,0%),80%,.5);background-color:var(--page-background,#fff);font-size:calc(1.4rem * var(--font-size-paragraph, 1));min-height:38px}.subscription__button{min-height:38px;padding:4px 40px;border-radius:3px;text-align:center;text-decoration:none;font-size:calc(1.6rem * var(--font-size-paragraph, 1));color:var(--primary-text,#fff);background-color:var(--primary-background,var(--primary-color,#2b3864));word-break:break-word;border:none}.subscription__button:hover{background-color:hsla(var(--primary-background-h,226.3157894737deg),var(--primary-background-s,39.8601398601%),60%,.8)}@media (max-width:767px){.subscription__button{width:100%;padding:6px 12px}}#shopline-section-footer .subscription__input{color:var(--footer-text,#333);border-color:hsla(var(--footer-background-h,0deg),var(--footer-background-s,0%),80%,.5);background-color:var(--footer-background,#fff);font-size:calc(1.2rem * var(--font-size-paragraph, 1))}#shopline-section-footer .subscription__input::-moz-placeholder{color:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),60%,1)}#shopline-section-footer .subscription__input::placeholder{color:hsla(var(--footer-text-h,0deg),var(--footer-text-s,0%),60%,1)}#shopline-section-footer .subscription__title{padding-top:0;padding-left:0;padding-right:0;font-size:calc(1.8rem * var(--font-size-title, 1))}#shopline-section-footer .subscription__content{padding-left:0;padding-right:0}#shopline-section-footer .subscription__content,#shopline-section-footer .subscription__content>*{font-size:calc(1.4rem * var(--font-size-paragraph, 1));line-height:2.1rem}#shopline-section-footer .subscription__form{flex-wrap:wrap;padding-left:0;padding-right:0}#shopline-section-footer .subscription__button{flex-grow:1;width:auto;max-width:100%}
5785</style>
5786
5787
5788
5789<style type="text/css">
5790  #footer-custom-padding { padding: 15px; }
5791  @media screen and (max-width: 767px) { #footer-custom-padding { padding: 0; } }
5792  #shopline-section-footer .section-width { padding-top: 30px; padding-bottom: 30px; }
5793  @media (min-width: 768px) { #shopline-section-footer .section-width { padding-top: 30px; padding-bottom: 30px; } }
5794  .footer-wrapper .footer-grid-items .footer-grid-item { padding: 15px 15px; }
5795  @media (min-width: 768px) { .footer-wrapper .footer-grid-items .footer-grid-item { padding: 15px 15px; } }
5796</style>
5797
5798
5799<div class="section-width">
5800  <div class="footer-wrapper">
5801    <div id="footer-custom-padding">
5802      <div class="footer-grid-items --text_align_left">
5803        
5804          <div class="footer-grid-item" ng-non-bindable>
5805
5806            
5807            
5808              <p class="text-title">About</p>
5809              <p>
5809Brand Story<br />Our Values<br />Our Team</p>
5810            
5811
5812            
5813            
5814
5815            
5816            
5817
5818            
5819            
5820
5821            
5822            
5823
5824          </div>
5825        
5826          <div class="footer-grid-item" ng-non-bindable>
5827
5828            
5829            
5830              <p class="text-title">Help</p>
5831              <p>FAQ<br /><a href='/about/delivery-policy'>Delivery & Shipping</a><br />Payment<br /><a href='/about/policy'>Return Policy</a><br />Terms & Conditions</p>
5832            
5833
5834            
5835            
5836
5837            
5838            
5839
5840            
5841            
5842
5843            
5844            
5845
5846          </div>
5847        
5848      </div>
5849
5850      
5851      
5852
5853      
5854      
5855        <div class="footer-selector --text_align_left">
5856          
5857            <div class="NavigationBar-actionMenu-button App-currencyDropdown dropdown" dropdown data-nosnippet>
5858              <div class="dropdown-toggle" dropdown-toggle>
5859                <span class="Label"><span class="fa fa-dollar"></span></span>
5860                <span class="fa fa-angle-down"></span>
5861              </div>
5862              <ul class="NavigationBar-actionMenu-dropdown dropdown-menu sl-currency-chooser">
5863                
5864                  <li class="List-item sl-currency-chooser-currency" href="#hkd">$ HKD</li>
5865                
5866                  <li class="List-item sl-currency-chooser-currency" href="#mop">P MOP</li>
5867                
5868                  <li class="List-item sl-currency-chooser-currency" href="#cny">Â¥ CNY</li>
5869                
5870                  <li class="List-item sl-currency-chooser-currency" href="#twd">$ TWD</li>
5871                
5872                  <li class="List-item sl-currency-chooser-currency" href="#usd">$ USD</li>
5873                
5874                  <li class="List-item sl-currency-chooser-currency" href="#sgd">$ SGD</li>
5875                
5876                  <li class="List-item sl-currency-chooser-currency" href="#eur">€ EUR</li>
5877                
5878                  <li class="List-item sl-currency-chooser-currency" href="#aud">$ AUD</li>
5879                
5880                  <li class="List-item sl-currency-chooser-currency" href="#gbp">£ GBP</li>
5881                
5882                  <li class="List-item sl-currency-chooser-currency" href="#php">₱ PHP</li>
5883                
5884                  <li class="List-item sl-currency-chooser-currency" href="#myr">RM MYR</li>
5885                
5886                  <li class="List-item sl-currency-chooser-currency" href="#thb">฿ THB</li>
5887                
5888                  <li class="List-item sl-currency-chooser-currency" href="#aed">د.إ AED</li>
5889                
5890                  <li class="List-item sl-currency-chooser-currency" href="#jpy">Â¥ JPY</li>
5891                
5892                  <li class="List-item sl-currency-chooser-currency" href="#bnd">$ BND</li>
5893                
5894                  <li class="List-item sl-currency-chooser-currency" href="#krw">₩ KRW</li>
5895                
5896                  <li class="List-item sl-currency-chooser-currency" href="#idr">Rp IDR</li>
5897                
5898                  <li class="List-item sl-currency-chooser-currency" href="#vnd">₫ VND</li>
5899                
5900                  <li class="List-item sl-currency-chooser-currency" href="#cad">$ CAD</li>
5901                
5902              </ul>
5903            </div>
5904          
5905          
5906            <div class="NavigationBar-actionMenu-button App-languageDropdown dropdown" dropdown data-nosnippet>
5907              <div class="dropdown-toggle" dropdown-toggle>
5908                <svg class="fa fa-v5-globe">
5909                  <use xlink:href="#fa-v5-globe"></use>
5910                </svg>
5911                <span class="Label">English</span>
5912                <span class="fa fa-angle-down"></span>
5913              </div>
5914              <ul class="NavigationBar-actionMenu-dropdown dropdown-menu sl-language-chooser">
5915                
5916                  <li class="List-item sl-language-chooser-language" href="#en">English</li>
5917                
5918                  <li class="List-item sl-language-chooser-language" href="#zh-hant">繁體中文</li>
5919                
5920              </ul>
5921            </div>
5922          
5923        </div>
5924      
5925
5926    </div>
5927  </div>
5928</div>
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938<script type="text/javascript">
5939var footerDropdowns = document.querySelectorAll('.footer-wrapper .NavigationBar-actionMenu-button');
5940footerDropdowns.forEach(function(dropdown) {
5941  dropdown.addEventListener('click', function(){
5942    if (!dropdown.classList.contains('init')) {
5943      setTimeout(function() {
5944        var optionMenu = dropdown.querySelector('.dropdown-menu');
5945        optionMenu.style.top = '-' + (optionMenu.clientHeight + 10 ) + 'px';
5946        dropdown.classList.add('init');
5947      })
5948    }
5949  })
5950})
5951</script>
5951
5952
5953
5954
5955
5956<script type="text/javascript">
5957function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _regenerator(){var _,e="function"==typeof Symbol?Symbol:{},t=e.iterator||"@@iterator",r=e.toStringTag||"@@toStringTag";function n(e,t,r,n){var o,i,a,u,s,c,f,p,l,t=t&&t.prototype instanceof v?t:v,t=Object.create(t.prototype);return _regeneratorDefine2(t,"_invoke",(o=e,i=r,f=n||[],p=!1,l={p:c=0,n:0,v:_,a:y,f:y.bind(_,4),d:function(e,t){return a=e,u=0,s=_,l.n=t,b}},function(e,t,r){if(1<c)throw TypeError("Generator is already running");for(p&&1===t&&y(t,r),u=t,s=r;(h=u<2?_:s)||!p;){a||(u?u<3?(1<u&&(l.n=-1),y(u,s)):l.n=s:l.v=s);try{if(c=2,a){if(h=a[e=u?e:"next"]){if(!(h=h.call(a,s)))throw TypeError("iterator result is not an object");if(!h.done)return h;s=h.value,u<2&&(u=0)}else 1===u&&(h=a.return)&&h.call(a),u<2&&(s=TypeError("The iterator does not provide a '"+e+"' method"),u=1);a=_}else if((h=(p=l.n<0)?s:o.call(i,l))!==b)break}catch(e){a=_,u=1,s=e}finally{c=1}}return{value:h,done:p}}),!0),t;function y(e,t){for(u=e,s=t,h=0;!p&&c&&!r&&h<f.length;h++){var r,n=f[h],o=l.p,i=n[2];3<e?(r=i===t)&&(s=n[(u=n[4])?5:u=3],n[4]=n[5]=_):n[0]<=o&&((r=e<2&&o<n[1])?(u=0,l.v=t,l.n=n[1]):o<i&&(r=e<3||n[0]>t||i<t)&&(n[4]=e,n[5]=t,l.n=i,u=0))}if(r||1<e)return b;throw p=!0,t}}var b={};function v(){}function o(){}function i(){}var h=Object.getPrototypeOf,e=[][t]?h(h([][t]())):(_regeneratorDefine2(h={},t,function(){return this}),h),a=i.prototype=v.prototype=Object.create(e);function u(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,i):(e.__proto__=i,_regeneratorDefine2(e,r,"GeneratorFunction")),e.prototype=Object.create(a),e}return _regeneratorDefine2(a,"constructor",o.prototype=i),_regeneratorDefine2(i,"constructor",o),_regeneratorDefine2(i,r,o.displayName="GeneratorFunction"),_regeneratorDefine2(a),_regeneratorDefine2(a,r,"Generator"),_regeneratorDefine2(a,t,function(){return this}),_regeneratorDefine2(a,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:n,m:u}})()}function _regeneratorDefine2(e,t,r,n){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}(_regeneratorDefine2=function(e,t,r,n){function o(t,r){_regeneratorDefine2(e,t,function(e){return this._invoke(t,r,e)})}t?i?i(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(o("next",0),o("throw",1),o("return",2))})(e,t,r,n)}function asyncGeneratorStep(e,t,r,n,o,i,a){try{var u=e[i](a),s=u.value}catch(e){return void r(e)}u.done?t(s):Promise.resolve(s).then(n,o)}function _asyncToGenerator(u){return function(){var e=this,a=arguments;return new Promise(function(t,r){var n=u.apply(e,a);function o(e){asyncGeneratorStep(n,t,r,o,i,"next",e)}function i(e){asyncGeneratorStep(n,t,r,o,i,"throw",e)}o(void 0)})}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,_toPropertyKey(n.key),n)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);r=r.call(e,t||"default");if("object"!=_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}function _callSuper(e,t,r){return t=_getPrototypeOf(t),_possibleConstructorReturn(e,_isNativeReflectConstruct()?Reflect.construct(t,r||[],_getPrototypeOf(e).constructor):t.apply(e,r))}function _possibleConstructorReturn(e,t){if(t&&("object"==_typeof(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _wrapNativeSuper(e){var r="function"==typeof Map?new Map:void 0;return(_wrapNativeSuper=function(e){if(null===e||!_isNativeFunction(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return _construct(e,arguments,_getPrototypeOf(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(t,e)})(e)}function _construct(e,t,r){var n;return _isNativeReflectConstruct()?Reflect.construct.apply(null,arguments):((n=[null]).push.apply(n,t),t=new(e.bind.apply(e,n)),r&&_setPrototypeOf(t,r.prototype),t)}function _isNativeReflectConstruct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_isNativeReflectConstruct=function(){return!!e})()}function _isNativeFunction(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(e){return"function"==typeof t}}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}var SubscriptionForm;void 0===customElements.get("subscription-form")&&(SubscriptionForm=(()=>{function e(){var t;return _classCallCheck(this,e),(t=_callSuper(this,e)).onSubmitHandler=t.onSubmitHandler.bind(t),t.setErrorMessage=t.setErrorMessage.bind(t),t.isLoading=!1,t.form=t.querySelector("form"),t.emailInput=t.querySelector("input"),t.errorMessage=t.querySelector(".subscription__error-message"),t.form.addEventListener("submit",t.onSubmitHandler),t.emailInput.addEventListener("invalid",function(e){e.preventDefault(),t.setErrorMessage(shopline.i18next.t("Invalid email"))}),t}return _inherits(e,_wrapNativeSuper(HTMLElement)),_createClass(e,[{key:"setErrorMessage",value:function(e){e?this.form.classList.add("subscription__form--error"):this.form.classList.remove("subscription__form--error"),this.errorMessage.innerHTML=e||""}},{key:"onSubmitHandler",value:(t=_asyncToGenerator(_regenerator().m(function e(t){var r,n,o;return _regenerator().w(function(e){for(;;
5957)switch(e.p=e.n){case 0:if(t.preventDefault(),r=t.target.elements.email.value,shopline.validator.email(r)){e.n=1;break}return this.setErrorMessage(shopline.i18next.t("Invalid email")),e.a(2);case 1:if(this.setErrorMessage(null),e.p=2,this.isLoading)return e.a(2);e.n=3;break;case 3:if(this.isLoading=!0,n={email:r},window.mainConfig.isRecaptchaEnabled)return e.n=4,shopline.recaptcha.getToken(this.querySelector("button").id);e.n=5;break;case 4:n["g-recaptcha-response"]=e.v;case 5:return e.n=6,fetch("/api/email_subscriptions",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});case 6:if((o=e.v).ok){e.n=8;break}return e.n=7,o.json();case 7:throw e.v;case 8:this.emailInput.value="",shopline.notify.success(shopline.i18next.t("Subscribed")),e.n=10;break;case 9:e.p=9,o=e.v,console.log("error:",o),this.setErrorMessage("Exceeded rate limit"===(null==o?void 0:o.error_messages)?shopline.i18next.t("You have requested too many times, please try again later"):shopline.i18next.t("Please try again"));case 10:return e.p=10,this.isLoading=!1,e.f(10);case 11:return e.a(2)}},e,this,[[2,9,10,11]])})),function(e){return t.apply(this,arguments)})}]);var t})(),customElements.define("subscription-form",SubscriptionForm));
5958</script>
5958
5959
5960
5961        </div>
5962      
5963
5964    
5965
5966  
5967
5968
5969
5970
5971    
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991  
5992  
5993    
5994    <!-- Google Tag Manager Event Tracker -->
vendor: 66 bytes, lines 5994-5995
5994
5995    <noscript><iframe src="//www.googletagmanager.com/ns.html?id=
5995GTM-WJ75KWBW
vendor: 91 bytes, lines 5995-5997
5995"
5996    height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
5997    
5997<script>
vendor: 337 bytes, lines 5997-6001
5997(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
5998    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
5999    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
6000    '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
6001    })(window,document,'script','dataLayer','
6001GTM-WJ75KWBW
vendor: 3 bytes, line 6001
6001');
6001</script>
6001
6002    <!-- end Google Tag Manager Event Tracker -->
6003    
6004
6005  
6006  
6007
6008
6009
6010  
6011  
6012    
6013      
6014      <!-- Google tag (gtag.js) -->
vendor: 70 bytes, lines 6014-6015
6014
6015      <script async src="https://www.googletagmanager.com/gtag/js?id=
6015G-G690MGRSVG
vendor: 18 bytes, lines 6015-6016
6015"></script>
6016      
6016<script>
6017        
vendor: 161 bytes, lines 6017-6022
6017window.dataLayer = window.dataLayer || [];
6018        function gtag(){dataLayer.push(arguments);}
6019        gtag('js', new Date());
6020
6021        
6022        gtag('config', '
6022G-G690MGRSVG
vendor: 46 bytes, lines 6022-6025
6022', {"groups":"ga4"});
6023        
6024        
6025      
6025</script>
6025
6026      
6027    
6028
6029  
6030  
6031
6032
6033
6034  
6035  
6036    
6037    <!-- Facebook Pixel (new) Event Tracker -->
6038    
6038<script>
vendor: 414 bytes, lines 6038-6045
6038
6039    !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
6040    n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
6041    n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
6042    t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
6043    document,'script','//connect.facebook.net/en_US/fbevents.js');
6044
6045    fbq('init', '
60452098034467214410
vendor: 48 bytes, lines 6045-6049
6045', {
6046      
6047    }, {agent: 'plShopline'});
6048
6049    
6049fbq('track', 'PageView',{
6050    }, {
6051      
6052    });
6053    </script>
6053
6054
6055    <noscript><img height="1" width="1" style="display:none"
6056    src="https://www.facebook.com/tr?id=2098034467214410&ev=PageView&noscript=1"
6057    /></noscript>
6058    <!-- end Facebook Pixel (new) Event Tracker -->
6059    
6060
6061  
6062  
6063
6064
6065
6066  
6067  
6068    
6068<script type="text/javascript">
6069  (function () {
6070    var VARemoteLoadOptions = {
6071      whiteLabel: { id: 8, siteId: 1683, domain: 't.adotone.com' },
6072       locale: "en-US", mkt: true
6073    };
6074    (function (c, o, n, v, e, r, l, y) {
6075      c['VARemoteLoadOptions'] = e; r = o.createElement(n), l = o.getElementsByTagName(n)[0];
6076      r.async = 1; r.src = v; l.parentNode.insertBefore(r, l);
6077    })(window, document, 'script', 'https://cdn.adotone.com/javascripts/va.js', VARemoteLoadOptions);
6078  })();
6079</script>
6079
6080
6081  
6082  
6083
6084
6085
6086  
6087  
6088    
6089    <!-- Google Adwords Event Tracker -->
vendor: 68 bytes, lines 6089-6090
6089
6090    <script async src="https://www.googletagmanager.com/gtag/js?id=
6090AW-782238132
vendor: 16 bytes, lines 6090-6091
6090"></script>
6091    
6091<script>
6092      window.dataLayer = window.dataLayer || [];
6093      function gtag(){dataLayer.push(arguments)};
6094      window.dispatchedGoogleAdsEventTypes = window.dispatchedGoogleAdsEventTypes || [];
6095      function dispatchConversion(eventType) {
6096        if (window.dispatchedGoogleAdsEventTypes.includes(eventType)) {
6097          return;
6098        }
6099        window.dispatchedGoogleAdsEventTypes.push(eventType);
6100        gtag('event', 'conversion', { send_to: `google_ads_${eventType}` });
6101      }
6102      gtag('js', new Date());
6103      gtag('config', 'AW-782238132/L5NiCNSY5sMZELSDgPUC', {"allow_enhanced_conversions":true,"groups":"google_ads_loaded_any_page"});
6104
6105      
6106        
6107          
6108        
6109      
6110      
6111        window.addEventListener('load', (event) => {
6112          dispatchConversion('loaded_any_page');
6113        });
6114      
6115    </script>
6115
6116    <!-- end Google Adwords Event Tracker -->
6117    
6118
6119  
6120  
6121
6122
6123
6124  
6125  
6126    
6127    <!-- Google Remarketing Event Tracker -->
vendor: 68 bytes, lines 6127-6128
6127
6128    <script async src="https://www.googletagmanager.com/gtag/js?id=
6128AW-782238132
vendor: 16 bytes, lines 6128-6129
6128"></script>
6129    
6129<script type="text/javascript">
6130      window.dataLayer = window.dataLayer || [];
6131      function gtag(){dataLayer.push(arguments)};
6132      gtag('js', new Date());
6133      gtag('config', 'AW-782238132', { groups: 'google_remarketing' });
6134
6135      
6136        
6137          gtag('event', 'conversion', { send_to: 'google_remarketing' });
6138        
6139      
6140    </script>
6140
6141    <!-- end Google Remarketing Event Tracker -->
6142    
6143
6144  
6145  
6146
6147
6148
6149  
6150  
6151    
6152    <!-- Google Adwords Event Tracker -->
vendor: 68 bytes, lines 6152-6153
6152
6153    <script async src="https://www.googletagmanager.com/gtag/js?id=
6153AW-782238132
vendor: 16 bytes, lines 6153-6154
6153"></script>
6154    
6154<script>
6155      window.dataLayer = window.dataLayer || [];
6156      function gtag(){dataLayer.push(arguments)};
6157      window.dispatchedGoogleAdsEventTypes = window.dispatchedGoogleAdsEventTypes || [];
6158      function dispatchConversion(eventType) {
6159        if (window.dispatchedGoogleAdsEventTypes.includes(eventType)) {
6160          return;
6161        }
6162        window.dispatchedGoogleAdsEventTypes.push(eventType);
6163        gtag('event', 'conversion', { send_to: `google_ads_${eventType}` });
6164      }
6165      gtag('js', new Date());
6166      gtag('config', 'AW-782238132/uu_wCNGY5sMZELSDgPUC', {"allow_enhanced_conversions":true,"groups":"google_ads_added_product_to_cart"});
6167
6168      
6169        
6170          
6171        
6172      
6173      
6174    </script>
6174
6175    <!-- end Google Adwords Event Tracker -->
6176    
6177
6178  
6179  
6180
6181
6182
6183
6184
6185
6186
6187<script>
6188  window.eventTrackers = JSON.parse('[{"config_data":{"tracking_code":"GTM-WJ75KWBW"},"created_at":"2024-01-10T10:12:55.861Z","event_key":"google_tag","event_type":"loaded_any_page","id":"659e6da743d3fb24eded0862","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2024-01-10T10:12:55.958Z","v":0},{"config_data":{"tracking_code":"G-G690MGRSVG"},"created_at":"2024-01-10T10:20:13.539Z","event_key":"google_analytics_4","event_type":"loaded_any_page","id":"659e6f5d43d3fb24eded0880","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2024-02-15T03:47:33.873Z","v":0},{"config_data":{"allowed_offline_conversion":true,"is_fbe":true,"is_messenger_chat_plugin_enabled":false,"page_id":"102924225546777","single_variation":false,"tracking_code":"2098034467214410","unique_ids":true},"created_at":"2024-01-23T09:05:08.568Z","event_key":"facebook_standard_pixel","event_type":"loaded_any_page","id":"65af814429a24d453fd60adc","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2025-03-21T08:59:29.419Z","v":0},{"config_data":{"enable_enhanced_conversions":true,"is_shopline":"true","tracking_code":"782238132","tracking_code_2":"L5NiCNSY5sMZELSDgPUC"},"created_at":"2024-07-22T04:43:30.743Z","event_key":"google_adwords","event_type":"loaded_any_page","id":"669de37249c5fa74d5d11204","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2024-07-22T04:43:30.954Z","v":0},{"config_data":{"dynamic_remarketing":false,"is_shopline":false,"single_variation":false,"tracking_code":"782238132","unique_ids":false},"created_at":"2024-08-16T07:17:20.276Z","event_key":"google_remarketing","event_type":"loaded_any_page","id":"66befd00df86a0ecddc11625","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2024-08-16T07:17:20.779Z","v":0},{"config_data":{"enable_enhanced_conversions":true,"is_shopline":"true","tracking_code":"782238132","tracking_code_2":"uu_wCNGY5sMZELSDgPUC"},"created_at":"2024-07-22T04:42:01.592Z","event_key":"google_adwords","event_type":"added_product_to_cart","id":"669de319c3c31cc0693bab29","owner_id":"6576a1830ee9d100760d043d","status":"active","tracking_html":null,"updated_at":"2024-07-22T04:42:01.797Z","v":0}]');
6189</script>
6189
6190
6191
6192
6193
6194
6195
6196  
6197
6198
6199
6200
6201
6202
6203
6204
6205  
6205<script ng-non-bindable src="//static.zotabox.com/3/3/33c0b5efaaa459795ce7c3d639849efc/widgets.js" async></script>
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214  
6214<script type="application/ld+json">{"@context":"http://schema.org/","@type":"Product","name":"【Margot\u0026Tita】Advent Calendar 2026 - Limited quantity","sku":"6aa36e90de77e200134fb066","brand":"Margot Tita","description":"More than just a calendar, the 2026 edition reveals a true olfactory wardrobe: a collection of fragrances to discover, wear, and combine according to your desires, your mood, and every occasion. 24 bottles of 15ml, totaling 360ml of scented surprises, to reinvent your scent day after day.Behind the 24 doors, a generous olfactory palette is revealed, where floral, musky, woody, solar, and gourmand scents meet. Bright and delicate fragrances stand alongside more enveloping, sensual, or comforting trails, allowing you to change your perfume as naturally as you change your outfit.Eau de parfumAu bout de la nuit – 15 mlTOP • Ylang-ylang, Lemon, Plum, Mandarin, BergamotHEART • Jasmine, Rose, Geranium, White flowersBASE • Sandalwood, Musk, PatchouliÇa baigne pour moi – 15 mlAQUATIC EAU DE PARFUMTOP • Lemon, Bergamot, Aromatic notesHEART • Marine notes, Apple, Tobacco, SandalwoodBASE • Musk, Amber, OakmossJeu dangereux – 15 mlWOODY EAU DE PARFUMTOP • Cardamom, Bergamot, LemonHEART • Cedar, Cashmere wood, Honey notesBASE • Vetiver, Vanilla, Sandalwood, MuskLa femme parfaite – 15 mlFLORAL EAU DE PARFUM TOP • Lychee, Pink berries, Orange, BlackcurrantHEART • Peach, Lily of the Valley, Rose, VioletBASE • Vanilla, Musk, Patchouli, Raspberry, WoodyL'amour est dans l'air – 15 mlFLORAL EAU DE PARFUM TOP • Blackberry, Apple, Bergamot, JasmineHEART • Orange blossom, Peony, Lily of the valleyBASE • Sandalwood, Patchouli, Musky, VanillaLes secrets de Margot – 15 mlFLORAL EAU DE PARFUMTOP • Pear, BergamotHEART • Rose, Jasmine, Morning DewBASE • Vanilla, White peach, Blond woodMinuit dans tes bras – 15 mlFLORAL EAU DE PARFUMTOP • Pink Pepper, PeachHEART • Jasmine, Sandalwood, Milky notesBASE • Amber, Benzoin, Vanilla, MusksNous les femmes – 15 mlFRUITY EAU DE PARFUMTOP • Blackcurrant, Candy apple, Passion fruitHEART • Raspberry, Rose, JasmineBASE • Musk, Sandalwood, VanillaNuit féerique – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, LINALYL ACETATE, PINENE, VANILLIN, LINALOOL, ROSE KETONES, HEXAMETHYLINDANOPYRAN, MYROXYLON PEREIRAE OIL/EXTRACT, BETA-CARYOPHYLLENE, BENZYL BENZOATE, TERPINOLENE, CITRAL, BENZYL CINNAMATE, CITRONELLOL, JUNIPERUS VIRGINIANA OIL, CEDRUS ATLANTICA OIL/EXTRACT.Rêve musqué – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), JUNIPERUS VIRGINIA OIL, AMYL SALICYLATE, LINALOOL, ROSE KETONES, HEXADECANOLACTONE, LINALYL ACETATE, HYDROXYCITRONELLAL, TRIMETHYLBENZENEPROPANOL, CINNAMYL ALCOHOL, BENZALDEHYDE, ISOEUGENOL, ALPHA-ISOMETHYL IONONE.Sous les étoiles – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), HEXAMETHYLINDANOPYRAN, LINALYL ACETATE, LINALOOL, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, ALPHA-ISOMETHYL IONONE, VANILLIN, POGOSTEMON CABLIN OIL, COUMARIN, GERANYL ACETATE, PINENE, BENZALDEHYDE, CITRONELLOL, ROSE KETONE, BETA-CARYOPHYLLENE, ANISE ALCOHOL, TRIMETHYLCYCLOPENTENYL METHYLISOPENTENOL.Sous un soleil doré – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, LINALYL ACETATE, LIMONENE, HEXAMETHYLINDANOPYRAN, CITRUS AURANTIUM BERGAMIA PEEL OIL, CITRUS LIMON OIL/EXTRACT, POGOSTEMON CABLIN OIL, PINENE, COUMARIN, CITRONELLOL, ALPHA-ISOMETHYL IONONE, BETA-CARYOPHYLLENE, EUGENOL, ROSE KETONE, CITRAL, GERANYL ACETATE, TERPINOLENE, HEXYL CINNAMAL, ALPHA-TERPINENE, ACETYL CEDRENE, CITRUS AURANTIUM FLOWER OIL, TERPINEOL, GERANIOL, VANILLIN.Tombé du ciel – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), VANILLIN, HEXAMETHYLINDANOPYRAN, HEXYL CINNAMAL, LINALYL ACETATE, LINALOOL, POGOSTEMON CABLIN OIL, HYDROXYCITRONELLAL, LIMONENE, CITRUS AURANTIUM PEEL OIL, GERANIOL, BETA-CARYOPHYLLENE, CITRUS MEDICA LIMONUM PEEL OIL, ROSE KETONE, GERANYL ACETATE, PINENE, CITRUS AURANTIUM FLOWER OIL, CITRAL.Un air de malice – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), HEXAMETHYLINDANOPYRAN, LINALYL ACETATE, LINALOOL, HYDROXYCITRONELLAL, POGOSTEMON CABLIN OIL, LIMONENE, VANILLIN, HEXADECANOLACTONE, CITRONELLOL, GERANYL ACETATE, PINENE, COUMARIN, ROSE KETONE, CINNAMAL, CITRAL, BENZYL BENZOATE, EUGENOL.Week-end à Arcachon – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXAMETHYLINDANOPYRAN, LINALOOL, LIMONENE, LINALYL ACETATE, GERANYL ACETATE, CITRUS AURANTIUM PEEL OIL, EUGENOL, VANILLIN, HEXYL CINNAMAL, GERANIOL, PINENE, BETA-CARYOPHYLLENE, CITRONELLOL, HYDROXYCITRONELLAL, ISOEUGENOL, TERPINOLENE.Week-end à Biarritz – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXAMETHYLINDANOPYRAN, LINALOOL, CITRUS AURANTIUM BERGAMIA FRUIT OIL, LIMONENE, LINALYL ACETATE, CITRONELLOL, JUNIPERUS VIRGINIANA OIL, CITRUS AURANTIUM PEEL OIL, EBANOL, ALPHA-ISOMETHYL IONONE, HYDROXYCITRONELLAL, GERANYL ACETATE, PINENE, GERANIOL, ISOEUGENYL ACETATE, ROSE KETONE, BETA-CARYOPHYLLENE, TERPINOLENE, TERPINEOL, CITRAL, ALPHA-TERPINENE.Week-end à Saint-Tropez – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, VANILLIN, COUMARIN, LIMONENE, CITRUS AURANTIUM PEEL OIL, BENZALDEHYDE, CITRUS LIMON PEEL OIL, ROSE KETONES, PINENE, TRIMETHYLCYCLOPENTENYL METHYLISOPENTENOL.Week-end au Ferret – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HEXYL CINNAMAL, LINALOOL, LINALYL ACETATE, COUMARIN, EBANOL, LIMONENE, CITRUS AURANTIUM PEEL OIL, CITRUS MEDICA LIMONUM PEEL OIL, ROSE KETONE, BENZALDEHYDE, GERANYL ACETATE, HYDROXYCITRONELLAL, TERPINEOL, PINENE, VANILLIN.Week-end au paradis – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), AMYL SALICYLATE, VANILLIN, TERPINEOL, DI
6214METHYL PHENETHYL ACETATE, ISOEUGENYL ACETATE, HEXADECANOLACTONE, GERANYL ACETATE.Alors on s'aime – 15 mlINGREDIENTS: ALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, HYDROXYCITRONELLAL, VANILLIN, LINALYL ACETATE, LIMONENE, COUMARIN, CITRUS AURANTIUM BERGAMIA FRUIT OIL, ROSE KETONE, PINENE, LINALOOL, GERANYL ACETATE.Hair care and fragrancesDry oil Week-end au Ferret – 15 mlCOCO-CAPRYLATE/CAPRATE, PRUNUS ARMENIACA KERNEL OIL, SIMMONDSIA CHINENSIS SEED OIL, PRUNUS AMYGDALUS DULCIS OIL, PARFUM, HELIANTHUS ANNUUS SEED OIL, TOCOPHEROL, HEXYL CINNAMAL, COUMARIN, LIMONENE, HYDROXYCITRONELLAL, LINALOOL.Hair perfume Baisers et coquillages – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), GLYCERIN, ORYZA SATIVA (RICE) EXTRACT, POTASSIUM SORBATE, CITRIC ACID, SORBIC ACID, TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, HEXAMETHYLINDANOPYRAN, VANILLIN, LINALYL ACETATE, HYDROXYCITRONELLAL, CITRUS AURANTIUM BERGAMIA PEEL OIL, COUMARIN, LIMONENE, EBANOL, GERANYL ACETATE, JUNIPERUS VIRGINIANA OIL, CITRONELLOL, DIMETHYL PHENETHYL ACETATE, PINENE, CITRUS AURANTIUM PEEL OIL, GERANIOL, ALPHA-ISOMETHYL IONONE, POGOSTEMON CABLIN OIL, ROSE KETONE, BENZALDEHYDE.Hair perfume Onde sensuelle – 15 mlALCOHOL DENAT., AQUA (WATER), PARFUM (FRAGRANCE), GLYCERIN, ORYZA SATIVA (RICE) EXTRACT, POTASSIUM SORBATE, CITRIC ACID, SORBIC ACID, HEXAMETHYLINDANOPYRAN, TETRAMETHYL ACETYLOCTAHYDRONAPHTHALENES, LINALOOL, JUNIPERUS VIRGINIANA OIL, ALPHA-ISOMETHYL IONONE, LIMONENE, CITRUS AURANTIUM PEEL OIL, BENZYL ALCOHOL, VANILLIN, LINALYL ACETATE, DIMETHYL PHENETHYL ACETATE, ROSE KETONES, COUMARIN, PINENE, HYDROXYCITRONELLAL, HEXYL CINNAMAL, CITRONELLOL.Room fragranceJardin de mon enfance – 15 ml+ USAGE TIPS・Spray the perfume about 10 cm from your skin. Focus on hot spots (wrists, hollows of the arms, behind the ears) for long-lasting wear of your perfume.・Take your 30ml perfume everywhere to reperfume yourself as you wish.・Create your own fragrance by mixing two complementary scents!・Do not spray on eyes or irritated skin. For external use only.・Keep away from heat and flame.","offers":{"@type":"Offer","price":8900.0,"priceCurrency":"TWD","availability":"http://schema.org/PreOrder"},"image":["https://img.shoplineapp.com/media/image_clips/6ab37ddf376ab931829295cc/original.jpg?1790148063=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa45352f7367cf6ccdd75e/original.jpg?1789543733=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa45500be759c32a96bf5b/original.jpeg?1789543760=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa449f74a226c536dfaaca/original.jpg?1789543582=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa457c60f3cdc20a8066de/original.jpeg?1789543803=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa458463f015cde24e071f/original.jpeg?1789543811=\u0026owner_id=6576a1830ee9d100760d043d","https://img.shoplineapp.com/media/image_clips/6aaa45bc512ab1cb464cab10/original.jpg?1789543867=\u0026owner_id=6576a1830ee9d100760d043d"]}</script>
6214
6215
6216
6217
6218    
6219    
6220
6221
6222
6223
6224
6225
6226<script type="text/javascript">
6227document.addEventListener('DOMContentLoaded', function() {
6228/* title primary */
6229$('.js-title-page').each(function() {
6230  if(!$(this).prev().length) {
6231    if($(this).siblings('.js-content-page').text().trim().length) {
6232      $(this).parent().addClass('primary-bg-title-color');
6233      if($(this).closest('.Grid-row-wrapper').next().hasClass('m-remove-padding')) {
6234        $(this).closest('.Grid-row').addClass('no-margin');
6235      }
6236    } else {
6237      $(this).addClass('primary-title-color');
6238    }
6239  }
6240});
6241
6242/* check IOS */
6243var iOS = is.ios();
6244var iOS11 = /OS 11_0|OS 11_1|OS 11_2/.test(navigator.userAgent);
6245var detectTap = false;
6246
6247if (iOS && iOS11) {
6248  $('body').addClass('ios-eleven');
6249}
6250/* location when click in IOS */
6251if (iOS) {
6252  $('body').addClass('ios');
6253}
6254
6255/* hover next image */
6256angular.element(document).ready(function () {
6257  function isQuickCartProduct(imageClass) {
6258    return imageClass === '.js-boxify-image';
6259  }
6260
6261  function hoverProductEffect(imageClass) {
6262    var elements;
6263    elements = isQuickCartProduct(imageClass) ? $('product-item') : $('.Product-item');
6264
6265    elements.each(function() {
6266      var $this;
6267      $this = isQuickCartProduct(imageClass) ? $(this).children().first() : $(this);
6268      var secondCoverImage = $this.find('.second-image');
6269      if (secondCoverImage.length === 0) { return; }
6270
6271      var multiImageWrapper;
6272      multiImageWrapper = isQuickCartProduct(imageClass) ? $this.find('.js-quick-boxify-wrapper') : $this;
6273      multiImageWrapper.addClass('multi-image');
6274    });
6275  }
6276
6277  function loadEffect() {
6278    /* product items without quick cart feature */
6279    hoverProductEffect('.js-image-boxify-image');
6280    /* product items with quick cart feature */
6281    hoverProductEffect('.js-boxify-image');
6282  }
6283  loadEffect();
6284
6285  /* observer lazyload-related-products multi image */
6286  var relatedProductList = document.getElementById('relatedProductList');
6287  if (relatedProductList) {
6288    var config = {
6289      childList: true,
6290    };
6291    var observer = new MutationObserver(function(mutations) {
6292      loadEffect();
6293      observer.disconnect();
6294    });
6295    observer.observe(relatedProductList, config);
6296  }
6297  /* observe pagination changes in multiple category widgets */
6298  $('.product-items-container').each(function(index, productItemsContainer) {
6299    var config = {
6300      childList: true,
6301    };
6302    var observer = new MutationObserver(function(mutations) {
6303      loadEffect();
6304    });
6305
6306    observer.observe(productItemsContainer, config);
6307  });
6308});
6309
6310/* fix single product widget as category product widget */
6311$('.page-single-product').each(function() {
6312  if ($(this).parent().index() == 0) {
6313    $(this).closest('.Grid-row').addClass('single-product');
6314  }
6315});
6316
6317/* adjust number slide for owl carousel */
6318$('carousel-display').on('initialized.owl.carousel', '.owl-carousel', function() {
6319  $('.owl-carousel').on('change.owl.carousel', function(e) {
6320    var num = $('.owl-item:not(.cloned)', this).length;
6321    var index = 1;
6322    if (e.item.count == 2) {
6323      index = ( 1 + ( e.property.value + 1 - Math.ceil( e.item.count / 2 ) ) % e.item.count || 0 ) || 1;
6324    } else {
6325      index = ( 1 + ( e.property.value - Math.ceil( e.item.count / 2 ) ) % e.item.count || 0 ) || 1;
6326    }
6327    $(this).attr('data-slide', index + ' / ' + num);
6328  });
6329});
6330
6331function displayViewControls() {
6332  var viewControls = $('.modal .view-controls');
6333  if ($('.modal .js-variant-image').length > 1) {
6334    viewControls.show();
6335  } else {
6336    viewControls.hide();
6337  }
6338}
6339
6340app.run([
6341  '$rootScope',
6342  '$timeout',
6343  'modalTypes',
6344  function(
6345    $rootScope,
6346    $timeout,
6347    modalTypes
6348  ) {
6349    $rootScope.$on('modal.open', function(event, payload) {
6350      if ([modalTypes.QUICK_CART, modalTypes.QUICK_CART_PRODUCT_SET].indexOf(payload.modalType) === -1) return;
6351
6352      $timeout(function() {
6353        $('.QuickCart-modal .js-variant-gallery-stage').append('<div class="view-detail js-view-detail"></div>');
6354        $('.js-view-detail').append('<a href="' + $('.js-product-link a').attr('href') + '"><svg class="icons icon-info"><use xlink:href="#icon-info"></use></svg></a>');
6355        $('.js-variant-gallery-stage').append(
6356          '<div class="view-controls"><span class="view-prev js-view-prev"></span><span class="view-next js-view-next"></span></div>',
6357        );
6358        displayViewControls();
6359
6360        var gallery = document.querySelector('.js-variant-gallery-stage');
6361        var observer = new MutationObserver(function () {
6362          displayViewControls();
6363        });
6364        observer.observe(gallery, { childList: true });
6365
6366        var urlLoad = $('.js-variant-gallery-stage > a > img').attr('src');
6367        checkImage(urlLoad);
6368        var selected = 1;
6369        var urlGallery = '';
6370
6371        $rootScope.$on('variationSelected.key.change', function() {
6372          selected = 1;
6373        });
6374
6375        $('.js-view-next').click(function() {
6376          selected++;
6377          if ($('.modal .js-variant-image').length < selected) {
6378            selected = 1;
6379          }
6380          urlGallery = $('.modal .js-variant-image:nth-child(' + selected + ') .image-container').attr('style').replace('thumb', 'original').split('"')[1];
6381          checkImage(urlGallery);
6382          $('.modal .js-variant-gallery-stage > a > img').attr('src', computedSrcByStyle($('.modal .js-variant-image:nth-child(' + selected + ') .image-container')));
6383        });
6384        $('.js-view-prev').click(function() {
6385          selected--;
6386          if (selected < 1) {
6387            selected = $('.modal .js-variant-image').length;
6388          }
6389          urlGallery = $('.modal .js-variant-image:nth-child(' + selected + ') .image-container').attr('style').replace('thumb', 'original').split('"')[1];
6390          checkImage(urlGallery);
6391          $('.modal .js-variant-gallery-stage > a > img').attr('src', computedSrcByStyle($('.modal .js-variant-image:nth-child(' + selected + ') .image-container')));
6392        });
6393
6394        function computedSrcByStyle(el) {
6395          var linkProduct = el.attr('style').replace(/"/g, '').replace(/ /g, '').replace('thumb', 'original');
6396          var handleLeft = linkProduct.slice(linkProduct.indexOf('http'));
6397          var src;
6398          if (handleLeft.lastIndexOf(';') === handleLeft.length - 1) {
6399            src = handleLeft.slice(0, handleLeft.length - 2);
6400          } else {
6401            src = handleLeft.slice(0, handleLeft.length - 1);
6402          }
6403
6404          /* computed by style */
6405          /* Note: if thumb url, convert to original url */
6406          try {
6407            var maxWidth = 800;
6408            var reg = /^https?:\/\/.+\/(\d+)x\..+$/;
6409            var matchs = src.match(reg);
6410            var width = window.parseInt((matchs || [])[1]);
6411            var containerWidth = ($('.modal .js-variant-gallery-stage').width() || 0) * (window.devicePixelRatio > 1 ? 2 : 1);
6412            var useWidth = containerWidth > maxWidth ? maxWidth : containerWidth;
6413
6414            if (width && width < maxWidth && useWidth > width) {
6415              src = src.replace('/'+ width +'x.', '/' + containerWidth  + 'x.');
6416            }
6417          } catch (e) {
6418            console.warn('Error: thumb image url convert to original image url', e);
6419          }
6420
6421          return src;
6422        }
6423
6424        $('.modal .quick-cart-price .price').each(function() {
6425          if($(this).text().trim() === '') {
6426            $(this).addClass('price-empty');
6427          }
6428        });
6429        fixSelect();
6430      }, 200);
6431      function checkImage(url) {
6432        var img = new Image();
6433        img.src = url;
6434        img.onload = function() {
6435          if (this.height > this.width) {
6436            $('.js-variant-gallery-stage > a > img').addClass('img-height');
6437          } else {
6438            $('.js-variant-gallery-stage > a > img').removeClass('img-height');
6439          }
6440        };
6441      };
6442    });
6443}]);
6444
6445/* close popup product when click mask */
6446$(document).on('touchend', '.modal-backdrop', function() {
6447  $('.js-quick-cart-cancel').click();
6448});
6449
6450
6451
6452/* add class scroll for go to top button */
6453function scrollPage() {
6454  if ($(window).scrollTop() >= 100) {
6455    $('.sl-goto-top').addClass('active');
6456  } else {
6457    $('.sl-goto-top').removeClass('active');
6458  }
6459}
6460$(window).on('scroll', _.throttle(scrollPage, 200));
6461
6462$('.instagram-post .caption').dotdotdot({
6463  wrap: 'letter',
6464  ellipsis: '...',
6465  height: 56
6466});
6467
6468$(window).load(function() {
6469  fixSelect();
6470});
6471
6472/* change style select box */
6473function fixSelect() {
6474  $('.js-selectpicker').each(function() {
6475    if ($(this).is(':visible')) {
6476      $(this).parent().addClass('selectpicker-box');
6477    }
6478  });
6479}
6480
6481function autoPaddingTop() {
6482  var previewingClosedStoreBanner = $('.js-previewing-closed-store-banner');
6483  var previewingClosedStoreBannerHeight = previewingClosedStoreBanner.length ? previewingClosedStoreBanner.height() : 0;
6484}
6485autoPaddingTop();
6486$(window).on('resize', _.debounce(autoPaddingTop, 200));
6487
6488function syncHeaderTopWithAnnouncementHeight() {
6489  $('#shopline-section-header').css('top', $('#shopline-section-announcement').height() || 0);
6490}
6491
6492if (
6493  $('body.cart.index, body.checkout.index, body.orders.confirm').length === 0 &&
6494  $('#shopline-section-header').length > 0
6495) {
6496  if ('ResizeObserver' in window) {
6497    var observer = new ResizeObserver(_.throttle(syncHeaderTopWithAnnouncementHeight, 200));
6498    observer.observe($('#shopline-section-announcement')[0]);
6499  } else {
6500    document.fonts.ready.then(syncHeaderTopWithAnnouncementHeight);
6501    $(window).on('resize', _.throttle(syncHeaderTopWithAnnouncementHeight, 200));
6502  }
6503  syncHeaderTopWithAnnouncementHeight();
6504}
6505
6506/* this code will be remove in SL-31595 */
6507if ($('.header').hasClass('header--sticky')) {
6508  $('#shopline-section-header').css({
6509    'position': 'sticky',
6510    'z-index': 100
6511  });
6512}
6513/* end of this code will be remove in SL-31595 */
6514});
6515</script>
6515
6516
6517
6518
6519
6520
6521
6522
6523<script type="text/javascript">
6524window.addEventListener('DOMContentLoaded', function() {
6525var $mask = $('<div class="Modal-mask cart-mask js-modal-mask" style="display: none;"></div>');
6526var docEl = $('html, body');
6527var wrapContent = $('#Content');
6528var scrollTop;
6529var lockBody = function () {
6530  if (window.pageYOffset) {
6531    scrollTop = window.pageYOffset;
6532    wrapContent.css({ top: -scrollTop });
6533  }
6534  $('html').css({ 'max-height': '100%', overflow: '' });
6535  $('body').css({ 'max-height': '100%', overflow: 'hidden' });
6536};
6537
6538var unlockBody = function () {
6539  docEl.css({ 'max-height': '', overflow: '' });
6540  wrapContent.css({ top: '' });
6541  window.scrollTo(0, scrollTop);
6542  window.setTimeout(function () {
6543    scrollTop = null;
6544  }, 0);
6545};
6546
6547const headerMarginBottom = 20;
6548const announcementHeight = $('.js-announcement').height() || 0;
6549const calculateHeader = () => {
6550  const headerHeight = $('.js-sticky').height() || 0;
6551  return headerHeight + announcementHeight;
6552};
6553
6554/* add top css for cart panel */
6555$('head').append('<style id="fix-cart">#cart-panel { top: ' + calculateHeader() + 'px; }</style>');
6556function setHeaderTop() {
6557  if ($(window).scrollTop() >= 200) {
6558    $('.js-product-thumb, .js-product-info').css('top', calculateHeader());
6559  } else {
6560    $('.js-product-thumb, .js-product-info').removeAttr('style');
6561  }
6562};
6563if (window.matchMedia('(min-width: 1200px)').matches) {
6564  $(window).on('load', setHeaderTop);
6565  $(window).on('scroll', _.throttle(setHeaderTop, 200));
6566}
6567
6568/* call sidr for cart panel */
6569var isMobile = $('.js-navigationbar-mobile').length;
6570$('.js-cart-panel').unbind();
6571$('.sl-cart-toggle').sidr(new SidrOptions({
6572  name: 'cart-panel',
6573  onOpen: function() {
6574    window.shopline?.slEventBus?.once('cart.miniCartLoadData', miniCartLoadedProduct);
6575    $('.js-cart-panel').addClass('is-open');
6576    $mask.css({'display': 'block' });
6577    angular.element('body').scope().$broadcast('cart.reload');
6578    adjustCartPanel();
6579    setHeaderTop();
6580    if (isMobile) lockBody();
6581  },
6582  onClose: function() {
6583    $('.js-cart-panel').removeClass('is-open');
6584    $mask.css({'display': 'none'});
6585    if (isMobile) unlockBody();
6586    window.shopline?.slEventBus?.off('cart.miniCartLoadData', miniCartLoadedProduct);
6587    clearTimeout(keepCart);
6588    $('#cart-panel').removeAttr('data-manual-open');
6589  }
6590}));
6591
6592$('.sl-cart-toggle').on('click', function() {
6593  $('#cart-panel').attr('data-manual-open', 'true');
6594});
6595$mask
6596  .appendTo('body')
6597  .on('click', function() {
6598    $.sidr('close', 'cart-panel');
6599    $mask.css({'display': 'none'});
6600  });
6601
6602/* auto close cart panel in 3 second if no hover */
6603if (!is.touchDevice()) {
6604  var keepCart;
6605  var cartPanel = document.querySelector('.js-cart-panel');
6606
6607  $(document).on('click', '.js-btn-add-to-cart, .js-btn-quick-cart-add-to-cart, .quick-cart-button-container', function() {
6608    var observer = (new MutationObserver(function() {
6609      clearTimeout(keepCart);
6610      keepCart = setTimeout(function() {
6611        $.sidr('close', 'cart-panel');
6612        $mask.css({'display': 'none'});
6613      }, 3000);
6614
6615      observer.disconnect();
6616    }));
6617
6618    observer.observe(
6619      cartPanel,
6620      { attributes: true }
6621    );
6622  });
6623
6624  /* keep cart panel if hover */
6625  cartPanel.addEventListener('mouseover', function() {
6626    clearTimeout(keepCart);
6627  });
6628}
6629
6630/* close currency and menu panel when choose currency */
6631$('.sl-currency-chooser-currency').on('click', function() {
6632  $.sidr('close', 'CurrencyPanel');
6633  $.sidr('close', 'MenuPanel');
6634  $('.sl-modal-mask').css({'display': 'none'});
6635});
6636
6637
6638function miniCartLoadedProduct(cartData) {
6639  adjustCartPanel();
6640  const injector = angular.element(document.body)?.injector();
6641  const trackerService = injector?.get('trackerService');
6642  const showType = $('#cart-panel').attr('data-manual-open') === 'true' ? 'manual_click' : 'automatic';
6643  const productIds = cartData?.items?.map(item => (item.product_id)) || [];
6644  const productIdsUnique = [...new Set(productIds)];
6645  trackerService?.track({
6646    type: trackerService?.generalEventType?.MiniCartImpression,
6647    data: {
6648      page_type: window.mainConfig.pageIdentifier,
6649      show_type: showType,
6650      cart_item_list: productIdsUnique,
6651      cart_unique_item_count: productIdsUnique.length,
6652      cart_total_item_count: cartData?.items?.reduce((total, item) => total + item.quantity, 0) || 0,
6653    },
6654  });
6655}
6656
6657function adjustCartPanel() {
6658  if (window.matchMedia('(max-width: 1199px)').matches) return;
6659
6660  const headerHight = calculateHeader();
6661  /* adjust cart panel in short browser*/
6662  const bottomSpace = 52;
6663  const navHeight = headerHight;
6664  const checkoutButtonContainerHeight = $('#cart-panel .cart-chkt-btn-cont').outerHeight();
6665  const cartItemListMaxHeight = navHeight + checkoutButtonContainerHeight + bottomSpace;
6666  $('#cart-panel .cart-items, #cart-panel .cart-panel-empty-wrapper').css({
6667    'max-height': 'calc(100vh - ' + cartItemListMaxHeight + 'px)'
6668  });
6669
6670  /* adjust cart panel when header not sticky */
6671  let cartPosition = headerHight;
6672  const headerHeight = $('.js-navigationbar-desktop').height() || 0;
6673  if (
6674    $('#shopline-section-header').length > 0 &&
6675    $('#shopline-section-header').css('position') !== 'sticky' &&
6676    $(window).scrollTop() >= headerHight
6677  ) {
6678    cartPosition = cartPosition - headerHeight + headerMarginBottom;
6679  }
6680  $('head #fix-cart').html('#cart-panel { top: ' + cartPosition + 'px; } @media (max-width: 1199px){ #cart-panel { top: 0; }}');
6681};
6682
6683$(window).on('resize, scroll', _.debounce(function() {
6684  adjustCartPanel();
6685}, 200));
6686});
6687</script>
6687
6688
6689
6690
6691<script type="text/javascript">
6692document.addEventListener('DOMContentLoaded', function() {
6693$('.js-productlist-nestedlist').on('click', function(event) {
6694  if(!$(event.target).is('a.Label')) {
6695    var target = $(this).find('.ProductList-nestedList-dropdown');
6696    if (target.is(':visible')) {
6697      target.slideUp();
6698      $(this).removeClass('active');
6699    } else {
6700      target.slideDown();
6701      $(this).addClass('active');
6702    }
6703  }
6704});
6705
6706
6707$('.js-productlist-nestedlist.second-layer-content').hover(function() {
6708  var thirdLayer = $(this).find('.NestedList-Wrapper.js-productlist-nestedlist-dropdown');
6709  if ($(this).attr('is-collapsed') === 'true') {
6710    $('ul:not(:animated)', this).slideDown();
6711  }
6712  /* move 3rd layer up when it longer than the screen */
6713  if (thirdLayer.length !== 0) {
6714    var bottom3rdLayer = thirdLayer.offset().top + thirdLayer.outerHeight();
6715    var scrollBotWindow = $(window).scrollTop() + $(window).height();
6716    if (bottom3rdLayer >= scrollBotWindow) {
6717      thirdLayer.css({'top': scrollBotWindow - bottom3rdLayer - 30 + 'px'});
6718    }
6719  }
6720}, function() {
6721  var thirdLayer = $(this).find('.NestedList-Wrapper.js-productlist-nestedlist-dropdown');
6722  if ($(this).attr('is-collapsed') === 'true') {
6723    $('ul', this).slideUp();
6724  }
6725  thirdLayer.removeAttr("style");
6726});
6727
6728/* custom select box for sort */
6729if ($('.js-setting-sort li.active').length) {
6730  $('.js-setting-sort span').text($('.js-setting-sort li.active').first().text());
6731}
6732
6733
6734if ($('.js-setting-filter li.active').length) {
6735  $('.js-setting-filter span').text($('.js-setting-filter li.active').text());
6736}
6737
6738if ($('.js-setting-limit li.active').length) {
6739  $('.js-setting-limit span').text($('.js-setting-limit li.active').text());
6740}
6741
6742$('.js-setting-sort li').each(function() {
6743  $(this).click(function() {
6744    $(this).closest('.js-setting-sort').find('span').text($(this).text());
6745    $('.sl-products-sorting').val($(this).data('value')).trigger('change');
6746  });
6747});
6748
6749$('.js-setting-filter li').each(function() {
6750  $(this).click(function() {
6751    $(this).closest('.js-setting-filter').find('span').text($(this).text());
6752    $('.sl-products-filter').val($(this).data('value')).trigger('change');
6753  });
6754});
6755
6756$('.js-setting-limit li').each(function() {
6757  $(this).click(function() {
6758    $(this).closest('.js-setting-limit').find('span').text($(this).text());
6759    $('.sl-products-limit').val($(this).data('value')).trigger('change');
6760  });
6761});
6762
6763$('.setting-limit'). on('click', 'li', function(){
6764  $('.sl-products-limit').val($(this).data('value')).trigger('change');
6765});
6766
6767/* arrow icon should be hidden if category has no subcategories */
6768$('.js-productlist-nestedlist, .js-mobile-productlist-nestedlist').each(function(category) {
6769  var targetList = $(this).is('.js-productlist-nestedlist') ? '.js-productlist-nestedlist' : '.js-mobile-productlist-nestedlist';
6770  var $subcategory = $(this).find(targetList + '-dropdown');
6771  var subcategoryCount = $subcategory.children().length;
6772  if(subcategoryCount === 0) {
6773    $(this).find('.fa').remove();
6774    $(this).removeClass('ProductList-nestedList js-productlist-nestedlist MenuPanel-nestedList sl-dropdown');
6775    $subcategory.remove();
6776  }
6777});
6778});
6779</script>
6779
6780
6781
6782  
6783
6784<script type="text/javascript">
6785document.addEventListener('DOMContentLoaded', function() {
6786const PDP_TAB_CLICK = 'PDPTabClick';
6787const SHOP = 'shop';
6788const PDP = 'PDP';
6789const TAB_NAME_CONFIG = {
6790  description: 'description',
6791  moreInfo: 'more_info',
6792  deliveryPayment: 'delivery_and_payment',
6793  review: 'review',
6794};
6795/* change gallery vertical to horizontal */
6796function setVerticalVariantGallery() {
6797  var variantImageHeight = 72;
6798  var variantImageMarginBottom = 10;
6799  var imageTotalHeight = variantImageHeight + variantImageMarginBottom;
6800  $(document).on('click', '.js-variant-gallery-control.right', function() {
6801    $('.js-variant-gallery-scroll-container').animate({ scrollTop: ($('.js-variant-image.selected').index() + 1) * imageTotalHeight }, 200);
6802  });
6803  $(document).on('click', '.js-variant-gallery-control.left', function() {
6804    $('.js-variant-gallery-scroll-container').animate({ scrollTop: ($('.js-variant-image.selected').index() * imageTotalHeight) - imageTotalHeight }, 200);
6805  });
6806}
6807setVerticalVariantGallery();
6808var hScroll = 0;
6809$(window).on('load scroll', function() {
6810  if ($(window).scrollTop() > 200) {
6811    hScroll = $('.js-navigationbar-desktop').height() - 40;
6812  } else {
6813    hScroll = 0;
6814  }
6815});
6816
6817function setStickyVariantGallery() {
6818  var hHeader = window.matchMedia('(min-width: 1200px)').matches ? $('.js-sticky').height() : $('.js-navigationbar-mobile').height();
6819  hHeader = hHeader + $('.js-announcement').height();
6820  if( $(window).scrollTop() >= 200) {
6821    $('.variant-gallery').css('top', hHeader);
6822  } else {
6823    $('.variant-gallery').css('top', 'auto');
6824  }
6825}
6826$(window).on('scroll', _.throttle(setStickyVariantGallery, 200));
6827
6828var gallery = document.querySelector('product-variant-gallery');
6829obServe(gallery);
6830
6831app.run([
6832  '$rootScope',
6833  '$timeout',
6834  function(
6835    $rootScope,
6836    $timeout
6837  ) {
6838    $rootScope.$on('productGallery.load', function() {
6839      $timeout(function() {
6840        var variation = document.querySelector('product-variant-gallery .variant-gallery-slider');
6841        $('.addon-item-chkbox').wrapInner('<label></label>');
6842        $('.addon-item-chkbox label').append('<span></span>');
6843        $('.addon-promotions-header, .addon-promotion-list').wrapAll('<div class="addon-promotion-shadow"></div>');
6844        obServe(variation);
6845      });
6846    });
6847  }
6848]);
6849
6850
6851function obServe(el) {
6852  if (el) {
6853    var config = { attributes: false, childList: true, subtree: false };
6854    var observer;
6855    var callback = function(mutationsList, observer) {
6856      checkGalleryLoad();
6857    };
6858    observer = new MutationObserver(callback);
6859    observer.observe(el, config);
6860  }
6861}
6862
6863function checkGalleryLoad() {
6864  /* (mobile) add picture total number */
6865  var num;
6866  function checkSlide() {
6867    num = $('.variant-gallery .js-variant-gallery-scroll-container .js-variant-image').length;
6868    $('product-variant-gallery').attr('data-slide', '1 / ' + num);
6869  }
6870  checkSlide();
6871
6872  /* (mobile) add swipe event to change image number */
6873  $('.js-variant-gallery-stage').on('swipeleft', function() {
6874    var el = $('.variant-gallery .js-variant-gallery-scroll-container .js-variant-image');
6875    var sel = $('.variant-gallery .js-variant-gallery-scroll-container .js-variant-image.selected');
6876    if (sel.index() != (el.length - 1)) {
6877      $('product-variant-gallery').attr('data-slide', (sel.index() + 2) + ' / ' + num);
6878    }
6879  });
6880  $('.js-variant-gallery-stage').on('swiperight', function() {
6881    var el = $('.variant-gallery .js-variant-gallery-scroll-container .js-variant-image');
6882    var sel = $('.variant-gallery .js-variant-gallery-scroll-container .js-variant-image.selected');
6883    if (sel.index() != 0) {
6884      $('product-variant-gallery').attr('data-slide', sel.index() + ' / ' + num);
6885    }
6886  });
6887}
6888
6889$('.js-accordion-title').each(function() {
6890  /* set default expand */
6891  if ($(this).parent().hasClass('active')) {
6892    $(this).next().css('display', 'block');
6893  }
6894});
6895$('.js-accordion-title').on('click', function() {
6896  $(this).parent().toggleClass('active');
6897  $(this).next().stop().slideToggle();
6898  const isOpening = $(this).parent().hasClass('active');
6899  if (isOpening) {
6900    const tabName = TAB_NAME_CONFIG[this.dataset.tabName];
6901    if (tabName) {
6902      trackClickTab(tabName);
6903    }
6904  }
6905});
6906
6907var pos = 0;
6908var text = '';
6909var isAvailableTimeDisabled;
6910var btns = [
6911  '.js-btn-main-checkout:visible',
6912  '.js-btn-addon-checkout:visible',
6913  '.js-btn-main-add-to-cart:visible',
6914  '.js-btn-contact-us:visible',
6915  '.js-btn-back-in-stock:visible'
6916];
6917
6918var addCartIconWithText = function(text) {
6919  return '<svg class="icons icon-cart"><use xlink:href="#icon-cart"></use></svg><span class="btn-text">' +
6920    text +
6921    '</div>';
6922};
6923
6924app.run(['buyNowService', 'fastCheckoutService', function(buyNowService, fastCheckoutService) {
6925  setTimeout(function() {
6926    function checkButton() {
6927      btns.forEach(function(sel) {
6928        var $btn = $(sel);
6929        if ($btn.length) {
6930          pos = $btn.offset().top;
6931          if (sel == '.js-btn-back-in-stock:visible') {
6932            text = $('#back-in-stock-content').text();
6933          } else {
6934            text = $btn.text();
6935          }
6936          isAvailableTimeDisabled = $btn.hasClass('available-time-disabled');
6937        }
6938      });
6939    }
6940    checkButton();
6941    var $btn = $('<div class="btn-cart-fixed js-btn-cart-fixed">' + addCartIconWithText(text) + '</div>');
6942    if (isAvailableTimeDisabled) {
6943      $btn.addClass('available-time-disabled');
6944    }
6945    if ($('.js-btn-contact-us:visible').length) {
6946      $btn.addClass('is-contact-us');
6947    }
6948    if ($('.js-btn-contact-us:visible').length) {
6949      $btn.on('click', function() {
6950        $('.js-btn-contact-us').click();
6951      });
6952    }
6953
6954    if ($('.js-btn-back-in-stock:visible').length) {
6955      if ($('.js-btn-back-in-stock:visible').hasClass('is-active')) {
6956        $btn.addClass('is-back-in-stock');
6957      }
6958
6959      var target = $('#back-in-stock-content').get(0);
6960
6961      var config = { childList: true, subtree: true };
6962
6963      var observer = new MutationObserver(function() {
6964        var newText = $('#back-in-stock-content').text();
6965        $btn.html(newText);
6966        if ($btn.hasClass('is-back-in-stock')) {
6967          $btn.removeClass('is-back-in-stock');
6968        } else {
6969          $btn.addClass('is-back-in-stock');
6970        }
6971
6972      });
6973
6974      observer.observe(target, config);
6975
6976      $btn.on('click', function() {
6977        $('.js-btn-back-in-stock:visible').click();
6978      });
6979    }
6980
6981    $('.js-sticky-cart-button-container').append($btn);
6982    if (buyNowService.isEnabled()) {
6983      buyNowService.createFixedBuyNowButton();
6984    }
6985    if (fastCheckoutService.isSpbEnabled) {
6986      fastCheckoutService.createFixedFastCheckoutButton();
6987    }
6988  }, 600);
6989}]);
6990
6991app.run(['$timeout', function($timeout) { $timeout(function() {
6992  $(document).on('click', '.js-btn-cart-fixed:not(.available-time-disabled)', function() {
6993    btns.forEach(function(sel) {
6994      var $btn = $(sel);
6995      if ($btn.length) {
6996        if (
6997          sel === ".js-btn-back-in-stock:visible" &&
6998          $(".js-btn-back-in-stock:visible").length
6999        ) {
7000          $("html,body").animate({ scrollTop: 0 }, 700);
7001        }
7002        $('.ProductDetail-product-info').find('.box-default').find($btn).click();
7003      }
7004    });
7005  });
7006
7007  /* handle fixed button buy together */
7008  angular.element($('[ng-controller="ProductsShowController"]')).scope()?.$watch("state", function(newValue, oldValue){
7009    var btnBuyTogether = $('.js-btn-addon-checkout');
7010    setTimeout(function() {
7011      if(newValue.addonItemEnabled){
7012        $('.js-btn-cart-fixed').html(addCartIconWithText(btnBuyTogether.text()));
7013      } else {
7014        btns.forEach(function(sel) {
7015          var $btn = $(sel);
7016          if ($btn.length) {
7017            $('.js-btn-cart-fixed').html(addCartIconWithText($btn.text()));
7018          }
7019        });
7020      }
7021      $(document).on('click', '.js-btn-back-in-stock:visible ', function() {
7022        if ('.btn-add-back-in-stock.is-active:visible') {
7023          $('.js-btn-cart-fixed:not(.available-time-disabled)').show()
7024        } else {
7025          $('.js-btn-cart-fixed:not(.available-time-disabled)').hide()
7026        }
7027      });
7028    }, 500);
7029  }, true);
7030})}]);
7031
7032$(window).load(function() {
7033
7034  /* Fix timing of mobile sticky button display, when replace product image placeholder or carousel change image */
7035  if ($(window).width() <= 767) {
7036    const observer = new ResizeObserver(_.throttle(() => {
7037      btns.forEach(function(sel) {
7038      const $btn = $(sel);
7039        if ($btn.length) {
7040          pos = $btn.offset().top;
7041        }
7042      });
7043      if (document.querySelectorAll('.ProductDetail-product-gallery img').length === 2) {
7044        /* only one picture */
7045        observer.disconnect();
7046      }
7047    }, 500, { trailing: true }));
7048
7049    const target = document.querySelectorAll('.ProductDetail-product-gallery');
7050    if (target.length > 1) observer.observe(target[1]);
7051  }
7052
7053  /* zoom img */
7054  var targetImage = $('.variant-gallery-stage')[0];
7055  setZoomIn();
7056  if (targetImage) {
7057    mainPictureObserver.observe(targetImage, {
7058      childList: true,
7059    });
7060  }
7061  /* add custom button add to cart and fixed if scroll through button add to cart default */
7062  let spbBarHeight = 0;
7063  if ($('body').attr('zb-bar') === 'show') {
7064    spbBarHeight = $('#spb-information-bar').height() || 0;
7065  }
7066  const $header = $('.js-sticky');
7067  const STATIC_BUTTONS_PADDING_TOP = 15;
7068  const announcementHeight = ($('.js-announcement').height() || 0);
7069  let hHeader = announcementHeight;
7070  /* if new page builder not sticky, not add header height */
7071  if ($('#shopline-section-header').length === 0 || $('#shopline-section-header').css('position') === 'sticky') {
7072    hHeader = hHeader + ($header.height() || 0);
7073  }
7074
7075  const cartButtonsDistanceFromTop = hHeader + STATIC_BUTTONS_PADDING_TOP + spbBarHeight;
7076  $('.js-sticky-cart-button-container').css('top', cartButtonsDistanceFromTop);
7077
7078  $(window).scroll(function() {
7079    let cartButtonsDistanceFromTop =  announcementHeight + STATIC_BUTTONS_PADDING_TOP + spbBarHeight;
7080    if ($('#shopline-section-header').length === 0 || $('#shopline-section-header').css('position') === 'sticky') {
7081      cartButtonsDistanceFromTop = cartButtonsDistanceFromTop + ($header.height() || 0);
7082    }
7083
7084    $('.js-sticky-cart-button-container').css('top', cartButtonsDistanceFromTop);
7085    if (window.matchMedia('(min-width: 767px)').matches) {
7086      if ($(window).scrollTop() > pos && !isAvailableTimeDisabled) {
7087        $('.js-sticky-cart-button-container').addClass('active');
7088      } else {
7089        $('.js-sticky-cart-button-container').removeClass('active');
7090      }
7091    } else {
7092      if ($(window).scrollTop() > pos) {
7093        $('.js-sticky-cart-button-container').addClass('active');
7094      } else {
7095        $('.js-sticky-cart-button-container').removeClass('active');
7096      }
7097    }
7098  });
7099});
7100
7101$('.js-product-info .js-price').each(function() {
7102  if($(this).text().trim() === '') {
7103    $(this).addClass('price-empty');
7104  }
7105});
7106
7107var mainPictureObserver = new MutationObserver(function () {
7108  setZoomIn();
7109});
7110
7111function setZoomIn() {
7112  setTimeout(function () {
7113    var targetImgs = $('.js-variant-gallery-stage .img-responsive');
7114    targetImgs.each(function(_, targetImg) {
7115      var originImgUrl = $(targetImg).attr('src');
7116      $(targetImg).parent().trigger('zoom.destroy').zoom({
7117        url: originImgUrl,
7118        magnify: 1.2,
7119      });
7120    })
7121  },0);
7122}
7123
7124app.run([
7125  '$rootScope',
7126  '$timeout',
7127  'imageService',
7128  function($rootScope, $timeout, imageService) {
7129    var observer;
7130    var config = { attributes: false, childList: true, subtree: true };
7131    var callback = function() {
7132      if ($('.img-responsive').length > 0 && $('.zoomImg').length === $('.img-responsive').length) {
7133        $('.img-responsive').each(function(index) {
7134          var mainImg = $(this).parents().find('.zoomImg').eq(index).attr('src');
7135          var largeMainImg = imageService.getLargeImage(mainImg);
7136          $(this).attr('src', largeMainImg);
7137        });
7138      }
7139    };
7140
7141    observer = new MutationObserver(callback);
7142    const target = $('product-variant-gallery').get(0);
7143    if (target) observer.observe(target, config);
7144  }
7145]);
7146
7147function trackClickTab(tabName) {
7148  window.APP_EXTENSION_SDK_ANGULAR_JS_LOADED.then(() => {
7149    const injector = angular.element(document.body)?.injector();
7150    const trackerService = injector.get('trackerService');
7151    trackerService.track({
7152      type: PDP_TAB_CLICK,
7153      data: {
7154        event_category: PDP,
7155        tab_name: tabName,
7156        scope: SHOP,
7157      },
7158    });
7159  });
7160}
7161});
7162</script>
7162
7163
7164
7165
7166
7167<script type="text/javascript">
7168document.addEventListener('DOMContentLoaded', function() {
7169/* set background for post */
7170$('.js-posts-excerpt').each(function() {
7171  if ($('img', this).length) {
7172    var url = $('img', this).attr('src');
7173    $(this).empty().css('background-image', 'url(' + url + ')');
7174  } else {
7175    $(this).empty().css('background-image', 'url(https://shoplineimg.com/5b457f3210abb98a4d0028f7/5c41b52d41652b000f9be4ad/800x.jpg)');
7176  }
7177});
7178});
7179</script>
7179
7180
7181
7182
7183<script type="text/javascript">
7184document.addEventListener('DOMContentLoaded', function() {
7185$( document ).ready(function() {
7186  setTimeout(function() {
7187    $('.PromotionCart-content .cart-item-container').each(function() {
7188      $(this).find('.remove-button').empty();
7189      $(this).find('.remove-button').append('<i class="fa fa-times" aria-hidden="true"></i>');
7190    });
7191  }, 500);
7192});
7193
7194
7195function changeIcon(oldIcon, newIcon) {
7196  oldIcon.each(function() {
7197    $(this).html(newIcon);
7198  });
7199}
7200
7201changeIcon($('.PromotionCart-content .product-content .input-group-btn:first-child > .btn'), '<svg class="icons icon-minus"><use xlink:href="#icon-minus"></use></svg>');
7202changeIcon($('.PromotionCart-content .product-content .input-group-btn:last-child > .btn'), '<svg class="icons icon-plus"><use xlink:href="#icon-plus"></use></svg>');
7203});
7204</script>
7204
7205
7206
7207
7208<script type="text/javascript">
7209document.addEventListener('DOMContentLoaded', function() {
7210/* add class to style scroll */
7211$('.js-tabset-tabs').wrap('<div class="sr-tab"></div>');
7212});
7213</script>
7213
7214
7215
7216
7217<script type="text/javascript">
7218document.addEventListener('DOMContentLoaded', function() {
7219function collapseThirdLayer(currentDOM) {
7220  $('.menu-list-item.fa-angle-left').each(function() {
7221    if (this !== currentDOM){
7222      toggleDropdown(this);
7223    }
7224  });
7225}
7226
7227function assignDropdownID() {
7228  var index = 0;
7229  $('.NavigationBar-mainMenu .List-item').each(function() {
7230    index++;
7231    var $el = $(this);
7232    $el.attr('id', 'main-nav-list-' + index);
7233    var depth = _.reduce($el.parentsUntil('.NavigationBar-mainMenu').toArray(), function(acc, el) {
7234      var $current = $(el);
7235      if ($current.hasClass('NavigationBar-nestedList')) {
7236        $el.attr('data-parent-item', $current.attr('id'));
7237        return acc + 1;
7238      } else {
7239        return acc;
7240      }
7241    }, 0);
7242    $el.addClass('depth-' + depth);
7243  });
7244}
7245
7246function assignMobileDropdownID() {
7247  var index = 0;
7248  $('.MenuPanel-mainMenu .List-item').each(function(){
7249    index++;
7250    var $el = $(this);
7251    $el.attr('id', 'main-menu-list-' + index);
7252    var depth = _.reduce($el.parentsUntil('.MenuPanel-mainMenu').toArray(), function(acc, el) {
7253      var $current = $(el);
7254      if ($current.hasClass('MenuPanel-nestedList')) {
7255        $el.attr('data-parent-item', $current.attr('id'));
7256        return acc + 1;
7257      } else {
7258        return acc;
7259      }
7260    }, 0);
7261    $el.addClass('depth-' + depth);
7262  });
7263}
7264
7265function assignDropdownFunction(){
7266  $('.NavigationBar-mainMenu').on('click', 'i.menu-list-item', function() {
7267    toggleDropdown(this);
7268    if ($(this).hasClass('fa-angle-left')) {
7269      handleUIScrollThirdLayer($(this));
7270    }
7271  });
7272}
7273
7274function handleUIScrollThirdLayer(btnClickOpen3Layer) {
7275  var hSecondLayer = btnClickOpen3Layer.closest('.js-nav-nestedlist-dropdown').height();
7276  var hThirdLayer = 0;
7277  btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).find('li').each(function(index, item) {
7278    hThirdLayer += $(item).height();
7279  });
7280  if ((hThirdLayer > hSecondLayer) && (!btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).hasClass('scroll-third-layer')))  {
7281    btnClickOpen3Layer.nextAll('.NavigationBar-nestedList-expand').eq(0).addClass('scroll-third-layer');
7282  }
7283}
7284
7285function calculateCSSByTargetHeight(target, dropdownIdentifer, toggle) {
7286  var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown');
7287  var maxWidth = parseInt($($dropdown).css('max-width'), 0);
7288  var currentHeight = $($dropdown).height();
7289  var foundFlag = false;
7290  var totalHeight = 0;
7291  var targetHeight = 0;
7292  var rowNum = 0;
7293  var targetWidth = 0;
7294  var totalWidth = 0;
7295  var rowWidth = $($dropdown + '> li').outerWidth();
7296
7297  $($dropdown + '> li').each(function() {
7298      if ((totalHeight + $(this).height()) > currentHeight) {
7299        totalHeight = $(this).height();
7300        rowNum += 1;
7301      } else {
7302        totalHeight += $(this).height();
7303      }
7304      totalWidth = (rowNum + 1) * rowWidth;
7305      if (!foundFlag) {
7306        targetHeight = totalHeight;
7307        targetWidth = totalWidth;
7308      }
7309      hideItemOfColumnAfterTargetColumn(this, targetWidth, totalWidth);
7310      if (this.id === target) {
7311        targetHeight -= $(this).height();
7312        foundFlag = true;
7313        if (!$($dropdown).next().hasClass('disable')) {
7314          $($dropdown).next().addClass('disable');
7315        }
7316      }
7317  });
7318  if (targetWidth > maxWidth) {
7319    if($($dropdown).next().hasClass('disable')) {
7320      $($dropdown).next().removeClass('disable');
7321    }
7322  };
7323  controlDropdownHeight(targetWidth, rowWidth, dropdownIdentifer, currentHeight);
7324  return {'targetWidth': targetWidth, 'targetHeight': targetHeight, 'foundFlag': foundFlag};
7325}
7326
7327function controlDropdownHeight(targetWidth, rowWidth, dropdownIdentifer, currentHeight) {
7328  var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown');
7329  if (targetWidth > rowWidth) {
7330    $('.NavigationBar-nestedList-expand').css('max-height',$($dropdown).height());
7331  }
7332  $($dropdown).css('height', currentHeight);
7333  $($dropdown).next().css('height', currentHeight);
7334}
7335
7336function hideItemOfColumnAfterTargetColumn(caller, targetWidth, totalWidth) {
7337  if (targetWidth < totalWidth) {
7338    $(caller).hide();
7339  } else {
7340    $(caller).show();
7341  };
7342}
7343
7344function calulateSecondLayerCSSAfterClick(caller) {
7345  var dropdownIdentifer = $(caller).parent().attr('data-parent-item');
7346  var lastItemID = $('.List-item#' + dropdownIdentifer+' > .js-nav-nestedlist-dropdown' + '> li').length;
7347  if (caller.classList.contains('fa-angle-right')) {
7348    return calculateCSSByTargetHeight($(caller).parent()[0].id, dropdownIdentifer);
7349  }
7350  else{
7351    return calculateCSSByTargetHeight(lastItemID, dropdownIdentifer);
7352  };
7353}
7354
7355function toggleDropdown(caller) {
7356  if ($(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).hasClass('collapsing')) {
7357    return;
7358  }
7359  collapseThirdLayer(caller);
7360  var dropdownIdentifer = $(caller).parent().attr('data-parent-item');
7361  var $dropdown = ('.List-item#' + dropdownIdentifer + ' > .js-nav-nestedlist-dropdown');
7362  var maxWidth = parseInt($($dropdown).css('max-width'), 0);
7363  var lastItemID = $($dropdown).length;
7364  var rowWidth = $($dropdown + '> li').outerWidth();
7365  var targetWidth = calulateSecondLayerCSSAfterClick(caller)['targetWidth'];
7366  var top = calulateSecondLayerCSSAfterClick(caller)['targetHeight'];
7367  var foundFlag = calulateSecondLayerCSSAfterClick(caller)['foundFlag'];
7368
7369  if (foundFlag) {
7370    targetWidth += rowWidth;
7371  }
7372
7373  $(caller).toggleClass('fa-angle-left fa-angle-right');
7374  changeThirdLayerCSS(caller, $dropdown, top);
7375  controlSecondLayerCSS(caller, $dropdown, targetWidth);
7376  scrollDropdownWhenManyColumns(targetWidth, maxWidth, $dropdown, foundFlag);
7377}
7378
7379function changeThirdLayerCSS(caller, $dropdown, top) {
7380  $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).css('min-height', $($dropdown).height());
7381  $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).collapse('toggle');
7382  $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).css('top', -top);
7383}
7384
7385function scrollDropdownWhenManyColumns(targetWidth, maxWidth, $dropdown, foundFlag) {
7386  if (targetWidth > maxWidth)  {
7387    if (foundFlag) {
7388      var tempLeft = $($dropdown).scrollLeft();
7389      $($dropdown).animate({ scrollLeft: tempLeft + (targetWidth - maxWidth) });
7390    } else {
7391      /* To trigger scrollSubmenu in menu.js.liquid */
7392      $($dropdown).scroll();
7393    }
7394  }
7395}
7396
7397function controlSecondLayerCSS(caller, $dropdown, targetWidth) {
7398  if ($($dropdown).height() < $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).height()) {
7399    $($dropdown).css('height', $(caller).nextAll('.NavigationBar-nestedList-expand').eq(0).height());
7400    $($dropdown).next().css('height', $($dropdown).height());
7401  } else {
7402    $($dropdown).css('height', '');
7403    $($dropdown).next().css('height', $($dropdown).height());
7404  }
7405  $($dropdown).next().css('width', targetWidth);
7406  $($dropdown).css('width', targetWidth);
7407  var callerData = $(caller)[0].getBoundingClientRect();
7408  var rightOffset = $(window).width() - callerData.right;
7409  if (rightOffset < 250 && $(caller).hasClass('fa-angle-left')) {
7410    $($dropdown).css({'left': rightOffset - 250}
7410);
7411  } else {
7412    $($dropdown).css({'left': 0});
7413  }
7414}
7415
7416window.onload = function() {
7417  angular.element(document).ready(function() {
7418    assignDropdownID();
7419    assignMobileDropdownID();
7420    assignDropdownFunction();
7421    $('.NavigationBar-mainMenu').on( 'mouseleave', '.depth-0', function() {
7422      collapseThirdLayer('empty');
7423    });
7424
7425    $('.js-navbar-desktop').find('.NavigationBar-nestedList.depth-1').each(function() {
7426      $(this).children('a.Label').css({'padding-right': 0, 'max-width': 175});
7427    });
7428
7429    function isQuickCartProduct(imageClass) {
7430      return imageClass === '.js-boxify-image';
7431    }
7432
7433    function hoverProductEffect(imageClass) {
7434      var elements;
7435      elements = isQuickCartProduct(imageClass) ? $('product-item') : $('.Product-item');
7436      elements.each(function() {
7437        var $this;
7438        $this = isQuickCartProduct(imageClass) ? $(this).children().first() : $(this);
7439        var secondCoverImage = $this.find('.second-image');
7440        if (secondCoverImage.length === 0) { return; }
7441
7442        var multiImageWrapper;
7443        multiImageWrapper = isQuickCartProduct(imageClass) ? $this.find('.js-quick-boxify-image') : $this;
7444        multiImageWrapper.addClass('multi-image');
7445      });
7446    }
7447
7448    function loadEffect() {
7449      /* product items without quick cart feature */
7450      hoverProductEffect('.js-image-boxify-image');
7451      /* product items with quick cart feature */
7452      hoverProductEffect('.js-boxify-image');
7453    }
7454    loadEffect();
7455
7456    /* observe pagination changes in multiple category widgets */
7457    $('.product-items-container').each(function(index, productItemsContainer) {
7458      var config = {
7459        childList: true,
7460      };
7461      var observer = new MutationObserver(function(mutations) {
7462        loadEffect();
7463      });
7464
7465      observer.observe(productItemsContainer, config);
7466    });
7467  });
7468}
7469});
7470</script>
7470
7471
7472
7473
7474
7475<script type="text/javascript">
7476document.addEventListener('DOMContentLoaded', function() {
7477/* Track PDP, PLP, Blog, Blog List. breadcrumb clicks for analytics */
7478document.querySelectorAll(
7479  "#ProductDetail-breadcrumb a, #blog-breadcrumb a, #ProductList-breadcrumb a"
7480).forEach(link => {
7481  link.addEventListener('click', function () {
7482    trackClickBreadCrumb();
7483  });
7484});
7485
7486function trackClickBreadCrumb(){
7487  window.APP_EXTENSION_SDK_ANGULAR_JS_LOADED.then(() => {
7488    const injector = angular.element(document.body)?.injector();
7489    const trackerService = injector.get('trackerService');
7490    trackerService.track({
7491      type: 'BreadCrumbClick',
7492      data: {
7493        event_category: 'Storefront',
7494        scope: 'shop',
7495      },
7496    });
7497  });
7498}
7499/* Track PDP, PLP, Blog, Blog List. breadcrumb clicks for analytics END */
7500});
7501</script>
7501
7502
7503
7504
7505
7506
7507
7508    
7509    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7510  <symbol id="icon-cart" viewBox="0 0 24 24">
7511    <path fill-rule="evenodd" clip-rule="evenodd" d="M3.79763 5.20007H2.2998C2.02366 5.20007 1.7998 4.97622 1.7998 4.70007V3.70007C1.7998 3.42393 2.02366 3.20007 2.2998 3.20007H4.5998C5.0685 3.20007 5.47432 3.52561 5.57599 3.98314L5.93531 5.60007H20.1998C20.4897 5.60007 20.7653 5.72587 20.9553 5.94487C21.1452 6.16387 21.2308 6.45452 21.1898 6.74149L19.9898 15.1415C19.9194 15.6341 19.4975 16.0001 18.9998 16.0001H6.9998C6.53111 16.0001 6.12529 15.6745 6.02362 15.217L3.79763 5.20007ZM6.37975 7.60007L7.80198 14.0001H18.1325L19.0468 7.60007H6.37975Z" />
7512    <circle cx="8.2" cy="19.2" r="1.2" />
7513    <circle cx="17.7996" cy="19.2" r="1.2" />
7514  </symbol>
7515</svg>
7516
7517    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7518  <symbol id="icon-filter" viewBox="0 0 20 20">
7519    <path d="M15.4369 4.7998H4.56315C4.06351 4.7998 3.8114 5.40604 4.16542 5.76006L8.5 10.0953V14.9248C8.5 15.1083 8.58955 15.2803 8.73993 15.3856L10.6149 16.6977C10.9848 16.9566 11.5 16.6942 11.5 16.2368V10.0953L15.8347 5.76006C16.188 5.40674 15.9376 4.7998 15.4369 4.7998Z" fill="currentColor" />
7520    <rect x="4" y="3.2002" width="12" height="0.8" fill="currentColor" />
7521  </symbol>
7522</svg>
7523
7524    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7525  <symbol id="icon-close" viewBox="0 0 11 11">
7526    <g>
7527      <path d="M4.70449705,5.49954654 L0.164758205,0.960229693 C-0.0549194016,0.74055583 -0.0549194016,0.38442926 0.164758205,0.164755397 C0.384435811,-0.0549184658 0.740568449,-0.0549184658 0.960246055,0.164755397 L5.49983968,4.70427167 L10.0397539,0.164744169 C10.2594316,-0.0549147229 10.6155642,-0.0549147229 10.8352418,0.164744169 C11.0549194,0.38440306 11.0549194,0.740505359 10.8352418,0.96016425 L6.29530042,5.49971886 L10.8352418,10.0395829 C11.0549194,10.2592567 11.0549194,10.616133 10.8352418,10.8358069 C10.7257779,10.945269 10.5818253,11 10.4378727,11 C10.2939202,11 10.1499676,10.945269 10.0405037,10.8350572 L5.49998799,6.29496353 L0.959496302,10.8350684 C0.850032376,10.9452727 0.706079815,11 0.562127254,11 C0.418174692,11 0.274222131,10.9452727 0.164758205,10.8350684 C-0.0549194016,10.6154095 -0.0549194016,10.2585575 0.164758205,10.0388986 L4.70449705,5.49954654 Z"></path>
7528    </g>
7529  </symbol>
7530</svg>
7531    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7532  <symbol id="icon-zoom-v2" viewBox="0 0 16 16">
7533    <path fill-rule="evenodd" clip-rule="evenodd" d="M14.4429 0.799561C14.8607 0.799656 15.1996 1.13856 15.1997 1.5564V6.68726C15.1997 7.03934 14.9141 7.32495 14.562 7.32495C14.21 7.32482 13.9243 7.03926 13.9243 6.68726V2.96069L2.96045 13.9246H6.68701C7.03909 13.9246 7.32471 14.2102 7.32471 14.5623C7.32471 14.9143 7.03909 15.2 6.68701 15.2H1.55615C1.13843 15.1997 0.799412 14.8609 0.799316 14.4431V9.31226C0.799316 8.96026 1.08504 8.67469 1.43701 8.67456C1.78909 8.67456 2.07471 8.96017 2.07471 9.31226V13.0388L13.0386 2.07495H9.31201C8.96004 2.07482 8.67432 1.78926 8.67432 1.43726C8.67432 1.08526 8.96004 0.799693 9.31201 0.799561H14.4429Z" />
7534  </symbol>
7535</svg>
7536
7537    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7538  <symbol id="fa-v5-globe" viewBox="0 0 496 512">
7539    <path d="M336.5 160C322 70.7 287.8 8 248 8s-74 62.7-88.5 152h177zM152 256c0 22.2 1.2 43.5 3.3 64h185.3c2.1-20.5 3.3-41.8 3.3-64s-1.2-43.5-3.3-64H155.3c-2.1 20.5-3.3 41.8-3.3 64zm324.7-96c-28.6-67.9-86.5-120.4-158-141.6 24.4 33.8 41.2 84.7 50 141.6h108zM177.2 18.4C105.8 39.6 47.8 92.1 19.3 160h108c8.7-56.9 25.5-107.8 49.9-141.6zM487.4 192H372.7c2.1 21 3.3 42.5 3.3 64s-1.2 43-3.3 64h114.6c5.5-20.5 8.6-41.8 8.6-64s-3.1-43.5-8.5-64zM120 256c0-21.5 1.2-43 3.3-64H8.6C3.2 212.5 0 233.8 0 256s3.2 43.5 8.6 64h114.6c-2-21-3.2-42.5-3.2-64zm39.5 96c14.5 89.3 48.7 152 88.5 152s74-62.7 88.5-152h-177zm159.3 141.6c71.4-21.2 129.4-73.7 158-141.6h-108c-8.8 56.9-25.6 107.8-50 141.6zM19.3 352c28.6 67.9 86.5 120.4 158 141.6-24.4-33.8-41.2-84.7-50-141.6h-108z"/>
7540  </symbol>
7541</svg>
7542    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7543  <symbol id="icon-filter-category" viewBox="0 0 13 13">
7544    <path d="M4.75568 6.41662C4.95995 6.71222 4.89888 6.4659 4.89888 12.358C4.89888 12.8852 5.50044 13.187 5.92441 12.8716C7.73611 11.5057 8.09808 11.3874 8.09808 10.7485C8.09808 6.45481 8.04803 6.69627 8.24128 6.41662L11.1833 2.41206H1.81372L4.75568 6.41662Z" />
7545    <path d="M12.2946 0.326523C12.1895 0.125176 11.9833 0 11.7563 0H1.24064C0.750473 0 0.462061 0.552932 0.743236 0.954687C0.745547 0.958547 0.71132 0.911701 1.2541 1.65039H11.7428C12.2054 1.02088 12.5146 0.748896 12.2946 0.326523Z" />
7546  </symbol>
7547</svg>
7548
7549    <svg xmlns="http://www.w3.org/2000/svg" style="display: none">
7550  <symbol id="icon-sort-category" viewBox="0 0 14 12">
7551    <path
7552      d="M6.42869 1.71429H8.14298C8.25664 1.71429 8.36565 1.66913 8.44602 1.58876C8.5264 1.50839 8.57155 1.39938 8.57155 1.28571V0.428571C8.57155 0.314907 8.5264 0.205898 8.44602 0.125526C8.36565 0.0451529 8.25664 0 8.14298 0H6.42869C6.31503 0 6.20602 0.0451529 6.12565 0.125526C6.04527 0.205898 6.00012 0.314907 6.00012 0.428571V1.28571C6.00012 1.39938 6.04527 1.50839 6.12565 1.58876C6.20602 1.66913 6.31503 1.71429 6.42869 1.71429ZM6.42869 5.14286H9.85726C9.97093 5.14286 10.0799 5.0977 10.1603 5.01733C10.2407 4.93696 10.2858 4.82795 10.2858 4.71429V3.85714C10.2858 3.74348 10.2407 3.63447 10.1603 3.5541C10.0799 3.47372 9.97093 3.42857 9.85726 3.4285
75527H6.42869C6.31503 3.42857 6.20602 3.47372 6.12565 3.5541C6.04527 3.63447 6.00012 3.74348 6.00012 3.85714V4.71429C6.00012 4.82795 6.04527 4.93696 6.12565 5.01733C6.20602 5.0977 6.31503 5.14286 6.42869 5.14286ZM13.2858 10.2857H6.42869C6.31503 10.2857 6.20602 10.3309 6.12565 10.4112C6.04527 10.4916 6.00012 10.6006 6.00012 10.7143V11.5714C6.00012 11.6851 6.04527 11.7941 6.12565 11.8745C6.20602 11.9548 6.31503 12 6.42869 12H13.2858C13.3995 12 13.5085 11.9548 13.5889 11.8745C13.6693 11.7941 13.7144 11.6851 13.7144 11.5714V10.7143C13.7144 10.6006 13.6693 10.4916 13.5889 10.4112C13.5085 10.3309 13.3995 10.2857 13.2858 10.2857ZM6.42869 8.57143H11.5715C11.6852 8.57143 11.7942 8.52628 11.8746 8.4459C11.955 8.36553 12.0001 8.25652 12.0001 8.14286V7.28571C12.0001 7.17205 11.955 7.06304 11.8746 6.98267C11.7942 6.9023 11.6852 6.85714 11.5715 6.85714H6.42869C6.31503 6.85714 6.20602 6.9023 6.12565 6.98267C6.04527 7.06304 6.00012 7.17205 6.00012 7.28571V8.14286C6.00012 8.25652 6.04527 8.36553 6.12565 8.4459C6.20602 8.52628 6.31503 8.57143 6.42869 8.57143ZM0.428691 3.42857H1.7144V11.5714C1.7144 11.6851 1.75956 11.7941 1.83993 11.8745C1.9203 11.9548 2.02931 12 2.14298 12H3.00012C3.11378 12 3.22279 11.9548 3.30316 11.8745C3.38354 11.7941 3.42869 11.6851 3.42869 11.5714V3.42857H4.71441C5.09503 3.42857 5.28735 2.96679 5.01735 2.69705L2.87449 0.125625C2.79413 0.045313 2.68516 0.000198637 2.57155 0.000198637C2.45793 0.000198637 2.34897 0.045313 2.2686 0.125625L0.125744 2.69705C-0.143184 2.96625 0.0477978 3.42857 0.428691 3.42857Z"
7553    />
7554  </symbol>
7555</svg>
7556    <svg xmlns="http://www.w3.org/2000/svg" style="display: none">
7557  <symbol id="icon-limit-category" viewBox="0 0 14 14">
7558    <path
7559      d="M2.625 12.6875L2.625 1.3125C2.625 1.19647 2.57891 1.08519 2.49686 1.00314C2.41481 0.921093 2.30353 0.875 2.1875 0.875L1.3125 0.874999C1.19647 0.874999 1.08519 0.921093 1.00314 1.00314C0.921093 1.08519 0.875 1.19647 0.875 1.3125L0.874999 12.6875C0.874999 12.8035 0.921092 12.9148 1.00314 12.9969C1.08519 13.0789 1.19647 13.125 1.3125 13.125L2.1875 13.125C2.30353 13.125 2.41481 13.0789 2.49686 12.9969C2.57891 12.9148 2.625 12.8035 2.625 12.6875ZM6.125 12.6875L6.125 1.3125C6.125 1.19647 6.07891 1.08519 5.99686 1.00314C5.91481 0.921093 5.80353 0.875 5.6875 0.875L4.8125 0.875C4.69647 0.875 4.58519 0.921093 4.50314 1.00314C4.42109 1.08519 4.375 1.19647 4.375 1.3125L4.375 12.6875C4.375 12.8035 4.42109 12.9148 4.50314 12.9969C4.58519 13.0789 4.69647 13.125 4.8125 13.125L5.6875 13.125C5.80353 13.125 5.91481 13.0789 5.99686 12.9969C6.07891 12.9148 6.125 12.8035 6.125 12.6875ZM9.625 12.6875L9.625 1.3125C9.625 1.19647 9.57891 1.08519 9.49686 1.00314C9.41481 0.921093 9.30353 0.875 9.1875 0.875L8.3125 0.875C8.19647 0.875 8.08519 0.921093 8.00314 1.00314C7.92109 1.08519 7.875 1.19647 7.875 1.3125L7.875 12.6875C7.875 12.8035 7.92109 12.9148 8.00314 12.9969C8.08519 13.0789 8.19647 13.125 8.3125 13.125L9.1875 13.125C9.30353 13.125 9.41481 13.0789 9.49686 12.9969C9.57891 12.9148 9.625 12.8035 9.625 12.6875ZM13.125 12.6875L13.125 1.3125C13.125 1.19647 13.0789 1.08519 12.9969 1.00314C12.9148 0.921094 12.8035 0.875 12.6875 0.875L11.8125 0.875C11.6965 0.875 11.5852 0.921094 11.5031 1.00314C11.4211 1.08519 11.375 1.19647 11.375 1.3125L11.375 12.6875C11.375 12.8035 11.4211 12.9148 11.5031 12.9969C11.5852 13.0789 11.6965 13.125 11.8125 13.125L12.6875 13.125C12.8035 13.125 12.9148 13.0789 12.9969 12.9969C13.0789 12.9148 13.125 12.8035 13.125 12.6875Z"
7560    />
7561  </symbol>
7562</svg>
7563    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7564  <symbol id="icon-line" viewBox="0 0 20 18">
7565    <path d="M10.0003 0.464844C4.89777 0.464844 0.761719 3.71943 0.761719 7.73389C0.761719 11.4629 4.33199 14.5341 8.92943 14.9525C9.00548 14.9655 9.07805 14.9939 9.14264 15.0361C9.20724 15.0782 9.26247 15.1332 9.3049 15.1976C9.50896 15.5335 9.36393 16.2491 9.20549 17.0514C9.04701 17.8537 9.90871 17.4374 10.0994 17.3444C10.2511 17.2708 14.1571 15.0697 16.4824 12.9114C18.1829 11.5927 19.2383 9.76024 19.2383 7.73412C19.2389 3.71943 15.1025 0.464844 10.0003 0.464844ZM6.93359 9.62481C6.93115 9.89682 6.70811 10.1155 6.43529 10.1133H4.7407C4.4416 10.1133 4.04297 10.0102 4.04297 9.52707V5.91426C4.04354 5.84952 4.05689 5.78554 4.08224 5.72597C4.10759 5.6664 4.14445 5.61242 4.1907 5.56713C4.28424 5.47546 4.41031 5.42463 4.54127 5.42578H4.64104C4.772 5.42463 4.89808 5.47546 4.99162 5.56713C5.03787 5.61243 5.07472 5.66641 5.10007 5.72597C5.12542 5.78554 5.13876 5.84953 5.13934 5.91426V9.03867H6.43504C6.70793 9.03633 6.93113 9.25498 6.93359 9.52707V9.62481ZM8.32031 9.52047C8.32031 9.79399 8.09728 10.0156 7.82227 10.0156C7.54717 10.0156 7.32422 9.79399 7.32422 9.52047V6.01859C7.32422 5.74512 7.54717 5.52344 7.82227 5.52344C8.09728 5.52344 8.32031 5.74512 8.32031 6.01859V9.52047ZM12.6744 9.52006C12.6465 9.78 12.4388 9.98418 12.1784 10.0076C12.064 10.0271 11.9464 10.0108 11.8417 9.96069C11.737 9.91063 11.6504 9.82936 11.5938 9.72805L9.99559 7.48695V9.51949C9.98914 9.78869 9.76908 10.0035 9.49973 10.0035C9.23049 10.0035 9.01033 9.78869 9.00391 9.51949V6.01067C9.00445 5.94612 9.01771 5.88232 9.04293 5.8229C9.06814 5.76348 9.10482 5.70961 9.15086 5.66438C9.19689 5.61913 9.25138 5.5834 9.31121 5.55922C9.37105 5.53504 9.43507 5.52288 9.49961 5.52344C9.61739 5.52415 9.7326 5.55801 9.83204 5.62115C9.93147 5.68428 10.0111 5.77414 10.0619 5.88043C10.2157 6.10744 11.6835 8.15363 11.6835 8.15363V6.01067C11.6901 5.74147 11.9103 5.5267 12.1796 5.5267C12.449 5.5267 12.6691 5.74147 12.6758 6.01068V9.51947L12.6744 9.52006ZM15.6712 7.28111C15.846 7.28111 16.0075 7.37422 16.0949 7.52531C16.1378 7.59954 16.1604 7.68378 16.1604 7.76953C16.1604 7.85529 16.1378 7.93952 16.0949 8.01375C16.0519 8.08803 15.9901 8.1497 15.9157 8.19256C15.8414 8.23542 15.757 8.25797 15.6712 8.25795H14.377V9.03897H15.6711C15.7582 9.03691 15.8443 9.05814 15.9205 9.10048C15.9966 9.14282 16.0601 9.20472 16.1043 9.27979C16.1485 9.35478 16.1718 9.44024 16.1718 9.52729C16.1718 9.61433 16.1485 9.69979 16.1043 9.77479C16.0601 9.84983 15.9966 9.91171 15.9205 9.95402C15.8443 9.99634 15.7582 10.0176 15.6711 10.0155H13.7301C13.6717 10.0162 13.6138 10.0054 13.5596 9.98364C13.5054 9.96192 13.456 9.92972 13.4143 9.88889C13.3726 9.84815 13.3394 9.79958 13.3166 9.74595C13.2937 9.69233 13.2817 9.63471 13.2812 9.57643V5.96295C13.2817 5.90463 13.2937 5.84698 13.3
7565165 5.79332C13.3393 5.73965 13.3726 5.69103 13.4143 5.65026C13.456 5.60941 13.5054 5.5772 13.5595 5.55546C13.6137 5.53373 13.6717 5.52289 13.7301 5.52357H15.6712C15.7583 5.52152 15.8444 5.54274 15.9205 5.58505C15.9967 5.62737 16.0602 5.68924 16.1044 5.76428C16.1486 5.83929 16.1719 5.92475 16.1719 6.01179C16.1719 6.09883 16.1486 6.18429 16.1044 6.2593C16.0602 6.33434 15.9967 6.39623 15.9205 6.43856C15.8444 6.48088 15.7583 6.50213 15.6712 6.5001H14.377V7.28143L15.6712 7.28111Z" fill="#1FC81F"/>
7566  </symbol>
7567</svg>
7568
7569    <svg xmlns="http://www.w3.org/2000/svg" style="display: none">
7570  <symbol id="icon-lineapp" viewBox="0 0 32 32">
7571    <path fill="currentColor" d="M28 14.304c0-5.37-5.384-9.738-12-9.738S4 8.936 4 14.304c0 4.814 4.27 8.846 10.035 9.608.39.084.923.258 1.058.592.122.303.08.778.04 1.084l-.172 1.028c-.05.303-.24 1.187 1.04.647s6.91-4.07 9.43-6.968c1.74-1.905 2.57-3.842 2.57-5.99zM11.302 17.5H8.918a.631.631 0 0 1-.63-.63V12.1a.63.63 0 0 1 1.26.002v4.14h1.754c.35 0 .63.28.63.628a.63.63 0 0 1-.63.63zm2.467-.63a.631.631 0 0 1-.63.628.629.629 0 0 1-.63-.63V12.1a.63.63 0 1 1 1.26 0v4.77zm5.74 0a.632.632 0 0 1-1.137.378l-2.443-3.33v2.95a.631.631 0 0 1-1.26 0V12.1a.634.634 0 0 1 .63-.63.63.63 0 0 1 .504.252l2.444 3.328V12.1a.63.63 0 0 1 1.26 0v4.77zm3.853-3.014a.63.63 0 1 1 0 1.258H21.61v1.126h1.755a.63.63 0 1 1 0 1.258H20.98a.63.63 0 0 1-.628-.63V12.1a.63.63 0 0 1 .63-.628h2.384a.63.63 0 0 1 0 1.258h-1.754v1.126h1.754z"/>
7572  </symbol>
7573</svg>
7574
7575    <svg xmlns="http://www.w3.org/2000/svg" style="display: none">
7576  <symbol id="icon-facebook" viewBox="0 0 32 32">
7577    <path fill="currentColor" d="M17.78 27.5V17.008h3.522l.527-4.09h-4.05v-2.61c0-1.182.33-1.99 2.023-1.99h2.166V4.66c-.375-.05-1.66-.16-3.155-.16-3.123 0-5.26 1.905-5.26 5.405v3.016h-3.53v4.09h3.53V27.5h4.223z"/>
7578  </symbol>
7579</svg>
7580
7581    <svg xmlns="http://www.w3.org/2000/svg" style="display: none">
7582  <symbol id="icon-whatsapp" viewBox="0 0 32 32">
7583    <path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M16.21 4.41C9.973 4.41 4.917 9.465 4.917 15.7c0 2.134.592 4.13 1.62 5.832L4.5 27.59l6.25-2.002a11.241 11.241 0 0 0 5.46 1.404c6.234 0 11.29-5.055 11.29-11.29 0-6.237-5.056-11.292-11.29-11.292zm0 20.69c-1.91 0-3.69-.57-5.173-1.553l-3.61 1.156 1.173-3.49a9.345 9.345 0 0 1-1.79-5.512c0-5.18 4.217-9.4 9.4-9.4 5.183 0 9.397 4.22 9.397 9.4 0 5.188-4.214 9.4-9.398 9.4zm5.293-6.832c-.284-.155-1.673-.906-1.934-1.012-.265-.106-.455-.16-.658.12s-.78.91-.954 1.096c-.176.186-.345.203-.628.048-.282-.154-1.2-.494-2.264-1.517-.83-.795-1.373-1.76-1.53-2.055-.158-.295 0-.445.15-.584.134-.124.3-.326.45-.488.15-.163.203-.28.306-.47.104-.19.06-.36-.005-.506-.066-.147-.59-1.587-.81-2.173-.218-.586-.46-.498-.63-.505-.168-.007-.358-.038-.55-.045-.19-.007-.51.054-.78.332-.277.274-1.05.943-1.1 2.362-.055 1.418.926 2.826 1.064 3.023.137.2 1.874 3.272 4.76 4.537 2.888 1.264 2.9.878 3.43.85.53-.027 1.734-.633 2-1.297.266-.664.287-1.24.22-1.363-.07-.123-.26-.203-.54-.357z"/>
7584  </symbol>
7585</svg>
7586
7587    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7588  <symbol id="icon-copylink" viewBox="-2 -2 18 18" fill="none">
7589    <path d="M7.2428 11L6.62155 11.6212C6.0574 12.1763 5.29677 12.4859 4.50536 12.4827C3.71395 12.4794 2.95587 12.1636 2.39626 11.604C1.83664 11.0444 1.52083 10.2863 1.5176 9.49491C1.51438 8.7035 1.82401 7.94288 2.37905 7.37872L3.88593 5.87497C4.42644 5.33337 5.15347 5.01876 5.9183 4.99553C6.68312 4.97229 7.42791 5.24218 8.0003 5.74997" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/>
7590    <path d="M6.7575 3.0003L7.37875 2.37905C7.94291 1.82401 8.70353 1.51438 9.49494 1.5176C10.2864 1.52083 11.0444 1.83664 11.604 2.39626C12.1637 2.95587 12.4795 3.71395 12.4827 4.50536C12.4859 5.29677 12.1763 6.0574 11.6213 6.62155L10.1144 8.12843C9.57346 8.6696 8.8462 8.98363 8.08139 9.00629C7.31657 9.02894 6.572 8.75851 6 8.2503" stroke="currentColor" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/>
7591  </symbol>
7592</svg>
7593
7594    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7595  <symbol id="icon-basket" viewBox="0 0 1024 992">
7596    <path d="M1015.5 267.5Q1006 254 990 254H311L259 77q-7-24-19-41t-25.5-24T191 2.5 171 0H34Q21 0 12 9T3 32q0 8 4 15.5T18.5 59 34 
759663h137q4 0 7.5 1t9.5 8.5T198 95l177 650q2 6 6.5 11.5T392 765t13 3h432q10 0 18.5-6t11.5-15l153-450q5-16-4.5-29.5zM815 704H430L328 318h616zm-63 128q-33 0-56.5 23.5T672 912t23.5 56.5T752 992t56.5-23.5T832 912t-23.5-56.5T752 832zm-288 0q-22 0-40.5 11t-29 29-10.5 40q0 33 23.5 56.5T464 992t56.5-23.5T544 912q0-8-1.5-16t-4.5-15-7.5-13.5-10-12-12-10T495 838t-15-4.5-16-1.5z"/>
7597  </symbol>
7598</svg>
7599    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7600  <symbol id="icon-coupon" viewBox="0 0 16 16">
7601    <path
7602      fill-rule="evenodd"
7603      clip-rule="evenodd"
7604      d="M1.2 3.99995C1.2 3.55812 1.55817 3.19995 2 3.19995H13.84C14.2818 3.19995 14.64 3.55812 14.64 3.99995L14.64 6.5599C14.1098 6.5599 13.68 7.20461 13.68 7.9999C13.68 8.79519 14.1098 9.4399 14.64 9.4399L14.64 12C14.64 12.4418 14.2818 12.8 13.84 12.8H2C1.55817 12.8 1.2 12.4418 1.2 12V9.4399C1.73019 9.4399 2.16 8.79519 2.16 7.9999C2.16 7.20461 1.73019 6.5599 1.2 6.5599V3.99995ZM7.536 6.0799C7.536 6.50406 7.19215 6.8479 6.768 6.8479C6.34384 6.8479 6 6.50406 6 6.0799C6 5.65575 6.34384 5.3119 6.768 5.3119C7.19215 5.3119 7.536 5.65575 7.536 6.0799ZM9.07206 10.2079C9.49621 10.2079 9.84006 9.86406 9.84006 9.4399C9.84006 9.01575 9.49621 8.6719 9.07206 8.6719C8.6479 8.6719 8.30406 9.01575 8.30406 9.4399C8.30406 9.86406 8.6479 10.2079 9.07206 10.2079ZM10.32 6.07983L9.64118 5.40101L5.56824 9.47395L6.24706 10.1528L10.32 6.07983Z"
7605      fill="currentColor"
7606    />
7607  </symbol>
7608</svg>
7609    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7610  <symbol id="icon-fb-messenger" viewBox="0 0 16 16" fill="none">
7611    <path d="M7.98195 0.249817C3.62577 0.249817 0.249838 3.4335 0.249838 7.73368C0.249838 9.98285 1.17408 11.9265 2.67851 13.2692C2.93827 13.5028 2.88476 13.6381 2.92893 15.0807C2.93241 15.1817 2.96056 15.2804 3.01092 15.368C3.06128 15.4557 3.13233 15.5297 3.21786 15.5836C3.3034 15.6375 3.40082 15.6697 3.50164 15.6773C3.60245 15.6849 3.7036 15.6677 3.79625 15.6272C5.44222 14.9024 5.46337 14.8452 5.74242 14.9211C10.5111 16.2336 15.6798 13.1818 15.6798 7.73368C15.6798 3.4335 12.3384 0.249817 7.98195 0.249817ZM12.6246 6.009L10.3537 9.60425C10.2679 9.73945 10.1552 9.85547 10.0225 9.94505C9.8898 10.0346 9.74004 10.0958 9.58259 10.1248C9.42514 10.1538 9.2634 10.15 9.1075 10.1136C8.9516 10.0772 8.80491 10.0089 8.67661 9.91317L6.86981 8.56086C6.78903 8.50028 6.69079 8.46754 6.58983 8.46754C6.48886 8.46754 6.39062 8.50028 6.30985 8.56086L3.87184 10.41C3.54644 10.6567 3.12025 10.2669 3.33957 9.9225L5.61052 6.32725C5.69624 6.19202 5.80898 6.07596 5.94167 5.98635C6.07436 5.89674 6.22413 5.83552 6.38159 5.80651C6.53905 5.77751 6.70081 5.78135 6.85672 5.8178C7.01262 5.85425 7.15932 5.92252 7.2876 6.01833L9.09378 7.37033C9.17455 7.43091 9.27279 7.46365 9.37376 7.46365C9.47472 7.46365 9.57297 7.43091 9.65374 7.37033L12.093 5.52308C12.4178 5.27483 12.844 5.66432 12.6246 6.009Z" fill="#0584FF" />
7612  </symbol>
7613</svg>
7614
7615    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7616  <symbol id="icon-forward" viewBox="0 0 24 24">
7617    <path d="M0 0h24v24H0z" fill="none"/>
7618    <path d="M12 4l-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/>
7619  </symbol>
7620</svg>
7621    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7622  <symbol id="icon-back" viewBox="0 0 24 24">
7623    <path d="M0 0h24v24H0z" fill="none"/>
7624    <path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"/>
7625  </symbol>
7626</svg>
7627    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7628  <symbol id="icon-sale-sold-count" viewBox="0 0 11 13" fill="none">
7629    <path d="M10.47 10.35L10.09 4.49C10.03 3.5 9.2 2.75 8.18 2.7C8.05 1.18 6.78 0 5.24 0C3.69 0 2.43 1.18 2.29 2.7C1.27 2.73 0.44 3.5 0.39 4.49L0 10.35C-0.02 10.85 0.14 11.34 0.5 11.73C0.86 12.11 1.41 12.33 1.96 12.33H8.52C9.07 12.33 9.59 12.11 9.98 11.73C10.31 11.34 10.5 10.85 10.47 10.35ZM5.24 0.83C6.34 0.83 7.22 1.65 7.36 2.7H3.12C3.25 1.65 4.14 0.83 5.24 0.83ZM9.34 11.15C9.12 11.37 8.82 11.51 8.49 11.51H1.96C1.63 11.51 1.33 11.37 1.1 11.15C0.91 10.93 0.8 10.68 0.83 10.41L1.22 4.55C1.24 3.99 1.71 3.58 2.26 3.55V5.21C2.26 5.43 2.45 5.62 2.68 5.62C2.9 5.62 3.09 5.43 3.09 5.21V3.55H7.36V5.21C7.36 5.43 7.55 5.62 7.77 5.62C7.99 5.62 8.18 5.43 8.18 5.21V3.55C8.76 3.58 9.2 4.02 9.23 4.55L9.64 10.41C9.64 10.68 9.56 10.93 9.34 11.15Z" fill="currentColor"/>
7630  </symbol>
7631</svg>
7632
7633
7634    
7635    
7636      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7637  <symbol id="icon-globe-v2" viewBox="0 0 1056 1024">
7638    <path d="M1041 512q0-67-17-131t-48-119-75.5-101.5T803 80 687.5 25.5 559 1q-5-1-9-1h-22Q424 0 329 40.5t-164 109T55.5 313 15 512q0 83 26 161.5t73.5 141 110.5 110T366.5 998t161.5 26h20l5.5-.5 5.5-.5q99-6 188-48.5T900.5 864 1003 704t38-192zm-95 165q-52-15-140-26 10-68 10-139 0-56-7-111 44-5 81-12t48-10.5 17-5.5l-12-33q34 82 34 172 0 43-8 84.5T946 677zM301 512q0-18 1-35.5t2.5-34.5 3.5-34q27 2 55.5 3.5T426 414t69 1v222q-97 1-183 8-10-66-11-133zM559 68q39 11 73.5 49.5t61 96.5T735 344q-25 2-52 3.5t-58.5 2.5-65.5 2V68zm-64 1v283q-94-1-176-8 35-163 117-239 29-26 59-36zm0 632v254q-78-25-134-145-21-48-35-102 79-6 169-7zm64 255V701q47 1 89.5 2.5T728 708q-25 99-70 165.5T5
763859 956zm0-319V415q101-1 186-8 7 52 7 105 0 68-11 133-83-7-182-8zm372-323q-3 1-7.5 2t-12.5 3-19 4.5-24.5 5-31 5T800 338q-6-29-13-56t-15.5-52-19-48-22-43-23.5-38q73 32 131 87t93 126zM375 91q-40 45-70.5 108.5T257 339q-82-9-134-22 67-136 202-205 25-12 50-21zM100 377q52 14 145 25-4 27-5.5 54.5T238 512q0 70 12 139-85 9-141 22-30-78-30-161 0-69 21-135zm37 355q53-11 127-19 18 67 46.5 123t64.5 97q-76-27-137-79T137 732zm570 191q28-40 50.5-93T794 714q29 4 55.5 8t41 7 26.5 6q-74 129-210 188z"/>
7639  </symbol>
7640</svg>
7641      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7642  <symbol id="icon-bubble" viewBox="0 0 1024 896">
7643    <path d="M512 64q121 0 224.5 43T900 223.5 960 384t-60 160.5T736.5 661 512 704h-27q-14 0-24-.5t-23-2.5l-35-5-23 28q-5 5-16.5 14.5T336 760t-38 25.5-43 23.5q10-25 16-51t6-50l1-2v-45l-35-18q-85-43-132-111T64 384q0-87 60-160.5T287.5 107 512 64zm0-64Q373 0 255 51.5t-186.5 140T0 384q0 99 56 181.5T214 700q0 1-.5 1.5t-.5 1.5q0 65-51 153-2 5-2 11 0 12 8.5 20.5T189 896h8q46-8 99-36t86.5-54 46.5-42q26 4 56 4h27q139 0 257-51.5t186.5-140T1024 384q0-141-122-249Q775 24 583 4q-36-4-71-4z"/>
7644  </symbol>
7645</svg>
7646      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7647  <symbol id="icon-magnifier" viewBox="0 0 1040 1024">
7648    <path d="M1031 969L720 656q93-111 93-256 0-109-53.5-201t-146-145.5T412.5 0 212 53.5 66.5 199 13 400t53.5 201T212 746.5 413 800q149 0 262-98l310 312q10 10 23 10t22.5-9.5 9.5-23-9-22.5zM413 737q-92 0-169.5-45.5T121 568.5 76 400t45-168.5 122.5-123 169-45.5 169 45.5 122.5 123T749 400q0 39-9 77t-25.5 71-39.5 62.5-52 52.5-62 39.5-71 25.5-77 9z"/>
7649  </symbol>
7650</svg>
7651      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7652  <symbol id="icon-user" viewBox="0 0 1040 1024">
7653    <path d="M512 64q39 0 80.5 15.5t72.5 39 51 52 20 53.5v160q0 57-24 127t-71 106q-8 7-14 16.5t-8.5 20T617 675q5 36 37 51l279 132 2 .5 4 1.5 5 3 5.5 4.5 5 6.5 3.5 10 1 13v62l-895 1v-65q0-25 27-37l281-133q32-15 36.5-50.5T385 617q-46-37-71.5-107.5T288 384V224q0-33 33-70.5T407 90t105-26zm0-64q-69 0-136.5 33.5t-109.5 86T224 224v160q0 65 30.5 149.5T345 667L64 800q-3 1-7 3t-15 9-19.5 14T7 843.5 0 863v97q0 26 18.5 44.5T64 1023h896q26 0 44.5-18.5T1023 960v-97q0-10-6.5-20.5t-16-18T982 811t-16-9l-6-2-279-133q60-47 89.5-130T800 384V224q0-39-25.5-79.5T709 72t-93-52T512 0z"/>
7654  </symbol>
7655</svg>
7656      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7657  <symbol id="icon-bag" viewBox="0 0 832 1024">
7658    <path d="M768 159H577V97q0-26-13-48t-35-35-48-13H353q-15 0-30 5t-26.5 14T276 40.5 262 67t-5 30v62H64q-27 0-45.5 18.5T0 223v736q0 26 18.5 45t45.5 19h704q27 0 45.5-19t18.5-45V223q0-27-18.5-45.5T768 159zM321 97q0-13 9.5-22.5T353 65h128q13 0 22.5 9.5T513 97v62H321V97zm447 862H64V223h193v66q0 3 1 8.5t8.5 14.5 22.5 9q16 0 24-8t8-16v-74h192v69l1.5 7.5 4.5 10 9.5 8L545 321q9 0 15.5-3.5t9.5-8 4.5-9.5 2.5-8v-69h191v736z"/>
7659  </symbol>
7660</svg>
7661      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7662  <symbol id="icon-heart" viewBox="0 0 1040 928">
7663    <path d="M288 66q73 0 180 106l46 45 45-46q15-16 31.5-30t32.5-26 31.5-21T684 78.5t27.5-9.5 24.5-3q89 0 157 68 69 69 69 166t-69 167q-5 4-359 387-5 5-11 6.5t-10 1.5q-12 0-21-8-324-360-359-395-8-8-15.5-17.5t-14-19-12-19.5-10-20.5T74 361t-5.5-22-3.5-23-1-23q0-98 69-167 32-31 70-45.5T288 66zm0-64q-59 0-109 19T88 81q-43 43-65.5 99T0 292.5 22.5 405 88 504q9 9 49.5 53.5t91 100.5 100 111 83.5 92l34 37q27 28 66.5 28t67.5-28q354-383 358-386 88-88 88-212T938 89q-44-44-93.5-65.5T736 2q-53 0-111.5 35T513 126Q387 2 288 2z"/>
7664  </symbol>
7665</svg>
7666      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7667  <symbol id="icon-info" viewBox="0 0 1024 1024">
7668    <path d="M576 736h-32V448q0-13-9.5-22.5T512 416h-64q-13 0-22.5 9.5T416 448t9.5 22.5T448 480h32v256h-32q-13 0-22.5 9.5T416 768t9.5 22.5T448 800h128q13 0 22.5-9.5T608 768t-9.5-22.5T576 736zm-64-384q27 0 45.5-18.5T576 288t-18.5-45.5T512 224t-45.5 18.5T448 288t18.5 45.5T512 352zm0-352q-83 0-161.5 26T209 99 99 209 26 350.5 0 512q0 104 40.5 199t109 163.5 163.5 109 199 40.5 199-40.5 163.5-109 109-163.5 40.5-199q0-83-26-161.5T925 209 815 99 673.5 26 512 0zm0 961q-73 0-141.5-22.5T247 874t-96.5-97-64-123.5T64 512q0-91 35.5-174T195 195t143-95.5T512 64t174 35.5T829 195t95.5 143T9
766860 512t-35.5 174T829 829.5t-143 96T512 961z"/>
7669  </symbol>
7670</svg>
7671      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7672  <symbol id="icon-minus" viewBox="0 0 10 1">
7673    <g>
7674      <polygon points="0 1 10 1 10 0 0 0"></polygon>
7675    </g>
7676  </symbol>
7677</svg>
7678      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7679  <symbol id="icon-plus" viewBox="0 0 10 10">
7680    <g>
7681      <polygon points="4.5 0 4.5 4.5 0 4.5 0 5.5 4.5 5.5 4.5 10 5.5 10 5.5 5.5 10 5.5 10 4.5 5.5 4.5 5.5 0"></polygon>
7682    </g>
7683  </symbol>
7684</svg>
7685      <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
7686  <symbol id="icon-tag" viewBox="0 0 16 16">
7687    <g fill-rule="evenodd">
7688      <path d="M2 8.12787V3.16667C2 2.52233 2.52233 2 3.16667 2H8.12787C8.43729 2 8.73403 2.12292 8.95282 2.34171L14.1027 7.49162C14.5583 7.94723 14.5583 8.68592 14.1027 9.14153L9.14153 14.1027C8.68592 14.5583 7.94723 14.5583 7.49162 14.1027L2.34171 8.95282C2.12292 8.73403 2 8.43729 2 8.12787ZM4.72222 3.55556C4.07788 3.55556 3.55556 4.07788 3.55556 4.72222C3.55556 5.36656 4.07788 5.88889 4.72222 5.88889C5.36656 5.88889 5.88889 5.36656 5.88889 4.72222C5.88889 4.07788 5.36656 3.55556 4.72222 3.55556Z" />
7689    </g>
7690  </symbol>
7691</svg>
7692
7693    
7694
7695    
7696    
7697
7698    
7699
7700  
7701    <!-- app:63a2b2930064c0001dd692f9 -->
7702    
7702<script type="module" defer="defer" crossorigin="anonymous">
7703  function t(k, v) {
7704    Object.defineProperty(window, k, { configurable: false, value: Object.freeze(v) });
7705  }
7706  t(
7707    '__SC_CHAT_WIDGET_PLUGIN_CONFIG__',
7708    {
7709      env: 'prod',
7710    },
7711  );
7712</script>
vendor: 1 bytes, line 7712
7712
7713<script type="text/javascript" defer src="https://sc-chat-widget.shoplineapp.com/sc-chat-widget-plugin-entry" crossorigin="anonymous"></script>
7713
7714  
7715    <!-- app:61162030bc1390001da5cede -->
7716    
7716<script>
7717(function(){window.SmartPush="EC1";function fetchJs(spMerchantId){const fetchOptions={method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({merchantId:spMerchantId})};fetch("https://client.smartpushedm.com/api-client/form/getLatestJs",fetchOptions).then(res=>res.json()).then(res=>{if(res.code==="SUCCESS"){var jsScriptList=res.data.jsScriptList;if(jsScriptList&&jsScriptList.length){for(var i=0;i<jsScriptList.length;i++){var spScript=document.createElement("script");spScript.id="smartPushMarketWidget"+(i+1);spScript.src=jsScriptList[i].jsScript;spScript.async=true;document.body.appendChild(spScript)}}}}).catch(error=>{console.log("SP-error==================>",error)})}async function getSpMerchantId(){try{var spSdk=window.shopline.appExtension.init({appId:"61162030bc1390001da5cede"});if(spSdk){var spUtils=spSdk.utils;var spMerchantId=await spUtils.getMerchantId();fetchJs(spMerchantId)}}catch(err){console.log("SP-error=2=================>",err)}}if(window.shopline&&window.shopline.appExtension&&window.shopline.appExtension.isSDKLoaded&&window.shopline.appExtension.isSDKLoaded()){getSpMerchantId()}else{window.addEventListener("onAppExtensionSDKLoaded",()=>{getSpMerchantId()})}})();
7718</script>
7718
7719  
7720
7721
7722
7723    
7723<script>window.SLINE_RENDERED=true;window.SLINE_LAYOUT_RENDERED=true;</script>
7723
7724  </body>
7725</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.