1<!doctype html> 2<html class="no-js" lang="en" dir="ltr"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0"><link href="//hapakristin.com/cdn/shop/t/239/assets/theme--critical.css?v=147256659499794935751790063891" as="style" rel="preload"><link href="//hapakristin.com/cdn/shop/t/239/assets/theme--async.css?v=137173155167308072951790063891" as="style" rel="preload"><link href="//hapakristin.com/cdn/shop/t/239/assets/theme--mobile.css?v=68203462260698982721790063891" as="style" rel="preload"><link rel="canonical" href="https://hapakristin.com/account/login"><link rel="shortcut icon" href="//hapakristin.com/cdn/shop/files/favicon_hapa.png?v=1713150825&width=32" type="image/png"> 7 <link rel="apple-touch-icon" href="//hapakristin.com/cdn/shop/files/favicon_hapa.png?v=1713150825&width=180"><title>Account | Hapa Kristin Global store </title><meta property="og:type" content="website" /> 8 <meta property="og:title" content="Account" /><meta property="og:image" content="http://hapakristin.com/cdn/shop/files/EN__bn_pc_3_3a051e97-b4d1-49b8-856e-afffd5a2c51c.jpg?v=1744933907"> 9 <meta property="og:image:secure_url" content="https://hapakristin.com/cdn/shop/files/EN__bn_pc_3_3a051e97-b4d1-49b8-856e-afffd5a2c51c.jpg?v=1744933907"> 10 <meta property="og:image:width" content="1920"> 11 <meta property="og:image:height" content="1080"><meta property="og:url" content="https://hapakristin.com/account/login" /> 12<meta property="og:site_name" content="HapaKristin" /> 13<meta property="og:description" content="Shop color contacts loved by K-pop star Jang Wonyoung at HapaKristin.com. Natural looking designs available in plano, with prescription and options for astigmatism and shipping to the US, Canada, Australia, UK, Europe, HK, Middle East, South America and Africa. Find your perfect look today!" /><meta name="twitter:card" content="summary" /> 14<meta name="twitter:description" content="Shop color contacts loved by K-pop star Jang Wonyoung at HapaKristin.com. Natural looking designs available in plano, with prescription and options for astigmatism and shipping to the US, Canada, Australia, UK, Europe, HK, Middle East, South America and Africa. Find your perfect look today!" /><meta name="twitter:title" content="Account" /><meta 15 property="twitter:image" 16 content="https://hapakristin.com/cdn/shop/files/EN__bn_pc_3_3a051e97-b4d1-49b8-856e-afffd5a2c51c.jpg?v=1744933907&width=480" 17 /><style>:root {--font--heading--uppercase: uppercase; 18 --font--margin-scale: -2; 19 --font--translation-scale: 1;--font--section-heading--size: 24px; 20 --font--block-heading--size: 18px;--font--paragraph--size: 14px; 21 --font--accent--size: 12px;--font--banner--size: 64px; 22 --font--banner--mobile-size: 36px; 23 24 --font--featured--size: 59px; 25 --font--featured--mobile-size: 36px; 26 27 --font--heading--family: 'Pretendard-Regular', Arial, sans-serif; 28 --font--heading--weight: 400; 29 --font--heading--normal-weight: 400; 30 --font--heading--style: normal; 31 --font--heading--spacing: 0px; 32 33 --font--accent--family: 'Pretendard-Regular', Arial, sans-serif; 34 --font--accent--weight: 400; 35 --font--accent--style: normal; 36 37 --font--paragraph--family: 'Pretendard-Regular', Arial, sans-serif; 38 --font--paragraph--weight: 400; 39 --font--paragraph--style: normal; 40 --font--paragraph--spacing: 0px; 41 42 --font--button--spacing: 0px; 43 --font--line-height: 1.2; 44 } 45 46 @font-face { 47 font-family: 'Pretendard-Regular'; 48 src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/[email protected]/Pretendard-Regular.woff') format('woff'); 49 font-weight: 400; 50 font-style: normal; 51 } 52 53 [data-item~='featured-heading'] .emphasized, 54 [data-item~='banner-heading'] .emphasized {font-style: italic;} 55</style><style> 56 :root { 57 --color--accent-1: #fe7091; 58 --color--accent-1-translucent: rgba(254, 112, 145, 0.85); 59 --color--accent-2: #ffeaef; 60 --color--accent-2-translucent: rgba(255, 234, 239, 0.85); 61 --bg-color--light: #f7f7f7; 62 --bg-color--light-translucent: rgba(247, 247, 247, 0.85); 63 --bg-color--dark: #222222; 64 --bg-color--dark-translucent: rgba(9, 9, 9, 0.85); 65 --bdr-color--badge: rgba(34, 34, 34, 0.05); 66 --bdr-color--page: ; 67 --bg-color--body: #ffffff; 68 --bg-color--body-translucent: rgba(255, 255, 255, 0.85); 69 --color--body: #222222; 70 --color--body--light: #525252; 71 --color--alternative: #ffffff; 72 --bg-color--textbox: #fff; 73 --bg-color--panel: #f7f7f7; 74 --bdr-color--general: #eaeaea; 75 --bdr-color--badge: rgba(34, 34, 34, 0.07); 76 77 --color--border-disabled: #d2d2d2; 78 --color--success: #4caf50; 79 --color--fail: #d32f2f; 80 --color--stars: black; 81
82 --content--shadow-opacity: 0.15; 83 --content--image-opacity:0.65; 84 85 --button--color: #ffffff; 86 --button--bg-color: #f37091; 87 --button--bg-color--hover: var(--button--bg-color); 88 --button--bdr-color: #444444; 89 --button--color-disabled: #b9b9b9; 90 --button--radius: 11px; 91 --input--radius: 10px; 92 --image--radius: 18px; 93 94 /* shop pay */ 95 --payment-terms-background-color: #ffffff; 96 97 /* js helpers */ 98 --sticky-offset: 0px; 99 } 100</style>
100<script> 101 var theme = theme || {}; 102 theme.libraries = theme.libraries || {}; 103 theme.local_storage = theme.local_storage || {}; 104 theme.settings = theme.settings || {}; 105 theme.scripts = theme.scripts || {}; 106 theme.styles = theme.styles || {}; 107 theme.swatches = theme.swatches || {}; 108 theme.translations = theme.translations || {}; 109 theme.urls = theme.urls || {}; 110 111 theme.libraries.masonry = '//hapakristin.com/cdn/shop/t/239/assets/masonry.min.js?v=153413113355937702121790063891'; 112 theme.libraries.swipe = '//hapakristin.com/cdn/shop/t/239/assets/swipe-listener.min.js?v=123039615894270182531790063891'; 113 theme.libraries.plyr = '/cdn/shopifycloud/plyr/v2.0/shopify-plyr'; 114 theme.libraries.vimeo = 'player.vimeo.com/api/player.js'; 115 theme.libraries.youtube = 'youtube.com/iframe_api'; 116 117 theme.local_storage.age_verification = 'blockshopTheme:ageVerified'; 118 theme.local_storage.collection_layout = 'blockshopTheme:collectionLayout'; 119 theme.local_storage.recent_products = 'blockshopTheme:recentlyViewed'; 120 theme.local_storage.search_layout = 'blockshopTheme:searchLayout'; 121 122 theme.settings.cart_type = 'drawer'; 123 theme.settings.money_format = "\u003cspan class=money\u003e${{amount}}\u003c\/span\u003e"; 124 125 theme.translations.add_to_cart = 'Add to Cart'; 126 theme.translations.mailing_list_success_message = 'Thanks for signing up!'; 127 theme.translations.out_of_stock = 'Coming soon'; 128 theme.translations.unavailable = 'Unavailable'; 129 theme.translations.url_copied = 'Link copied to clipboard'; 130 theme.translations.low_in_stock = { 131 one: 'Only 1 product left. ', 132 other: 'Only 2 products left. ' 133 }; 134 135 theme.urls.all_products_collection = '/collections/all'; 136 theme.urls.cart = '/cart'; 137 theme.urls.cart_add = '/cart/add'; 138 theme.urls.cart_change = '/cart/change'; 139 theme.urls.cart_update = '/cart/update'; 140 theme.urls.product_recommendations = '/recommendations/products'; 141 theme.urls.predictive_search = '/search/suggest'; 142 theme.urls.search = '/search'; 143 144 145 theme.urls.root = ''; 146 147 148 theme.swatches['candystripe'] = '//hapakristin.com/cdn/shop/files/candystripe_100x.png?v=97555'; 149 150 151 theme.swatches['sailorstripe'] = '//hapakristin.com/cdn/shop/files/sailorstripe_100x.png?v=97555'; 152 153</script>
153 154
155<script> 156 String.prototype.handleize = function () { 157 const char_map = { 158 á: "a", é: "e", Ã: "i", ó: "o", ú: "u", ñ: "n", ü: "u", à : "a", è: "e", ì: "i", ò: "o", ù: "u", 159 â: "a", ê: "e", î: "i", ô: "o", û: "u", ö: "o", ä: "a", Ã: "ss", ç: "c", è: "e", é: "e", ê: "e", 160 ë: "e", î: "i", ï: "i", ô: "o", Å: "oe", ù: "u", û: "u", ü: "u" 161 }; 162 // we need to convert non-english chars to english counterparts to match Liquid's 'handelize' filter 163 const regex = new RegExp(Object.keys(char_map).join("|"), 'g'); 164 165 return this.toLowerCase() 166 .replace(regex, (match) => (char_map[match] ? char_map[match] : match)) 167 .replace(/[^a-z0-9]+/g, '-') 168 .replace(/-+/g, '-') 169 .replace(/^-|-$/g, ''); 170 }; 171 172 // Element extended methods 173 Element.prototype.trigger = window.trigger = function(event, data = null) { 174 const event_obj = data == null ? new Event(event) : new CustomEvent(event, { detail: data }); 175 this.dispatchEvent(event_obj); 176 }; 177 178 Element.prototype.on = document.on = window.on = function(events, callback, options) { 179 // save the namespaces on the element itself 180 if (!this.namespaces) this.namespaces = {}; 181 182 events.split(' ').forEach(event => { 183 this.namespaces[event] = callback; 184 this.addEventListener(event.split('.')[0], callback, options); 185 }); 186 return this; 187 }; 188 189 Element.prototype.off = window.off = function(events) { 190 if (!this.namespaces) return; 191 192 events.split(' ').forEach(event => { 193 this.removeEventListener(event.split('.')[0], this.namespaces[event]); 194 delete this.namespaces[event]; 195 }); 196 return this; 197 }; 198 199 Element.prototype.index = function() { 200 return [...this.parentNode.children].indexOf(this); 201 }; 202 203 Element.prototype.offset = function() { 204 const rect = this.getBoundingClientRect(); 205 206 return { 207 top: rect.top + window.scrollY, 208 left: rect.left + window.pageXOffset 209 }; 210 }; 211 212 Element.prototype.setStyles = function(styles = {}) { 213 for (const property in styles) this.style[property] = styles[property]; 214 return this; 215 } 216 217 Element.prototype.remove = function() { 218 return this.parentNode && this.parentNode.removeChild(this); 219 }; 220 221 // NodeList & Array extended methods 222 NodeList.prototype.on = Array.prototype.on = function(events, callback, options) { 223 this.forEach(element => { 224 // save the namespaces on the element itself 225 if (!element.namespaces) element.namespaces = {}; 226 227 events.split(' ').forEach(event => { 228 element.namespaces[event] = callback; 229 element.addEventListener(event.split('.')[0], callback, options); 230 }); 231 }); 232 }; 233 234 NodeList.prototype.off = Array.prototype.off = function(events) { 235 this.forEach(element => { 236 if (!element.namespaces) return; 237 238 events.split(' ').forEach(event => { 239 element.removeEventListener(event.split('.')[0], element.namespaces[event]); 240 delete element.namespaces[event]; 241 }); 242 }); 243 }; 244 245 NodeList.prototype.not = Array.prototype.not = function(arr_like_obj) { 246 // this always returns an Array 247 const new_array_of_elements = []; 248 if (arr_like_obj instanceof HTMLElement) arr_like_obj = [arr_like_obj]; 249 250 this.forEach(element => { 251 if (![...arr_like_obj].includes(element)) new_array_of_elements.push(element); 252 }); 253 254 return new_array_of_elements; 255 }; 256 257 // this global method is necessary for the youtube API, we can't use our own callback in this case 258 // https://developers.google.com/youtube/iframe_api_reference#Requirements 259 function onYouTubeIframeAPIReady() { 260 window.trigger('theme:youtube:apiReady'); 261 } 262 263 // Utility methods 264 theme.utils = new class Utilities { 265 constructor() { 266 this.isTouchDevice = window.matchMedia('(pointer: coarse)').matches;} 267 268 isValidEmail(email) { 269 const email_pattern = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i; 270 return email_pattern.test(email); 271 } 272 273 formatMoney(raw_amount) { 274 const num_decimals = theme.settings.money_format.includes('no_decimals') ? 0 : 2; 275 const locale = theme.settings.money_format.includes('comma') ? 'de-DE' : 'en-US'; 276 277 const formatter = Intl.NumberFormat(locale, { 278 minimumFractionDigits: num_decimals, 279 maximumFractionDigits: num_decimals 280 }); 281 282 const formatted_amount = formatter.format(raw_amount / 100); 283 284 return theme.settings.money_format.replace(/\{\{\s*(\w+)\s*\}\}/, formatted_amount); 285 } 286 287 getHiddenDimensions(element) { 288 const cloned_el = this.parseHtml(element.outerHTML, null); 289 cloned_el.setStyles({ 290 display: 'block', 291 position: 'absolute', 292 padding: element.style.padding, 293 visibility: 'hidden', 294 }) 295 296 element.parentNode ? element.parentNode.appendChild(cloned_el) : document.body.appendChild(cloned_el); 297 const { offsetHeight: height, offsetWidth: width } = cloned_el; 298 cloned_el.remove(); 299 return { height, width }; 300 } 301 302 libraryLoader(name, url, callback) { 303 if (theme.scripts[name] === undefined) { 304 theme.scripts[name] = 'requested'; 305 const script = document.createElement('script'); 306 script.src = url; 307 script.onload = () => { 308 theme.scripts[name] = 'loaded'; 309 callback && callback(); 310 window.trigger(`theme:${name}:loaded`); 311 }; 312 document.body ? document.body.appendChild(script) : document.head.appendChild(script); 313 } else if (callback && theme.scripts[name] === 'requested') { 314 window.on(`theme:${name}:loaded`, callback); 315 } else if (callback && theme.scripts[name] === 'loaded') callback(); 316 } 317 318 parseHtml(html_string, selector, strip_components = []) {
319 strip_components.forEach(component => { // remove web components so they don't init 320 const regex = new RegExp(component, 'g'); 321 html_string = html_string.replace(regex, 'div') 322 }); 323 324 const container = document.createElement('div'); 325 container.innerHTML = html_string; 326 return selector ? container.querySelector(selector) : container.querySelector(':scope > *'); 327 } 328 329 setSwatchColors(inputs = false) { 330 if (!inputs) return 331 332 inputs.forEach(input => { 333 const swatch = input.nextElementSibling; 334 const swatch_color = input.value.handleize(); 335 336 if (theme.swatches[swatch_color] === undefined) { 337 swatch.style['background-color'] = swatch_color; 338 } else if (CSS.supports('color', theme.swatches[swatch_color])) { 339 swatch.style['background-color'] = theme.swatches[swatch_color]; 340 } else { 341 swatch.style['background-image'] = `url(${theme.swatches[swatch_color]})`; 342 } 343 }); 344 } 345 346 stylesheetLoader(name, url, callback) { 347 if (theme.styles[name] === undefined) { 348 theme.styles[name] = 'requested'; 349 const stylesheet = document.createElement('link'); 350 stylesheet.rel = 'stylesheet'; 351 stylesheet.href = url; 352 stylesheet.onload = () => { 353 theme.styles[name] = 'loaded'; 354 callback && callback(); 355 window.trigger(`theme:${name}Styles:loaded`); 356 } 357 document.body ? document.body.appendChild(stylesheet) : document.head.appendChild(stylesheet); 358 } else if (callback && theme.styles[name] === 'requested') { 359 window.on(`theme:${name}Styles:loaded`, callback); 360 } else if (callback && theme.styles[name] === 'loaded') callback(); 361 } 362 363 getQuantity(product_id, { id, management, policy, quantity }, requested_quantity) { 364 // if inventory isn't tracked we can add items indefinitely 365 if (management !== 'shopify' || policy === 'continue') return requested_quantity; 366 367 const cart_quantity = theme.cart.basket[id] ? theme.cart.basket[id] : 0; 368 let quantity_remaining = parseInt(quantity) - cart_quantity; 369 370 if (quantity_remaining <= 0) { 371 quantity_remaining = 0; 372 window.trigger(`theme:product:${product_id}:updateQuantity`, 1); 373 } else if (requested_quantity > quantity_remaining) { 374 window.trigger(`theme:product:${product_id}:updateQuantity`, quantity_remaining); 375 } else return requested_quantity; 376 377 theme.feedback.trigger('quantity', quantity_remaining); 378 return false; 379 } 380 381 updateRecentProducts(handle) { 382 const current_product_arr = [handle]; 383 const previous_product_str = localStorage.getItem(theme.local_storage.recent_products); 384 const max_num_recents_stored = 4; 385 let previous_product_arr, current_product_str, newly_visited_product = false; 386 387 // first check if we have existing data or not 388 if (previous_product_str) { 389 previous_product_arr = JSON.parse(previous_product_str); 390 391 if (previous_product_arr.indexOf(handle) === -1) newly_visited_product = true; 392 } else { 393 // localStorage accepts strings only, so we'll convert to string and set 394 current_product_str = JSON.stringify(current_product_arr); 395 localStorage.setItem(theme.local_storage.recent_products, current_product_str); 396 } 397 if (newly_visited_product) { 398 if (previous_product_arr.length === max_num_recents_stored) 399 previous_product_arr = previous_product_arr.slice(1); 400 401 current_product_str = JSON.stringify(previous_product_arr.concat(current_product_arr)); 402 localStorage.setItem(theme.local_storage.recent_products, current_product_str); 403 } 404 } 405 } 406</script>
vendor: 1 bytes, line 406
406
407<script type="module"> 408 import "//hapakristin.com/cdn/shop/t/239/assets/a11y.js?v=88460550814538636921790063891"; 409 import "//hapakristin.com/cdn/shop/t/239/assets/media-queries.js?v=71639634187374033171790063891"; 410 import "//hapakristin.com/cdn/shop/t/239/assets/radios.js?v=95698407015915903831790063891"; 411 import "//hapakristin.com/cdn/shop/t/239/assets/transitions.js?v=77109988682034809811790063891"; 412 import "//hapakristin.com/cdn/shop/t/239/assets/general.js?v=175420737585723479591790063891"; 413 import "//hapakristin.com/cdn/shop/t/239/assets/tab-order.js?v=42780554804415071381790063891"; 414 import "//hapakristin.com/cdn/shop/t/239/assets/collapsible-row.js?v=100618055053173039611790063891"; 415 import "//hapakristin.com/cdn/shop/t/239/assets/placeholder.js?v=9426227501006968881790063891"; 416 import "//hapakristin.com/cdn/shop/t/239/assets/disclosure.js?v=150954186219758191661790063891"; 417 import "//hapakristin.com/cdn/shop/t/239/assets/quantity-selector.js?v=47238001903993240311790063891"; 418 import "//hapakristin.com/cdn/shop/t/239/assets/feedback-bar.js?v=41068180466968126491790063891"; 419 import "//hapakristin.com/cdn/shop/t/239/assets/modal.js?v=123962740313182315511790063891"; 420 import "//hapakristin.com/cdn/shop/t/239/assets/subscribe-form.js?v=173086987533768533151790063891";import "//hapakristin.com/cdn/shop/t/239/assets/y-menu.js?v=105207714253058857401790063891"; 421 import "//hapakristin.com/cdn/shop/t/239/assets/drawer.js?v=182741364130869063081790063891"; 422 import "//hapakristin.com/cdn/shop/t/239/assets/header.js?v=163656272527244621241790063891"; 423 import "//hapakristin.com/cdn/shop/t/239/assets/cart.js?v=119764123097958780011790063891"; 424 import "//hapakristin.com/cdn/shop/t/239/assets/x-menu.js?v=35832241734525241561790063891";import "//hapakristin.com/cdn/shop/t/239/assets/quick-add.js?v=8171462438333045641790063891"; 425 import "//hapakristin.com/cdn/shop/t/239/assets/product-buy-buttons.js?v=45201997824668611551790063891";import "//hapakristin.com/cdn/shop/t/239/assets/product-media--variants.js?v=69174017464910446721790063891"; 426 import "//hapakristin.com/cdn/shop/t/239/assets/product-price.js?v=158189426169192202801790063891"; 427 import "//hapakristin.com/cdn/shop/t/239/assets/product-options.js?v=93435881930355150891790063891";</script>
427<script src="//hapakristin.com/cdn/shopifycloud/storefront/assets/themes_support/shopify_common-5f594365.js" defer="defer"></script>
427 428
428<script src="//hapakristin.com/cdn/shopifycloud/storefront/assets/themes_support/customer_area-f1b6eefc.js" defer="defer"></script>
428<link href="//hapakristin.com/cdn/shop/t/239/assets/theme--critical.css?v=147256659499794935751790063891" rel="stylesheet" media="all"> 429 <link 430 href="//hapakristin.com/cdn/shop/t/239/assets/theme--async.css?v=137173155167308072951790063891" 431 rel="stylesheet" 432 media="print" 433 onload="this.media='all'" 434 > 435 <link href="//hapakristin.com/cdn/shop/t/239/assets/theme--mobile.css?v=68203462260698982721790063891" rel="stylesheet" media="all"> 436 437 <noscript> 438 <style> 439 .layout--template > *, 440 .layout--footer-group > * { 441 opacity: 1; 442 } 443 </style> 444 <link href="//hapakristin.com/cdn/shop/t/239/assets/theme--async.css?v=137173155167308072951790063891" rel="stylesheet"> 445 </noscript> 446 447
447<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
447<meta name="google-site-verification" content="ScX87TmH-CT97Ol_JBybpHLTCtFmfa5amJ6FeUZw15E"> 448<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/23864410189/digital_wallets/dialog"> 449<meta id="in-context-paypal-metadata" data-shop-id="23864410189" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 450<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
450<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=10584141"></script>
vendor: 1 bytes, line 450
450
451<script id="shopify-features" type="application/json">{"accessToken":"bf06ee3ec17c7758ed9a1897f35a423f","betas":["rich-media-storefront-analytics"],"domain":"hapakristin.com","predictiveSearch":true,"shopId":23864410189,"locale":"en"}</script>
vendor: 1 bytes, line 451
451
452<script>var Shopify = Shopify || {}; 453Shopify.shop = "hapakristin.myshopify.com"; 454Shopify.locale = "en"; 455Shopify.currency = {"active":"USD","rate":"1.0"}; 456Shopify.country = "US"; 457Shopify.theme = {"name":"[10\/01] FEEL THE RUSH + HALF DAY (ver. 20260909)","id":164953981005,"schema_name":"Blockshop","schema_version":"9.4.2","theme_store_id":null,"role":"main"}; 458Shopify.theme.handle = "null"; 459Shopify.theme.style = {"id":null,"handle":null}; 460Shopify.cdnHost = "hapakristin.com/cdn"; 461Shopify.routes = Shopify.routes || {}; 462Shopify.routes.root = "/"; 463Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 464Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 465Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 466Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 466
466
467<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 467
467
468<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 468
468
469<script> 470 window.Shopify = window.Shopify || {}; 471 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 472 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 473 window.Shopify.SignInWithShop.eligible = true; 474</script>
vendor: 1 bytes, line 474
474
475<script id="shop-js-analytics" type="application/json">{"pageType":"customers/login"}</script>
vendor: 1 bytes, line 475
475
476<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts.en.esm.js"></script>
vendor: 1 bytes, line 476
476
477<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"></script>
vendor: 1 bytes, line 477
477
478<script type="module"> 479 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts.en.esm.js"); 480await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"); 481 482 window.Shopify.SignInWithShop?.initCustomerAccounts?.(true, {"fedCMEnabled":true,"windoidEnabled":true}); 483window.Shopify.SignInWithShop?.initCustomerAccountsSignUp?.({"fedCMEnabled":true,"windoidEnabled":true}); 484 485</script>
vendor: 1 bytes, line 485
485
486<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 486
486
487<script type="module"> 488 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 489 490 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 491 492</script>
vendor: 1 bytes, line 492
492
493<script> 494 window.Shopify = window.Shopify || {}; 495 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 496 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]}; 497</script>
vendor: 1 bytes, line 497
497
498<script>(function() { 499 var isLoaded = false; 500 function asyncLoad() { 501 if (isLoaded) return; 502 isLoaded = true; 503 var urls = ["https:\/\/formbuilder.hulkapps.com\/skeletopapp.js?shop=hapakristin.myshopify.com","https:\/\/cdn.autoketing.org\/sdk-cdn\/facebook-chat\/dist\/fb-chat-embed.js?t=1612706704770922007\u0026shop=hapakristin.myshopify.com","https:\/\/d5zu2f4xvqanl.cloudfront.net\/42\/fe\/loader_2.js?shop=hapakristin.myshopify.com","https:\/\/maps.bestfreecdn.com\/storage\/js\/maps-23864410189.js?ver=143\u0026shop=hapakristin.myshopify.com"]; 504 for (var i = 0; i < urls.length; i++) { 505 var s = document.createElement('script'); 506 s.type = 'text/javascript'; 507 s.async = true; 508 s.src = urls[i]; 509 var x = document.getElementsByTagName('script')[0]; 510 x.parentNode.insertBefore(s, x); 511 } 512 }; 513 if(window.attachEvent) { 514 window.attachEvent('onload', asyncLoad); 515 } else { 516 window.addEventListener('load', asyncLoad, false); 517 } 518})();</script>
vendor: 1 bytes, line 518
518
519<script id="__st">var __st={"a":23864410189,"offset":32400,"reqid":"97630ca8-dd32-4043-a333-94155fb9e338-1790898148","pageurl":"hapakristin.com\/account\/login","u":"5705a7be9716"};</script>
vendor: 1 bytes, line 519
519
520<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 520
520
521<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 521
521
522<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//hapakristin.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 522
522
523<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//hapakristin.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
523<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 523
523
524<script> 525 window.Shopify = window.Shopify || {}; 526 window.Shopify.MCP = window.Shopify.MCP || {}; 527 window.Shopify.MCP.enabled = true; 528 window.Shopify.MCP.shop = "hapakristin.myshopify.com"; 529 window.Shopify.MCP.mcpEndpoint = "https:\/\/hapakristin.com\/api\/mcp"; 530 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 531</script>
vendor: 1 bytes, line 531
531
532<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/hapakristin.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 533</script>
vendor: 1 bytes, line 533
533
534<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://hapakristin.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 535</script>
vendor: 1 bytes, line 535
535
536<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 537 function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent); 538</script>
vendor: 1 bytes, line 538
538
539<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}})); 540</script>
540 541<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://hapakristin.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 542<style id="shopify-accelerated-checkout-cart"> 543 #shopify-buyer-consent { 544 margin-top: 1em; 545 display: inline-block; 546 width: 100%; 547} 548 549#shopify-buyer-consent.hidden { 550 display: none; 551} 552 553#shopify-subscription-policy-button { 554 background: none; 555 border: none; 556 padding: 0; 557 text-decoration: underline; 558 font-size: inherit; 559 cursor: pointer; 560} 561 562#shopify-subscription-policy-button::before { 563 box-shadow: none; 564} 565 566 </style> 567
568<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
568 569 <!-- Start of ppbstudios Zendesk Widget script --> 570 571 <!-- End of ppbstudios Zendesk Widget script --> 572 <!-- Pinterest Tag --> 573 574<!-- end Pinterest Tag --> 575 <!-- BEGIN app block: shopify://apps/geo-pro-geolocation/blocks/geopro/16fc5313-7aee-4e90-ac95-f50fc7c8b657 --><!-- This snippet is used to load Geo:Pro data on the storefront --> 576<meta class='geo-ip' content='eyJwYXJhbWV0ZXJzIjp7ImxheW91dC1zZWxlY3RvciI6InRvcCIsInBlcm1hbmVudC1yZWRpcmVjdCI6MCwicG9wdXBfZGVsYXkiOiIwIiwiZG9tYWluc19saXN0IjpmYWxzZSwic3RvcmVfdGl0bGUiOiJIYXBhS3Jpc3RpbiBHbG9iYWwiLCJyZWRpcmVjdF90ZXh0IjoiSXQgbG9va3MgbGlrZSB5b3UgYXJlIGxvY2F0ZWQgaW4gJUNPVU5UUlklLiBSZWRpcmVjdCB0byB5b3VyIGxvY2FsIHN0b3JlPyBcbiAlU1RPUkVOQU1FJSIsInllcyI6IlllcywgcGxlYXNlIiwibm8iOiJObywgdGhhbmtzIiwiYmFja2dyb3VuZC1jb2xvciI6ImZmZmZmZiIsInRleHQtY29sb3IiOiIwMDAwMDAiLCJ5ZXMtYmFja2dyb3VuZC1jb2xvciI6IjAwMDAwMCIsInllcy10ZXh0LWNvbG9yIjoiZmZmZmZmIiwibm8tYmFja2dyb3VuZC1jb2xvciI6Ijg4ODg4OCIsIm5vLXRleHQtY29sb3IiOiJmZmZmZmYiLCJsb2NhbGl6YXRpb24iOltdLCJvd25lcl9pcCI6IjExOC4zMi4xNTYuMTk1Iiwib3duZXJfaXBfbW9kZSI6IiIsInNob3dfcG9wdXBfZm9yX3NhbWVfd2Vic2l0ZSI6ZmFsc2UsImhpZGVfdGhlX25vX2J1dHRvbiI6ZmFsc2UsImRpc2FibGVkX3N0YXRlIjpmYWxzZSwibGFzdF9lbWJlZGRlZF9hdCI6IjIwMjUtMDctMTQgMDU6MDA6MzUifSwicnVsZXNMaXN0IjpbeyJydWxlX2lkIjoiMTU2MTYiLCJjb3VudHJpZXMiOiJTaW5nYXBvcmUsTWFsYXlzaWEsVGhhaWxhbmQsSW5kb25lc2lhLENhbWJvZGlhLFBoaWxpcHBpbmVzLExhb3MsQnJ1bmVpLFZpZXRuYW0iLCJleGNlcHRpb25zIjoiU291dGggS29yZWEiLCJpcCI6IiIsInN0b3JlX25hbWUiOiJIYXBha3Jpc3Rpbi5zZyAoU291dGggRWFzdCBBc2lhIHN0b3JlKSIsImlwX2V4Y2VwdGlvbnMiOiIiLCJsaW5rIjoiaHR0cHM6XC9cL2hhcGFrcmlzdGluLnNnXC8iLCJkb21haW5fcmVkaXJlY3QiOiIxIiwibWFya2V0X2lkIjoiMCJ9LHsicnVsZV9pZCI6IjI3NzIwIiwiY291bnRyaWVzIjoiU291dGggS29yZWEiLCJleGNlcHRpb25zIjoiIiwiaXAiOiIiLCJzdG9yZV9uYW1lIjoiaGFwYWtyaXN0aW4uY28ua3IgKEtvcmVhbiBzdG9yZSkiLCJpcF9leGNlcHRpb25zIjoiIiwibGluayI6Imh0dHBzOlwvXC9oYXBha3Jpc3Rpbi5jby5rciIsImRvbWFpbl9yZWRpcmVjdCI6IjEiLCJtYXJrZXRfaWQiOiIwIn0seyJydWxlX2lkIjoiMjg5NjkiLCJjb3VudHJpZXMiOiJVbml0ZWQgU3RhdGVzIiwiZXhjZXB0aW9ucyI6IiIsImlwIjoiIiwic3RvcmVfbmFtZSI6ImhhcGtyaXN0aW4udXMgKExvcyBBbmdlbGVzICZhbXA7IE1pYW1pIHN0b3JlcykiLCJpcF9leGNlcHRpb25zIjoiIiwibGluayI6Imh0dHBzOlwvXC9oYXBha3Jpc3Rpbi51cyIsImRvbWFpbl9yZWRpcmVjdCI6IjEiLCJtYXJrZXRfaWQiOiIwIn0seyJydWxlX2lkIjoiMzkwNTUiLCJjb3VudHJpZXMiOiJKYXBhbiIsImV4Y2VwdGlvbnMiOiIiLCJpcCI6IiIsInN0b3JlX25hbWUiOiJoYXBha3Jpc3Rpbi5qcCAoSmFwYW4gU3RvcmUpIiwiaXBfZXhjZXB0aW9ucyI6IiIsImxpbmsiOiJodHRwczpcL1wvaGFwYWtyaXN0aW4uanBcL2NvbGxlY3Rpb25zXC9tYWluIiwiZG9tYWluX3JlZGlyZWN0IjoiMCIsIm1hcmtldF9pZCI6IjAifSx7InJ1bGVfaWQiOiIzOTA3NCIsImNvdW50cmllcyI6IlRhaXdhbiIsImV4Y2VwdGlvbnMiOiIiLCJpcCI6IiIsInN0b3JlX25hbWUiOiJoYXBha3Jpc3Rpbi5jb20udHcgKFRhaXdhbiBTdG9yZSkiLCJpcF9leGNlcHRpb25zIjoiIiwibGluayI6Imh0dHBzOlwvXC9oYXBha3Jpc3Rpbi5jb20udHdcLyIsImRvbWFpbl9yZWRpcmVjdCI6IjAiLCJtYXJrZXRfaWQiOiIwIn1dfQ=='> 577<!-- This snippet initializes the plugin -->
578<script async data-geopro-shop="hapakristin.myshopify.com" data-geopro-design-mode="false" data-geopro-tracking-env="production"> 579 // geopro loading script 580 !function(){function e(e,t,n){try{if("function"!=typeof fetch)return;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.indexOf("Baiduspider")>=0)return;var o="https://aa4cacd33be28673d7e69be559ce7ad7@o4506196830715904.ingest.us.sentry.io/4507550373445632",r=o.match(/^https:\/\/([^@]+)@([^/]+)\/(.+)$/),i={message:e,level:"error",environment:"production",transaction:location.href,user:{id:window.Shopify&&window.Shopify.shop?window.Shopify.shop:"unknown",ip_address:String.fromCharCode(123,123)+"auto"+String.fromCharCode(125,125)},extra:n||{},logger:"GeoProInline",exception:{type:t&&t.name?t.name:"Error",value:t&&t.message?t.message:String(t)}};fetch("https://"+r[2]+"/api/"+r[3]+"/envelope/?sentry_key="+r[1],{method:"POST",body:JSON.stringify({dsn:o,sent_at:(new Date).toISOString(),event_id:Math.random().toString(16).slice(2)})+'\n{"type":"event"}\n'+JSON.stringify(i)+"\n",headers:{"Content-Type":"text/plain"},keepalive:!0,referrerPolicy:"no-referrer",mode:"no-cors"}).catch((function(){}))}catch(e){}}function t(){window.geopro_cancel="1"}!function(){try{if(window.geopro_inline_tracking)return;var e=document.currentScript,t=e&&e.getAttribute("data-geopro-shop")||window.Shopify&&window.Shopify.shop;if(!t||!/^[a-z0-9][a-z0-9-]*\.myshopify\.com$/.test(t))return;if(/(^|\.)shopifypreview\.com$/.test(location.hostname))return;if(e&&"true"===e.getAttribute("data-geopro-design-mode")||window.Shopify&&window.Shopify.designMode)return;var n=new Date,o=new Date(n.getFullYear(),n.getMonth(),n.getDate()),r=new Date(n.getFullYear(),n.getMonth(),n.getDate()+1),i=function(e){return e<10?"0"+e:String(e)},a=n.getFullYear()+"-"+i(n.getMonth()+1)+"-"+i(n.getDate()),c="geoip-inline-"+(e&&"staging"===e.getAttribute("data-geopro-tracking-env")?"staging-":"")+t;function s(){try{for(var e=document.cookie.split(";"),t=0;t<e.length;t++){var n=e[t].trim();if(0===n.indexOf(c+"="))return JSON.parse(decodeURIComponent(n.slice(c.length+1)))}}catch(e){}return null}function d(e){try{document.cookie=c+"="+encodeURIComponent(JSON.stringify(e))+"; Path=/; SameSite=Lax; Expires="+r.toUTCString()+("https:"===location.protocol?"; Secure":"");var t=s();return!!t&&t.id===e.id&&t.day===e.day&&t.sent===e.sent}catch(e){return!1}}var u=s();if(!u||!/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(u.id)||u.day!==a||u.start!==o.getTime()/1e3||u.end!==r.getTime()/1e3||"boolean"!=typeof u.sent||"number"!=typeof u.time||u.time<u.start||u.time>=u.end){var p="undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)}));u={id:p,day:a,start:o.getTime()/1e3,end:r.getTime()/1e3,time:Math.floor(n.getTime()/1e3),sent:!1}}u.id=u.id.toLowerCase();var f=d(u),l={id:u.id,localDate:a,cookieAvailable:f,version:1};if(window.geopro_inline_tracking=l,u.sent||"function"!=typeof fetch)return;var g={};try{var m=document.referrer?new URL(document.referrer):null,h=/[?&](gclid|gbraid|wbraid|fbclid|ttclid|msclkid)=/.exec(location.search),y=/[?&]utm_source=([^&#]{1,40})/.exec(location.search);g={prerendering:!0===document.prerendering,visibility:document.visibilityState||"",webdriver:!0===navigator.webdriver,referrerHost:m?m.host.slice(0,100):"",referrerPath:m&&m.host===location.host?m.pathname.slice(0,100):"",path:location.pathname.slice(0,100),campaign:h?h[1]:y?"utm:"+decodeURIComponent(y[1]):""}}catch(x){}fetch("/apps/easylocation/api/inline-visit",{method:"POST",headers:{"Content-Type":"text/plain"},credentials:"same-origin",mode:"same-origin",redirect:"error",keepalive:!0,referrerPolicy:"no-referrer",body:JSON.stringify({myshopifyDomain:t,trackingId:u.id,localDate:a,dayStart:u.start,dayEnd:u.end,clientTime:u.time,pageHost:location.host,cookieAvailable:f,version:1,diag:g})}).then((function(e){if(204===e.status&&!e.redirected){var t=s();Date.now()<r.getTime()&&t&&t.id===u.id&&t.day===a&&(t.sent=!0,d(t))}})).catch((function(){}))}catch(v){}}();try{!function(){function n(n){try{if(!n||"success"!==n.message)return void t();window.geopro_inline_location_response=n}catch(o){e("GeoPro inline runtime error",o,{phase:"callback",response:n}),t()}}var o="/apps/easylocation/geo?x-api-key=91e359ab7-2b63-539e-1de2-c4bf731367a7",r=new XMLHttpRequest;r.open("GET",o,!0),r.responseType="json",r.timeout=5e3;var i=!1;function a(t){i||(i=!0,e("GeoPro inline XHR failed",new Error("XHR request failed: "+t),{url:o,eventType:t,status:r.status,readyState:r.readyState,timeout:r.timeout,responseURL:r.responseURL||null}),n(null))}
580r.onload=function(){if(200===r.status)return i=!0,void n(r.response);a("load")},r.onerror=function(){a("error")},r.ontimeout=function(){a("timeout")},r.onabort=function(){a("abort")},r.send()}()}catch(n){e("GeoPro inline runtime error",n,{phase:"load"}),t()}}(); 581</script>
vendor: 1 bytes, line 581
581
582<script src="https://cdn.shopify.com/extensions/01a0ee66-285d-79ac-b351-7570b0c735dd/easylocation-285/assets/easylocation-storefront.min.js" type="text/javascript" async></script>
582 583 584 585<!-- END app block --><!-- BEGIN app block: shopify://apps/beast-currency-converter/blocks/doubly/267afa86-a419-4d5b-a61b-556038e7294d --> 586 587 588
588<script> 589 var DoublyGlobalCurrency, catchXHR = true, bccAppVersion = 1; 590 var DoublyGlobal = { 591 theme : 'flags_theme', 592 spanClass : 'money', 593 cookieName : '_g1761025322', 594 ratesUrl : 'https://init.grizzlyapps.com/9e32c84f0db4f7b1eb40c32bdb0bdea9', 595 geoUrl : 'https://currency.grizzlyapps.com/83d400c612f9a099fab8f76dcab73a48', 596 shopCurrency : 'USD', 597 allowedCurrencies : '["USD","EUR","GBP","CAD","AUD","AED","NZD","SAR","HKD","MXN","CHF","QAR","KWD","CNY"]', 598 countriesJSON : '[]', 599 currencyMessage : 'Important: Prices are shown in <span class="selected-currency"></span> for your convenience.<br/>All payments are processed in US Dollars (USD) at the current exchange rate at checkout.', 600 currencyFormat : 'money_with_currency_format', 601 euroFormat : 'amount', 602 removeDecimals : 0, 603 roundDecimals : 0, 604 roundTo : '99', 605 autoSwitch : 0, 606 showPriceOnHover : 1, 607 showCurrencyMessage : true, 608 hideConverter : '0', 609 forceJqueryLoad : false, 610 beeketing : true, 611 themeScript : '', 612 customerScriptBefore : '', 613 customerScriptAfter : '', 614 previewMode : false, 615 debug: false 616 }; 617 618 <!-- inline script: fixes + various plugin js functions --> 619 DoublyGlobal.themeScript = "if(DoublyGlobal.debug) debugger;dbGenericFixes=true; \/* hide generic *\/ if(window.location.href.indexOf('\/checkouts') != -1 || window.location.href.indexOf('\/password') != -1 || window.location.href.indexOf('\/orders') != -1) { const doublyStylesHide = document.createElement('style'); doublyStylesHide.textContent = ` .doubly-float, .doubly-wrapper { display:none !important; } `; document.head.appendChild(doublyStylesHide); } \/* generic code to add money, message, convert with retry *\/ function genericConvert(){ if (typeof doublyAddMessage !== 'undefined') doublyAddMessage(); if (typeof doublyAddMoney !== 'undefined') doublyAddMoney(); if (typeof doublyResetMoney !== 'undefined') doublyResetMoney(); DoublyCurrency.convertAll(); initExtraFeatures(); } window.doublyChangeEvent = function(e) { var numRetries = (typeof doublyIntervalTries !== 'undefined' ? doublyIntervalTries : 6); var timeout = (typeof doublyIntervalTime !== 'undefined' ? doublyIntervalTime : 400); clearInterval(window.doublyInterval); \/* quick convert *\/ setTimeout(genericConvert, 50); \/* retry *\/ window.doublyInterval = setInterval(function() { try{ genericConvert(); } catch (e) { clearInterval(window.doublyInterval); } if (numRetries-- <= 0) clearInterval(window.doublyInterval); }, timeout); }; \/* bind events *\/ ['mouseup', 'change', 'input', 'scroll'].forEach(function(event) { document.removeEventListener(event, doublyChangeEvent); document.addEventListener(event, doublyChangeEvent); }); \/* for ajax cart *\/ jQueryGrizzly(document).unbind('ajaxComplete.doublyGenericFix'); jQueryGrizzly(document).bind('ajaxComplete.doublyGenericFix', doublyChangeEvent);";DoublyGlobal.customerScriptBefore = "if(DoublyGlobal.debug) debugger;dbGenericFixes=true; dbGenericAddMessageRules=['b|.cart--nav']; jQueryGrizzly('head').append('<style> .doubly-message { max-width: 700px; margin-left: auto; } <\/style>'); \/* message add \/ reposition *\/ function doublyAddMessage() { \/* rules in format before\/after|selector, first match in array has more priority *\/ if (DoublyGlobal.showCurrencyMessage == true) for (var i=0; i<dbGenericAddMessageRules.length; i++) { var rule = dbGenericAddMessageRules[i].split('|'); var where = (rule[0] == 'b' ? 'beforebegin' : 'afterend'); document.querySelectorAll(rule[1]).forEach(function(element) { if (element.parentElement && element.parentElement.parentElement && element.parentElement.parentElement.parentElement && element.parentElement.parentElement.parentElement.querySelector('.doubly-message') == null) { element.insertAdjacentHTML(where, '<div class=\"doubly-message\"><\/div>'); } }); } } doublyAddMessage(); \/* generic code to add money, message, convert with retry *\/ function genericConvert(){ if (typeof doublyAddMessage !== 'undefined') doublyAddMessage(); if (typeof doublyAddMoney !== 'undefined') doublyAddMoney(); if (typeof doublyResetMoney !== 'undefined') doublyResetMoney(); DoublyCurrency.convertAll(); initExtraFeatures(); } window.doublyChangeEvent = function(e) { var numRetries = (typeof doublyIntervalTries !== 'undefined' ? doublyIntervalTries : 6); var timeout = (typeof doublyIntervalTime !== 'undefined' ? doublyIntervalTime : 400);
619 clearInterval(window.doublyInterval); \/* quick convert *\/ setTimeout(genericConvert, 50); \/* retry *\/ window.doublyInterval = setInterval(function() { try{ genericConvert(); } catch (e) { clearInterval(window.doublyInterval); } if (numRetries-- <= 0) clearInterval(window.doublyInterval); }, timeout); }; \/* bind events *\/ ['mouseup', 'change', 'input', 'scroll'].forEach(function(event) { document.removeEventListener(event, doublyChangeEvent); document.addEventListener(event, doublyChangeEvent); }); \/* for ajax cart *\/ jQueryGrizzly(document).unbind('ajaxComplete.doublyGenericFix'); jQueryGrizzly(document).bind('ajaxComplete.doublyGenericFix', doublyChangeEvent);"; 620 DoublyGlobal.initNiceSelect = function(){ 621 !function(e) { 622 e.fn.niceSelect = function() { 623 this.each(function() { 624 var s = e(this); 625 var t = s.next() 626 , n = s.find('option') 627 , a = s.find('option:selected'); 628 t.find('.current').html('<span class="flags flags-' + a.data('country') + '"></span> ' + a.data('display') || a.text()); 629 t.attr({ 'role': 'combobox', 'aria-label': 'Select currency', 'aria-expanded': 'false' }); 630 }), 631 e(document).off('.nice_select'), 632 e(document).on('click.nice_select', '.doubly-nice-select.doubly-nice-select', function(s) { 633 var t = e(this); 634 e('.doubly-nice-select').not(t).removeClass('open'), 635 t.toggleClass('open'), 636 t.hasClass('open') ? ( 637 t.attr('aria-expanded', 'true'), 638 t.find('.option'), 639 t.find('.focus').removeClass('focus'), 640 t.find('.selected').addClass('focus') 641 ) : ( 642 t.attr('aria-expanded', 'false'), 643 t.focus() 644 ) 645 }), 646 e(document).on('click.nice_select', function(s) { 647 0 === e(s.target).closest('.doubly-nice-select').length && e('.doubly-nice-select').removeClass('open').attr('aria-expanded', 'false').find('.option') 648 }), 649 e(document).on('click.nice_select', '.doubly-nice-select .option', function(s) { 650 var t = e(this); 651 e('.doubly-nice-select').each(function() { 652 var s = e(this).find('.option[data-value="' + t.data('value') + '"]') 653 , n = s.closest('.doubly-nice-select'); 654 n.find('.selected').removeClass('selected'), 655 s.addClass('selected'); 656 var a = '<span class="flags flags-' + s.data('country') + '"></span> ' + s.data('display') || s.text(); 657 n.find('.current').html(a), 658 n.prev('select').val(s.data('value')).trigger('change') 659 }) 660 }), 661 e(document).on('keydown.nice_select', '.doubly-nice-select', function(s) { 662 var t = e(this) 663 , n = e(t.find('.focus') || t.find('.list .option.selected')); 664 if (32 == s.keyCode || 13 == s.keyCode) 665 return t.hasClass('open') ? n.trigger('click') : t.trigger('click'), 666 !1; 667 if (40 == s.keyCode) 668 return t.hasClass('open') ? n.next().length > 0 && (t.find('.focus').removeClass('focus'), 669 n.next().addClass('focus')) : t.trigger('click'), 670 !1; 671 if (38 == s.keyCode) 672 return t.hasClass('open') ? n.prev().length > 0 && (t.find('.focus').removeClass('focus'), 673 n.prev().addClass('focus')) : t.trigger('click'), 674 !1; 675 if (27 == s.keyCode) 676 t.hasClass('open') && t.trigger('click'); 677 else if (9 == s.keyCode && t.hasClass('open')) 678 return !1 679 }) 680 } 681 }(jQueryGrizzly); 682 }; 683 DoublyGlobal.addSelect = function(){ 684 /* add select in select wrapper or body */ 685 if (jQueryGrizzly('.doubly-wrapper').length>0) { 686 var doublyWrapper = '.doubly-wrapper'; 687 } else if (jQueryGrizzly('.doubly-float').length==0) { 688 var doublyWrapper = '.doubly-float'; 689 jQueryGrizzly('body').append('<div class="doubly-float"></div>'); 690 } 691 document.querySelectorAll(doublyWrapper).forEach(function(el) { 692 el.insertAdjacentHTML('afterbegin', '<select class="currency-switcher right noreplace" name="doubly-currencies"><option value="USD" data-country="United-States" data-currency-symbol
692="$" data-display="USD">US Dollar</option><option value="EUR" data-country="European-Union" data-currency-symbol="€" data-display="EUR">Euro</option><option value="GBP" data-country="United-Kingdom" data-currency-symbol="£" data-display="GBP">British Pound Sterling</option><option value="CAD" data-country="Canada" data-currency-symbol="$" data-display="CAD">Canadian Dollar</option><option value="AUD" data-country="Australia" data-currency-symbol="$" data-display="AUD">Australian Dollar</option><option value="AED" data-country="United-Arab-Emirates" data-currency-symbol="د.إ" data-display="AED">United Arab Emirates Dirham</option><option value="NZD" data-country="New-Zealand" data-currency-symbol="$" data-display="NZD">New Zealand Dollar</option><option value="SAR" data-country="Saudi-Arabia" data-currency-symbol="﷼" data-display="SAR">Saudi Riyal</option><option value="HKD" data-country="Hong-Kong" data-currency-symbol="$" data-display="HKD">Hong Kong Dollar</option><option value="MXN" data-country="Mexico" data-currency-symbol="$" data-display="MXN">Mexican Peso</option><option value="CHF" data-country="Switzerland" data-currency-symbol="CHF" data-display="CHF">Swiss Franc</option><option value="QAR" data-country="Qatar" data-currency-symbol="﷼" data-display="QAR">Qatari Rial</option><option value="KWD" data-country="Kuwait" data-currency-symbol="د.ك" data-display="KWD">Kuwaiti Dinar</option><option value="CNY" data-country="China" data-currency-symbol="¥" data-display="CNY">Chinese Yuan</option></select> <div class="doubly-nice-select currency-switcher right" data-nosnippet> <span class="current notranslate"></span> <ul class="list"> <li class="option notranslate" data-value="USD" data-country="United-States" data-currency-symbol="$" data-display="USD"><span class="flags flags-United-States"></span> US Dollar</li><li class="option notranslate" data-value="EUR" data-country="European-Union" data-currency-symbol="€" data-display="EUR"><span class="flags flags-European-Union"></span> Euro</li><li class="option notranslate" data-value="GBP" data-country="United-Kingdom" data-currency-symbol="£" data-display="GBP"><span class="flags flags-United-Kingdom"></span> British Pound Sterling</li><li class="option notranslate" data-value="CAD" data-country="Canada" data-currency-symbol="$" data-display="CAD"><span class="flags flags-Canada"></span> Canadian Dollar</li><li class="option notranslate" data-value="AUD" data-country="Australia" data-currency-symbol="$" data-display="AUD"><span class="flags flags-Australia"></span> Australian Dollar</li><li class="option notranslate" data-value="AED" data-country="United-Arab-Emirates" data-currency-symbol="د.إ" data-display="AED"><span class="flags flags-United-Arab-Emirates"></span> United Arab Emirates Dirham</li><li class="option notranslate" data-value="NZD" data-country="New-Zealand" data-currency-symbol="$" data-display="NZD"><span class="flags flags-New-Zealand"></span> New Zealand Dollar</li><li class="option notranslate" data-value="SAR" data-country="Saudi-Arabia" data-currency-symbol="﷼" data-display="SAR"><span class="flags flags-Saudi-Arabia"></span> Saudi Riyal</li><li class="option notranslate" data-value="HKD" data-country="Hong-Kong" data-currency-symbol="$" data-display="HKD"><span class="flags flags-Hong-Kong"></span> Hong Kong Dollar</li><li class="option notranslate" data-value="MXN" data-country="Mexico" data-currency-symbol="$" data-display="MXN"><span class="flags flags-Mexico"></span> Mexican Peso</li><li class="option notranslate" data-value="CHF" data-country="Switzerland" data-currency-symbol="CHF" data-display="CHF"><span class="flags flags-Switzerland"></span> Swiss Franc</li><li class="option notranslate" data-value="QAR" data-country="Qatar" data-currency-symbol="﷼" data-display="QAR"><span class="flags flags-Qatar"></span> Qatari Rial</li><li class="option notranslate" data-value="KWD" data-country="Kuwait" data-currency-symbol
692="د.ك" data-display="KWD"><span class="flags flags-Kuwait"></span> Kuwaiti Dinar</li><li class="option notranslate" data-value="CNY" data-country="China" data-currency-symbol="¥" data-display="CNY"><span class="flags flags-China"></span> Chinese Yuan</li> </ul> </div>'); 693 }); 694 } 695 var bbb = "0"; 696 </script>
696 697 698 699 <!-- inline styles --> 700 <style> 701 702 .flags{background-image:url("https://cdn.shopify.com/extensions/01a0900d-dba9-7f99-9fcd-ce9bd54595ee/beast-currency-converter-63/assets/currency-flags.png")} 703 .flags-small{background-image:url("https://cdn.shopify.com/extensions/01a0900d-dba9-7f99-9fcd-ce9bd54595ee/beast-currency-converter-63/assets/currency-flags-small.png")} 704 select.currency-switcher{display:none}.doubly-nice-select{-webkit-tap-highlight-color:transparent;background-color:#fff;border-radius:5px;border:1px solid #e8e8e8;box-sizing:border-box;cursor:pointer;display:block;float:left;font-family:"Helvetica Neue",Arial;font-size:14px;font-weight:400;height:42px;line-height:40px;outline:0;padding-left:12px;padding-right:30px;position:relative;text-align:left!important;transition:none;/*transition:all .2s ease-in-out;*/-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;width:auto}.doubly-nice-select:hover{border-color:#dbdbdb}.doubly-nice-select.open,.doubly-nice-select:active,.doubly-nice-select:focus{border-color:#88bfff}.doubly-nice-select:after{border-bottom:2px solid #999;border-right:2px solid #999;content:"";display:block;height:5px;box-sizing:content-box;pointer-events:none;position:absolute;right:14px;top:16px;-webkit-transform-origin:66% 66%;transform-origin:66% 66%;-webkit-transform:rotate(45deg);transform:rotate(45deg);transition:transform .15s ease-in-out;width:5px}.doubly-nice-select.open:after{-webkit-transform:rotate(-135deg);transform:rotate(-135deg)}.doubly-nice-select.open .list{opacity:1;pointer-events:auto;-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0); z-index:1000000 !important;}.doubly-nice-select.disabled{border-color:#ededed;color:#999;pointer-events:none}.doubly-nice-select.disabled:after{border-color:#ccc}.doubly-nice-select.wide{width:100%}.doubly-nice-select.wide .list{left:0!important;right:0!important}.doubly-nice-select.right{float:right}.doubly-nice-select.right .list{left:auto;right:0}.doubly-nice-select.small{font-size:12px;height:36px;line-height:34px}.doubly-nice-select.small:after{height:4px;width:4px}.flags-Afghanistan,.flags-Albania,.flags-Algeria,.flags-Andorra,.flags-Angola,.flags-Antigua-and-Barbuda,.flags-Argentina,.flags-Armenia,.flags-Aruba,.flags-Australia,.flags-Austria,.flags-Azerbaijan,.flags-Bahamas,.flags-Bahrain,.flags-Bangladesh,.flags-Barbados,.flags-Belarus,.flags-Belgium,.flags-Belize,.flags-Benin,.flags-Bermuda,.flags-Bhutan,.flags-Bitcoin,.flags-Bolivia,.flags-Bosnia-and-Herzegovina,.flags-Botswana,.flags-Brazil,.flags-Brunei,.flags-Bulgaria,.flags-Burkina-Faso,.flags-Burundi,.flags-Cambodia,.flags-Cameroon,.flags-Canada,.flags-Cape-Verde,.flags-Cayman-Islands,.flags-Central-African-Republic,.flags-Chad,.flags-Chile,.flags-China,.flags-Colombia,.flags-Comoros,.flags-Congo-Democratic,.flags-Congo-Republic,.flags-Costa-Rica,.flags-Cote-d_Ivoire,.flags-Croatia,.flags-Cuba,.flags-Curacao,.flags-Cyprus,.flags-Czech-Republic,.flags-Denmark,.flags-Djibouti,.flags-Dominica,.flags-Dominican-Republic,.flags-East-Timor,.flags-Ecuador,.flags-Egypt,.flags-El-Salvador,.flags-Equatorial-Guinea,.flags-Eritrea,.flags-Estonia,.flags-Ethiopia,.flags-European-Union,.flags-Falkland-Islands,.flags-Fiji,.flags-Finland,.flags-France,.flags-Gabon,.flags-Gambia,.flags-Georgia,.flags-Germany,.flags-Ghana,.flags-Gibraltar,.flags-Grecee,.flags-Grenada,.flags-Guatemala,.flags-Guernsey,.flags-Guinea,.flags-Guinea-Bissau,.flags-Guyana,.flags-Haiti,.flags-Honduras,.flags-Hong-Kong,.flags-Hungary,.flags-IMF,.flags-Iceland,.flags-India,.flags-Indonesia,.flags-Iran,.flags-Iraq,.flags-Ireland,.flags-Isle-of-Man,.flags-Israel,.flags-Italy,.flags-Jamaica,.flags-Japan,.flags-Jersey,.flags-Jordan,.flags-Kazakhstan,.flags-Kenya,.flags-Korea-North,.flags-Korea-South,.flags-Kosovo,.flags-Kuwait,.flags-Kyrgyzstan,.flags-Laos,.flags-Latvia,.flags-Lebanon,.flags-Lesotho,.flags-Liberia,.flags-Libya,.flags-Liechtenstein,.flags-Lithuania,.flags-Luxembourg,.flags-Macao,.flags-Macedonia,.flags-Madagascar,.flags-Malawi,.flags-Malaysia,.flags-Maldives,.flags-Mali,.flags-Malta,.flags-Marshall-Islands,.flags-Mauritania,.flags-Mauritius,.flags-Mexico,.flags-Micronesia-_Federated_,.flags-Moldova,.flags-Monaco,.flags-Mongolia,.flags-Montenegro,.flags-Morocco,.flags-Mozambique,.flags-Myanmar,.flags-Namibia,.flags-Nauru,.flags-Nepal,.flags-Netherlands,.flags-New-Zealand,.flags-Nicaragua,.flags-Niger,.flags-Nigeria,.flags-Norway,.flags-Oman,.flags-Pakistan,.flags-Palau,.flags-Panama,.flags-Papua-New-Guinea,.flags-Paraguay,.flags-Peru,.flags-Philippines,.flags-Poland,.flags-Portugal,.flags-Qatar,.flags-Romania,.flags-Russia,.flags-Rwanda,.flags-Saint-Helena,.flags-Saint-Kitts-and-Nevis,.flags-Saint-Lucia,.flags-Saint-Vincent-and-the-Grenadines,.flags-Samoa,.flags-San-Marino,.flags-Sao-Tome-and-Principe,.flags-Saudi-Arabia,.flags-Seborga,.flags-Senegal,.flags-Serbia,.flags-Seychelles,.flags-Sierra-Leone,.flags-Singapore,.flags-Slovakia,.flags-Slovenia,.flags-Solomon-Islands,.flags-Somalia,.flags-South-Africa,.flags-South-Sudan,.flags-Spain,.flags-Sri-Lanka,.flags-Sudan,.flags-Suriname,.flags-Swaziland,.flags-Sweden,.flags-Switzerland,.flags-Syria,.flags-Taiwan,.flags-Tajikistan,.flags-Tanzania,.flags-Thailand,.flags-Togo,.flags-Tonga,.flags-Trinidad-and-Tobago,.flags-Tunisia,.flags-Turkey,.flags-Turkmenistan,.flags-Tuvalu,.flags-Uganda,.flags-Ukraine,.flags-United-Arab-Emirates,.flags-United-Kingdom,.flags-United-States,.flags-Uruguay,.flags-Uzbekistan,.flags-Vanuatu,.flags-Vatican-City,.flags-Venezuela,.flags-Vietnam,.flags-Wallis-and-Futuna,.flags-XAG,.flags-XAU,.flags-XPT,.flags-Yemen,.flags-Z
704ambia,.flags-Zimbabwe{width:30px;height:20px}.doubly-nice-select.small .option{line-height:34px;min-height:34px}.doubly-nice-select .list{background-color:#fff;border-radius:5px;box-shadow:0 0 0 1px rgba(68,68,68,.11);box-sizing:border-box;margin:4px 0 0!important;opacity:0;overflow:scroll;overflow-x:hidden;padding:0;pointer-events:none;position:absolute;top:100%;max-height:260px;left:0;-webkit-transform-origin:50% 0;transform-origin:50% 0;-webkit-transform:scale(.75) translateY(-21px);transform:scale(.75) translateY(-21px);transition:all .2s cubic-bezier(.5,0,0,1.25),opacity .15s ease-out;z-index:100000}.doubly-nice-select .current img,.doubly-nice-select .option img{vertical-align:top;padding-top:10px}.doubly-nice-select .list:hover .option:not(:hover){background-color:transparent!important}.doubly-nice-select .option{font-size:13px !important;float:none!important;text-align:left !important;margin:0px !important;font-family:Helvetica Neue,Arial !important;letter-spacing:normal;text-transform:none;display:block!important;cursor:pointer;font-weight:400;line-height:40px!important;list-style:none;min-height:40px;min-width:55px;margin-bottom:0;outline:0;padding-left:18px!important;padding-right:52px!important;text-align:left;transition:all .2s}.doubly-nice-select .option.focus,.doubly-nice-select .option.selected.focus,.doubly-nice-select .option:hover{background-color:#f6f6f6}.doubly-nice-select .option.selected{font-weight:700}.doubly-nice-select .current img{line-height:45px}.doubly-nice-select.slim{padding:0 18px 0 0;height:20px;line-height:20px;border:0;background:0 0!important}.doubly-nice-select.slim .current .flags{margin-top:0 !important}.doubly-nice-select.slim:after{right:4px;top:6px}.flags{background-repeat:no-repeat;display:block;margin:10px 4px 0 0 !important;float:left}.flags-Zimbabwe{background-position:-5px -5px}.flags-Zambia{background-position:-45px -5px}.flags-Yemen{background-position:-85px -5px}.flags-Vietnam{background-position:-125px -5px}.flags-Venezuela{background-position:-165px -5px}.flags-Vatican-City{background-position:-205px -5px}.flags-Vanuatu{background-position:-245px -5px}.flags-Uzbekistan{background-position:-285px -5px}.flags-Uruguay{background-position:-325px -5px}.flags-United-States{background-position:-365px -5px}.flags-United-Kingdom{background-position:-405px -5px}.flags-United-Arab-Emirates{background-position:-445px -5px}.flags-Ukraine{background-position:-5px -35px}.flags-Uganda{background-position:-45px -35px}.flags-Tuvalu{background-position:-85px -35px}.flags-Turkmenistan{background-position:-125px -35px}.flags-Turkey{background-position:-165px -35px}.flags-Tunisia{background-position:-205px -35px}.flags-Trinidad-and-Tobago{background-position:-245px -35px}.flags-Tonga{background-position:-285px -35px}.flags-Togo{background-position:-325px -35px}.flags-Thailand{background-position:-365px -35px}.flags-Tanzania{background-position:-405px -35px}.flags-Tajikistan{background-position:-445px -35px}.flags-Taiwan{background-position:-5px -65px}.flags-Syria{background-position:-45px -65px}.flags-Switzerland{background-position:-85px -65px}.flags-Sweden{background-position:-125px -65px}.flags-Swaziland{background-position:-165px -65px}.flags-Suriname{background-position:-205px -65px}.flags-Sudan{background-position:-245px -65px}.flags-Sri-Lanka{background-position:-285px -65px}.flags-Spain{background-position:-325px -65px}.flags-South-Sudan{background-position:-365px -65px}.flags-South-Africa{background-position:-405px -65px}.flags-Somalia{background-position:-445px -65px}.flags-Solomon-Islands{background-position:-5px -95px}.flags-Slovenia{background-position:-45px -95px}.flags-Slovakia{background-position:-85px -95px}.flags-Singapore{background-position:-125px -95px}.flags-Sierra-Leone{background-position:-165px -95px}.flags-Seychelles{background-position:-205px -95px}.flags-Serbia{background-position:-245px -95px}.flags-Senegal{background-position:-285px -95px}.flags-Saudi-Arabia{background-position:-325px -95px}.flags-Sao-Tome-and-Principe{background-position:-365px -95px}.flags-San-Marino{background-position:-405px -95px}.flags-Samoa{background-position:-445px -95px}.flags-Saint-Vincent-and-the-Grenadines{background-position:-5px -125px}.flags-Saint-Lucia{background-position:-45px -125px}.flags-Saint-Kitts-and-Nevis{background-position:-85px -125px}.flags-Rwanda{background-position:-125px -125px}.flags-Russia{background-position:-165px -125px}.flags-Romania{background-position:-205px -125px}.flags-Qatar{background-position:-245px -125px}.flags-Portugal{background-position:-285px -125px}.flags-Poland{background-position:-325px -125px}.flags-Philippines{background-position:-365px -125px}.flags-Peru{background-position:-405px -125px}.flags-Paraguay{background-position:-445px -125px}.flags-Papua-New-Guinea{background-position:-5px -155px}.flags-Panama{background-position:-45px -155px}.flags-Palau{background-position:-85px -155px}.flags-Pakistan{background-position:-125px -155px}.flags-Oman{background-position:-165px -155px}.flags-Norway{background-position:-205px -155px}.flags-Nigeria{background-position:-245px -155px}.flags-Niger{background-position:-285px -155px}.flags-Nicaragua{background-position:-325px -155px}.flags-New-Zealand{background-position:-365px -155px}.flags-Netherlands{background-position:-405px -155px}.flags-Nepal{background-position:-445px -155px}.flags-Nauru{background-position:-5px -185px}.flags-Namibia{background-position:-45px -185px}.flags-Myanmar{background-position:-85px -185px}.flags-Mozambique{background-position:-125px -185px}.flags-Morocco{background-position:-165px -185px}.flags-Montenegro{background-position:-205px -185px}.flags-Mongolia{background-position:-245px -185px}.flags-Monaco{background-position:-285px -185px}.flags-Moldova{background-position:-325px -185px}.flags-Micronesia-_Federated_{background-position:-365px -185px}.flags-Mexico{background-position:-405px -185px}.flags-Mauritius{background-position:-445px -185px}.flags-Mauritania{background-position:-5px -215px}.flags-Marshall-Islands{background-position:-45px -215px}.flags-Malta{background-position:-85px -215px}.flags-Mali{background-position:-125px -215px}.flags-Maldives{background-position:-165px -215px}.flags-Malaysia{background-position:-205px -215px}.flags-Malawi{background-position:-245px -215px}.flags-Madagascar{background-position:-285px -215px}.flags-Macedonia{background-position:-325px -215px}.flags-Luxembourg{background-position:-365px -215px}.flags-Lithuania{background-position:-405px -215px}.flags-Liechtenstein{background-position:-445px -215px}.flags-Libya{background-position:-5px -245px}.flags-Liberia{background-position:-45px -245px}.flags-Lesotho{background-position:-85px -245px}.flags-Lebanon{background-position:-125px -245px}.flags-Latvia{background-position:-165px -245px}.flags-Laos{background-position:-205px -245px}.flags-Kyrgyzstan{background-position:-245px -245px}.flags-Kuwait{background-position:-285px -245px}.flags-Kosovo{background-position:-325px -245px}.flags-Korea-South{background-position:-365px -245px}.flags-Korea-North{background-position:-405px -245px}.flags-Kiribati{width:30px;height:20px;background-position:-445px -245px}.flags-Kenya{background-position:-5px -275px}.flags-Kazakhstan{background-position:-45px -275px}.flags-Jordan{background-position:-85px -275px}.flags-Japan{background-position:-125px -275px}.flags-Jamaica{background-position:-165px -275px}.flags-Italy{background-position:-205px -275px}.flags-Israel{background-position:-245px -275px}.flags-Ireland{background-position:-285px -275px}.flags-Iraq{background-position:-325px -275px}.flags-Iran{background-position:-365px -275px}.flags-Indonesia{background-position:-405px -275px}.flags-India{background-position:-445px -275px}.flags-Iceland{background-position:-5px -305px}.flags-Hungary{background-position:-45px -305px}.flags-Honduras{background-position:-85px -305px}.flags-Haiti{background-position:-125px -305px}.flags-Guyana{background-position:-165px -305px}.flags-Guinea{background-position:-205px -305px}.flags-Guinea-Bissau{background-position:-245px -305px}.flags-Guatemala{background-position:-285px -305px}.flags-Grenada{background-position:-325px -305px}.flags-Grecee{background-position:-365px -305px}.flags-Ghana{background-position:-405px -305px}.flags-Germany{background-position:-445px -305px}.flags-Georgia{background-position:-5px -335px}.flags-Gambia{background-position:-45px -335px}.flags-Gabon{background-position:-85px -335px}.flags-France{background-position:-125px -335px}.flags-Finland{background-position:-165px -335px}.flags-Fiji{background-position:-205px -335px}.flags-Ethiopia{background-position:-245px -335px}.flags-Estonia{background-position:-285px -335px}.flags-Eritrea{background-position:-325px -335px}
704.flags-Equatorial-Guinea{background-position:-365px -335px}.flags-El-Salvador{background-position:-405px -335px}.flags-Egypt{background-position:-445px -335px}.flags-Ecuador{background-position:-5px -365px}.flags-East-Timor{background-position:-45px -365px}.flags-Dominican-Republic{background-position:-85px -365px}.flags-Dominica{background-position:-125px -365px}.flags-Djibouti{background-position:-165px -365px}.flags-Denmark{background-position:-205px -365px}.flags-Czech-Republic{background-position:-245px -365px}.flags-Cyprus{background-position:-285px -365px}.flags-Cuba{background-position:-325px -365px}.flags-Croatia{background-position:-365px -365px}.flags-Cote-d_Ivoire{background-position:-405px -365px}.flags-Costa-Rica{background-position:-445px -365px}.flags-Congo-Republic{background-position:-5px -395px}.flags-Congo-Democratic{background-position:-45px -395px}.flags-Comoros{background-position:-85px -395px}.flags-Colombia{background-position:-125px -395px}.flags-China{background-position:-165px -395px}.flags-Chile{background-position:-205px -395px}.flags-Chad{background-position:-245px -395px}.flags-Central-African-Republic{background-position:-285px -395px}.flags-Cape-Verde{background-position:-325px -395px}.flags-Canada{background-position:-365px -395px}.flags-Cameroon{background-position:-405px -395px}.flags-Cambodia{background-position:-445px -395px}.flags-Burundi{background-position:-5px -425px}.flags-Burkina-Faso{background-position:-45px -425px}.flags-Bulgaria{background-position:-85px -425px}.flags-Brunei{background-position:-125px -425px}.flags-Brazil{background-position:-165px -425px}.flags-Botswana{background-position:-205px -425px}.flags-Bosnia-and-Herzegovina{background-position:-245px -425px}.flags-Bolivia{background-position:-285px -425px}.flags-Bhutan{background-position:-325px -425px}.flags-Benin{background-position:-365px -425px}.flags-Belize{background-position:-405px -425px}.flags-Belgium{background-position:-445px -425px}.flags-Belarus{background-position:-5px -455px}.flags-Barbados{background-position:-45px -455px}.flags-Bangladesh{background-position:-85px -455px}.flags-Bahrain{background-position:-125px -455px}.flags-Bahamas{background-position:-165px -455px}.flags-Azerbaijan{background-position:-205px -455px}.flags-Austria{background-position:-245px -455px}.flags-Australia{background-position:-285px -455px}.flags-Armenia{background-position:-325px -455px}.flags-Argentina{background-position:-365px -455px}.flags-Antigua-and-Barbuda{background-position:-405px -455px}.flags-Andorra{background-position:-445px -455px}.flags-Algeria{background-position:-5px -485px}.flags-Albania{background-position:-45px -485px}.flags-Afghanistan{background-position:-85px -485px}.flags-Bermuda{background-position:-125px -485px}.flags-European-Union{background-position:-165px -485px}.flags-XPT{background-position:-205px -485px}.flags-XAU{background-position:-245px -485px}.flags-XAG{background-position:-285px -485px}.flags-Wallis-and-Futuna{background-position:-325px -485px}.flags-Seborga{background-position:-365px -485px}.flags-Aruba{background-position:-405px -485px}.flags-Angola{background-position:-445px -485px}.flags-Saint-Helena{background-position:-485px -5px}.flags-Macao{background-position:-485px -35px}.flags-Jersey{background-position:-485px -65px}.flags-Isle-of-Man{background-position:-485px -95px}.flags-IMF{background-position:-485px -125px}.flags-Hong-Kong{background-position:-485px -155px}.flags-Guernsey{background-position:-485px -185px}.flags-Gibraltar{background-position:-485px -215px}.flags-Falkland-Islands{background-position:-485px -245px}.flags-Curacao{background-position:-485px -275px}.flags-Cayman-Islands{background-position:-485px -305px}.flags-Bitcoin{background-position:-485px -335px}.flags-small{background-repeat:no-repeat;display:block;margin:5px 3px 0 0 !important;border:1px solid #fff;box-sizing:content-box;float:left}.doubly-nice-select.open .list .flags-small{margin-top:15px !important}.flags-small.flags-Zimbabwe{width:15px;height:10px;background-position:0 0}
704.flags-small.flags-Zambia{width:15px;height:10px;background-position:-15px 0}.flags-small.flags-Yemen{width:15px;height:10px;background-position:-30px 0}.flags-small.flags-Vietnam{width:15px;height:10px;background-position:-45px 0}.flags-small.flags-Venezuela{width:15px;height:10px;background-position:-60px 0}.flags-small.flags-Vatican-City{width:15px;height:10px;background-position:-75px 0}.flags-small.flags-Vanuatu{width:15px;height:10px;background-position:-90px 0}.flags-small.flags-Uzbekistan{width:15px;height:10px;background-position:-105px 0}.flags-small.flags-Uruguay{width:15px;height:10px;background-position:-120px 0}.flags-small.flags-United-Kingdom{width:15px;height:10px;background-position:-150px 0}.flags-small.flags-United-Arab-Emirates{width:15px;height:10px;background-position:-165px 0}.flags-small.flags-Ukraine{width:15px;height:10px;background-position:0 -10px}.flags-small.flags-Uganda{width:15px;height:10px;background-position:-15px -10px}.flags-small.flags-Tuvalu{width:15px;height:10px;background-position:-30px -10px}.flags-small.flags-Turkmenistan{width:15px;height:10px;background-position:-45px -10px}.flags-small.flags-Turkey{width:15px;height:10px;background-position:-60px -10px}.flags-small.flags-Tunisia{width:15px;height:10px;background-position:-75px -10px}.flags-small.flags-Trinidad-and-Tobago{width:15px;height:10px;background-position:-90px -10px}.flags-small.flags-Tonga{width:15px;height:10px;background-position:-105px -10px}.flags-small.flags-Togo{width:15px;height:10px;background-position:-120px -10px}.flags-small.flags-Thailand{width:15px;height:10px;background-position:-135px -10px}.flags-small.flags-Tanzania{width:15px;height:10px;background-position:-150px -10px}.flags-small.flags-Tajikistan{width:15px;height:10px;background-position:-165px -10px}.flags-small.flags-Taiwan{width:15px;height:10px;background-position:0 -20px}.flags-small.flags-Syria{width:15px;height:10px;background-position:-15px -20px}.flags-small.flags-Switzerland{width:15px;height:10px;background-position:-30px -20px}.flags-small.flags-Sweden{width:15px;height:10px;background-position:-45px -20px}.flags-small.flags-Swaziland{width:15px;height:10px;background-position:-60px -20px}.flags-small.flags-Suriname{width:15px;height:10px;background-position:-75px -20px}.flags-small.flags-Sudan{width:15px;height:10px;background-position:-90px -20px}.flags-small.flags-Sri-Lanka{width:15px;height:10px;background-position:-105px -20px}.flags-small.flags-Spain{width:15px;height:10px;background-position:-120px -20px}.flags-small.flags-South-Sudan{width:15px;height:10px;background-position:-135px -20px}.flags-small.flags-South-Africa{width:15px;height:10px;background-position:-150px -20px}.flags-small.flags-Somalia{width:15px;height:10px;background-position:-165px -20px}.flags-small.flags-Solomon-Islands{width:15px;height:10px;background-position:0 -30px}.flags-small.flags-Slovenia{width:15px;height:10px;background-position:-15px -30px}.flags-small.flags-Slovakia{width:15px;height:10px;background-position:-30px -30px}.flags-small.flags-Singapore{width:15px;height:10px;background-position:-45px -30px}.flags-small.flags-Sierra-Leone{width:15px;height:10px;background-position:-60px -30px}.flags-small.flags-Seychelles{width:15px;height:10px;background-position:-75px -30px}.flags-small.flags-Serbia{width:15px;height:10px;background-position:-90px -30px}.flags-small.flags-Senegal{width:15px;height:10px;background-position:-105px -30px}.flags-small.flags-Saudi-Arabia{width:15px;height:10px;background-position:-120px -30px}.flags-small.flags-Sao-Tome-and-Principe{width:15px;height:10px;background-position:-135px -30px}.flags-small.flags-San-Marino{width:15px;height:10px;background-position:-150px -30px}.flags-small.flags-Samoa{width:15px;height:10px;background-position:-165px -30px}.flags-small.flags-Saint-Vincent-and-the-Grenadines{width:15px;height:10px;background-position:0 -40px}.flags-small.flags-Saint-Lucia{width:15px;height:10px;background-position:-15px -40px}.flags-small.flags-Saint-Kitts-and-Nevis{width:15px;height:10px;background-position:-30px -40px}.flags-small.flags-Rwanda{width:15px;height:10px;background-position:-45px -40px}.flags-small.flags-Russia{width:15px;height:10px;background-position:-60px -40px}.flags-small.flags-Romania{width:15px;height:10px;background-position:-75px -40px}.flags-small.flags-Qatar{width:15px;height:10px;background-position:-90px -40px}.flags-small.flags-Portugal{width:15px;height:10px;background-position:-105px -40px}
704.flags-small.flags-Poland{width:15px;height:10px;background-position:-120px -40px}.flags-small.flags-Philippines{width:15px;height:10px;background-position:-135px -40px}.flags-small.flags-Peru{width:15px;height:10px;background-position:-150px -40px}.flags-small.flags-Paraguay{width:15px;height:10px;background-position:-165px -40px}.flags-small.flags-Papua-New-Guinea{width:15px;height:10px;background-position:0 -50px}.flags-small.flags-Panama{width:15px;height:10px;background-position:-15px -50px}.flags-small.flags-Palau{width:15px;height:10px;background-position:-30px -50px}.flags-small.flags-Pakistan{width:15px;height:10px;background-position:-45px -50px}.flags-small.flags-Oman{width:15px;height:10px;background-position:-60px -50px}.flags-small.flags-Norway{width:15px;height:10px;background-position:-75px -50px}.flags-small.flags-Nigeria{width:15px;height:10px;background-position:-90px -50px}.flags-small.flags-Niger{width:15px;height:10px;background-position:-105px -50px}.flags-small.flags-Nicaragua{width:15px;height:10px;background-position:-120px -50px}.flags-small.flags-New-Zealand{width:15px;height:10px;background-position:-135px -50px}.flags-small.flags-Netherlands{width:15px;height:10px;background-position:-150px -50px}.flags-small.flags-Nepal{width:15px;height:10px;background-position:-165px -50px}.flags-small.flags-Nauru{width:15px;height:10px;background-position:0 -60px}.flags-small.flags-Namibia{width:15px;height:10px;background-position:-15px -60px}.flags-small.flags-Myanmar{width:15px;height:10px;background-position:-30px -60px}.flags-small.flags-Mozambique{width:15px;height:10px;background-position:-45px -60px}.flags-small.flags-Morocco{width:15px;height:10px;background-position:-60px -60px}.flags-small.flags-Montenegro{width:15px;height:10px;background-position:-75px -60px}.flags-small.flags-Mongolia{width:15px;height:10px;background-position:-90px -60px}.flags-small.flags-Monaco{width:15px;height:10px;background-position:-105px -60px}.flags-small.flags-Moldova{width:15px;height:10px;background-position:-120px -60px}.flags-small.flags-Micronesia-_Federated_{width:15px;height:10px;background-position:-135px -60px}.flags-small.flags-Mexico{width:15px;height:10px;background-position:-150px -60px}.flags-small.flags-Mauritius{width:15px;height:10px;background-position:-165px -60px}.flags-small.flags-Mauritania{width:15px;height:10px;background-position:0 -70px}.flags-small.flags-Marshall-Islands{width:15px;height:10px;background-position:-15px -70px}.flags-small.flags-Malta{width:15px;height:10px;background-position:-30px -70px}.flags-small.flags-Mali{width:15px;height:10px;background-position:-45px -70px}.flags-small.flags-Maldives{width:15px;height:10px;background-position:-60px -70px}.flags-small.flags-Malaysia{width:15px;height:10px;background-position:-75px -70px}.flags-small.flags-Malawi{width:15px;height:10px;background-position:-90px -70px}.flags-small.flags-Madagascar{width:15px;height:10px;background-position:-105px -70px}.flags-small.flags-Macedonia{width:15px;height:10px;background-position:-120px -70px}.flags-small.flags-Luxembourg{width:15px;height:10px;background-position:-135px -70px}.flags-small.flags-Lithuania{width:15px;height:10px;background-position:-150px -70px}.flags-small.flags-Liechtenstein{width:15px;height:10px;background-position:-165px -70px}.flags-small.flags-Libya{width:15px;height:10px;background-position:0 -80px}.flags-small.flags-Liberia{width:15px;height:10px;background-position:-15px -80px}.flags-small.flags-Lesotho{width:15px;height:10px;background-position:-30px -80px}.flags-small.flags-Lebanon{width:15px;height:10px;background-position:-45px -80px}.flags-small.flags-Latvia{width:15px;height:10px;background-position:-60px -80px}.flags-small.flags-Laos{width:15px;height:10px;background-position:-75px -80px}.flags-small.flags-Kyrgyzstan{width:15px;height:10px;background-position:-90px -80px}.flags-small.flags-Kuwait{width:15px;height:10px;background-position:-105px -80px}.flags-small.flags-Kosovo{width:15px;height:10px;background-position:-120px -80px}.flags-small.flags-Korea-South{width:15px;height:10px;background-position:-135px -80px}.flags-small.flags-Korea-North{width:15px;height:10px;background-position:-150px -80px}.flags-small.flags-Kiribati{width:15px;height:10px;background-position:-165px -80px}.flags-small.flags-Kenya{width:15px;height:10px;
704background-position:0 -90px}.flags-small.flags-Kazakhstan{width:15px;height:10px;background-position:-15px -90px}.flags-small.flags-Jordan{width:15px;height:10px;background-position:-30px -90px}.flags-small.flags-Japan{width:15px;height:10px;background-position:-45px -90px}.flags-small.flags-Jamaica{width:15px;height:10px;background-position:-60px -90px}.flags-small.flags-Italy{width:15px;height:10px;background-position:-75px -90px}.flags-small.flags-Israel{width:15px;height:10px;background-position:-90px -90px}.flags-small.flags-Ireland{width:15px;height:10px;background-position:-105px -90px}.flags-small.flags-Iraq{width:15px;height:10px;background-position:-120px -90px}.flags-small.flags-Iran{width:15px;height:10px;background-position:-135px -90px}.flags-small.flags-Indonesia{width:15px;height:10px;background-position:-150px -90px}.flags-small.flags-India{width:15px;height:10px;background-position:-165px -90px}.flags-small.flags-Iceland{width:15px;height:10px;background-position:0 -100px}.flags-small.flags-Hungary{width:15px;height:10px;background-position:-15px -100px}.flags-small.flags-Honduras{width:15px;height:10px;background-position:-30px -100px}.flags-small.flags-Haiti{width:15px;height:10px;background-position:-45px -100px}.flags-small.flags-Guyana{width:15px;height:10px;background-position:-60px -100px}.flags-small.flags-Guinea{width:15px;height:10px;background-position:-75px -100px}.flags-small.flags-Guinea-Bissau{width:15px;height:10px;background-position:-90px -100px}.flags-small.flags-Guatemala{width:15px;height:10px;background-position:-105px -100px}.flags-small.flags-Grenada{width:15px;height:10px;background-position:-120px -100px}.flags-small.flags-Grecee{width:15px;height:10px;background-position:-135px -100px}.flags-small.flags-Ghana{width:15px;height:10px;background-position:-150px -100px}.flags-small.flags-Germany{width:15px;height:10px;background-position:-165px -100px}.flags-small.flags-Georgia{width:15px;height:10px;background-position:0 -110px}.flags-small.flags-Gambia{width:15px;height:10px;background-position:-15px -110px}.flags-small.flags-Gabon{width:15px;height:10px;background-position:-30px -110px}.flags-small.flags-France{width:15px;height:10px;background-position:-45px -110px}.flags-small.flags-Finland{width:15px;height:10px;background-position:-60px -110px}.flags-small.flags-Fiji{width:15px;height:10px;background-position:-75px -110px}.flags-small.flags-Ethiopia{width:15px;height:10px;background-position:-90px -110px}.flags-small.flags-Estonia{width:15px;height:10px;background-position:-105px -110px}.flags-small.flags-Eritrea{width:15px;height:10px;background-position:-120px -110px}.flags-small.flags-Equatorial-Guinea{width:15px;height:10px;background-position:-135px -110px}.flags-small.flags-El-Salvador{width:15px;height:10px;background-position:-150px -110px}.flags-small.flags-Egypt{width:15px;height:10px;background-position:-165px -110px}.flags-small.flags-Ecuador{width:15px;height:10px;background-position:0 -120px}.flags-small.flags-East-Timor{width:15px;height:10px;background-position:-15px -120px}.flags-small.flags-Dominican-Republic{width:15px;height:10px;background-position:-30px -120px}.flags-small.flags-Dominica{width:15px;height:10px;background-position:-45px -120px}.flags-small.flags-Djibouti{width:15px;height:10px;background-position:-60px -120px}.flags-small.flags-Denmark{width:15px;height:10px;background-position:-75px -120px}.flags-small.flags-Czech-Republic{width:15px;height:10px;background-position:-90px -120px}.flags-small.flags-Cyprus{width:15px;height:10px;background-position:-105px -120px}.flags-small.flags-Cuba{width:15px;height:10px;background-position:-120px -120px}.flags-small.flags-Croatia{width:15px;height:10px;background-position:-135px -120px}.flags-small.flags-Cote-d_Ivoire{width:15px;height:10px;background-position:-150px -120px}.flags-small.flags-Costa-Rica{width:15px;height:10px;background-position:-165px -120px}.flags-small.flags-Congo-Republic{width:15px;height:10px;background-position:0 -130px}.flags-small.flags-Congo-Democratic{width:15px;height:10px;background-position:-15px -130px}.flags-small.flags-Comoros{width:15px;height:10px;background-position:-30px -130px}.flags-small.flags-Colombia{width:15px;height:10px;background-position:-45px -130px}.flags-small.flags-China{width:15px;height:10px;background-position:-60px -130px}.flags-small.flags-Chile{width:15px;height:10px;background-position:-75px -130px}.flags-small.flags-Chad{width:15px;height:10px;background-position:-90px -130px}.flags-small.flags-Central-African-Republic{width:15px;height:10px;background-position:-105px -130px}.flags-small.flags-Cape-Verde{width:15px;height:10px;background-position:-120px -130px}.flags-small.flags-Canada{width:15px;height:10px;background-position:-135px -130px}.flags-small.flags-Cameroon{width:15px;height:10px;background-position:-150px -130px}.flags-small.flags-Cambodia{width:15px;height:10px;background-position:-165px -130px}.flags-small.flags-Burundi{width:15px;height:10px;background-position:0 -140px}.flags-small.flags-Burkina-Faso{width:15px;height:10px;background-position:-15px -140px}.flags-small.flags-Bulgaria{width:15px;height:10px;background-position:-30px -140px}.flags-small.flags-Brunei{width:15px;height:10px;background-position:-45px -140px}.flags-small.flags-Brazil{width:15px;height:10px;background-position:-60px -140px}.flags-small.flags-Botswana{width:15px;height:10px;background-position:-75px -140px}.flags-small.flags-Bosnia-and-Herzegovina{width:15px;height:10px;background-position:-90px -140px}.flags-small.flags-Bolivia{width:15px;height:10px;background-position:-105px -140px}.flags-small.flags-Bhutan{width:15px;height:10px;background-position:-120px -140px}.flags-small.flags-Benin{width:15px;height:10px;background-position:-135px -140px}.flags-small.flags-Belize{width:15px;height:10px;background-position:-150px -140px}.flags-small.flags-Belgium{width:15px;height:10px;background-position:-165px -140px}.flags-small.flags-Belarus{width:15px;height:10px;background-position:0 -150px}.flags-small.flags-Barbados{width:15px;height:10px;background-position:-15px -150px}.flags-small.flags-Bangladesh{width:15px;height:10px;background-position:-30px -150px}.flags-small.flags-Bahrain{width:15px;height:10px;background-position:-45px -150px}.flags-small.flags-Bahamas{width:15px;height:10px;background-position:-60px -150px}.flags-small.flags-Azerbaijan{width:15px;height:10px;background-position:-75px -150px}.flags-small.flags-Austria{width:15px;height:10px;background-position:-90px -150px}.flags-small.flags-Australia{width:15px;height:10px;background-position:-105px -150px}.flags-small.flags-Armenia{width:15px;height:10px;background-position:-120px -150px}.flags-small.flags-Argentina{width:15px;height:10px;background-position:-135px -150px}.flags-small.flags-Antigua-and-Barbuda{width:15px;height:10px;background-position:-150px -150px}.flags-small.flags-Andorra{width:15px;height:10px;background-position:-165px -150px}.flags-small.flags-Algeria{width:15px;height:10px;background-position:0 -160px}.flags-small.flags-Albania{width:15px;height:10px;background-position:-15px -160px}.flags-small.flags-Afghanistan{width:15px;height:10px;background-position:-30px -160px}.flags-small.flags-Bermuda{width:15px;height:10px;background-position:-45px -160px}.flags-small.flags-European-Union{width:15px;height:10px;background-position:-60px -160px}.flags-small.flags-United-States{width:15px;height:9px;background-position:-75px -160px}.flags-small.flags-XPT{width:15px;height:10px;background-position:-90px -160px}.flags-small.flags-XAU{width:15px;height:10px;background-position:-105px -160px}.flags-small.flags-XAG{width:15px;height:10px;background-position:-120px -160px}.flags-small.flags-Wallis-and-Futuna{width:15px;height:10px;background-position:-135px -160px}.flags-small.flags-Seborga{width:15px;height:10px;background-position:-150px -160px}.flags-small.flags-Aruba{width:15px;height:10px;background-position:-165px -160px}.flags-small.flags-Angola{width:15px;height:10px;background-position:0 -170px}.flags-small.flags-Saint-Helena{width:15px;height:10px;background-position:-15px -170px}.flags-small.flags-Macao{width:15px;height:10px;background-position:-30px -170px}.flags-small.flags-Jersey{width:15px;height:10px;background-position:-45px -170px}.flags-small.flags-Isle-of-Man{width:15px;height:10px;background-position:-60px -170px}.flags-small.flags-IMF{width:15px;height:10px;background-position:-75px -170px}.flags-small.flags-Hong-Kong{width:15px;height:10px;background-position:-90px -170px}.flags-small.flags-Guernsey{width:15px;height:10px;background-position:-105px -170px}.flags-small.flags-Gibraltar{width:15px;height:10px;background-position:-120px -170px}.flags-small.flags-Falkland-Islands{width:15px;height:10px;background-position:-135px -170px}.flags-small.flags-Curacao{width:15px;height:10px;background-position:-150px -170px}.flags-small.flags-Cayman-Islands{width:15px;height:10px;background-position:-165px -170px}.flags-small.flags-Bitcoin{width:15px;height:10px;background-position:-180px 0}.doubly-float .doubly-nice-select .list{left:0;right:auto} 705 706 707 .layered-currency-switcher{width:auto;float:right;padding:0 0 0 50px;margin:0px;}.layered-currency-switcher li{display:block;float:left;font-size:15px;margin:0px;}.layered-currency-switcher li button.currency-switcher-btn{width:auto;height:auto;margin-bottom:0px;background:#fff;font-family:Arial!important;line-height:18px;border:1px solid #dadada;border-radius:25px;color:#9a9a9a;float:left;font-weight:700;margin-left:-46px;min-width:90px;position:relative;text-align:center;text-decoration:none;padding:10px 11px 10px 49px}.price-on-hover,.price-on-hover-wrapper{font-size:15px!important;line-height:25px!important}.layered-currency-switcher li button.currency-switcher-btn:focus{outline:0;-webkit-outline:none;-moz-outline:none;-o-outline:none}.layered-currency-switcher li button.currency-switcher-btn:hover{background:#ddf6cf;border-color:#a9d092;color:#89b171}.layered-currency-switcher li button.currency-switcher-btn span{dis
707play:none}.layered-currency-switcher li button.currency-switcher-btn:first-child{border-radius:25px}.layered-currency-switcher li button.currency-switcher-btn.selected{background:#de4c39;border-color:#de4c39;color:#fff;z-index:99;padding-left:23px!important;padding-right:23px!important}.layered-currency-switcher li button.currency-switcher-btn.selected span{display:inline-block}.doubly,.money{position:relative; font-weight:inherit !important; font-size:inherit !important;text-decoration:inherit !important;}.price-on-hover-wrapper{position:absolute;left:-50%;text-align:center;width:200%;top:110%;z-index:100000000}.price-on-hover{background:#333;border-color:#FFF!important;padding:2px 5px 3px;font-weight:400;border-radius:5px;font-family:Helvetica Neue,Arial;color:#fff;border:0}.price-on-hover:after{content:\"\";position:absolute;left:50%;margin-left:-4px;margin-top:-2px;width:0;height:0;border-bottom:solid 4px #333;border-left:solid 4px transparent;border-right:solid 4px transparent}.doubly-message{margin:5px 0}.doubly-wrapper{float:right}.doubly-float{position:fixed;bottom:10px;left:10px;right:auto;z-index:100000;}select.currency-switcher{margin:0px; position:relative; top:auto;}.doubly-nice-select, .doubly-nice-select .list { background: #FFFFFF; } .doubly-nice-select .current, .doubly-nice-select .list .option { color: #403F3F; } .doubly-nice-select .option:hover, .doubly-nice-select .option.focus, .doubly-nice-select .option.selected.focus { background-color: #F6F6F6; } .price-on-hover { background-color: #222222 !important; color: #FFFFFF !important; } .price-on-hover:after { border-bottom-color: #222222 !important;} .doubly-float .doubly-nice-select .list{top:-271px;left:0;right:auto} .doubly-message { background-color: #FFEAEF !important; color: #000000 !important; border-radius:5px; padding:3px 10px; } 708 </style> 709 710
710<script src="https://cdn.shopify.com/extensions/01a0900d-dba9-7f99-9fcd-ce9bd54595ee/beast-currency-converter-63/assets/doubly.js" async data-no-instant></script>
710 711 712 713 714<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 --> 715 716 717 718 719 720 721 722 723 724 725 726 727
727<script async src="https://static.klaviyo.com/onsite/js/UTqcBT/klaviyo.js?company_id=UTqcBT"></script>
727 728
728<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
728 729 730 731 732 733 734 735
735<script> 736 window.klaviyoReviewsProductDesignMode = false 737 </script>
737 738 739 740 741 742 743 744 745 746 747<!-- END app block --><!-- BEGIN app block: shopify://apps/hulk-form-builder/blocks/app-embed/b6b8dd14-356b-4725-a4ed-77232212b3c3 --><!-- BEGIN app snippet: hulkapps-formbuilder-theme-ext -->
747<script type="text/javascript"> 748 749 if (typeof window.formbuilder_customer != "object") { 750 window.formbuilder_customer = {} 751 } 752 753 754 755 window.hulkFormBuilder = { 756 form_data: {"form_3_Qhlr0YfecxRwbn9LJKyQ":{"uuid":"3_Qhlr0YfecxRwbn9LJKyQ","form_name":"Prescription Verification","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#e3b9b9","form_title":"\u003ch3 style=\"text-align: center;\"\u003e\u003cstrong\u003e\u003cspan style=\"font-size:20px;\"\u003e\u003cspan style=\"color:#000000; margin-bottom:15px;\"\u003ePrescription Verification\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h3\u003e\n","form_submit":"SUBMIT","after_submit":"hideAndmessage","after_submit_msg":"\u003cp\u003e\u003cstrong data-end=\"146\" data-start=\"100\"\u003eThank you for submitting your information.\u003c\/strong\u003e\u003cbr data-end=\"149\" data-start=\"146\" \/\u003e\nPlease note that your order will \u003cstrong data-end=\"191\" data-start=\"184\"\u003enot\u003c\/strong\u003e be changed based on the details you provided here.\u003cbr data-end=\"245\" data-start=\"242\" \/\u003e\nIf you selected the wrong prescription at checkout, contact our Customer Service at \u003cstrong data-end=\"357\" data-start=\"331\"\u003e\u003ca data-end=\"355\" data-start=\"333\" href=\"mailto:[email protected]?subject=Order%20modification%20request\" rel=\"noopener\"\u003e\u003cspan style=\"color:#ff7396;\"\[email protected]\u003c\/span\u003e\u003c\/a\u003e\u003c\/strong\u003e within \u003cstrong data-end=\"376\" data-start=\"365\"\u003e6 hours\u003c\/strong\u003e of payment. Tell us your correct prescription and we\u0026rsquo;ll update your order \u003cstrong\u003eif it has not yet shipped and\u0026nbsp;\u003c\/strong\u003e\u003cstrong data-end=\"481\" data-start=\"451\"\u003epending stock availability\u003c\/strong\u003e.\u003c\/p\u003e\n","captcha_enable":"no","label_style":"inlineLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"centerBtn","button_clr":"#fff","button_back_clr":"#000000","button_border_radius":"30","form_width":"600px","form_border_size":"2","form_border_clr":"transparent","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"14","form_padding":"30","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#000000","btn_border_size":"5","form_name":"Prescription Verification","flow_trigger_integration":"yes","formElements":[{"Conditions":{},"type":"file","position":0,"label":"Upload Prescription","halfwidth":"no","required":"yes","page_number":1},{"type":"text","position":1,"label":"First Name","customClass":"","halfwidth":"yes","Conditions":{},"page_number":1},{"type":"text","position":2,"label":"Last Name","halfwidth":"yes","Conditions":{},"page_number":1},{"type":"email","position":3,"label":"Email","required":"yes","email_confirm":"yes","Conditions":{},"page_number":1},{"Conditions":{},"type":"text","position":4,"label":"Order Number","halfwidth":"no","page_number":1},{"Conditions":{},"type":"newdate","position":5,"label":"Date Of Birth","halfwidth":"yes","page_number":1}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true},"form_4VZ4h1OuKsi9y6XVRoMb0g":{"uuid":"4VZ4h1OuKsi9y6XVRoMb0g","form_name":"account deletion request","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#fff","form_title":"\u003ch4\u003eRequest account deletion\u003c\/h4\u003e\n","form_submit":"Submit","after_submit":"hideAndmessage","after_submit_msg":"\u003cp\u003eWe received your request, we will get back to within 1-2 business days as your account needs to be deleted manually.\u0026nbsp;\u003c\/p\u003e\n","captcha_enable":"no","label_style":"blockLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"fullBtn","button_clr":"#fff","button_back_clr":"#333333","button_border_radius":"2","form_width":"600px","form_border_size":"2","form_border_clr":"#c7c7c7","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"16","form_padding":"35","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#333333","btn_border_size":"1","form_name":"account deleti
756on request","form_access_message":"\u003cp\u003ePlease login to access the form\u003cbr\u003eDo not have an account? Create account\u003c\/p\u003e","formElements":[{"type":"text","position":0,"label":"First Name","customClass":"","halfwidth":"yes","Conditions":{},"required":"yes","page_number":1},{"type":"text","position":1,"label":"Last Name","halfwidth":"yes","Conditions":{},"required":"yes","page_number":1},{"type":"email","position":2,"label":"Email associated with the account","required":"yes","email_confirm":"yes","Conditions":{},"page_number":1},{"type":"select","position":3,"label":"Reason","values":"No longer interested\nWant to change email\nNo longer have access to this email\nDuplicate account\nOther","Conditions":{},"required":"yes","elementCost":{},"other_value":"yes","other_value_label":"Other","page_number":1},{"type":"textarea","position":4,"label":"Message (optional)","required":"yes","Conditions":{},"page_number":1}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true},"form_5DiIxjw-eqyjH1q0GRVtRA":{"uuid":"5DiIxjw-eqyjH1q0GRVtRA","form_name":"Provide Eye Doctor Information","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#fff","form_title":"\u003ch3\u003e\u003cstrong\u003eProvide Eye Doctor Information\u003c\/strong\u003e\u003c\/h3\u003e\n","form_submit":"Submit","after_submit":"clearAndAllow","after_submit_msg":"","captcha_enable":"no","label_style":"inlineLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"fullBtn","button_clr":"#fff","button_back_clr":"#333333","button_border_radius":"30","form_width":"600px","form_border_size":"2","form_border_clr":"#c7c7c7","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"16","form_padding":"30","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#333333","btn_border_size":"5","form_name":"Provide Eye Doctor Information","formElements":[{"Conditions":{},"type":"label","position":0,"label":"Patients Information"},{"Conditions":{},"type":"email","position":1,"required":"yes","email_confirm":"yes","label":"Patient Email"},{"Conditions":{},"type":"text","position":2,"label":"Patient First Name","halfwidth":"yes"},{"Conditions":{},"type":"text","position":3,"label":"Patient Last Name","halfwidth":"yes"},{"Conditions":{},"type":"newdate","position":4,"label":"Date Of Birth","halfwidth":"yes"},{"Conditions":{},"type":"label","position":5,"label":"Prescriber Information (Eye Doctor)"},{"Conditions":{},"type":"text","position":6,"label":"Doctor Name: ","halfwidth":"yes"},{"Conditions":{},"type":"number","position":7,"label":"Phone Number"},{"Conditions":{},"type":"text","position":8,"label":"City"},{"Conditions":{},"type":"text","position":9,"label":"State"},{"Conditions":{},"type":"text","position":10,"label":"Country"}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true},"form_D2_tUlxL8u5-ElXqT33euw":{"uuid":"D2_tUlxL8u5-ElXqT33euw","form_name":"Provide Eye Doctor Information","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#fff","form_title":"\u003ch3 style=\"text-align: center; color:#000000; margin-bottom:15px; letter-spacing: 0.5px;\"\u003e\u003cstrong\u003e\u003cspan style=\"font-size:20px;\"\u003eProvide Eye Doctor Information\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h3\u003e\n","form_submit":"SUBMIT","after_submit":"hideAndmessage","after_submit_msg":"\u003cp\u003e\u003cstrong data-end=\"146\" data-start=\"100\"\u003eThank you for submitting your information.\u003c\/strong\u003e\u003cbr data-end=\"149\" data-start=\"146\" \/\u003e\nPlease note that your order will \u003cstrong data-end=\"191\" data-start=\"184\"\u003enot\u003c\/strong\u003e be changed based on the details you provided here.\u003cbr data-end=\"245\" data-start=\"242\" \/\u003e\nIf you selected the wrong prescription at checkout, contact our Customer Service at \u003cstrong data-end=\"357\" data-start=\"331\"\u003e\u003ca data-end=\"355\" data-start=\"333\" href=\"mailto:[email protected]?subject=Order%20modification%20request\" rel=\"noopener\"\[email protected]\u003c\/a\u003e\u003c\/strong\u003e within \u003cstrong data-end=\"376\" data-start=\"365\"\u003e6 hours\u003c\/strong\u003e of payment. Tell us your correct prescription and we\u0026rsquo;ll update your order \u003cstrong\u003eif it has not yet shipped and\u0026nbsp;\u003c\/strong\u003e\u003cstrong data-end=\"481\" data-start=\"451\"\u003epending stock availability\u003c\/strong\u003e.\u003c\/p\u003e\n","captcha_enable":"no","label_style":"inlineLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"centerBtn","button_clr":"#fff","button_back_clr":"#000000","button_border_radius":"30","form_width":"600px","form_border_size":"2","form_border_clr":"transparent","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"14","form_padding":"30","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#000000","btn_border_size":"5","form_name":"Provide Eye Doctor Information","form_description":"","formElements":[{"Conditions":{},"type":"label","position":0,"label":"Patients Information: ","page_number":1},{"Conditions":{},"type":"email","position":1,"required":"yes","email_confirm":"yes","label":"Patient Email","page_number":1},{"type":"text","position":2,"label":"Patient First Name","customClass":"","halfwidth":"yes","Conditions":{},"page_number":1},{"type":"text","position":3,"label":"Patient Last Name","halfwidth":"yes","Conditions":{},"page_number":1},{"Conditions":{},"type":"newdate","position":4,"label":"Date of Birth","page_number":1},{"Conditions":{},"type":"label","position":5,"label":"Prescriber Information (Eye Doctor): ","page_number":1},{"Conditions":{},"type":"text","position":6,"label":"Doctor Name:","halfwidth":"yes","page_number":1},{"Conditions":{},"type":"number","position":7,"label":"Phone Number","page_number":1},{"Conditions":{},"type":"text","position":8,"label":"City","page_number":1},{"Conditions":{},"type":"text","position":9,"label":"State","page_number":1},{"Conditions":{},"type":"text","position":10,"label":"Country","page_number":1}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true},"form_KzgnQMdCKL6HfGUy0wnQZA":{"uuid":"KzgnQMdCKL6HfGUy0wnQZA","form_name":"Survey","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#ff7092","back_color":"#ff7092","form_title":"\u003ch3\u003eWhich is your Favorite ?\u003c\/h3\u003e\n","form_submit":"Submit","after_submit":"clearAndAllow","after_submit_msg":"\u003cp\u003eThank y
756ou for you Vote. We will let you know by email for further updates\u003c\/p\u003e\n","captcha_enable":"no","label_style":"inlineLabels","input_border_radius":"2","back_type":"gradient","input_back_color":"#ecdbdb","input_back_color_hover":"#a75252","back_shadow":"hardLightShadow","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"fullBtn","button_clr":"#fff","button_back_clr":"#333333","button_border_radius":"2","form_width":"600px","form_border_size":"2","form_border_clr":"#000000","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"16","form_padding":"35","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#333333","btn_border_size":"1","form_name":"Survey","form_description":"","image_url":"https:\/\/form-builder-by-hulkapps.s3.amazonaws.com\/uploads\/userupload\/%ED%8C%9D%EC%97%852_yes_en_669ec0ca-908a-42f7-adae-b11f5634e676.png","label_font_family":"ABeeZee","formElements":[{"Conditions":{},"type":"radio","position":0,"label":"Your personal favorite Kristin","halfwidth":"yes","align":"horizontal","values":"1. Ahhh! Kristin\n2. Ta-da Kristin\n3. Silly Kristin\n4. Love me Kristin\n5. Blasé Kristin\n6. Skip the beat Kristin\n7. G.O.A.T Kristin\n8. Rockn Roll Kristin\n9. Fuming Kristin\n10. Cheerful Kristin\n11. Solitary Kristin\n12. Okurrr Kristin\n13. Good To Be Bad Kristin\n14. Blurred Kristin\n15. Up in the air Kristin\n16. Gray Area Kristin\n17. Having fun Kristin\n18. Supernova Kristin\n19. Stay Focused Kristin\n20. Wow Kristin\n21. Fruit Of Passion Kristin\n22. Dope Kristin\n23. Yays Girl Kristin\n24. OMG Kristin\n25. micdrop Kristin\n26. Devoted Kristin\n27. Shocked Kristin\n28. Wannabe Kristin\n29. Peaceful Kristin","elementCost":{}}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true},"form_QKEWFkx6frA__z031nXS4g":{"uuid":"QKEWFkx6frA__z031nXS4g","form_name":"Wholesale Inquiry","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#fff","form_title":"\u003ch3\u003e\u003cstrong\u003e\u003cspan style=\"font-family:Verdana;\"\u003e\u003cspan style=\"color:#000000;\"\u003eWholesale application form\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\u003c\/h3\u003e\n","form_submit":"Submit","after_submit":"hideAndmessage","after_submit_msg":"\u003ch1 style=\"text-align: center;\"\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cspan style=\"font-family:Helvetica;\"\u003eThank You for Contacting Us!\u003c\/span\u003e\u003c\/span\u003e\u003c\/h1\u003e\n\n\u003cp data-end=\"254\" data-start=\"102\"\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cspan style=\"font-family:Arial;\"\u003eYou\u0026rsquo;ll receive an automated email shortly confirming that we\u0026rsquo;ve received your inquiry. If you don\u0026rsquo;t see it in your inbox, please check your spam folder.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\n\u003cp data-end=\"513\" data-start=\"256\"\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cspan style=\"font-family:Arial;\"\u003eTo help us process your request faster, please \u003c\/span\u003e\u003c\/span\u003e\u003cspan style=\"font-family:Arial;\"\u003e\u003cstrong data-end=\"358\" data-start=\"303\"\u003e\u003ca href=\"\/account\/register\"\u003e\u003cspan style=\"color:#ff7e9f;\"\u003ecreate a store account\u003c\/span\u003e\u003c\/a\u003e\u003cspan style=\"color:#ff7e9f;\"\u003e \u003c\/span\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cspan style=\"font-family:Arial;\"\u003e\u003cstrong data-end=\"358\" data-start=\"303\"\u003eusing the same email address\u003c\/strong\u003e you provided in the form (if you haven\u0026rsquo;t already). This allows us to upgrade your account to \u003cstrong data-end=\"469\" data-start=\"452\"\u003e\u0026#39;wholeseller\u0026#39;\u003c\/strong\u003e status as soon as your request is reviewed.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\n\u003cp data-end=\"551\" data-start=\"515\"\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cspan style=\"font-family:Arial;\"\u003eWe look forward to working with you!\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n","captcha_enable":"yes","label_style":"blockLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#000000","input_font_clr":"#000000","button_align":"fullBtn","button_clr":"#fff","button_back_clr":"#333333","button_border_radius":"13","form_width":"100%","form_border_size":"2","form_border_clr":"#ffffff","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"16","form_padding":"35","input_border_color":"#ccc","input_border_color_hover":"#000000","btn_border_clr":"#222222","btn_border_size":"1","form_name":"Wholesale Inquiry","form_access_message":"\u
756003cp\u003ePlease login to access the form\u003cbr\u003eDo not have an account? Create account\u003c\/p\u003e","form_description":"","captcha_honeypot":"no","captcha_version_3_enable":"no","captcha_align":"center","input_fonts_type":"System Fonts","input_system_font_family":"Helvetica","label_fonts_type":"System Fonts","label_system_font_family":"Helvetica","input_placeholder_clr":"#000000","formElements":[{"type":"text","position":0,"label":"First Name","customClass":"","halfwidth":"yes","Conditions":{},"page_number":1},{"type":"text","position":1,"label":"Last Name","halfwidth":"yes","Conditions":{},"page_number":1},{"type":"email","position":2,"label":"Email","required":"yes","email_confirm":"yes","Conditions":{},"email_validate_field":"no","page_number":1},{"Conditions":{},"type":"text","position":3,"label":"Website \/ Selling platform","required":"yes","page_number":1},{"Conditions":{},"type":"text","position":4,"label":"Shipping Country","page_number":1,"required":"yes"},{"Conditions":{},"type":"label","position":5,"label":"Estimated quantity needed","page_number":1},{"Conditions":{},"type":"number","position":6,"label":"Daily packs (10 lenses)","page_number":1,"required":"yes"},{"Conditions":{},"type":"number","position":7,"label":"Monthly packs (2 lenses)","page_number":1,"required":"yes"},{"Conditions":{},"type":"number","position":8,"label":"Trial pairs (1 pair of daily lenses)","halfwidth":"no","page_number":1,"required":"yes"},{"Conditions":{},"type":"textarea","position":9,"label":"Message (please tell us about your business and how you will distribute Hapa Kristin products)","page_number":1,"required":"yes"}]},"is_spam_form":false,"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","popup_settings":{},"form_is_active":true}}, 757 shop_data: {"shop_9HMjduFxPO394lNqktnf4w":{"shop_uuid":"9HMjduFxPO394lNqktnf4w","shop_timezone":"Asia\/Seoul","shop_id":29039,"shop_is_after_submit_enabled":true,"shop_shopify_plan":"Plus","shop_shopify_domain":"hapakristin.myshopify.com","shop_created_at":"2020-01-27T18:31:41.659-06:00","is_skip_metafield":false,"shop_deleted":false,"shop_disabled":false}}, 758 settings_data: {"shop_settings":{"shop_customise_msgs":[],"default_customise_msgs":{"is_required":"is required","thank_you":"Thank you! The form was submitted successfully.","processing":"Processing...","valid_data":"Please provide valid data","valid_email":"Provide valid email format","valid_tags":"HTML Tags are not allowed","valid_phone":"Provide valid phone number","valid_captcha":"Please provide a valid CAPTCHA response.","valid_url":"Provide valid URL","only_number_alloud":"Provide valid number in","number_less":"must be less than","number_more":"must be more than","image_must_less":"Image must be less than 20MB","image_number":"Images allowed","image_extension":"Invalid extension! Please provide image file","error_image_upload":"Error in image upload. Please try again.","error_file_upload":"Error in file upload. Please try again.","your_response":"Your response","error_form_submit":"Error occur.Please try again after sometime.","email_submitted":"Form with this email is already submitted","invalid_email_by_zerobounce":"The email address you entered appears to be invalid. Please check it and try again.","download_file":"Download file","card_details_invalid":"Your card details are invalid","card_details":"Card details","please_enter_card_details":"Please enter card details","card_number":"Card number","exp_mm":"Exp MM","exp_yy":"Exp YY","crd_cvc":"CVV","payment_value":"Payment amount","please_enter_payment_amount":"Please enter a payment amount.","address1":"Address line 1","address2":"Address line 2","city":"City","province":"Province","zipcode":"Zip code","country":"Country","blocked_domain":"This form does not accept addresses from","file_must_less":"File must be less than 20MB","file_extension":"Invalid extension! Please provide file","only_file_number_alloud":"files allowed","previous":"Previous","next":"Next","must_have_a_input":"Please enter at least one field.","please_enter_required_data":"Please enter required data","atleast_one_special_char":"Include at least one special character","atleast_one_lowercase_char":"Include at least one lowercase character","atleast_one_uppercase_char":"Include at least one uppercase character","atleast_one_number":"Include at least one number","must_have_8_chars":"Must have 8 characters long","be_between_8_and_12_chars":"Be between 8 and 12 characters long","please_select":"Please Select","phone_submitted":"Form with this phone number is already submitted","user_res_parse_error":"Error while submitting the form","valid_same_values":"values must be the same","product_choice_clear_selection":"Clear Selection","picture_choice_clear_selection":"Clear Selection","remove_all_for_file_image_upload":"Remove All","invali
758d_file_type_for_image_upload":"You can't upload files of this type.","invalid_file_type_for_signature_upload":"You can't upload files of this type.","max_files_exceeded_for_file_upload":"You can not upload any more files.","max_files_exceeded_for_image_upload":"You can not upload any more files.","file_already_exist":"File already uploaded","max_limit_exceed":"You have added the maximum number of text fields.","cancel_upload_for_file_upload":"Cancel upload","cancel_upload_for_image_upload":"Cancel upload","cancel_upload_for_signature_upload":"Cancel upload"}}}, 759 features_data: {"shop_plan_features":{"shop_plan_features":["unlimited-forms","full-design-customization","export-form-submissions","multiple-recipients-for-form-submissions","multiple-admin-notifications","enable-captcha","unlimited-file-uploads","save-submitted-form-data","set-auto-response-message","conditional-logic","form-banner","save-as-draft-facility","include-user-response-in-admin-email","disable-form-submission","mail-platform-integration","stripe-payment-integration","pre-built-templates","create-customer-account-on-shopify","google-analytics-3-by-tracking-id","facebook-pixel-id","bing-uet-pixel-id","advanced-js","advanced-css","api-available","customize-form-message","hidden-field","restrict-from-submissions-per-one-user","utm-tracking","ratings","privacy-notices","heading","paragraph","shopify-flow-trigger","domain-setup","block-domain","address","html-code","form-schedule","after-submit-script","customize-form-scrolling","on-form-submission-record-the-referrer-url","password","duplicate-the-forms","include-user-response-in-auto-responder-email","elements-add-ons","admin-and-auto-responder-email-with-tokens","email-export","premium-support","google-analytics-4-by-measurement-id","google-ads-for-tracking-conversion","validation-field","load_form_as_popup","advanced_conditional_logic","forms-limit","submissions-visibility-limit","file-upload"]}}, 760 shop: null, 761 shop_id: null, 762 plan_features: null, 763 validateDoubleQuotes: false, 764 assets: { 765 searchableDropdown: "https://cdn.shopify.com/extensions/01a08a53-1431-71a3-8d75-dd04d3c69aa4/form-builder-by-hulkapps-74/assets/searchable-dropdown.js", 766 extraFunctions: "https://cdn.shopify.com/extensions/01a08a53-1431-71a3-8d75-dd04d3c69aa4/form-builder-by-hulkapps-74/assets/extra-functions.js", 767 extraStyles: "https://cdn.shopify.com/extensions/01a08a53-1431-71a3-8d75-dd04d3c69aa4/form-builder-by-hulkapps-74/assets/extra-styles.css", 768 bootstrapStyles: "https://cdn.shopify.com/extensions/01a08a53-1431-71a3-8d75-dd04d3c69aa4/form-builder-by-hulkapps-74/assets/theme-app-extension-bootstrap.css", 769 }, 770 translations: { 771 htmlTagNotAllowed: "HTML Tags are not allowed", 772 sqlQueryNotAllowed: "SQL Queries are not allowed", 773 doubleQuoteNotAllowed: "Double quotes are not allowed", 774 775 maxTextFieldsReached: "You have added the maximum number of text fields.", 776 777 778 779 zerobounceApiErrorMsg: "We couldn\u0026#39;t verify your email due to a technical issue. Please try again later.", 780 } 781 782 } 783 784 785 786 window.FbThemeAppExtSettingsHash = {} 787 788</script>
788<!-- END app snippet --><!-- END app block --><!-- BEGIN app block: shopify://apps/selly-promotion-pricing/blocks/app-embed-block/351afe80-738d-4417-9b66-e345ff249052 -->
788<script>window.nfecShopVersion = '1790883337';window.nfecJsVersion = '449695';window.nfecCVersion = 64637</script>
788 <!-- For special customization -->
788<script> 789var countryName = getCookie('country_name'); 790function getCookie(name) { 791 var value = "; " + document.cookie; 792 var parts = value.split("; " + name + "="); 793 if (parts.length == 2) return parts.pop().split(";").shift(); 794} 795function setCookie(cname, cvalue, second) { 796 var d = new Date(); 797 d.setTime(d.getTime() + (second * 1000)); 798 var expires = "expires=" + d.toUTCString(); 799 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 800} 801if (!countryName) { 802fetch('/browsing_context_suggestions.js', { 803 method: 'GET' 804}) 805.then(function(response) { return response.json(); }) 806.then(function(json) { 807countryName = json.detected_values.country_name || ''; 808setCookie('country_name', countryName, 8640); 809countryName = countryName || 'your country'; 810}); 811} 812countryName = countryName || 'your country'; 813</script>
vendor: 1 bytes, line 813
813
814<script id="tdf_pxrscript" class="tdf_script5" data-c="/fe\/loader_2.js"> 815Shopify = window.Shopify || {}; 816Shopify.shop = Shopify.shop || 'hapakristin.myshopify.com'; 817Shopify.SMCPP = {};Shopify.SMCPP.cer = '1'; 818</script>
vendor: 1 bytes, line 818
818
819<script src="https://d5zu2f4xvqanl.cloudfront.net/42/fe/loader_2.js?shop=hapakristin.myshopify.com" async data-cookieconsent="ignore"></script>
vendor: 1 bytes, line 819
819
820<script> 821!function(t){var e=function(e){var n,a;(n=t.createElement("script")).type="text/javascript",n.async=!0,n.src=e,(a=t.getElementsByTagName("script")[0]).parentNode.insertBefore(n,a)};setTimeout(function(){window.tdfInited||(window.altcdn=1,e("https://cdn.shopify.com/s/files/1/0013/1642/1703/t/1/assets/loader_2.js?shop=hapakristin.myshopify.com&v=45"))},2689)}(document); 822</script>
822 823<!-- END app block -->
823<script src="https://cdn.shopify.com/extensions/01a0f37a-9dca-75e2-9f67-c659a79ae8f9/klaviyo-email-marketing-75/assets/app.js" type="text/javascript" defer="defer"></script>
823 824<link href="https://cdn.shopify.com/extensions/01a0f37a-9dca-75e2-9f67-c659a79ae8f9/klaviyo-email-marketing-75/assets/app.css" rel="stylesheet" type="text/css" media="all">
825<script src="https://cdn.shopify.com/extensions/01a0f65a-7323-7378-99b5-5952935861cc/avada-faqs-199/assets/chatty.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 825
825
826<script src="https://cdn.shopify.com/extensions/01a08a53-1431-71a3-8d75-dd04d3c69aa4/form-builder-by-hulkapps-74/assets/form-builder-script.js" type="text/javascript" defer="defer"></script>
826 827<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
828<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 23864410189,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "customers/login"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 828
828
829<script> 830 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 831</script>
vendor: 1 bytes, line 831
831
832<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
832).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 23864410189,storefrontBaseUrl: "https://hapakristin.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://hapakristin.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"1607729229","configuration":"{\"myshopifyDomain\":\"hapakristin.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"23b97d18e2aa74363140dc29c9284e87","type":"APP","apiClientId":2775569,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_phone","read_customer_personal_data"],"dataSharingControls":["share_all_events"]}
832,"dataSharingState":"unrestricted"},{"id":"1232765005","configuration":"{\"accountID\":\"123\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4b1f94d30978e5e74a4c3495451f4c18","type":"APP","apiClientId":438566913,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1214611533","configuration":"{\"accountID\":\"UTqcBT\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"741933133","configuration":"{\"shopId\":\"UsvAzd8AOkiISBZb548K\",\"description\":\"Chatty conversion tracking pixel\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c90a95b3a8ca540fdf72271e8d5f8857","type":"APP","apiClientId":6641085,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"345899085","configuration":"{\"config\":\"{\\\"pixel_id\\\":\\\"G-52SXQ8E1WZ\\\",\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-52SXQ8E1WZ\\\"},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-52SXQ8E1WZ\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-52SXQ8E1WZ\\\",\\\"MC-NMT9FJ8665\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-52SXQ8E1WZ\\\",\\\"MC-NMT9FJ8665\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-52SXQ8E1WZ\\\",\\\"MC-NMT9FJ8665\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-52SXQ8E1WZ\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-52SXQ8E1WZ\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"269254733","configuration":"{\"pixelCode\":\"C6NG11RS5310I01N17B0\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"22e92c2ad45662f435e4801458fb78cc","type":"APP","apiClientId":4383523,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"118325325","configuration":"{\"pixel_id\":\"900350620361100\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted","enabledFlags":["9a3ed68a"]},{"id":"92176461","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Pinterest","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
832,{"id":"110657613","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Airbridge","dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"HapaKristin","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"hapakristin.myshopify.com","countryCode":"HK","storefrontUrl":"https:\/\/hapakristin.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"7976009760845","handle":"h79970j1","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43764356186189","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7895203053645","handle":"h79932j3","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43254212526157","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7630647885901","handle":"h79763j1","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42469540659277","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7565087277133","handle":"h79676j1","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42103808426061","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://hapakristin.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"164953981005","themePublished":"true","eventMetadataId":"0e92c27a-6bd2-41f4-932e-5123c5596cd3","shopId":"23864410189","storefrontBaseUrl":"https:\/\/hapakristin.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
832<script> 833 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 834 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 835 window.ShopifyAnalytics.meta.currency = 'USD'; 836 var meta = {"page":{"requestId":"97630ca8-dd32-4043-a333-94155fb9e338-1790898148"}}; 837 for (var attr in meta) { 838 window.ShopifyAnalytics.meta[attr] = meta[attr]; 839 } 840</script>
vendor: 1 bytes, line 840
840
841<script class="analytics"> 842 (function () { 843 var customDocumentWrite = function(content) { 844 var jquery = null; 845 846 if (window.jQuery) { 847 jquery = window.jQuery; 848 } else if (window.Checkout && window.Checkout.$) { 849 jquery = window.Checkout.$; 850 } 851 852 if (jquery) { 853 jquery('body').append(content); 854 } 855 }; 856 857 var hasLoggedConversion = function(token) { 858 if (token) { 859 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 860 } 861 return false; 862 } 863 864 var setCookieIfConversion = function(token) { 865 if (token) { 866 var twoMonthsFromNow = new Date(Date.now()); 867 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 868 869 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 870 } 871 } 872 873 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 874 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 875 if (trekkie.integrations) { 876 return; 877 } 878 trekkie.methods = [ 879 'identify', 880 'page', 881 'ready', 882 'track', 883 'trackForm', 884 'trackLink' 885 ]; 886 trekkie.factory = function(method) { 887 return function() { 888 var args = Array.prototype.slice.call(arguments); 889 args.unshift(method); 890 trekkie.push(args); 891 if (method == 'track' || method == 'page') { 892 var pageUrl; 893 try { 894 pageUrl = window.location.href; 895 } catch (e) {} 896 var pageReferrer; 897 try { 898 pageReferrer = document.referrer; 899 } catch (e) {} 900 try { 901 if (window.__TREKKIE_SHIM_QUEUE == null) { 902 window.__TREKKIE_SHIM_QUEUE = []; 903 } 904 window.__TREKKIE_SHIM_QUEUE.push({ 905 from: 'trekkie-stub', 906 method: method, 907 args: args.slice(1), 908 pageContext: { 909 url: pageUrl, 910 referrer: pageReferrer 911 } 912 }); 913 } catch (e) { 914 // no-op 915 } 916 } 917 return trekkie; 918 }; 919 }; 920 for (var i = 0; i < trekkie.methods.length; i++) { 921 var key = trekkie.methods[i]; 922 trekkie[key] = trekkie.factory(key); 923 } 924 trekkie.load = function(config) { 925 trekkie.config = config || {}; 926 trekkie.config.initialDocumentCookie = document.cookie; 927 var first = document.getElementsByTagName('script')[0]; 928var script = document.createElement('script'); 929script.type = 'text/javascript'; 930script.onerror = function(e) { 931 var scriptFallback = document.createElement('script'); 932 scriptFallback.type = 'text/javascript'; 933 scriptFallback.onerror = function(error) { 934 var Monorail = { 935 produce: function produce(monorailDomain, schemaId, payload) { 936 var currentMs = new Date().getTime(); 937 var event = { 938 schema_id: schemaId, 939 payload: payload, 940 metadata: { 941 event_created_at_ms: currentMs, 942 event_sent_at_ms: currentMs 943 } 944 }; 945 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 946 }, 947 sendRequest: function sendRequest(endpointUrl, payload) { 948 // Try the sendBeacon API 949 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 950 var blobData = new window.Blob([payload], { 951 type: 'text/plain' 952 }); 953 954 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 955 return true; 956 } // sendBeacon was not successful 957 958 } // XHR beacon 959 960 var xhr = new XMLHttpRequest(); 961 962 try { 963 xhr.open('POST', endpointUrl); 964 xhr.setRequestHeader('Content-Type', 'text/plain'); 965 xhr.send(payload); 966 } catch (e) { 967 console.log(e); 968 } 969 970 return false; 971 }, 972 isIos12: function isIos12() { 973 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 974 } 975 }; 976 Monorail.produce('monorail-edge.shopifysvc.com', 977 'trekkie_storefront_load_errors/1.1', 978 {shop_id: 23864410189, 979 theme_id: 164953981005, 980 app_name: "storefront", 981 context_url: window.location.href, 982 source_url: "//hapakristin.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"}); 983 984 }; 985 scriptFallback.async = true; 986 scriptFallback.src = '//hapakristin.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 987 first.parentNode.insertBefore(scriptFallback, first); 988}; 989script.async = true; 990script.src = '//hapakristin.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js'; 991first.parentNode.insertBefore(script, first); 992 993 }; 994 trekkie.load( 995 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":23864410189,"isMerchantRequest":null,"themeId":164953981005,"themeCityHash":"15758428731314822211","contentLanguage":"en","currency":"USD","eventMetadataId":"0e92c27a-6bd2-41f4-932e-5123c5596cd3"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 996 ); 997 998 var loaded = false;
999 trekkie.ready(function() { 1000 if (loaded) return; 1001 loaded = true; 1002 1003 window.ShopifyAnalytics.lib = window.trekkie; 1004 1005 var originalDocumentWrite = document.write; 1006 document.write = customDocumentWrite; 1007 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1008 document.write = originalDocumentWrite; 1009 1010 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1011 var token = match? match[1]: undefined; 1012 if (!hasLoggedConversion(token)) { 1013 setCookieIfConversion(token); 1014 1015 } 1016 }); 1017 1018 window.ShopifyAnalytics.lib.page(null,{"requestId":"97630ca8-dd32-4043-a333-94155fb9e338-1790898148","shopifyEmitted":true}); 1019 1020 var eventsListenerScript = document.createElement('script'); 1021 eventsListenerScript.async = true; 1022 eventsListenerScript.src = "//hapakristin.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1023 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1024})();</script>
1024 1025
1025<script> 1026 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 1027 window.ga = function ga() { 1028 (window.ga.q = window.ga.q || []).push(arguments); 1029 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1030 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 1031 } 1032 console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information."); 1033 }; 1034 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1035 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 1036 } 1037 } 1038</script>
vendor: 1 bytes, line 1038
1038
1039<script 1040 defer 1041 src="https://hapakristin.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 1042 data-application="storefront-renderer" 1043 data-shop-id="23864410189" 1044 data-render-region="gcp-us-east1" 1045 data-page-type="customers/login" 1046 data-theme-instance-id="164953981005" 1047 data-theme-name="Blockshop" 1048 data-theme-version="9.4.2" 1049 data-monorail-region="shop_domain" 1050 data-resource-timing-sampling-rate="10" 1051 data-shs="true" 1052 data-shs-beacon="true" 1053 data-shs-export-with-fetch="true" 1054 data-shs-logs-sample-rate="1" 1055 data-shs-beacon-endpoint="https://hapakristin.com/api/collect" 1056></script>
1056 1057<meta name="shopify-y" content="95ff8d89-29f0-443c-83f7-86fabbfbfa4e" data-expiration="1822455748000"><meta name="shopify-s" content="1e33cc35-a5d8-42cc-b9c5-c2b90b03894c" data-expiration="1790899948000"><meta name="new-cookie-storage-activated" content="t"> 1058</head> 1059 1060 <body 1061 class="template--customers--login page--account" 1062 data-theme-id="606" 1063 data-theme-name="Blockshop" 1064 data-theme-version="9.4.2" 1065 data-theme-preset="summer" 1066 data-transition-container="viewport" 1067 data-logged-in="false" 1068 1069 > 1070 <!--[if IE]> 1071 <div style="text-align:center;padding:72px 16px;"> 1072 Browser unsupported, please update or try an alternative 1073 </div> 1074 <style> 1075 .layout--viewport { display: none; } 1076 </style> 1077 <![endif]--><style> 1078 .layout--header-group { 1079 position: sticky; 1080 top: 0; 1081 z-index: 99; 1082 background: #fff; 1083 } 1084 </style><a data-item="a11y-button" href="#main-content" id="a11y_skip">Skip to main content</a> 1085 1086 <div class="layout--viewport" data-drawer-status="closed"> 1087 <div class="layout--main-content"> 1088 <header class="layout--header-group"><!-- BEGIN sections: header-group --> 1089<div id="shopify-section-sections--23261413343309__announcement" class="shopify-section shopify-section-group-header-group"> 1090 1091 1092 <div 1093 class="announcement--root" 1094 data-section-id="sections--23261413343309__announcement" 1095 data-section-type="announcement" 1096 data-background-color="dark" 1097 data-light-text="true" 1098 data-spacing="none" 1099 ><a class="announcement--link" href="/products/h79970j1"><div class="announcement--wrapper"><div class="announcement--text" data-item="accent-text">NEW! Feel the Rush Kristin ð</div></div></a></div> 1100 1101 1102 1103</div><div id="shopify-section-sections--23261413343309__header" class="shopify-section shopify-section-group-header-group section--header"><header-root 1104 class="header--root" 1105 data-section-id="sections--23261413343309__header" 1106 data-section-type="header" 1107 data-spacing="none" 1108 data-background-color="none" 1109 data-center-logo="false" 1110 data-center-menu="true" 1111 data-light-text="false" 1112 data-transparent-menu="false" 1113 style="--header--logo-height:15px;" 1114> 1115 <div class="header--y-menu-for-drawer" style="display:none;"><y-menu-root class="y-menu"> 1116 <ul class="y-menu--level-1--container"> 1117 1118<li 1119 class="y-menu--level-1--link" 1120 data-item="nav-text" 1121 data-y-menu--depth="2" 1122 data-y-menu--open="false" 1123 data-link-id="shop" 1124 1125 ><a 1126 href="/collections/all-1" 1127 data-submenu="true" 1128 aria-haspopup="true" 1129 aria-expanded="false" 1130 aria-controls="y-menu--sub-shop" 1131 > 1132 Shop 1133<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1134 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1135 </svg></a><ul 1136 class="y-menu--level-2--container" 1137 1138 data-y-menu--parent-link="level-2" 1139 1140 id="y-menu--sub-shop" 1141 > 1142 <li class="y-menu--back-link"> 1143 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1144 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1145 </svg> Back</a> 1146 </li><li class="y-menu--parent-link"> 1147 <a href="/collections/all-1">Shop</a> 1148 </li><li 1149 class="y-menu--level-2--link" 1150 data-item="nav-text" 1151 data-link-id="shop--dailies" 1152 > 1153 <a href="/collections/1-day" data-submenu="true">Dailies</a> 1154 1155 1156</li><li 1157 class="y-menu--level-2--link" 1158 data-item="nav-text" 1159 data-link-id="shop--monthlies" 1160 > 1161 <a href="/collections/1-month" data-submenu="true">Monthlies</a> 1162 1163 1164</li><li 1165 class="y-menu--level-2--link" 1166 data-item="nav-text" 1167 data-link-id="shop--weighted-lenses" 1168 > 1169 <a href="/collections/stay-pretty-kristin-series" data-submenu="true">Weighted Lenses</a> 1170 1171 1172</li><li 1173 class="y-menu--level-2--link" 1174 data-item="nav-text" 1175 data-link-id="shop--trial-pairs" 1176 > 1177 <a href="/collections/2p-trial-kit" data-submenu="true">Trial Pairs</a> 1178 1179 1180</li><li 1181 class="y-menu--level-2--link" 1182 data-item="nav-text" 1183 data-link-id="shop--for-astigmatism" 1184 > 1185 <a href="/collections/astigmatism" data-submenu="true">For Astigmatism</a> 1186 1187 1188</li><li 1189 class="y-menu--level-2--link" 1190 data-item="nav-text" 1191 data-link-id="shop--bundles" 1192 > 1193 <a href="/collections/bundles" data-submenu="true">Bundles</a> 1194 1195 1196</li><li 1197 class="y-menu--level-2--link" 1198 data-item="nav-text" 1199 data-link-id="shop--cosmetics" 1200 > 1201 <a href="/collections/cosmetics" data-submenu="true">Cosmetics</a> 1202 1203 1204</li><li 1205 class="y-menu--level-2--link" 1206 data-item="nav-text" 1207 data-link-id="shop--accessories" 1208 > 1209 <a href="/collections/goodies" data-submenu="true">Accessories</a> 1210 1211 1212</li><li 1213 class="y-menu--level-2--link" 1214 data-item="nav-text" 1215 data-link-id="shop--gifts" 1216 > 1217 <a href="/collections/gifts" data-submenu="true">Gifts</a> 1218 1219 1220</li></ul></li><li 1221 class="y-menu--level-1--link" 1222 data-item="nav-text" 1223 data-y-menu--depth="2" 1224 data-y-menu--open="false" 1225 data-link-id="by-color" 1226 1227 ><a 1228 href="/collections/all-1" 1229 data-submenu="true" 1230 aria-haspopup="true" 1231 aria-expanded="false" 1232 aria-controls="y-menu--sub-by-color" 1233 > 1234 By color 1235<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1236 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1237 </svg></a><ul 1238 class="y-menu--level-2--container" 1239 1240 data-y-menu--parent-link="level-2" 1241 1242 id="y-menu--sub-by-color" 1243 > 1244 <li class="y-menu--back-link"> 1245 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1246 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1247 </svg> Back</a> 1248 </li><li class="y-menu--parent-link"> 1249 <a href="/collections/all-1">By color</a> 1250 </li><li 1251 class="y-menu--level-2--link" 1252 data-item="nav-text" 1253 data-link-id="by-color--black" 1254 > 1255 <a href="https://www.hapakristin.com/collections/black-lenses" data-submenu="true">Black</a> 1256 1257 1258</li><li 1259 class="y-menu--level-2--link" 1260 data-item="nav-text" 1261 data-link-id="by-color--brown" 1262 > 1263 <a href="/collections/brown-lenses" data-submenu="true">Brown</a> 1264 1265 1266</li><li 1267 class="y-menu--level-2--link" 1268 data-item="nav-text" 1269 data-link-id="by-color--blue" 1270 > 1271 <a href="/collections/blue-lenses" data-submenu="true">Blue</a> 1272 1273 1274</li><li 1275 class="y-menu--level-2--link" 1276 data-item="nav-text" 1277 data-link-id="by-color--gray" 1278 > 1279 <a href="/collections/gray-lenses" data-submenu="true">Gray</a> 1280 1281 1282</li><li 1283 class="y-menu--level-2--link" 1284 data-item="nav-text" 1285 data-link-id="by-color--green" 1286 > 1287 <a href="/collections/green-lenses" data-submenu="true">Green</a> 1288 1289 1290</li><li 1291 class="y-menu--level-2--link" 1292 data-item="nav-text" 1293 data-link-id="by-color--hazel" 1294 > 1295 <a href="/collections/hazel-lenses" data-submenu="true">Hazel</a> 1296 1297 1298</li><li 1299 class="y-menu--level-2--link" 1300 data-item="nav-text" 1301 data-link-id="by-color--violet-soft-pink" 1302 > 1303 <a href="https://www.hapakristin.com/collections/violet-lenses" data-submenu="true">Violet & Soft Pink</a> 1304 1305 1306</li><li 1307 class="y-menu--level-2--link" 1308 data-item="nav-text" 1309 data-link-id="by-color--clear" 1310 > 1311 <a href="/collections/clear-contact-lenses" data-submenu="true">Clear</a> 1312 1313 1314</li></ul></li><li 1315 class="y-menu--level-1--link" 1316 data-item="nav-text" 1317 data-y-menu--depth="2" 1318 data-y-menu--open="false" 1319 data-link-id="wonyoung" 1320 1321 ><a 1322 href="/collections/wonyoung-collection" 1323 data-submenu="true" 1324 aria-haspopup="true" 1325 aria-expanded="false" 1326 aria-controls="y-menu--sub-wonyoung" 1327 > 1328 Wonyoung 1329<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1330 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1331 </svg></a><ul 1332 class="y-menu--level-2--container" 1333 1334 data-y-menu--parent-link="level-2" 1335 1336 id="y-menu--sub-wonyoung" 1337 > 1338 <li class="y-menu--back-link"> 1339 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1340 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1341 </svg> Back</a> 1342 </li><li class="y-menu--parent-link"> 1343 <a href="/collections/wonyoung-collection">Wonyoung</a> 1344 </li><li 1345 class="y-menu--level-2--link" 1346 data-item="nav-text" 1347 data-link-id="wonyoung--wonyoung-lenses" 1348 > 1349 <a href="/collections/wonyoung-collection" data-submenu="true">Wonyoung lenses</a> 1350 1351 1352</li></ul></li><li 1353 class="y-menu--level-1--link" 1354 data-item="nav-text" 1355 data-y-menu--depth="2" 1356 data-y-menu--open="false" 1357 data-link-id="new-trending" 1358 1359 ><a 1360 href="/collections/new-trending" 1361 data-submenu="true" 1362 aria-haspopup="true" 1363 aria-expanded="false" 1364 aria-controls="y-menu--sub-new-trending" 1365 > 1366 New & Trending 1367<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1368 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1369 </svg></a><ul 1370 class="y-menu--level-2--container" 1371 1372 data-y-menu--parent-link="level-2" 1373 1374 id="y-menu--sub-new-trending" 1375 > 1376 <li class="y-menu--back-link"> 1377 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1378 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1379 </svg> Back</a> 1380 </li><li class="y-menu--parent-link"> 1381 <a href="/collections/new-trending">New & Trending</a> 1382 </li><li 1383 class="y-menu--level-2--link" 1384 data-item="nav-text" 1385 data-link-id="new-trending--new-arrivals" 1386 > 1387 <a href="/collections/new-arrivals" data-submenu="true">New arrivals</a> 1388 1389 1390</li><li 1391 class="y-menu--level-2--link" 1392 data-item="nav-text" 1393 data-link-id="new-trending--best-sellers" 1394 > 1395 <a href="/collections/best-sellers" data-submenu="true">Best Sellers</a> 1396 1397 1398</li><li 1399 class="y-menu--level-2--link" 1400 data-item="nav-text" 1401 data-link-id="new-trending--feel-the-rush-kristin" 1402 > 1403 <a href="/products/h79970j1" data-submenu="true">Feel the Rush Kristin</a> 1404 1405 1406</li><li 1407 class="y-menu--level-2--link" 1408 data-item="nav-text" 1409 data-link-id="new-trending--stay-pretty-kristin-weighted-lenses" 1410 > 1411 <a href="/collections/stay-pretty-kristin-series" data-submenu="true">Stay Pretty Kristin - Weighted Lenses</a> 1412 1413 1414</li><li 1415 class="y-menu--level-2--link" 1416 data-item="nav-text" 1417 data-link-id="new-trending--pink-rain-new-clear-lens" 1418 > 1419 <a href="/products/h79892j1" data-submenu="true">Pink Rain - NEW Clear Lens</a> 1420 1421 1422</li><li 1423 class="y-menu--level-2--link" 1424 data-item="nav-text" 1425 data-link-id="new-trending--cat-titude-kristin" 1426 > 1427 <a href="/collections/cat-titude-kristin-series" data-submenu="true">Cat-titude Kristin</a> 1428 1429 1430</li><li 1431 class="y-menu--level-2--link" 1432 data-item="nav-text" 1433 data-link-id="new-trending--quiet-kristin" 1434 > 1435 <a href="/collections/quiet-kristin-series" data-submenu="true">Quiet Kristin</a> 1436 1437 1438</li><li 1439 class="y-menu--level-2--link" 1440 data-item="nav-text" 1441 data-link-id="new-trending--dolly-kristin-new-colors" 1442 > 1443 <a href="/collections/dolly-series" data-submenu="true">Dolly Kristin - NEW COLORS</a> 1444 1445 1446</li><li 1447 class="y-menu--level-2--link" 1448 data-item="nav-text" 1449 data-link-id="new-trending--bean-kristin" 1450 > 1451 <a href="/collections/bean-kristin-series" data-submenu="true">Bean Kristin</a> 1452 1453 1454</li><li 1455 class="y-menu--level-2--link" 1456 data-item="nav-text" 1457 data-link-id="new-trending--doll-nikita" 1458 > 1459 <a href="/products/h79225j1" data-submenu="true">Doll Nikita</a> 1460 1461 1462</li></ul></li><li 1463 class="y-menu--level-1--link" 1464 data-item="nav-text" 1465 data-y-menu--depth="1" 1466 data-y-menu--open="false" 1467 data-link-id="collections" 1468 1469 ><a href="/collections">Collections</a></li><li 1470 class="y-menu--level-1--link" 1471 data-item="nav-text" 1472 data-y-menu--depth="2" 1473 data-y-menu--open="false" 1474 data-link-id="promotions" 1475 1476 ><a 1477 href="/blogs/events" 1478 data-submenu="true" 1479 aria-haspopup="true" 1480 aria-expanded="false" 1481 aria-controls="y-menu--sub-promotions" 1482 > 1483 Promotions 1484<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1485 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1486 </svg></a><ul 1487 class="y-
1487menu--level-2--container" 1488 1489 data-y-menu--parent-link="level-2" 1490 1491 id="y-menu--sub-promotions" 1492 > 1493 <li class="y-menu--back-link"> 1494 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1495 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1496 </svg> Back</a> 1497 </li><li class="y-menu--parent-link"> 1498 <a href="/blogs/events">Promotions</a> 1499 </li><li 1500 class="y-menu--level-2--link" 1501 data-item="nav-text" 1502 data-link-id="promotions--current-offers" 1503 > 1504 <a href="/blogs/events" data-submenu="true">Current offers</a> 1505 1506 1507</li><li 1508 class="y-menu--level-2--link" 1509 data-item="nav-text" 1510 data-link-id="promotions--membership-program" 1511 > 1512 <a href="/pages/rewards" data-submenu="true">Membership program</a> 1513 1514 1515</li></ul></li><li 1516 class="y-menu--level-1--link" 1517 data-item="nav-text" 1518 data-y-menu--depth="2" 1519 data-y-menu--open="false" 1520 data-link-id="contact-us" 1521 1522 ><a 1523 href="/pages/contact-us" 1524 data-submenu="true" 1525 aria-haspopup="true" 1526 aria-expanded="false" 1527 aria-controls="y-menu--sub-contact-us" 1528 > 1529 Contact us 1530<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1531 <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" /> 1532 </svg></a><ul 1533 class="y-menu--level-2--container" 1534 1535 data-y-menu--parent-link="level-2" 1536 1537 id="y-menu--sub-contact-us" 1538 > 1539 <li class="y-menu--back-link"> 1540 <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg"> 1541 <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" /> 1542 </svg> Back</a> 1543 </li><li class="y-menu--parent-link"> 1544 <a href="/pages/contact-us">Contact us</a> 1545 </li><li 1546 class="y-menu--level-2--link" 1547 data-item="nav-text" 1548 data-link-id="contact-us--shipping" 1549 > 1550 <a href="/pages/shipping-information" data-submenu="true">Shipping</a> 1551 1552 1553</li><li 1554 class="y-menu--level-2--link" 1555 data-item="nav-text" 1556 data-link-id="contact-us--faq" 1557 > 1558 <a href="/pages/avada-faqs" data-submenu="true">FAQ</a> 1559 1560 1561</li><li 1562 class="y-menu--level-2--link" 1563 data-item="nav-text" 1564 data-link-id="contact-us--contact-lenses-101" 1565 > 1566 <a href="/pages/contact-lenses-101" data-submenu="true">Contact Lenses 101</a> 1567 1568 1569</li><li 1570 class="y-menu--level-2--link" 1571 data-item="nav-text" 1572 data-link-id="contact-us--customer-support" 1573 > 1574 <a href="/pages/contact-us" data-submenu="true">Customer Support</a> 1575 1576 1577</li><li 1578 class="y-menu--level-2--link" 1579 data-item="nav-text" 1580 data-link-id="contact-us--wholesale-inquiry" 1581 > 1582 <a href="/pages/wholesale" data-submenu="true">Wholesale Inquiry</a> 1583 1584 1585</li></ul></li></ul></y-menu-root></div><div class="header--top-row"><div class="header--logo"><div 1586 class="logo--root" 1587 data-type="image" 1588 itemscope 1589 itemtype="https://schema.org/Organization" 1590> 1591 <a 1592 class="logo--wrapper" 1593 href="/" 1594 title="HapaKristin" 1595 itemprop="url" 1596 ><div><img class="logo--image" src="https://hapakristin.co.kr/img/logo_pc_black.743d480f.svg"></div> 1597 1598 <style> 1599 img.logo--image { 1600 height: auto; 1601 border-radius: 0; 1602 padding-left: .5vw; 1603 padding-top: 4px; 1604 } 1605 1606 @media only screen and (max-width: 1080px) { 1607 img.logo--image { 1608 width: 141px; 1609 } 1610 } 1611 </style></a> 1612</div></div><div class="header--menu"><div class="header--menu"><x-menu-root 1613 class="x-menu" 1614 data-item="nav-text" 1615 data-x-menu--align="center" 1616 data-x-menu--overlap 1617 data-x-menu--overlap-parent="1" 1618 style="display:inline-block;" 1619><div class="x-menu--overlap-icon"> 1620 <div 1621 tabindex="0" 1622 data-drawer-open="left" 1623 data-drawer-view="y-menu" 1624 aria-haspopup="menu" 1625 >
1625<svg class="icon--root icon--menu" width="22" height="16" viewBox="0 0 22 16" xmlns="http://www.w3.org/2000/svg"> 1626 <path d="M0 2.4V.6h22v1.8H0Zm0 6.584v-1.8h22v1.8H0Zm0 6.584v-1.8h22v1.8H0Z" fill="#000" fill-rule="nonzero" /> 1627 </svg></div> 1628 </div><ul class="x-menu--level-1--container"><li 1629 class="x-menu--level-1--link" 1630 data-x-menu--depth="2" 1631 data-x-menu--open="false" 1632 data-state="closed" 1633 data-link-id="shop" 1634 ><a 1635 href="/collections/all-1" 1636 aria-haspopup="true" 1637 aria-expanded="false" 1638 aria-controls="x-menu--sub-shop" 1639 >Shop 1640<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1641 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1642 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1643 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1644 </svg></a><div 1645 class="x-menu--level-2--container" 1646 id="x-menu--sub-shop" 1647 aria-hidden="true" 1648 style="display:none;" 1649 ><ul class="x-menu--level-2--list"><li 1650 class="x-menu--level-2--link" 1651 data-link-id="shop--dailies" 1652 1653 data-x-menu--single-parent="true" 1654 1655 > 1656 <a href="/collections/1-day">Dailies</a></li><li 1657 class="x-menu--level-2--link" 1658 data-link-id="shop--monthlies" 1659 1660 data-x-menu--single-parent="true" 1661 1662 > 1663 <a href="/collections/1-month">Monthlies</a></li><li 1664 class="x-menu--level-2--link" 1665 data-link-id="shop--weighted-lenses" 1666 1667 data-x-menu--single-parent="true" 1668 1669 > 1670 <a href="/collections/stay-pretty-kristin-series">Weighted Lenses</a></li><li 1671 class="x-menu--level-2--link" 1672 data-link-id="shop--trial-pairs" 1673 1674 data-x-menu--single-parent="true" 1675 1676 > 1677 <a href="/collections/2p-trial-kit">Trial Pairs</a></li><li 1678 class="x-menu--level-2--link" 1679 data-link-id="shop--for-astigmatism" 1680 1681 data-x-menu--single-parent="true" 1682 1683 > 1684 <a href="/collections/astigmatism">For Astigmatism</a></li><li 1685 class="x-menu--level-2--link" 1686 data-link-id="shop--bundles" 1687 1688 data-x-menu--single-parent="true" 1689 1690 > 1691 <a href="/collections/bundles">Bundles</a></li><li 1692 class="x-menu--level-2--link" 1693 data-link-id="shop--cosmetics" 1694 1695 data-x-menu--single-parent="true" 1696 1697 > 1698 <a href="/collections/cosmetics">Cosmetics</a></li><li 1699 class="x-menu--level-2--link" 1700 data-link-id="shop--accessories" 1701 1702 data-x-menu--single-parent="true" 1703 1704 > 1705 <a href="/collections/goodies">Accessories</a></li><li 1706 class="x-menu--level-2--link" 1707 data-link-id="shop--gifts" 1708 1709 data-x-menu--single-parent="true" 1710 1711 > 1712 <a href="/collections/gifts">Gifts</a></li></ul> 1713 </div></li><li 1714 class="x-menu--level-1--link" 1715 data-x-menu--depth="2" 1716 data-x-menu--open="false" 1717 data-state="closed" 1718 data-link-id="by-color" 1719 ><a 1720 href="/collections/all-1" 1721 aria-haspopup="true" 1722 aria-expanded="false" 1723 aria-controls="x-menu--sub-by-color" 1724 >By color 1725<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1726 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1727 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1728 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1729 </svg></a><div 1730 class="x-menu--level-2--container" 1731 id="x-menu--sub-by-color" 1732 aria-hidden="true" 1733 style="display:none;" 1734 ><ul class="x-menu--level-2--list"><li 1735 class="x-menu--level-2--link" 1736 data-link-id="by-color--black" 1737 1738 data-x-menu--single-parent="true" 1739 1740 > 1741 <a href="https://www.hapakristin.com/collections/black-lenses">Black</a></li><li 1742 class="x-menu--level-2--link" 1743 data-link-id="by-color--brown" 1744 1745 data-x-menu--single-parent="true" 1746 1747 > 1748 <a href="/collections/brown-lenses">Brown</a></li><li 1749 class="x-menu--level-2--link" 1750 data-link-id="by-color--blue" 1751 1752 data-x-menu--single-parent="true" 1753 1754 > 1755 <a href="/collections/blue-lenses">Blue</a></li><li 1756 class="x-menu--level-2--link" 1757 data-link-id="by-color--gray" 1758 1759 data-x-menu--single-parent="true" 1760 1761 > 1762 <a href="/collections/gray-lenses">Gray</a></li><li 1763 class="x-menu--level-2--link" 1764 data-link-id="by-color--green" 1765 1766 data-x-menu--single-parent="true" 1767 1768 > 1769 <a href="/collections/green-lenses">Green</a></li><li 1770 class="x-menu--level-2--link" 1771 data-link-id="by-color--hazel" 1772 1773 data-x-menu--single-parent="true" 1774 1775 > 1776 <a href="/collections/hazel-lenses">Hazel</a></li><li 1777 class="x-menu--level-2--link" 1778 data-link-id="by-color--violet-soft-pink" 1779 1780 data-x-menu--single-parent="true" 1781 1782 > 1783 <a href="https://www.hapakristin.com/collections/violet-lenses">Violet & Soft Pink</a></li><li 1784 class="x-menu--level-2--link" 1785 data-link-id="by-color--clear" 1786 1787 data-x-menu--single-parent="true" 1788 1789 > 1790 <a href="/collections/clear-contact-lenses">Clear</a></li></ul> 1791 </div></li><li 1792 class="x-menu--level-1--link" 1793 data-x-menu--depth="2" 1794 data-x-menu--open="false" 1795 data-state="closed" 1796 data-link-id="wonyoung" 1797 ><a 1798 href="/collections/wonyoung-collection" 1799 aria-haspopup="true" 1800 aria-expanded="false" 1801 aria-controls="x-menu--sub-wonyoung" 1802 >Wonyoung 1803<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1804 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1805 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1806 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1807 </svg></a><div 1808 class="x-menu--level-2--container" 1809 id="x-menu--sub-wonyoung" 1810 aria-hidden="true" 1811 style="display:none;" 1812 ><ul class="x-menu--level-2--list"><li 1813 class="x-menu--level-2--link" 1814 data-link-id="wonyoung--wonyoung-lenses" 1815 1816 data-x-menu--single-parent="true" 1817 1818 > 1819 <a href="/collections/wonyoung-collection">Wonyoung lenses</a></li></ul> 1820 </div></li><li 1821 class="x-menu--level-1--link" 1822 data-x-menu--depth="2" 1823 data-x-menu--open="false" 1824 data-state="closed" 1825 data-link-id="new-trending" 1826 ><a 1827 href="/collections/new-trending" 1828 aria-haspopup="true" 1829 aria-expanded="false" 1830 aria-controls="x-menu--sub-new-trending" 1831 >New & Trending 1832<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1833 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1834 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1835 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1836 </svg></a><div 1837 class="x-menu--level-2--container" 1838 id="x-menu--sub-new-trending" 1839 aria-hidden="true" 1840 style="display:none;" 1841 ><ul class="x-menu--level-2--list"><li 1842 class="x-menu--level-2--link" 1843 data-link-id="new-trending--new-arrivals" 1844 1845 data-x-menu--single-parent="true" 1846 1847 > 1848 <a href="/collections/new-arrivals">New arrivals</a></li><li 1849 class="x-menu--level-2--link" 1850 data-link-id="new-trending--best-sellers" 1851 1852 data-x-menu--single-parent="true" 1853 1854 > 1855 <a href="/collections/best-sellers">Best Sellers</a></li><li 1856 class="x-menu--level-2--link" 1857 data-link-id="new-trending--feel-the-rush-kristin" 1858 1859 data-x-menu--single-parent="true" 1860 1861 > 1862 <a href="/products/h79970j1">Feel the Rush Kristin</a></li><li 1863 class="x-menu--level-2--link" 1864 data-link-id="new-trending--stay-pretty-kristin-weighted-lenses" 1865 1866 data-x-menu--single-parent="true" 1867 1868 > 1869 <a href="/collections/stay-pretty-kristin-series">Stay Pretty Kristin - Weighted Lenses</a></li><li 1870 class="x-menu--level-2--link" 1871 data-link-id="new-trending--pink-rain-new-clear-lens" 1872 1873 data-x-menu--single-parent="true" 1874 1875 > 1876 <a href="/products/h79892j1">Pink Rain - NEW Clear Lens</a></li><li 1877 class="x-menu--level-2--link" 1878 data-link-id="new-trending--cat-titude-kristin" 1879 1880 data-x-menu--single-parent="true" 1881 1882 > 1883 <a href="/collections/cat-titude-kristin-series">Cat-titude Kristin</a></li><li 1884 class="x-menu--level-2--link" 1885 data-link-id="new-trending--quiet-kristin" 1886 1887 data-x-menu--single-parent="true" 1888 1889 > 1890 <a href="/collections/quiet-kristin-series">Quiet Kristin</a></li><li 1891 class="x-menu--level-2--link" 1892 data-link-id="new-trending--dolly-kristin-new-colors" 1893 1894 data-x-menu--single-parent="true" 1895 1896 > 1897 <a href="/collections/dolly-series">Dolly Kristin - NEW COLORS</a></li><li 1898 class="x-menu--level-2--link" 1899 data-link-id="new-trending--bean-kristin" 1900 1901 data-x-menu--single-parent="true" 1902 1903 > 1904 <a href="/collections/bean-kristin-series">Bean Kristin</a></li><li 1905 class="x-menu--level-2--link" 1906 data-link-id="new-trending--doll-nikita" 1907 1908 data-x-menu--single-parent="true" 1909 1910 > 1911 <a href="/products/h79225j1">Doll Nikita</a></li></ul> 1912 </div></li><li 1913 class="x-menu--level-1--link" 1914 data-x-menu--depth="1" 1915 data-x-menu--open="false" 1916 data-state="closed" 1917 data-link-id="collections" 1918 ><a href="/collections">Collections</a></li><li 1919 class="x-menu--level-1--link" 1920 data-x-menu--depth="2" 1921 data-x-menu--open="false" 1922 data-state="closed" 1923 data-link-id="promotions" 1924 ><a 1925 href="/blogs/events" 1926 aria-haspopup="true" 1927 aria-expanded="false" 1928 aria-controls="x-menu--sub-promotions" 1929 >Promotions 1930<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1931 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1932 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1933 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1934 </svg></a><div 1935 class="x-menu--level-2--container" 1936 id="x-menu--sub-promotions" 1937 aria-hidden="true" 1938 style="display:none;" 1939 ><ul class="x-menu--level-2--list"><li 1940 class="x-menu--level-2--link" 1941 data-link-id="promotions--current-offers" 1942 1943 data-x-menu--single-parent="true" 1944 1945 > 1946 <a href="/blogs/events">Current offers</a></li><li 1947 class="x-menu--level-2--link" 1948 data-link-id="promotions--membership-program" 1949 1950 data-x-menu--single-parent="true" 1951 1952 > 1953 <a href="/pages/rewards">Membership program</a></li></ul> 1954 </div></li><li 1955 class="x-menu--level-1--link" 1956 data-x-menu--depth="2" 1957 data-x-menu--open="false" 1958 data-state="closed" 1959 data-link-id="contact-us" 1960 ><a 1961 href="/pages/contact-us" 1962 aria-haspopup="true" 1963 aria-expanded="false" 1964 aria-controls="x-menu--sub-contact-us" 1965 >Contact us 1966<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1967 <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" /> 1968 </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"> 1969 <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" /> 1970 </svg></a><div 1971 class="x-menu--level-2--container" 1972 id="x-menu--sub-contact-us" 1973 aria-hidden="true" 1974 style="display:none;" 1975 ><ul class="x-menu--level-2--list"><li 1976 class="x-menu--level-2--link" 1977 data-link-id="contact-us--shipping" 1978 1979 data-x-menu--single-parent="true" 1980 1981 > 1982 <a href="/pages/shipping-information">Shipping</a></li><li 1983 class="x-menu--level-2--link" 1984 data-link-id="contact-us--faq" 1985 1986 data-x-menu--single
1986-parent="true" 1987 1988 > 1989 <a href="/pages/avada-faqs">FAQ</a></li><li 1990 class="x-menu--level-2--link" 1991 data-link-id="contact-us--contact-lenses-101" 1992 1993 data-x-menu--single-parent="true" 1994 1995 > 1996 <a href="/pages/contact-lenses-101">Contact Lenses 101</a></li><li 1997 class="x-menu--level-2--link" 1998 data-link-id="contact-us--customer-support" 1999 2000 data-x-menu--single-parent="true" 2001 2002 > 2003 <a href="/pages/contact-us">Customer Support</a></li><li 2004 class="x-menu--level-2--link" 2005 data-link-id="contact-us--wholesale-inquiry" 2006 2007 data-x-menu--single-parent="true" 2008 2009 > 2010 <a href="/pages/wholesale">Wholesale Inquiry</a></li></ul> 2011 </div></li></ul></x-menu-root></div></div> 2012 2013 <div class="header--button"><div 2014 class="header--search" 2015 data-drawer-open="top" 2016 data-drawer-view="search" 2017 role="img" 2018 tabindex="0" 2019 aria-label="Search" 2020 > 2021 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/searchicon.svg?v=1712647253"> 2022 </div><a class="header--account-icon" 2023 2024 href="/account/login" 2025 2026 aria-label="Translation missing: en.layout.header.account" 2027 > 2028 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/usericon.svg?v=1712647257"> 2029 </a> 2030 <div class="header--cart"> 2031 <a class="header--cart-toggle" 2032 aria-label="" 2033 data-cart-count="0" 2034 data-item="nav-text" 2035 href="/cart"> 2036 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/bagicon.svg?v=1712647249"> 2037 </a> 2038 </div> 2039 <div class="header--wishlist"> 2040 <a class="header--wishlist-toggle" href="/pages/wishlist"> 2041 <img src="https://cdn.shopify.com/s/files/1/0229/7688/8868/files/heart-line-svgrepo-com.svg?v=1713831293" style="transform: scale(1.2)"> 2042 </a> 2043 </div><div class="doubly-wrapper"></div></div> 2044 </div> 2045 2046 <div class="header--mobile" 2047 data-background-color="none" 2048 data-light-text="false"> 2049 <div class="header--mobile--menu"> 2050 <div 2051 tabindex="0" 2052 data-drawer-open="left" 2053 data-drawer-view="y-menu" 2054 aria-haspopup="menu" 2055 ><svg class="icon--root icon--menu-alt" width="18" height="10" viewBox="0 0 18 10" xmlns="http://www.w3.org/2000/svg"> 2056 <path d="M0 10V8h18v2H0Zm0-4V4h18v2H0Zm0-4V0h18v2H0Z" fill="#000" fill-rule="nonzero" /> 2057 </svg></div> 2058 </div> 2059 2060 <div class="header--mobile--title"><div 2061 class="logo--root" 2062 data-type="image" 2063 itemscope 2064 itemtype="https://schema.org/Organization" 2065> 2066 <a 2067 class="logo--wrapper" 2068 href="/" 2069 title="HapaKristin" 2070 itemprop="url" 2071 ><div><img class="logo--image" src="https://hapakristin.co.kr/img/logo_pc_black.743d480f.svg"></div> 2072 2073 <style> 2074 img.logo--image { 2075 height: auto; 2076 border-radius: 0; 2077 padding-left: .5vw; 2078 padding-top: 4px; 2079 } 2080 2081 @media only screen and (max-width: 1080px) { 2082 img.logo--image { 2083 width: 141px; 2084 } 2085 } 2086 </style></a> 2087</div></div> 2088 2089 <div class="header--mobile--cart" data-item="accent-text"><div 2090 class="header--mobile--search" 2091 data-drawer-open="top" 2092 data-drawer-view="search" 2093 role="img" 2094 tabindex="0" 2095 aria-label="Search" 2096 > 2097 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/searchicon.svg?v=1712647253" style="width: 20px!important; margin-right:12px;"> 2098 </div><style> 2099 .header--cart-toggle img { 2100 width: 20px; 2101 border-radius: 0; 2102 } 2103 @media (min-width: 1081px) { 2104 .header--cart-toggle:not([data-cart-count="0"])::after { 2105 content: attr(data-cart-count); 2106 background: #d5d5d59e; 2107 width: 20px; 2108 height: 20px; 2109 line-height: 18px; 2110 letter-spacing: -0.05em; 2111 text-align: center; 2112 margin-left: -15px; 2113 margin-right: -5px; 2114 font-size: 12px; 2115 font-weight: 600; 2116 border: 1px solid #433838; 2117 border-radius: 50%; 2118 } 2119 } 2120</style> 2121 2122<a 2123 class="header--cart-toggle" 2124 aria-label="Cart" 2125 data-cart-count="0" 2126 data-item="nav-text" 2127 href="/cart" 2128> 2129 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/bagicon.svg?v=1712647249"> 2130</a> 2131 2132<noscript> 2133 <a 2134 class="header--cart-toggle" 2135 aria-label="Cart" 2136 href="/cart" 2137 data-cart-count="0" 2138 > 2139 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/bagicon.svg?v=1712647249"> 2140 </a> 2141</noscript></div> 2142 </div> 2143</header-root> 2144 2145</div> 2146<!-- END sections: header-group --></header> 2147 2148 <div class="layout--overlay-group"><!-- BEGIN sections: overlay-group --> 2149<div id="shopify-section-sections--23261413638221__popup" class="shopify-section shopify-section-group-overlay-group">
2149<script type="module"> 2150 import '//hapakristin.com/cdn/shop/t/239/assets/popup.js?v=78640207972138798601790063891'; 2151 </script>
2151 2152<div 2153 class="popup--root" 2154 data-consent-tracking="false" 2155 data-limit="true" 2156 data-size="1" 2157> 2158 <popup-block 2159 class="popup--block--root" 2160 data-block-id="LargePromotionEwlx6w" 2161 data-background-color="accent-1" 2162 data-delay="3" 2163 data-text-alignment="center" 2164 data-translucent="true" 2165 data-countdown-container 2166 data-show-again-after="1" 2167 data-show-at-bottom="true" 2168 data-light-text="true" 2169 data-position="right" 2170 data-referrer-enabled="false" 2171 data-referrer-url="" 2172 data-transition-item="viewport" 2173 data-transition-type="scale-in" 2174 data-transition-trigger="custom" 2175 data-type="large-promotion" 2176 aria-hidden="true" 2177 2178 > 2179 <div class="popup--block--container"><div class="popup--block--heading" data-item="block-heading">ð¦ Seollal Shipping Notice ð¦</div><div class="popup--block--description" data-item="rte-content"><p>Order by <strong>Feb 13 , 8:15 AM KST </strong>to avoid delays.<br/>Orders placed after that will ship between <strong>Feb 23-24.</strong></p></div><link 2180 href="//hapakristin.com/cdn/shop/t/239/assets/countdown-timer.css?v=34301556984625477661790063891" 2181 rel="stylesheet" 2182 onload="this.loaded=true;window.trigger('theme:CountdownTimerStyles:loaded');" 2183 >
2183<script type="module"> 2184 import '//hapakristin.com/cdn/shop/t/239/assets/countdown-timer.js?v=131018483760112519221790063891'; 2185 </script>
2185 2186<countdown-timer 2187 class="countdown-timer--root" 2188 data-item="section-heading" 2189 data-expiry-date="12-02-2026" 2190 data-expiry-hours="23" 2191 data-expiry-minutes="15" 2192 data-hide-expired="true" 2193 data-show-button-when="always" 2194 data-light-number="true" 2195 data-timer-bg="dark" 2196 style="--number-size:26px;--mobile-number-size:18px;" 2197><div class="countdown-timer--item" data-item="nav-text"> 2198 <div class="countdown-timer--digits"><div 2199 class="countdown-timer--digit" 2200 data-value="0" 2201 data-index="0" 2202 > 2203 <div 2204 data-transition-item="viewport" 2205 data-transition-type="slide-in" 2206 data-transition-active="true" 2207 data-transition-trigger="custom" 2208 >0</div> 2209 <div 2210 data-transition-item="viewport" 2211 data-transition-active="true" 2212 data-transition-trigger="custom" 2213 >9</div> 2214 </div><div 2215 class="countdown-timer--digit" 2216 data-value="0" 2217 data-index="0" 2218 > 2219 <div 2220 data-transition-item="viewport" 2221 data-transition-type="slide-in" 2222 data-transition-active="true" 2223 data-transition-trigger="custom" 2224 >0</div> 2225 <div 2226 data-transition-item="viewport" 2227 data-transition-active="true" 2228 data-transition-trigger="custom" 2229 >9</div> 2230 </div></div> 2231 2232 <div class="countdown-timer--unit"> 2233 day 2234 </div> 2235 </div><span class="countdown-timer--seperator" aria-hidden="true">:</span><div class="countdown-timer--item" data-item="nav-text"> 2236 <div class="countdown-timer--digits"><div 2237 class="countdown-timer--digit" 2238 data-value="0" 2239 data-index="0" 2240 > 2241 <div 2242 data-transition-item="viewport" 2243 data-transition-type="slide-in" 2244 data-transition-active="true" 2245 data-transition-trigger="custom" 2246 >0</div> 2247 <div 2248 data-transition-item="viewport" 2249 data-transition-active="true" 2250 data-transition-trigger="custom" 2251 >9</div> 2252 </div><div 2253 class="countdown-timer--digit" 2254 data-value="0" 2255 data-index="0" 2256 > 2257 <div 2258 data-transition-item="viewport" 2259 data-transition-type="slide-in" 2260 data-transition-active="true" 2261 data-transition-trigger="custom" 2262 >0</div> 2263 <div 2264 data-transition-item="viewport" 2265 data-transition-active="true" 2266 data-transition-trigger="custom" 2267 >9</div> 2268 </div></div> 2269 2270 <div class="countdown-timer--unit"> 2271 hour 2272 </div> 2273 </div><span class="countdown-timer--seperator" aria-hidden="true">:</span><div class="countdown-timer--item" data-item="nav-text"> 2274 <div class="countdown-timer--digits"><div 2275 class="countdown-timer--digit" 2276 data-value="0" 2277 data-index="0" 2278 > 2279 <div 2280 data-transition-item="viewport" 2281 data-transition-type="slide-in" 2282 data-transition-active="true" 2283 data-transition-trigger="custom" 2284 >0</div> 2285 <div 2286 data-transition-item="viewport" 2287 data-transition-active="true" 2288 data-transition-trigger="custom" 2289 >9</div> 2290 </div><div 2291 class="countdown-timer--digit" 2292 data-value="0" 2293 data-index="0" 2294 > 2295 <div 2296 data-transition-item="viewport" 2297 data-transition-type="slide-in" 2298 data-transition-active="true" 2299 data-transition-trigger="custom" 2300 >0</div> 2301 <div 2302 data-transition-item="viewport" 2303 data-transition-active="true" 2304 data-transition-trigger="custom" 2305 >9</div> 2306 </div></div> 2307 2308 <div class="countdown-timer--unit"> 2309 min 2310 </div> 2311 </div><span class="countdown-timer--seperator" aria-hidden="true">:</span><div class="countdown-timer--item" data-item="nav-text"> 2312 <div class="countdown-timer--digits"><div 2313 class="countdown-timer--digit" 2314 data-value="0" 2315 data-index="0" 2316 > 2317 <div 2318 data-transition-item="viewport" 2319 data-transition-type="slide-in" 2320 data-transition-active="true" 2321 data-transition-trigger="custom" 2322 >0</div> 2323 <div 2324 data-transition-item="viewport" 2325 data-transition-active="true" 2326 data-transition-trigger="custom" 2327 >9</div> 2328 </div><div 2329 class="countdown-timer--digit" 2330 data-value="0" 2331 data-index="0" 2332 > 2333 <div 2334 data-transition-item="viewport" 2335 data-transition-type="slide-in" 2336 data-transition-active="true" 2337 data-transition-trigger="custom" 2338 >0</div> 2339 <div 2340 data-transition-item="viewport" 2341 data-transition-active="true" 2342 data-transition-trigger="custom" 2343 >9</div> 2344 </div></div> 2345 2346 <div class="countdown-timer--unit"> 2347 sec 2348 </div> 2349 </div></countdown-timer><div class="popup--button" data-container="block"> 2350 <a 2351 class="popup--button--container" 2352 href="/blogs/events/lunar-new-year-notice-valentines-wishlist-event" 2353 data-item="secondary-button" 2354 data-text="Learn More" 2355 data-countdown-button 2356 2357 2358 >
2359 <span>Learn More</span> 2360 </a> 2361 </div></div> 2362 2363 <button aria-label="close" class="popup--block--close"><svg class="icon--root icon--cross" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> 2364 <path d="M10 8.727 17.944.783l1.273 1.273L11.273 10l7.944 7.944-1.273 1.273L10 11.273l-7.944 7.944-1.273-1.273L8.727 10 .783 2.056 2.056.783 10 8.727Z" fill="#000" fill-rule="nonzero" /> 2365 </svg></button> 2366 </popup-block> 2367</div> 2368 2369 2370</div> 2371<!-- END sections: overlay-group --></div> 2372 2373 <main class="layout--template" id="main-content"> 2374 <div id="shopify-section-template--23261418356813__custom_liquid_kjyChX" class="shopify-section"><div 2375 class="custom-liquid--root" 2376 data-section-id="template--23261418356813__custom_liquid_kjyChX" 2377 data-background-color="none" 2378 data-container-width="4" 2379 data-light-text="false" 2380 data-spacing-above="true" 2381 data-spacing-below="true" 2382 data-top-border="false" 2383> 2384 <div class="custom-liquid--wrapper"> 2385 <ul> 2386 <li><a href="/account/">Orders</a></li> 2387 2388 <li><a href="/pages/rewards">My rewards</a></li> 2389 2390 <li><a href="/pages/wishlist">Wishlist</a></li> 2391 2392 <li><a href="/pages/reviews">Reviews</a></li> 2393 2394 <li><a href="https://hapakristin.com/account/logout">Logout</a></li> 2395 2396</ul> 2397 </div> 2398</div> 2399 2400</div><div id="shopify-section-template--23261418356813__main" class="shopify-section"><link 2401 href="//hapakristin.com/cdn/shop/t/239/assets/theme--customer.css?v=96548265071905446001790063891" 2402 rel="stylesheet" 2403 onload="this.loaded=true;window.trigger('theme:ThemeCustomerStyles:loaded');" 2404 > 2405<div 2406 class="customer--root" 2407 data-section-id="template--23261418356813__main" 2408> 2409 <div class="customer--wrapper"> 2410 <div class="customer--login"> 2411 <p class="account--reset" data-item="paragraph">We'll send you an email to reset your password.</p> 2412 <h1 data-item="section-heading">Login</h1><form method="post" action="/account/login" id="customer_login" accept-charset="UTF-8" data-login-with-shop-sign-in="true"><input type="hidden" name="form_type" value="customer_login" /><input type="hidden" name="utf8" value="â" /><label for="customer_email" class="label" data-item="accent-text">Email</label> 2413 <input 2414 class="text" 2415 type="email" 2416 value="" 2417 name="customer[email]" 2418 id="customer_email" 2419 required 2420 /><label for="customer_password" class="label" data-item="accent-text">Password</label> 2421 <input 2422 class="text" 2423 type="password" 2424 value="" 2425 name="customer[password]" 2426 id="customer_password" 2427 size="16" 2428 required 2429 /> 2430 <p class="account--forgot-password" data-item="block-link"> 2431 <a href="#" onclick="showRecoverForm(true);return false;">Forgot your password?</a> 2432 </p><div class="account--button-container"> 2433 <button 2434 class="account--sign-in" 2435 data-item="button" 2436 data-text="Login" 2437 value="Login" 2438 type="submit" 2439 2440 > 2441 <span>Login</span> 2442 </button> 2443 <a 2444 class="account--register" 2445 href="/account/register" 2446 data-item="secondary-button" 2447 data-text="Create account" 2448 2449 > 2450 <div>Create account</div> 2451 </a> 2452 </div></form></div> 2453 2454 <div class="account--recover-password" style="display:none;"> 2455 <h1 data-item="section-heading">Reset Password</h1> 2456 <p class="account--reset-instructions" data-item="paragraph">We'll send you an email to reset your password.</p><form method="post" action="/account/recover" accept-charset="UTF-8"><input type="hidden" name="form_type" value="recover_customer_password" /><input type="hidden" name="utf8" value="â" /><label for="email" class="label" data-item="accent-text">Email</label> 2457 <input 2458 class="text" 2459 type="email" 2460 value="" 2461 size="30" 2462 name="email" 2463 id="recover-email" 2464 required 2465 /> 2466 2467 <div class="account--password-buttons"> 2468 <button 2469 class="account--submit" 2470 type="submit" 2471 data-item="button" 2472 data-text="Submit" 2473 value="Submit" 2474 2475 >
2476 <span>Submit</span> 2477 </button> 2478 <a 2479 data-item="block-link" 2480 class="account--cancel" 2481 href="#" 2482 onclick="showRecoverForm(false);return false;" 2483 > 2484 <span>Cancel</span> 2485 </a> 2486 </div></form></div> 2487 2488 2489 </div> 2490</div> 2491
2492<script type="text/javascript"> 2493 showRecoverForm = (toggle) => { 2494 document.querySelector('.account--recover-password').style.display = toggle ? 'block' : 'none'; 2495 document.querySelector('.customer--login').style.display = toggle ? 'none' : 'block'; 2496 } 2497 2498 if (window.location.hash === '#recover') 2499 showRecoverForm(true); 2500 else if (window.location.hash === '#recover-successful') 2501 document.querySelector('.account--reset').style.display = 'block'; 2502</script>
2502</div><div id="shopify-section-template--23261418356813__custom_liquid_jTnDdD" class="shopify-section"><div 2503 class="custom-liquid--root" 2504 data-section-id="template--23261418356813__custom_liquid_jTnDdD" 2505 data-background-color="none" 2506 data-container-width="4" 2507 data-light-text="false" 2508 data-spacing-above="true" 2509 data-spacing-below="true" 2510 data-top-border="false" 2511> 2512 <div class="custom-liquid--wrapper"> 2513 <div class="g-signin2" data-onsuccess="onSignIn"></div> 2514 </div> 2515</div> 2516 2517</div><div id="shopify-section-template--23261418356813__1749541038ba858a77" class="shopify-section"><style> 2518 .apps--root>*{max-width:800px;margin:0 auto} 2519</style><div 2520 class="apps--root" 2521 data-section-id="template--23261418356813__1749541038ba858a77" 2522 data-background-color="none" 2523 data-container-width="4" 2524 data-light-text="false" 2525 data-spacing-above="true" 2526 data-spacing-below="true" 2527> 2528 <div class="apps--wrapper"> 2529 2530 </div> 2531</div> 2532 2533</div><div id="shopify-section-template--23261418356813__featured_text_WY7Qgr" class="shopify-section"> 2534 2535 2536<div 2537 class="featured-text--root template--23261418356813__featured_text_WY7Qgr" 2538 data-section-id="template--23261418356813__featured_text_WY7Qgr" 2539 data-background-color="none" 2540 data-container-width="4" 2541 data-spacing-above="false" 2542 data-spacing-below="true" 2543 data-top-border="false" 2544><div 2545 class="stacked-text--root" 2546 data-light-text="false" 2547 data-mobile-alignment="" 2548 data-x-alignment="center" 2549 data-y-alignment="center" 2550 data-width="" 2551 > 2552 <div 2553 class="stacked-text--wrapper" 2554 data-text-style="" 2555 data-background-color="transparent" 2556 data-translucent="false" 2557 2558 ><div 2559 2560 > 2561 <h2 class="stacked-text--title" data-item="section-heading">Trouble logging in?</h2> 2562 </div><div 2563 class="stacked-text--description" 2564 data-item="rte-content" 2565 2566 2567 ><p>Click below to login with a one-time code sent to your email</p></div><a 2568 class="stacked-text--button" 2569 href="https://account.hapakristin.com" 2570 data-item="secondary-button" 2571 data-text="one-time code login" 2572 2573 2574 > 2575 <span>one-time code login</span> 2576 </a></div> 2577 </div></div> 2578</div><div id="shopify-section-template--23261418356813__featured_blog_cpFaNj" class="shopify-section"><style> 2579 .featured-blog--root[data-light-text=true] .article--item--date { 2580 color: var(--color--alternative) 2581 } 2582 2583 .featured-blog--footer a { 2584 text-align: center 2585 } 2586 2587</style><link 2588 href="//hapakristin.com/cdn/shop/t/239/assets/theme--article.css?v=140833326392733252571790063891" 2589 rel="stylesheet" 2590 onload="this.loaded=true;window.trigger('theme:ThemeArticleStyles:loaded');" 2591 > 2592 2593<div 2594 class="featured-blog--root" 2595 data-section-id="template--23261418356813__featured_blog_cpFaNj" 2596 data-aspect-ratio="natural" 2597 data-background-color="none" 2598 data-container-width="4" 2599 data-light-text="false" 2600 data-spacing-above="true" 2601 data-spacing-below="true" 2602 data-top-border="false" 2603> 2604 <div class="featured-blog--wrapper" data-container="section"><a href="/blogs/events"><div 2605 class="featured-blog--header" 2606 data-container="block" 2607 data-heading-alignment="center" 2608 > 2609 <h2 class="featured-blog--heading" data-item="section-heading">Current offers</h2> 2610 </div></a><div 2611 class="featured-blog--grid" 2612 data-container="panel" 2613 data-columns="3" 2614 data-fixed-columns="true" 2615 data-mobile-columns="1" 2616 2617 ><div 2618 class="article--item"><a 2619 href="/blogs/events/new-feel-the-rush-kristin-up-to-30-off" 2620 class="article--item--image-wrapper" 2621 aria-label="NEW! Feel the Rush Kristin ðï¸ Up to 30% OFF" 2622 > 2623 <div 2624 class="article--item--image" 2625 2626 data-transition-item 2627 data-transition-trigger="hover" 2628 2629 ><img src="//hapakristin.com/cdn/shop/articles/EN____2_fb7d4a41-e29f-4d09-b5c3-64c3da8adf20.jpg?v=1790830848&width=1080" alt="NEW! Feel the Rush Kristin ðï¸ Up to 30% OFF" srcset="//hapakristin.com/cdn/shop/articles/EN____2_fb7d4a41-e29f-4d09-b5c3-64c3da8adf20.jpg?v=1790830848&width=300 300w, //hapakristin.com/cdn/shop/articles/EN____2_fb7d4a41-e29f-4d09-b5c3-64c3da8adf20.jpg?v=1790830848&width=500 500w, //hapakristin.com/cdn/shop/articles/EN____2_fb7d4a41-e29f-4d09-b5c3-64c3da8adf20.jpg?v=1790830848&width=767 767w, //hapakristin.com/cdn/shop/articles/EN____2_fb7d4a41-e29f-4d09-b5c3-64c3da8adf20.jpg?v=1790830848&width=1000 1000w" width="1080" height="1080" loading="lazy" sizes="(max-width: 1080px) 100v
2629w, 33.3vw"></div> 2630 </a> 2631 2632 <h3 class="article--item--heading" data-item="block-heading"> 2633 <a href="/blogs/events/new-feel-the-rush-kristin-up-to-30-off">NEW! Feel the Rush Kristin ðï¸ Up to 30% OFF</a> 2634 </h3><a 2635 href="/blogs/events/new-feel-the-rush-kristin-up-to-30-off" 2636 class="article--item--read-more" 2637 data-item="block-link" 2638 > 2639 <span></span> 2640 </a></div><div 2641 class="article--item"><a 2642 href="/blogs/events/hapa-half-day-buy-2-get-50-off" 2643 class="article--item--image-wrapper" 2644 aria-label="Hapa Half Day: Buy 2 at 50%OFF" 2645 > 2646 <div 2647 class="article--item--image" 2648 2649 data-transition-item 2650 data-transition-trigger="hover" 2651 2652 ><img src="//hapakristin.com/cdn/shop/articles/EN-_-thum2-1_d4ca3435-e42e-44fd-9bce-1c18109b0884.jpg?v=1790063801&width=1080" alt="Hapa Half Day: Buy 2 at 50%OFF" srcset="//hapakristin.com/cdn/shop/articles/EN-_-thum2-1_d4ca3435-e42e-44fd-9bce-1c18109b0884.jpg?v=1790063801&width=300 300w, //hapakristin.com/cdn/shop/articles/EN-_-thum2-1_d4ca3435-e42e-44fd-9bce-1c18109b0884.jpg?v=1790063801&width=500 500w, //hapakristin.com/cdn/shop/articles/EN-_-thum2-1_d4ca3435-e42e-44fd-9bce-1c18109b0884.jpg?v=1790063801&width=767 767w, //hapakristin.com/cdn/shop/articles/EN-_-thum2-1_d4ca3435-e42e-44fd-9bce-1c18109b0884.jpg?v=1790063801&width=1000 1000w" width="1080" height="1080" loading="lazy" sizes="(max-width: 1080px) 100vw, 33.3vw"></div> 2653 </a> 2654 2655 <h3 class="article--item--heading" data-item="block-heading"> 2656 <a href="/blogs/events/hapa-half-day-buy-2-get-50-off">Hapa Half Day: Buy 2 at 50%OFF</a> 2657 </h3><a 2658 href="/blogs/events/hapa-half-day-buy-2-get-50-off" 2659 class="article--item--read-more" 2660 data-item="block-link" 2661 > 2662 <span></span> 2663 </a></div><div 2664 class="article--item"><a 2665 href="/blogs/events/cat-titude-kristin-restock" 2666 class="article--item--image-wrapper" 2667 aria-label="Cat-titude Kristin restock" 2668 > 2669 <div 2670 class="article--item--image" 2671 2672 data-transition-item 2673 data-transition-trigger="hover" 2674 2675 ><img src="//hapakristin.com/cdn/shop/articles/banner_01_77ea6f4e-021e-4c09-9a07-085da052b251.jpg?v=1773887053&width=1080" alt="Cat-titude Kristin restock" srcset="//hapakristin.com/cdn/shop/articles/banner_01_77ea6f4e-021e-4c09-9a07-085da052b251.jpg?v=1773887053&width=300 300w, //hapakristin.com/cdn/shop/articles/banner_01_77ea6f4e-021e-4c09-9a07-085da052b251.jpg?v=1773887053&width=500 500w, //hapakristin.com/cdn/shop/articles/banner_01_77ea6f4e-021e-4c09-9a07-085da052b251.jpg?v=1773887053&width=767 767w, //hapakristin.com/cdn/shop/articles/banner_01_77ea6f4e-021e-4c09-9a07-085da052b251.jpg?v=1773887053&width=1000 1000w" width="1080" height="1061" loading="lazy" sizes="(max-width: 1080px) 100vw, 33.3vw"></div> 2676 </a> 2677 2678 <h3 class="article--item--heading" data-item="block-heading"> 2679 <a href="/blogs/events/cat-titude-kristin-restock">Cat-titude Kristin restock</a> 2680 </h3><a 2681 href="/blogs/events/cat-titude-kristin-restock" 2682 class="article--item--read-more" 2683 data-item="block-link" 2684 > 2685 <span></span> 2686 </a></div></div><div class="featured-blog--footer" data-container="block"> 2687 <a 2688 data-item="secondary-button" 2689 data-text="View more offers" 2690 href="/blogs/events" 2691 2692 > 2693 <div>View more offers</div> 2694 </a> 2695 </div></div> 2696</div> 2697 2698</div> 2699 </main> 2700 2701 <footer class="layout--footer-group"><!-- BEGIN sections: footer-group --> 2702<div id="shopify-section-sections--23261413212237__custom_liquid_PCHnwN" class="shopify-section shopify-section-group-footer-group"><div 2703 class="custom-liquid--root" 2704 data-section-id="sections--23261413212237__custom_liquid_PCHnwN" 2705 data-background-color="none" 2706 data-container-width="4" 2707 data-light-text="false" 2708 data-spacing-above="true" 2709 data-spacing-below="true" 2710 data-top-border="false" 2711> 2712 <div class="custom-liquid--wrapper"> 2713 2714 <div style="height: 20px;"></div> 2715 2716 </div> 2717</div> 2718 2719</div><div id="shopify-section-sections--23261413212237__1758087058a09f7ffa" class="shopify-section shopify-section-group-footer-group"><style> 2720 .apps--root>*{max-width:800px;margin:0 auto} 2721</style><div 2722 class="apps--root" 2723 data-section-id="sections--23261413212237__1758087058a09f7ffa" 2724 data-background-color="dark" 2725 data-container-width="3" 2726 data-light-text="false" 2727 data-spacing-above="true" 2728 data-spacing-below="true" 2729> 2730 <div class="apps--wrapper"> 2731 <div id="shopify-block-AMjdXc1lFSzZmT214c__klaviyo_email_marketing_sms_form_embed_block_CjH76K" class="shopify-block shopify-app-block"> 2732 <div class="klaviyo-form-Rv6vqL"></div> 2733 2734 2735 2736 2737</div><div id="shopify-block-AejdFeXpyaGF6MG1ER__klaviyo_email_marketing_sms_form_embed_block_rpJh3F" class="shopify-block shopify-app-block"> 2738 <div class="klaviyo-form-Ysz2AD"></div> 2739 2740 2741 2742 2743</div> 2744 </div> 2745</div> 2746 2747</div><div id="shopify-section-sections--23261413212237__custom_content_jJkQR6" class="shopify-section shopify-section-group-footer-group"><div 2748 class="custom-content--root" 2749 data-item="rte-content" 2750 data-section-id="sections--23261413212237__custom_content_jJkQR6" 2751 data-background-color="dark" 2752 data-container-width="4" 2753 data-light-text="true" 2754 data-spacing-above="false" 2755 data-spacing-below="false" 2756 data-top-border="false" 2757> 2758 <div class="custom-content--wrapper"><div style="text-align: center; padding: 10px 0;"> 2759 <p>Download the app</p> 2760 <div style="display: flex; justify-content: center; align-items: center; gap: 20px;"> 2761 <a href="https://apps.apple.com/us/app/hapa-kristin-global/id6737216120" target="_blank"> 2762 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/App-store-button-trim.png?v=1732162308" alt="App Store Button" style="width: auto; height: 60px;"> 2763 </a> 2764 <a href="https://play.google.com/store/apps/details?id=en.app.hapakristin&pcampaignid=web_share" target="_blank"> 2765 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/Google-Play-button-trim.png?v=1732162312" alt="Google Play Button" style="width: auto; height: 60px;"> 2766 </a> 2767 </div> 2768</div></div> 2769</div> 2770 2771</div><div id="shopify-section-sections--23261413212237__footer" class="shopify-section shopify-section-group-footer-group section--footer"><div 2772 class="footer--root" 2773 data-section-id="sections--23261413212237__footer" 2774 data-section-type="footer" 2775 data-background-color="dark" 2776 data-light-text="true" 2777 data-top-border="false" 2778> 2779 <div class="footer--blocks"><div 2780 class="footer--block" 2781 data-block-type="menu" 2782 2783 > 2784 <div class="footer--block--container"><div class="footer--block--body" role="navigation" data-item="paragraph"><ul class="footer--menu" aria-label="Navigation"><li><a href="/pages/about-us" title="Who is Hapa Kristin?">Who is Hapa Kristin?</a></li><li><a href="/products/gift-card" title="Gift Cards">Gift Cards</a></li><li><a href="/pages/find-a-store" title="Store Locator">Store Locator</a></li><li><a href="/pages/avada-faqs" title="FAQ">FAQ</a></li><li><a href="/pages/returns" title="Returns & Refunds">Returns & Refunds</a></li><li><a href="/pages/shipping-information" title="Shipping">Shipping</a></li><li><a href="/pages/wholesale" title="Wholesale">Wholesale</a></li></ul></div></div> 2785 </div><div 2786 class="footer--block" 2787 data-block-type="about" 2788 2789 > 2790 <div class="footer--block--container"><div class="footer--block--body"><div class="footer--about-text" data-item="rte-content"><p><strong>
27902026 © Hapa Kristin All Rights Reserved</strong></p><p></p></div><div class="footer--social-icons"><div 2791 class="social-icons--root" 2792 data-type="follow" 2793 data-align="left" 2794 data-mobile-align="center" 2795><div class="social-icons--items"><a 2796 class="social-facebook--link" 2797 rel="noreferrer" 2798 target="_blank" 2799 href="https://www.facebook.com/HapaKristin" 2800 aria-label="facebook" 2801 ><svg class="icon--root icon--facebook" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> 2802 <path d="M18.896 0H1.104C.494 0 0 .494 0 1.104v17.793C0 19.506.494 20 1.104 20h9.58v-7.745H8.076V9.237h2.606V7.01c0-2.583 1.578-3.99 3.883-3.99 1.104 0 2.052.082 2.329.119v2.7h-1.598c-1.254 0-1.496.597-1.496 1.47v1.928h2.989l-.39 3.018h-2.6V20h5.098c.608 0 1.102-.494 1.102-1.104V1.104C20 .494 19.506 0 18.896 0Z" fill="#000" fill-rule="evenodd" /> 2803 </svg></a><a 2804 class="social-instagram--link" 2805 rel="noreferrer" 2806 target="_blank" 2807 href="https://www.instagram.com/hapakristin.global/" 2808 aria-label="instagram" 2809 ><svg class="icon--root icon--instagram" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> 2810 <path d="M15.33 5.87a1.208 1.208 0 0 1-1.2-1.197 1.215 1.215 0 0 1 1.207-1.212c.649.002 1.198.55 1.202 1.2.005.659-.547 1.21-1.21 1.209Zm-5.332 9.273c-2.828 0-5.128-2.297-5.14-5.134-.013-2.83 2.31-5.148 5.148-5.138a5.126 5.126 0 0 1 5.124 5.137 5.14 5.14 0 0 1-5.133 5.135Zm-.01-1.808a3.343 3.343 0 0 0 3.342-3.324 3.348 3.348 0 0 0-3.325-3.34 3.343 3.343 0 0 0-3.34 3.324 3.34 3.34 0 0 0 3.324 3.34ZM1.787 9.997h.038c0 1.052-.018 2.104.007 3.154.015.652.048 1.311.16 1.953.259 1.484 1.12 2.454 2.597 2.845.737.195 1.492.215 2.243.222 2.11.016 4.219.017 6.328-.002a11.723 11.723 0 0 0 1.952-.162c1.483-.265 2.451-1.13 2.834-2.61.214-.821.218-1.663.225-2.5.018-1.931.02-3.863-.002-5.793-.008-.725-.042-1.458-.16-2.171-.25-1.502-1.116-2.488-2.614-2.878-.82-.213-1.663-.218-2.5-.225-1.93-.018-3.861-.02-5.793.002-.724.008-1.456.047-2.17.16-1.4.224-2.388 1-2.81 2.382a6.122 6.122 0 0 0-.247 1.519c-.056 1.367-.062 2.736-.088 4.104ZM20 7.143v5.715c-.01.104-.024.208-.031.313-.044.658-.056 1.32-.137 1.975-.117.95-.44 1.833-1.019 2.607-1.072 1.433-2.57 2.03-4.296 2.164-.446.035-.895.055-1.343.083H6.786c-.092-.01-.183-.028-.274-.034-.473-.03-.95-.04-1.421-.092-1.032-.114-1.998-.424-2.84-1.051C.812 17.748.215 16.247.084 14.514c-.033-.419-.056-.84-.083-1.26V6.746c.014-.157.025-.314.04-.47.067-.63.08-1.27.21-1.887C.638 2.56 1.686 1.245 3.44.532c.932-.379 1.919-.46 2.913-.49.263-.008.526-.028.79-.042h5.714c.09.01.183.024.274.03.671.045 1.347.054 2.014.14 1.044.133 2.002.507 2.823 1.191 1.31 1.094 1.833 2.555 1.948 4.202.037.526.056 1.053.084 1.58Z" fill="#000" fill-rule="evenodd" /> 2811 </svg></a><a 2812 class="social-tiktok--link" 2813 rel="noreferrer" 2814 target="_blank" 2815 href="https://www.tiktok.com/@hapakristin" 2816 aria-label="tiktok" 2817 ><svg class="icon--root icon--tiktok" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2859 3333" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd"> 2818 <path d="M2081 0c55 473 319 755 778 785v532c-266 26-499-61-770-225v995c0 1264-1378 1659-1932 753-356-583-138-1606 1004-1647v561c-87 14-180 36-265 65-254 86-398 247-358 531 77 544 1075 705 992-358V1h551z" /> 2819 </svg></a></div></div> 2820</div></div></div> 2821 </div><div 2822 class="footer--block" 2823 data-block-type="menu" 2824 2825 > 2826 <div class="footer--block--container"><div class="footer--block--body" role="navigation" data-item="paragraph"><ul class="footer--menu" aria-label="Navigation"><li><a href="/blogs/events" title="Current sales">Current sales</a></li><li><a href="/collections/1-day" title="Daily lenses">Daily lenses</a></li><li><a href="/collections/1-month" title="Monthly lenses">Monthly lenses</a></li><li><a href="/collections/astigmatism" title="Toric (for astigmatism)">Toric (for astigmatism)</a></li><li><a href="/collections/2p-trial-kit" title="Trial pairs">Trial pairs</a></li><li><a href="/policies/terms-of-service" title="Terms of Service">Terms of Service</a></li></ul></div></div> 2827 </div></div> 2828 2829 <div class="footer--sub"><div class="footer--sub--block" data-type="powered-by" data-item="paragraph" style="visibility: hidden"><a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=p
2829oweredby&utm_medium=shopify&utm_source=onlinestore">Powered by Shopify</a></div><div class="footer--sub--block" data-type="payment-icons"><svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-american_express"><title id="pi-american_express">American Express</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#0071CE" style="fill:#0071CE;fill:color(display-p3 0.0000 0.4431 0.8078);fill-opacity:1;"/><path d="M3 0.5H35C36.3348 0.5 37.5 1.58692 37.5 3V21C37.5 22.4239 36.4239 23.5 35 23.5H3C1.66524 23.5 0.5 22.4131 0.5 21V3C0.5 1.57614 1.57614 0.5 3 0.5Z" stroke="black" stroke-opacity="0.07" style="stroke:black;stroke-opacity:0.07;"/><path d="M25.8662 6.33203V3H31L31.8662 5.5332L32.7334 3H37V14.2002H36.7998L34.8672 16.2656L36.7998 18.3594H37V21.2666H33.5996L31.9336 19.3994L30.2002 21.2666H19.4668V12.666H16L20.2666 3H24.4004L25.8662 6.33203ZM20.5996 20.2656H27V18.5322H22.666V17.3994H26.8662V15.666H22.666V14.5322H27V12.7988H20.5996V20.2656ZM30.5332 16.5322L27 20.2656H29.5996L31.8662 17.8662L34.0664 20.2656H36.7324L33.1992 16.4658L36.7324 12.7988H34.1328L31.8662 15.1992L29.7324 12.7988H27L30.5332 16.5322ZM17.666 11.7324H19.9326L20.5332 10.1992H23.999L24.666 11.7324H26.999L23.666 4.19922H20.999L17.666 11.7324ZM33.5996 4.19922L31.9326 8.86621L30.1992 4.19922H27V11.666H29.0664V6.39941L31 11.666H32.7998L34.7324 6.39941V11.666H36.7324V4.13281L33.5996 4.19922ZM23.2656 8.46582H21.2656L22.2656 5.99902L23.2656 8.46582Z" fill="white" style="fill:white;fill-opacity:1;"/></svg> 2830<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-google_pay"><title id="pi-google_pay">Google Pay</title><path d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000" opacity=".07"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32" fill="#FFF"/><path d="M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006zm0-3.732v2.788h1.698c.377.012.741-.135 1.005-.404a1.391 1.391 0 0 0-1.005-2.354l-1.698-.03zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.931 2.17 2.17 0 0 1-1.496-.533 1.667 1.667 0 0 1-.613-1.324 1.606 1.606 0 0 1 .613-1.336 2.746 2.746 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.331v-.208a1.134 1.134 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.488 2.488 0 0 1 2.182-1.
283006zM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.047 2.047 0 0 0-1.324-.374 1.716 1.716 0 0 0-1.03.294.883.883 0 0 0-.392.73zm9.286-3.75l-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097z" fill="#5F6368"/><path d="M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.096 2.096 0 0 1-.9 1.373v1.134h1.464a4.433 4.433 0 0 0 1.348-3.334z" fill="#4285F4"/><path d="M9.629 15.721a4.352 4.352 0 0 0 3.01-1.097l-1.466-1.14a2.752 2.752 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507z" fill="#34A853"/><path d="M7.079 12.05a2.709 2.709 0 0 1 0-1.735v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17z" fill="#FBBC04"/><path d="M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875z" fill="#EA4335"/></svg> 2831<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-master"><title id="pi-master">Mastercard</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#1C1C1C" style="fill:#1C1C1C;fill:color(display-p3 0.1098 0.1098 0.1098);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#232323" style="fill:#232323;fill:color(display-p3 0.1373 0.1373 0.1373);fill-opacity:1;"/><path d="M14.6364 19.2727C18.8538 19.2727 22.2727 15.8538 22.2727 11.6364C22.2727 7.41892 18.8538 4 14.6364 4C10.4189 4 7 7.41892 7 11.6364C7 15.8538 10.4189 19.2727 14.6364 19.2727Z" fill="#EB001B" style="fill:#EB001B;fill:color(display-p3 0.9216 0.0000 0.1059);fill-opacity:1;"/><path d="M23.3637 19.2727C27.5811 19.2727 31 15.8538 31 11.6364C31 7.41892 27.5811 4 23.3637 4C19.1462 4 15.7273 7.41892 15.7273 11.6364C15.7273 15.8538 19.1462 19.2727 23.3637 19.2727Z" fill="#F79E1B" style="fill:#F79E1B;fill:color(display-p3 0.9686 0.6196 0.1059);fill-opacity:1;"/><path d="M22.2727 11.6362C22.2727 9.01797 20.9637 6.72706 19 5.41797C17.0364 6.83615 15.7273 9.12706 15.7273 11.6362C15.7273 14.1452 17.0364 16.5452 19 17.8543C20.9637 16.5452 22.2727 14.2543 22.2727 11.6362Z" fill="#FF5F00" style="fill:#FF5F00;fill:color(display-p3 1.0000 0.3725 0.0000);fill-opacity:1;"/></svg> 2832<svg viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-paypal"><title id="pi-paypal">PayPal</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path fill="#003087" d="M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1z"/><path fill="#3086C8" d="M23.9 8.3l-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8z"/><path fill="#012169" d="M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2
28320-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1z"/></svg><svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-visa"><title id="pi-visa">Visa</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#142FBD" style="fill:#142FBD;fill:color(display-p3 0.0784 0.1843 0.7412);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#1532CB" style="fill:#1532CB;fill:color(display-p3 0.0824 0.1961 0.7961);fill-opacity:1;"/><path d="M29.5944 10.2167H29.2778C28.8556 11.2722 28.5389 11.8 28.2222 13.3833H30.2278C29.9111 11.8 29.9111 11.0611 29.5944 10.2167V10.2167ZM32.6556 16.4444H30.8611C30.7556 16.4444 30.7556 16.4444 30.65 16.3389L30.4389 15.3889L30.3333 15.1778H27.8C27.6944 15.1778 27.5889 15.1778 27.5889 15.3889L27.2722 16.3389C27.2722 16.4444 27.1667 16.4444 27.1667 16.4444H24.95L25.1611 15.9167L28.2222 8.73889C28.2222 8.21111 28.5389 8 29.0667 8H30.65C30.7556 8 30.8611 8 30.8611 8.21111L32.3389 15.0722C32.4444 15.4944 32.55 15.8111 32.55 16.2333C32.6556 16.3389 32.6556 16.3389 32.6556 16.4444V16.4444ZM18.5111 16.1278L18.9333 14.2278C19.0389 14.2278 19.1444 14.3333 19.1444 14.3333C19.8833 14.65 20.6222 14.8611 21.3611 14.7556C21.5722 14.7556 21.8889 14.65 22.1 14.5444C22.6278 14.3333 22.6278 13.8056 22.2056 13.3833C21.9944 13.1722 21.6778 13.0667 21.3611 12.8556C20.9389 12.6444 20.5167 12.4333 20.2 12.1167C18.9333 11.0611 19.3556 9.58333 20.0944 8.84444C20.7278 8.42222 21.0444 8 21.8889 8C23.1556 8 24.5278 8 25.1611 8.21111H25.2667C25.1611 8.84444 25.0556 9.37222 24.8444 10.0056C24.3167 9.79444 23.7889 9.58333 23.2611 9.58333C22.9444 9.58333 22.6278 9.58333 22.3111 9.68889C22.1 9.68889 21.9944 9.79444 21.8889 9.9C21.6778 10.1111 21.6778 10.4278 21.8889 10.6389L22.4167 11.0611C22.8389 11.2722 23.2611 11.4833 23.5778 11.6944C24.1056 12.0111 24.6333 12.5389 24.7389 13.1722C24.95 14.1222 24.6333 14.9667 23.7889 15.6C23.2611 16.0222 23.05 16.2333 22.3111 16.2333C20.8333 16.2333 19.6722 16.3389 18.7222 16.0222C18.6167 16.2333 18.6167 16.2333 18.5111 16.1278V16.1278ZM14.8167 16.4444C14.9222 15.7056 14.9222 15.7056 15.0278 15.3889C15.5556 13.0667 16.0833 10.6389 16.5056 8.31667C16.6111 8.10556 16.6111 8 16.8222 8H18.7222C18.5111 9.26667 18.3 10.2167 17.9833 11.3778C17.6667 12.9611 17.35 14.5444 16.9278 16.1278C16.9278 16.3389 16.8222 16.3389 16.6111 16.3389L14.8167 16.4444ZM5 8.21111C5 8.10556 5.21111 8 5.31667 8H8.90556C9.43333 8 9.85556 8.31667 9.96111 8.84444L10.9111 13.4889C10.9111 13.5944 10.9111 13.5944 11.0167 13.7C11.0167 13.5944 11.1222 13.5944 11.1222 13.5944L13.3389 8.21111C13.2333 8.10556 13.3389 8 13.4444 8H15.6611C15.6611 8.10556 15.6611 8.10556 15.5556 8.21111L12.2833 15.9167C12.1778 16.1278 12.1778
283216.2333 12.0722 16.3389C11.9667 16.4444 11.7556 16.3389 11.5444 16.3389H9.96111C9.85556 16.3389 9.75 16.3389 9.75 16.1278L8.06111 9.58333C7.85 9.37222 7.53333 9.05556 7.11111 8.95C6.47778 8.63333 5.31667 8.42222 5.10556 8.42222L5 8.21111Z" fill="white" style="fill:white;fill-opacity:1;"/></svg> 2833</div></div> 2834</div> 2835 2836</div> 2837<!-- END sections: footer-group --></footer> 2838 </div><drawer-root class="drawer--root"> 2839 <div class="drawer--overlay" aria-hidden="true"></div> 2840 <div class="drawer--focus-trigger" tabindex="0"></div> 2841 <div class="drawer--focus-start" tabindex="0"></div> 2842 2843 <div 2844 class="drawer--instance" 2845 data-side="top" 2846 data-focus-id="search-input" 2847 aria-expanded="false" 2848 > 2849 <div class="drawer--container" data-view="search"><style> 2850 .search--root { 2851 display: block 2852 } 2853 2854 .search--bar-wrapper { 2855 display: flex; 2856 align-items: center; 2857 justify-content: space-between; 2858 gap: var(--spacing--item) 2859 } 2860 2861 .search--bar { 2862 display: flex; 2863 align-items: center; 2864 gap: var(--spacing--1); 2865 background-color: var(--bg-color--panel); 2866 border-radius: var(--spacing--1); 2867 padding: 6px; 2868 width: calc(20% + var(--spacing--block)) 2869 } 2870 2871 @media only screen and (max-width: 1080px) { 2872 .search--bar { 2873 width: 100% 2874 } 2875 } 2876 2877 .search--clear { 2878 cursor: pointer 2879 } 2880 2881 .search--clear:hover { 2882 opacity: .8 2883 } 2884 2885 .search--cancel { 2886 display: flex; 2887 cursor: pointer 2888 } 2889 2890 input[type=search].search--textbox { 2891 padding: 0; 2892 border: 0; 2893 outline: 0; 2894 box-shadow: none; 2895 background: 0 0; 2896 margin: 0; 2897 height: 24px 2898 } 2899 2900 input[type=search].search--textbox::-webkit-search-cancel-button, input[type=search].search--textbox::-webkit-search-decoration { 2901 display: none 2902 } 2903 2904 input[type=text]::-ms-clear { 2905 display: none 2906 } 2907 2908 .search--icon { 2909 width: 24px; 2910 height: 24px; 2911 display: flex; 2912 align-items: center; 2913 flex-shrink: 0 2914 } 2915 2916 .search--root[data-loading=true] .search--icon .icon--search { 2917 display: none 2918 } 2919 2920 .search--icon .icon--spinner { 2921 scale: 1.6 2922 } 2923 2924 .search--root[data-loading=false] .search--icon .icon--spinner { 2925 display: none 2926 } 2927 2928 .search--results { 2929 display: flex 2930 } 2931 2932 @media only screen and (min-width: 1081px) { 2933 .search--results { 2934 gap: var(--spacing--block) 2935 } 2936 } 2937 2938 @media only screen and (max-width: 1080px) { 2939 .search--results { 2940 flex-direction: column 2941 } 2942 } 2943 2944 .search--results > * { 2945 padding-top: var(--spacing--block); 2946 width: 100% 2947 } 2948 2949 .predictive-search--products { 2950 width: 100% 2951 } 2952 2953 .predictive-search--products .product--root a { 2954 2955 } 2956 2957 .predictive-search--products:empty { 2958 display: none 2959 } 2960 2961 @media only screen and (min-width: 1081px) and (max-width: 1023px) { 2962 .predictive-search--product-grid[data-container=panel] { 2963 grid-template-columns:repeat(3, minmax(0, 1fr)) 2964 } 2965 } 2966 2967 .predictive-search--product-grid .product--root .product--image-wrapper { 2968 2969 } 2970 2971 .predictive-search--heading { 2972 display: flex; 2973 padding-bottom: var(--spacing--item) 2974 } 2975 2976 .predictive-search--resources { 2977 display: flex; 2978 flex-direction: column; 2979 gap: var(--spacing--block) 2980 } 2981 2982 @media only screen and (max-width: 1080px) { 2983 .predictive-search--resources { 2984 width: 100% 2985 } 2986 } 2987 2988 @media only screen and (min-width: 1081px) { 2989 .predictive-search--resources { 2990 flex: 1 0 20% 2991 } 2992 } 2993 2994 .predictive-search--item a span { 2995 font-weight: 700 2996 } 2997 2998 .predictive-search--container { 2999 display: grid; 3000 grid-gap: var(--spacing--1) 3001 } 3002 3003 .predictive-search--view-all { 3004 margin-top: var(--spacing--block); 3005 text-align: right 3006 } 3007 3008 @media (max-width: 1080px) { 3009 .predictive-search--product-grid .product--root .product--details { 3010 margin-bottom: 20px; 3011 } 3012 .predictive-search--product-grid .product--root .product--image-wrapper { 3013 width: 100%; 3014 } 3015 .predictive-search--product-grid .product--root .product--price[data-item], 3016 .predictive-search--product-grid .product--root .product--compare-price[data-item] { 3017 font-size: 12px; 3018 } 3019 .predictive-search--product-grid .product--root .product--title { 3020 text-align: left; 3021 } 3022 .predictive-search--product-grid .product--root .product--image-bottom { 3023 top: 3px; 3024 bottom: auto; 3025 width: 40px; 3026 height: 40px; 3027 left: 3px; 3028 right: auto; 3029 } 3030 } 3031</style><predictive-search-root class="search--root" data-loading="false"> 3032 <form action="/search" method="get" role="search"> 3033 <div class="search--bar-wrapper"> 3034 <div class="search--bar"> 3035 <div class="search--icon"><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> 3036 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3037 </svg><svg class="icon--root icon--spinner"> 3038 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3039 </svg></div> 3040 3041 <label for="search-input" data-item="hidden-text">Search here...</label> 3042 <input 3043 id="search-input" 3044 class="search--textbox" 3045 type="search" 3046 name="q" 3047 value="" 3048 placeholder="Search here..." 3049 data-item="paragraph" 3050 role="combobox" 3051 aria-owns="predictive-search-results-list" 3052 aria-controls="predictive-search-results-list" 3053 aria-autocomplete="list" 3054 autocorrect="off" 3055 autocomplete="off" 3056 autocapitalize="off" 3057 spellcheck="false" 3058 > 3059 3060 <div class="search--clear" tabindex="0" aria-label="clear" style="display:none;"><svg class="icon--root icon--x-mark" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"> 3061 <path d="M9.997 0c5.518 0 9.998 4.48 9.998 9.997 0 5.518-4.48 9.998-9.998 9.998C4.48 19.995 0 15.515 0 9.997 0 4.48 4.48 0 9.997 0Zm0 8.933L7.276 6.211a.749.749 0 1 0-1.062 1.061l2.722 2.722-2.728 2.728a.75.75 0 1 0 1.061 1.062l2.728-2.728 2.729 2.728a.75.75 0 0 0 1.06-1.062l-2.727-2.728 2.717-2.717
3061a.75.75 0 0 0-.531-1.281.746.746 0 0 0-.531.22L9.997 8.933Z" fill="#222" /> 3062 </svg></div> 3063 </div> 3064 3065 <div class="search--cancel" data-item="block-link" tabindex="0" data-drawer-close> 3066 <div>cancel</div> 3067 </div> 3068 </div> 3069 3070 <div 3071 class="search--results" 3072 id="predictive-search-results-list" 3073 3074 ><div class="predictive-search--resources"><div class="predictive-search--item"><div 3075 class="predictive-search--heading" 3076 data-item="block-heading" 3077 3078 >Popular searches 3079 </div><div class="predictive-search--container" data-item="paragraph"><div 3080 class="predictive-search--item" 3081 3082 > 3083 <a href="/collections/cat-titude-kristin-series">Cat-titude</a> 3084 </div><div 3085 class="predictive-search--item" 3086 3087 > 3088 <a href="/collections/dolly-eyes">Dolly</a> 3089 </div><div 3090 class="predictive-search--item" 3091 3092 > 3093 <a href="/collections/secretive-kristin-series">Secretive</a> 3094 </div><div 3095 class="predictive-search--item" 3096 3097 > 3098 <a href="/collections/bean-kristin-series">Bean</a> 3099 </div><div 3100 class="predictive-search--item" 3101 3102 > 3103 <a href="/collections/brown-lenses">Brown</a> 3104 </div><div 3105 class="predictive-search--item" 3106 3107 > 3108 <a href="/collections/one-only-kristin-series">One and only</a> 3109 </div><div 3110 class="predictive-search--item" 3111 3112 > 3113 <a href="/collections/bittersweet-kristin-series">Bittersweet</a> 3114 </div><div 3115 class="predictive-search--item" 3116 3117 > 3118 <a href="/collections/2p-trial-kit">Trial pairs</a> 3119 </div></div></div></div><div class="predictive-search--products"><div class="predictive-search--heading" data-item="block-heading">Trending now</div><div 3120 class="predictive-search--product-grid" 3121 data-container="panel" 3122 data-columns="4" 3123 data-mobile-columns="2" 3124 ><div class="product--root" id="productItem--" data-product-item data-product-view="grid" 3125 data-text-alignment="left" 3126 data-hover-image data-container="block" 3127 data-aspect-ratio="natural" > 3128 <div style="display: block;" class="gw-add-to-wishlist-product-card-placeholder" 3129 data-gw-product-id="7895203053645" 3130 data-gw-variant-id="43254212526157"></div> 3131 <a href="/products/h79932j3" aria-label="Stay Pretty Kristin 1Day - Baby Pink"> 3132 <div class="desktop-collection"> 3133 <div class="product--image-wrapper" id="productImages"> 3134 <div class="product--image product--model-image modelImage" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=300 300w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=500 500w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=767 767w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--label-bottom"><div class="product--labels" data-item="overline" data-light-text="false"> 3135 <div class="product--label" 3136 data-background-color="accent-1" 3137 data-label-shape="round" 3138 data-label-type="best" >New</div> 3139 3140<div class="product--label featured-label" data-background-color="accent-1" data-label-shape="round" data-label-type="best">best</div></div></div> 3141 <div class="product--image-bottom" id="bottomGraphic"> 3142 3143<img src="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673" alt="Stay Pretty Kristin 1Day - Baby Pink" srcset="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3144 </div>
3145 </div> 3146 3147 <div class="product--graphic-image graphicImage hide" id="graphicImage"> 3148 3149<img src="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673" alt="Stay Pretty Kristin 1Day - Baby Pink" srcset="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=300 300w, //hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3150 </div> 3151 <div class="product--eye-image eyeImage hide" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3152 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3153 .product--quick-add--icon .icon-search path { 3154 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3155 } 3156 3157 3158 3159</style><product-quick-add 3160 class="product--quick-add" 3161 tabindex="0" 3162 data-handle="h79932j3" 3163 data-loading="false" 3164 data-id="43254212526157"data-form="true"> 3165 <button 3166 class="product--quick-add--icon" 3167 type="button" 3168 aria-haspopup="menu" 3169 aria-label="Add to Cart" 3170 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3171 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3172 </svg></button> 3173 3174 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3175 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3176 </svg></div> 3177 </product-quick-add></div> 3178 3179 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Stay Pretty Kristin 1Day - Baby Pink</p></div><div class="product--price-container"> 3180 <div class="product--price-wrapper"> 3181 <span class="product--price money" data-item="accent-text"><span class=money>$29.99</span></span></div> 3182 3183 <div class="product--unit-price-container" data-item="small-text"></div> 3184 </div></div></div> 3185 </div> 3186 <div class="mobile-collection" style="display:none;"> 3187 <div class="product--image-wrapper" id="productImages"> 3188 3189 <div class="product--eye-image eyeImage" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3190 <div class="product--image product--model-image modelImage hide" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=300 300w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=500 500w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=767 767w, //hapakristin.com/cdn/shop/files/Untitled-1_0000__-___-__09.jpg?v=1786338669&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--image-bottom" id="bottomGraphic"> 3191 3192<img src="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673" alt="Stay Pretty Kristin 1Day - Baby Pink" srcset="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3193 </div> 3194
3195 </div> 3196 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/c32303d28a63103eecfc8551259d0ea6_7ea2725e-b305-4b69-b291-7dfb60db15f6.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=300 300w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=500 500w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=767 767w, //hapakristin.com/cdn/shop/files/3_51d7cad5-e9b0-433e-8be9-7e55c97dd710.jpg?v=1785737647&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3197 .product--quick-add--icon .icon-search path { 3198 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3199 } 3200 3201 3202 3203</style><product-quick-add 3204 class="product--quick-add" 3205 tabindex="0" 3206 data-handle="h79932j3" 3207 data-loading="false" 3208 data-id="43254212526157"data-form="true"> 3209 <button 3210 class="product--quick-add--icon" 3211 type="button" 3212 aria-haspopup="menu" 3213 aria-label="Add to Cart" 3214 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3215 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3216 </svg></button> 3217 3218 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3219 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3220 </svg></div> 3221 </product-quick-add></div> 3222 <div class="product--image-wrapper" id="productImages"><div class="product--labels" 3223 data-item="overline" 3224 data-light-text="false"> 3225 <div class="product--label" 3226 data-background-color="accent-1" 3227 data-label-shape="round" 3228 data-label-type="best" >New</div> 3229 3230<div class="product--label featured-label" 3231 data-background-color="accent-1" 3232 data-label-shape="round" 3233 data-label-type="best">best</div></div><div class="product--graphic-image graphicImage"> 3234 3235 3236<img src="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673" alt="Stay Pretty Kristin 1Day - Baby Pink" srcset="//hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=300 300w, //hapakristin.com/cdn/shop/files/Stay_Pretty_Kristin_Baby_Pink.png?v=1784877673&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3237 3238 </div> 3239 </div> 3240 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Stay Pretty Kristin 1Day - Baby Pink</p></div><div class="product--price-container"> 3241 <div class="product--price-wrapper"> 3242 <span class="product--price money" data-item="accent-text"><span class=money>$29.99</span></span></div> 3243 3244 <div class="product--unit-price-container" data-item="small-text"></div> 3245 </div></div> 3246 3247 3248 3249 3250 3251 3252<span style="color: #555; font-size: 14px;">Daily 13.3mm (10pcs) </span> 3253 3254 </div> 3255 </div> 3256 </a> 3257</div> 3258<div class="product--root" id="productItem--" data-product-item data-product-view="grid" 3259 data-text-alignment="left" 3260 data-hover-image data-container="block" 3261 data-aspect-ratio="natural" > 3262 <div style="display: block;
3262" class="gw-add-to-wishlist-product-card-placeholder" 3263 data-gw-product-id="7976009760845" 3264 data-gw-variant-id="43764356186189"></div> 3265 <a href="/products/h79970j1" aria-label="Feel the Rush Kristin 1Day - Plum Queen"> 3266 <div class="desktop-collection"> 3267 <div class="product--image-wrapper" id="productImages"> 3268 <div class="product--image product--model-image modelImage" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--label-bottom"><div class="product--labels" data-item="overline" data-light-text="false"> 3269 <div class="product--label" 3270 data-background-color="accent-1" 3271 data-label-shape="round" 3272 data-label-type="up-to-30-off" >20% Off</div> 3273 3274<div class="product--label promotion-label" data-background-color="accent-1" data-label-shape="round" data-label-type="up-to-30-off">up to 30% OFF</div></div></div> 3275 <div class="product--image-bottom" id="bottomGraphic"> 3276 3277<img src="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118" alt="Feel the Rush Kristin 1Day - Plum Queen" srcset="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=300 300w" width="1000" height="1000" sizes="(max-width: 1080px) 50vw, 25vw"> 3278 </div> 3279 </div> 3280 3281 <div class="product--graphic-image graphicImage hide" id="graphicImage"> 3282 3283<img src="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118" alt="Feel the Rush Kristin 1Day - Plum Queen" srcset="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=300 300w, //hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=500 500w" width="1000" height="1000" sizes="(max-width: 1080px) 50vw, 25vw"> 3284 </div> 3285 <div class="product--eye-image eyeImage hide" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3286 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3287 .product--quick-add--icon .icon-search path { 3288 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3289 } 3290 3291 3292 3293</style><product-quick-add 3294 class="product--quick-add" 3295 tabindex="0" 3296 data-handle="h79970j1" 3297 data-loading="false" 3298 data-id="43764356186189"data-form="true"> 3299 <button 3300 class="product--quick-add--icon" 3301 type="button" 3302 aria-haspopup="menu" 3303 aria-label="Add to Cart" 3304 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3305 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3306 </svg></button> 3307 3308 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3309 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3310 </svg></div> 3311 </product-quick-add></div> 3312 3313 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Feel the Rush Kristin 1Day - Plum Queen</p></div><div class="product--price-container"> 3314 <div class="product--price-wrapper"> 3315 <span class="product--price money" data-item="accent-text"><span class=money>$17.59</span></span><span class="product--compare-price money" data-item="light-accent-text"><span class=money>$21.99</span></span></div> 3316 3317 <div class="product--unit-price-container" data-item="small-text"></div> 3318 </div></div></div> 3319 </div> 3320 <div class="mobile-collection" style="display:none;"> 3321 <div class="product--image-wrapper" id="productImages"> 3322 3323 <div class="product--eye-image eyeImage" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3324 <div class="product--image product--model-image modelImage hide" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_06aa0e42-7f70-4a22-ab05-e19e7fcd3253.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--image-bottom" id="bottomGraphic"> 3325 3326<img src="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118" alt="Feel the Rush Kristin 1Day - Plum Queen" srcset="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=300 300w" width="1000" height="1000" sizes="(max-width: 1080px) 50vw, 25vw"> 3327 </div> 3328
3329 </div> 3330 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_4bb8fd58-ae2b-4554-8d98-2bacadf8ebde.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=300 300w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=500 500w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=767 767w, //hapakristin.com/cdn/shop/files/EN_bd16895c-966a-4277-82b3-b4b8c19622db.jpg?v=1790665095&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3331 .product--quick-add--icon .icon-search path { 3332 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3333 } 3334 3335 3336 3337</style><product-quick-add 3338 class="product--quick-add" 3339 tabindex="0" 3340 data-handle="h79970j1" 3341 data-loading="false" 3342 data-id="43764356186189"data-form="true"> 3343 <button 3344 class="product--quick-add--icon" 3345 type="button" 3346 aria-haspopup="menu" 3347 aria-label="Add to Cart" 3348 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3349 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3350 </svg></button> 3351 3352 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3353 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3354 </svg></div> 3355 </product-quick-add></div> 3356 <div class="product--image-wrapper" id="productImages"><div class="product--labels" 3357 data-item="overline" 3358 data-light-text="false"> 3359 <div class="product--label" 3360 data-background-color="accent-1" 3361 data-label-shape="round" 3362 data-label-type="up-to-30-off" >20% Off</div> 3363 3364<div class="product--label promotion-label" 3365 data-background-color="accent-1" 3366 data-label-shape="round" 3367 data-label-type="up-to-30-off">up to 30% OFF</div></div><div class="product--graphic-image graphicImage"> 3368 3369 3370<img src="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118" alt="Feel the Rush Kristin 1Day - Plum Queen" srcset="//hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=300 300w, //hapakristin.com/cdn/shop/files/EN_8dc75f2a-3c18-467a-b853-533f8a497545.png?v=1790665118&width=500 500w" width="1000" height="1000" sizes="(max-width: 1080px) 50vw, 25vw"> 3371 3372 </div> 3373 </div> 3374 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Feel the Rush Kristin 1Day - Plum Queen</p></div><div class="product--price-container"> 3375 <div class="product--price-wrapper"> 3376 <span class="product--price money" data-item="accent-text"><span class=money>$17.59</span></span><span class="product--compare-price money" data-item="light-accent-text"><span class=money>$21.99</span></span></div> 3377 3378 <div class="product--unit-price-container" data-item="small-text"></div> 3379 </div></div> 3380 3381 3382 3383 3384 3385 3386<span style="color: #555; font-size: 14px;">Daily 13.8mm (10pcs) </span> 3387 3388 </div> 3389 </div> 3390 </a> 3391</div> 3392<div class="product--root" id="productItem--" data-product-item data-product-view="grid" 3393 data-text-alignment="left" 3394 data-hover-image data-container="block" 3395 data-aspect-ratio="natural" > 3396 <div style="display: block;
3396" class="gw-add-to-wishlist-product-card-placeholder" 3397 data-gw-product-id="7630647885901" 3398 data-gw-variant-id="42469540659277"></div> 3399 <a href="/products/h79763j1" aria-label="Cat-titude Kristin 1Day - Sapphire Gray"> 3400 <div class="desktop-collection"> 3401 <div class="product--image-wrapper" id="productImages"> 3402 <div class="product--image product--model-image modelImage" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--label-bottom"><div class="product--labels" data-item="overline" data-light-text="false"><div class="product--label featured-label" data-background-color="accent-1" data-label-shape="round" data-label-type="up-to-10-off">best</div><div class="product--label promotion-label" data-background-color="accent-1" data-label-shape="round" data-label-type="up-to-10-off">up to 10% OFF</div></div></div> 3403 <div class="product--image-bottom" id="bottomGraphic"> 3404 3405<img src="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390" alt="Cat-titude Kristin 1Day - Sapphire Gray" srcset="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3406 </div> 3407 </div> 3408 3409 <div class="product--graphic-image graphicImage hide" id="graphicImage"> 3410 3411<img src="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390" alt="Cat-titude Kristin 1Day - Sapphire Gray" srcset="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=300 300w, //hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3412 </div> 3413 <div class="product--eye-image eyeImage hide" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3414 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=300 300w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=500 500w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=767 767w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3415 .product--quick-add--icon .icon-search path { 3416 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3417 } 3418 3419 3420 3421</style><product-quick-add 3422 class="product--quick-add" 3423 tabindex="0" 3424 data-handle="h79763j1" 3425 data-loading="false" 3426 data-id="42469540659277"data-form="true"> 3427 <button 3428 class="product--quick-add--icon" 3429 type="button" 3430 aria-haspopup="menu" 3431 aria-label="Add to Cart" 3432 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3433 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3434 </svg></button> 3435 3436 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3437 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3438 </svg></div> 3439 </product-quick-add></div> 3440 3441 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Cat-titude Kristin 1Day - Sapphire Gray</p></div><div class="product--price-container"> 3442 <div class="product--price-wrapper"> 3443 <span class="product--price money" data-item="accent-text"><span class=money>$21.99</span></span></div> 3444 3445 <div class="product--unit-price-container" data-item="small-text"></div> 3446 </div></div></div> 3447 </div> 3448 <div class="mobile-collection" style="display:none;"> 3449 <div class="product--image-wrapper" id="productImages"> 3450 3451 <div class="product--eye-image eyeImage" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3452 <div class="product--image product--model-image modelImage hide" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0006___1d_Saphhire-Gray_04.jpg?v=1779080940&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--image-bottom" id="bottomGraphic"> 3453 3454<img src="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390" alt="Cat-titude Kristin 1Day - Sapphire Gray" srcset="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3455 </div> 3456
3457 </div> 3458 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=300 300w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=500 500w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=767 767w, //hapakristin.com/cdn/shop/files/2-EN.jpg?v=1765764759&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=300 300w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=500 500w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=767 767w, //hapakristin.com/cdn/shop/files/thumnail_0002_____jpg.jpg?v=1779080945&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3459 .product--quick-add--icon .icon-search path { 3460 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3461 } 3462 3463 3464 3465</style><product-quick-add 3466 class="product--quick-add" 3467 tabindex="0" 3468 data-handle="h79763j1" 3469 data-loading="false" 3470 data-id="42469540659277"data-form="true"> 3471 <button 3472 class="product--quick-add--icon" 3473 type="button" 3474 aria-haspopup="menu" 3475 aria-label="Add to Cart" 3476 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3477 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3478 </svg></button> 3479 3480 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3481 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3482 </svg></div> 3483 </product-quick-add></div> 3484 <div class="product--image-wrapper" id="productImages"><div class="product--labels" 3485 data-item="overline" 3486 data-light-text="false"><div class="product--label featured-label" 3487 data-background-color="accent-1" 3488 data-label-shape="round" 3489 data-label-type="up-to-10-off">best</div><div class="product--label promotion-label" 3490 data-background-color="accent-1" 3491 data-label-shape="round" 3492 data-label-type="up-to-10-off">up to 10% OFF</div></div><div class="product--graphic-image graphicImage"> 3493 3494 3495<img src="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390" alt="Cat-titude Kristin 1Day - Sapphire Gray" srcset="//hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=300 300w, //hapakristin.com/cdn/shop/files/Cat-titude_Sapphire_Gray_cfc43df5-6ed4-4840-8a24-a15c6694ffb3.png?v=1765764390&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3496 3497 </div> 3498 </div> 3499 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Cat-titude Kristin 1Day - Sapphire Gray</p></div><div class="product--price-container"> 3500 <div class="product--price-wrapper"> 3501 <span class="product--price money" data-item="accent-text"><span class=money>$21.99</span></span></div> 3502 3503 <div class="product--unit-price-container" data-item="small-text"></div> 3504 </div></div> 3505 3506 3507 3508 3509 3510 3511<span style="color: #555; font-size: 14px;">Daily 13.6mm (10pcs) </span> 3512 3513 </div> 3514 </div> 3515 </a> 3516</div> 3517<div class="product--root" id="productItem--" data-product-item data-product-view="grid" 3518 data-text-alignment="left" 3519 data-hover-image data-container="block" 3520 data-aspect-ratio="natural" > 3521 <div style="display: block;
3521" class="gw-add-to-wishlist-product-card-placeholder" 3522 data-gw-product-id="7565087277133" 3523 data-gw-variant-id="42103808426061"></div> 3524 <a href="/products/h79676j1" aria-label="Quiet Kristin 1Day - Glow Black"> 3525 <div class="desktop-collection"> 3526 <div class="product--image-wrapper" id="productImages"> 3527 <div class="product--image product--model-image modelImage" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=300 300w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=500 500w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=767 767w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--label-bottom"><div class="product--labels" data-item="overline" data-light-text="false"><div class="product--label featured-label" data-background-color="accent-1" data-label-shape="round" data-label-type="up-to-10-off">best</div><div class="product--label promotion-label" data-background-color="accent-1" data-label-shape="round" data-label-type="up-to-10-off">up to 10% OFF</div></div></div> 3528 <div class="product--image-bottom" id="bottomGraphic"> 3529 3530<img src="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322" alt="Quiet Kristin 1Day - Glow Black" srcset="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3531 </div> 3532 </div> 3533 3534 <div class="product--graphic-image graphicImage hide" id="graphicImage"> 3535 3536<img src="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322" alt="Quiet Kristin 1Day - Glow Black" srcset="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3537 </div> 3538 <div class="product--eye-image eyeImage hide" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3539 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3540 .product--quick-add--icon .icon-search path { 3541 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3542 } 3543 3544 3545 3546</style><product-quick-add 3547 class="product--quick-add" 3548 tabindex="0" 3549 data-handle="h79676j1" 3550 data-loading="false" 3551 data-id="42103808426061"data-form="true"> 3552 <button 3553 class="product--quick-add--icon" 3554 type="button" 3555 aria-haspopup="menu" 3556 aria-label="Add to Cart" 3557 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3558 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3559 </svg></button> 3560 3561 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3562 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3563 </svg></div> 3564 </product-quick-add></div> 3565 3566 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Quiet Kristin 1Day - Glow Black</p></div><div class="product--price-container"> 3567 <div class="product--price-wrapper"> 3568 <span class="product--price money" data-item="accent-text"><span class=money>$21.99</span></span></div> 3569 3570 <div class="product--unit-price-container" data-item="small-text"></div> 3571 </div></div></div> 3572 </div> 3573 <div class="mobile-collection" style="display:none;"> 3574 <div class="product--image-wrapper" id="productImages"> 3575 3576 <div class="product--eye-image eyeImage" id="eyeImage"><img src="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div> 3577 <div class="product--image product--model-image modelImage hide" id="modelImage" data-item="image"><img src="//hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=300 300w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=500 500w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=767 767w, //hapakristin.com/cdn/shop/files/2-BK-EN.jpg?v=1760082900&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"><div class="product--image-bottom" id="bottomGraphic"> 3578 3579<img src="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322" alt="Quiet Kristin 1Day - Glow Black" srcset="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=300 300w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3580 </div> 3581
3582 </div> 3583 <div class="product--package-image packageImage hide" id="packageImage"><img src="//hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/EN_8f3a938b-0fe7-45b7-a97f-2ee88018ab72.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><div class="product--hover-image"><img src="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000" alt="" srcset="//hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=500 500w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=767 767w, //hapakristin.com/cdn/shop/files/QuietKristin13.5_glowblack.jpg?v=1762494322&width=1000 1000w" width="1000" height="1490" sizes="(max-width: 1080px) 50vw, 25vw"></div><style> 3584 .product--quick-add--icon .icon-search path { 3585 filter: invert(77%) sepia(64%) saturate(3979%) hue-rotate(303deg) brightness(90%) contrast(96%); 3586 } 3587 3588 3589 3590</style><product-quick-add 3591 class="product--quick-add" 3592 tabindex="0" 3593 data-handle="h79676j1" 3594 data-loading="false" 3595 data-id="42103808426061"data-form="true"> 3596 <button 3597 class="product--quick-add--icon" 3598 type="button" 3599 aria-haspopup="menu" 3600 aria-label="Add to Cart" 3601 ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" fill="#f37192"> 3602 <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" /> 3603 </svg></button> 3604 3605 <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner"> 3606 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 3607 </svg></div> 3608 </product-quick-add></div> 3609 <div class="product--image-wrapper" id="productImages"><div class="product--labels" 3610 data-item="overline" 3611 data-light-text="false"><div class="product--label featured-label" 3612 data-background-color="accent-1" 3613 data-label-shape="round" 3614 data-label-type="up-to-10-off">best</div><div class="product--label promotion-label" 3615 data-background-color="accent-1" 3616 data-label-shape="round" 3617 data-label-type="up-to-10-off">up to 10% OFF</div></div><div class="product--graphic-image graphicImage"> 3618 3619 3620<img src="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322" alt="Quiet Kristin 1Day - Glow Black" srcset="//hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=300 300w, //hapakristin.com/cdn/shop/files/QuietKristin1DayGlowBlack_1.png?v=1762494322&width=500 500w" width="2000" height="2000" sizes="(max-width: 1080px) 50vw, 25vw"> 3621 3622 </div> 3623 </div> 3624 <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Quiet Kristin 1Day - Glow Black</p></div><div class="product--price-container"> 3625 <div class="product--price-wrapper"> 3626 <span class="product--price money" data-item="accent-text"><span class=money>$21.99</span></span></div> 3627 3628 <div class="product--unit-price-container" data-item="small-text"></div> 3629 </div></div> 3630 3631 3632 3633 3634 3635 3636<span style="color: #555; font-size: 14px;">Daily 13.4mm (10pcs) </span> 3637 3638 </div> 3639 </div> 3640 </a> 3641</div> 3642</div></div></div> 3643 </form> 3644</predictive-search-root></div> 3645 </div> 3646 3647 <div
3648 class="drawer--instance" 3649 data-side="right" 3650 aria-expanded="false" 3651 ><div class="drawer--container" data-view="product-form"></div><div class="drawer--container" data-view="cart-drawer"><style> 3652 /* tdf ìì ¯: cart-drawerê° ìë ë¤ë¥¸ drawerê° ì´ë ¸ì ë ì¨ê¹ */ 3653 .layout--viewport[data-drawer-view]:not([data-drawer-view="cart-drawer"]) #tdf_discount_widget { 3654 display: none !important; 3655 } 3656 3657 /* tdf ìì ¯ ê³µíµ ì ë ¬ */ 3658 #tdf_discount_widget { 3659 max-width: var(--max-width--large); 3660 margin: 0 auto; 3661 padding: 20px 20px 0; 3662 } 3663 3664 /* ê³µíµ cart header */ 3665 .cart--shared-header { 3666 max-width: var(--max-width--large); 3667 margin: 0 auto; 3668 padding: 20px 0 30px; 3669 text-align: center; 3670 border-bottom: 2px solid; 3671 margin-bottom: 20px; 3672 } 3673 3674 .cart--shared-header .cart--title { 3675 font-size: 20px !important; 3676 margin: 0; 3677 letter-spacing: 0.02em; 3678 } 3679 3680 .cart--shared-header .cart--title::after { 3681 content: '(' attr(data-cart-count) ')'; 3682 } 3683 3684 @media only screen and (max-width: 1080px) { 3685 .cart--shared-header { 3686 padding: 30px 0; 3687 border-bottom-color: #ffdbe3; 3688 } 3689 3690 .cart--shared-header .cart--title { 3691 font-size: 15px !important; 3692 } 3693 } 3694 3695 /* drawer-instance[right]ì overflow:hiddenì cart-drawerì¼ ëë§ scrollë¡ ë³µì */ 3696 .layout--viewport[data-drawer-view="cart-drawer"] .drawer--instance[data-side="right"] { 3697 overflow-y: scroll; 3698 -webkit-overflow-scrolling: touch; 3699 } 3700 3701</style> 3702 3703<div class="cart--shared-header"> 3704 <h2 class="cart--title" data-cart-count="0" data-item="section-heading"> 3705 Your Cart 3706 </h2> 3707</div> 3708 3709<div> 3710 3711 <p align="center"><b>First time here?</b><br> <a href="/account" style="color:#FF7396;"><u>Log in</u></a> for FREE SHIPPING + 10% OFF on your first order</p> 3712 3713</div> 3714 3715<div> 3716 <noscript type="text/flag" class="tdfPlaceDiscounts"></noscript> 3717</div><style> 3718 /* ===== 1. íì/ì¨ê¹ ì ì´ ===== */ 3719 3720 .cart--root[data-view=desktop], 3721 .cart--root[data-view=drawer-desktop] { 3722 max-width: var(--max-width--large); 3723 margin: 0 auto; 3724 display: block; 3725 } 3726 3727 .cart--root[data-view=desktop] { 3728 display: none; 3729 } 3730 3731 @media only screen and (min-width: 1081px) { 3732 .cart--root[data-view=desktop] { 3733 display: block; 3734 } 3735 } 3736 3737 @media only screen and (max-width: 1080px) { 3738 .cart--root[data-view=drawer-desktop] { 3739 display: none; 3740 } 3741 } 3742 3743 /* ===== 2. ê³µíµ ì¤íì¼ (desktop + drawer-desktop) ===== */ 3744 3745 .cart--root[data-view=desktop][data-has-items=false] .cart--form, 3746 .cart--root[data-view=drawer-desktop][data-has-items=false] .cart--form { 3747 display: none; 3748 } 3749 3750 .cart--root[data-view=desktop] .cart--error, 3751 .cart--root[data-view=drawer-desktop] .cart--error { 3752 color: var(--color--fail); 3753 } 3754 3755 /* --- cart--body (table layout) --- */ 3756 3757 .cart--root[data-view=desktop] .cart--body, 3758 .cart--root[data-view=drawer-desktop] .cart--body { 3759 display: table; 3760 width: 100%; 3761 table-layout: auto; 3762 } 3763 3764 .cart--root[data-view=desktop] .cart--headings, 3765 .cart--root[data-view=drawer-desktop] .cart--headings { 3766 display: table-row; 3767 width: 100%; 3768 border-bottom: 1px solid var(--bdr-color--general); 3769 text-align: center; 3770 } 3771 3772 .cart--root[data-view=desktop] .cart--headings > *, 3773 .cart--root[data-view=drawer-desktop] .cart--headings > * { 3774 display: table-cell; 3775 padding: calc(var(--spacing--block) / 2); 3776 border-bottom: 1px solid var(--bdr-color--general); 3777 } 3778 3779 .cart--root[data-view=desktop] .cart--heading--total, 3780 .cart--root[data-view=drawer-desktop] .cart--heading--total { 3781 text-align: right; 3782 } 3783 3784 /* --- cart--item --- */ 3785 3786 .cart--root[data-view=desktop] .cart--item, 3787 .cart--root[data-view=drawer-desktop] .cart--item { 3788 width: 100%; 3789 display: table-row; 3790 } 3791 3792 .cart--root[data-view=desktop] .cart--item > *, 3793 .cart--root[data-view=drawer-desktop] .cart--item > * { 3794 display: table-cell; 3795 vertical-align: middle; 3796 padding: calc(var(--spacing--block) / 2); 3797 border-bottom: 1px solid var(--bdr-color--general); 3798 } 3799 3800 @media only screen and (min-width: 1081px) { 3801 .cart--root[data-view=desktop] .cart--item > *, 3802 .cart--root[data-view=drawer-desktop] .cart--item > * { 3803 max-width: 200px; 3804 } 3805 } 3806 3807 .cart--root[data-view=desktop] .cart--item--image, 3808 .cart--root[data-view=drawer-desktop] .cart--item--image { 3809 width: 150px; 3810 } 3811 3812 .cart--root[data-view=desktop] .cart--item--image .cart--item--bottom, 3813 .cart--root[data-view=drawer-desktop] .cart--item--image .cart--item--bottom { 3814 display: flex; 3815 margin-top: -74px; 3816 left: 65%; 3817 position: relative; 3818 } 3819 3820 .cart--root[data-view=desktop] .cart--item--image .cart--item--graphic, 3821 .cart--root[data-view=drawer-desktop] .cart--item--image .cart--item--graphic { 3822 width: 70px; 3823 height: 70px; 3824 border-radius: 50%; 3825 overflow: hidden; 3826 border: 1px solid #eee; 3827 } 3828 3829 .cart--root[data-view=desktop] .cart--item--image .cart--item--graphic img, 3830 .cart--root[data-view=drawer-desktop] .cart--item--image .cart--item--graphic img { 3831 object-position: center; 3832 } 3833 3834 .cart--root[data-view=desktop] .cart--item--price, 3835 .cart--root[data-view=drawer-desktop] .cart--item--price { 3836 text-align: center; 3837 padding-bottom: var(--spacing--item--mobile); 3838 } 3839 3840 .cart--root[data-view=desktop] .cart--item--quantity, 3841 .cart--root[data-view=drawer-desktop] .cart--item--quantity { 3842 text-align: center; 3843 } 3844 3845 .cart--root[data-view=desktop] .cart--item--total, 3846 .cart--root[data-view=drawer-desktop] .cart--item--total { 3847 text-align: right; 3848 } 3849 3850 /* --- cart--item--actions (Change Option | Remove) --- */ 3851 3852 .cart--root[data-view=desktop] .cart--item--actions, 3853 .cart--root[data-view=drawer-desktop] .cart--item--actions { 3854 margin-top: 10px; 3855 font-size: 12px; 3856 } 3857 3858 .cart--root[data-view=desktop] .cart--item--change-option, 3859 .cart--root[data-view=drawer-desktop] .cart--item--change-option { 3860 color: var(--color--body); 3861 text-decoration: underline; 3862 cursor: pointer; 3863 font-weight: bold; 3864 } 3865 3866 .cart--root[data-view=desktop] .cart--item--change-option:hover, 3867 .cart--root[data-view=drawer-desktop] .cart--item--change-option:hover { 3868 color: var(--color--body); 3869 } 3870 3871 .cart--root[data-view=desktop] .cart--item--divider, 3872 .cart--root[data-view=drawer-desktop] .cart--item--divider { 3873 color: #ccc; 3874 margin: 0 8px; 3875 } 3876 3877 .cart--root[data-view=desktop] .cart--item--remove-btn, 3878 .cart--root[data-view=drawer-desktop] .cart--item--remove-btn { 3879 color: #666; 3880 text-decoration: underline; 3881 cursor: pointer; 3882 font-weight: bold; 3883 } 3884 3885 .cart--root[data-view=desktop] .cart--item--remove-btn:hover, 3886 .cart--root[data-view=drawer-desktop] .cart--item--remove-btn:hover { 3887 color: #c00; 3888 } 3889 3890 /* --- quantity-selector --- */ 3891 3892 .cart--root[data-view=desktop] .quantity-selector--container, 3893 .cart--root[data-view=drawer-desktop] .quantity-selector--container { 3894 width: 100%; 3895 } 3896 3897 .cart--root[data-view=desktop] .quantity-selector--minus, 3898 .cart--root[data-view=desktop] .quantity-selector--plus, 3899 .cart--root[data-view=drawer-desktop] .quantity-selector--minus, 3900 .cart--root[data-view=drawer-desktop] .quantity-selector--plus { 3901 padding: 0 20px; 3902 } 3903 3904 .custom-content--wrapper .cart--title, 3905 .cart--root[data-view=desktop] .quantity-selector--root .disclosure--header, 3906 .cart--root[data-view=drawer-desktop] .quantity-selector--root .disclosure--header { 3907 display: none; 3908 } 3909 3910 /* --- cart--footer --- */ 3911 3912 .cart--root[data-view=desktop] .cart--footer, 3913 .cart--root[data-view=drawer-desktop] .cart--footer { 3914 padding: var(--spacing--section--y) 0; 3915 width: 100%; 3916 display: flex; 3917 } 3918 3919 .cart--root[data-view=desktop] .cart--notes, 3920 .cart--root[data-view=drawer-desktop] .cart--notes { 3921 flex-grow: 1; 3922 max-width: 400px; 3923 } 3924 3925 .cart--root[data-view=desktop] .cart--notes--textarea,
3926 .cart--root[data-view=drawer-desktop] .cart--notes--textarea { 3927 height: 120px; 3928 margin: 0; 3929 padding: calc(var(--spacing--item) / 2); 3930 } 3931 3932 .cart--root[data-view=desktop] .cart--totals, 3933 .cart--root[data-view=drawer-desktop] .cart--totals { 3934 flex-grow: 1; 3935 text-align: right; 3936 } 3937 3938 .cart--root[data-view=desktop] .cart--totals > :not(:last-child), 3939 .cart--root[data-view=drawer-desktop] .cart--totals > :not(:last-child) { 3940 padding-bottom: var(--spacing--item); 3941 } 3942 3943 .cart--root[data-view=desktop] .cart--sub-total > :not(:last-child), 3944 .cart--root[data-view=drawer-desktop] .cart--sub-total > :not(:last-child) { 3945 padding-bottom: var(--spacing--1); 3946 } 3947 3948 .cart--root[data-view=desktop] .cart--discounts > :not(:last-child), 3949 .cart--root[data-view=drawer-desktop] .cart--discounts > :not(:last-child) { 3950 padding-bottom: var(--spacing--1); 3951 } 3952 3953 .cart--root[data-view=desktop] .cart--total > :not(:last-child), 3954 .cart--root[data-view=drawer-desktop] .cart--total > :not(:last-child) { 3955 padding-bottom: var(--spacing--1); 3956 } 3957 3958 .cart--root[data-view=desktop] .cart--total--price, 3959 .cart--root[data-view=drawer-desktop] .cart--total--price { 3960 font-size: 20px; 3961 } 3962 3963 /* --- cart--nav --- */ 3964 3965 .cart--root[data-view=desktop] .cart--nav, 3966 .cart--root[data-view=drawer-desktop] .cart--nav { 3967 display: flex; 3968 justify-content: flex-end; 3969 align-items: center; 3970 } 3971 3972 .cart--root[data-view=desktop] .cart--continue-shopping, 3973 .cart--root[data-view=drawer-desktop] .cart--continue-shopping { 3974 margin-right: var(--spacing--item); 3975 } 3976 3977 .cart--root[data-view=desktop] .cart--continue-shopping a, 3978 .cart--root[data-view=drawer-desktop] .cart--continue-shopping a { 3979 font-weight: 600; 3980 font-size: 1vw; 3981 } 3982 3983 .cart--root[data-view=desktop] .cart--continue-shopping a::before, 3984 .cart--root[data-view=drawer-desktop] .cart--continue-shopping a::before { 3985 content: 'â'; 3986 margin-right: var(--spacing--item); 3987 } 3988 3989 .cart--root[data-view=desktop] .cart--continue-shopping p:hover, 3990 .cart--root[data-view=drawer-desktop] .cart--continue-shopping p:hover { 3991 cursor: pointer; 3992 } 3993 3994 .cart--root[data-view=desktop] .cart--checkout-button, 3995 .cart--root[data-view=drawer-desktop] .cart--checkout-button { 3996 order: 1; 3997 font-weight: 600; 3998 font-size: 1vw; 3999 width: 15vw; 4000 } 4001 4002 .cart--root[data-view=desktop] .cart--checkout-button[disabled], 4003 .cart--root[data-view=drawer-desktop] .cart--checkout-button[disabled] { 4004 pointer-events: none; 4005 opacity: .7; 4006 } 4007 4008 .cart--root[data-view=desktop] .cart--checkout-button[data-loading=true] .cart-button--text, 4009 .cart--root[data-view=desktop] .cart--checkout-button[disabled] .cart-button--text, 4010 .cart--root[data-view=drawer-desktop] .cart--checkout-button[data-loading=true] .cart-button--text, 4011 .cart--root[data-view=drawer-desktop] .cart--checkout-button[disabled] .cart-button--text { 4012 opacity: 0; 4013 visibility: hidden; 4014 } 4015 4016 .cart--root[data-view=desktop] .cart--checkout-button[data-loading=true] .cart-button--spinner, 4017 .cart--root[data-view=desktop] .cart--checkout-button[disabled] .cart-button--spinner, 4018 .cart--root[data-view=drawer-desktop] .cart--checkout-button[data-loading=true] .cart-button--spinner, 4019 .cart--root[data-view=drawer-desktop] .cart--checkout-button[disabled] .cart-button--spinner { 4020 display: block; 4021 } 4022 4023 .cart--root[data-view=desktop] .cart-button--spinner, 4024 .cart--root[data-view=drawer-desktop] .cart-button--spinner { 4025 display: none; 4026 height: 100%; 4027 width: 100%; 4028 position: absolute; 4029 top: 0; 4030 left: 0; 4031 } 4032 4033 /* --- no-items, additional-buttons --- */ 4034 4035 .cart--root[data-view=desktop] .cart--no-items, 4036 .cart--root[data-view=drawer-desktop] .cart--no-items { 4037 text-align: center; 4038 padding-top: 50px; 4039 padding-bottom: 150px; 4040 } 4041 4042 .cart--root[data-view=desktop][data-has-items=true] .cart--no-items, 4043 .cart--root[data-view=drawer-desktop][data-has-items=true] .cart--no-items { 4044 display: none; 4045 } 4046 4047 .cart--root[data-view=desktop] .cart--additional-buttons, 4048 .cart--root[data-view=drawer-desktop] .cart--additional-buttons { 4049 max-width: 300px; 4050 margin-left: auto; 4051 } 4052 4053 .cart--root[data-view=desktop] .cart--additional-buttons[data-disabled=true], 4054 .cart--root[data-view=drawer-desktop] .cart--additional-buttons[data-disabled=true] { 4055 pointer-events: none; 4056 opacity: .7; 4057 } 4058 4059 .cart--root[data-view=desktop] .cart--additional-buttons li:not(:last-child), 4060 .cart--root[data-view=drawer-desktop] .cart--additional-buttons li:not(:last-child) { 4061 margin-bottom: var(--spacing--1) !important; 4062 } 4063 4064 .cart--root[data-view=desktop] .cart--additional-buttons .shopify-cleanslate [data-testid=grid-cell], 4065 .cart--root[data-view=drawer-desktop] .cart--additional-buttons .shopify-cleanslate [data-testid=grid-cell] { 4066 margin-top: 0 !important; 4067 } 4068 4069 /* ===== 3. Cart Page ì ì© ì¤ë²ë¼ì´ë ===== */ 4070 4071 .template--cart .custom-liquid--wrapper p { 4072 margin-top: 30px; 4073 } 4074 4075 .cart--root[data-view=desktop] .cart--item--title > :not(:last-child) { 4076 padding-bottom: var(--spacing--1); 4077 } 4078 4079 .cart--root[data-view=desktop] .cart--item--quantity .quantity-selector--remove { 4080 margin: 0 auto; 4081 } 4082 4083 .template--cart .cart--root[data-view=desktop] .quantity-selector--root .disclosure--main { 4084 padding-top: 50px; 4085 } 4086 4087 /* ===== 4. Drawer ì ì© ì¤ë²ë¼ì´ë ===== */ 4088 4089 .cart--root[data-view=drawer-desktop] { 4090 padding: var(--spacing--section--mobile); 4091 } 4092 4093</style><cart-root 4094 class="cart--root" 4095 data-section-id=""
4096 data-view="drawer-desktop" 4097 data-has-items="false" 4098 4099> 4100 <form class="cart--form" action="/cart" method="post" novalidate=""> 4101 <div class="cart--body"> 4102 <div class="cart--headings" data-item="accent-text"> 4103 <div class="cart--heading--image"></div> 4104 <div class="cart--heading--title"></div> 4105 <div class="cart--heading--price"> 4106 Unit Price 4107 </div> 4108 <div class="cart--heading--quantity">Quantity</div> 4109 <div class="cart--heading--total">Total</div> 4110 </div></div> 4111 4112 <div 4113 class="cart--footer" 4114 4115 ><div class="cart--totals"><div class="cart--total"> 4116 <div class="cart--total--text" data-item="block-heading">Total</div> 4117 <div class="cart--total--price money" data-item="accent-text"><span class=money>$0.00</span></div> 4118 </div> 4119 4120 <div class="cart--tax-info" data-item="paragraph">You can add your discount codes at the next step</div> 4121 4122 <div class="cart--nav"> 4123 <div class="cart--continue-shopping" data-item="block-link"><p tabindex="0" aria-label="close" data-drawer-close>Continue Shopping</p></div> 4124 4125 <button 4126 type="submit" 4127 name="checkout" 4128 class="cart--checkout-button" 4129 data-item="button" 4130 data-text="Checkout" 4131 4132 > 4133 <span> 4134 <span class="cart-button--text">Checkout</span> 4135 <span class="cart-button--spinner"><svg class="icon--root icon--spinner"> 4136 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 4137 </svg></span> 4138 </span> 4139 </button> 4140 </div> 4141 </div> 4142 </div> 4143 </form> 4144 4145 <div class="cart--no-items" data-item="paragraph"> 4146 <span data-item="rte-content">Your cart is currently empty.<br> <a href="/collections/all-1">Click here to continue shopping</a>.</span> 4147 </div> 4148</cart-root><!-- Option Change Modal --> 4149<div id="cart-option-modal" class="cart-option-modal" style="display: none;"> 4150 <div class="cart-option-modal--overlay"></div> 4151 <div class="cart-option-modal--container"> 4152 <div class="cart-option-modal--header"> 4153 <h3 class="cart-option-modal--title">Change Option</h3> 4154 <button type="button" class="cart-option-modal--close" aria-label="Close">×</button> 4155 </div> 4156 <div class="cart-option-modal--body"> 4157 <div class="cart-option-modal--loading">Loading options...</div> 4158 <div class="cart-option-modal--content" style="display: none;"> 4159 <div class="cart-option-modal--product-info"> 4160 <img class="cart-option-modal--product-image" src="" alt=""> 4161 <div class="cart-option-modal--product-title"></div> 4162 </div> 4163 <div class="cart-option-modal--options"></div> 4164 <div class="cart-option-modal--price"></div> 4165 </div> 4166 <div class="cart-option-modal--error" style="display: none;"> 4167 Failed to load options. Please try again. 4168 </div> 4169 </div> 4170 <div class="cart-option-modal--footer"> 4171 <button type="button" class="cart-option-modal--cancel">Cancel</button> 4172 <button type="button" class="cart-option-modal--confirm" disabled>Update Option</button> 4173 </div> 4174 </div> 4175</div> 4176 4177<style> 4178 .cart-option-modal { 4179 position: fixed; 4180 top: 0; 4181 left: 0; 4182 right: 0; 4183 bottom: 0; 4184 z-index: 9999; 4185 display: flex; 4186 align-items: center; 4187 justify-content: center; 4188 } 4189 4190 .cart-option-modal--overlay { 4191 position: absolute; 4192 top: 0; 4193 left: 0; 4194 right: 0; 4195 bottom: 0; 4196 background: rgba(0, 0, 0, 0.5); 4197 } 4198 4199 .cart-option-modal--container { 4200 position: relative; 4201 background: #fff; 4202 border-radius: 8px; 4203 max-width: 400px; 4204 width: 90%; 4205 max-height: 80vh; 4206 overflow: hidden; 4207 display: flex; 4208 flex-direction: column; 4209 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); 4210 } 4211 4212 .cart-option-modal--header { 4213 display: flex; 4214 justify-content: space-between; 4215 align-items: center; 4216 padding: 15px 20px; 4217 border-bottom: 1px solid #eee; 4218 } 4219 4220 .cart-option-modal--title { 4221 margin: 0; 4222 font-size: 18px; 4223 font-weight: 600; 4224 } 4225 4226 .cart-option-modal--close { 4227 background: none; 4228 border: none; 4229 font-size: 24px; 4230 cursor: pointer; 4231 padding: 0; 4232 line-height: 1; 4233 color: #666; 4234 } 4235 4236 .cart-option-modal--close:hover { 4237 color: #000; 4238 } 4239 4240 .cart-option-modal--body { 4241 padding: 20px; 4242 overflow-y: auto; 4243 flex: 1; 4244 } 4245 4246 .cart-option-modal--loading { 4247 text-align: center; 4248 padding: 40px 0; 4249 color: #666; 4250 } 4251 4252 .cart-option-modal--product-info { 4253 display: flex; 4254 align-items: center; 4255 gap: 15px; 4256 margin-bottom: 20px; 4257 padding-bottom: 15px; 4258 border-bottom: 1px solid #eee; 4259 } 4260 4261 .cart-option-modal--product-image { 4262 width: 60px; 4263 height: 60px; 4264 object-fit: cover; 4265 border-radius: 4px; 4266 } 4267 4268 .cart-option-modal--product-title { 4269 font-weight: 500; 4270 font-size: 14px; 4271 } 4272 4273 .cart-option-modal--options { 4274 margin-bottom: 15px; 4275 } 4276 4277 .cart-option-modal--option-group { 4278 margin-bottom: 15px; 4279 } 4280 4281 .cart-option-modal--option-label { 4282 display: block; 4283 font-size: 12px; 4284 font-weight: 600; 4285 color: #666; 4286 margin-bottom: 8px; 4287 text-transform: uppercase; 4288 } 4289 4290 .cart-option-modal .cart-option-modal--option-select { 4291 width: 100% !important; 4292 padding: 10px 12px !important; 4293 border: 1px solid #ddd !important; 4294 border-radius: 4px !important; 4295 font-size: 14px !important; 4296 background: #fff !important; 4297 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important; 4298 background-position: right 12px center !important; 4299 background-repeat: no-repeat !important; 4300 -webkit-appearance: none !important; 4301 -moz-appearance: none !important; 4302 appearance: none !important; 4303 height: auto !important; 4304 line-height: normal !important; 4305 cursor: pointer; 4306 margin: 0 !important; 4307 } 4308 4309 .cart-option-modal .cart-option-modal--option-select:focus { 4310 outline: none; 4311 border-color: #000 !important; 4312 } 4313 4314 .cart-option-modal--price { 4315 font-size: 16px; 4316 font-weight: 600; 4317 text-align: right; 4318 padding-top: 10px; 4319 border-top: 1px solid #eee; 4320 } 4321 4322 .cart-option-modal--footer { 4323 display: flex; 4324 gap: 10px; 4325 padding: 15px 20px; 4326 border-top: 1px solid #eee; 4327 } 4328 4329 .cart-option-modal--cancel, 4330 .cart-option-modal--confirm { 4331 flex: 1; 4332 padding: 12px 20px; 4333 border-radius: 4px; 4334 font-size: 14px; 4335 font-weight: 600; 4336 cursor: pointer; 4337 transition: all 0.2s; 4338 } 4339 4340 .cart-option-modal--cancel { 4341 background: #f5f5f5; 4342 border: 1px solid #ddd; 4343 color: #333; 4344 } 4345 4346 .cart-option-modal--cancel:hover { 4347 background: #eee; 4348 } 4349 4350 .cart-option-modal--confirm { 4351 background: #000; 4352 border: 1px solid #000; 4353 color: #fff; 4354 } 4355 4356 .cart-option-modal--confirm:hover:not(:disabled) { 4357 background: #333; 4358 } 4359 4360 .cart-option-modal--confirm:disabled { 4361 opacity: 0.5;
4362 cursor: not-allowed; 4363 } 4364 4365 .cart-option-modal--error { 4366 text-align: center; 4367 padding: 40px 0; 4368 color: #c00; 4369 } 4370 4371 /* Unavailable option styling */ 4372 .cart-option-modal--option-select option:disabled { 4373 color: #ccc; 4374 } 4375</style> 4376
4377<script> 4378(function() { 4379 // Cart Option Modal Controller 4380 window.CartOptionModal = { 4381 modal: null, 4382 currentItem: null, 4383 productData: null, 4384 selectedVariant: null, 4385 4386 init: function() { 4387 this.modal = document.getElementById('cart-option-modal'); 4388 if (!this.modal) return; 4389 4390 this.bindEvents(); 4391 }, 4392 4393 bindEvents: function() { 4394 var self = this; 4395 4396 // Close button 4397 this.modal.querySelector('.cart-option-modal--close').addEventListener('click', function() { 4398 self.close(); 4399 }); 4400 4401 // Cancel button 4402 this.modal.querySelector('.cart-option-modal--cancel').addEventListener('click', function() { 4403 self.close(); 4404 }); 4405 4406 // Overlay click 4407 this.modal.querySelector('.cart-option-modal--overlay').addEventListener('click', function() { 4408 self.close(); 4409 }); 4410 4411 // Confirm button 4412 this.modal.querySelector('.cart-option-modal--confirm').addEventListener('click', function() { 4413 self.updateCart(); 4414 }); 4415 4416 // ESC key 4417 document.addEventListener('keydown', function(e) { 4418 if (e.key === 'Escape' && self.modal.style.display !== 'none') { 4419 self.close(); 4420 } 4421 }); 4422 }, 4423 4424 open: function(itemData) { 4425 // itemData: { key, productHandle, variantId, quantity, productUrl } 4426 console.log('CartOptionModal.open called with:', itemData); // Debug log 4427 this.currentItem = itemData; 4428 this.selectedVariant = null; 4429 4430 this.modal.style.display = 'flex'; 4431 document.body.style.overflow = 'hidden'; 4432 4433 this.showLoading(); 4434 this.fetchProduct(itemData.productHandle); 4435 }, 4436 4437 close: function() { 4438 this.modal.style.display = 'none'; 4439 document.body.style.overflow = ''; 4440 this.currentItem = null; 4441 this.productData = null; 4442 this.selectedVariant = null; 4443 }, 4444 4445 showLoading: function() { 4446 this.modal.querySelector('.cart-option-modal--loading').style.display = 'block'; 4447 this.modal.querySelector('.cart-option-modal--content').style.display = 'none'; 4448 this.modal.querySelector('.cart-option-modal--error').style.display = 'none'; 4449 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 4450 }, 4451 4452 showContent: function() { 4453 this.modal.querySelector('.cart-option-modal--loading').style.display = 'none'; 4454 this.modal.querySelector('.cart-option-modal--content').style.display = 'block'; 4455 this.modal.querySelector('.cart-option-modal--error').style.display = 'none'; 4456 }, 4457 4458 showError: function() { 4459 this.modal.querySelector('.cart-option-modal--loading').style.display = 'none'; 4460 this.modal.querySelector('.cart-option-modal--content').style.display = 'none'; 4461 this.modal.querySelector('.cart-option-modal--error').style.display = 'block'; 4462 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 4463 }, 4464 4465 fetchProduct: function(handle) { 4466 var self = this; 4467 4468 fetch('/products/' + handle + '.js') 4469 .then(function(response) { 4470 if (!response.ok) throw new Error('Product not found'); 4471 return response.json(); 4472 }) 4473 .then(function(product) { 4474 self.productData = product; 4475 self.renderOptions(product); 4476 }) 4477 .catch(function(error) { 4478 console.error('Failed to fetch product:', error); 4479 self.showError(); 4480 }); 4481 }, 4482 4483 renderOptions: function(product) { 4484 var self = this; 4485 4486 console.log('Product data:', product); // Debug log 4487 4488 // Product info 4489 var imageEl = this.modal.querySelector('.cart-option-modal--product-image'); 4490 var titleEl = this.modal.querySelector('.cart-option-modal--product-title'); 4491 4492 if (product.featured_image) { 4493 imageEl.src = product.featured_image; 4494 imageEl.style.display = 'block'; 4495 } else { 4496 imageEl.style.display = 'none'; 4497 } 4498 titleEl.textContent = product.title; 4499 4500 // Options 4501 var optionsContainer = this.modal.querySelector('.cart-option-modal--options'); 4502 optionsContainer.innerHTML = ''; 4503 4504 // Get current variant to pre-select options 4505 var currentVariantId = parseInt(self.currentItem.variantId); 4506 var currentVariant = product.variants.find(function(v) { 4507 return v.id === currentVariantId; 4508 }); 4509 4510 console.log('Current variant ID:', currentVariantId, 'Found:', currentVariant); // Debug log 4511 4512 // Power ìµì ë§ íì (Color ë± ë¤ë¥¸ ìµì ì íì¬ ê° ì ì§) 4513 // ê³ ì ë ìµì ê°ì ì ì¥ (Powerê° ìë ìµì ë¤) 4514 self.fixedOptions = {}; 4515 4516 if (product.options && product.options.length > 0) { 4517 product.options.forEach(function(optionName, index) { 4518 var displayName = typeof optionName === 'string' ? optionName : (optionName.name || optionName); 4519 4520 // Skip if option is "Title" and there's only one variant (default variant) 4521 if (displayName === 'Title' && product.variants.length === 1) { 4522 return; 4523 } 4524 4525 // Power ìµì ë§ ëë¡ë¤ì´ì¼ë¡ íì, ë머ì§ë ê³ ì
4526 var isPowerOption = displayName.toLowerCase() === 'power' || 4527 displayName.toLowerCase() === 'degree' || 4528 displayName.toLowerCase() === 'ëì'; 4529 4530 if (!isPowerOption) { 4531 // Powerê° ìë ìµì ì íì¬ ê° ê³ ì 4532 if (currentVariant) { 4533 var currentValue = currentVariant.options ? currentVariant.options[index] : currentVariant['option' + (index + 1)]; 4534 self.fixedOptions[index] = currentValue; 4535 } 4536 return; // ëë¡ë¤ì´ ìì± ì¤íµ 4537 } 4538 4539 var group = document.createElement('div'); 4540 group.className = 'cart-option-modal--option-group'; 4541 4542 var label = document.createElement('label'); 4543 label.className = 'cart-option-modal--option-label'; 4544 label.textContent = displayName; 4545 4546 var select = document.createElement('select'); 4547 select.className = 'cart-option-modal--option-select'; 4548 select.dataset.optionIndex = index; 4549 4550 // íì¬ Color(ëë ë¤ë¥¸ ê³ ì ìµì )ì í´ë¹íë variantë¤ë§ íí°ë§ 4551 var filteredVariants = product.variants.filter(function(variant) { 4552 // 모ë ê³ ì ìµì ê³¼ ì¼ì¹íëì§ íì¸ 4553 for (var fixedIndex in self.fixedOptions) { 4554 var fixedValue = self.fixedOptions[fixedIndex]; 4555 var variantValue = variant.options ? variant.options[fixedIndex] : variant['option' + (parseInt(fixedIndex) + 1)]; 4556 if (variantValue !== fixedValue) { 4557 return false; 4558 } 4559 } 4560 return true; 4561 }); 4562 4563 // Extract unique Power values from filtered variants 4564 var valuesSet = {};
4565 filteredVariants.forEach(function(variant) { 4566 var optValue = variant.options ? variant.options[index] : variant['option' + (index + 1)]; 4567 if (optValue && !valuesSet[optValue]) { 4568 valuesSet[optValue] = true; 4569 } 4570 }); 4571 4572 var values = Object.keys(valuesSet); 4573 4574 // Power ê° ì ë ¬ (ì«ìì) 4575 values.sort(function(a, b) { 4576 var numA = parseFloat(a) || 0; 4577 var numB = parseFloat(b) || 0; 4578 return numA - numB; 4579 }); 4580 4581 console.log('Power option values:', values); // Debug log 4582 4583 values.forEach(function(value) { 4584 var opt = document.createElement('option'); 4585 opt.value = value; 4586 opt.textContent = value; 4587 4588 // Pre-select current variant's option 4589 if (currentVariant) { 4590 var currentValue = currentVariant.options ? currentVariant.options[index] : currentVariant['option' + (index + 1)]; 4591 if (currentValue === value) { 4592 opt.selected = true; 4593 } 4594 } 4595 4596 select.appendChild(opt); 4597 }); 4598 4599 select.addEventListener('change', function() { 4600 self.onOptionChange(); 4601 }); 4602 4603 group.appendChild(label); 4604 group.appendChild(select); 4605 optionsContainer.appendChild(group); 4606 }); 4607 } 4608 4609 this.showContent(); 4610 this.onOptionChange(); 4611 }, 4612 4613 onOptionChange: function() { 4614 var self = this; 4615 var selects = this.modal.querySelectorAll('.cart-option-modal--option-select'); 4616 4617 // ì íë ìµì ê³¼ ê³ ì ìµì ì í©ì³ì ì ì²´ ìµì ë°°ì´ ìì± 4618 var allOptions = []; 4619 var optionCount = this.productData.options ? this.productData.options.length : 0; 4620 4621 for (var i = 0; i < optionCount; i++) { 4622 if (self.fixedOptions && self.fixedOptions[i] !== undefined) { 4623 // ê³ ì ë ìµì (Color ë±) 4624 allOptions[i] = self.fixedOptions[i]; 4625 } 4626 } 4627 4628 // ëë¡ë¤ì´ìì ì íë ê° ì¶ê° (Power) 4629 selects.forEach(function(select) { 4630 var optionIndex = parseInt(select.dataset.optionIndex); 4631 allOptions[optionIndex] = select.value; 4632 }); 4633 4634 console.log('All options (fixed + selected):', allOptions); // Debug log 4635 4636 // Find matching variant 4637 var variant = this.productData.variants.find(function(v) { 4638 if (v.options && v.options.length > 0) { 4639 return allOptions.every(function(opt, index) { 4640 return v.options[index] === opt; 4641 }); 4642 } 4643 return allOptions.every(function(opt, index) { 4644 return v['option' + (index + 1)] === opt; 4645 }); 4646 }); 4647 4648 console.log('Found variant:', variant); // Debug log 4649 4650 this.selectedVariant = variant; 4651 4652 // Update price 4653 var priceEl = this.modal.querySelector('.cart-option-modal--price'); 4654 if (variant) { 4655 // Format price - use simple formatting (price is in cents) 4656 var formattedPrice; 4657 try { 4658 // Try Shopify.formatMoney with proper money format 4659 var moneyFormat = (window.theme && window.theme.moneyFormat) || 4660 (window.Shopify && window.Shopify.money_format) || 4661 '$'; 4662 if (window.Shopify && typeof window.Shopify.formatMoney === 'function' && moneyFormat) { 4663 formattedPrice = Shopify.formatMoney(variant.price, moneyFormat); 4664 } else { 4665 throw new Error('formatMoney not available'); 4666 } 4667 } catch (e) { 4668 // Fallback: simple dollar format (price is in cents) 4669 formattedPrice = '$' + (variant.price / 100).toFixed(2); 4670 } 4671 priceEl.textContent = formattedPrice; 4672 4673 // Enable confirm if different from current 4674 var isDifferent = variant.id !== this.currentItem.variantId; 4675 var isAvailable = variant.available; 4676 4677 this.modal.querySelector('.cart-option-modal--confirm').disabled = !isDifferent || !isAvailable; 4678 4679 if (!isAvailable) { 4680 priceEl.textContent += ' (Sold out)'; 4681 } 4682 } else { 4683 priceEl.textContent = 'Unavailable'; 4684 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 4685 } 4686 }, 4687 4688 updateCart: function() { 4689 var self = this; 4690 4691 if (!this.selectedVariant || !this.currentItem) return; 4692 4693 var confirmBtn = this.modal.querySelector('.cart-option-modal--confirm'); 4694 confirmBtn.disabled = true; 4695 confirmBtn.textContent = 'Updating...'; 4696 4697 // Step 0: Get current cart to retrieve item properties and check existing variants 4698 fetch('/cart.js') 4699 .then(function(response) { 4700 return response.json(); 4701 }) 4702 .then(function(cart) { 4703 // Find current item in cart to get properties 4704 var currentCartItem = cart.items.find(function(item) { 4705 return item.key === self.currentItem.key; 4706 }); 4707 4708 var itemProperties = currentCartItem && currentCartItem.properties ? currentCartItem.properties : null; 4709 var currentQuantity = currentCartItem ? currentCartItem.quantity : self.currentItem.quantity; 4710 4711 console.log('Item properties:', itemProperties); // Debug log 4712 console.log('Current quantity from cart:', currentQuantity); // Debug log 4713 4714 // ì variantê° ì´ë¯¸ ì¹´í¸ì ìëì§ íì¸ 4715 var existingItem = cart.items.find(function(item) { 4716 // ê°ì variant IDì´ë©´ì íì¬ ë³ê²½íë ¤ë ìì´í ì´ ìë ê²½ì° 4717 return item.variant_id === self.selectedVariant.id && item.key !== self.currentItem.key; 4718 }); 4719 4720 var existingQuantity = existingItem ? existingItem.quantity : 0; 4721 var totalQuantity = currentQuantity + existingQuantity; 4722 4723 console.log('Existing item with same variant:', existingItem); // Debug log 4724 console.log('Existing quantity:', existingQuantity, 'Total quantity:', totalQuantity); // Debug log 4725 4726 // /cart/update.js를 ì¬ì©íì¬ í ë²ì ì²ë¦¬ 4727 // updates ê°ì²´: { variant_id: quantity } íì 4728 var updates = {}; 4729 4730 // 기존 ìì´í ì ê±° (ìë 0) 4731 updates[self.currentItem.variantId] = 0; 4732 4733 // ì´ë¯¸ ê°ì variantê° ì¹´í¸ì ìë¤ë©´ ê·¸ê²ë ìë ê³ì°ì í¬í¨ë¨ 4734 // ì variantì ìë ì¤ì 4735 updates[self.selectedVariant.id] = totalQuantity; 4736 4737 console.log('Cart updates:', updates); // Debug log 4738 4739 return fetch('/cart/update.js', { 4740 method: 'POST', 4741 headers: { 'Content-Type': 'application/json' }, 4742 body: JSON.stringify({ updates: updates }) 4743 }); 4744 }) 4745 .then(function(response) { 4746 return response.json(); 4747 }) 4748 .then(function() { 4749 // Update cart HTML without page reload 4750 self.close(); 4751 4752 // themeì Cart í´ëì¤ ì¬ì©íì¬ ì¹´í¸ HTML ì ë°ì´í¸ 4753 // Cart í´ëì¤ë ì ì ëë theme.cartë¡ ì ê·¼ ê°ë¥ 4754 var CartClass = (typeof Cart !== 'undefined') ? Cart : (window.theme && window.theme.cart); 4755 4756 if (CartClass && typeof CartClass.updateAllHtml === 'function') { 4757 CartClass.fetchTotals(); 4758 CartClass.updateAllHtml(true); 4759 } else { 4760 // fallback: Cart í´ëì¤ê° ìì¼ë©´ íì´ì§ ìë¡ê³ 침 4761 console.log('Cart class not found, falling back to page reload'); 4762 window.location.reload(); 4763 } 4764 }) 4765 .catch(function(error) { 4766 console.error('Failed to update cart:', error); 4767 console.error('Current item:', self.currentItem); 4768 console.error('Selected variant:', self.selectedVariant); 4769 confirmBtn.disabled = false;
4770 confirmBtn.textContent = 'Update Option'; 4771 // alert('Failed to update. Please try again.'); 4772 }); 4773 } 4774 }; 4775 4776 // Initialize when DOM is ready 4777 if (document.readyState === 'loading') { 4778 document.addEventListener('DOMContentLoaded', function() { 4779 CartOptionModal.init(); 4780 }); 4781 } else { 4782 CartOptionModal.init(); 4783 } 4784})(); 4785</script>
4785 4786 4787
4788<script> 4789 // Change Option & Remove í´ë¦ ì´ë²¤í¸ ë°ì¸ë© (Desktop - ëª¨ë¬ ë°©ì) 4790 (function() { 4791 function bindChangeOptionEvents() { 4792 document.querySelectorAll('.cart--root[data-view="desktop"] .cart--item--change-option, .cart--root[data-view="drawer-desktop"] .cart--item--change-option').forEach(function(btn) { 4793 if (btn.dataset.bound) return; 4794 btn.dataset.bound = 'true'; 4795 4796 btn.addEventListener('click', function(e) { 4797 e.preventDefault(); 4798 if (window.CartOptionModal) { 4799 window.CartOptionModal.open({ 4800 key: this.dataset.itemKey, 4801 variantId: this.dataset.variantId, 4802 productHandle: this.dataset.productHandle, 4803 quantity: parseInt(this.dataset.quantity) 4804 }); 4805 } 4806 }); 4807 4808 btn.addEventListener('keydown', function(e) { 4809 if (e.key === 'Enter') this.click(); 4810 }); 4811 }); 4812 } 4813 4814 function bindRemoveEvents() { 4815 document.querySelectorAll('.cart--root[data-view="desktop"] .cart--item--remove-btn, .cart--root[data-view="drawer-desktop"] .cart--item--remove-btn').forEach(function(btn) { 4816 if (btn.dataset.bound) return; 4817 btn.dataset.bound = 'true'; 4818 4819 btn.addEventListener('click', function(e) { 4820 e.preventDefault(); 4821 var cartRoot = this.closest('.cart--root'); 4822 var cartItem = this.closest('.cart--item'); 4823 if (cartRoot && cartItem && cartRoot.tryToUpdateQuantity) { 4824 var lineNum = cartItem.getAttribute('data-line-num'); 4825 cartRoot.tryToUpdateQuantity(lineNum, 0); 4826 } 4827 }); 4828 4829 btn.addEventListener('keydown', function(e) { 4830 if (e.key === 'Enter') this.click(); 4831 }); 4832 }); 4833 } 4834 4835 function bindAllEvents() { 4836 bindChangeOptionEvents(); 4837 bindRemoveEvents(); 4838 } 4839 4840 // Initial bind 4841 if (document.readyState === 'loading') { 4842 document.addEventListener('DOMContentLoaded', bindAllEvents); 4843 } else { 4844 bindAllEvents(); 4845 } 4846 4847 // Re-bind on dynamic updates 4848 var observer = new MutationObserver(function() { 4849 bindAllEvents(); 4850 }); 4851 observer.observe(document.body, { childList: true, subtree: true }); 4852 })(); 4853</script>
4853 4854 4855<style> 4856 /* ===== 1. íì/ì¨ê¹ ì ì´ ===== */ 4857 4858 .cart--root[data-view=mobile], 4859 .cart--root[data-view=drawer-mobile] { 4860 max-width: var(--max-width--large); 4861 margin: 0 auto; 4862 display: block; 4863 } 4864 4865 @media only screen and (min-width: 1081px) { 4866 .cart--root[data-view=mobile] { 4867 display: none; 4868 } 4869 } 4870 4871 @media only screen and (min-width: 1081px) { 4872 .cart--root[data-view=drawer-mobile] { 4873 display: none; 4874 } 4875 } 4876 4877 /* ===== 2. ê³µíµ ì¤íì¼ (mobile + drawer-mobile) ===== */ 4878 4879 .cart--root[data-view=mobile][data-has-items=false] .cart--form, 4880 .cart--root[data-view=drawer-mobile][data-has-items=false] .cart--form { 4881 display: none; 4882 } 4883 4884 .cart--root[data-view=mobile] .cart--error, 4885 .cart--root[data-view=drawer-mobile] .cart--error { 4886 color: var(--color--fail); 4887 } 4888 4889 .cart--root[data-view=mobile] .cart--headings, 4890 .cart--root[data-view=drawer-mobile] .cart--headings { 4891 display: none; 4892 } 4893 4894 .cart--root[data-view=mobile] .cart--body, 4895 .cart--root[data-view=drawer-mobile] .cart--body { 4896 display: block; 4897 border: 0; 4898 } 4899 4900 /* --- cart--item --- */ 4901 4902 .cart--root[data-view=mobile] .cart--item, 4903 .cart--root[data-view=drawer-mobile] .cart--item { 4904 padding: 15px 10px; 4905 display: flex !important; 4906 flex-direction: row !important; 4907 flex-wrap: wrap !important; 4908 align-items: flex-start; 4909 gap: 15px; 4910 border: 0; 4911 border-bottom: 1px solid #eee; 4912 } 4913 4914 .cart--root[data-view=mobile] .cart--item--image, 4915 .cart--root[data-view=drawer-mobile] .cart--item--image { 4916 flex-shrink: 0; 4917 width: 100px !important; 4918 align-self: flex-start; 4919 } 4920 4921 .cart--root[data-view=mobile] .cart--item--image a, 4922 .cart--root[data-view=drawer-mobile] .cart--item--image a { 4923 display: block; 4924 } 4925 4926 .cart--root[data-view=mobile] .cart--item--image img, 4927 .cart--root[data-view=drawer-mobile] .cart--item--image img { 4928 width: 100%; 4929 height: auto; 4930 } 4931 4932 .cart--root[data-view=mobile] .cart--item--content, 4933 .cart--root[data-view=drawer-mobile] .cart--item--content { 4934 flex: 1; 4935 display: flex; 4936 flex-direction: column; 4937 gap: 8px; 4938 min-width: 0; 4939 } 4940 4941 .cart--root[data-view=mobile] .cart--item--title, 4942 .cart--root[data-view=drawer-mobile] .cart--item--title { 4943 display: flex; 4944 flex-direction: column; 4945 gap: 3px; 4946 line-height: 1.4; 4947 padding: 0; 4948 border: 0; 4949 text-align: left; 4950 } 4951 4952 .cart--root[data-view=mobile] .cart--item--title div:nth-child(2), 4953 .cart--root[data-view=mobile] .cart--item--variant-name, 4954 .cart--root[data-view=drawer-mobile] .cart--item--title div:nth-child(2), 4955 .cart--root[data-view=drawer-mobile] .cart--item--variant-name { 4956 display: block !important; 4957 font-size: 12px; 4958 color: #666; 4959 } 4960 4961 .cart--root[data-view=mobile] .cart--item--price, 4962 .cart--root[data-view=drawer-mobile] .cart--item--price { 4963 padding: 0; 4964 border: 0; 4965 text-align: left; 4966 } 4967 4968 /* --- cart--item--actions (Change Option | Remove) --- */ 4969 4970 .cart--root[data-view=mobile] .cart--item--actions, 4971 .cart--root[data-view=drawer-mobile] .cart--item--actions { 4972 margin-top: 8px; 4973 font-size: 12px; 4974 } 4975 4976 .cart--root[data-view=mobile] .cart--item--change-option, 4977 .cart--root[data-view=drawer-mobile] .cart--item--change-option { 4978 color: var(--color--body); 4979 text-decoration: underline; 4980 cursor: pointer; 4981 font-weight: bold; 4982 } 4983 4984 .cart--root[data-view=mobile] .cart--item--change-option:hover, 4985 .cart--root[data-view=drawer-mobile] .cart--item--change-option:hover { 4986 color: var(--color--body); 4987 } 4988 4989 .cart--root[data-view=mobile] .cart--item--divider, 4990 .cart--root[data-view=drawer-mobile] .cart--item--divider { 4991 color: #ccc; 4992 margin: 0 8px; 4993 } 4994 4995 .cart--root[data-view=mobile] .cart--item--remove-btn, 4996 .cart--root[data-view=drawer-mobile] .cart--item--remove-btn { 4997 color: #666; 4998 text-decoration: underline; 4999 cursor: pointer; 5000 font-weight: bold; 5001 } 5002 5003 .cart--root[data-view=mobile] .cart--item--remove-btn:hover, 5004 .cart--root[data-view=drawer-mobile] .cart--item--remove-btn:hover { 5005 color: #c00; 5006 } 5007 5008 /* --- cart--item--bottom (qty + total) --- */ 5009 5010 .cart--root[data-view=mobile] .cart--item--bottom, 5011 .cart--root[data-view=drawer-mobile] .cart--item--bottom { 5012 width: 100%; 5013 display: flex; 5014 flex-direction: row; 5015 justify-content: space-between; 5016 align-items: flex-start; 5017 padding-top: 10px; 5018 border-top: 1px dashed #eee; 5019 margin-top: 5px; 5020 } 5021 5022 .cart--root[data-view=mobile] .cart--item--qty-total, 5023 .cart--root[data-view=drawer-mobile] .cart--item--qty-total { 5024 display: flex; 5025 flex-direction: row; 5026 align-items: center; 5027 justify-content: space-between; 5028 gap: 10px; 5029 min-height: 32px; 5030 } 5031 5032 .cart--root[data-view=mobile] .cart--item--quantity, 5033 .cart--root[data-view=drawer-mobile] .cart--item--quantity { 5034 padding: 0; 5035 border: 0; 5036 text-align: left; 5037 display: flex; 5038 align-items: center; 5039 } 5040 5041 .cart--root[data-view=mobile] .cart--item--quantity .disclosure--header, 5042 .cart--root[data-view=drawer-mobile] .cart--item--quantity .disclosure--header { 5043 display: none; 5044 } 5045 5046 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--remove, 5047 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--remove { 5048 display: none; 5049 } 5050 5051 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--container, 5052 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--container { 5053 height: 28px; 5054 border: 1px solid #ccc; 5055 border-radius: 4px; 5056 display: flex; 5057 align-items: center; 5058 justify-content: center; 5059 width: auto; 5060 } 5061 5062 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--input, 5063 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--input { 5064 width: 30px !important;
5065 height: 26px !important; 5066 line-height: 26px !important; 5067 font-size: 12px !important; 5068 border: none !important; 5069 background: transparent !important; 5070 text-align: center !important; 5071 color: #000 !important; 5072 -webkit-appearance: none; 5073 -moz-appearance: textfield; 5074 padding: 0 !important; 5075 } 5076 5077 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--minus, 5078 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--plus, 5079 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--minus, 5080 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--plus { 5081 width: 24px; 5082 height: 26px; 5083 border: none !important; 5084 background: transparent; 5085 padding: 0; 5086 display: flex; 5087 align-items: center; 5088 justify-content: center; 5089 } 5090 5091 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--minus svg, 5092 .cart--root[data-view=mobile] .cart--item--quantity .quantity-selector--plus svg, 5093 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--minus svg, 5094 .cart--root[data-view=drawer-mobile] .cart--item--quantity .quantity-selector--plus svg { 5095 width: 10px; 5096 height: 10px; 5097 } 5098 5099 .cart--root[data-view=mobile] .cart--item--total, 5100 .cart--root[data-view=drawer-mobile] .cart--item--total { 5101 padding: 0; 5102 margin: 0; 5103 border: 0; 5104 text-align: right; 5105 font-size: 14px; 5106 font-weight: bold; 5107 display: flex; 5108 flex-direction: row; 5109 align-items: center; 5110 gap: 8px; 5111 height: 28px; 5112 line-height: 28px; 5113 } 5114 5115 /* --- cart--footer ê³µíµ --- */ 5116 5117 .cart--root[data-view=mobile] .cart--footer, 5118 .cart--root[data-view=drawer-mobile] .cart--footer { 5119 background: #fff; 5120 padding: 10px 15px; 5121 border: 0; 5122 border-top: 1px solid #eee; 5123 box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1); 5124 } 5125 5126 .cart--root[data-view=mobile] .cart--notes, 5127 .cart--root[data-view=drawer-mobile] .cart--notes { 5128 text-align: center; 5129 max-width: 100%; 5130 padding-bottom: var(--spacing--block); 5131 } 5132 5133 .cart--root[data-view=mobile] .cart--notes--textarea, 5134 .cart--root[data-view=drawer-mobile] .cart--notes--textarea { 5135 height: 80px; 5136 margin: 0; 5137 padding: calc(var(--spacing--item) / 2); 5138 } 5139 5140 .cart--root[data-view=mobile] .cart--totals, 5141 .cart--root[data-view=drawer-mobile] .cart--totals { 5142 text-align: left; 5143 } 5144 5145 .cart--root[data-view=mobile] .cart--totals > :not(:last-child), 5146 .cart--root[data-view=drawer-mobile] .cart--totals > :not(:last-child) { 5147 padding-bottom: 8px; 5148 } 5149 5150 .cart--root[data-view=mobile] .cart--sub-total > :not(:last-child), 5151 .cart--root[data-view=drawer-mobile] .cart--sub-total > :not(:last-child) { 5152 padding-bottom: var(--spacing--1); 5153 } 5154 5155 .cart--root[data-view=mobile] .cart--discounts > :not(:last-child), 5156 .cart--root[data-view=drawer-mobile] .cart--discounts > :not(:last-child) { 5157 padding-bottom: var(--spacing--1); 5158 } 5159 5160 .cart--root[data-view=mobile] .cart--total, 5161 .cart--root[data-view=drawer-mobile] .cart--total { 5162 display: flex; 5163 justify-content: space-between; 5164 align-items: center; 5165 } 5166 5167 .cart--root[data-view=mobile] .cart--total > :not(:last-child), 5168 .cart--root[data-view=drawer-mobile] .cart--total > :not(:last-child) { 5169 padding-bottom: 0; 5170 } 5171 5172 .cart--root[data-view=mobile] .cart--total--text, 5173 .cart--root[data-view=drawer-mobile] .cart--total--text { 5174 font-size: 14px; 5175 font-weight: 600; 5176 } 5177 5178 .cart--root[data-view=mobile] .cart--total--price, 5179 .cart--root[data-view=drawer-mobile] .cart--total--price { 5180 font-size: 16px; 5181 font-weight: 700; 5182 } 5183 5184 /* --- cart--nav --- */ 5185 5186 .cart--root[data-view=mobile] .cart--nav, 5187 .cart--root[data-view=drawer-mobile] .cart--nav { 5188 display: flex; 5189 justify-content: space-between; 5190 align-items: center; 5191 padding-bottom: 0; 5192 gap: 10px; 5193 } 5194 5195 .cart--root[data-view=mobile] .cart--continue-shopping, 5196 .cart--root[data-view=drawer-mobile] .cart--continue-shopping { 5197 margin: 0; 5198 flex-shrink: 0; 5199 } 5200 5201 .cart--root[data-view=mobile] .cart--continue-shopping a::before, 5202 .cart--root[data-view=drawer-mobile] .cart--continue-shopping a::before { 5203 content: 'â'; 5204 margin-right: 5px; 5205 } 5206 5207 .cart--root[data-view=mobile] .cart--continue-shopping a, 5208 .cart--root[data-view=mobile] .cart--continue-shopping p, 5209 .cart--root[data-view=drawer-mobile] .cart--continue-shopping a, 5210 .cart--root[data-view=drawer-mobile] .cart--continue-shopping p { 5211 font-size: 12px; 5212 color: #666; 5213 background: transparent !important; 5214 padding: 0 !important; 5215 cursor: pointer; 5216 margin: 0; 5217 } 5218 5219 .cart--root[data-view=mobile] .cart--checkout-button, 5220 .cart--root[data-view=drawer-mobile] .cart--checkout-button { 5221 flex: 1; 5222 max-width: 200px; 5223 border-radius: 5px; 5224 font-size: 14px; 5225 font-weight: 600; 5226 padding: 10px 15px; 5227 } 5228 5229 .cart--root[data-view=mobile] .cart--checkout-button[disabled], 5230 .cart--root[data-view=drawer-mobile] .cart--checkout-button[disabled] { 5231 pointer-events: none; 5232 opacity: .7; 5233 } 5234 5235 .cart--root[data-view=mobile] .cart--checkout-button[data-loading=true] .cart-button--text, 5236 .cart--root[data-view=mobile] .cart--checkout-button[disabled] .cart-button--text, 5237 .cart--root[data-view=drawer-mobile] .cart--checkout-button[data-loading=true] .cart-button--text, 5238 .cart--root[data-view=drawer-mobile] .cart--checkout-button[disabled] .cart-button--text { 5239 opacity: 0; 5240 visibility: hidden; 5241 } 5242 5243 .cart--root[data-view=mobile] .cart--checkout-button[data-loading=true] .cart-button--spinner, 5244 .cart--root[data-view=mobile] .cart--checkout-button[disabled] .cart-button--spinner, 5245 .cart--root[data-view=drawer-mobile] .cart--checkout-button[data-loading=true] .cart-button--spinner, 5246 .cart--root[data-view=drawer-mobile] .cart--checkout-button[disabled] .cart-button--spinner { 5247 display: block; 5248 } 5249 5250 .cart--root[data-view=mobile] .cart-button--spinner, 5251 .cart--root[data-view=drawer-mobile] .cart-button--spinner { 5252 display: none; 5253 height: 100%; 5254 width: 100%; 5255 position: absolute; 5256 top: 0; 5257 left: 0; 5258 } 5259 5260 /* --- no-items, ì¨ê¹ ì²ë¦¬ --- */ 5261 5262 .cart--root[data-view=mobile] .cart--no-items, 5263 .cart--root[data-view=drawer-mobile] .cart--no-items { 5264 text-align: center; 5265 padding-top: 50px; 5266 padding-bottom: 150px; 5267 } 5268 5269 .cart--root[data-view=mobile][data-has-items=true] .cart--no-items, 5270 .cart--root[data-view=drawer-mobile][data-has-items=true] .cart--no-items { 5271 display: none; 5272 } 5273 5274 .cart--root[data-view=mobile] .cart--tax-info, 5275 .cart--root[data-view=mobile] .cart--additional-buttons, 5276 .cart--root[data-view=drawer-mobile] .cart--tax-info, 5277 .cart--root[data-view=drawer-mobile] .cart--additional-buttons { 5278 display: none !important; 5279 } 5280 5281 /* ===== 3. Cart Page ì ì© ì¤ë²ë¼ì´ë ===== */ 5282 5283 .cart--root[data-view=mobile] .cart--footer { 5284 position: sticky; 5285 bottom: 0; 5286 left: 0; 5287 right: 0; 5288 z-index: 100; 5289 } 5290 5291 /* ===== 4. Drawer ì ì© ì¤ë²ë¼ì´ë ===== */ 5292 5293 .cart--root[data-view=drawer-mobile] { 5294 padding: 0; 5295 } 5296 5297 .cart--root[data-view=drawer-mobile] .cart--form { 5298 min-height: calc(92vh - 200px); 5299 display: flex; 5300 flex-direction: column; 5301 } 5302 5303 .cart--root[data-view=drawer-mobile] .cart--body { 5304 flex: 1; 5305 } 5306 5307 .cart--root[data-view=drawer-mobile] .cart--footer { 5308 position: sticky; 5309 bottom: 0; 5310 z-index: 1; 5311 } 5312 5313</style><cart-root 5314 class="cart--root" 5315 data-section-id=""
5316 data-view="drawer-mobile" 5317 data-has-items="false" 5318 5319> 5320 <form class="cart--form" action="/cart" method="post" novalidate=""> 5321 <div class="cart--body"></div> 5322 5323 <div 5324 class="cart--footer" 5325 5326 ><div class="cart--totals"><div class="cart--total"> 5327 <div class="cart--total--text" data-item="block-heading">Total</div> 5328 <div class="cart--total--price money" data-item="accent-text"><span class=money>$0.00</span></div> 5329 </div> 5330 5331 <div class="cart--tax-info" data-item="paragraph">You can add your discount codes at the next step</div> 5332 5333 <div class="cart--nav"> 5334 <div class="cart--continue-shopping" data-item="block-link"><p tabindex="0" aria-label="close" data-drawer-close>Continue Shopping</p></div> 5335 5336 <button 5337 type="submit" 5338 name="checkout" 5339 class="cart--checkout-button" 5340 data-item="button" 5341 data-text="Checkout" 5342 5343 > 5344 <span> 5345 <span class="cart-button--text">Checkout</span> 5346 <span class="cart-button--spinner"><svg class="icon--root icon--spinner"> 5347 <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" /> 5348 </svg></span> 5349 </span> 5350 </button> 5351 </div> 5352 </div> 5353 </div> 5354 </form> 5355 5356 <div class="cart--no-items" data-item="paragraph"> 5357 <span data-item="rte-content">Your cart is currently empty.<br> <a href="/collections/all-1">Click here to continue shopping</a>.</span> 5358 </div> 5359</cart-root><!-- Option Change Modal --> 5360<div id="cart-option-modal" class="cart-option-modal" style="display: none;"> 5361 <div class="cart-option-modal--overlay"></div> 5362 <div class="cart-option-modal--container"> 5363 <div class="cart-option-modal--header"> 5364 <h3 class="cart-option-modal--title">Change Option</h3> 5365 <button type="button" class="cart-option-modal--close" aria-label="Close">×</button> 5366 </div> 5367 <div class="cart-option-modal--body"> 5368 <div class="cart-option-modal--loading">Loading options...</div> 5369 <div class="cart-option-modal--content" style="display: none;"> 5370 <div class="cart-option-modal--product-info"> 5371 <img class="cart-option-modal--product-image" src="" alt=""> 5372 <div class="cart-option-modal--product-title"></div> 5373 </div> 5374 <div class="cart-option-modal--options"></div> 5375 <div class="cart-option-modal--price"></div> 5376 </div> 5377 <div class="cart-option-modal--error" style="display: none;"> 5378 Failed to load options. Please try again. 5379 </div> 5380 </div> 5381 <div class="cart-option-modal--footer"> 5382 <button type="button" class="cart-option-modal--cancel">Cancel</button> 5383 <button type="button" class="cart-option-modal--confirm" disabled>Update Option</button> 5384 </div> 5385 </div> 5386</div> 5387 5388<style> 5389 .cart-option-modal { 5390 position: fixed; 5391 top: 0; 5392 left: 0; 5393 right: 0; 5394 bottom: 0; 5395 z-index: 9999; 5396 display: flex; 5397 align-items: center; 5398 justify-content: center; 5399 } 5400 5401 .cart-option-modal--overlay { 5402 position: absolute; 5403 top: 0; 5404 left: 0; 5405 right: 0; 5406 bottom: 0; 5407 background: rgba(0, 0, 0, 0.5); 5408 } 5409 5410 .cart-option-modal--container { 5411 position: relative; 5412 background: #fff; 5413 border-radius: 8px; 5414 max-width: 400px; 5415 width: 90%; 5416 max-height: 80vh; 5417 overflow: hidden; 5418 display: flex; 5419 flex-direction: column; 5420 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); 5421 } 5422 5423 .cart-option-modal--header { 5424 display: flex; 5425 justify-content: space-between; 5426 align-items: center; 5427 padding: 15px 20px; 5428 border-bottom: 1px solid #eee; 5429 } 5430 5431 .cart-option-modal--title { 5432 margin: 0; 5433 font-size: 18px; 5434 font-weight: 600; 5435 } 5436 5437 .cart-option-modal--close { 5438 background: none; 5439 border: none; 5440 font-size: 24px; 5441 cursor: pointer; 5442 padding: 0; 5443 line-height: 1; 5444 color: #666; 5445 } 5446 5447 .cart-option-modal--close:hover { 5448 color: #000; 5449 } 5450 5451 .cart-option-modal--body { 5452 padding: 20px; 5453 overflow-y: auto; 5454 flex: 1; 5455 } 5456 5457 .cart-option-modal--loading { 5458 text-align: center; 5459 padding: 40px 0; 5460 color: #666; 5461 } 5462 5463 .cart-option-modal--product-info { 5464 display: flex; 5465 align-items: center; 5466 gap: 15px; 5467 margin-bottom: 20px; 5468 padding-bottom: 15px; 5469 border-bottom: 1px solid #eee; 5470 } 5471 5472 .cart-option-modal--product-image { 5473 width: 60px; 5474 height: 60px; 5475 object-fit: cover; 5476 border-radius: 4px; 5477 } 5478 5479 .cart-option-modal--product-title { 5480 font-weight: 500; 5481 font-size: 14px; 5482 } 5483 5484 .cart-option-modal--options { 5485 margin-bottom: 15px; 5486 } 5487 5488 .cart-option-modal--option-group { 5489 margin-bottom: 15px; 5490 } 5491 5492 .cart-option-modal--option-label { 5493 display: block; 5494 font-size: 12px; 5495 font-weight: 600; 5496 color: #666; 5497 margin-bottom: 8px; 5498 text-transform: uppercase; 5499 } 5500 5501 .cart-option-modal .cart-option-modal--option-select { 5502 width: 100% !important; 5503 padding: 10px 12px !important; 5504 border: 1px solid #ddd !important; 5505 border-radius: 4px !important; 5506 font-size: 14px !important; 5507 background: #fff !important; 5508 background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important; 5509 background-position: right 12px center !important; 5510 background-repeat: no-repeat !important; 5511 -webkit-appearance: none !important; 5512 -moz-appearance: none !important; 5513 appearance: none !important; 5514 height: auto !important; 5515 line-height: normal !important; 5516 cursor: pointer; 5517 margin: 0 !important; 5518 } 5519 5520 .cart-option-modal .cart-option-modal--option-select:focus { 5521 outline: none; 5522 border-color: #000 !important; 5523 } 5524 5525 .cart-option-modal--price { 5526 font-size: 16px; 5527 font-weight: 600; 5528 text-align: right; 5529 padding-top: 10px; 5530 border-top: 1px solid #eee; 5531 } 5532 5533 .cart-option-modal--footer { 5534 display: flex; 5535 gap: 10px; 5536 padding: 15px 20px; 5537 border-top: 1px solid #eee; 5538 } 5539 5540 .cart-option-modal--cancel, 5541 .cart-option-modal--confirm { 5542 flex: 1; 5543 padding: 12px 20px; 5544 border-radius: 4px; 5545 font-size: 14px; 5546 font-weight: 600; 5547 cursor: pointer; 5548 transition: all 0.2s; 5549 } 5550 5551 .cart-option-modal--cancel { 5552 background: #f5f5f5; 5553 border: 1px solid #ddd; 5554 color: #333; 5555 } 5556 5557 .cart-option-modal--cancel:hover { 5558 background: #eee; 5559 } 5560 5561 .cart-option-modal--confirm { 5562 background: #000; 5563 border: 1px solid #000; 5564 color: #fff; 5565 } 5566 5567 .cart-option-modal--confirm:hover:not(:disabled) { 5568 background: #333; 5569 } 5570 5571 .cart-option-modal--confirm:disabled { 5572 opacity: 0.5;
5573 cursor: not-allowed; 5574 } 5575 5576 .cart-option-modal--error { 5577 text-align: center; 5578 padding: 40px 0; 5579 color: #c00; 5580 } 5581 5582 /* Unavailable option styling */ 5583 .cart-option-modal--option-select option:disabled { 5584 color: #ccc; 5585 } 5586</style> 5587
5588<script> 5589(function() { 5590 // Cart Option Modal Controller 5591 window.CartOptionModal = { 5592 modal: null, 5593 currentItem: null, 5594 productData: null, 5595 selectedVariant: null, 5596 5597 init: function() { 5598 this.modal = document.getElementById('cart-option-modal'); 5599 if (!this.modal) return; 5600 5601 this.bindEvents(); 5602 }, 5603 5604 bindEvents: function() { 5605 var self = this; 5606 5607 // Close button 5608 this.modal.querySelector('.cart-option-modal--close').addEventListener('click', function() { 5609 self.close(); 5610 }); 5611 5612 // Cancel button 5613 this.modal.querySelector('.cart-option-modal--cancel').addEventListener('click', function() { 5614 self.close(); 5615 }); 5616 5617 // Overlay click 5618 this.modal.querySelector('.cart-option-modal--overlay').addEventListener('click', function() { 5619 self.close(); 5620 }); 5621 5622 // Confirm button 5623 this.modal.querySelector('.cart-option-modal--confirm').addEventListener('click', function() { 5624 self.updateCart(); 5625 }); 5626 5627 // ESC key 5628 document.addEventListener('keydown', function(e) { 5629 if (e.key === 'Escape' && self.modal.style.display !== 'none') { 5630 self.close(); 5631 } 5632 }); 5633 }, 5634 5635 open: function(itemData) { 5636 // itemData: { key, productHandle, variantId, quantity, productUrl } 5637 console.log('CartOptionModal.open called with:', itemData); // Debug log 5638 this.currentItem = itemData; 5639 this.selectedVariant = null; 5640 5641 this.modal.style.display = 'flex'; 5642 document.body.style.overflow = 'hidden'; 5643 5644 this.showLoading(); 5645 this.fetchProduct(itemData.productHandle); 5646 }, 5647 5648 close: function() { 5649 this.modal.style.display = 'none'; 5650 document.body.style.overflow = ''; 5651 this.currentItem = null; 5652 this.productData = null; 5653 this.selectedVariant = null; 5654 }, 5655 5656 showLoading: function() { 5657 this.modal.querySelector('.cart-option-modal--loading').style.display = 'block'; 5658 this.modal.querySelector('.cart-option-modal--content').style.display = 'none'; 5659 this.modal.querySelector('.cart-option-modal--error').style.display = 'none'; 5660 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 5661 }, 5662 5663 showContent: function() { 5664 this.modal.querySelector('.cart-option-modal--loading').style.display = 'none'; 5665 this.modal.querySelector('.cart-option-modal--content').style.display = 'block'; 5666 this.modal.querySelector('.cart-option-modal--error').style.display = 'none'; 5667 }, 5668 5669 showError: function() { 5670 this.modal.querySelector('.cart-option-modal--loading').style.display = 'none'; 5671 this.modal.querySelector('.cart-option-modal--content').style.display = 'none'; 5672 this.modal.querySelector('.cart-option-modal--error').style.display = 'block'; 5673 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 5674 }, 5675 5676 fetchProduct: function(handle) { 5677 var self = this; 5678 5679 fetch('/products/' + handle + '.js') 5680 .then(function(response) { 5681 if (!response.ok) throw new Error('Product not found'); 5682 return response.json(); 5683 }) 5684 .then(function(product) { 5685 self.productData = product; 5686 self.renderOptions(product); 5687 }) 5688 .catch(function(error) { 5689 console.error('Failed to fetch product:', error); 5690 self.showError(); 5691 }); 5692 }, 5693 5694 renderOptions: function(product) { 5695 var self = this; 5696 5697 console.log('Product data:', product); // Debug log 5698 5699 // Product info 5700 var imageEl = this.modal.querySelector('.cart-option-modal--product-image'); 5701 var titleEl = this.modal.querySelector('.cart-option-modal--product-title'); 5702 5703 if (product.featured_image) { 5704 imageEl.src = product.featured_image; 5705 imageEl.style.display = 'block'; 5706 } else { 5707 imageEl.style.display = 'none'; 5708 } 5709 titleEl.textContent = product.title; 5710 5711 // Options 5712 var optionsContainer = this.modal.querySelector('.cart-option-modal--options'); 5713 optionsContainer.innerHTML = ''; 5714 5715 // Get current variant to pre-select options 5716 var currentVariantId = parseInt(self.currentItem.variantId); 5717 var currentVariant = product.variants.find(function(v) { 5718 return v.id === currentVariantId; 5719 }); 5720 5721 console.log('Current variant ID:', currentVariantId, 'Found:', currentVariant); // Debug log 5722 5723 // Power ìµì ë§ íì (Color ë± ë¤ë¥¸ ìµì ì íì¬ ê° ì ì§) 5724 // ê³ ì ë ìµì ê°ì ì ì¥ (Powerê° ìë ìµì ë¤) 5725 self.fixedOptions = {}; 5726 5727 if (product.options && product.options.length > 0) { 5728 product.options.forEach(function(optionName, index) { 5729 var displayName = typeof optionName === 'string' ? optionName : (optionName.name || optionName); 5730 5731 // Skip if option is "Title" and there's only one variant (default variant) 5732 if (displayName === 'Title' && product.variants.length === 1) { 5733 return; 5734 } 5735 5736 // Power ìµì ë§ ëë¡ë¤ì´ì¼ë¡ íì, ë머ì§ë ê³ ì
5737 var isPowerOption = displayName.toLowerCase() === 'power' || 5738 displayName.toLowerCase() === 'degree' || 5739 displayName.toLowerCase() === 'ëì'; 5740 5741 if (!isPowerOption) { 5742 // Powerê° ìë ìµì ì íì¬ ê° ê³ ì 5743 if (currentVariant) { 5744 var currentValue = currentVariant.options ? currentVariant.options[index] : currentVariant['option' + (index + 1)]; 5745 self.fixedOptions[index] = currentValue; 5746 } 5747 return; // ëë¡ë¤ì´ ìì± ì¤íµ 5748 } 5749 5750 var group = document.createElement('div'); 5751 group.className = 'cart-option-modal--option-group'; 5752 5753 var label = document.createElement('label'); 5754 label.className = 'cart-option-modal--option-label'; 5755 label.textContent = displayName; 5756 5757 var select = document.createElement('select'); 5758 select.className = 'cart-option-modal--option-select'; 5759 select.dataset.optionIndex = index; 5760 5761 // íì¬ Color(ëë ë¤ë¥¸ ê³ ì ìµì )ì í´ë¹íë variantë¤ë§ íí°ë§ 5762 var filteredVariants = product.variants.filter(function(variant) { 5763 // 모ë ê³ ì ìµì ê³¼ ì¼ì¹íëì§ íì¸ 5764 for (var fixedIndex in self.fixedOptions) { 5765 var fixedValue = self.fixedOptions[fixedIndex]; 5766 var variantValue = variant.options ? variant.options[fixedIndex] : variant['option' + (parseInt(fixedIndex) + 1)]; 5767 if (variantValue !== fixedValue) { 5768 return false; 5769 } 5770 } 5771 return true; 5772 }); 5773 5774 // Extract unique Power values from filtered variants 5775 var valuesSet = {};
5776 filteredVariants.forEach(function(variant) { 5777 var optValue = variant.options ? variant.options[index] : variant['option' + (index + 1)]; 5778 if (optValue && !valuesSet[optValue]) { 5779 valuesSet[optValue] = true; 5780 } 5781 }); 5782 5783 var values = Object.keys(valuesSet); 5784 5785 // Power ê° ì ë ¬ (ì«ìì) 5786 values.sort(function(a, b) { 5787 var numA = parseFloat(a) || 0; 5788 var numB = parseFloat(b) || 0; 5789 return numA - numB; 5790 }); 5791 5792 console.log('Power option values:', values); // Debug log 5793 5794 values.forEach(function(value) { 5795 var opt = document.createElement('option'); 5796 opt.value = value; 5797 opt.textContent = value; 5798 5799 // Pre-select current variant's option 5800 if (currentVariant) { 5801 var currentValue = currentVariant.options ? currentVariant.options[index] : currentVariant['option' + (index + 1)]; 5802 if (currentValue === value) { 5803 opt.selected = true; 5804 } 5805 } 5806 5807 select.appendChild(opt); 5808 }); 5809 5810 select.addEventListener('change', function() { 5811 self.onOptionChange(); 5812 }); 5813 5814 group.appendChild(label); 5815 group.appendChild(select); 5816 optionsContainer.appendChild(group); 5817 }); 5818 } 5819 5820 this.showContent(); 5821 this.onOptionChange(); 5822 }, 5823 5824 onOptionChange: function() { 5825 var self = this; 5826 var selects = this.modal.querySelectorAll('.cart-option-modal--option-select'); 5827 5828 // ì íë ìµì ê³¼ ê³ ì ìµì ì í©ì³ì ì ì²´ ìµì ë°°ì´ ìì± 5829 var allOptions = []; 5830 var optionCount = this.productData.options ? this.productData.options.length : 0; 5831 5832 for (var i = 0; i < optionCount; i++) { 5833 if (self.fixedOptions && self.fixedOptions[i] !== undefined) { 5834 // ê³ ì ë ìµì (Color ë±) 5835 allOptions[i] = self.fixedOptions[i]; 5836 } 5837 } 5838 5839 // ëë¡ë¤ì´ìì ì íë ê° ì¶ê° (Power) 5840 selects.forEach(function(select) { 5841 var optionIndex = parseInt(select.dataset.optionIndex); 5842 allOptions[optionIndex] = select.value; 5843 }); 5844 5845 console.log('All options (fixed + selected):', allOptions); // Debug log 5846 5847 // Find matching variant 5848 var variant = this.productData.variants.find(function(v) { 5849 if (v.options && v.options.length > 0) { 5850 return allOptions.every(function(opt, index) { 5851 return v.options[index] === opt; 5852 }); 5853 } 5854 return allOptions.every(function(opt, index) { 5855 return v['option' + (index + 1)] === opt; 5856 }); 5857 }); 5858 5859 console.log('Found variant:', variant); // Debug log 5860 5861 this.selectedVariant = variant; 5862 5863 // Update price 5864 var priceEl = this.modal.querySelector('.cart-option-modal--price'); 5865 if (variant) { 5866 // Format price - use simple formatting (price is in cents) 5867 var formattedPrice; 5868 try { 5869 // Try Shopify.formatMoney with proper money format 5870 var moneyFormat = (window.theme && window.theme.moneyFormat) || 5871 (window.Shopify && window.Shopify.money_format) || 5872 '$'; 5873 if (window.Shopify && typeof window.Shopify.formatMoney === 'function' && moneyFormat) { 5874 formattedPrice = Shopify.formatMoney(variant.price, moneyFormat); 5875 } else { 5876 throw new Error('formatMoney not available'); 5877 } 5878 } catch (e) { 5879 // Fallback: simple dollar format (price is in cents) 5880 formattedPrice = '$' + (variant.price / 100).toFixed(2); 5881 } 5882 priceEl.textContent = formattedPrice; 5883 5884 // Enable confirm if different from current 5885 var isDifferent = variant.id !== this.currentItem.variantId; 5886 var isAvailable = variant.available; 5887 5888 this.modal.querySelector('.cart-option-modal--confirm').disabled = !isDifferent || !isAvailable; 5889 5890 if (!isAvailable) { 5891 priceEl.textContent += ' (Sold out)'; 5892 } 5893 } else { 5894 priceEl.textContent = 'Unavailable'; 5895 this.modal.querySelector('.cart-option-modal--confirm').disabled = true; 5896 } 5897 }, 5898 5899 updateCart: function() { 5900 var self = this; 5901 5902 if (!this.selectedVariant || !this.currentItem) return; 5903 5904 var confirmBtn = this.modal.querySelector('.cart-option-modal--confirm'); 5905 confirmBtn.disabled = true; 5906 confirmBtn.textContent = 'Updating...'; 5907 5908 // Step 0: Get current cart to retrieve item properties and check existing variants 5909 fetch('/cart.js') 5910 .then(function(response) { 5911 return response.json(); 5912 }) 5913 .then(function(cart) { 5914 // Find current item in cart to get properties 5915 var currentCartItem = cart.items.find(function(item) { 5916 return item.key === self.currentItem.key; 5917 }); 5918 5919 var itemProperties = currentCartItem && currentCartItem.properties ? currentCartItem.properties : null; 5920 var currentQuantity = currentCartItem ? currentCartItem.quantity : self.currentItem.quantity; 5921 5922 console.log('Item properties:', itemProperties); // Debug log 5923 console.log('Current quantity from cart:', currentQuantity); // Debug log 5924 5925 // ì variantê° ì´ë¯¸ ì¹´í¸ì ìëì§ íì¸ 5926 var existingItem = cart.items.find(function(item) { 5927 // ê°ì variant IDì´ë©´ì íì¬ ë³ê²½íë ¤ë ìì´í ì´ ìë ê²½ì° 5928 return item.variant_id === self.selectedVariant.id && item.key !== self.currentItem.key; 5929 }); 5930 5931 var existingQuantity = existingItem ? existingItem.quantity : 0; 5932 var totalQuantity = currentQuantity + existingQuantity; 5933 5934 console.log('Existing item with same variant:', existingItem); // Debug log 5935 console.log('Existing quantity:', existingQuantity, 'Total quantity:', totalQuantity); // Debug log 5936 5937 // /cart/update.js를 ì¬ì©íì¬ í ë²ì ì²ë¦¬ 5938 // updates ê°ì²´: { variant_id: quantity } íì 5939 var updates = {}; 5940 5941 // 기존 ìì´í ì ê±° (ìë 0) 5942 updates[self.currentItem.variantId] = 0; 5943 5944 // ì´ë¯¸ ê°ì variantê° ì¹´í¸ì ìë¤ë©´ ê·¸ê²ë ìë ê³ì°ì í¬í¨ë¨ 5945 // ì variantì ìë ì¤ì 5946 updates[self.selectedVariant.id] = totalQuantity; 5947 5948 console.log('Cart updates:', updates); // Debug log 5949 5950 return fetch('/cart/update.js', { 5951 method: 'POST', 5952 headers: { 'Content-Type': 'application/json' }, 5953 body: JSON.stringify({ updates: updates }) 5954 }); 5955 }) 5956 .then(function(response) { 5957 return response.json(); 5958 }) 5959 .then(function() { 5960 // Update cart HTML without page reload 5961 self.close(); 5962 5963 // themeì Cart í´ëì¤ ì¬ì©íì¬ ì¹´í¸ HTML ì ë°ì´í¸ 5964 // Cart í´ëì¤ë ì ì ëë theme.cartë¡ ì ê·¼ ê°ë¥ 5965 var CartClass = (typeof Cart !== 'undefined') ? Cart : (window.theme && window.theme.cart); 5966 5967 if (CartClass && typeof CartClass.updateAllHtml === 'function') { 5968 CartClass.fetchTotals(); 5969 CartClass.updateAllHtml(true); 5970 } else { 5971 // fallback: Cart í´ëì¤ê° ìì¼ë©´ íì´ì§ ìë¡ê³ 침 5972 console.log('Cart class not found, falling back to page reload'); 5973 window.location.reload(); 5974 } 5975 }) 5976 .catch(function(error) { 5977 console.error('Failed to update cart:', error); 5978 console.error('Current item:', self.currentItem); 5979 console.error('Selected variant:', self.selectedVariant); 5980 confirmBtn.disabled = false;
5981 confirmBtn.textContent = 'Update Option'; 5982 // alert('Failed to update. Please try again.'); 5983 }); 5984 } 5985 }; 5986 5987 // Initialize when DOM is ready 5988 if (document.readyState === 'loading') { 5989 document.addEventListener('DOMContentLoaded', function() { 5990 CartOptionModal.init(); 5991 }); 5992 } else { 5993 CartOptionModal.init(); 5994 } 5995})(); 5996</script>
5996 5997 5998
5999<script> 6000 // Change Option & Remove í´ë¦ ì´ë²¤í¸ ë°ì¸ë© (Mobile - ëª¨ë¬ ë°©ì) 6001 (function() { 6002 function bindChangeOptionEvents() { 6003 document.querySelectorAll('.cart--root[data-view="mobile"] .cart--item--change-option, .cart--root[data-view="drawer-mobile"] .cart--item--change-option').forEach(function(btn) { 6004 if (btn.dataset.bound) return; 6005 btn.dataset.bound = 'true'; 6006 6007 btn.addEventListener('click', function(e) { 6008 e.preventDefault(); 6009 if (window.CartOptionModal) { 6010 window.CartOptionModal.open({ 6011 key: this.dataset.itemKey, 6012 variantId: this.dataset.variantId, 6013 productHandle: this.dataset.productHandle, 6014 quantity: parseInt(this.dataset.quantity) 6015 }); 6016 } 6017 }); 6018 6019 btn.addEventListener('keydown', function(e) { 6020 if (e.key === 'Enter') this.click(); 6021 }); 6022 }); 6023 } 6024 6025 function bindRemoveEvents() { 6026 document.querySelectorAll('.cart--root[data-view="mobile"] .cart--item--remove-btn, .cart--root[data-view="drawer-mobile"] .cart--item--remove-btn').forEach(function(btn) { 6027 if (btn.dataset.bound) return; 6028 btn.dataset.bound = 'true'; 6029 6030 btn.addEventListener('click', function(e) { 6031 e.preventDefault(); 6032 var cartRoot = this.closest('.cart--root'); 6033 var cartItem = this.closest('.cart--item'); 6034 if (cartRoot && cartItem && cartRoot.tryToUpdateQuantity) { 6035 var lineNum = cartItem.getAttribute('data-line-num'); 6036 cartRoot.tryToUpdateQuantity(lineNum, 0); 6037 } 6038 }); 6039 6040 btn.addEventListener('keydown', function(e) { 6041 if (e.key === 'Enter') this.click(); 6042 }); 6043 }); 6044 } 6045 6046 function bindAllEvents() { 6047 bindChangeOptionEvents(); 6048 bindRemoveEvents(); 6049 } 6050 6051 // Initial bind 6052 if (document.readyState === 'loading') { 6053 document.addEventListener('DOMContentLoaded', bindAllEvents); 6054 } else { 6055 bindAllEvents(); 6056 } 6057 6058 // Re-bind on dynamic updates 6059 var observer = new MutationObserver(function() { 6060 bindAllEvents(); 6061 }); 6062 observer.observe(document.body, { childList: true, subtree: true }); 6063 })(); 6064</script>
6064 6065 6066</div></div> 6067 6068 <div 6069 class="drawer--instance" 6070 data-side="left" 6071 aria-expanded="false" 6072 > 6073 <div 6074 class="drawer--container" 6075 data-view="y-menu" 6076 6077 ><div class="mobile-nav--logo" style="width: 35vw; padding: 2vw 4vw;"> 6078 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/unnamed.png?v=1614324765"> 6079</div> 6080 6081<div 6082 class="mobile-nav--header" 6083 6084><div class="mobile-nav--login" data-item="accent-text"><a href="/account/login"> 6085 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/usericon.svg?v=1712647257"> 6086 </a></div><div class="mobile-nav--wishlist"> 6087 <a href="/pages/wishlist"> 6088 <img src="https://cdn.shopify.com/s/files/1/0229/7688/8868/files/heart-line-svgrepo-com.svg?v=1713831293" style="padding: 3px"> 6089 </a> 6090 </div><div 6091 class="mobile-nav--search" 6092 data-item="accent-text" 6093 data-drawer-open="top" 6094 data-drawer-view="search" 6095 tabindex="0" 6096 > 6097 <img src="https://cdn.shopify.com/s/files/1/0238/6441/0189/files/searchicon.svg?v=1712647253"> 6098 </div></div> 6099 6100<div class="mobile-nav--menu" data-item="accent-text"></div> 6101<div 6102 class="mobile-nav--localization" 6103 6104></div> 6105 6106<div class="doubly-wrapper" style="float: unset; display: flex; justify-content: center;"></div></div> 6107 </div> 6108 6109 <div class="drawer--focus-trigger" tabindex="0"></div> 6110</drawer-root><div class="layout--navigation"> 6111 <button 6112 class="layout--close" 6113 aria-label="close" 6114 aria-hidden="true" 6115 ><svg class="icon--root icon--cross" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> 6116 <path d="M10 8.727 17.944.783l1.273 1.273L11.273 10l7.944 7.944-1.273 1.273L10 11.273l-7.944 7.944-1.273-1.273L8.727 10 .783 2.056 2.056.783 10 8.727Z" fill="#000" fill-rule="nonzero" /> 6117 </svg></button> 6118 6119 <button 6120 class="layout--previous" 6121 aria-hidden="true" 6122 data-modal-button="previous" 6123 ><div class="icon--root icon--prev"> 6124 <div></div> 6125 <div></div> 6126 <div></div> 6127 </div></button> 6128 6129 <button 6130 class="layout--next" 6131 aria-hidden="true" 6132 data-modal-button="next" 6133 ><div class="icon--root icon--next"> 6134 <div></div> 6135 <div></div> 6136 <div></div> 6137 </div></button> 6138</div><feedback-bar-root 6139 class="feedback-bar--root" 6140 data-transition-item="viewport" 6141 data-transition-type="slide-in" 6142 data-transition-trigger="custom" 6143 aria-hidden="true" 6144> 6145 <div 6146 id="feedback" 6147 class="feedback-bar--message" 6148 data-background-color="dark" 6149 data-translucent="true" 6150 data-light-text="true" 6151 data-item="accent-text" 6152 ></div> 6153
6153<script type="application/json"> 6154 { 6155 "copied": "Link copied to clipboard", 6156 "contact-form": "Thanks for contacting us! You will receive a receipt confirmation by email in a few minutes. If you didn't receive it, please check your spam folder. ", 6157 "email-invalid": "Please enter a valid email address", 6158 "newsletter": "Thanks for signing up!", 6159 "product-form": "We'll notify you when this becomes available", 6160 "product--no-items": "The max number of items have already been added", 6161 "product--one-item": "There is only one item left to add to the cart", 6162 "product--n-items": "There are only [num_items] items left to add to the cart" 6163 } 6164 </script>
6164 6165</feedback-bar-root></div><svg class="icon--root icon--defs"> 6166 <defs> 6167 <radialGradient id="instagram-hover" r="150%" cx="30%" cy="107%"> 6168 <stop offset="0%" stop-color="#fdf497" /> 6169 <stop offset="5%" stop-color="#fdf497" /> 6170 <stop offset="45%" stop-color="#fd5949" /> 6171 <stop offset="60%" stop-color="#d6249f" /> 6172 <stop offset="90%" stop-color="#285aeb" /> 6173 </radialGradient> 6174 <symbol id="loading-spinner" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid"> 6175 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13"> 6176 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.8391608391608392s" repeatCount="indefinite" /> 6177 </rect> 6178 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(27.692 50 50)"> 6179 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.7692307692307692s" repeatCount="indefinite" /> 6180 </rect> 6181 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(55.385 50 50)"> 6182 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.6993006993006993s" repeatCount="indefinite" /> 6183 </rect> 6184 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(83.077 50 50)"> 6185 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.6293706293706294s" repeatCount="indefinite" /> 6186 </rect> 6187 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(110.77 50 50)"> 6188 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.5594405594405594s" repeatCount="indefinite" /> 6189 </rect> 6190 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(138.462 50 50)"> 6191 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.4895104895104895s" repeatCount="indefinite" /> 6192 </rect> 6193 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(166.154 50 50)"> 6194 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.4195804195804196s" repeatCount="indefinite" /> 6195 </rect> 6196 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(193.846 50 50)"> 6197 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.34965034965034963s" repeatCount="indefinite" /> 6198 </rect> 6199 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(221.538 50 50)"> 6200 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.2797202797202797s" repeatCount="indefinite" /> 6201 </rect> 6202 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(249.23 50 50)"> 6203 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.2097902097902098s" repeatCount="indefinite" /> 6204 </rect> 6205 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(276.923 50 50)"> 6206 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.13986013986013984s" repeatCount="indefinite" /> 6207 </rect> 6208 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(304.615 50 50)"> 6209 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.06993006993006992s" repeatCount="indefinite" /> 6210 </rect> 6211 <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(332.308 50 50)"> 6212 <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="0s" repeatCount="indefinite" /> 6213 </rect> 6214 </symbol> 6215 </defs> 6216 </svg><style> 6217 .ssw-faveiticon { 6218 top: .5vw; 6219 left: .5vw; 6220 height: unset !important; 6221 position: absolute; 6222 } 6223 .ssw-fave-btn .ssw-fave-btn-content { 6224 width: 100%; 6225 border-radius: 10px; 6226 font-size: 1vw; 6227 height: 52px; 6228 } 6229 .ssw-timestamp { 6230 display: none; 6231 } 6232 6233 .gw-ig-post-modal-viewer__arrows .gw-ig-post-modal-viewer__arrow { 6234 background: hsl(0deg 0% 100%) !important; 6235 } 6236</style> 6237 6238
6238<script> 6239 // Remove 'geoip-banner' when userAgent is 'WebView/3.5 (flutter:hapa/$platform)' - @seunghwanly 6240 document.addEventListener('DOMContentLoaded', function() { 6241 const userAgent = navigator.userAgent; 6242 const matches = userAgent.match(/WebView\/\d{1}.\d{1} \(flutter:hapa\/(\w+)\)/g); 6243 6244 if (matches != null && matches.length >= 1) { 6245 var redirectBanner = document.getElementById("geoip-banner"); 6246 if (redirectBanner) { 6247 redirectBanner.style.setProperty('display', 'none', 'important'); 6248 } 6249 } 6250 6251 // Send customer data to webview(Flutter) - @seunghwanly 30/10/24 6252 const message = { 6253 message: "shopifyUserFetched", 6254 data: { 6255 "email": ``, 6256 "phone": `` 6257 } 6258 }; 6259 6260 window.hapakristinENAppChannel.postMessage(JSON.stringify(message)); 6261 }); 6262 </script>
6262 6263 6264 <!-- Klaviyo restock alert script --> 6265 6266 <style> div#shop-hcaptcha-badge-container {display: none !important;} </style> 6267<div id="shopify-block-AeE04V0dFK3l4VlBQT__17587734367913825621" class="shopify-block shopify-app-block"><!-- Lantern quiz active --> 6268<style> 6269 .ppf-popup { 6270 display: none; 6271 position: fixed; 6272 z-index: 2147483647; 6273 top: 0; 6274 left: 0; 6275 width: 100vw; 6276 height: 100vh; 6277 background-color: rgba(0, 0, 0, 0.4); 6278 } 6279 6280 .ppf-popup-close { 6281 position: absolute; 6282 z-index: 2147483647; 6283 top: 0; 6284 right: 0; 6285 padding: 10px; 6286 font-size: 50px; 6287 color: #fff; 6288 background: none; 6289 border: none; 6290 cursor: pointer; 6291 } 6292 6293 .ppf-popup iframe { 6294 width: 100%; 6295 height: 100%; 6296 border: none; 6297 } 6298 6299 .ppf-popup .iframe-holder { 6300 position: absolute; 6301 width: 80%; 6302 height: 80%; 6303 top: calc((100% - 80%) / 2); 6304 left: calc((100% - 80%) / 2); 6305 background-color: #fff; 6306 } 6307 6308 @media only screen and (max-width : 768px) { 6309 .ppf-popup .iframe-holder { 6310 position: absolute; 6311 width: 100%; 6312 height: 100%; 6313 top: calc((100% - 100%) / 2); 6314 left: calc((100% - 100%) / 2); 6315 border: none; 6316 } 6317 6318 .ppf-popup-close { 6319 font-size: 30px; 6320 background-color: rgba(0, 0, 0, 0.8); 6321 } 6322 } 6323</style> 6324 6325<div class="ppf-popup"> 6326 <button class="ppf-popup-close">×</button> 6327</div> 6328
6329<script> 6330 function lanternDomReady(fn) { 6331 document.addEventListener("DOMContentLoaded", fn); 6332 if (document.readyState === "interactive" || document.readyState === "complete" ) { 6333 fn(); 6334 } 6335} 6336 6337 lanternDomReady(() => { 6338 let ppfPopupShown = false; 6339 6340 const updateLocalStorage = () => { 6341 const popupShownCount = localStorage.getItem("ppf-popup-shown-count"); 6342 localStorage.setItem("ppf-popup-shown", true); 6343 localStorage.setItem("ppf-popup-shown-count", 6344 popupShownCount 6345 ? parseInt(popupShownCount) + 1 6346 : 1); 6347 localStorage.setItem("ppf-popup-shown-timestamp", new Date().getTime()); 6348 }; 6349 6350 const lantern_popup = (quizURL) => { 6351 if (!quizURL || quizURL === "" || (ppfPopupShown && autoTriggerOnExitIntent) || (ppfPopupShown && autoTriggerOnScroll) || (ppfPopupShown && autoTriggerAfterXSeconds)) { 6352 return; 6353 } 6354 6355 ppfPopupShown = true; 6356 6357 document.body.style.position = 'fixed'; 6358 document.body.style.top = `-${ 6359 window.scrollY 6360 }px`; 6361 document.body.style.left = '0'; 6362 document.body.style.right = '0'; 6363 document.querySelector(".ppf-popup").style.display = "block"; 6364 document.querySelector(".ppf-popup").innerHTML += `<div class="iframe-holder"><iframe src="${quizURL}"></iframe></div>`; 6365 }; 6366 6367 window.lantern_popup = lantern_popup; 6368 6369 const displayPopup = (quizURL, alreadySet = false) => { 6370 if (!quizURL || quizURL === "" || (ppfPopupShown && autoTriggerOnExitIntent) || (ppfPopupShown && autoTriggerOnScroll) || (ppfPopupShown && autoTriggerAfterXSeconds)) { 6371 return; 6372 } 6373 6374 ppfPopupShown = true; 6375 6376 document.body.style.position = 'fixed'; 6377 document.body.style.top = `-${ 6378 window.scrollY 6379 }px`; 6380 document.body.style.left = '0'; 6381 document.body.style.right = '0'; 6382 document.querySelector(".ppf-popup").style.display = "block"; 6383 if (!alreadySet) { 6384 document.querySelector(".ppf-popup").innerHTML += `<div class="iframe-holder"><iframe src="https://hapakristin.com/${quizURL}"></iframe></div>`; 6385 } 6386 }; 6387 6388 const hidePopup = () => { 6389 document.querySelector(".ppf-popup").style.display = "none"; 6390 document.querySelector(".ppf-popup").innerHTML = `<button class="ppf-popup-close">×</button>`; 6391 const scrollY = document.body.style.top; 6392 document.body.style.position = ''; 6393 document.body.style.top = ''; 6394 document.body.style.left = ''; 6395 document.body.style.right = ''; 6396 window.scrollTo(0, parseInt(scrollY || '0') * -1); 6397 }; 6398 6399 const onExitIntent = (e) => { 6400 if (e.clientY <= 0) { 6401 document.removeEventListener("mouseleave", onExitIntent); 6402 updateLocalStorage(); 6403 const quizURL = "".replace("#open-quiz-", ""); 6404 displayPopup(quizURL, true); 6405 } 6406 }; 6407 6408 const onScroll = () => { 6409 if (window.scrollY >= autoTriggerScrollValue) { 6410 document.removeEventListener("scroll", onScroll); 6411 updateLocalStorage(); 6412 const quizURL = "".replace("#open-quiz-", ""); 6413 displayPopup(quizURL, true); 6414 } 6415 }; 6416 6417 const onTimeout = () => { 6418 updateLocalStorage(); 6419 const quizURL = "".replace("#open-quiz-", ""); 6420 displayPopup(quizURL, true); 6421 }; 6422 6423 const popupFrequency = "once"; 6424 const autoTriggerOnExitIntent = false; 6425 const autoTriggerOnScroll = false; 6426 const autoTriggerScrollValue = 250; 6427 const autoTriggerAfterXSeconds = false; 6428 const autoTriggerTimeValue = 10; 6429 const popupShown = localStorage.getItem("ppf-popup-shown"); 6430 const popupShownCount = localStorage.getItem("ppf-popup-shown-count"); 6431 const popupShownTimestamp = localStorage.getItem("ppf-popup-shown-timestamp"); 6432 const popupShownDate = new Date(parseInt(popupShownTimestamp)); 6433 6434 const shouldShowPopup = 6435 (popupFrequency === "once" && !popupShown) || 6436 (popupFrequency === "twice" && (!popupShown || popupShownCount < 2)) || 6437 (popupFrequency === "thrice" && (!popupShown || popupShownCount < 3)) || 6438 (popupFrequency === "always") || 6439 (popupFrequency === "hourly" && (!popupShown || popupShownDate.getHours() !== new Date().getHours())) || 6440 (popupFrequency === "daily" && (!popupShown || popupShownDate.getDate() !== new Date().getDate())) || 6441 (popupFrequency === "weekly" && (!popupShown || popupShownDate.getDay() !== new Date().getDay())) || 6442 (popupFrequency === "monthly" && (!popupShown || popupShownDate.getMonth() !== new Date().getMonth())) || 6443 (popupFrequency === "yearly" && (!popupShown || popupShownDate.getFullYear() !== new Date().getFullYear())); 6444 6445 if (shouldShowPopup && autoTriggerOnExitIntent) { 6446 const quizURL = "".replace("#open-quiz-", ""); 6447 if ( document?.querySelector(".ppf-popup")?.innerHTML) { 6448 document.querySelector(".ppf-popup").innerHTML += `<div class="iframe-holder"><iframe src="https://hapakristin.com/${quizURL}"></iframe></div>`; 6449 } 6450 document.addEventListener("mouseleave", onExitIntent); 6451 } 6452 6453 if (shouldShowPopup && autoTriggerOnScroll && autoTriggerScrollValue >= 0) { 6454 const quizURL = "".replace("#open-quiz-", ""); 6455 if ( document?.querySelector(".ppf-popup")?.innerHTML) { 6456 document.querySelector(".ppf-popup").innerHTML += `<div class="iframe-holder"><iframe src="https://hapakristin.com/${quizURL}"></iframe></div>`; 6457 } 6458 document.addEventListener("scroll", onScroll); 6459 } 6460 6461 if (shouldShowPopup && autoTriggerAfterXSeconds && autoTriggerTimeValue >= 0) { 6462 const quizURL = "".replace("#open-quiz-", ""); 6463 if ( document?.querySelector(".ppf-popup")?.innerHTML) { 6464 document.querySelector(".ppf-popup").innerHTML += `<div class="iframe-holder"><iframe src="https://hapakristin.com/${quizURL}"></iframe></div>`; 6465 } 6466 setTimeout(onTimeout, autoTriggerTimeValue * 1000); 6467 } 6468 6469 6470 document.addEventListener("click", (e) => { 6471 let targetElement = e.target; 6472 while (targetElement && targetElement !== document) { 6473 if (targetElement.tagName === 'A' && targetElement.getAttribute("href")?.startsWith("#open-quiz-")) { 6474 e.preventDefault(); 6475 const quizURL = targetElement.getAttribute("href").replace("#open-quiz-", ""); 6476 displayPopup(quizURL); 6477 return; 6478 } 6479 if (targetElement.classList?.contains("ppf-popup-close")) { 6480 hidePopup(); 6481 return; 6482 } 6483 targetElement = targetElement.parentNode; 6484 } 6485 }); 6486 }); 6487</script>
6487 6488 6489</div><div id="shopify-block-AZk9jUWUrUnN1cGNSa__17503207801509751411" class="shopify-block shopify-app-block"><!-- Growave Theme extension Embed section --> 6490 6491 <!-- BEGIN app snippet: socialshopwave-helper-v2 -->
6491<script> 6492 if (!window.gw) { 6493 window.gw = {}; 6494 } 6495 6496 if(!window.gw.customizations) { 6497 window.gw.customizations = []; 6498 6499 window.gw.registerWidgetCustomization = (selectWidget, customizeWidget) => { 6500 window.gw.customizations.push([ 6501 selectWidget, 6502 customizeWidget 6503 ]) 6504 } 6505 } 6506 6507 if (window.gw.browserTimeDiffMs === undefined) { 6508 window.gw.browserTimeDiffMs = 0; 6509 } 6510 6511 if (window.gw.useLegacyAdapter === undefined) { 6512 window.gw.useLegacyAdapter = false; 6513 } 6514</script>
6514 6515 6516 6517 <style> 6518 .gw-rv-average-placeholder { 6519 margin-top: 15px; 6520 } 6521 .gw-wl-add-to-wishlist-placeholder { 6522 margin-top: 15px; 6523 } 6524 .gw-add-to-wishlist-product-card-placeholder { 6525 top: 8px !important; 6526 left: 8px !important; 6527 z-index: 98 !important; 6528 } 6529 .gw-widget-placeholder-RC-wrapper { 6530 display: none !important; 6531 } 6532 @media (max-width: 480px) { 6533 .gw-widget-placeholder-BL-wrapper { 6534 left: 10px !important; 6535 } 6536 } 6537 .apps--wrapper { 6538 max-width: unset; 6539 } 6540 .gw-rd-earn-points-product-page-widget .gw-layout-text { 6541 font-family: inherit !important; 6542 } 6543 .gw-ig-post-modal-post-view__right .gw-ig-post-modal-post-view__header { 6544 justify-content: flex-end; 6545 padding: 0; 6546 } 6547 @media (max-width: 900px) { 6548 .gw-ig-post-modal-post-view__footer { 6549 order: 1; 6550 } 6551 .gw-ig-post-modal-post-view__right-scrolle { 6552 order: 2; 6553 } 6554 } 6555</style> 6556<style id="super-style-for-widget"> 6557 .gw-rd-vip-tiers-page-widget-card .gw-rd-vip-tiers-page-widget-card__header { 6558 background-color: #fe70912b !important; 6559 } 6560 .gw-rd-vip-tiers-page-widget-card__default-tier.svelte-1y61zu0 .gw-rd-vip-tiers-page-widget-card__header.svelte-1y61zu0 { 6561 background-color: #FE7091; 6562 } 6563 .gw-wl-go-to-wishlist-header-widget { 6564 height: unset !important; 6565 width: unset !important; 6566 } 6567 .gw-wl-go-to-wishlist-header-widget svg g { 6568 fill: #000 !important; 6569 } 6570 .gw-wl-go-to-wishlist-header-widget .gw-wl-icon { 6571 color: #000 !important; 6572 } 6573 .gw-rv-reviews-page__wrapper { 6574 margin-inline: 0 !important; 6575 } 6576 .gw-wl-page__wrapper { 6577 margin-inline: 0 !important; 6578 } 6579 .gw-rv-item__date { 6580 display: none; 6581 } 6582 .gw-wl-add-to-wishlist-product-page-widget .gw-btn.gw-button { 6583 height: 54px; 6584 text-transform: uppercase; 6585 font-family: var(--font--accent--family); 6586 font-size: 20px !important; 6587 background-color: #FF7092 !important; 6588 } 6589 6590 @media only screen and (max-width: 1080px) { 6591 .gw-wl-add-to-wishlist-product-page-widget .gw-btn.gw-button { 6592 font-size: 15px !important; 6593 } 6594 } 6595 .gw-wl-add-to-wishlist-product-page-widget .gw-btn.gw-button svg g path{ 6596 fill: #fff !important; 6597 } 6598 .gw-wl-add-to-wishlist-product-page-widget .gw-badge, 6599 .gw-toggle-wishlist-product-card-button__counter { 6600 display: none; 6601 } 6602 6603 .gw-btn.gw-wl-save-modal__login-btn { 6604 color: #FF7396 !important; 6605 } 6606 .gw-wl-save-email-field__icon rect { 6607 fill: #FF7396 !important; 6608 } 6609 6610 /* Reward tab launcher */ 6611 .gw-rd-popup-widget-launcher-btn { 6612 width: 60px !important; 6613 } 6614 .gw-rd-popup-widget-launcher-btn__content { 6615 position: relative; 6616 justify-content: center; 6617 } 6618 .gw-rd-popup-widget-launcher-btn__content img { 6619 position: absolute; 6620 width: 52px; 6621 height: auto; 6622 } 6623 .gw-rd-popup-widget-launcher-btn__content .gw-layout-text { 6624 display: none; 6625 } 6626 6627 .gw-rd-popup-widget-launcher-btn { 6628 display: flex; 6629 justify-content: center; 6630 align-items: center; 6631 } 6632 .gw-rd-popup-widget-launcher-btn:has(> svg) .custom-gw-rd-icon { 6633 display: none !important; 6634 } 6635 6636 .gw-rd-page-widget-card--no-customer-hover { 6637 background-color: #FE7091 !important; 6638 border-color: #FE7091 !important; 6639 } 6640 .gw-rd-page-widget-card--no-customer-hover button:hover { 6641 background: #ff9ab2 !important; 6642 border: 1px solid #ff9ab2 !important; 6643 padding: 10px 12px !important; 6644 } 6645 .gw-rd-page-widget-card--no-customer-hover button { 6646 padding: 10px 12px !important; 6647 } 6648 .gw-btn.gw-rd-action-btn--primary:hover { 6649 background-color: #ff9ab2 !important; 6650 border: 1px solid #ff9ab2 !important; 6651 } 6652 .gw-rd-page-widget-modal-body__btn .gw-btn.gw-rd-action-btn:hover { 6653 background-color: #ff9ab2 !important; 6654 border: 1px solid #ff9ab2 !important; 6655 } 6656 .gw-rd-vip-tiers-page-widget-card__default-tier .gw-rd-vip-tiers-page-widget-card__header { 6657 background-color: #FE7091 !important; 6658 } 6659 .gw-btn.gw-rd-action-btn--primary { 6660 background-color: #FF7396 !important; 6661 border-color: #FF7396 !important; 6662 } 6663 .gw-wl-page-item-header { 6664 display: inline-block !important; 6665 } 6666 6667 .gw-wl-page-item-content__price-block { 6668 justify-content: unset !important; 6669 } 6670 6671 .gw-wl-page-item-price { 6672 color: white !important; 6673 background-color: #FF7396 !important; 6674 border: 1px solid #FF7396 !important; 6675 } 6676 6677 .gw-wl-page-item-compare-price { 6678 color: #555 !important; 6679 order: 2; 6680 text-decoration-color: #FF7396 !important; 6681 } 6682 6683 .gw-wl-drawer-item-badge { 6684 bottom: 45px !important; 6685 width: 60px !important; 6686 } 6687 .gw-rv-empty-list .gw-rv-empty-list__action-button { 6688 color: #FF7396 !important; 6689 } 6690
6691 .gw-rd-popup-widget-launcher-btn.gw-rd-popup-widget-launcher-btn--BR { 6692 width: 47.98px !important; 6693 height: 47.98px !important; 6694 } 6695 6696 .gw-rd-popup-widget-launcher-btn.gw-btn { 6697 padding: 12px !important; 6698 } 6699 6700 .gw-ig-post-modal-viewer__arrows .gw-ig-post-modal-viewer__arrow { 6701 background: #fff !important; 6702 } 6703 6704 @media (max-width: 425px) { 6705 .gw-ig-post-modal-post-view__header.gw-ig-post-modal-post-view__close { 6706 z-index: 100; 6707 background: #fff !important; 6708 } 6709 } 6710 6711 .gw-modal { 6712 z-index: 999998 !important; 6713 } 6714 6715 /* .gw-ig-post-modal-post-view__right .gw-ig-post-modal-post-view__right-scrolle { 6716 display: none !important; 6717 } */ 6718 6719 .gw-ig-post-modal-post-view__header { 6720 padding: 0 !important; 6721 } 6722 6723 .gw-rv-empty-list__icon{ 6724 .gw-rv-empty-list__star, svg{ 6725 display: none !important 6726 } 6727 } 6728 6729 .gw-rv-empty-list__icon::after { 6730 content: ""; 6731 display: block; 6732 width: 90px; 6733 height: 90px; 6734 background-image: url('https://cdn.shopify.com/s/files/1/0238/6441/0189/t/200/assets/empty_review.aa2a1e81.png?v=1747715442'); 6735 background-size: contain; 6736 background-repeat: no-repeat; 6737 background-position: center; 6738 } 6739 .gw-rd-popup-widget-card:not(.gw-rd-popup-widget-card--active){ 6740 .gw-rd-discount-code-refund{ 6741 display: none !important; 6742 } 6743 } 6744 6745 .gw-rd-popup-widget-customer-rewards-view{ 6746 .gw-rd-discount-code-refund{ 6747 position: absolute !important; 6748 display: flex !important; 6749 6750 bottom: 37px !important; 6751 right: 80px !important; 6752 border: 1px solid #f37092 !important; 6753 padding: var(--gw-rd-space-4) var(--gw-rd-space-7) !important; 6754 border-radius: var(--gw-rd-border-radius-xs) !important; 6755 font-size: 12px !important; 6756 .gw-rd-icon-btn[aria-label="open refund discount modal"]:after{ 6757 content: "Refund"; 6758 display: block; 6759 font-size: 12px !important; 6760 6761 } 6762 .gw-rd-icon-branding-color, 6763 .gw-tooltip-content{ 6764 display: none !important; 6765 } 6766 } 6767 6768 .gw-rd-popup-widget-card__collapsible-btn:has(.gw-rd-action-btn) { 6769 position: absolute; 6770 bottom: 25px; 6771 left: 60px; 6772 } 6773 .gw-rd-popup-widget-card__collapsible-content{ 6774 margin-top: 32px; 6775 } 6776 } 6777 .gw-rv-meta { 6778 display: none !important; 6779 } 6780 6781 .gw-rv-item__date, 6782 .gw-rv-grid-item__content .gw-text--tone-subdued { 6783 display: none !important; 6784 } 6785 /*RV Page*/ 6786 .gw-rv-reviews-list-widget .gw-rv-grid-item__content .gw-text--tone-subdued, 6787 .gw-rv-modal-content__body .gw-text--tone-subdued { 6788 display: none !important; 6789 } 6790</style> 6791<style id="reviews-drawer-widget"> 6792 .gw-rv-item__date, 6793 .gw-rv-gallery-content__date{ 6794 display: none !important; 6795 } 6796 .gw-rv-meta { 6797 display: none !important; 6798 } 6799</style> 6800
6801<script> 6802 const waitForElementToExist = (selector, placeholder = document) => { 6803 return new Promise(resolve => { 6804 if (placeholder.querySelector(selector)) { 6805 return resolve(placeholder.querySelector(selector)); 6806 } 6807 6808 const observer = new MutationObserver(() => { 6809 if (placeholder.querySelector(selector)) { 6810 resolve(placeholder.querySelector(selector)); 6811 observer.disconnect(); 6812 } 6813 }); 6814 6815 observer.observe(document.body, { 6816 subtree: true, 6817 childList: true, 6818 }); 6819 }); 6820 } 6821 6822 window.gw.registerWidgetCustomization( 6823 (widgetConfig) => widgetConfig.widgetName === "RewardsEarnPointsProductPageWidget", 6824 (widgetConfig) => { 6825 console.log("earn points here 1") 6826 return { 6827 styleElement: document.getElementById("super-style-for-widget"), 6828 afterWidgetInject: () => { 6829 const waitForWidget = setInterval(function(){ 6830 console.log("earn points here") 6831 var widgetWrapper = document.querySelector('.gw-rd-earn-points-product-page-widget-placeholder').shadowRoot; 6832 if(widgetWrapper){ 6833 var learnMoreBtn = widgetWrapper.querySelector('.gw-rd-earn-points-product-page-widget__btn') 6834 //clearInterval(waitForWidget) 6835 } 6836 }, 1000); 6837 6838 learnMoreBtn.setAttribute("type", "button") 6839 6840 } 6841 } 6842 } 6843 ) 6844 6845 window.gw.registerWidgetCustomization( 6846 (widgetConfig) => widgetConfig.widgetName === "InstagramGalleryWidget", 6847 (widgetConfig) => { 6848 return { 6849 styleElement: document.getElementById("super-style-for-widget"), 6850 } 6851 } 6852 ) 6853 6854 window.gw.registerWidgetCustomization( 6855 (widgetConfig) => widgetConfig.widgetName === "RewardsVipTiersPageWidget", 6856 (widgetConfig) => { 6857 return { 6858 styleElement: document.getElementById("super-style-for-widget"), 6859 } 6860 } 6861 ) 6862 window.gw.registerWidgetCustomization( 6863 (widgetConfig) => widgetConfig.widgetName === "RewardsAvailableRewardsPageWidgetModal", 6864 (widgetConfig) => { 6865 return { 6866 styleElement: document.getElementById("super-style-for-widget"), 6867 } 6868 } 6869 ) 6870 6871 window.gw.registerWidgetCustomization( 6872 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToSpendPageWidgetModal", 6873 (widgetConfig) => { 6874 return { 6875 styleElement: document.getElementById("super-style-for-widget"), 6876 } 6877 } 6878 ) 6879 6880 window.gw.registerWidgetCustomization( 6881 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToSpendPageWidget", 6882 (widgetConfig) => { 6883 return { 6884 styleElement: document.getElementById("super-style-for-widget"), 6885 } 6886 } 6887 ) 6888 6889 window.gw.registerWidgetCustomization( 6890 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToEarnPageWidgetModal", 6891 (widgetConfig) => { 6892 return { 6893 styleElement: document.getElementById("super-style-for-widget"), 6894 } 6895 } 6896 ) 6897 6898 window.gw.registerWidgetCustomization( 6899 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToEarnPageWidget", 6900 (widgetConfig) => { 6901 return { 6902 styleElement: document.getElementById("super-style-for-widget"), 6903 } 6904 } 6905 ) 6906 6907 window.gw.registerWidgetCustomization( 6908 (widgetConfig) => widgetConfig.widgetName === "RewardsHowItWorksPageWidget", 6909 (widgetConfig) => { 6910 return { 6911 styleElement: document.getElementById("super-style-for-widget"), 6912 } 6913 } 6914 ) 6915 6916 window.gw.registerWidgetCustomization( 6917 (widgetConfig) => widgetConfig.widgetName === "RewardsWelcomeBannerPageWidget", 6918 (widgetConfig) => { 6919 return { 6920 styleElement: document.getElementById("super-style-for-widget"), 6921 } 6922 } 6923 ) 6924 6925 window.gw.registerWidgetCustomization( 6926 (widgetConfig) => widgetConfig.widgetName === "RewardsJoinNowModalWidget", 6927 (widgetConfig) => { 6928 return { 6929 styleElement: document.getElementById("super-style-for-widget"), 6930 } 6931 } 6932 ) 6933 6934 window.gw.registerWidgetCustomization( 6935 (widgetConfig) => widgetConfig.widgetName === "RewardsVerifyAccountModalWidget", 6936 (widgetConfig) => { 6937 return { 6938 styleElement: document.getElementById("super-style-for-widget"), 6939 } 6940 } 6941 ) 6942 6943 window.gw.registerWidgetCustomization( 6944 (widgetConfig) => widgetConfig.widgetName === "RewardsVerifyAccountModalWidget", 6945 (widgetConfig) => { 6946 return { 6947 styleElement: document.getElementById("super-style-for-widget"), 6948 } 6949 } 6950 ) 6951 6952 window.gw.registerWidgetCustomization( 6953 (widgetConfig) => widgetConfig.widgetName === "GoToWishlistPageHeaderWidget", 6954 (widgetConfig) => { 6955 return { 6956 styleElement: document.getElementById("super-style-for-widget"), 6957 } 6958 } 6959 ) 6960 6961 window.gw.registerWidgetCustomization( 6962 (widgetConfig) => widgetConfig.widgetName === "ReviewsProductPageWidgetV2", 6963 (widgetConfig) => { 6964 return { 6965 styleElement: document.getElementById("super-style-for-widget"), 6966 } 6967 } 6968 ) 6969 6970 window.gw.registerWidgetCustomization( 6971 (widgetConfig) => widgetConfig.widgetName === "AddToWishlistProductPageWidget", 6972 (widgetConfig) => { 6973 return { 6974 styleElement: document.getElementById("super-style-for-widget"), 6975 } 6976 } 6977 ) 6978 6979 window.gw.registerWidgetCustomization( 6980 (widgetConfig) => widgetConfig.widgetName === "AddToWishlistProductCardWidget", 6981 (widgetConfig) => { 6982 return { 6983 styleElement: document.getElementById("super-style-for-widget"), 6984 } 6985 } 6986 ) 6987 6988 window.gw.registerWidgetCustomization( 6989 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToEarnPageWidget", 6990 (widgetConfig) => { 6991 return { 6992 styleElement: document.getElementById("super-style-for-widget"), 6993 } 6994 } 6995 ) 6996 6997 window.gw.registerWidgetCustomization( 6998 (widgetConfig) => widgetConfig.widgetName === "SaveWishlistModalWidget", 6999 (widgetConfig) => { 7000 return { 7001 styleElement: document.getElementById("super-style-for-widget"), 7002 } 7003 } 7004 ) 7005 7006 window.gw.registerWidgetCustomization( 7007 (widgetConfig) => widgetConfig.widgetName === "RewardsWaysToSpendPageWidget", 7008 (widgetConfig) => { 7009 return { 7010 styleElement: document.getElementById("super-style-for-widget"), 7011 } 7012 } 7013 ) 7014 7015 window.gw.registerWidgetCustomization( 7016 (widgetConfig) => widgetConfig.widgetName === "ReviewsPageWidgetV2", 7017 (widgetConfig) => { 7018 return { 7019 styleElement: document.getElementById("super-style-for-widget"), 7020 } 7021 } 7022 ) 7023 7024 window.gw.registerWidgetCustomization( 7025 (widgetConfig) => widgetConfig.widgetName === "WishlistPageWidget", 7026 (widgetConfig) => { 7027 return { 7028 styleElement: document.getElementById("super-style-for-widget"), 7029 } 7030 } 7031 ) 7032 7033 window.gw.registerWidgetCustomization( 7034 (widgetConfig) => widgetConfig.widgetName === "RewardsPopUpWidget", 7035 (widgetConfig) => { 7036 return { 7037 styleElement: document.getElementById("super-style-for-widget"), 7038 } 7039 } 7040 ) 7041 7042 window.gw.registerWidgetCustomization( 7043 (widgetConfig) => widgetConfig.widgetName === "ReviewsDrawerWidget", 7044 (widgetConfig) => { 7045 return { 7046 styleElement: document.getElementById("reviews-drawer-widget"), 7047 } 7048 } 7049 ) 7050 7051 window.gw.registerWidgetCustomization( 7052 (widgetConfig) => widgetConfig.widgetName === "ReviewsGalleryModalWidget", 7053 (widgetConfig) => { 7054 return { 7055 styleElement: document.getElementById("reviews-drawer-widget"), 7056 } 7057 } 7058 ) 7059</script>
vendor: 1 bytes, line 7059
7059
7060<script> 7061const rewards_widgets_gw = [ 7062 "RewardsDrawerWidget", 7063 "RewardsPopUpWidget", 7064 "RewardsPopUpRootWidget", 7065 "RewardsAvailableRewardsPageWidget", 7066 "RewardsAvailableRewardsPageWidgetModal", 7067 "RewardsWaysToEarnPageWidget", 7068 "RewardsWaysToEarnPageWidgetModal", 7069 "RewardsWaysToSpendPageWidget", 7070 "RewardsWaysToSpendPageWidgetModal", 7071 "RewardsVipTiersPageWidget", 7072 "RewardsReferralProgramPageWidget", 7073 "RewardsHistoryPageWidget", 7074 "RewardsFaqPageWidget", 7075 "RewardsEmptyStatePageWidget" 7076]; 7077rewards_widgets_gw.forEach((name) => { 7078 window.gw.registerWidgetCustomization( 7079 (widgetConfig) => widgetConfig.widgetName === name, 7080 (widgetConfig) => ({ 7081 defineWidgetVersion: () => "v1", 7082 }) 7083 ); 7084}); 7085</script>
7085 7086 7087 7088 7089<div class="gw-widget-placeholder-LC-wrapper" style="display: block"> 7090 <div class="gw-widget-placeholder-LC"></div> 7091</div> 7092<div class="gw-widget-placeholder-RC-wrapper" style="display: block"> 7093 <div class="gw-widget-placeholder-RC"></div> 7094</div> 7095<div class="gw-widget-placeholder-BR-wrapper" style="display: block"> 7096 <div class="gw-widget-placeholder-BR"></div> 7097</div> 7098<div class="gw-widget-placeholder-BL-wrapper" style="display: block"> 7099 <div class="gw-widget-placeholder-BL"></div> 7100</div> 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116
7116<script type="text/json" id="common.critical.Points.en"> 7117 {"points_name_singular":"point","points_name_plural":"points"} 7118 </script>
7118 7119 7120 7121 7122 7123 7124
7124<script type="text/json" id="reviews.critical.AverageReviewsWidget.en"> 7125 {"write_a_review":"Write a review","ask_a_question":"Ask a question"} 7126 </script>
7126 7127 7128 7129 7130 7131 7132
7132<script type="text/json" id="reviews.critical.ReviewsStarRatingWidget.en"> 7133 {"write_a_review":"Write a review","ask_a_question":"Ask a question","no_reviews":"No reviews","review":"review"} 7134 </script>
7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144
7144<script type="text/json" id="reviews.critical.ReviewsDrawerWidget.en"> 7145 {"drawer_title":"Our Reviews","drawer_button_title":"Reviews","write_a_review":"Write a review","sort_by":"Sort by:","product_reviews":"Reviews","shop_reviews":"Shop reviews"} 7146 </script>
7146 7147 7148 7149 7150 7151 7152
7152<script type="text/json" id="reviews.critical.ReviewsPageWidget.en"> 7153 {"shop_reviews":"Shop Reviews","product_reviews":"Product Reviews","search":"Search...","customer_reviews_title":"Customer Reviews","reviews":"Reviews","sort_by":"Sort by:","write_a_review":"Write a review"} 7154 </script>
7154 7155 7156 7157 7158 7159 7160
7160<script type="text/json" id="reviews.critical.ReviewsProductPageWidget.en"> 7161 {"ask_a_question":"Ask a question","sort_by":"Sort by:","write_a_review":"Write a review","filter_by":"Filter","questions_main_title":"Questions","reviews":"Reviews","customer_reviews_title":"Customer Reviews","questions":"Questions"} 7162 </script>
7162 7163 7164 7165 7166 7167 7168
7168<script type="text/json" id="reviews.critical.ReviewsSliderWidget.en"> 7169 {"slider_title":"Our customers love us","from_reviews":"from {{count}} reviews"} 7170 </script>
7170 7171 7172 7173 7174 7175 7176
7176<script type="text/json" id="rewards.critical.RewardsPopUpWidget.en"> 7177 {"sign_in":"Log in your account","join_now_label":"Join now","launcher_label":"Rewards","join_program":"Become a Kristin today and start earning points, perks, and surprises!","have_an_account":"Are you already a Kristin?","customer_balance":"Current balance:","points_expiration":"Expiration: {{date}}","welcome_to_program":"Welcome to"} 7178 </script>
7178 7179 7180 7181 7182 7183 7184
7184<script type="text/json" id="rewards.critical.RewardsJoinNowModalWidget.en"> 7185 {"description":"Create your account and start earning points!","join_now_label":"Join now","title":"You are welcome to join our loyalty program!"} 7186 </script>
7186 7187 7188 7189 7190 7191 7192
7192<script type="text/json" id="rewards.critical.RewardsVerifyAccountModalWidget.en"> 7193 {"description":"Thanks for joining us! We just sent a verification link to <br /> your email. Click on it and get reward!ð","title":"Verify your account!"} 7194 </script>
7194 7195 7196 7197 7198 7199 7200
7200<script type="text/json" id="rewards.critical.RewardsEarnPointsProductPageWidget.en"> 7201 {"earn_points_on_purchase":"You'll earn up to {{points}} {{points_name}}","learn_more":"Create account","earn_store_credits_on_purchase":"Earn {{store_credits}} store credit on this purchase.","reward_applied":"applied","reward_redeem":"Redeem","reward_undo":"Undo","reward_unlocked":"You have unlocked","sign_in":"Sign in","sign_in_available_reward":"Sign in to discover available reward","spending_rules_fixed_amount_reward":"{{amount}} reward","spending_rules_fixed_percentage_reward":"{{discount}}% discount","spending_rules_fixed_store_credit_reward":"{{amount}} store credit","spending_rules_flexible_amount_reward":"{{amount}} reward","spending_rules_flexible_percentage_reward":"{{discount}}% discount","spending_rules_free_shipping_reward":"Free shipping discount","spending_rules_gift_card_reward":"{{amount}} gift card","spending_rules_product_discount_max_reward":"Free product discount","spending_rules_product_discount_variable_reward":"{{discount}}% on this product","away_from_reward":"You're <strong>{{points_needed}}</strong> away from your reward"} 7202 </script>
7202 7203 7204 7205 7206 7207 7208
7208<script type="text/json" id="wishlist.critical.WishlistPageWidget.en"> 7209 {"header_title":"My Wishlists","link_copied_label":"Link copied","sort_low_to_high_price":"Price Low-High","sort_z_to_a_product_title":"Name Z-A","delete_wishlist_button_accessibility_label":"Delete wishlist","sort_hight_to_low_price":"Price High-Low","sort_recently_added":"Recently added","sort_a_to_z_product_title":"Name A-Z","save_wishlist_button_text":"Save my wishlist","social_share_label":"Share:","add_wishlist_button_text":"Add a new list","edit_wishlist_button_accessibility_label":"Edit wishlist","save_wishlist_button_accessibility_label":"Save wishlist","empty_state_title":"Nothing added to wishlist.","add_to_cart_button_label":"Add to cart","show_in_cart_button_label":"Show in cart","sold_out_label":"Out of stock","browse_products":"Browse products","sort_by":"Sort by:","filter_by":"Filter by:","filter_all":"All","filter_available":"Available"} 7210 </script>
7210 7211 7212 7213 7214 7215 7216
7216<script type="text/json" id="wishlist.critical.SharedWishlistPageWidget.en"> 7217 {"show_in_cart_button_label":"Show in cart","sold_out_label":"Out of stock","edit_wishlist_button_accessibility_label":"Edit wishlist","title":"Shared wishlists","save_wishlist_button_accessibility_label":"Save wishlist","delete_wishlist_button_accessibility_label":"Delete wishlist","empty_state_title":"Nothing added to wishlist.","browse_products":"Browse products","add_to_cart_button_label":"Add to cart"} 7218 </script>
7218 7219 7220 7221 7222 7223 7224
7224<script type="text/json" id="wishlist.critical.WishlistDrawerWidget.en"> 7225 {"drawer_button_label":"Wishlist","drawer_button_label_gift_registry":"Gift registry"} 7226 </script>
7226 7227 7228 7229 7230 7231 7232
7232<script type="text/json" id="wishlist.critical.SaveWishlistModalWidget.en"> 7233 {"save_wishlist_button_text":"Save my wishlist","subscribe_for_newsletter":"Receive restock and price drops alerts about this product"} 7234 </script>
7234 7235 7236 7237 7238 7239 7240
7240<script type="text/json" id="wishlist.critical.AddToWishlistProductCardWidget.en"> 7241 {"remove_from_wishlist_button_accessibility_label":"Remove from wishlist","add_to_wishlist_button_accessibility_label":"Add to wishlist"} 7242 </script>
7242 7243 7244 7245 7246 7247 7248
7248<script type="text/json" id="wishlist.critical.AddToWishlistButtonWidget.en"> 7249 {"add_to_wishlist_button_accessibility_label":"Add to wishlist","remove_from_wishlist_button_accessibility_label":"Remove from wishlist"} 7250 </script>
7250 7251 7252 7253 7254 7255 7256
7256<script type="text/json" id="wishlist.critical.AddToWishlistProductPageWidget.en"> 7257 {"add_to_wishlist_button_text":"Add to wishlist","remove_from_wishlist_button_text":"Remove from wishlist","added_to_wishlist_button_text":"Added to wishlist"} 7258 </script>
7258 7259 7260 7261 7262 7263 7264
7264<script type="text/json" id="wishlist.critical.GoToWishlistPageHeaderWidget.en"> 7265 {"open_wishlist_page_button_accessibility_label":"Go to wishlist page"} 7266 </script>
7266 7267 7268 7269 7270 7271 7272
7272<script type="text/json" id="wishlist.critical.WishlistsWidget.en"> 7273 {"add_list_button":"Add a new list","main_title":"Wishlist","main_title_gift_registry":"Gift registry"} 7274 </script>
7274 7275 7276 7277 7278 7279 7280
7280<script type="text/json" id="instagram.critical.InstagramGalleryWidget.en"> 7281 {"view_on_instagram":"View on Instagram","shop_it":"View","prev":"Prev","next":"Next","description":"Description","load_more":"Load more"} 7282 </script>
7282 7283 7284 7285 7286 7287 7288
7288<script type="text/json" id="tiktok.critical.TikTokGalleryWidget.en"> 7289 {"view_on_tiktok":"View on TikTok","shop_it":"View","description":"Description","load_more":"Load more"} 7290 </script>
7290 7291 7292 7293 7294 7295 7296
7296<script type="text/json" id="giftRegistry.critical.AddToRegistryProductPageWidget.en"> 7297 {"add_to_registry":"Add to registry","added_to_registry":"Added to registry"} 7298 </script>
7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315
7315<script id="gift_registry_critical:gift_registry_settings" type="text/json"> 7316 {"isRegistrantAddressRequired":true,"shareChannelTypes":[{"channelName":"copyShareLink","isEnabled":true},{"channelName":"email","isEnabled":true},{"channelName":"pinterest","isEnabled":true},{"channelName":"facebook","isEnabled":true},{"channelName":"twitter","isEnabled":true},{"channelName":"whatsapp","isEnabled":true}]} 7317 </script>
7317 7318 7319
7319<script id="growave_critical:account_UI" type="text/json"> 7320 {"canUseAccountUI":true} 7321 </script>
7321 7322 7323
7323<script id="growave_critical:b2b" type="text/json"> 7324 {"canUseB2B":true} 7325 </script>
7325 7326 7327
7327<script id="growave_critical:checkout_UI" type="text/json"> 7328 {"canUseCheckoutUI":true} 7329 </script>
7329 7330 7331
7331<script id="growave_critical:customer_account_version" type="text/json"> 7332 {"customerAccountVersion":"CLASSIC"} 7333 </script>
7333 7334 7335
7335<script id="growave_critical:nudges_status" type="text/json"> 7336 {"isEnabled":false} 7337 </script>
7337 7338 7339
7339<script id="growave_critical:watermark" type="text/json"> 7340 {"canShowWatermark":false} 7341 </script>
7341 7342 7343
7343<script id="reviews_critical:questions_settings" type="text/json"> 7344 {"isQuestionCaptchaEnabled":false,"isSomeoneAskQuestionTriggerEnabled":true,"isNotificationsAboutQuestionEnabled":true,"customerDisplayNamePolicy":"shortenLastName"} 7345 </script>
7345 7346 7347
7347<script id="reviews_critical:reviews_branding" type="text/json"> 7348 {"reviewsThemeSettings":{"primaryColor":"#222222","secondaryColor":"#ffffff"},"reviewsIconSettings":{"starColor":"#FF7396","iconType":"default"},"reviewsDrawerSettings":{"drawerPosition":"RC","launcherBackgroundColor":"secondaryColor","launcherFontColor":"#1a1a1a","launcherIconBackgroundColor":"#1a1a1a","device":"hide"},"reviewsWidgetsSettings":{"buttonsColor":"primaryColor","reviewsWidgetLayout":"LL","fontColor":"#ffffff"},"productAvgRatingWidgetSettings":{"widgetVisibility":"show","widgetDisplayStyle":"showTextStarsAndQuestion","showStarsDistributionOnHover":true}} 7349 </script>
7349 7350 7351
7351<script id="reviews_critical:reviews_settings" type="text/json"> 7352 {"canUseTranslation":true,"isReviewTitleEnabled":false,"isReviewTitleRequired":true,"isReviewsVotingEnabled":true,"isReviewsPinningEnabled":true,"isReviewsTranslationEnabled":false,"defaultSortingOption":"withMedia","isReviewsMediaEnabled":true,"isUniteReviewsOriginProductEnabled":true,"isReviewEditingEnabled":true,"customerDisplayNamePolicy":"shortenLastName","isVideoReviewsEnabled":true,"isVerifiedBuyerLabelEnabled":false,"isVerifiedBuyerByMerchantLabelEnabled":true,"isImportedLabelEnabled":false,"isIncentivizedLabelEnabled":false,"isProductReviewsSummaryEnabled":true,"isConsentRequired":false,"consentPolicyUrl":null} 7353 </script>
7353 7354 7355
7355<script id="rewards_critical:rewards_branding" type="text/json"> 7356 {"general":{"theme":{"primaryColor":"#F37091","secondaryColor":"#222222"},"buttons":{"themeColor":"primaryColor","fontColor":"#ffffff"},"content":{"iconsThemeColor":"primaryColor","linksThemeColor":"primaryColor"},"widget":{"type":"popUpWidget"}},"popUpWidget":{"launcher":{"appearance":{"themeColor":"primaryColor","fontColor":"#ffffff","style":"iconOnly"},"icon":{"type":"gift","color":"#ffffff","customUrl":null},"visibility":{"device":"allDevices"},"position":{"placement":"BR","desktop":{"side":17,"bottom":70},"mobile":{"side":18,"bottom":70}}},"popUpContent":{"view":"home","banner":{"programName":"Hapa Kristin Klub","themeColor":"primaryColor","fontColor":"#ffffff","image":null}}}} 7357 </script>
7357 7358 7359
7359<script id="rewards_critical:rewards_customers_eligibility" type="text/json"> 7360 {"type":"include","tags":[],"isEnabled":false,"showWidgetsToGuests":false} 7361 </script>
7361 7362 7363
7363<script id="rewards_critical:rewards_pos_settings" type="text/json"> 7364 {"isEnabled":false,"codeType":"barcode_2d","isWalletPassEnabled":false} 7365 </script>
7365 7366 7367
7367<script id="rewards_critical:rewards_programs_status" type="text/json"> 7368 {"pointsProgramEnabled":true,"referralProgramEnabled":false,"tiersProgramEnabled":true,"b2bProgramEnabled":false} 7369 </script>
7369 7370 7371
7371<script id="rewards_critical:rewards_settings" type="text/json"> 7372 {"generalSettings":{"isPointsExpirationEnabled":true,"isApplyDiscountViaButton":true,"isCustomersCanSelfRefund":true,"isRewardsConsentRequired":false,"pointsDecimalPlaces":0,"rewardPageHandle":"rewards","isStoreCreditEnabled":true},"referralShareChannels":[{"channelType":"facebookShare","isEnabled":true},{"channelType":"twitterShare","isEnabled":true},{"channelType":"whatsAppShare","isEnabled":true},{"channelType":"facebookMessengerShare","isEnabled":true},{"channelType":"pinterestShare","isEnabled":true},{"channelType":"emailShare","isEnabled":true,"title":"Your friend sent you a reward from {{shop_name}}","message":"Join me in discovering the best of {{shop_name}}. Enjoy your {{reward_type}} by following this link: {{link}}"}]} 7373 </script>
7373 7374 7375
7375<script id="rewards_critical:rewards_storefront_state" type="text/json"> 7376 {"hasFaqs":true} 7377 </script>
7377 7378 7379
7379<script id="rewards_critical:reward_page_availability" type="text/json"> 7380 {"canUseRewardPage":true} 7381 </script>
7381 7382 7383
7383<script id="wishlist_critical:wishlist_branding" type="text/json"> 7384 {"wishlistThemeSettings":{"primaryColor":"#222222","secondaryColor":"#FF7396"},"wishlistIconSettings":{"heartColor":"#FF7396","backgroundColor":"#ffffff","iconType":"heart","customIcons":{"isEnabled":false,"filledImage":null,"outlinedImage":null}},"wishlistButtonSettings":{"borderRadius":10,"color":"secondaryColor","fontColor":"#ffffff","style":"filled","isCounterEnabled":false},"wishlistDrawerAndPageSettings":{"device":"hide","drawerPosition":"R","launcherBackgroundColor":"#ffffff","launcherFontColor":"#1a1a1a","launcherIconBackgroundColor":"primaryColor","buttonsColor":"primaryColor","buttonsStyle":"outlined","buttonsFontColor":"#1a1a1a","buttonsBorderRadius":90,"linkColor":"secondaryColor"}} 7385 </script>
7385 7386 7387
7387<script id="wishlist_critical:wishlist_settings" type="text/json"> 7388 {"isWishlistEnabled":true,"isDuplicateWishlistEnabled":false,"isWishlistDrawerEnabled":false,"isDisabledForGuests":true,"isSaveWishlistEnabled":false,"isWishlistSocialShareEnabled":true,"wishlistSocialShareChannels":[{"channelName":"copyShareLink","isEnabled":true},{"channelName":"email","isEnabled":true},{"channelName":"facebook","isEnabled":true},{"channelName":"pinterest","isEnabled":true},{"channelName":"twitter","isEnabled":true},{"channelName":"whatsapp","isEnabled":true}],"isCreateDraftOrderFromListEnabled":false,"isListsApprovalByCompanyMembersEnabled":false,"isEditListsByCompanyMembersEnabled":true,"isEditProductQuantityEnabled":false,"isWishlistApprovalRequestNotificationEnabled":false,"isWishlistApprovalCompletedNotificationEnabled":false} 7389 </script>
7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406<!-- TODO use theme settings from the variables --> 7407 7408
7409<script id="gw-additional-info" type="application/json"> 7410 { 7411 "FEATURES": { 7412 "moneyFormat": "\u003cspan class=money\u003e${{amount}}\u003c\/span\u003e", 7413 "moneyWithCurrencyFormat": "\u003cspan class=money\u003e${{amount}} USD\u003c\/span\u003e", 7414 "shopCurrency": "USD", 7415 "currencySymbol": "$", 7416 "availableApps": ["social-login","reviews","rewards","instagram","wishlist"], 7417 "storefrontApiAccessToken": "42f346b10eb78658dd498b690194661c" , 7418 "countryIsoCode": "US", 7419 "languageIsoCode": "EN", 7420 "currencyIsoCode": "USD", 7421 "gwI18nLocale": "en", 7422 "shopName": "HapaKristin", 7423 "isShadowRootDisabledGlobally": false, 7424 "storefrontLoginUrl": "\/customer_authentication\/login?return_to=%2Faccount%2Flogin\u0026locale=en\u0026ui_hint=full\u0026region_country=US" 7425 }, 7426 "GW_CUSTOMER_INFO": null , 7427 "GW_PRODUCT_INFO": { 7428 "productId": null , 7429 "variantId": null , 7430 "defaultVariantId": null 7431 }, 7432 "GW_SHOP_BRAND_INFO": { 7433 "logoUrl": "//hapakristin.com/cdn/shop/files/logo.png?v=1678840864" 7434 } 7435 } 7436</script>
7436 7437
7438<script> 7439 if (window.GW_GROWAVE_LOADED) { 7440 throw new Error("Growave embeds conflict") 7441 } 7442 if (document && document.cookie && document.cookie.includes("GW_DISABLED=true")) { 7443 console.warn("Growave is disabled by cookie") 7444 } else { 7445 window.GW_GROWAVE_LOADED = true; 7446 7447 7448 let GW_BUNDLE_URL="https://static.growave.io/growave-build/main.2bf1486d.js"; 7449 const GW_DEV_GROWAVE_BUNDLE_URL = localStorage.getItem("GW_DEV_GROWAVE_BUNDLE_URL"); 7450 if (GW_DEV_GROWAVE_BUNDLE_URL) { 7451 GW_BUNDLE_URL = GW_DEV_GROWAVE_BUNDLE_URL; 7452 } 7453 if (!GW_BUNDLE_URL) { 7454 throw new Error("Url for bundle not found!") 7455 } 7456 window.gwWebpackGlobal = window.gwWebpackGlobal || {}; 7457 const mainScript = document.createElement("script"); 7458 mainScript.defer = true; 7459 mainScript.type="module"; 7460 mainScript.src=GW_BUNDLE_URL; 7461 document.body.appendChild(mainScript); 7462 } 7463</script>
7463 7464<!-- END app snippet --> 7465 7466 7467 7468</div><div id="shopify-block-AVDJjUEpiM00yZ0ZUc__3807945401401308513" class="shopify-block shopify-app-block">
7468<script> 7469 7470 7471 window.kaktusAppData = { 7472 customerId: null, 7473 customerTags: ''.split(',') || [] 7474 } 7475</script>
vendor: 1 bytes, line 7475
7475
7476<script async src="https://maps.bestfreecdn.com/storage/js/maps-23864410189.js?ver=1790898148&shop=23864410189"></script>
7476 7477 7478</div><div id="shopify-block-ARzdWTngvMFlVWUtIS__8776485610325655785" class="shopify-block shopify-app-block"> 7479 <link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a099ee-0181-72a2-b832-a61abfa7fe3d/simple-social-login-173/assets/fonts.css" media="print" onload="this.media='all'"> 7480 <noscript><link href="//cdn.shopify.com/extensions/01a099ee-0181-72a2-b832-a61abfa7fe3d/simple-social-login-173/assets/fonts.css" rel="stylesheet" type="text/css" media="all" /></noscript> 7481 7482 7483<link rel="stylesheet" href="https://cdn.shopify.com/extensions/01a099ee-0181-72a2-b832-a61abfa7fe3d/simple-social-login-173/assets/styles.css" media="print" onload="this.media='all'"> 7484<noscript><link href="//cdn.shopify.com/extensions/01a099ee-0181-72a2-b832-a61abfa7fe3d/simple-social-login-173/assets/styles.css" rel="stylesheet" type="text/css" media="all" /></noscript>
7484<script src="https://cdn.shopify.com/extensions/01a099ee-0181-72a2-b832-a61abfa7fe3d/simple-social-login-173/assets/app.js?" async defer></script>
7484 7485 7486</div><div id="shopify-block-AOUJDdFVDWmRGeGtje__9962162814386890965" class="shopify-block shopify-app-block"><!-- Lantern quiz active -->
7487<script> 7488 (function() { 7489 const ready = (callback) => { 7490 if (document.readyState !== 'loading') callback(); 7491 else document.addEventListener('DOMContentLoaded', callback); 7492 } 7493 7494 const updateAndOpenDawnCart = () => { 7495 fetch("/cart/update.js", { 7496 method: "POST", 7497 headers: { "Content-Type": "application/json" }, 7498 body: JSON.stringify({ 7499 updates: {}, 7500 sections: ["cart-drawer", "cart-icon-bubble"], 7501 }), 7502 }) 7503 .then((res) => res.json()) 7504 .then((cartData) => { 7505 document.querySelector("cart-drawer")?.renderContents(cartData); 7506 document.querySelector("cart-drawer.drawer")?.classList?.remove("is-empty"); 7507 }); 7508 }; 7509 7510 const openCartDrawer = async (cart_type) => { 7511 if (cart_type === "1") { 7512 // Dawn theme 7513 updateAndOpenDawnCart(); 7514 } else if (cart_type === "2") { 7515 // Impact theme 7516 document?.documentElement?.dispatchEvent(new CustomEvent('cart:refresh', { 7517 bubbles: true 7518 })); 7519 document?.documentElement?.dispatchEvent(new CustomEvent('variant:add', { 7520 bubbles: true 7521 })); 7522 } else if (cart_type === "3") { 7523 // Focal theme 7524 document?.querySelector('[aria-controls="mini-cart"]')?.click(); 7525 } else if (cart_type === "4") { 7526 // Split theme 7527 document?.querySelector('[aria-controls="cart-drawer"]')?.click(); 7528 } else if (cart_type === "5" && window?.corner?.do) { 7529 // Corner Cart app 7530 window.corner.do("refreshCart"); 7531 window.corner.do("openCart"); 7532 } else if (cart_type === "6") { 7533 // Concept theme 7534 document.querySelector('[aria-controls="CartDrawer"]').click(); 7535 } else if (cart_type === "7") { 7536 // Enterprise theme 7537 document?.documentElement?.dispatchEvent(new CustomEvent('dispatch:cart-drawer:refresh', { 7538 bubbles: true 7539 })); 7540 document?.documentElement?.dispatchEvent(new CustomEvent('dispatch:cart-drawer:open', { 7541 bubbles: true 7542 })); 7543 } else if (cart_type === "8") { 7544 // Shine theme 7545 window?.SHTHelper?.forceUpdateCartStatus() 7546 window?.shtCartDrawer?.openDrawer(); 7547 } else if (cart_type === "9") { 7548 // Sahara theme 7549 document?.querySelector('a[data-cart-link]')?.click(); 7550 } else if (cart_type === "10") { 7551 // Refresh theme 7552 updateAndOpenDawnCart(); 7553 } else if (cart_type === "11") { 7554 // Flow theme 7555 document.querySelector('[aria-controls="CartDrawer"]').click(); 7556 } else if (cart_type === "12") { 7557 // Combine theme 7558 document.querySelector('a[href="/cart"]').click(); 7559 } else if (cart_type === "13") { 7560 // AMP Slide Cart 7561 window?.SLIDECART_UPDATE?.(() => { 7562 window?.SLIDECART_OPEN?.(); 7563 }); 7564 } else if (cart_type === "14") { 7565 // Eurus theme 7566 window?.Alpine?.store('xMiniCart')?.reLoad(); 7567 window?.Alpine?.store('xMiniCart')?.openCart(); 7568 } else if (cart_type === "15") { 7569 // Expanse theme 7570 document?.documentElement?.dispatchEvent(new CustomEvent('cart:build', { 7571 bubbles: true 7572 })); 7573 document?.documentElement?.dispatchEvent(new CustomEvent('cart:open', { 7574 bubbles: true 7575 })); 7576 } else if (cart_type === "16") { 7577 // Baseline theme 7578 document?.documentElement?.addEventListener('theme:cart:update', () => { 7579 document?.documentElement?.dispatchEvent( 7580 new CustomEvent('theme:open:cart-drawer') 7581 ); 7582 }); 7583 document?.documentElement?.dispatchEvent( 7584 new CustomEvent('theme:update:cart') 7585 ); 7586 } else if (cart_type === "17") { 7587 // Opus Cart app 7588 window?.opusRefreshCart();
7589 window?.opusOpen(); 7590 } else if (cart_type === "18") { 7591 // Monster Cart app 7592 if (window?.openCart) { 7593 await window.openCart(); 7594 } else { 7595 setTimeout(async () => { 7596 await window?.openCart?.(); 7597 }, 1000); 7598 } 7599 } else if (cart_type === "19") { 7600 // Impulse theme 7601 document?.documentElement?.dispatchEvent(new CustomEvent('cart:build', { 7602 bubbles: true 7603 })); 7604 document?.documentElement?.dispatchEvent(new CustomEvent('cart:open', { 7605 bubbles: true 7606 })); 7607 } else if (cart_type === "20") { 7608 // Envy theme (Eight Themes) - window.eventBus pub/sub 7609 window?.eventBus?.emit("render:cart:drawer"); 7610 window?.eventBus?.emit("open:cart:drawer"); 7611 } else if (cart_type === "21") { 7612 // UpCart app (Aftersell) - async public API; refresh then open 7613 await window?.upcartRefreshCart?.(); 7614 await window?.upcartOpenCart?.(); 7615 } else if (cart_type === "22") { 7616 // Unicorn app (Vibal Agency) - async refresh, sync open 7617 await window?.unicornRefreshCart?.(); 7618 window?.unicornOpenCart?.(); 7619 } 7620 } 7621 7622 const hash = window.location.hash.substring(1); 7623 const match = hash.match(/(open_cart_drawer=([^&]*))/); 7624 if (match) { 7625 const cart_type = match[2]; 7626 const updated_hash = hash.replace(match[1], ""); 7627 window.location.hash = updated_hash ? `#${updated_hash.replace(/^&/, "")}` : ""; 7628 ready(async () => await openCartDrawer(cart_type)); 7629 } 7630 })(); 7631</script>
7631 7632 7633</div><div id="shopify-block-AN3hEUEZlZ1JxSHh4R__6615124273980966592" class="shopify-block shopify-app-block"> 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654<style id="chatty-root-styles"></style> 7655<div id="Avada-FAQ_Widget-Embed_Block"></div> 7656 7657<!-- BEGIN app snippet: chatty-dev-host -->
7657<script type="text/javascript"> 7658 window.chattyDevHost = window.chattyDevHost || (function () { 7659 var STORAGE_KEY = 'chatty:devHost'; 7660 7661 // Only the origin is caller-controlled; the scheme is always https, so a written one is dropped. 7662 function normalize(value) { 7663 try { 7664 var url = new URL('https://' + String(value).replace(/^[a-z]+:\/\//i, '')); 7665 // Loopback only: a URL alone can set this, so anything resolvable off the machine 7666 // (a real domain, an mDNS .local name) would be remote code in the shop's origin. 7667 var isLoopback = url.hostname === 'localhost' || url.hostname === '127.0.0.1'; 7668 return isLoopback ? url.origin : null; 7669 } catch (e) { 7670 return null; 7671 } 7672 } 7673 7674 // ?chattyDevHost=localhost:3150 pins this lane for later visits; =off clears it. 7675 function pinFromQuery() { 7676 var param = new URLSearchParams(window.location.search).get('chattyDevHost'); 7677 if (param === 'off') window.localStorage.removeItem(STORAGE_KEY); 7678 else if (normalize(param)) window.localStorage.setItem(STORAGE_KEY, normalize(param)); 7679 } 7680 7681 return function () { 7682 try { 7683 var status = window.AVADA_APP_FAQS_STATUS; 7684 if (!status || status.isChattyDev !== true) return null; 7685 pinFromQuery(); 7686 return normalize(window.localStorage.getItem(STORAGE_KEY)); 7687 } catch (e) { 7688 return null; 7689 } 7690 }; 7691 })(); 7692</script>
7692 7693<!-- END app snippet -->
7694<script type="text/javascript"> 7695 try { 7696 window.CHATTY_CORE_STATUS = true; 7697 7698 if (!window.AVADA_FAQ) { 7699 const translation = {"primaryLanguage":"en","languages":["en"]}; 7700 const currentLanguage = 'en'; 7701 translation.primaryLanguage = currentLanguage; 7702 if (!Array.isArray(translation.languages) || translation.languages.indexOf(currentLanguage) === -1) { 7703 translation.languages = [currentLanguage]; 7704 } 7705 translation[currentLanguage] = {"isDefault":true,"isMigrated":true,"FAQ page":{"Heading":"Frequently Asked Questions","Description":"Got a question? We are here to answer!","FAQ page search placeholder":"Type keyword to find your answer","\"All\" tabs in FAQ page":"All","\"No matching article found\" message":"No matching article found","Articles label":"articles","Article label":"article","Contact section heading":"Not finding what you are looking for?","Contact section description":"Chat with us or send us an email","Contact button text":"Contact us","No matching articles found":"No matching articles found"},"FaqsBlock":{"6NLIjutvC8AvOnuzb2s8":{"heading":"Contact Lenses 101","subHeading":"Contact lenses for beginners: everything you need to know ðï¸"}},"FAQ Suggestions":{"0dc8eba6-f872-4eba-9107-794efd870077":{"questionId":"0dc8eba6-f872-4eba-9107-794efd870077","question":"ð How long does delivery take?","answer":"Our processing time usually requires 1-2 business days after payment.\n\n**Worldwide shipping takes 2-7 business days. US Shipping takes 4 to 10 business days.**\n\n_We do not ship during weekends and Korean holidays._","originalQuestion":"ð How long does delivery take?","originalAnswer":"Our processing time usually requires 1-2 business days after payment.\n\n**Worldwide shipping takes 2-7 business days. US Shipping takes 4 to 10 business days.**\n\n_We do not ship during weekends and Korean holidays._"},"794425d6-d0c7-4e64-a7ad-e5a5a98f3387":{"questionId":"794425d6-d0c7-4e64-a7ad-e5a5a98f3387","question":"ð Return policy","answer":"Please check our return/refund/exchange policy [here](https://hapakristin.com/policies/refund-policy).","originalQuestion":"ð Return policy","originalAnswer":"Please check our return/refund/exchange policy [here](https://hapakristin.com/policies/refund-policy)."}},"Show Navigation":{"Home":"Home","Message":"Message","Track":"Track","Help":"Help","Contact us title":"Contact us","Online status":"We are online","Status away back":"We're away · Back {{schedule}}","Break status":"On break · Back at {{schedule}}","Holiday status":"Off today · Back at {{schedule}}","Short day Mon":"Mon","Short day Tue":"Tue","Short day Wed":"Wed","Short day Thu":"Thu","Short day Fri":"Fri","Short day Sat":"Sat","Short day Sun":"Sun","Online message":"Hi there ð. Thank you for reaching out. We'll be with you in a moment","Offline message":"Hi ð, we are currently offline. We will respond as soon as possible during our next business hours.","Usually reply in a few minutes":"Usually reply in a few minutes","Usually reply in few hours":"Usually reply in few hours","Usually reply in a day":"Usually reply in a day","Order tracking title":"Order tracking","Track button":"Track","Article search placeholder":"Search for help","Categories title":"Categories","\"View all\" categories":"View all","\"Article\" singular label":"Article","\"Article\" plural label":"Articles","No matching article found":"No matching article found","No matching category found":"No matching category found","Heading title":"Hi Kristin ð","Heading description":"How can we help you?","Welcome online message":"Get instant answers with Kristin assistant!","Welcome offline message":"How can we help?","Welcome message by chatbot":"I'm Kristin Assistant, I am powered by AI and here to help you find answers quickly. How can I help you?","First message by chatbot":"Hi {{customer_name}}, thanks for providing your contact information! How can I assist you today?","Submit AI handover contact form":"If itâs something urgent, you can also use the form below to reach our support team directly by email.","AI handover contact form button":"Contact form","AI handover contact form type us your problems":"Tell us how we
7705can help","AI handover submit success":"Thanks for your submission. We have received your issue and will address it as soon as possible.","Upload image":"Upload image","Drag image here to upload":"Drag image here to upload","Wrong format (use JPEG, PNG, or GIF)":"Wrong format (use JPEG, PNG, or GIF)","Image too large (max 20MB)":"Image too large (max 20MB)","Upload failed":"Upload failed","Show more":"Show more","Enter your email":"Enter your email","Launcher label":"Need help?","Chat now":"Chat now","Type your message":"Type your message","Emoji":"Emoji","Reply to":"Reply to","Download":"Download","Edit":"Edit","Remove":"Remove","Replying to you":"Replying to you","Replying to yourself":"Replying to yourself","Replying to themselves":"Replying to themselves","Hi ð, how can we help you?":"Hi ð, how can we help you?","Please enter your email to stay updated with our replies":"Enter your email to start chatting with Kristin Assistant","Chat with us as anonymous":"Chat with us as anonymous","Sign up for our newsletter":"(Optional) Sign up to marketing emails and receive a 10% discount for your 1st order","By sending us a message, you agree to our privacy policy":"<p>This email will be used to contact you if we are disconnected.</p>","\"Chat with us on your favorite channel\" on Chat page":"Chat with us on your favorite channel","Track your orders":"Track your orders","Cannot find any orders":"Cannot find any orders.","Order number":"Order number","Order number placeholder":"e.g. 1001","Tracking number":"Tracking number","Tracking number placeholder":"e.g. AA12345","Email address":"Email address","Email input placeholder":"[email protected]","Phone number":"Phone number","Last updated":"Last updated","Tracking information":"Tracking information","Shipping carrier":"Shipping carrier","Fulfilled date":"Fulfilled date","Cannot find tracking information":"Cannot find tracking information.","Order not found":"Order not found.","Estimated delivery":"Estimated delivery","Shipment progress":"Shipment progress","Tracking events":"Tracking events","Latest update":"Latest update","Track another package":"Track another package","Order created":"Order created","At Delivery Hub":"At Delivery Hub","Returning":"Returning","Delivery failure":"Delivery failure","Exception":"Exception","Expired":"Expired","Not found":"Not found","Confirmed":"Confirmed","items":"items","Order":"Order","Need help":"Need help","Teaser message":"Don't miss out ð\nDiscover your special offer waiting just for you!","Invitation message":"Don't miss out ð\nDiscover your special offer waiting just for you!","Subscribe welcome":"Subscribe to get hot deals, exclusive updates and rewards.","Subscribe introduction":"Subscribe now to get your offer!","Subscribe success":"Thank you for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","Subscribed successfully":"Subscribed successfully","Check your email to confirm your subscription":"Check your email to confirm your subscription.","Subscribe button":"Subscribe","Back to chat":"Back to chat","Shop now":"Shop now","Skip":"Skip","Submit":"Submit","Tell us about your experience":"Tell us about your experience","Yes, sure":"Yes, sure","No, thanks":"No, thanks","Your coupon code":"Your coupon code","more":"more","Attempted delivery":"Attempted delivery","Delivered":"Delivered","Canceled":"Canceled","Delayed":"Delayed","Failure":"Failure","Fulfilled":"Fulfilled","In transit":"In transit","Label printed":"Label printed","Label purchased":"Label purchased","Label voided":"Label voided","Marked as fulfilled":"Marked as fulfilled","Not delivered":"Not delivered","Out for delivery":"Out for delivery","Ready for pickup":"Ready for pickup","Picked up":"Picked up","Submitted":"Submitted","Unfulfilled":"Unfulfilled","Partially fulfilled":"Partially fulfilled","Restocked":"Restocked","Pending fulfillment":"Pending fulfillment","Open":"Open","In progress":"In progress","On hold":"On hold","Scheduled":"Scheduled","Request declined":"Request declined","Returned":"Returned","Refunded":"Refunded","Partially refunded":"Partially refunded","Voided":"Voided","Order number is required":"Order number is required","Tracking number is required":"Tracking number is required","First name is required":"First name is required","Name is required":"Name is required","Last name is required":"Last name is required","Email is required":"Email is required","Email is invali
7705d":"Email is invalid","Phone number is required":"Phone number is required","Phone number is invalid":"Phone number is invalid","This field is required":"This field is required","\"Track your order\" on Track page":"\"Track your order\" on Track page","Offline status message":"Usually reply in a few minutes","Order tracking placeholder":"Order tracking","Free shipping on all products ⢠Applies to shipping rates under {{amount}}":"Free shipping on all products ⢠Applies to shipping rates under {{amount}}","Free shipping on all products":"Free shipping on all products","Free shipping on one-time purchase products ⢠Applies to shipping rates under {{amount}}":"Free shipping on one-time purchase products ⢠Applies to shipping rates under {{amount}}","Free shipping on one-time purchase products":"Free shipping on one-time purchase products","Free shipping on subscription products":"Free shipping on subscription products","Free shipping on subscription products ⢠Applies to shipping rates under {{amount}}":"Free shipping on subscription products ⢠Applies to shipping rates under {{amount}}","{{value}} off {{item}}":"{{value}} off {{item}}","{{value}} off {{item}} ⢠Minimum purchase of {{minimum}}":"{{value}} off {{item}} ⢠Minimum purchase of {{minimum}}","{{value}} off {{item}} ⢠Minimum quantity of {{minimum}}":"{{value}} off {{item}} ⢠Minimum quantity of {{minimum}}","{{value}} off {{item}} collections ⢠Minimum purchase of {{minimum}}":"{{value}} off {{item}} collections ⢠Minimum purchase of {{minimum}}","{{value}} off {{item}} collections":"{{value}} off {{item}} collections","{{value}} off {{item}} products ⢠Minimum purchase of {{minimum}}":"{{value}} off {{item}} products ⢠Minimum purchase of {{minimum}}","{{value}} off {{item}} products ⢠Minimum quantity of {{minimum}}":"{{value}} off {{item}} products ⢠Minimum quantity of {{minimum}}","{{value}} off {{item}} products":"{{value}} of {{item}} products","{{value}} off entire order ⢠Minimum purchase of {{minimum}}":"{{value}} off entire order ⢠Minimum purchase of {{minimum}}","{{value}} off entire order ⢠Minimum quantity of {{minimum}}":"{{value}} off entire order ⢠Minimum quantity of {{minimum}}","{{value}} off entire order":"{{value}} off entire order","{{value}} off one-time purchase {{item}}":"{{value}} off one-time purchase {{item}}","{{value}} off one-time purchase {{item}} ⢠Minimum purchase of {{minimum}}":"{{value}} off one-time purchase {{item}} ⢠Minimum purchase of {{minimum}}","{{value}} off one-time purchase {{item}} ⢠Minimum quantity of {{minimum}}":"{{value}} off one-time purchase {{item}} ⢠Minimum quantity of {{minimum}}","{{value}} off one-time purchase {{item}} collections ⢠Minimum purchase of {{minimum}}":"{{value}} off one-time purchase {{item}} collections ⢠Minimum purchase of {{minimum}}","{{value}} off one-time purchase {{item}} collections":"{{value}} off one-time purchase {{item}} collections","{{value}} off one-time purchase {{item}} products ⢠Minimum purchase of {{minimum}}":"{{value}} off one-time purchase {{item}} products ⢠Minimum purchase of {{minimum}}","{{value}} off one-time purchase {{item}} products ⢠Minimum quantity of {{minimum}}":"{{value}} off one-time purchase {{item}} products ⢠Minimum quantity of {{minimum}}","{{value}} off one-time purchase {{item}} products":"{{value}} of one-time purchase {{item}} products","{{value}} off one-time purchase products":"{{value}} off one-time purchase products","{{value}} off one-time purchase products in {{name}}":"{{value}} off one-time purchase products in {{name}}","{{value}} off subscription {{item}}":"{{value}} off subscription {{item}}","{{value}} off subscription {{item}} ⢠Minimum purchase of {{minimum}}":"{{value}} off subscription {{item}} ⢠Minimum purchase of {{minimum}}","{{value}} off subscription {{item}} ⢠Minimum quantity of {{minimum}}":"{{value}} off subscription {{item}} ⢠Minimum quantity of {{minimum}}","{{value}} off subscription {{item}} collections ⢠Minimum purchase of {{minimum}}":"{{value}} off subscription {{item}} collections ⢠Minimum purchase of {{minimum}}","{{value}} off subscription {{item}} collections":"{{value}} off subscription {{item}} collections","{{value}} off subscription {{item}} products ⢠Minimum purchase of {{minimum}}":"{{value}} off subscription {{item}} products ⢠Minimum purchase of {{minimum}}","{{value}} off subscription {{item}} products ⢠Minimum quantity of {{minimum}}":"{{value}} off subscription {{item}} products ⢠Minimum quantity of {{minimum}}","{{value}} off subscription {{item}} products":"{{value}} of subscription {{item}} products","{{value}} off subscription products":"{{value}} off subscription products","{{value}} off subscription products in {{name}}":"{{value}} off subscription products in {{name}}","Buy {{buy}} item, get {{get}} item at {{discount}} off":"Buy {{buy}} item Get {{get}} item at {{discount}} off","Buy {{buy}} item, get {{get}} item free":"Buy {{buy}} item Get {{get}} item free","Buy {{buy}} items, get {{get}} items at {{discount}} off":"Buy {{buy}} items Get {{get}} items at {{discount}} off","Buy {{buy}} items, get {{get}} items free":"Buy {{buy}} items Get {{get}} items free","Buy {{buy}} item, get {{get}} items at {{discount}} off":"Buy {{buy}} item Get {{get}} items at {{discount}} off","Buy {{buy}} item, get {{get}} items free":"Buy {{buy}} item Get {{get}} items free","Buy {{buy}} items, get {{get}} item at {{discount}} off":"Buy {{buy}} items Get {{get}} item at {{discount}} off","Buy {{buy}} items, get {{get}} item free":"Buy {{buy}} items Get {{get}} item free","Spend {{buy}}, get {{get}} items at {{discount}} off":"Spend {{buy}}, get {{get}} items at {{discount}} off","Spend {{buy}}, get {{get}} item at {{discount}} off":"Spend {{buy}}, get {{get}} items at {{discount}} off","Spend {{buy}}, get {{get}} items free":"Spend {{buy}}, get {{get}} items at free","Spend {{buy}}, get {{get}} item free":"Spend {{buy}}, get {{get}} item free","Spend {{buy}}, get {{get}} items at {{discount}} off each":"Spend {{buy}}, get {{get}} items at {{discount}} off each","Spend {{buy}}, get {{get}} item at {{discount}} off each":"Spend {{buy}}, get {{get}} item at {{discount}} off each","Subscribe form introduction":"Subscribe now to get your offer!","Success message":"Thank y
7705ou for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","Welcome message":"Subscribe to get hot deals, exclusive updates and rewards.","Automatically resolve conversation":"This chat was closed due to inactivity. Feel free to send a message to reopen it - we're here to help!","Manually resolve conversation":"The conversation has been resolved. Feel free to send a message to reopen it - we're here to help!","Satisfaction survey intro":"How was your experience? Please rate your conversation so we can improve our service!","Satisfaction survey feedback":"Thank you for your feedback!","Yes, that's helpful!":"Yes, that's helpful!","No, I need more help":"No, I need more help","I need more help":"I need more help","That's helpful":"That's helpful","That answered my question":"That answered my question","All set, thanks!":"All set, thanks!","Talk to a person":"Talk to a person","Speak to an agent":"Speak to an agent","Need more help":"Need more help","Customer asks questions":"Customer asks questions","Bot answers based on knowledge base":"Bot answers based on knowledge base","Bot answers that there is no information":"Bot answers that there is no information","Continue with AI button":"Continue with AI","Your question has been transferred, a human agent will help you soon!":"Your question has been transferred. A human agent will help you soon!","Today":"Today","Yesterday":"Yesterday","Just now":"Just now","Last 7 days":"Last 7 days","Last 30 days":"Last 30 days","Last month":"Last month","Start chat":"Start chat","First name":"First name","Name":"Name","Last name":"Last name","View product":"View product","View cart":"View cart","Complete order":"Complete order","View collection":"View collection","Get more help":"Get more help","Add to cart":"Add to cart","Follow up":"Follow up","Out of stock":"Out of stock","In stock":"In stock","Sold out":"Sold out","Back order":"Back order","View on Store":"View on Store","This size is currently out of stock":"This size is currently out of stock","Product description":"Product description","Thinking":"Thinking","I'm sorry, but I do not have information on that topic.":"I'm sorry, but I do not have information on that topic.","Was it able to resolve your question?":"Was it able to resolve your question?","Glad I could help! Have a nice day! If you have any question, please feel free to contact us.":"Glad I could help! Have a nice day! If you have any question, please feel free to contact us.","Please wait for a while, we need more information to check.":"Please wait for a while, we need more information to check.","Reset conversation":"Reset conversation","Continue as email":"Continue as email","Click to reply":"Click to reply","Ask a question":"Ask a question","Hi! Need help with this product?":"Hi! Need help with this product?","Close chatbox":"Close chatbox","Open chatbox":"Open chatbox","Send transcript to":"Send transcript to","Email transcript":"Email transcript","Transcript sent to email":"Transcript sent to email","Send":"Send","View similar":"View similar","Manual pick for you":"Manual pick for you","Ask about it":"Ask about it","I want to know more about":"I want to know more about","Checkout our best seller!":"Checkout our best seller!","Checkout our new arrivals!":"Checkout our new arrivals!","Top picks for you":"Top picks for you","Analyzing query":"Analyzing query","Looking up information":"Looking up information","Preparing results":"Preparing results","Almost ready":"Almost ready","Searching for products":"Searching for products","Getting product details":"Getting product details","Finding available discounts":"Finding available discounts","Checking size guide":"Checking size guide","Checking loyalty program":"Checking loyalty program","Tracking your order":"Tracking your order","Processing support request":"Processing support request","Connecting to human agent":"Connecting to human agent","Retrieving your cart":"Retrieving your cart","Adding to cart":"Adding to cart","Updating cart":"Updating cart","Shopping bag":"Shopping bag","Your cart":"Your cart","Your cart is empty":"Your cart is empty","Chat with AI to discover products you'll love!":"Chat with AI to discover products you'll love!","Start shopping":"Start shopping","Subtotal":"Subtotal","item":"item","Checkout":"Checkout","Some items in your cart are no longer available":"Some items in your cart are no longer available","Remove from cart?":"Remove from cart?","{{title}} will be removed from your cart.":"{{title}} will be removed from your cart.","Keep item":"Keep item","Remove item":"Remove item","Decrease quantity":"Decrease quantity","Increase quantity":"Increase quantity","I can help you find the right fit":"I can help you find the right fit","Recommended":"Recommended","Option":"Option","sold out":"sold out","Size chart":"Size chart","Size recommendation":"Size recommendation","Product dimensions":"Product dimensions","Swipe to see all c
7705olumns":"Swipe to see all columns","Hide extra columns":"Hide extra columns","Showing {visible} of {total} sizes":"Showing {visible} of {total} sizes","Show less":"Show less","Teaser title":"Donât miss out ð","Welcome message description":"How can we help?","Welcome message title":"Hi thereð","Offline status":"Usually reply in a few minutes","Welcome message by quick replies":"Hi there ð. How can we help you today?","Welcome visitor message":"How can we help?","Welcome visitor teaser":"How can we help?","Response AI message during online":"Let us connect you with one of our support team members who can assist you further. Alternatively, you can also email us at {{storeEmail}} for assistance","Response AI message during offline":"Our support team is currently unavailable. Please email us at {{storeEmail}}, and we'll get back to you as soon as possible.","Question more info AI":"While waiting for us, can you share more details about the situation? It'll help our teammates get an answer faster and we may find more information for you.","Resolved reply button":"That's helpful","Transfer to agent reply button":"Talk to a person","How was your experience?":"How was your experience?"},"Campaign":{"SEwE5YQcBPHAhK1mdcJu":{"message":"<p>First time? Create your account now to get FREE SHIPPING or 10% OFF on your first order</p>","quickQuestions":[{"content":"What is your best seller?","id":1},{"content":"Can you help me find some products?","id":2},{"content":"Where is my order?","id":3}],"productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount"},"Z5PvawDW7IvEo6XcgYAE":{"message":"<p>Don't miss out ð</p><p>Discover your special offer waiting just for you!</p>","successMessage":"Thank you for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","emailMessage":"Check your email to confirm your subscription."},"vKt2hRKj6W0V2F4sSZvJ":{"productMessage":"<p>Not in stock? Get the trial pair!</p>","bestSellerMessage":"","newArrivalsMessage":"","topPicksForYouMessage":""},"LPe1IM6W99QsVY5Lg5JC":{"message":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Shipping is free on orders $50+ to the USA ðIf this is your first time with us, use the code WELCOME to get 10% OFF today</p>","usageInstruction":"10% OFF your first order. Cannot be combined with a Free Shipping discount if your order is less than $50.","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you"},"RQl8POyltQtW5QEtSyKd":{"message":"<p>Welcome back {{customer_name}} ðLet me know if you have any questions!</p>","quickQuestions":[{"content":"What is your best seller?","id":1},{"content":"Can you help me find some products?","id":2},{"content":"Where is my order?","id":3}],"replyPlaceholder":"Click to reply"},"CD7UvgtLcQ13n2t08F6k":{"message":"<p>Every 11th of the month, buy 2 packs from this collection for only $30!</p>","productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for this collection, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you"},"gGFjz0cef3hL7Uj5nfRG":{"message":"<p>Don't miss out ð</p><p>Discover the special offer we're tailored for you!</p>","successMessage":"Thank you for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","emailMessage":"Check your email to confirm your subscription."},"VUDcfZV0LkA75mVdLf1f":{"message":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productMessage":"<p>Add 1 Cat-titude Kristin Lady Beige to your cart and get 10% OFF $75 !</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now"},"NlQvb3gKh5HfpMaZrU4r":{"message":"<p>Hi! Interested in this product? Ask me anything or get more details!</p>","quickQuestions":[{"id":1,"content":"Is this item still available?"},{"id":2,"content":"How fast is shipping?"},{"id":3,"content":"Which size should I choose?"}],"productMessage":"<p>You might like this product!</p>","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you"},"V11cdrxgS9zOUiZmX9ZX":{"message":"<p>Hi! Interested in this product? Ask me anything or get more details!</p>","quickQuestions":[{"id":1,"content":"Is this item still available?"},{"id":2,"content":"How fast is shipping?"},{"id":3,"content":"Which size should I choose?"}],"productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you"},"lJ4m2WawSsP09k56kmxr":{"message":"<p>Hi! I see you're browsing our collection. I can help you find the perfect product</p>","productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you"},"1AmUS1kf6XHp4XRfi1ix":{"message":"<p>Every 1st day of the month, buy 2 monthly packs from this collection at 50% OFF!</p>","productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now"},"fU6FqVZImR41eZDdnuVf":{"message":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productMessage":"<p>Get 10% OFF when you add 1 Dolly Beige Kristin to your cart!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now"},"9tYndwSohFZfUv2XZVFc":{"message":"<p>Can I help you find the perfect product? ð</p>","quickQuestions":[{"id":1,"content":"What is the best product?"},{"id":2,"content":"What is on sale?"},{"id":3,"content":"Can you suggest products for me?"}]},"o3EwSblQzIZRcFHHLS1c":{"message":"<p>
7705Every 21st day of the month, buy 2 trial packs from this collection, get 1 FREE!</p>","productMessage":"<p>You might like this product!</p>","discountMessage":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now","quizMessage":"Looking for the right product? Let me ask a few quick questions to help you find it.","quizYesButton":"Yes, let's start!","quizNoButton":"No, thanks"}},"FAQs":{"n5xJCX9O8tJITdsVxPbg":{"questions":[{"questionId":"cxXY5VVl87dZM7IdrY1n","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"Do you ship internationally?","answer":"<p style=\"font-family: DM+Sans;\">Yes, we do ship internationally.</p><p style=\"font-family: DM+Sans;\">You can find the latest shipping info here (shipping fee & available countries) </p><p style=\"font-family: DM+Sans;\">ðï¸ <a rel=\"noopener noreferrer\" href=\"https://www.hapakristin.com/pages/shipping-information\">https://www.hapakristin.com/pages/shipping-information</a></p><p style=\"font-family: DM+Sans;\"></p>"},{"questionId":"45kWzdYTSsYWOdcvJaBP","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":false,"isOutOfDate":false,"question":"ð¨ Shipping to the Middle East","answer":"<p style=\"font-family: DM+Sans;\">Due to ongoing regional risks, a <strong>temporary carrier surcharge applies to Middle East shipments</strong>. Shipping is currently<strong> $50 USD</strong>.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><span><strong><em>FREE shipping is available on orders over $100.</em></strong></span></p><p style=\"font-family: DM+Sans;\"><span><em> </em></span></p><p style=\"font-family: DM+Sans;\"><span>Please note that free shipping for first orders is not available at this time.</span></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Thank you for your patience and understanding.</p>"},{"questionId":"kB8ZOkcWvAtTPVmxalcp","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"ð¦ U.S. Orders â Customs & Tariffs","answer":"<p style=\"font-family: Roboto;\">All customs duties and tariffs (10%â15%, depending on the item) are <strong>prepaid at checkout</strong>, ensuring a smooth delivery with <strong>no extra fees upon arrival</strong>.<br>We handle all the customs and tariff processes for you â¨</p><p style=\"font-family: Roboto;\"> </p><p style=\"font-family: Roboto;\">ð¦ <strong>Important Notice </strong><br><em>Customs inspections for e-commerce shipments in the U.S. have recently increased, resulting in more frequent checks. As a result, our delivery time to the U.S. has been updated as follows:</em></p><ul><li><p style=\"font-family: Roboto;\"><em>5â15 business days (typical)</em></p></li><li><p style=\"font-family: Roboto;\"><em>Up to 30 days if selected for customs inspection</em></p></li></ul><p style=\"font-family: Roboto;\"></p><p style=\"font-family: Roboto;\"><em>After your USPS tracking number is assigned and the status shows âReady for onboard,â please note that tracking updates will not appear while is still undergoing customs clearance. Even though the package has arrived in the US, no updates will be available until it is released.</em></p><p style=\"font-family: Roboto;\"></p><p style=\"font-family: Roboto;\"><em>Once your shipment clears customs, tracking updates will resume.</em></p><p style=\"font-family: Roboto;\"><em>We truly appreciate your patience and understanding.</em></p>"},{"questionId":"EFGQmHlCEnIo3c0b7I9i","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"ð¦ Europe Orders â Customs & Duties","answer":"<p>Starting <strong>1 July 2026</strong>, the European Union will introduce a <strong>â¬3 customs duty</strong> on low-value parcels imported from outside the EU.</p><p></p><p>For most EU destinations: the <strong>â¬3 customs duty + any applicable local import fee or VTA + handling fee will be collected upon delivery</strong> by the local carrier. If this fee is not paid, the package cannot be delivered.</p><p></p><p><strong><u>Exception</u> : Sweden, Denmark, the Netherlands & Norway</strong></p><p><strong>Important â ï¸</strong></p><p>Duties and taxes are collected at checkout for your order. However, due to a carrier-related issue, a small number of shipments may be incorrectly charged import duties or taxes again upon delivery.</p><p>If this happens, please complete the payment to receive your package, then contact our Customer Support team with a copy of your payment receipt. We will refund the duties and taxes that were originally collected at checkout.</p><p>Unfortunately, we are unable to identify in advance which shipments may be affected. We sincerely apologize for any inconvenience and appreciate your understanding.</p>"},{"questionId":"1OmyWMsLVf1Z3b5yEyiZ","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"Shipping fees & delivery timelines","answer":"<p style=\"font-family: DM+Sans;\"><strong>Shipping to the United States (USPS)</strong><br>Estimated delivery: 5-15 business days</p><ul><li><p style=\"font-family: DM+Sans;\">Orders <strong>under $50 USD</strong>: $12.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$50 USD or more</strong>: <strong>FREE</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong>Rest of the world</strong><br>Estimated delivery: 2â7 business days</p><ul><li><p style=\"font-family: DM+Sans;\">Orders <strong>under $50 USD</strong>: $12.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$50 â $99.99 USD</strong>: $7.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$100 USD or more</strong>: <strong>FREE</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">ð« <strong>Important:</strong> We do <strong>not ship to PO Boxes, Uni BOX, or shared addresses.</strong> Please use a <strong>secure and valid shipping address</strong> to avoid delivery issues.</p>"},{"questionId":"S6SrrXzHdkbw9V5RlBFK","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"Customs & additional fees","answer":"<p style=\"font-family: DM+Sans;\">Destination countries may apply customs duties, taxes, or require a TAX ID and additional documentation. <strong>The recipient is fully responsible for these requirements and fees.</strong></p><p style=\"font-family: DM+Sans;\"><em>Please note: EU orders are subject to these fees.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Hapa Kristin is not responsible for unpaid customs charges, missing documentation, or orders returned due to customs clearance issues, and refunds will not be issued in these cases.</strong> Please check your countryâs customs policies before placing an order.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Customs duties and taxes are collected and processed directly by the destination countryâs customs authority (e.g., U.S. Customs, European Union, etc...). <strong>Once paid, these charges are non-refundable, and weâre unable to issue refunds or store credits for them.</strong></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">International shipments may be <strong>opened and inspected by customs authorities when required</strong>. As these processes are handled entirely by local customs, weâre unfortunately <strong>unable to take responsibility for any delays or provide refunds for delays caused by customs inspections</strong>.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong>ð¦ U.S. Customers â </strong><em>As of Aug 29 2025, US orders are subject to tariffs. These customs fees are collected directly at checkout. </em></p><p style=\"font-family: DM+Sans;\"><strong>ð¦ E.U. Customer â </strong><em>EU orders are subject to customs fees. The customer is responsible for these upon delivery.</em></p>"},{"questionId":"8Nok3H64W13NJUW2fUos","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"Can I amend or cancel my order?","answer":"<p style=\"font-family: DM+Sans;\">If your order has not been processed, you can edit your shipping information and cancel it yourself:</p><p style=\"font-family: DM+Sans;\"><strong>Log in â My Account â Orders â âCancel / Editâ (if available)</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>Once your order is canceled, the refund will be processed right away. Please allow a few business days for it to reflect in your account.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If your order is already being processed, you will see:</p><p style=\"font-family: DM+Sans;\"><strong>âThis order cannot be edited.â</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In this case, please contact us immediately at <strong>[email protected]</strong>. </p><p style=\"font-family: DM+Sans;\">While we will do our best to assist, cancellations or changes cannot be guaranteed once the order is being prepared for shipment.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>For any item changes (model, color, or prescription), please reach out to our Customer Care team at [email protected]. </strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h3>â ï¸ <strong>Important</strong></h3><ul><li>Customers are responsible for verifying shipping address, prescription power, and product selection before checkout.</li><li>We do not offer refunds, exchanges, or replacements for errors caused by incorrect information provided by the customer.</li><li>Refunds or replacements are only available for defective, damaged, or incorrect items sent due to our error.</li></ul>"},{"questionId":"jzUPmi8k9RY9rZxbrqaq","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"How long will it take to receive my order?","answer":"<p style=\"font-family: DM+Sans;\">Orders must be placed by 5pm Pacific Daylight Time (PDT) to be processed on the same business day; orders placed after will be processed on the next business day.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Our processing time usually requires 1-2 business days after payment.</p><p style=\"font-family: DM+Sans;\"><strong><u>We do not ship during weekends and Korean holidays.</u></strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Worldwide shipping takes 2-7<em> business days</em>. US Shipping takes <em>5 to 15 business days.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">A tracking code and a delivery estimate will be sent to you via email once it the package is sent out.</p>"},{"questionId":"kjnbCp72Xb0fhNwM8Ayw","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"How to track my order?","answer":"<p style=\"font-family: DM+Sans;\">
7705You will receive an email notification of your order confirmation as well as a dispatch email along with tracking information once your item is on its way to you.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">You can also check your package status on your account.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Note:</strong> If your carrier is <strong>DABONEA</strong>, once the package reaches your country, it will be handed over to <strong>USPS</strong> (U.S. orders) or <strong>UPS</strong> (rest of the world). You can track your order using the <strong>local carrier tracking number</strong> shown in red at the top right corner of your order page.</p>"},{"questionId":"Xb1lgtYVI7sfUZYSVlTX","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"I never got my order, what to do?","answer":"<p style=\"font-family: DM+Sans;\">For delivery issues or to reschedule a delivery, please contact the shipping provider directly with your tracking number.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If they cannot locate your package, file a claim with the carrier and email us with the case number at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>"},{"questionId":"QbIEwlWRNDNrTMJ1G2tn","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"My order is late","answer":"<p style=\"font-family: DM+Sans;\">HapaKristin is not responsible for any delays beyond our control once packages are out of our hands.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Shipment delays do not qualify for refunds. Kindly reach out to the shipping provider directly for real-time updates, if the estimated time for processing and shipment has not yet elapsed.</p>"},{"questionId":"1fkgY7pApQHVCTMevqqq","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"My package was returned to sender","answer":"<p style=\"font-family: DM+Sans;\"><strong>HapaKristin is not responsible for packages sent back due to factors outside our control, such as absence of the recipient, customs, wrong address failure to pickup package on time etc....</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If the package cannot be delivered due to the customer's<em> inaction or mistake</em>, refund the order cannot be refunded. The customer can choose between a <u>Gift Card refund</u> or a <u>replacement package</u>. Please note that reshipment fees apply to the replacement order.</p><p style=\"font-family: DM+Sans;\"><strong>Only one replacement can be offered per failed delivery.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If your package cannot be delivered because of an issue caused on the customer's part, the package will be discarded and you will not be eligible for a refund.</p><p style=\"font-family: DM+Sans;\">If this situation arises, we will inform you beforehand and you will have 72 hours to get back to us to resolve the delivery issue.</p>"},{"questionId":"VaimcYG1fdsZOwWeRD5f","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"My order was delivered but I never received it","answer":"<p style=\"font-family: DM+Sans;\">If, for any reason, you have not received the package, we would recommend taking the following steps:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>- Double-Check</strong>: Please make sure to thoroughly check around your property, with neighbors, or anyone who may have accepted the package on your behalf.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>- Contact the shipping provider:</strong> If you are unable to locate your package after a thorough search, we recommend getting in touch with carrier directly. They will be able to provide you with further assistance in locating your package.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Hapa Kristin is unable to take responsibility for items that have been confirmed as delivered to the correct shipping address and handled according to the delivery instructions.
7705</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>Claims must be submitted with the carrier </em><strong><em>within 15 days</em></strong><em> from the delivery date.</em></p><p style=\"font-family: DM+Sans;\">Carriers only keep detailed tracking and delivery information for a limited time. Filing a claim within 15 days allows the carrier to investigate while the case is still active in their system.</p>"},{"questionId":"ieJz1pbjEtabtvUMTzYa","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"A delivery attempt was made but I wasnât home to receive the package, what do I do?","answer":"<p style=\"font-family: DM+Sans;\">If you were absent when a delivery attempt was made, your package will be sent to a local post office.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Kindly call the number on the notice slip you receive to retrieve your package and follow up directly with the shipping provider with your tracking number.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that we are not responsible for any packages that are returned due to failed retrieval from the post office.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">You can track your package from the tracking number we provide you through your email address.</p>"},{"questionId":"yXuPspaGfL4zIoH1lJKg","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"What does 'Unfulfilled' and 'Fulfilled' mean for my order status?","answer":"<p style=\"font-family: DM+Sans;\">Your order will be displayed as <strong>'Unfulfilled' until your package is shipped out</strong>. 'Unfulfilled' simply means that we are still preparing your order.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Once your order is shipped, the status will update to 'Fulfilled.' Please note that <strong>'Fulfilled' means your package has been shipped, but it has not yet been delivered.</strong></p>"},{"questionId":"O0EYHmo4H8Q4ZQhHyXab","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"How can I get an invoice for my order?","answer":"<p style=\"font-family: DM+Sans;\">When your order is sent, you will receive your tracking number by email, that email includes a link to download the invoice for your order. Please note that we cannot provide the invoice until the order is sent out. The invoice currency is in USD, we cannot change the currency. </p>"},{"questionId":"51q36TT1NuyQ0OeS4U70","categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"published":true,"isOutOfDate":false,"question":"Can I receive a refund or gift card for customs duties and taxes?","answer":"<p style=\"font-family: DM+Sans;\">Customs duties and taxes are collected and processed directly by the destination countryâs customs authority (e.g., U.S. Customs). Once paid, these charges are <strong>non-refundable</strong>, and weâre unable to issue refunds or store credit for duties or taxes.</p>"}],"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":true,"position":1,"icon":"shipment","published":true,"isOutOfDate":false,"question":"Order & Shipping"},"QcPB5LCXtxQdM2DNPN38":{"questions":[{"questionId":"NQF2O4X0fRkMVMQFGWm6","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"What is your return policy? Can I exchange an item?","answer":"<p style=\"font-family: DM+Sans;\"><strong>All contact lenses are final sale and cannot be returned for hygienic and safety reasons.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We kindly ask customers to double-check the options they select (lens color/type/power) and to inform us <u>within 6 hours</u> after payment if you would like to amend your order.</p><p style=\"font-family: DM+Sans;\">HapaKristin is not responsible for any incorrect info provided by the customer and refund/replacement cannot be done once the order has been shipped.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that refund or replacement are not considered for â<em>unwanted</em>â cases, including the color being different than expected, the lens looking too small or too big on eyes, etc.</p><p style=\"font-family: DM+Sans;\">
7705As people have different eye conditions such as light transmissivity, reflectance, and iris colors, the lens may slightly vary once tried on.</p><p style=\"font-family: DM+Sans;\">Kindly double-check your order before checking out.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>HapaKristin will not accept any return of contact lenses. Lenses returned will not be processed and discarded. </em></p>"},{"questionId":"HYvWy0rVGHZYNE1onuOn","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"I received a defective item","answer":"<p style=\"font-family: DM+Sans;\">We are really sorry if you have received a faulty item.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you received a defective lens and/or have clear symptoms in your eyes that is beyond mild irritation, kindly reach out to <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a> <strong>WITHIN 14 DAYS</strong> of receiving your package along with the following information:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">1. a picture of the <strong><em>lot number</em></strong> of the defective item</p><p style=\"font-family: DM+Sans;\">2. a picture that proves your symptoms</p><p style=\"font-family: DM+Sans;\">3. a photo with the defective lens cut in half (This process is to ensure your safety and prevent customers from using faulty contacts.)</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">After we process the required pictures mentioned above, you may receive a replacement or a refund.</p><p style=\"font-family: DM+Sans;\">Please note that reimbursement cannot be done if we are not provided with above required information.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>â ï¸ Important Warning: <em>Please do not discard the defective item until a resolution has been reached, as we may need further pictures or information to process your claim.</em></strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Additionally, please note that contacts will not be inspected for returns if for the following reasons:</strong></p><p style=\"font-family: DM+Sans;\">- Frozen lenses</p><p style=\"font-family: DM+Sans;\">- Contacts slightly moving around or not following your iris (this condition might be caused by dryness and/or contact size not fitting your eye)</p><p style=\"font-family: DM+Sans;\">- Mild discomfort and dryness</p><p style=\"font-family: DM+Sans;\">- Change of mind</p><p style=\"font-family: DM+Sans;\">- Sligh blurriness</p><p style=\"font-family: DM+Sans;\">- Difference in color from expected</p>"},{"questionId":"b1NclSaRLtP7yY3TRkq9","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"I received the wrong item","answer":"<p style=\"font-family: DM+Sans;\"><strong>In case of receiving the wrong item(s), </strong>please contact our customer service at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a> <strong>WITHIN 7 DAYS </strong>after receiving your package, with pictures of<strong> ALL</strong> the wrong items you received.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Once received, we will proceed to make a replacement order, free of charge.</p>"},{"questionId":"ryZ2KPFFosADu1Sr2zeG","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"What if my package was stolen?","answer":"<p style=\"font-family: DM+Sans;\">If you choose to forfeit the signature requirement, the insurance will also be forfeited, and we will not be able to compensate for any theft.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you are not home at the time of delivery, we recommend rescheduling it through the carrierâs website to ensure secure receipt of your package.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We highly recommend scheduling the delivery to be received in person once you receive your tracking code.</p>"},{"questionId":"lsfGXkG4Kov6c6HhU2Ex","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"What should I do if my package arrived damaged?","answer":"<p style=\"font-family: DM+Sans;\">If your package arrived damaged, please send us pictures of the damage for further instructions.
7705</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Note that light damage during transportation, as long as the lenses are still sealed and usable, does not qualify for a refund.</p>"},{"questionId":"iGnm7x9pHBPtk2sfziun","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"What should I do if I receive a defective product purchased from a physical store?","answer":"<p style=\"font-family: DM+Sans;\">To address issues with a defective product, please visit the<strong> store where you made the purchase </strong>and provide the following information:</p><ol><li><strong>Proof of Payment:</strong> Receipt or transaction confirmation.</li><li><strong>Date of Purchase:</strong> Exact purchase date.</li><li><strong>Contact Information:</strong> Name and phone number associated with the purchase.</li></ol><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that we are a global online store, operating as a separate entity from local physical stores. Unfortunately, we do not have the authority to manage claims under their policies and can only follow their guidelines.</p>"},{"questionId":"rcNQBad5YHg74ziILXji","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"Do you offer price matching?","answer":"<p style=\"font-family: DM+Sans;\">Unfortunately, we do not offer price matching on flash sales or for orders that have already been shipped. Our pricing is subject to change during promotional events, and once an order has been dispatched, we cannot adjust the price for that specific order.</p>"},{"questionId":"HJ1y6ZCcSD9gZVCTQlP6","categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"published":true,"isOutOfDate":false,"question":"ð¨ Notice Regarding Fraudulent Claims","answer":"<p style=\"font-family: DM+Sans;\">We are committed to providing exceptional service and ensuring a seamless shopping experience for all our customers. However, we have recently noticed an increase in abusive refund requests, such as false claims of missing or incorrect products.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">As a seller of medical devices, we maintain high traceability standards for our products, including detailed records of shipments, quality checks, and inventory management. This allows us to identify and verify any false claims with precision.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please be advised that submitting fraudulent claims is taken very seriously. Customers found making false claims will be permanently banned from purchasing with us. Additionally, their information may be shared with our official suppliers to prevent similar abusive activities across authorized sellers.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We appreciate your understanding and cooperation in maintaining a fair and honest shopping environment for everyone.</p>"}],"categoryId":"QcPB5LCXtxQdM2DNPN38","featured":true,"position":2,"icon":"exchange","published":true,"isOutOfDate":false,"question":"Refunds & Returns"},"n3cEUd6Y8S0omuOySCIF":{"questions":[{"questionId":"kLgSvMyoC9pQTAnTLqkc","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"Can I order different prescription/power for my left and my right eye?","answer":"<p style=\"font-family: DM+Sans;\">Unfortunately, we do not offer mix-and-match packages as our lenses come pre-packaged. If you require different lens corrections for each eye, you would need to purchase two separate packs, each matching the prescription of one of your eyes.</p><p style=\"font-family: DM+Sans;\"> </p>"},{"questionId":"PaK8nV2N8QYAIPZwYIwG","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"How long can I wear the colored lenses? Can I wear them everyday? ","answer":"<p style=\"font-family: DM+Sans;\">We do not recommend wearing color contacts for more than 6 hours at a time, nor do we recommend wearing them everyday.</p><p style=\"font-family: DM+Sans;\"><strong>Do not wear lenses while swimming, sleeping, or showering.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Color contact lenses are meant for <em>cosmetic enhancement only</em> and not as a direct replacement for conventional clear lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>> MONTHLY</strong> lenses can be used up to 30 days.</p><p style=\"font-family: DM+Sans;\"><strong>> DAILY</strong> lenses should be thrown out at the end of the day.</p>"},{"questionId":"Y9A02IcghNp5YCBDrAQK","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"Can I wear colored lenses? ","answer":"<p style=\"font-family: DM+Sans;\"><strong>You should not wear contacts if you:</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">⢠Have an eye infection or inflammation (redness and swelling)</p><p style=\"font-family: DM+Sans;\">⢠Have an eye disease, eye injury or dryness that interferes with contact lens wear</p><p style=\"font-family: DM+Sans;\">⢠Have a systemic disease that may be affected by, or could impact, contact lens wear</p><p style=\"font-family: DM+Sans;\">⢠Have certain types of allergic conditions</p><p style=\"font-family: DM+Sans;\">⢠Are using certain medications, such as some eye medications Please consult with your doctor before trying contact lenses for the first time.</p>"},{"questionId":"RMNX7fuI4vyyiq8fLNfx","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"I am having trouble uploading my prescription (US ONLY)","answer":"<p style=\"font-family: DM+Sans;\">Please try the following methods:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">⢠Try using a mobile device to upload your prescription.</p><p style=\"font-family: DM+Sans;\">⢠Try using a desktop to upload you prescription.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you are still experiencing issues, feel free to send the prescription to our email at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>"},{"questionId":"i3zSSESI2OWyVHsyJXA3","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"Will my prescription affect the lenses I ordered? (US ONLY)","answer":"<p style=\"font-family: DM+Sans;\"><span style=\"color: rgb(0, 0, 0);\">For customers receiving orders in the United States, we request a copy of your valid prescription to comply with potential customs requirements.</span></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">The prescription you upload <strong>will not be used to change, adjust, or alter your order</strong>. Your lenses will be shipped exactly as you placed them. Your lenses are shipped exactly as placed.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please review your order details carefully and contact us promptly if you need any changes.</p>"},{"questionId":"TqPoYBxfsmmT2EFti3Ux","categoryId":"n3cEUd6Y8S0omuOySCIF","featured":false,"published":true,"isOutOfDate":false,"question":"Where do you ship from?","answer":"<p style=\"font-family: DM+Sans;\">Orders are dispatched from our warehouse located in Seoul, South Korea.</p>"}],"categoryId":"n3cEUd6Y8S0omuOySCIF","featured":true,"position":3,"icon":"cart","published":true,"isOutOfDate":false,"question":"Shopping"},"tKkraX2O381C6VLUtqU0":{"questions":[{"questionId":"VsJF6vOzaosNoH7hni5V","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Are your lenses safe?","answer":"<p style=\"font-family: DM+Sans;\"><strong>Your health and safety is our top priority! </strong></p><p style=\"font-family: DM+Sans;\"><strong></strong></p><p style=\"font-family: DM+Sans;\">All of our lenses are <strong>KFDA-approved</strong> (Korean Food & Drug Administration) and are sourced exclusively from <strong>reputable, certified manufacturers in South Korea</strong>. We never outsource productionâ<strong>every pair of lenses is 100% made in Korea</strong> to ensure the highest standards of safety, hygiene, and quality.</p>"},{"questionId":"nYqhy02qrdfAOCYRDnwe","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Lens care & hygiene: Dos & Donâts","answer":"<h3><strong>Do</strong></h3><p style=\"font-family: DM+Sans;\"> ⢠Always wash your hands before touching your lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Use fresh lens solution every time (for monthlies)</p><p style=\"font-family: DM+Sans;\"> ⢠Replace your lens case regularly</p><p style=\"font-family: DM+Sans;\"> ⢠Follow the recommended wear schedule</p><p style=\"font-family: DM+Sans;\"><br></p><h3><strong>Donât</strong></h3><p style=\"font-family: DM+Sans;\"> ⢠Sleep in lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Use water or saliva to clean lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Wear lenses longer than recommended</p><p style=\"font-family: DM+Sans;\"> ⢠Share lenses with others</p>"},{"questionId":"OMmlv7fLNsz8vcpzRYYS","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How do I apply the lenses? ","answer":"<p style=\"font-family: DM+Sans;\"><strong>Please wash your hand thoroughly before removing the lens from the packaging. </strong><em>To avoid discomfort, apply make-up only after putting your lenses on.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong></strong>
7705Rinse and dry your hand with a lint-free towel.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Check that the lens is not inside out.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In order to not damage your contact lenses, only use your fingertips to handle them. Never put on a lens with sign of tear.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">- if the edges flare out, your lens is inside out</p><p style=\"font-family: DM+Sans;\">- if the color and the pattern are blurry, your lens is inside out if your lens is plate-shaped, your lens is inside out</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">With your hand, gently hold your upper eyelid with one finger so your eyelashes don't get in the way. Pull down your lower eyelid with your other fingers.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Move the colored lens steadily toward your eye. Apply the lens on your sclera (white part of the eye) and gently close your eyes to allow the lens to settle. Repeat for the other eye.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Always remember to clean, rinse and clean the case after inserting the lens in your eyes. Only use contact lens solution to rinse the lenses. <strong>NEVER </strong>use water to clean, lubricate, nor store contacts.</p><p style=\"font-family: DM+Sans;\"><strong>If your eyes get itchy, blur or become red, please reach out your eye doctor immediately.</strong></p>"},{"questionId":"BhA3EL9NKvk0iFUJLbZt","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How do I remove the lenses? ","answer":"<p style=\"font-family: DM+Sans;\"><strong>Please make sure that your hands are clean and dry before removal.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Rinse and dry your hand with a lint-free towel.</p><p style=\"font-family: DM+Sans;\">Your lens should be centered before removing it.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Pull the edge of your upper and lower eyelid outwards. Gently slide the lens to the lower white part of your eye.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Smoothly squeeze the lens between your thumb and index finger and gently remove it.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>IMPORTANT!</strong></p><p style=\"font-family: DM+Sans;\">Discard <strong>DAILY </strong>disposable contact lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you use <strong>MONTHLY </strong>please make sure to clean and disinfect the lens before putting them back into their case with clean, new solution.</p>"},{"questionId":"q3Shd3Fm1bim6RHwAPGh","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How to put in & remove contact lenses with long nails ð
","answer":"<p style=\"font-family: DM+Sans;\">Having long nails doesnât mean you canât wear contact lenses comfortably! With a few small technique adjustments, you can safely put in and remove your lenses without touching your eyes with your nails.</p><p style=\"font-family: DM+Sans;\"><br></p><h3>⨠Before You Start</h3><ul><li><strong>Always wash and dry your hands thoroughly.</strong></li><li>Make sure your <strong>lens case and solution are clean</strong>.</li><li>Try to <strong>use the pads of your fingers</strong>, not the tips or nails.</li><li>Keep your <strong>nails angled away from your eye</strong> at all times.</li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h1>Putting In Contact Lenses</h1><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>1. Use the Finger Pad Method</strong></p><p style=\"font-family: DM+Sans;\">Place the lens on the <strong>soft pad of your index finger</strong> (not the fingertip). This gives you better control and keeps nails away from your eye.</p><p style=\"font-family: DM+Sans;\"><strong>2. Hold Your Eyelids Securely</strong></p><p style=\"font-family: DM+Sans;\">Use one hand to gently hold your <strong>upper eyelid</strong>, and the other hand to hold your <strong>lower eyelid</strong>. This prevents blinking while you place the lens.</p><p style=\"font-family: DM+Sans;\"><strong>3. Place the Lens Gently</strong></p><p style=\"font-family: DM+Sans;\">Look straight ahead or slightly upward and <strong>softly place the lens on your eye</strong> using the pad of your finger. Blink slowly to center the lens.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">ð¡ <em>Tip:</em> If your nails are very long, try placing the lens slightly from the <strong>side angle</strong> instead of directly from the front.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h1>Removing Contact Lenses</h1><p style=\"font-family: DM+Sans;\"><br></p><h3>1ï¸â£ The Side-Finger Pinch Method</h3><p style=\"font-family: DM+Sans;\">This is one of the most popular techniques.</p><ul><li>Look slightly upward.</li><li>Use the <strong>pads of your index fingers (not the tips)</strong>.</li><li>Gently push the lens from opposite sides and <strong>pinch it out softly</strong>.</li><li>Keep nails <strong>angled away from your eye</strong>.</li></ul><h3><br></h3><h3>2ï¸â£ The Rolling / Slide Method</h3><p style=\"font-family: DM+Sans;\">Great if you want to avoid pinching.</p><ul><li>Look upward.</li><li>Use the <strong>pad of your index finger</strong> to gently <strong>
7705slide the lens down</strong> toward your lower eyelid.</li><li>Once it moves down, the lens will <strong>fold slightly and come out easily</strong>.</li></ul><h3><br></h3><h3>3ï¸â£ The Knuckle Method</h3><p style=\"font-family: DM+Sans;\">Helpful for very long nails.</p><ul><li>Use the <strong>knuckle of your index finger</strong> instead of the fingertip.</li><li>Gently push the lens downward until it slides out.</li></ul><h3><br></h3><h3><br></h3><h3>ð Extra Tips for Long Nail Wearers</h3><ul><li>Try applying lenses <strong>before doing your makeup</strong>.</li><li>Keep nails <strong>smooth and filed</strong> to prevent scratches.</li><li>Work <strong>slowly and gently</strong>ânever rush your eyes!</li><li>If youâre new to lenses, practice a few times until the motion feels natural.</li></ul>"},{"questionId":"JABAQR9vRf0hhOnpGUPL","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Types of contact lenses","answer":"<h3>By Wear Schedule</h3><p style=\"font-family: DM+Sans;\"> ⢠<strong>Daily lenses</strong>: Use once and discard at the end of the day (most hygienic & beginner-friendly)</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Monthly lenses</strong>: Reusable for up to 1 month (30 days) with proper cleaning and storage (most cost-effective)</p><p style=\"font-family: DM+Sans;\"><br></p><h3>By Function</h3><p style=\"font-family: DM+Sans;\"> ⢠<strong>Non-prescription lenses</strong>: For color or style only</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Prescription lenses</strong>: Correct vision</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Toric lenses</strong>: Designed for astigmatism (weighted to prevent rotation)</p>"},{"questionId":"F1IZVQjsZnFgnB0tQmUv","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How to choose the right lenses","answer":"<p style=\"font-family: DM+Sans;\">When choosing lenses, we recommend considering:</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Base curve & overall diameter</strong>: Affects comfort and fit</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Water content & material</strong>: Important for dry or sensitive eyes</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Graphic diameter</strong>: Determines how natural or doll-like the look is</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Your lifestyle</strong>: Dailies for convenience, monthlies for longer use</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">ð If you have sensitive eyes or are new to contacts, <strong>daily lenses</strong> are highly recommended.</p><h3><br></h3><h3>â Overall Diameter vs. Graphic Diameter â whatâs the difference?</h3><p style=\"font-family: DM+Sans;\"><strong>Overall Diameter (DIA)</strong></p><p style=\"font-family: DM+Sans;\"> ⢠The <strong>total size of the lens</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Affects the <strong>fit and comfort</strong> on your eye</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Graphic Diameter (G.DIA)</strong></p><p style=\"font-family: DM+Sans;\"> ⢠The <strong>colored part of the lens only</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Affects <strong>how big or natural your eyes look</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><img src=\"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/faq_1770102427541_image.png?v=1770102429\"></p>"},{"questionId":"8zM9FoelSVMqNHTibrEU","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"G.DIA guide ð","answer":"<p style=\"font-family: DM+Sans;\">Hereâs how different G.DIA sizes will look :</p><p style=\"font-family: DM+Sans;\"><br></p><h3>1ï¸â£ <strong>G.DIA < 13.0mm</strong> = <strong>natural look</strong> </h3><p style=\"font-family: DM+Sans;\">These sizes will make your eyes pop, but still look super natural and soft.</p><p style=\"font-family: DM+Sans;\"><br></p><h3>2ï¸â£ <strong>G.DIA 13.0mm â 13.6mm</strong> = <strong>noticeable, dolly</strong> <strong>look </strong></h3><p style=\"font-family: DM+Sans;\">A little bigger for a more noticeable effect, but still elegant and bold!</p><p style=\"font-family: DM+Sans;\"><br></p><h3><strong>3ï¸â£ G.DIA > 13.6mm = very noticeable look </strong></h3><p style=\"font-family: DM+Sans;\">These are great if you want a dramatic, striking effect. Your eyes will definitely stand out!</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">
7705These guidelines are just a reference. The perfect G.DIA depends on your unique iris size and the look you want to achieve â¨</p>"},{"questionId":"X2G9HUPL7v3RioBlrAYg","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Base curve guide ð","answer":"<p style=\"font-family: DM+Sans;\"><strong>Base Curve(BC):</strong> the <strong>radius</strong> of the back of the lens â the part that fits snugly on your eye. </p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Peopleâs average BC is around <strong>8.5â8.7mm</strong>. If your BC isnât the right fit for your eye, the lens might move around and could scratch your eye. Ouch! <strong>So, make sure you choose the right BC for your perfect fit </strong>ð</p><p style=\"font-family: DM+Sans;\"><br></p>"},{"questionId":"q6eHg0MADQ5nyqStKDXe","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Water content guide ð","answer":"<p style=\"font-family: DM+Sans;\">Water content in contact lenses is super important! It helps your lenses keep their shape and stay comfy in your eyes.</p><p style=\"font-family: DM+Sans;\">Letâs dive into the two types of water content: Low vs. High! </p><p style=\"font-family: DM+Sans;\"><br></p><h3>ð§ Low water content</h3><p style=\"font-family: DM+Sans;\"><strong>Advantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Comfortable for longer wear â ideal for all-day comfort</p><p style=\"font-family: DM+Sans;\"> ⢠Less sensitive to environmental changes â no worries about dryness</p><p style=\"font-family: DM+Sans;\"> ⢠Low protein buildup â keeping your lenses fresh</p><p style=\"font-family: DM+Sans;\"> ⢠Compatible with any lens care product â easy peasy</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Disadvantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Lower Dk (oxygen permeability) â less oxygen gets to your eyes</p><p style=\"font-family: DM+Sans;\"> ⢠Less flexible â not as stretchy as high water lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Thin and tricky to handle â be careful when putting them in or taking them out</p><p style=\"font-family: DM+Sans;\"><br></p><h3>ð§ High Water Content</h3><p style=\"font-family: DM+Sans;\"><strong>Advantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Feels comfy when you first wear them â soft and smooth from the get-go</p><p style=\"font-family: DM+Sans;\"> ⢠Higher Dk â more oxygen for your eyes, keeping them fresh</p><p style=\"font-family: DM+Sans;\"> ⢠Quick to bounce back â they regain their shape fast if they get squished</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Disadvantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Fragile â handle with care</p><p style=\"font-family: DM+Sans;\">⢠Less flexible â not as stretchy as high water lenses</p>"},{"questionId":"Wa959sUCKGgDHdki0XBj","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How long can you wear contact lenses?","answer":"<p style=\"font-family: DM+Sans;\">⢠<strong>Daily lenses</strong>: Up to 6~8 hours (depending on comfort)</p><p style=\"font-family: DM+Sans;\">⢠<strong>Monthly lenses</strong>: Usually up to 8 hours per day</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">â ï¸ If your eyes feel dry, irritated, or red, remove lenses immediately.</p>"},{"questionId":"gG3N5Y78KuASyDWPaMuz","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Can I wear makeup with contacts?","answer":"<p style=\"font-family: DM+Sans;\">Yes! Make sure to put the lenses in before applying your makeup and remove them before cleansing.</p>"},{"questionId":"aCeSiRphfDsJV3RzNfIk","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"When NOT to wear contact lenses","answer":"<p style=\"font-family: DM+Sans;\">Avoid wearing lenses if you have:</p><p style=\"font-family: DM+Sans;\"> ⢠Eye infections or inflammation</p><p style=\"font-family: DM+Sans;\"> ⢠Severe dryness or irritation</p><p style=\"font-family: DM+Sans;\"> ⢠Eye injuries</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Always consult an eye care professional if the discomfort persists.</p>"},{"questionId":"FszPPck2B1Tzc0rURuqT","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"How to check if your lenses are upside-down?","answer":"<p style=\"font-family: DM+Sans;\"><strong>Check the edge of your lens:</strong></p><ul><li>If the edges form a nice <strong>U-shape</strong> (like a bowl), itâs the right side!</li><li>
7705If the edges flare out, itâs upside-down!</li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><img src=\"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/faq_1770102506928_image.png?v=1770102508\"></p>"},{"questionId":"kINlppudUlAjGjnwoChR","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"What is the shelf life of your lenses? When do they expire?","answer":"<p style=\"font-family: DM+Sans;\">Our lenses have a shelf life of 5 to 10 years from the manufacturing date.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Expiration dates are expressed as YY-MM-DD.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">For example:</p><ul><li>â <strong>31-08-01</strong> indicates the expiry date. The lenses will expire on August 31, 2031.</li><li>ð <strong>24-08-02</strong> refers to the manufacturing date, which means the lenses were made on August 2, 2024.</li></ul>"},{"questionId":"uOHxVTehjFvUiSe7dWYv","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Can I buy contact lenses with an expired prescription? Can I order without a prescription?","answer":"<p style=\"font-family: DM+Sans;\"><strong>We kindly require our customers to upload your prescription before placing an order. </strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">To buy contacts without prescription simply find your most recent box of contact lenses and on the side, you'll see your parameters displayed.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">However, we always advise our customers to use a valid prescription when placing orders. This will ensure you get suitable lenses for your unique vision needs.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">A valid prescription is given by a registered optician, ophthalmologist or eye doctor after an eye exam, which is necessary to determine the level of correction your eyes need. Your prescription should be <strong>no more than 2 years old</strong> when ordering contact lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">You may send your prescription to us through your <a rel=\"noopener noreferrer\" href=\"https://www.hapakristin.com/account/login\">personal page</a> or you can reply to your order confirmation email with the file.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>If your prescription is more than 2 years old</strong>, but you do not have any noticeable changes to your vision, then you are still able to safely order replacement lenses from us.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">However, we want you to get the most from your lenses and vision - so we always recommend booking for an updated eye exam as soon as possible with your local optometrist.</p>"},{"questionId":"H9SzCAilY8w22YDmzGkL","categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"published":true,"isOutOfDate":false,"question":"Where are Hapa Kristin lenses made?","answer":"<p style=\"font-family: DM+Sans;\">Our lenses available on Hapakristin.com are made in South Korea and KFDA certified. </p>"}],"categoryId":"tKkraX2O381C6VLUtqU0","featured":true,"position":4,"icon":"product","published":true,"isOutOfDate":false,"question":"Product Information & Care"},"UVfJhDlUUpEzko8tDexD":{"questions":[{"questionId":"lTLewXrVr87S7UpsD9Rf","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":false,"isOutOfDate":false,"question":"I am a new customer, free shipping isn't applying to my first order.","answer":"<p style=\"font-family: DM+Sans;\">Please note that our <strong>new customer promotions canât be combined</strong>. You can choose <strong>either</strong> of the following:</p><ul><li><strong>Free shipping</strong> on your first order (applied automatically at checkout <strong>when you are logged in</strong>, no matter the amount of your cart)</li></ul><p style=\"font-family: DM+Sans;\"><strong>OR</strong></p><ul><li><strong>10% off if your order amount already benefits from Free Shipping</strong></li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If youâd like to receive <strong>free shipping</strong>, please <strong>remove the welcome discount code</strong>, and the <strong>free shipping offer will apply automatically</strong> to your cart.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Youâre welcome to pick whichever offer works best for you before completing your checkout!</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If the code doesnât apply, please verify that you donât have any previous orders from earlier years, as that could affect eligibility.</p>"},{"questionId":"Yr07qP0sd3K6WMGF0Co6","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":true,"isOutOfDate":false,"question":"How do I get free shipping on my first order?","answer":"<p style=\"font-family: DM+Sans;\">To get <strong>free shipping on your first order</strong>, please make sure you are <strong>logged in</strong> to your account. The free shipping will then apply automatically at checkout when eligible.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong><em>Free shipping applies automatically. </em></strong></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Our first order offer also includes <strong>10% OFF</strong>, and both promotions can be combined when the order meets the free shipping threshold:</p><ul><li><p style=\"font-family: DM+Sans;\"><strong>U.S. orders:</strong> Over $50 USD (after discount, before duties/taxes)</p></li><li><p style=\"font-family: DM+Sans;\"><strong>Rest of the world:</strong> Over $100 USD (after discount, before duties/taxes)</p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">If your order is <strong>below the threshold</strong>, the promotions cannot be combined. You can choose either:</p><ul><li><p style=\"font-family: DM+Sans;\"><strong>Free shipping on your first order</strong> (when logged in), or</p></li><li><p style=\"font-family: DM+Sans;\"><strong>10% OFF with the welcome discount code</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">If you'd like to use free shipping, simply remove the welcome discount code from your cart and the free shipping will apply automatically.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Feel free to choose whichever promotion works best for you before completing checkout!</p>"},{"questionId":"8icFMYnuQ1STR57S0WJX","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":true,"isOutOfDate":false,"question":"Do points expire?","answer":"<p style=\"font-family: DM+Sans;\">No, your points do not expire. You can save and use them whenever you like!</p>"},{"questionId":"RH2G17utaOXTj5evupKo","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":true,"isOutOfDate":false,"question":"I redeemed a coupon by accident. How can I refund it?","answer":"<p style=\"font-family: DM+Sans;\">You can refund the coupon yourself by following these steps:</p><ol><li><strong>Log in</strong> to your account/profile on our website.</li><li>Go to <strong>âMy Rewardsâ</strong> in your account dashboard.</li><li>Find the coupon you want to cancel or refund points for.</li><li>Click on the <strong>stacked disks icon</strong> (as shown in the image) to the left of the coupon code.<img src=\"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/faqs%2FUsvAzd8AOkiISBZb548K%2Fcontent%2F1765347778405_Cancel%20redeemed%20points.png?alt=media&token=c5a438a7-0131-4fa6-9cae-49fe530fed36\"></li><li>Confirm the cancellation of the coupon redemption â this will refund your points automatically.<img src=\"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/faqs%2FUsvAzd8AOkiISBZb548K%2Fcontent%2F1765347790681_Cancel%20redeemed%20points%202.png?alt=media&token=b35b7ceb-12ad-4a04-89eb-de15d14058bb\"></li></ol><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you need assistance, feel free to contact us at <strong>[email protected]</strong> and weâll be happy to help!</p>"},{"questionId":"vdQdVd7s3GrjZskVn6fO","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":true,"isOutOfDate":false,"question":"How long after I place my order will I receive my loyalty points? ","answer":"<p style=\"font-family: DM+Sans;\">The points will be added to your account once the order is shipped or the status changes to \"fulfilled\".</p>"},{"questionId":"mmSiaFMttIr7UgLPuSKx","categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"published":true,"isOutOfDate":false,"question":"Do my points expire? How can I extend my pointsâ expiry date?","answer":"<p style=\"font-family: DM+Sans;\">Your points expire after <strong>1 year</strong>. </p><p style=\"font-family: DM+Sans;\">You can easily check your pointsâ expiry date anytime by going to <strong>Profile â Rewards</strong>. Your expiry date will be shown right below your current points balance.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Want to keep your points for longer? Simply earn new points through activities like:</p><p style=\"font-family: DM+Sans;\">ð Placing a new order<br>ð Subscribing to our newsletter<br>ð Writing a product review<br>ð And more!</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">⨠Whenever you earn new points, your current points will get a fresh <strong>1-year extension </strong>before they expire!</p>"}],"categoryId":"UVfJhDlUUpEzko8tDexD","featured":true,"position":5,"icon":"gift","published":true,"isOutOfDate":false,"question":"Membership & Discounts"},"Adq6ooyJOIHgSchpSWgr":{"questions":[{"questionId":"Mmd0PZ9meHgqVDaIUiX1","categoryId":"Adq6ooyJOIHgSchpSWgr","featured":false,"published":true,"isOutOfDate":false,"question":"Do you provide customer support during weekends and holidays?","answer":"<p style=\"font-family: DM+Sans;\">Normally, we do not provide support during weekends and Korean holidays, except for urgent cases.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In these cases, you only need to mark <strong>[URGENT]</strong> in your email, we will get back to you ASAP.</p>"},{"questionId":"AkKNa7NkbfemFCwwUP7F","categoryId":"Adq6ooyJOIHgSchpSWgr","featured":false,"published":true,"isOutOfDate":false,"question":"How do I contact the customer service?","answer":"<p style=\"font-family: DM+Sans;\">Kindly reach out to us at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>"},{"questionId":"0EMRE7KzSIBV9Mhk5Dd5","categoryId":"Adq6ooyJOIHgSchpSWgr","featured":false,"published":true,"isOutOfDate":false,"question":"How can I change my email?","answer":"<p style=\"font-family: DM+Sans;\">To update the email address on your account, please contact our Customer Support team at <strong>[email protected]</strong>. Weâll be happy to assist you!</p>"}],"categoryId":"Adq6ooyJOIHgSchpSWgr","featured":true,"position":6,"icon":"capital","published":true,"isOutOfDate":false,"question":"Customer Service"},"djRU1j0QoGWp6tgIiIN0":{"questions":[],"categoryId":"djRU1j0QoGWp6tgIiIN0","featured":false,"position":7,"icon":"inventory","published":false,"isOutOfDate":false,"question":"Store locator"},"Z9tID4oFcTNfbI8lKwI6":{"questions":[],"categoryId":"Z9tID4oFcTNfbI8lKwI6","featured":false,"position":8,"icon":"","published":false,"isOutOfDate":false,"question":"Uncategorized"}}} || {}; 7706 7707 window.AVADA_FAQ = { 7708 campaigns: [{"templateId":"browser_collection_page","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now","createdAt":"2026-02-01T23:54:31.551
7708Z","name":"Hapa Half Day","trigger":{"type":"after_time","value":2,"displayOn":{"type":"specific_collection","value":[{"id":"gid://shopify/Collection/284362833997","image":null,"title":"Hapa Half Day"}]}},"id":"1AmUS1kf6XHp4XRfi1ix","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]},"filterCustomers":"all","segmentIds":[],"customerIds":[]},"status":"active","message":{"type":"text","content":"<p>Every 1st day of the month, buy 2 monthly packs from this collection at 50% OFF!</p>","productContent":"<p>You might like this product!</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","discount":null,"usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productsList":[],"productType":"best_sellers","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#232323","buttonTextColor":"#ffffff"},"updatedAt":"2026-05-18T07:16:48.532Z","priority":1,"revenue":201.28,"interacted":67,"addToCart":730,"triggered":1701},{"name":"Search page","status":"inactive","templateId":"search_page","trigger":{"type":"after_time","value":5},"condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]},"filterCustomers":"all","segmentIds":[],"customerIds":[]},"message":{"type":"text","content":"<p>Can I help you find the perfect product? ð</p>","contentMessageType":"custom_message","quickQuestions":[{"id":1,"content":"What is the best product?"},{"id":2,"content":"What is on sale?"},{"id":3,"content":"Can you suggest products for me?"}],"backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#232323","buttonTextColor":"#ffffff","replyPlaceholder":"Click to reply"},"priority":13,"triggered":0,"interacted":0,"createdAt":"2026-05-18T07:15:23.822Z","updatedAt":"2026-05-18T07:15:23.822Z","id":"9tYndwSohFZfUv2XZVFc"},{"templateId":"browser_collection_page","createdAt":"2025-12-11T01:15:56.508Z","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]}},"name":"Hapa All Day","id":"CD7UvgtLcQ13n2t08F6k","trigger":{"type":"after_time","value":2,"displayOn":{"type":"specific_collection","value":[{"id":"gid://shopify/Collection/285446930509","image":null,"title":"Hapa All Day"}]}},"message":{"type":"text","content":"<p>Every 11th of the month, buy 2 packs from this collection for only $30!</p>","productContent":"<p>You might like this product!</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","productsList":[],"productType":"best_sellers","discount":null,"usageInstruction":"This coupon is valid for this collection, with all items eligible for a 20% discount","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F"},"status":"active","updatedAt":"2025-12-11T01:20:55.570Z","priority":2,"revenue":477.01000000000005,"interacted":141,"triggered":3881,"addToCart":2086},{"templateId":"cart_booster","id":"LPe1IM6W99QsVY5Lg5JC","createdAt":"2025-09-26T02:30:37.079Z","condition":{"audience":"only_visitors","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"specific","value":["US"]}},"message":{"type":"discount","content":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productContent":"<p>You might like this product!</p>","discountContent":"<p>Shipping is free on orders $50+ to the USA ðIf this is your first time with us, use the code WELCOME to get 10% OFF today</p>","productsList":[],"productType":"best_sellers","discount":{"discountType":"DiscountCodeBasic","title":"WELCOME","summary":"10% off entire order","endsAt":null,"startsAt":"2019-11-05T09:49:28Z","shortSummary":"10% off entire order","shareableUrl":"https://hapakristin.com/discount/WELCOME","discountImageType":"default","discountImageUrl":"","id":594728353869},"usageInstruction":"10% OFF your first order. Cannot be combined with a Free Shipping discount if your order is less than $50.","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F"},"name":"Welcome code (USA visitors)","trigger":{"type":"after_time","value":10,"minimumCartValue":56,"dis
7708playOn":{"type":"all","value":[]}},"status":"active","updatedAt":"2025-12-15T04:31:51.629Z","priority":5,"revenue":1142.09,"addToCart":7400,"interacted":915,"triggered":24928},{"name":"Product Recommendation","trigger":{"type":"after_time","value":5,"displayOn":{"type":"product","value":[]}},"condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]}},"message":{"type":"product_recommendation","productType":"best_sellers","productContent":"<p>You might like this product!</p>","productsList":[],"content":"<p>Hi! Interested in this product? Ask me anything or get more details!</p>","contentMessageType":"quick_question","quickQuestions":[{"id":1,"content":"Is this item still available?"},{"id":2,"content":"How fast is shipping?"},{"id":3,"content":"Which size should I choose?"}],"bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F"},"status":"inactive","templateId":"product_recommendation","triggered":0,"interacted":0,"createdAt":"2025-12-17T05:35:58.914Z","updatedAt":"2025-12-17T05:35:58.914Z","priority":11,"id":"NlQvb3gKh5HfpMaZrU4r"},{"trigger":{"type":"after_time","value":5},"contentMessageType":"custom_message","quickQuestions":[{"content":"What is your best seller?","id":1},{"content":"Can you help me find some products?","id":2},{"content":"Where is my order?","id":3}],"templateId":"welcome_message","createdAt":"2025-12-11T01:15:08.270Z","condition":{"audience":"only_customers","displayTime":"all_time","device":"all","duration":{"type":"custom","value":7},"country":{"type":"all","value":[]}},"name":"Welcome customers","id":"RQl8POyltQtW5QEtSyKd","message":{"type":"text","content":"<p>Welcome back {{customer_name}} ðLet me know if you have any questions!</p>","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F","replyPlaceholder":"Click to reply"},"status":"active","updatedAt":"2025-12-15T04:23:52.562Z","interacted":53,"triggered":4117,"priority":4,"addToCart":2841},{"templateId":"welcome_message","name":"Welcome visitors","trigger":{"type":"after_time","value":5,"displayOn":{"type":"all","value":[]}},"createdAt":"2025-09-26T02:30:37.078Z","id":"SEwE5YQcBPHAhK1mdcJu","contentMessageType":"custom_message","quickQuestions":[{"content":"What is your best seller?","id":1},{"content":"Can you help me find some products?","id":2},{"content":"Where is my order?","id":3}],"status":"active","message":{"backgroundColor":"#ffffff","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","productsList":[],"discount":null,"productType":"best_sellers","textColor":"#232323","buttonTextColor":"#ffffff","content":"<p>First time? Create your account now to get FREE SHIPPING or 10% OFF on your first order</p>","replyPlaceholder":"Click to reply","type":"text","buttonColor":"#0000001F","usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productContent":"<p>You might like this product!</p>"},"condition":{"duration":{"type":"custom","value":10},"device":"all","displayTime":"all_time","country":{"type":"all","value":[]},"audience":"only_visitors"},"updatedAt":"2026-01-09T04:50:13.785Z","priority":3,"revenue":7503.569999999994,"interacted":2952,"triggered":133597,"addToCart":65863},{"name":"Product Recommendation","templateId":"product_recommendation","trigger":{"type":"after_time","value":5,"displayOn":{"type":"product","value":[]}},"condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]}},"message":{"productContent":"<p>You might like this product!</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","discount":null,"usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productsList":[],"productType":"best_sellers","type":"product_recommendation","content":"<p>Hi! Interested in this product? Ask me anything or get more details!</p>","contentMessageType":"quick_question","quickQuestions":[{"id":1,"content":"Is this item still available?"},{"id":2,"content":"How fast is shipping?"},{"id":3,"content":"Which size should I choose?"}],"bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#232323","buttonTextColor":"#ffffff"},"status":"inactive","triggered":0,"interacted":0,"createdAt":"2026-01-12T01:49:03.339Z","updatedAt":"2026-01-12T01:49:03.339Z","priority":12,"id":"V11cdrxgS9zOUiZmX9ZX"},{"templateId":"cart_booster","createdAt":"2025-12-16T08:53:07.543Z","name":"Cat-titude cart booster","id":"VUDcfZV0LkA75mVdLf1f","viewSimilarButton":"View similar","shopNowButton":"Shop now","askAboutItButton":"Ask about it","viewProductButton":"View product","trigger":{"type":"after_time","value":5,"minimumCartValue":70,"dis
7708playOn":{"type":"all","value":[]}},"interacted":181,"status":"inactive","triggered":4145,"condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":1},"country":{"type":"all","value":[]},"filterCustomers":"all","segmentIds":[],"customerIds":[]},"message":{"type":"product_recommendation","content":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productContent":"<p>Add 1 Cat-titude Kristin Lady Beige to your cart and get 10% OFF $75 !</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","discount":null,"usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productsList":[{"id":"gid://shopify/Product/7804123185229","img":"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/model_80497b86-dad4-4c88-b7d0-00db87672793.jpg?v=1778458884","price":"21.99","name":"Cat-titude Kristin 1Day - Lady Beige","onlineStoreUrl":"https://hapakristin.com/products/h79851j4","variants":[{"id":"gid://shopify/ProductVariant/42967113564237","title":"Lady Beige / 0.00","compareAtPrice":"21.99","price":"21.99"}]}],"productType":"custom","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F","buttonTextColor":"#ffffff"},"updatedAt":"2026-05-18T07:14:32.126Z","priority":6,"addToCart":1409},{"templateId":"subscribe_newsletter","name":"Subscribe Newsletter","trigger":{"type":"after_time","value":5,"displayOn":{"type":"all","value":[]}},"message":{"type":"discount","content":"<p>Don't miss out ð</p><p>Discover your special offer waiting just for you!</p>","discount":null,"marketingOptIn":false,"formFields":["email"],"successMessage":"Thank you for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","emailMessage":"Check your email to confirm your subscription."},"createdAt":"2025-09-26T02:30:37.078Z","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]}},"id":"Z5PvawDW7IvEo6XcgYAE","interacted":1,"status":"inactive","updatedAt":"2025-12-11T00:17:05.095Z","triggered":16,"priority":8},{"templateId":"cart_booster","viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now","createdAt":"2026-02-06T01:55:30.217Z","id":"fU6FqVZImR41eZDdnuVf","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]},"filterCustomers":"all","segmentIds":[],"customerIds":[]},"name":"Dolly Kristin Beige cart booster","trigger":{"type":"after_time","value":5,"minimumCartValue":55,"displayOn":{"type":"all","value":[]}},"message":{"type":"product_recommendation","content":"<p>Good choice ðï¸ Thanks for your interest! Want to learn more or place an order now?</p>","productContent":"<p>Get 10% OFF when you add 1 Dolly Beige Kristin to your cart!</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","discount":null,"usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productsList":[{"id":"gid://shopify/Product/7673745670221","img":"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/EN-BE-1d.jpg?v=1772604011","price":"17.59","name":"Dolly Kristin 1Day - Beige","onlineStoreUrl":"https://hapakristin.com/products/h79817j2","variants":[{"id":"gid://shopify/ProductVariant/42608022061133","title":"Beige / 0.00","compareAtPrice":"21.99","price":"17.59"}]}],"productType":"custom","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#232323","buttonTextColor":"#ffffff"},"interacted":870,"status":"inactive","updatedAt":"2026-05-18T07:13:40.019Z","priority":7,"triggered":20656,"revenue":3331.0199999999995,"addToCart":17556},{"name":"Subscribe Newsletter","trigger":{"type":"after_time","value":5,"displayOn":{"type":"all","value":[]}}
7708,"condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]}},"message":{"type":"discount","content":"<p>Don't miss out ð</p><p>Discover the special offer we're tailored for you!</p>","discount":null,"marketingOptIn":false,"formFields":["email"],"successMessage":"Thank you for subscribing! Check your inbox and stay tuned for the latest news and exclusive offers.","emailMessage":"Check your email to confirm your subscription.","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#0000001F"},"status":"inactive","templateId":"subscribe_newsletter","triggered":0,"interacted":0,"createdAt":"2025-12-15T04:34:58.823Z","updatedAt":"2025-12-15T04:34:58.823Z","priority":10,"id":"gGFjz0cef3hL7Uj5nfRG"},{"templateId":"browser_collection_page","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":10},"country":{"type":"all","value":[]},"filterCustomers":"all","segmentIds":[],"customerIds":[]},"viewSimilarButton":"View similar","askAboutItButton":"Ask about it","viewProductButton":"View product","shopNowButton":"Shop now","priority":14,"createdAt":"2026-08-21T05:35:30.835Z","name":"Hapa Try Day","trigger":{"type":"after_time","value":2,"displayOn":{"type":"specific_collection","value":[{"id":"gid://shopify/Collection/308073889869","image":null,"title":"Hapa Try Day","productsCount":{"count":6}}]}},"id":"o3EwSblQzIZRcFHHLS1c","message":{"type":"text","content":"<p>
7708Every 21st day of the month, buy 2 trial packs from this collection, get 1 FREE!</p>","productContent":"<p>You might like this product!</p>","discountContent":"<p>Hey there! ð</p><p>We've got an exclusive Black Friday coupon just for you. Click to get your discount! Limited time only!</p>","discount":null,"usageInstruction":"This coupon is valid for summer clothing, with all items eligible for a 20% discount","productsList":[],"productType":"best_sellers","quizContent":"Looking for the right product? Let me ask a few quick questions to help you find it.","yesButton":"Yes, let's start!","noButton":"No, thanks","bestSellerMessage":"Checkout our best seller!","newArrivalsMessage":"Checkout our new arrivals!","topPicksForYouMessage":"Top picks for you","backgroundColor":"#ffffff","textColor":"#232323","buttonColor":"#232323","buttonTextColor":"#ffffff"},"status":"active","updatedAt":"2026-08-21T05:35:57.300Z","interacted":4,"triggered":233,"addToCart":78},{"templateId":"product_recommendation","createdAt":"2025-09-26T02:30:37.079Z","condition":{"audience":"all","displayTime":"all_time","device":"all","duration":{"type":"always","value":1},"country":{"type":"all","value":[]}},"id":"vKt2hRKj6W0V2F4sSZvJ","trigger":{"type":"after_time","value":5,"displayOn":{"type":"specific_product","value":[{"id":"gid://shopify/Product/7565087277133","image":{"src":"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/2-BK-EN.jpg?v=1760082900","altText":""},"title":"Quiet Kristin 1Day - Glow Black"}]}},"message":{"productContent":"<p>Not in stock? Get the trial pair!</p>","type":"product_recommendation","productsList":[{"id":"gid://shopify/Product/7565087211597","img":"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/2-BK-EN_9ffe2820-bd82-428d-b239-47fc73a84206.jpg?v=1760082960","price":"6.00","name":"Quiet Kristin 1Day - Glow Black (2pcs)","onlineStoreUrl":"https://hapakristin.com/products/h79716j1","variants":[{"id":"gid://shopify/ProductVariant/42103807606861","title":"Glow Black / 0.00","compareAtPrice":"6.00","price":"6.00"}]}],"productType":"custom"},"name":"Glow black trial pair recommendation","interacted":41,"triggered":383,"status":"inactive","updatedAt":"2025-12-16T08:50:13.529Z","priority":9,"addToCart":48}] || [], 7709 questions: [{"answer":"<p style=\"font-family: DM+Sans;\">To update the email address on your account, please contact our Customer Support team at <strong>[email protected]</strong>. Weâll be happy to assist you!</p>","question":"How can I change my email?","published":true,"categoryId":"Adq6ooyJOIHgSchpSWgr","featured":false,"createdAt":"2025-11-27T06:33:39.769Z","id":"0EMRE7KzSIBV9Mhk5Dd5","questionId":"0EMRE7KzSIBV9Mhk5Dd5"},{"published":true,"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"createdAt":"2026-03-12T00:44:44.554Z","categories":"Order & Shipping","question":"Shipping fees & delivery timelines","answer":"<p style=\"font-family: DM+Sans;\"><strong>Shipping to the United States (USPS)</strong><br>Estimated delivery: 5-15 business days</p><ul><li><p style=\"font-family: DM+Sans;\">Orders <strong>under $50 USD</strong>: $12.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$50 USD or more</strong>: <strong>FREE</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong>Rest of the world</strong><br>Estimated delivery: 2â7 business days</p><ul><li><p style=\"font-family: DM+Sans;\">Orders <strong>under $50 USD</strong>: $12.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$50 â $99.99 USD</strong>: $7.95 USD</p></li><li><p style=\"font-family: DM+Sans;\">Orders <strong>$100 USD or more</strong>: <strong>FREE</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">ð« <strong>Important:</strong> We do <strong>not ship to PO Boxes, Uni BOX, or shared addresses.</strong> Please use a <strong>secure and valid shipping address</strong> to avoid delivery issues.</p>","updatedAt":"2026-04-02T02:16:32.310Z","id":"1OmyWMsLVf1Z3b5yEyiZ","questionId":"1OmyWMsLVf1Z3b5yEyiZ"},{"createdAt":"2024-03-12T01:05:23.064Z","question":"My package was returned to sender","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\"><strong>HapaKristin is not responsible for packages sent back due to factors outside our control, such as absence of the recipient, customs, wrong address failure to pickup package on time etc....</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If the package cannot be delivered due to the customer's<em> inaction or mistake</em>
7709, refund the order cannot be refunded. The customer can choose between a <u>Gift Card refund</u> or a <u>replacement package</u>. Please note that reshipment fees apply to the replacement order.</p><p style=\"font-family: DM+Sans;\"><strong>Only one replacement can be offered per failed delivery.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If your package cannot be delivered because of an issue caused on the customer's part, the package will be discarded and you will not be eligible for a refund.</p><p style=\"font-family: DM+Sans;\">If this situation arises, we will inform you beforehand and you will have 72 hours to get back to us to resolve the delivery issue.</p>","updatedAt":"2026-01-05T00:33:09.604Z","id":"1fkgY7pApQHVCTMevqqq","questionId":"1fkgY7pApQHVCTMevqqq"},{"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"createdAt":"2026-03-05T04:03:35.799Z","categories":"Order & Shipping","question":"ð¨ Shipping to the Middle East","answer":"<p style=\"font-family: DM+Sans;\">Due to ongoing regional risks, a <strong>temporary carrier surcharge applies to Middle East shipments</strong>. Shipping is currently<strong> $50 USD</strong>.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><span><strong><em>FREE shipping is available on orders over $100.</em></strong></span></p><p style=\"font-family: DM+Sans;\"><span><em> </em></span></p><p style=\"font-family: DM+Sans;\"><span>Please note that free shipping for first orders is not available at this time.</span></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Thank you for your patience and understanding.</p>","published":false,"updatedAt":"2026-06-29T06:07:24.450Z","id":"45kWzdYTSsYWOdcvJaBP","questionId":"45kWzdYTSsYWOdcvJaBP"},{"question":"Can I receive a refund or gift card for customs duties and taxes?","published":true,"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"createdAt":"2026-01-26T23:57:45.603Z","answer":"<p style=\"font-family: DM+Sans;\">Customs duties and taxes are collected and processed directly by the destination countryâs customs authority (e.g., U.S. Customs). Once paid, these charges are <strong>non-refundable</strong>, and weâre unable to issue refunds or store credit for duties or taxes.</p>","updatedAt":"2026-01-26T23:58:09.324Z","id":"51q36TT1NuyQ0OeS4U70","questionId":"51q36TT1NuyQ0OeS4U70"},{"createdAt":"2024-03-12T01:01:42.984Z","question":"Can I amend or cancel my order?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">If your order has not been processed, you can edit your shipping information and cancel it yourself:</p><p style=\"font-family: DM+Sans;\"><strong>Log in â My Account â Orders â âCancel / Editâ (if available)</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>Once your order is canceled, the refund will be processed right away. Please allow a few business days for it to reflect in your account.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If your order is already being processed, you will see:</p><p style=\"font-family: DM+Sans;\"><strong>âThis order cannot be edited.â</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In this case, please contact us immediately at <strong>[email protected]</strong>. </p><p style=\"font-family: DM+Sans;\">While we will do our best to assist, cancellations or changes cannot be guaranteed once the order is being prepared for shipment.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>For any item changes (model, color, or prescription), please reach out to our Customer Care team at [email protected]. </strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h3>â ï¸ <strong>Important</strong></h3><ul><li>Customers are responsible for verifying shipping address, prescription power, and product selection before checkout.</li><li>We do not offer refunds, exchanges, or replacements for errors caused by incorrect information provided by the customer.</li><li>Refunds or replacements are only available for defective, damaged, or incorrect items sent due to our error.</li></ul>","updatedAt":"2026-02-12T05:17:39.372Z","id":"8Nok3H64W13NJUW2fUos","questionId":"8Nok3H64W13NJUW2fUos"},{"answer":"<p style=\"font-family: DM+Sans;\">No, your points do not expire. You can save and use them whenever you like!</p>","question":"Do points expire?","published":true,"categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"createdAt":"2025-12-10T06:15:28.520Z","id":"8icFMYnuQ1STR57S0WJX","questionId":"8icFMYnuQ1STR57S0WJX"},{"published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T07:02:25.742Z","question":"G.DIA guide ð","answer":"<p style=\"font-family: DM+Sans;\">Hereâs how different G.DIA sizes will look :</p><p style=\"font-family: DM+Sans;\"><br></p><h3>1ï¸â£ <strong>G.DIA < 13.0mm</strong> = <strong>natural look</strong> </h3><p style=\"font-family: DM+Sans;\">These sizes will make your eyes pop, but still look super natural and soft.</p><p style=\"font-family: DM+Sans;\"><br></p><h3>2ï¸â£ <strong>G.DIA 13.0mm â 13.6mm</strong> = <strong>noticeable, dolly</strong> <strong>look </strong></h3><p style=\"font-family: DM+Sans;\">A little bigger for a more noticeable effect, but still elegant and bold!</p><p style=\"font-family: DM+Sans;\"><br></p><h3><strong>3ï¸â£ G.DIA > 13.6mm = very noticeable look </strong></h3><p style=\"font-family: DM+Sans;\">These are great if you want a dramatic, striking effect. Your eyes will definitely stand out!</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">
7709These guidelines are just a reference. The perfect G.DIA depends on your unique iris size and the look you want to achieve â¨</p>","updatedAt":"2026-02-03T07:06:01.076Z","id":"8zM9FoelSVMqNHTibrEU","questionId":"8zM9FoelSVMqNHTibrEU"},{"createdAt":"2024-03-12T01:20:10.661Z","question":"How do I contact the customer service?","categoryId":"Adq6ooyJOIHgSchpSWgr","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">Kindly reach out to us at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>","updatedAt":"2025-10-28T04:52:35.133Z","id":"AkKNa7NkbfemFCwwUP7F","questionId":"AkKNa7NkbfemFCwwUP7F"},{"createdAt":"2024-03-12T01:17:01.404Z","question":"How do I remove the lenses? ","categoryId":"tKkraX2O381C6VLUtqU0","published":true,"answer":"<p style=\"font-family: DM+Sans;\"><strong>Please make sure that your hands are clean and dry before removal.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Rinse and dry your hand with a lint-free towel.</p><p style=\"font-family: DM+Sans;\">Your lens should be centered before removing it.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Pull the edge of your upper and lower eyelid outwards. Gently slide the lens to the lower white part of your eye.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Smoothly squeeze the lens between your thumb and index finger and gently remove it.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>IMPORTANT!</strong></p><p style=\"font-family: DM+Sans;\">Discard <strong>DAILY </strong>disposable contact lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you use <strong>MONTHLY </strong>please make sure to clean and disinfect the lens before putting them back into their case with clean, new solution.</p>","featured":false,"updatedAt":"2025-10-28T04:51:55.228Z","id":"BhA3EL9NKvk0iFUJLbZt","questionId":"BhA3EL9NKvk0iFUJLbZt"},{"question":"ð¦ Europe Orders â Customs & Duties","published":true,"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"createdAt":"2026-06-30T06:18:09.235Z","categories":"Order & Shipping","answer":"<p>Starting <strong>1 July 2026</strong>, the European Union will introduce a <strong>â¬3 customs duty</strong> on low-value parcels imported from outside the EU.</p><p></p><p>For most EU destinations: the <strong>â¬3 customs duty + any applicable local import fee or VTA + handling fee will be collected upon delivery</strong> by the local carrier. If this fee is not paid, the package cannot be delivered.</p><p></p><p><strong><u>Exception</u> : Sweden, Denmark, the Netherlands & Norway</strong></p><p><strong>Important â ï¸</strong></p><p>Duties and taxes are collected at checkout for your order. However, due to a carrier-related issue, a small number of shipments may be incorrectly charged import duties or taxes again upon delivery.</p><p>If this happens, please complete the payment to receive your package, then contact our Customer Support team with a copy of your payment receipt. We will refund the duties and taxes that were originally collected at checkout.</p><p>Unfortunately, we are unable to identify in advance which shipments may be affected. We sincerely apologize for any inconvenience and appreciate your understanding.</p>","updatedAt":"2026-08-27T18:34:21.510Z","id":"EFGQmHlCEnIo3c0b7I9i","questionId":"EFGQmHlCEnIo3c0b7I9i"},{"published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T06:31:08.385Z","question":"How to choose the right lenses","answer":"<p style=\"font-family: DM+Sans;\">When choosing lenses, we recommend considering:</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Base curve & overall diameter</strong>: Affects comfort and fit</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Water content & material</strong>: Important for dry or sensitive eyes</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Graphic diameter</strong>: Determines how natural or doll-like the look is</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Your lifestyle</strong>: Dailies for convenience, monthlies for longer use</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">ð If you have sensitive eyes or are new to contacts, <strong>daily lenses</strong> are highly recommended.</p><h3><br></h3><h3>â Overall Diameter vs. Graphic Diameter â whatâs the difference?</h3><p style=\"font-family: DM+Sans;\"><strong>Overall Diameter (DIA)</strong></p><p style=\"font-family: DM+Sans;\"> ⢠The <strong>total size of the lens</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Affects the <strong>fit and comfort</strong> on your eye</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Graphic Diameter (G.DIA)</strong></p><p style=\"font-family: DM+Sans;\"> ⢠The <strong>colored part of the lens only</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Affects <strong>how big or natural your eyes look</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><img src=\"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/faq_1770102427541_image.png?v=1770102429\"></p>","updatedAt":"2026-02-04T01:57:51.229Z","id":"F1IZVQjsZnFgnB0tQmUv","questionId":"F1IZVQjsZnFgnB0tQmUv"},{"question":"How to check if your lenses are upside-down?","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T07:08:2
77090.844Z","answer":"<p style=\"font-family: DM+Sans;\"><strong>Check the edge of your lens:</strong></p><ul><li>If the edges form a nice <strong>U-shape</strong> (like a bowl), itâs the right side!</li><li>If the edges flare out, itâs upside-down!</li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><img src=\"https://cdn.shopify.com/s/files/1/0238/6441/0189/files/faq_1770102506928_image.png?v=1770102508\"></p>","updatedAt":"2026-02-03T07:08:32.846Z","id":"FszPPck2B1Tzc0rURuqT","questionId":"FszPPck2B1Tzc0rURuqT"},{"answer":"<p style=\"font-family: DM+Sans;\">Our lenses available on Hapakristin.com are made in South Korea and KFDA certified. </p>","question":"Where are Hapa Kristin lenses made?","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2025-11-19T03:56:00.734Z","id":"H9SzCAilY8w22YDmzGkL","questionId":"H9SzCAilY8w22YDmzGkL"},{"answer":"<p style=\"font-family: DM+Sans;\">We are committed to providing exceptional service and ensuring a seamless shopping experience for all our customers. However, we have recently noticed an increase in abusive refund requests, such as false claims of missing or incorrect products.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">As a seller of medical devices, we maintain high traceability standards for our products, including detailed records of shipments, quality checks, and inventory management. This allows us to identify and verify any false claims with precision.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please be advised that submitting fraudulent claims is taken very seriously. Customers found making false claims will be permanently banned from purchasing with us. Additionally, their information may be shared with our official suppliers to prevent similar abusive activities across authorized sellers.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We appreciate your understanding and cooperation in maintaining a fair and honest shopping environment for everyone.</p>","published":true,"categoryId":"QcPB5LCXtxQdM2DNPN38","createdAt":"2025-01-10T00:45:19.194Z","question":"ð¨ Notice Regarding Fraudulent Claims","featured":false,"updatedAt":"2025-10-28T04:48:53.686Z","id":"HJ1y6ZCcSD9gZVCTQlP6","questionId":"HJ1y6ZCcSD9gZVCTQlP6"},{"createdAt":"2024-03-12T01:12:36.124Z","question":"I received a defective item","categoryId":"QcPB5LCXtxQdM2DNPN38","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">We are really sorry if you have received a faulty item.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you received a defective lens and/or have clear symptoms in your eyes that is beyond mild irritation, kindly reach out to <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a> <strong>WITHIN 14 DAYS</strong> of receiving your package along with the following information:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">1. a picture of the <strong><em>lot number</em></strong> of the defective item</p><p style=\"font-family: DM+Sans;\">2. a picture that proves your symptoms</p><p style=\"font-family: DM+Sans;\">3. a photo with the defective lens cut in half (This process is to ensure your safety and prevent customers from using faulty contacts.)</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">After we process the required pictures mentioned above, you may receive a replacement or a refund.</p><p style=\"font-family: DM+Sans;\">Please note that reimbursement cannot be done if we are not provided with above required information.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>â ï¸ Important Warning: <em>Please do not discard the defective item until a resolution has been reached, as we may need further pictures or information to process your claim.</em></strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Additionally, please note that contacts will not be inspected for returns if for the following reasons:</strong></p><p style=\"font-family: DM+Sans;\">- Frozen lenses</p><p style=\"font-family: DM+Sans;\">- Contacts slightly moving around or not following your iris (this condition might be caused by dryness and/or contact size not fitting your eye)</p><p style=\"font-family: DM+Sans;\">- Mild discomfort and dryness</p><p style=\"font-family: DM+Sans;\">- Change of mind</p><p style=\"font-family: DM+Sans;\">- Sligh blurriness</p><p style=\"font-family: DM+Sans;\">- Difference in color from expected</p>","updatedAt":"2025-10-28T04:48:44.062Z","id":"HYvWy0rVGHZYNE1onuOn","questionId":"HYvWy0rVGHZYNE1onuOn"},{"published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T05:47:56.991Z","question":"Types of contact lenses","answer":"<h3>By Wear Schedule</h3><p style=\"font-family: DM+Sans;\"> ⢠<strong>Daily lenses</strong>: Use once and discard at the end of the day (most hygienic & beginner-friendly)</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Monthly lenses</strong>: Reusable for up to 1 month (30 days) with proper cleaning and storage (most cost-effective)</p><p style=\"font-family: DM+Sans;\"><br></p><h3>By Function</h3><p style=\"font-family: DM+Sans;\"> ⢠<strong>Non-prescription lenses</strong>: For color or style only</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Prescription lenses</strong>: Correct vision</p><p style=\"font-family: DM+Sans;\"> ⢠<strong>Toric lenses</strong>: Designed for astigmatism (weighted to prevent rotation)</p>","updatedAt":"2026-02-04T01:56:37.204Z","id":"JABAQR9vRf0hhOnpGUPL","questionId":"JABAQR9vRf0hhOnpGUPL"},{"createdAt":"2024-03-12T01:19:28.248Z","question":"Do you provide customer support during weekends and holidays?","categoryId":"Adq6ooyJOIHgSchpSWgr","published":true,"answer":"<p style=\"font-family: DM+Sans;\">Normally, we do not provide support during weekends and Korean holidays, except for urgent cases.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In these cases, you only need to mark <strong>[URGENT]</strong> in your email, we will get back to you ASAP.</p>","featured":false,"updatedAt":"2025-10-28T04:52:24.916Z","id":"Mmd0PZ9meHgqVDaIUiX1","questionId":"Mmd0PZ9meHgqVDaIUiX1"},{"defaultCategoryId":2,"createdAt":"2024-03-11T02:19:38.330Z","defaultQuestionId":5,"categoryId":"QcPB5LCXtxQdM2DNPN38","question":"What is your return policy? Can I exchange an item?","published":true,"answer":"<p style=\"font-family: DM+Sans;\"><strong>All contact lenses are final sale and cannot be returned for hygienic and safety reasons.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We kindly ask customers to double-check the options they select (lens color/type/power) and to inform us <u>within 6 hours</u> after payment if you would like to amend your order.</p><p style=\"font-family: DM+Sans;\">HapaKristin is not responsible for any incorrect info provided by the customer and refund/replacement cannot be done once the order has been shipped.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that refund or replacement are not considered for â<em>unwanted</em>â cases, including the color being different than expected, the lens looking too small or too big on eyes, etc.</p><p style=\"font-family: DM+Sans;\">
7709As people have different eye conditions such as light transmissivity, reflectance, and iris colors, the lens may slightly vary once tried on.</p><p style=\"font-family: DM+Sans;\">Kindly double-check your order before checking out.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>HapaKristin will not accept any return of contact lenses. Lenses returned will not be processed and discarded. </em></p>","featured":false,"updatedAt":"2025-10-28T04:48:33.997Z","id":"NQF2O4X0fRkMVMQFGWm6","questionId":"NQF2O4X0fRkMVMQFGWm6"},{"question":"How can I get an invoice for my order?","published":true,"categoryId":"n5xJCX9O8tJITdsVxPbg","featured":false,"createdAt":"2025-12-11T04:08:07.462Z","answer":"<p style=\"font-family: DM+Sans;\">When your order is sent, you will receive your tracking number by email, that email includes a link to download the invoice for your order. Please note that we cannot provide the invoice until the order is sent out. The invoice currency is in USD, we cannot change the currency. </p>","updatedAt":"2025-12-11T04:09:14.026Z","id":"O0EYHmo4H8Q4ZQhHyXab","questionId":"O0EYHmo4H8Q4ZQhHyXab"},{"createdAt":"2024-03-12T01:16:42.996Z","question":"How do I apply the lenses? ","categoryId":"tKkraX2O381C6VLUtqU0","published":true,"answer":"<p style=\"font-family: DM+Sans;\"><strong>Please wash your hand thoroughly before removing the lens from the packaging. </strong><em>To avoid discomfort, apply make-up only after putting your lenses on.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong></strong>Rinse and dry your hand with a lint-free towel.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Check that the lens is not inside out.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">In order to not damage your contact lenses, only use your fingertips to handle them. Never put on a lens with sign of tear.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">- if the edges flare out, your lens is inside out</p><p style=\"font-family: DM+Sans;\">- if the color and the pattern are blurry, your lens is inside out if your lens is plate-shaped, your lens is inside out</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">With your hand, gently hold your upper eyelid with one finger so your eyelashes don't get in the way. Pull down your lower eyelid with your other fingers.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Move the colored lens steadily toward your eye. Apply the lens on your sclera (white part of the eye) and gently close your eyes to allow the lens to settle. Repeat for the other eye.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Always remember to clean, rinse and clean the case after inserting the lens in your eyes. Only use contact lens solution to rinse the lenses. <strong>NEVER </strong>use water to clean, lubricate, nor store contacts.</p><p style=\"font-family: DM+Sans;\"><strong>If your eyes get itchy, blur or become red, please reach out your eye doctor immediately.</strong></p>","featured":false,"updatedAt":"2025-10-28T04:51:45.719Z","id":"OMmlv7fLNsz8vcpzRYYS","questionId":"OMmlv7fLNsz8vcpzRYYS"},{"createdAt":"2024-03-12T06:01:02.092Z","question":"How long can I wear the colored lenses? Can I wear them everyday? ","categoryId":"n3cEUd6Y8S0omuOySCIF","published":true,"answer":"<p style=\"font-family: DM+Sans;\">We do not recommend wearing color contacts for more than 6 hours at a time, nor do we recommend wearing them everyday.</p><p style=\"font-family: DM+Sans;\"><strong>Do not wear lenses while swimming, sleeping, or showering.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Color contact lenses are meant for <em>cosmetic enhancement only</em> and not as a direct replacement for conventional clear lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>> MONTHLY</strong> lenses can be used up to 30 days.</p><p style=\"font-family: DM+Sans;\"><strong>> DAILY</strong> lenses should be thrown out at the end of the day.</p>","featured":false,"updatedAt":"2025-10-28T04:50:40.496Z","id":"PaK8nV2N8QYAIPZwYIwG","questionId":"PaK8nV2N8QYAIPZwYIwG"},{"createdAt":"2024-03-12T01:05:43.023Z","question":"My order is late","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"answer":"<p style=\"font-family: DM+Sans;\">HapaKristin is not responsible for any delays beyond our control once packages are out of our hands.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Shipment delays do not qualify for refunds. Kindly reach out to the shipping provider directly for real-time updates, if the estimated time for processing and shipment has not yet elapsed.</p>","featured":false,"updatedAt":"2025-10-28T04:47:19.192Z","id":"QbIEwlWRNDNrTMJ1G2tn","questionId":"QbIEwlWRNDNrTMJ1G2tn"},{"answer":"<p style=\"font-family: DM+Sans;\">You can refund the coupon yourself by following these steps:</p><ol><li><strong>Log in</strong> to your account/profile on our website.</li><li>Go to <strong>âMy Rewardsâ</strong> in your account dashboard.</li><li>Find the coupon you want to cancel or refund points for.</li><li>Click on the <strong>stacked disks icon</strong> (as shown in the image) to the left of the coupon code.<img src=\"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/faqs%2FUsvAzd8AOkiISBZb548K%2Fcontent%2F1765347778405_Cancel%20redeemed%20points.png?alt=media&token=c5a438a7-0131-4fa6-9cae-49fe530fed36\"></li><li>Confirm the cancellation of the coupon redemption â this will refund your points automatically.<img src=\"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/faqs%2FUsvAzd8AOkiISBZb548K%2Fcontent%2F1765347790681_Cancel%20redeemed%20points%202.png?alt=media&token=b35b7ceb-12ad-4a04-89eb-de15d14058bb\"></li></ol><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you need assistance, feel free to contact us at <strong>[email protected]</strong> and weâll be happy to help!</p>","question":"I redeemed a coupon by accident. How can I refund it?","published":true,"categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"createdAt":"2025-12-10T06:23:18.788Z","id":"RH2G17utaOXTj5evupKo","questionId":"RH2G17utaOXTj5evupKo"},{"createdAt":"2024-03-12T01:14:52.494Z","categoryId":"n3cEUd6Y8S0omuOySCIF","published":true,"answer":"<p style=\"font-family: DM+Sans;\">Please try the following methods:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">⢠Try using a mobile device to upload your prescription.</p><p style=\"font-family: DM+Sans;\">⢠Try using a desktop to upload you prescription.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you are still experiencing issues, feel free to send the prescription to our email at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>","question":"I am having trouble uploading my prescription (US ONLY)","featured":false,"updatedAt":"2025-10-28T04:50:57.154Z","id":"RMNX7fuI4vyyiq8fLNfx","questionId":"RMNX7fuI4vyyiq8fLNfx"},{"createdAt":"2024-03-12T01:03:14.353Z","categoryId":"n5xJCX9O8tJITdsVxPbg","question":"Customs & additional fees","published":true,"featured":false,"categories":"Order & Shipping","answer":"<p style=\"font-family: DM+Sans;\">Destination countries may apply customs duties, taxes, or require a TAX ID and additional documentation. <strong>The recipient is fully responsible for these requirements and fees.</strong></p><p style=\"font-family: DM+Sans;\"><em>Please note: EU orders are subject to these fees.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Hapa Kristin is not responsible for unpaid customs charges, missing documentation, or orders returned due to customs clearance issues, and refunds will not be issued in these cases.</strong> Please check your countryâs customs policies before placing an order.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Customs duties and taxes are collected and processed directly by the destination countryâs customs authority (e.g., U.S. Customs, European Union, etc...). <strong>Once paid, these charges are non-refundable, and weâre unable to issue refunds or store credits for them.</strong></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">International shipments may be <strong>opened and inspected by customs authorities when required</strong>. As these processes are handled entirely by local customs, weâre unfortunately <strong>unable to take responsibility for any delays or provide refunds for delays caused by customs inspections</strong>.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong>ð¦ U.S. Customers â </strong><em>As of Aug 29 2025, US orders are subject to tariffs. These customs fees are collected directly at checkout. </em></p><p style=\"font-family: DM+Sans;\"><strong>ð¦ E.U. Customer â </strong><em>EU orders are subject to customs fees. The customer is responsible for these upon delivery.</em></p>","updatedAt":"2026-03-26T23:57:39.873Z","id":"S6SrrXzHdkbw9V5RlBFK","questionId":"S6SrrXzHdkbw9V5RlBFK"},{"createdAt":"2024-03-12T01:15:46.069Z","question":"Where do you ship from?","categoryId":"n3cEUd6Y8S0omuOySCIF","published":true,"answer":"<p style=\"font-family: DM+Sans;\">Orders are dispatched from our warehouse located in Seoul, South Korea.</p>","featured":false,"updatedAt":"2025-10-28T04:51:12.864Z","id":"TqPoYBxfsmmT2EFti3Ux","questionId":"TqPoYBxfsmmT2EFti3Ux"},{"createdAt":"2024-03-12T01:03:37.537Z","question":"My order was delivered but I never received it","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">If, for any reason, you have not received the package, we would recommend taking the following steps:</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>- Double-Check</strong>: Please make sure to thoroughly check around your property, with neighbors, or anyone who may have accepted the package on your behalf.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>- Contact the shipping provider:</strong> If you are unable to locate your package after a thorough search, we recommend getting in touch with carrier directly. They will be able to provide you with further assistance in locating your package.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Hapa Kristin is unable to take responsibility for items that have been confirmed as delivered to the correct shipping address and handled according to the delivery instructions.
7709</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><em>Claims must be submitted with the carrier </em><strong><em>within 15 days</em></strong><em> from the delivery date.</em></p><p style=\"font-family: DM+Sans;\">Carriers only keep detailed tracking and delivery information for a limited time. Filing a claim within 15 days allows the carrier to investigate while the case is still active in their system.</p>","updatedAt":"2025-10-28T04:47:36.070Z","id":"VaimcYG1fdsZOwWeRD5f","questionId":"VaimcYG1fdsZOwWeRD5f"},{"createdAt":"2024-03-12T01:18:49.634Z","question":"Are your lenses safe?","categoryId":"tKkraX2O381C6VLUtqU0","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\"><strong>Your health and safety is our top priority! </strong></p><p style=\"font-family: DM+Sans;\"><strong></strong></p><p style=\"font-family: DM+Sans;\">All of our lenses are <strong>KFDA-approved</strong> (Korean Food & Drug Administration) and are sourced exclusively from <strong>reputable, certified manufacturers in South Korea</strong>. We never outsource productionâ<strong>every pair of lenses is 100% made in Korea</strong> to ensure the highest standards of safety, hygiene, and quality.</p>","updatedAt":"2025-12-10T23:28:07.293Z","id":"VsJF6vOzaosNoH7hni5V","questionId":"VsJF6vOzaosNoH7hni5V"},{"question":"How long can you wear contact lenses?","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T06:45:13.512Z","answer":"<p style=\"font-family: DM+Sans;\">⢠<strong>Daily lenses</strong>: Up to 6~8 hours (depending on comfort)</p><p style=\"font-family: DM+Sans;\">⢠<strong>Monthly lenses</strong>: Usually up to 8 hours per day</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">â ï¸ If your eyes feel dry, irritated, or red, remove lenses immediately.</p>","updatedAt":"2026-02-04T01:53:26.623Z","id":"Wa959sUCKGgDHdki0XBj","questionId":"Wa959sUCKGgDHdki0XBj"},{"answer":"<p style=\"font-family: DM+Sans;\"><strong>Base Curve(BC):</strong> the <strong>radius</strong> of the back of the lens â the part that fits snugly on your eye. </p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Peopleâs average BC is around <strong>8.5â8.7mm</strong>. If your BC isnât the right fit for your eye, the lens might move around and could scratch your eye. Ouch! <strong>So, make sure you choose the right BC for your perfect fit </strong>ð</p><p style=\"font-family: DM+Sans;\"><br></p>","question":"Base curve guide ð","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T07:03:25.468Z","id":"X2G9HUPL7v3RioBlrAYg","questionId":"X2G9HUPL7v3RioBlrAYg"},{"defaultCategoryId":1,"createdAt":"2024-03-11T02:19:38.330Z","defaultQuestionId":4,"question":"I never got my order, what to do?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">For delivery issues or to reschedule a delivery, please contact the shipping provider directly with your tracking number.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If they cannot locate your package, file a claim with the carrier and email us with the case number at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a>.</p>","updatedAt":"2025-10-28T04:47:11.730Z","id":"Xb1lgtYVI7sfUZYSVlTX","questionId":"Xb1lgtYVI7sfUZYSVlTX"},{"createdAt":"2024-03-12T01:14:29.084Z","question":"Can I wear colored lenses? ","categoryId":"n3cEUd6Y8S0omuOySCIF","published":true,"answer":"<p style=\"font-family: DM+Sans;\"><strong>You should not wear contacts if you:</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">⢠Have an eye infection or inflammation (redness and swelling)</p><p style=\"font-family: DM+Sans;\">⢠Have an eye disease, eye injury or dryness that interferes with contact lens wear</p><p style=\"font-family: DM+Sans;\">⢠Have a systemic disease that may be affected by, or could impact, contact lens wear</p><p style=\"font-family: DM+Sans;\">⢠Have certain types of allergic conditions</p><p style=\"font-family: DM+Sans;\">⢠Are using certain medications, such as some eye medications Please consult with your doctor before trying contact lenses for the first time.</p>","featured":false,"updatedAt":"2025-10-28T04:50:49.314Z","id":"Y9A02IcghNp5YCBDrAQK","questionId":"Y9A02IcghNp5YCBDrAQK"},{"question":"How do I get free shipping on my first order?","published":true,"categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"createdAt":"2025-12-10T06:16:56.444Z","categories":"Membership & Discounts","answer":"<p style=\"font-family: DM+Sans;\">To get <strong>free shipping on your first order</strong>, please make sure you are <strong>logged in</strong> to your account. The free shipping will then apply automatically at checkout when eligible.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\"><strong><em>Free shipping applies automatically. </em></strong></p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Our first order offer also includes <strong>10% OFF</strong>, and both promotions can be combined when the order meets the free shipping threshold:</p><ul><li><p style=\"font-family: DM+Sans;\"><strong>U.S. orders:</strong> Over $50 USD (after discount, before duties/taxes)</p></li><li><p style=\"font-family: DM+Sans;\"><strong>Rest of the world:</strong> Over $100 USD (after discount, before duties/taxes)</p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">If your order is <strong>below the threshold</strong>, the promotions cannot be combined. You can choose either:</p><ul><li><p style=\"font-family: DM+Sans;\"><strong>Free shipping on your first order</strong> (when logged in), or</p></li><li><p style=\"font-family: DM+Sans;\"><strong>10% OFF with the welcome discount code</strong></p></li></ul><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">If you'd like to use free shipping, simply remove the welcome discount code from your cart and the free shipping will apply automatically.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Feel free to choose whichever promotion works best for you before completing checkout!</p>","updatedAt":"2026-04-15T07:08:56.285Z","id":"Yr07qP0sd3K6WMGF0Co6","questionId":"Yr07qP0sd3K6WMGF0Co6"},{"question":"When NOT to wear contact lenses","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T06:46:54.649Z","answer":"<p style=\"font-family: DM+Sans;\">Avoid wearing lenses if you have:</p><p style=\"font-family: DM+Sans;\"> ⢠Eye infections or inflammation</p><p style=\"font-family: DM+Sans;\"> ⢠Severe dryness or irritation</p><p style=\"font-family: DM+Sans;\"> ⢠Eye injuries</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Always consult an eye care professional if the discomfort persists.</p>","updatedAt":"2026-02-04T01:54:44.650Z","id":"aCeSiRphfDsJV3RzNfIk","questionId":"aCeSiRphfDsJV3RzNfIk"},{"createdAt":"2024-03-12T01:13:05.181Z","question":"I received the wrong item","categoryId":"QcPB5LCXtxQdM2DNPN38","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\"><strong>In case of receiving the wrong item(s), </strong>please contact our customer service at <a rel=\"noopener noreferrer\" href=\"mailto:[email protected]\">[email protected]</a> <strong>WITHIN 7 DAYS </strong>after receiving your package, with pictures of<strong> ALL</strong>
7709 the wrong items you received.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Once received, we will proceed to make a replacement order, free of charge.</p>","updatedAt":"2025-10-28T04:49:20.862Z","id":"b1NclSaRLtP7yY3TRkq9","questionId":"b1NclSaRLtP7yY3TRkq9"},{"defaultCategoryId":1,"createdAt":"2024-03-11T02:19:38.330Z","defaultQuestionId":3,"question":"Do you ship internationally?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"categories":"Order & Shipping","answer":"<p style=\"font-family: DM+Sans;\">Yes, we do ship internationally.</p><p style=\"font-family: DM+Sans;\">You can find the latest shipping info here (shipping fee & available countries) </p><p style=\"font-family: DM+Sans;\">ðï¸ <a rel=\"noopener noreferrer\" href=\"https://www.hapakristin.com/pages/shipping-information\">https://www.hapakristin.com/pages/shipping-information</a></p><p style=\"font-family: DM+Sans;\"></p>","updatedAt":"2026-03-12T00:47:32.607Z","id":"cxXY5VVl87dZM7IdrY1n","questionId":"cxXY5VVl87dZM7IdrY1n"},{"answer":"<p style=\"font-family: DM+Sans;\">Yes! Make sure to put the lenses in before applying your makeup and remove them before cleansing.</p>","question":"Can I wear makeup with contacts?","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T06:46:11.514Z","id":"gG3N5Y78KuASyDWPaMuz","questionId":"gG3N5Y78KuASyDWPaMuz"},{"published":true,"categoryId":"n3cEUd6Y8S0omuOySCIF","createdAt":"2025-09-24T07:08:38.565Z","question":"Will my prescription affect the lenses I ordered? (US ONLY)","answer":"<p style=\"font-family: DM+Sans;\"><span style=\"color: rgb(0, 0, 0);\">For customers receiving orders in the United States, we request a copy of your valid prescription to comply with potential customs requirements.</span></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">The prescription you upload <strong>will not be used to change, adjust, or alter your order</strong>. Your lenses will be shipped exactly as you placed them. Your lenses are shipped exactly as placed.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please review your order details carefully and contact us promptly if you need any changes.</p>","featured":false,"updatedAt":"2025-10-28T04:51:04.383Z","id":"i3zSSESI2OWyVHsyJXA3","questionId":"i3zSSESI2OWyVHsyJXA3"},{"question":"What should I do if I receive a defective product purchased from a physical store?","published":true,"categoryId":"QcPB5LCXtxQdM2DNPN38","createdAt":"2024-12-11T08:16:16.427Z","answer":"<p style=\"font-family: DM+Sans;\">To address issues with a defective product, please visit the<strong> store where you made the purchase </strong>and provide the following information:</p><ol><li><strong>Proof of Payment:</strong> Receipt or transaction confirmation.</li><li><strong>Date of Purchase:</strong> Exact purchase date.</li><li><strong>Contact Information:</strong> Name and phone number associated with the purchase.</li></ol><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that we are a global online store, operating as a separate entity from local physical stores. Unfortunately, we do not have the authority to manage claims under their policies and can only follow their guidelines.</p>","featured":false,"updatedAt":"2025-10-28T04:50:11.058Z","id":"iGnm7x9pHBPtk2sfziun","questionId":"iGnm7x9pHBPtk2sfziun"},{"createdAt":"2024-03-12T01:22:04.670Z","question":"A delivery attempt was made but I wasnât home to receive the package, what do I do?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"answer":"<p style=\"font-family: DM+Sans;\">If you were absent when a delivery attempt was made, your package will be sent to a local post office.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Kindly call the number on the notice slip you receive to retrieve your package and follow up directly with the shipping provider with your tracking number.</strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Please note that we are not responsible for any packages that are returned due to failed retrieval from the post office.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">
7709You can track your package from the tracking number we provide you through your email address.</p>","featured":false,"updatedAt":"2025-10-28T04:47:44.015Z","id":"ieJz1pbjEtabtvUMTzYa","questionId":"ieJz1pbjEtabtvUMTzYa"},{"defaultCategoryId":1,"createdAt":"2024-03-11T02:19:38.329Z","defaultQuestionId":1,"question":"How long will it take to receive my order?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">Orders must be placed by 5pm Pacific Daylight Time (PDT) to be processed on the same business day; orders placed after will be processed on the next business day.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Our processing time usually requires 1-2 business days after payment.</p><p style=\"font-family: DM+Sans;\"><strong><u>We do not ship during weekends and Korean holidays.</u></strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Worldwide shipping takes 2-7<em> business days</em>. US Shipping takes <em>5 to 15 business days.</em></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">A tracking code and a delivery estimate will be sent to you via email once it the package is sent out.</p>","categories":"Order & Shipping","updatedAt":"2026-06-11T06:04:44.763Z","id":"jzUPmi8k9RY9rZxbrqaq","questionId":"jzUPmi8k9RY9rZxbrqaq"},{"categoryId":"n5xJCX9O8tJITdsVxPbg","createdAt":"2025-08-24T23:49:10.649Z","featured":false,"published":true,"categories":"Order & Shipping","question":"ð¦ U.S. Orders â Customs & Tariffs","answer":"<p style=\"font-family: Roboto;\">All customs duties and tariffs (10%â15%, depending on the item) are <strong>prepaid at checkout</strong>, ensuring a smooth delivery with <strong>no extra fees upon arrival</strong>.<br>We handle all the customs and tariff processes for you â¨</p><p style=\"font-family: Roboto;\"> </p><p style=\"font-family: Roboto;\">ð¦ <strong>Important Notice </strong><br><em>Customs inspections for e-commerce shipments in the U.S. have recently increased, resulting in more frequent checks. As a result, our delivery time to the U.S. has been updated as follows:</em></p><ul><li><p style=\"font-family: Roboto;\"><em>5â15 business days (typical)</em></p></li><li><p style=\"font-family: Roboto;\"><em>Up to 30 days if selected for customs inspection</em></p></li></ul><p style=\"font-family: Roboto;\"></p><p style=\"font-family: Roboto;\"><em>After your USPS tracking number is assigned and the status shows âReady for onboard,â please note that tracking updates will not appear while is still undergoing customs clearance. Even though the package has arrived in the US, no updates will be available until it is released.</em></p><p style=\"font-family: Roboto;\"></p><p style=\"font-family: Roboto;\"><em>Once your shipment clears customs, tracking updates will resume.</em></p><p style=\"font-family: Roboto;\"><em>We truly appreciate your patience and understanding.</em></p>","updatedAt":"2026-07-31T07:35:10.308Z","id":"kB8ZOkcWvAtTPVmxalcp","questionId":"kB8ZOkcWvAtTPVmxalcp"},{"question":"What is the shelf life of your lenses? When do they expire?","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","createdAt":"2024-10-21T02:25:04.585Z","featured":false,"answer":"<p style=\"font-family: DM+Sans;\">Our lenses have a shelf life of 5 to 10 years from the manufacturing date.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Expiration dates are expressed as YY-MM-DD.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">For example:</p><ul><li>â <strong>31-08-01</strong> indicates the expiry date. The lenses will expire on August 31, 2031.</li><li>ð <strong>24-08-02</strong> refers to the manufacturing date, which means the lenses were made on August 2, 2024.</li></ul>","updatedAt":"2026-02-02T05:49:57.473Z","id":"kINlppudUlAjGjnwoChR","questionId":"kINlppudUlAjGjnwoChR"},{"createdAt":"2024-09-19T05:29:26.182Z","answer":"<p style=\"font-family: DM+Sans;\">Unfortunately, we do not offer mix-and-match packages as our lenses come pre-packaged. If you require different lens corrections for each eye, you would need to purchase two separate packs, each matching the prescription of one of your eyes.</p><p style=\"font-family: DM+Sans;\"> </p>","question":"Can I order different prescription/power for my left and my right eye?","categoryId":"n3cEUd6Y8S0omuOySCIF","published":true,"featured":false,"updatedAt":"2025-10-28T04:50:32.001Z","id":"kLgSvMyoC9pQTAnTLqkc","questionId":"kLgSvMyoC9pQTAnTLqkc"},{"defaultCategoryId":1,"createdAt":"2024-03-11T02:19:38.330Z","defaultQuestionId":2,"question":"How to track my order?","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"answer":"<p style=\"font-family: DM+Sans;\">
7709You will receive an email notification of your order confirmation as well as a dispatch email along with tracking information once your item is on its way to you.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">You can also check your package status on your account.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Note:</strong> If your carrier is <strong>DABONEA</strong>, once the package reaches your country, it will be handed over to <strong>USPS</strong> (U.S. orders) or <strong>UPS</strong> (rest of the world). You can track your order using the <strong>local carrier tracking number</strong> shown in red at the top right corner of your order page.</p>","featured":false,"updatedAt":"2025-10-28T04:46:54.567Z","id":"kjnbCp72Xb0fhNwM8Ayw","questionId":"kjnbCp72Xb0fhNwM8Ayw"},{"question":"I am a new customer, free shipping isn't applying to my first order.","featured":false,"createdAt":"2025-10-28T23:56:35.787Z","answer":"<p style=\"font-family: DM+Sans;\">Please note that our <strong>new customer promotions canât be combined</strong>. You can choose <strong>either</strong> of the following:</p><ul><li><strong>Free shipping</strong> on your first order (applied automatically at checkout <strong>when you are logged in</strong>, no matter the amount of your cart)</li></ul><p style=\"font-family: DM+Sans;\"><strong>OR</strong></p><ul><li><strong>10% off if your order amount already benefits from Free Shipping</strong></li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If youâd like to receive <strong>free shipping</strong>, please <strong>remove the welcome discount code</strong>, and the <strong>free shipping offer will apply automatically</strong> to your cart.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Youâre welcome to pick whichever offer works best for you before completing your checkout!</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If the code doesnât apply, please verify that you donât have any previous orders from earlier years, as that could affect eligibility.</p>","categoryId":"UVfJhDlUUpEzko8tDexD","categories":"Membership & Discounts","published":false,"updatedAt":"2026-04-14T23:40:05.825Z","id":"lTLewXrVr87S7UpsD9Rf","questionId":"lTLewXrVr87S7UpsD9Rf"},{"createdAt":"2024-09-10T00:52:12.677Z","question":"What should I do if my package arrived damaged?","categoryId":"QcPB5LCXtxQdM2DNPN38","published":true,"answer":"<p style=\"font-family: DM+Sans;\">If your package arrived damaged, please send us pictures of the damage for further instructions.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Note that light damage during transportation, as long as the lenses are still sealed and usable, does not qualify for a refund.</p>","featured":false,"updatedAt":"2025-10-28T04:50:03.143Z","id":"lsfGXkG4Kov6c6HhU2Ex","questionId":"lsfGXkG4Kov6c6HhU2Ex"},{"answer":"<p style=\"font-family: DM+Sans;\">Your points expire after <strong>1 year</strong>. </p><p style=\"font-family: DM+Sans;\">You can easily check your pointsâ expiry date anytime by going to <strong>Profile â Rewards</strong>. Your expiry date will be shown right below your current points balance.</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">Want to keep your points for longer? Simply earn new points through activities like:</p><p style=\"font-family: DM+Sans;\">ð Placing a new order<br>ð Subscribing to our newsletter<br>ð Writing a product review<br>ð And more!</p><p style=\"font-family: DM+Sans;\"></p><p style=\"font-family: DM+Sans;\">⨠Whenever you earn new points, your current points will get a fresh <strong>1-year extension </strong>before they expire!</p>","question":"Do my points expire? How can I extend my pointsâ expiry date?","published":true,"categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"createdAt":"2026-07-15T07:25:02.650Z","id":"mmSiaFMttIr7UgLPuSKx","questionId":"mmSiaFMttIr7UgLPuSKx"},{"question":"Lens care & hygiene: Dos & Donâts","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T06:43:39.717Z","answer":"<h3><strong>Do</strong></h3><p style=\"font-family: DM+Sans;\"> ⢠Always wash your hands before touching your lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Use fresh lens solution every time (for monthlies)</p><p style=\"font-family: DM+Sans;\"> ⢠Replace your lens case regularly</p><p style=\"font-family: DM+Sans;\"> ⢠Follow the recommended wear schedule</p><p style=\"font-family: DM+Sans;\"><br></p><h3><strong>Donât</strong></h3><p style=\"font-family: DM+Sans;\"> ⢠Sleep in lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Use water or saliva to clean lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Wear lenses longer than recommended</p><p style=\"font-family: DM+Sans;\"> ⢠Share lenses with others</p>","updatedAt":"2026-02-04T01:52:43.446Z","id":"nYqhy02qrdfAOCYRDnwe","questionId":"nYqhy02qrdfAOCYRDnwe"},{"question":"How to put in & remove contact lenses with long nails ð
","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-03-09T05:32:28.230Z","answer":"<p style=\"font-family: DM+Sans;\">Having long nails doesnât mean you canât wear contact lenses comfortably! With a few small te
7709chnique adjustments, you can safely put in and remove your lenses without touching your eyes with your nails.</p><p style=\"font-family: DM+Sans;\"><br></p><h3>⨠Before You Start</h3><ul><li><strong>Always wash and dry your hands thoroughly.</strong></li><li>Make sure your <strong>lens case and solution are clean</strong>.</li><li>Try to <strong>use the pads of your fingers</strong>, not the tips or nails.</li><li>Keep your <strong>nails angled away from your eye</strong> at all times.</li></ul><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h1>Putting In Contact Lenses</h1><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>1. Use the Finger Pad Method</strong></p><p style=\"font-family: DM+Sans;\">Place the lens on the <strong>soft pad of your index finger</strong> (not the fingertip). This gives you better control and keeps nails away from your eye.</p><p style=\"font-family: DM+Sans;\"><strong>2. Hold Your Eyelids Securely</strong></p><p style=\"font-family: DM+Sans;\">Use one hand to gently hold your <strong>upper eyelid</strong>, and the other hand to hold your <strong>lower eyelid</strong>. This prevents blinking while you place the lens.</p><p style=\"font-family: DM+Sans;\"><strong>3. Place the Lens Gently</strong></p><p style=\"font-family: DM+Sans;\">Look straight ahead or slightly upward and <strong>softly place the lens on your eye</strong> using the pad of your finger. Blink slowly to center the lens.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">ð¡ <em>Tip:</em> If your nails are very long, try placing the lens slightly from the <strong>side angle</strong> instead of directly from the front.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><br></p><h1>Removing Contact Lenses</h1><p style=\"font-family: DM+Sans;\"><br></p><h3>1ï¸â£ The Side-Finger Pinch Method</h3><p style=\"font-family: DM+Sans;\">This is one of the most popular techniques.</p><ul><li>Look slightly upward.</li><li>Use the <strong>pads of your index fingers (not the tips)</strong>.</li><li>Gently push the lens from opposite sides and <strong>pinch it out softly</strong>.</li><li>Keep nails <strong>angled away from your eye</strong>.</li></ul><h3><br></h3><h3>2ï¸â£ The Rolling / Slide Method</h3><p style=\"font-family: DM+Sans;\">Great if you want to avoid pinching.</p><ul><li>Look upward.</li><li>Use the <strong>pad of your index finger</strong> to gently <strong>slide the lens down</strong> toward your lower eyelid.</li><li>Once it moves down, the lens will <strong>fold slightly and come out easily</strong>.</li></ul><h3><br></h3><h3>3ï¸â£ The Knuckle Method</h3><p style=\"font-family: DM+Sans;\">Helpful for very long nails.</p><ul><li>Use the <strong>knuckle of your index finger</strong> instead of the fingertip.</li><li>Gently push the lens downward until it slides out.</li></ul><h3><br></h3><h3><br></h3><h3>ð Extra Tips for Long Nail Wearers</h3><ul><li>Try applying lenses <strong>before doing your makeup</strong>.</li><li>Keep nails <strong>smooth and filed</strong> to prevent scratches.</li><li>Work <strong>slowly and gently</strong>ânever rush your eyes!</li><li>If youâre new to lenses, practice a few times until the motion feels natural.</li></ul>","categories":"Product Information & Care","updatedAt":"2026-03-09T05:41:44.210Z","id":"q3Shd3Fm1bim6RHwAPGh","questionId":"q3Shd3Fm1bim6RHwAPGh"},{"question":"Water content guide ð","published":true,"categoryId":"tKkraX2O381C6VLUtqU0","featured":false,"createdAt":"2026-02-03T07:05:12.436Z","answer":"<p style=\"font-family: DM+Sans;\">Water content in contact lenses is super important! It helps your lenses keep their shape and stay comfy in your eyes.</p><p style=\"font-family: DM+Sans;\">Letâs dive into the two types of water content: Low vs. High! </p><p style=\"font-family: DM+Sans;\"><br></p><h3>ð§ Low water content</h3><p style=\"font-family: DM+Sans;\"><strong>Advantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Comfortable for longer wear â ideal for all-day comfort</p><p style=\"font-family: DM+Sans;\"> ⢠Less sensitive to environmental changes â no worries about dryness</p><p style=\"font-family: DM+Sans;\"> ⢠Low protein buildup â keeping your lenses fresh</p><p style=\"font-family: DM+Sans;\"> ⢠Compatible with any lens care product â easy peasy</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Disadvantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Lower Dk (oxygen permeability) â less oxygen gets to your eyes</p><p style=\"font-family: DM+Sans;\"> ⢠Less flexible â not as stretchy as high water lenses</p><p style=\"font-family: DM+Sans;\"> ⢠Thin and tricky to handle â be careful when putting them in or taking them out</p><p style=\"font-family: DM+Sans;\"><br></p><h3>ð§ High Water Content</h3><p style=\"font-family: DM+Sans;\"><strong>Advantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Feels comfy when you first wear them â soft and smooth from the get-go</p><p style=\"font-family: DM+Sans;\"> ⢠Higher Dk â more oxygen for your eyes, keeping them fresh</p><p style=\"font-family: DM+Sans;\"> ⢠Quick to bounce back â they regain their shape fast if they get squished</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>Disadvantages</strong></p><p style=\"font-family: DM+Sans;\"> ⢠Fragile â handle with care</p><p style=\"font-family: DM+Sans;\">⢠Less flexible â not as stretchy as high water lenses</p>","updatedAt":"2026-02-04T01:50:35.616Z","id":"q6eHg0MADQ5nyqStKDXe","questionId":"q6eHg0MADQ5nyqStKDXe"},{"createdAt":"2024-10-11T02:27:44.742Z","answer":"<p style=\"font-family: DM+Sans;\">Unfortunately, we do not offer price matching on flash sales or for orders that have already been shipped. Our pricing is subject to change during promotional events, and once an order has been dispatched, we cannot adju
7709st the price for that specific order.</p>","question":"Do you offer price matching?","published":true,"categoryId":"QcPB5LCXtxQdM2DNPN38","featured":false,"updatedAt":"2025-10-28T04:50:19.073Z","id":"rcNQBad5YHg74ziILXji","questionId":"rcNQBad5YHg74ziILXji"},{"createdAt":"2024-09-10T00:52:37.205Z","question":"What if my package was stolen?","categoryId":"QcPB5LCXtxQdM2DNPN38","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\">If you choose to forfeit the signature requirement, the insurance will also be forfeited, and we will not be able to compensate for any theft.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">If you are not home at the time of delivery, we recommend rescheduling it through the carrierâs website to ensure secure receipt of your package.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">We highly recommend scheduling the delivery to be received in person once you receive your tracking code.</p>","updatedAt":"2025-10-28T04:49:45.855Z","id":"ryZ2KPFFosADu1Sr2zeG","questionId":"ryZ2KPFFosADu1Sr2zeG"},{"createdAt":"2024-03-12T01:18:30.923Z","question":"Can I buy contact lenses with an expired prescription? Can I order without a prescription?","categoryId":"tKkraX2O381C6VLUtqU0","published":true,"featured":false,"answer":"<p style=\"font-family: DM+Sans;\"><strong>We kindly require our customers to upload your prescription before placing an order. </strong></p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">To buy contacts without prescription simply find your most recent box of contact lenses and on the side, you'll see your parameters displayed.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">However, we always advise our customers to use a valid prescription when placing orders. This will ensure you get suitable lenses for your unique vision needs.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">A valid prescription is given by a registered optician, ophthalmologist or eye doctor after an eye exam, which is necessary to determine the level of correction your eyes need. Your prescription should be <strong>no more than 2 years old</strong> when ordering contact lenses.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">You may send your prescription to us through your <a rel=\"noopener noreferrer\" href=\"https://www.hapakristin.com/account/login\">personal page</a> or you can reply to your order confirmation email with the file.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\"><strong>If your prescription is more than 2 years old</strong>, but you do not have any noticeable changes to your vision, then you are still able to safely order replacement lenses from us.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">However, we want you to get the most from your lenses and vision - so we always recommend booking for an updated eye exam as soon as possible with your local optometrist.</p>","updatedAt":"2025-10-28T04:52:03.197Z","id":"uOHxVTehjFvUiSe7dWYv","questionId":"uOHxVTehjFvUiSe7dWYv"},{"answer":"<p style=\"font-family: DM+Sans;\">The points will be added to your account once the order is shipped or the status changes to \"fulfilled\".</p>","question":"How long after I place my order will I receive my loyalty points? ","published":true,"categoryId":"UVfJhDlUUpEzko8tDexD","featured":false,"createdAt":"2025-12-17T23:18:46.711Z","id":"vdQdVd7s3GrjZskVn6fO","questionId":"vdQdVd7s3GrjZskVn6fO"},{"createdAt":"2024-03-12T01:02:01.632Z","categoryId":"n5xJCX9O8tJITdsVxPbg","published":true,"answer":"<p style=\"font-family: DM+Sans;\">Your order will be displayed as <strong>'Unfulfilled' until your package is shipped out</strong>. 'Unfulfilled' simply means that we are still preparing your order.</p><p style=\"font-family: DM+Sans;\"><br></p><p style=\"font-family: DM+Sans;\">Once your order is shipped, the status will update to 'Fulfilled.' Please note that <strong>'Fulfilled' means your package has been shipped, but it has not yet been delivered.</strong></p>","question":"What does 'Unfulfilled' and 'Fulfilled' mean for my order status?","featured":false,"updatedAt":"2025-10-28T04:47:51.644Z","id":"yXuPspaGfL4zIoH1lJKg","questionId":"yXuPspaGfL4zIoH1lJKg"}] || [], 7710 categories: [{"defaultCategoryId":1,"createdAt":"2024-03-11T02:19:38.328Z","index":1,"position":1,"published":true,"categoryId":"n5xJCX9O8tJITdsVxPbg","icon":"shipment","featured":true,"question":"Order & Shipping","id":"n5xJCX9O8tJITdsVxPbg","questions":[{"featured":false,"view":969,"questionId":"cxXY5VVl87dZM7IdrY1n","defaultQuestionId":3,"index":1,"published":true,"title":"Do you ship internationally?"},{"title":"ð¨ Shipping to the Middle East","featured":false,"published":false,"questionId":"45kWzdYTSsYWOdcvJaBP","index":2},{"title":"ð¦ U.S. Orders â Customs & Tariffs","featured":false,"published":true,"questionId":"kB8ZOkcWvAtTPVmxalcp","index":3},{"title":"ð¦ Europe Orders â Customs & Duties","featured":false,"published":true,"questionId":"EFGQmHlCEnIo3c0b7I9i","index":4},{"title":"Shipping fees & delivery timelines","featured":false,"published":true,"questionId":"1OmyWMsLVf1Z3b5yEyiZ","index":5},{"featured":false,"view":366,"questionId":"S6SrrXzHdkbw9V5RlBFK","published":true,"title":"Customs & additional fees","index":6},{"featured":false,"view":316,"questionId":"8Nok3H64W13NJUW2fUos","published":true,"title":"Can I amend or cancel my order?","index":7},{"featured":false,"view":583,"questionId":"jzUPmi8k9RY9rZxbrqaq","defaultQuestionId":1,"index":8,"published":true,"title":"How long will it take to receive my order?"},{"featured":false,"view":158,"questionId":"kjnbCp72Xb0fhNwM8Ayw","defaultQuestionId":2,"index":9,"published":true,"title":"How to track my order?"},{"featured":false,"view":202,"questionId":"Xb1lgtYVI7sfUZYSVlTX","defaultQuestionId":4,"index":10,"published":true,"title":"I never got my order, what to do?"},{"featured":false,"view":152,"questionId":"QbIEwlWRNDNrTMJ1G2tn","published":true,"title":"My order is late","index":11},{"featured":false,"view":90,"questionId":"1fkgY7pApQHVCTMevqqq","published":true,"title":"My package was returned to sender","index":12},{"featured":false,"view":148,"questionId":"VaimcYG1fdsZOwWeRD5f","published":true,"title":"My order was delivered but I never received it","index":13},{"featured":false,"view":111,"questionId":"ieJz1pbjEtabtvUMTzYa","published":true,"title":"A delivery attempt was made but I wasnât home to receive the package, what do I do?","index":14},{"featured":false,"view":262,"questionId":"yXuPspaGfL4zIoH1lJKg","published":true,"title":"What does 'Unfulfilled' and 'Fulfilled' mean for my order status?","index":15},{"title":"How can I get an invoice for my order?","featured":false,"published":true,"questionId":"O0EYHmo4H8Q4ZQhHyXab","index":16},{"title":"Can I receive a refund or gift card for customs duties and taxes?","featured":false,"published":true,"questionId":"51q36TT1NuyQ0OeS4U70","index":17}],"updatedAt":"2026-08-27T18:34:21.527Z"},{"defaultCategoryId":2,"createdAt":"2024-03-11T02:19:38.329Z","icon":"exchange","index":1,"position":2,"published":true,"categoryId":"QcPB5LCXtxQdM2DNPN38","question":"Refunds & Returns","featured":true,"questions":[{"featured":false,"view":203,"questionId":"NQF2O4X0fRkMVMQFGWm6","defaultQuestionId":5,"index":1,"published":true,"title":"What is your return policy? Can I exchange an item?"},{"featured":false,"view":134,"questionId":"HYvWy0rVGHZYNE1onuOn","published":true,"title":"I received a defective item","index":2},{"featured":false,"view":75,"questionId":"b1NclSaRLtP7yY3TRkq9","published":true,"title":"I received the wrong item","index":3},{"featured":false,"view":92,"questionId":"ryZ2KPFFosADu1Sr2zeG","published":true,"title":"What if my package was stolen?","index":4},{"featured":false,"view":66,"questionId":"lsfGXkG4Kov6c6HhU2Ex","published":true,"title":"What should I do if my package arrived damaged?","index":5},{"title":"What should I do if I receive a defective product purchased from a physical store?","featured":false,"published":true,"questionId":"iGnm7x9pHBPtk2sfziun","index":6,"view":27},{"featured":false,"view":96,"questionId":"rcNQBad5YHg74ziILXji","published":true,"title":"Do you offer price matching?","index":7},{"title":"ð¨ Notice Regarding Fraudulent Claims","featured":false,"published":true,"questionId":"HJ1y6ZCcSD9gZVCTQlP6","index":8,"view":45}],"updatedAt":"2025-10-28T04:50:19.099Z","id":"QcPB5LCXtxQdM2DNPN38"},{"createdAt":"2024-03-12T01:14:06.880Z","featured":true,"question":"Shopping","icon":"cart","published":true,"position":3,"categoryId":"n3cEUd6Y8S0omuOySCIF","id":"n3cEUd6Y8S0omuOySCIF","questions":[{"questionId":"kLgSvMyoC9pQTAnTLqkc","published":true,"view":693,"index":1,"title":"Can I order different prescription/power for my left and my right eye?","featured":false},{"index":3,"published":true,"questionId":"PaK8nV2N8QYAIPZwYIwG","featured":false,"view":642,"title":"How long c
7710an I wear the colored lenses? Can I wear them everyday? "},{"published":true,"view":557,"index":4,"title":"Can I wear colored lenses? ","questionId":"Y9A02IcghNp5YCBDrAQK","featured":false},{"featured":false,"title":"I am having trouble uploading my prescription (US ONLY)","published":true,"questionId":"RMNX7fuI4vyyiq8fLNfx","view":575,"index":5},{"published":true,"featured":false,"index":6,"title":"Will my prescription affect the lenses I ordered? (US ONLY)","questionId":"i3zSSESI2OWyVHsyJXA3"},{"title":"Where do you ship from?","published":true,"featured":false,"view":406,"index":7,"questionId":"TqPoYBxfsmmT2EFti3Ux"}],"updatedAt":"2025-12-22T07:18:24.095Z"},{"createdAt":"2024-03-12T01:16:21.893Z","featured":true,"icon":"product","published":true,"position":4,"categoryId":"tKkraX2O381C6VLUtqU0","question":"Product Information & Care","id":"tKkraX2O381C6VLUtqU0","questions":[{"featured":false,"view":525,"questionId":"VsJF6vOzaosNoH7hni5V","published":true,"title":"Are your lenses safe?","index":1},{"title":"Lens care & hygiene: Dos & Donâts","featured":false,"published":true,"questionId":"nYqhy02qrdfAOCYRDnwe","index":2},{"featured":false,"view":299,"questionId":"OMmlv7fLNsz8vcpzRYYS","published":true,"title":"How do I apply the lenses? ","index":3},{"featured":false,"view":236,"questionId":"BhA3EL9NKvk0iFUJLbZt","published":true,"title":"How do I remove the lenses? ","index":4},{"title":"How to put in & remove contact lenses with long nails ð
","featured":false,"published":true,"questionId":"q3Shd3Fm1bim6RHwAPGh","index":5},{"title":"Types of contact lenses","featured":false,"published":true,"questionId":"JABAQR9vRf0hhOnpGUPL","index":6},{"title":"How to choose the right lenses","featured":false,"published":true,"questionId":"F1IZVQjsZnFgnB0tQmUv","index":7},{"title":"G.DIA guide ð","featured":false,"published":true,"questionId":"8zM9FoelSVMqNHTibrEU","index":8},{"title":"Base curve guide ð","featured":false,"published":true,"questionId":"X2G9HUPL7v3RioBlrAYg","index":9},{"title":"Water content guide ð","featured":false,"published":true,"questionId":"q6eHg0MADQ5nyqStKDXe","index":10},{"title":"How long can you wear contact lenses?","featured":false,"published":true,"questionId":"Wa959sUCKGgDHdki0XBj","index":11},{"title":"Can I wear makeup with contacts?","featured":false,"published":true,"questionId":"gG3N5Y78KuASyDWPaMuz","index":12},{"title":"When NOT to wear contact lenses","featured":false,"published":true,"questionId":"aCeSiRphfDsJV3RzNfIk","index":13},{"title":"How to check if your lenses are upside-down?","featured":false,"published":true,"questionId":"FszPPck2B1Tzc0rURuqT","index":14},{"title":"What is the shelf life of your lenses? When do they expire?","featured":false,"published":true,"questionId":"kINlppudUlAjGjnwoChR","view":407,"index":15},{"featured":false,"view":749,"questionId":"uOHxVTehjFvUiSe7dWYv","published":true,"title":"Can I buy contact lenses with an expired prescription? Can I order without a prescription?","index":16},{"title":"Where are Hapa Kristin lenses made?","featured":false,"published":true,"questionId":"H9SzCAilY8w22YDmzGkL","index":17}],"updatedAt":"2026-03-09T05:41:44.631Z"},{"question":"Membership & Discounts","position":5,"featured":true,"published":true,"icon":"gift","categoryId":"UVfJhDlUUpEzko8tDexD","createdAt":"2025-12-10T06:14:48.094Z","id":"UVfJhDlUUpEzko8tDexD","questions":[{"published":false,"featured":false,"title":"I am a new customer, free shipping isn't applying to my first order.","index":1,"questionId":"lTLewXrVr87S7UpsD9Rf"},{"index":2,"questionId":"Yr07qP0sd3K6WMGF0Co6","featured":false,"published":true,"title":"How do I get free shipping on my first order?"},{"questionId":"8icFMYnuQ1STR57S0WJX","published":true,"index":3,"featured":false,"title":"Do points expire?"},{"index":4,"featured":false,"title":"I redeemed a coupon by accident. How can I refund it?","questionId":"RH2G17utaOXTj5evupKo","published":true},{"questionId":"vdQdVd7s3GrjZskVn6fO","published":true,"featured":false,"index":5,"title":"How long after I place my order will I receive my loyalty points? "},{"title":"Do my points expire? How can I extend my pointsâ expiry date?","featured":false,"published":true,"questionId":"mmSiaFMttIr7UgLPuSKx"}],"updatedAt":"2026-07-15T07:25:02.789Z"},{"createdAt":"2024-03-12T01:19:11.784Z","featured":true,"icon":"capital","published":true,"categoryId":"Adq6ooyJOIHgSchpSWgr","question":"Customer Service","questions":[{"featured":false,"view":148,"questionId":"Mmd0PZ9meHgqVDaIUiX1","published":true,"title":"Do you provide customer support during weekends and holidays?"},{"featured":false,"view":268,"questionId":"AkKNa7NkbfemFCwwUP7F","published":true,"title":"How do I contact the customer service?"},{"title":"How can I change my email?","featured":false,"published":true,"questionId":"0EMRE7KzSIBV9Mhk5Dd5"}],"position":6,"updatedAt":"2025-12-10T06:14:48.171Z","id":"Adq6ooyJOIHgSchpSWgr"},{"questions":[],"question":"Store locator","featured":false,"published":false,"icon":"inventory","categoryId":"djRU1j0QoGWp6tgIiIN0","createdAt":"2025-04-15T05:54:10.215Z","position":7,"updatedAt":"2025-12-10T06:14:48.171Z","id":"djRU1j0QoGWp6tgIiIN0"},{"categoryId":"Z9tID4oFcTNfbI8lKwI6","question":"Uncategorized","position":8,"featured":false,"published":false,"icon":"","
7710isDefault":true,"questions":[],"createdAt":"2026-03-05T04:00:25.573Z","id":"Z9tID4oFcTNfbI8lKwI6"}] || [], 7711 translation: translation, 7712 widgetSetting: {"settingsVersion":2,"enableLiveChat":true,"enableAIAssistant":true,"appearance":{"colors":{"headerBackground":"#FF7396","headerForeground":"#FFFFFF","content":"#1D1D1D","enableHeaderGradient":false,"gradientStart":"#FF7396","gradientEnd":"#F2F6F7"},"theme":"","colorMode":"light_mode","typography":{"content":"Roboto","heading":"Roboto","availableFonts":[{"label":"Helvetica","value":"Helvetica"},{"label":"Pretendard-Regular","value":"Pretendard-Regular"},{"label":"Poppins-Klaviyo-Hosted","value":"Poppins-Klaviyo-Hosted"}]},"layout":{"mobileHeightRatio":"80"},"launcher":{"iconImageUrl":"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/logo%2FUsvAzd8AOkiISBZb548K%2Fkristin-assistant-1761867195886.png?alt=media&token=b5b244b7-6be3-4e5c-8387-0505738f2676","label":"Need help?","displayMode":"icon-only","position":"bottom_right","offset":{"x":0,"y":0},"labelColor":"#FFFFFF","size":"40px","backgroundColor":"#FF7396","icon":"upload_icon"},"home":{"title":"Hi Kristin ð","subtitle":"How can we help you?"},"headerLogoUrl":null,"shopName":"HapaKristin","dateFormat":"YYYY-MM-DD","hideBranding":false,"customCss":".Avada-Faqs-Block .Avada-Accordion_Item-Button{\nbackground: #FF7396;\n}\n/* Start customize FAQ blocks */\n.avada-faqs-block-container .avada-faqs-item-question {\nbackground: #FF7396 !important;\n}\n.avada-faqs-block-container .avada-faqs-item-question div {\ncolor: #FFF !important;\n}\n/* End customize FAQ blocks */","showNavigation":true,"showOrderTrackingTab":true,"showFeaturedArticlesTab":true,"showCategoriesTab":true,"displayPages":{"values":[],"type":"all"},"displayDevices":"all","enableChatFocus":false,"showProductAIAssistant":false,"showHomepageAIAssistant":false,"enableTranscriptEmail":true},"prechatContact":{"quickReplies":{"enabled":true},"form":{"fields":["email"],"mode":"required","requireEmail":true,"requireName":false,"promptAfterMessageCount":3,"showNewsletterOptIn":true,"description":"Enter your email to start chatting with Kristin Assistant"},"contact":{"enabled":true,"methods":{"whatsApp":{"active":true,"value":"","title":"WhatsApp","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"messenger":{"active":false,"value":"","title":"Messenger","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"phoneCall":{"active":false,"value":"","title":"Phone Call","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"email":{"active":true,"value":"[email protected]","title":"Email","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"instagram":{"active":false,"value":"","title":"Instagram","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"telegram":{"active":false,"value":"","title":"Telegram","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"skype":{"active":false,"value":"","title":"Skype","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"line":{"active":false,"value":"","title":"Line","resTimeSuffix":"hour","firstMessage":"Hi there! ð How can I help you?","shopName":"{{shop_name}}","resTimeValue":"1"},"zalo":{"active":false,"value":"","title":"Zalo"},"sms":{"active":false,"value":"","title":"SMS"},"tiktok":{"active":false,"value":"","title":"TikTok"}},"methodOrder":["email"],"enableLocalPhoneFormat":false,"enableLocalZaloFormat":false},"enableDisclaimerConsent":true,"disclaimerConsentText":"<p>This email will be used to contact you if we are disconnected.</p>"},"availability":{"statusLabels":{"online":"We are online","offline":"Usually reply in a few minutes","offlineScheduled":"We're away · Back {{schedule}}","onBreak":"On break · Back at {{schedule}}","onHoliday":"Off today · Back at {{schedule}}"},"breakTimes":[{"endTimeBreak":"13:00","startTimeBreak":"11:30"}],"holidays":[{"id":"2025-09-26T04:36:38.164Z","nameHoliday":"Seollal (Lunar New Year)","until":"02/20/2026","since":"02/14/2026"},{"id":"2026-02-13T07:33:44.486Z","nameHoliday":"March 1st","until":"03/02/2026","since":"03/02/2026"},{"id":"2026-02-13T07:33:58.308Z","nameHoliday":"May 5th","until":"05/05/2026","since":"05/05/2026"},{"id":"2026-02-13T07:35:15.124Z","nameHoliday":"Buddha's Birthday","until":"05/25/2026","since":"05/25/2026"},{"id":"2026-06-22T04:43:33.395Z","nameHoliday":"Liberation Day","until":"08/17/2026","since":"08/15
7712/2026"},{"id":"2026-06-22T04:44:36.375Z","nameHoliday":"Chuseok","until":"09/27/2026","since":"09/24/2026"},{"id":"2026-06-22T04:45:29.123Z","nameHoliday":"National Foundation Day","until":"10/05/2026","since":"10/03/2026"},{"id":"2026-06-22T04:46:05.567Z","nameHoliday":"Hangeul Day","until":"10/09/2026","since":"10/09/2026"},{"id":"2026-06-22T04:46:52.477Z","nameHoliday":"Christmas Day","until":"12/25/2026","since":"12/25/2026"}],"onlineStatusMode":"during_hours","timeZone":"Asia/Seoul","workingHoursMode":"custom_time","weeklySchedule":{"sunday":{"timeEnd":"17:00","timeStart":"09:00","isSelect":false,"label":"Sunday"},"saturday":{"timeEnd":"17:00","timeStart":"09:00","isSelect":false,"label":"Saturday"},"tuesday":{"timeEnd":"20:00","timeStart":"13:00","isSelect":true,"label":"Tuesday"},"wednesday":{"timeEnd":"20:00","timeStart":"13:00","isSelect":true,"label":"Wednesday"},"thursday":{"timeEnd":"20:00","timeStart":"13:00","isSelect":true,"label":"Thursday"},"friday":{"timeEnd":"20:00","timeStart":"13:00","isSelect":true,"label":"Friday"},"monday":{"timeEnd":"20:00","timeStart":"13:00","isSelect":true,"label":"Monday"}},"showBreakTime":false,"showHolidays":true,"showFirstReplyTeaser":true,"firstReplyMessages":{"online":"Hi there ð. Thank you for reaching out. We'll be with you in a moment","offline":"Hi ð, we are currently offline. We will respond as soon as possible during our next business hours."},"autoResolve":{"enabled":true,"delayValue":"60","delayUnit":"minute"},"showChatStatus":true},"aiAgent":{"persona":{"name":"Hapa Kristin","avatar":"upload_icon","avatarUrl":"https://firebasestorage.googleapis.com/v0/b/avada-helpdesk-faq.appspot.com/o/logo%2FUsvAzd8AOkiISBZb548K%2Fkristin-assistant-1765245554499.png?alt=media&token=0bd8fe14-57ad-4b7d-a57b-5af910b0d281"},"knowledge":{"supportEmails":"[email protected]"},"scenarios":{"reengageMode":"always","humanAgentRequest":{"aiReplyPolicy":"allow_offline_hour"}},"autoAnswerChannels":["online store"]},"internalFlags":{"accountBlocked":false,"quickReplies":{"suggestionFAQs":[{"questionId":"0dc8eba6-f872-4eba-9107-794efd870077","question":"ð How long does delivery take?","answer":"Our processing time usually requires 1-2 business days after payment.\n\n**Worldwide shipping takes 2-7 business days. US Shipping takes 4 to 10 business days.**\n\n_We do not ship during weekends and Korean holidays._"},{"questionId":"794425d6-d0c7-4e64-a7ad-e5a5a98f3387","question":"ð Return policy","answer":"Please check our return/refund/exchange policy [here](https://hapakristin.com/policies/refund-policy)."}]}}} || {}, 7713 faqPageSetting: {"description":"Got a question? We are here to answer!","questionTextColor":"#FFFFFF","faqPageCustomCss":"","q&aFont":"Roboto","fontFamily":"Roboto","header":"Frequently Asked Questions","theme":"avada-faq-page","categoryColor":"#222222","headerColor":"#FFFFFF","answerTextColor":"#222222","questionBackgroundColor":"#222222","answerBackgroundColor":"#FFEAEF","descriptionColor":"#222222","fontStore":[{"label":"Helvetica","value":"Helvetica"},{"label":"Pretendard-Regular","value":"Pretendard-Regular"},{"label":"Poppins-Klaviyo-Hosted","value":"Poppins-Klaviyo-Hosted"}],"bannerType":"color","backgroundPage":"#FFFFFF","customUrl":"avada-faqs","layout":"page","bannerImage":"","buttonBackgroundColor":"#3B3B3B","subtitleColor":"#616161","enabledBanner":false,"buttonTextColor":"#FFFFFF","bannerColor":"#616161cc","bodyTextColor":"#303030BF","opacity":8,"contactUs":{"header":"Not finding what you are looking for?","action":"chatbox","display":true,"description":"Chat with us or send us an email"},"isBlocked":false,"brandingRemoval":false,"appCss":".Avada_PreviewDesktop__Screen .Avada-Faq-Page .Avada-Faq_Header .Avada-Faq_Search .Avada-Faq_Search-Box {\n margin: 0 !important;\n background: transparent !important;\n}\n\n.Avada_PreviewDesktop__Screen .Avada-Faq-Page .Avada-Faq_Body {\npadding: 16px 0px;\n}\n.Avada-Faqs-Block .Avada-Accordion_Item-Button{\nbackground: #FF7396;\n}","id":"XgRwVWpiWUQM72oVDwOv","statusFAQPage":false} || {}, 7714 isApiMetafield: false, 7715 notificationSettings: {"isNotifySumUp":true} || {} 7716 }; 7717 } 7718 7719 if (!window.AVADA_APP_FAQS_STATUS) { 7720 window.AVADA_APP_FAQS_STATUS = {"websiteId":"vjD07onKsXXCSTp3OUk3","shopMailUsername":"vjd07onksxxcstp3ouk3","shopId":"UsvAzd8AOkiISBZb548K","chattySat":"d73b4a20bcb4fc299b7ff5b44ebe5a99","enableChatbox":true,"enableAiMo
7720de":false,"enableFaqTargeting":true,"isChattyDev":false} || {}; 7721 } 7722 7723 if (!window.AVADA_APP_FAQS_SHOP) {window.AVADA_APP_FAQS_SHOP = { 7724 name: decodeHTMLEntities("HapaKristin"), 7725 logo:"\/\/hapakristin.com\/cdn\/shop\/files\/logo.png?v=1678840864", 7726 moneyFormat: "\u003cspan class=money\u003e${{amount}}\u003c\/span\u003e", 7727 moneyWithCurrencyFormat: "\u003cspan class=money\u003e${{amount}} USD\u003c\/span\u003e" 7728 }; 7729 } 7730 7731 if (!window.AVADA_APP_FAQS_CUSTOMER) { 7732 window.AVADA_APP_FAQS_CUSTOMER = { 7733 id: null, 7734 name: null, 7735 email: null, 7736 phone: null, 7737 current_location: null, 7738 orders_count: null, 7739 first_name: null, 7740 last_name: null, 7741 total_spent: "", 7742 tags: null, 7743 accepts_marketing: null, 7744 }; 7745 } 7746 7747 if (!window.AVADA_APP_FAQS_PRODUCT) {window.AVADA_APP_FAQS_PRODUCT = { 7748 compare_at_price: null, 7749 price: "", 7750 title: null, 7751 image: null, 7752 image_alt: null, 7753 id: null, 7754 available: null, 7755 }; 7756 } 7757 7758 } catch (e) { 7759 console.error('Error assigning variables', e); 7760 } 7761 7762 function decodeHTMLEntities(message) { 7763 if (!message) return ''; 7764 const textArea = document.createElement('textarea'); 7765 textArea.innerHTML = message; 7766 return textArea.value; 7767 } 7768</script>
7768 7769<!-- BEGIN app snippet: chatty-request-global -->
7769<script type="text/javascript"> 7770 try { 7771 if (!window.AVADA_APP_FAQS_REQUEST) { 7772 window.AVADA_APP_FAQS_REQUEST = { 7773 design_mode: false, 7774 host: "hapakristin.com", 7775 locale: {"shop_locale":{"locale":"en","enabled":true,"primary":true,"published":true}}, 7776 market_id: 14975053, 7777 origin: "https:\/\/hapakristin.com", 7778 page_title: null, 7779 page_type: "customers\/login", 7780 path: "\/account\/login", 7781 visual_preview_mode: false, 7782 }; 7783 } 7784 } catch (e) { 7785 console.error('Error assigning AVADA_APP_FAQS_REQUEST', e); 7786 } 7787</script>
7787 7788<!-- END app snippet --> 7789 7790 7791</div>
7791<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
7791 7792</body> 7793</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.