(function(){ function init(){ const h = document.querySelector(".header"); const hero = document.querySelector("[data-header='hero']") || document.querySelector('[data-header="hero"]'); if(!h) return; const l = h.querySelectorAll(".h-link div"); const ul = h.querySelectorAll('[data-underline="line"]'); const a = h.querySelector(".arrow_header"); const ai = h.querySelector(".arrow_icon"); const lo = h.querySelector(".logotype"); const mtOpen = h.querySelector(".menu_open.open"); const mtClose = h.querySelector(".menu_open.close"); const ml = h.querySelectorAll(".line_one, .line_two"); const burger = h.querySelector(".menu_hamburger") || document.querySelector(".menu_hamburger"); const L = [ "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/690bf48802ae38e1392fa278_logotype.svg", "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/69137b96502b94ae6d0b3748_navy-logo.svg" ]; const A = [ "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/690bf56e52c84e6fd7b1f5c8_arrow_header.svg", "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/69137bc9a8631f04b7d48b2b_light-arrow.svg" ]; const CART_ICONS = [ "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/698b87652261f3b46db28881_d922790c93be1dfe3dce077173836b70_bag_icon.png", "https://cdn.prod.website-files.com/6908da6bb05d9afef82d4656/698b97ab4cb993f95bc09d12_navy-cart.png" ]; const t = "0.3s ease"; let cartImg = null, qtyEl = null; let menuOpen = false; h.style.transition = `background-color ${t}`; l.forEach(e => e.style.transition = `color ${t}`); ul.forEach(e => e.style.transition = `color ${t}`); [a, mtOpen, mtClose, ...ml].forEach(e => { if(e) e.style.transition = `background-color ${t}, color ${t}`; }); function s(mode){ const light = mode === "light"; const color = light ? "#1B2451" : "#FFFFFF"; if(!cartImg) cartImg = h.querySelector(".cart_icon .cart_icon_spec") || document.querySelector(".cart_icon .cart_icon_spec"); if(!qtyEl) qtyEl = h.querySelector(".qty_cart") || document.querySelector(".qty_cart"); h.style.backgroundColor = light ? "#FFF8EA" : "transparent"; l.forEach(e => e.style.color = color); ul.forEach(e => e.style.color = color); if(lo) lo.src = L[light ? 1 : 0]; if(a) a.style.backgroundColor = light ? "#1B2451" : "#FFFFFF"; if(ai) ai.src = A[light ? 1 : 0]; if(cartImg){ cartImg.removeAttribute("srcset"); cartImg.src = CART_ICONS[light ? 1 : 0]; } if(mtOpen) mtOpen.style.color = color; if(mtClose) mtClose.style.color = color; ml.forEach(e => e.style.backgroundColor = color); if(cartImg){ cartImg.style.transition = t; cartImg.style.color = color; } if(qtyEl){ qtyEl.style.transition = t; qtyEl.style.color = color; } } function heroMode(){ if(!hero) return "light"; const rect = hero.getBoundingClientRect(); return rect.bottom <= 0 ? "light" : "dark"; } function applyFromScroll(){ if(menuOpen) return; s(heroMode()); } function toggleMenu(){ if(!burger) return; if(!menuOpen){ menuOpen = true; s("dark"); return; } menuOpen = false; applyFromScroll(); } if(hero){ applyFromScroll(); let ticking = false; function onScroll(){ if(!ticking){ requestAnimationFrame(() => { applyFromScroll(); ticking = false; }); ticking = true; } } window.addEventListener("scroll", onScroll, { passive: true }); window.addEventListener("resize", applyFromScroll, { passive: true }); }else{ applyFromScroll(); } if(burger){ burger.addEventListener("click", toggleMenu, { passive: true }); } setTimeout(applyFromScroll, 400); setTimeout(applyFromScroll, 1200); } if(document.readyState === "loading"){ document.addEventListener("DOMContentLoaded", init); }else{ init(); } })();