Files
kaiser-natron/dist/assets/ProductPage-CH5S7i4W.js
Dorian 875e16ec8e feat: shop hero category buttons; remove Revitalization, Austria claim; recat Sport-Profi
Brand-owner review follow-ups:
- Shop hero (§27): add four skewed, category-coloured jump-buttons under the
  hero text that smooth-scroll to each section; remove the white gap below the
  hero so the green flows straight into the first colour banner.
- Revitalization (§24): remove the off-brand "Revitalization Center" section
  from the homepage and strip the dead /#revitalize nav links from all pages.
  Component + i18n + DS docs kept in reserve.
- Sport-Profi (§25): reclassify from care → wash (it's a laundry product).
- Origin (§26, G1): remove the "Das Original aus Österreich" / "The original
  from Austria" sentence from the footer tagline (DE + EN).

Docs: STYLE-CHANGES.md §24-27, simple guide, and a new on-brand HTML render
STYLE-CHANGES.html (mirrors the review-status page design). dist/ rebuilt.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-24 07:54:52 +01:00

1 line
24 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{A as e,B as t,C as n,D as r,G as i,I as a,S as o,T as s,ft as c,j as l,l as u,m as d,o as f,p,r as m,s as h,u as g,ut as ee,x as te}from"./runtime-core.esm-bundler-DTXUv7Wx.js";import{a as ne,o as re}from"./vue-router-Cyqru1db.js";import{t as _}from"./Icon-CtR1FGIT.js";import{t as v}from"./i18n-Uw3aZfCH.js";import{r as y}from"./products-0gaA2Xo6.js";import{c as b,d as ie,f as ae,p as oe,u as se}from"./api-Co5DNHfG.js";import{t as ce}from"./Navbar-DwNrj8mb.js";import{t as x}from"./Button-DG-tA4DQ.js";import{t as le}from"./QuantityStepper-BB38-Td1.js";import{t as ue}from"./CartDrawer-Cngidn8v.js";import{t as de}from"./ProductCard-CPhsIF19.js";import{t as S}from"./WaveDivider-Bj5UZ0Z6.js";var C={de:{"kaiser-natron-pulver-50-g-beutel":{tagline:`Ein grünes Wunder, vielfach nützlich.`,lead:`Kaiser-Natron® hilft überraschend oft: beim Entsäuern von Speisen, zum Enthärten von Tee- und Kaffeewasser, um Gemüse zu säubern oder Backpulver zu ersetzen oder, oder, oder. Und dazu verblüffend vielseitig. Ein wahrer Alleskönner für Dein Wohlergehen, Pflege und Haushalt.`,applications:[{title:`Obst wird bekömmlicher`,body:`Beeren, Rhabarber, Zwetschgen: Sie alle rundet Kaiser-Natron® im Geschmack ab, reduziert die Säure und ersetzt so Zucker. ½ TL pro Kilo Obst genügt.`},{title:`Erfrischende Zitronenbrause`,body:`Zitronensaft (oder Essig) und Zucker in ein Glas kaltes Wasser einrühren. ½ TL Kaiser-Natron® hinzufügen wohl bekomms.`}]},"kaiser-natron-pulver-250-g-grosspackung":{tagline:`Ein grünes Wunder, vielfach nützlich.`,lead:`Kaiser-Natron® hilft überraschend oft: beim Entsäuern von Speisen, zum Enthärten von Tee- und Kaffeewasser, um Gemüse zu säubern oder Backpulver zu ersetzen oder, oder, oder. Und dazu verblüffend vielseitig. Ein wahrer Alleskönner für Dein Wohlergehen, Pflege und Haushalt.`,applications:[{title:`Obst wird bekömmlicher`,body:`Beeren, Rhabarber, Zwetschgen: Sie alle rundet Kaiser-Natron® im Geschmack ab, reduziert die Säure und ersetzt so Zucker. ½ TL pro Kilo Obst genügt.`},{title:`Erfrischende Zitronenbrause`,body:`Zitronensaft (oder Essig) und Zucker in ein Glas kaltes Wasser einrühren. ½ TL Kaiser-Natron® hinzufügen wohl bekomms.`}]},"kaiser-natron-pulver-3490-g-eimer":{tagline:`Ein grünes Wunder, vielfach nützlich.`,lead:`Kaiser-Natron® hilft überraschend oft: beim Entsäuern von Speisen, zum Enthärten von Tee- und Kaffeewasser, um Gemüse zu säubern oder Backpulver zu ersetzen oder, oder, oder. Und dazu verblüffend vielseitig. Ein wahrer Alleskönner für Dein Wohlergehen, Pflege und Haushalt.`,applications:[{title:`Obst wird bekömmlicher`,body:`Beeren, Rhabarber, Zwetschgen: Sie alle rundet Kaiser-Natron® im Geschmack ab, reduziert die Säure und ersetzt so Zucker. ½ TL pro Kilo Obst genügt.`},{title:`Erfrischende Zitronenbrause`,body:`Zitronensaft (oder Essig) und Zucker in ein Glas kaltes Wasser einrühren. ½ TL Kaiser-Natron® hinzufügen wohl bekomms.`}]},"kaiser-natron-tabletten-100-g-dose":{tagline:`Ein echter Geheimtipp mit vielen Anwendungsmöglichkeiten.`,lead:`Kaiser-Natron®. Das unverfälschte Natriumhydrogencarbonat neutralisiert und bindet alle Säuren. In praktischer Tablettenform und garantiert ohne Zusatzstoffe.`,applications:[{title:`Anwendung`,body:`12 Tabletten unzerkaut mit einem Glas Wasser einnehmen.`}]},"kaiser-natron-bad-500-g":{tagline:`Die besondere Wellness-Pause für zwischendurch.`,lead:`Mit seinem basischen pH-Wert von 8,5 unterstützt das Kaiser-Natron® die Haut beim Regenerieren des natürlichen Säureschutzmantels und macht sie zart und geschmeidig.`,applications:[{title:`Anwendung`,body:`Für ein Vollbad 45 Esslöffel Kaiser-Natron® Bad im Wasser auflösen: 37 °C sind optimal. Wir empfehlen bis zu 30 Minuten Entspannung für Haut und Seele.`}]},"kaiser-natron-fussbad-500-g":{tagline:`Das haben sich Deine Füße echt verdient.`,lead:`Dieses basische Fußbad vitalisiert müde Füße und sorgt für weiche Füße ohne Hornhaut. Der pH-Wert 8,5 unterstützt die Haut beim Regenerieren des natürlichen Säureschutzmantels. Reinigung, Pflege und Desodorierung in einem.`,applications:[{title:`Anwendung`,body:`Für ein Fußbad einen gehäuften Esslöffel Kaiser-Natron® Fußbad in 4 Liter Wasser auflösen. Optimal sind 3841 °C. Und dann 10 bis 20 Minuten genießen.`}]},"kaiser-natron-daunenwasch-250-ml":{tagline:`Zarte Daunen brauchen Schutz.`,lead:`Kaiser-Natron® Daunen-Wasch erhält die natürliche Spannung von Daunen und Federn, damit sie flauschig bleiben. Dafür sorgt die Extra-Portion an nachhaltigem Lanolin. Mit anhaltend frischem Duft.`,applications:[{title:`Anwendung`,body:`Bis zu 2,5 kg Daunenwäsche pro Waschmaschine im Schongang bei max. 30 °C waschen. Gut nachspülen, schwach schleudern. Gut trocknen, öfters ausschütteln. Nur vollständiges Trocknen verhindert Schimmelbildung.`},{title:`Ergiebigkeit`,body:`Diese 250 ml Kaiser-Natron® Daunen-Wasch reichen für ca. 4 Maschinen mit 2,5 kg leicht verschmutzter Daunenwäsche bei weichem oder mittelhartem Wasser.`}]},"kaiser-natron-sport-profi-250-ml":{lead:`Sport- und Funktionskleidung richtig sauber kriegen? Der Kaiser-Natron® Sport-Profi kriegt das hin. Er ist stark in drei Disziplinen: extra-hohe Waschkraft, spezielles Faser-Schutzsystem für High-Tech-Gewebe und starke Wirkung gegen alle Gerüche.`,applications:[{title:`Anwendung`,body:`Bis zu 2,5 kg Sport- und Funktionskleidung auf links drehen, Knöpfe und Reißverschlüsse schließen. Im Schongang bei max. 40 °C waschen. Funktionskleidung bei Bedarf nachimprägnieren. Bei Handwäsche reicht eine Verschlusskappe (30 ml) auf 10 l Wasser.`},{title:`Ergiebigkeit`,body:`Diese 250 ml Kaiser-Natron® Sport-Profi reichen für ca. 4 Maschinen mit 2,5 kg leicht verschmutzter Sport- und Funktionswäsche bei weichem oder mittelhartem Wasser.`},{title:`Dosierung`,body:`Wasserhärte „Weich + Mittel": leicht verschmutzt 60 ml, normal verschmutzt 75 ml. Wasserhärte „Hart": leicht verschmutzt 75 ml, normal verschmutzt 90 ml. Eine Verschlusskappe entspricht 30 ml.`}]},"kaiser-natron-spuelmittel-500-ml":{tagline:`Lust auf funkelnd sauberes Geschirr?`,lead:`Mit Kaiser-Natron® Spülmittel kein Problem sogar ohne scharfe Chemikalien im Wasser. Denn dieses Spülmittel wirkt rein basisch, was auch für die Haut einfach besser ist. Für die Nase kommt noch der fruchtige Duft nach Pampelmuse dazu.`,applications:[{title:`Dosierung`,body:`Sparsam in der Dosierung: schon 3 ml auf 5 l Wasser genügen bei normal verschmutztem Geschirr.`}]},"kaiser-natron-allzweck-reiniger-750-ml":{tagline:`Dem Schmutz keine Chance.`,lead:`Der Kaiser-Natron® Allzweckreiniger ist ein kraftvoller, sehr ergiebiger und umweltfreundlich-nachhaltiger Allzweckreiniger für die schonende Reinigung von Böden, Holz-, Küchen- und Badmöbeln sowie Kacheln und Sanitäreinrichtungen. Der temporäre Schmutzschild erleichtert die nächste Reinigung und der einzigartige frische Pampelmusenduft sorgt für angenehme Raumatmosphäre nach jeder Reinigung.`,applications:[{title:`Normale Verschmutzung`,body:`30 bis 50 ml auf 5 Liter Wasser.`},{title:`Schwere Verschmutzung`,body:`Unverdünnt anwenden und gründlich mit Wasser nachspülen.`}]},"kaiser-natron-allzweck-spray-500-ml":{tagline:`So geht sauberes Teamwork.`,lead:`Für streifenlosen Glanz auf allen glatten Oberflächen gehen hier das gute Kaiser-Natron® und das originale HOLSTE Wasch-Soda Hand in Hand. Zusammen sind sie besonders basisch und extra-wirksam.`,applications:[{title:`Anwendung`,body:`Düse drehen, bis das Sprühsymbol „ON" oben steht. Kaiser-Natron® Allzweckspray aufsprühen und mit einem trockenen Tuch sauber wischen. Im Zweifelsfall vorher an einer nicht sichtbaren Stelle testen.`}]}},at:{},en:{"kaiser-natron-pulver-50-g-beutel":{tagline:`A green wonder. Surprisingly versatile.`,lead:`Kaiser-Natron® steps in more often than you'd think: neutralising acids in food, softening tea and coffee water, cleaning vegetables, standing in for baking powder — and on, and on. Astoundingly versatile. A true all-rounder for your wellbeing, personal care and home.`,applications:[{title:`Easier-to-digest fruit`,body:`Berries, rhubarb, plums: Kaiser-Natron® rounds out their flavour, cuts the acidity and stands in for sugar. Half a teaspoon per kilo of fruit is enough.`},{title:`Refreshing lemon fizz`,body:`Stir lemon juice (or vinegar) and sugar into a glass of cold water. Add ½ tsp of Kaiser-Natron® — bottoms up.`}]},"kaiser-natron-pulver-250-g-grosspackung":{tagline:`A green wonder. Surprisingly versatile.`,lead:`Kaiser-Natron® steps in more often than you'd think: neutralising acids in food, softening tea and coffee water, cleaning vegetables, standing in for baking powder — and on, and on. Astoundingly versatile. A true all-rounder for your wellbeing, personal care and home.`,applications:[{title:`Easier-to-digest fruit`,body:`Berries, rhubarb, plums: Kaiser-Natron® rounds out their flavour, cuts the acidity and stands in for sugar. Half a teaspoon per kilo of fruit is enough.`},{title:`Refreshing lemon fizz`,body:`Stir lemon juice (or vinegar) and sugar into a glass of cold water. Add ½ tsp of Kaiser-Natron® — bottoms up.`}]},"kaiser-natron-pulver-3490-g-eimer":{tagline:`A green wonder. Surprisingly versatile.`,lead:`Kaiser-Natron® steps in more often than you'd think: neutralising acids in food, softening tea and coffee water, cleaning vegetables, standing in for baking powder — and on, and on. Astoundingly versatile. A true all-rounder for your wellbeing, personal care and home.`,applications:[{title:`Easier-to-digest fruit`,body:`Berries, rhubarb, plums: Kaiser-Natron® rounds out their flavour, cuts the acidity and stands in for sugar. Half a teaspoon per kilo of fruit is enough.`},{title:`Refreshing lemon fizz`,body:`Stir lemon juice (or vinegar) and sugar into a glass of cold water. Add ½ tsp of Kaiser-Natron® — bottoms up.`}]},"kaiser-natron-tabletten-100-g-dose":{tagline:`A genuine insider tip with many uses.`,lead:`Kaiser-Natron®. Pure sodium bicarbonate that neutralises and binds acids. In handy tablet form, guaranteed free of additives.`,applications:[{title:`How to use`,body:`Swallow 12 tablets whole with a glass of water.`}]},"kaiser-natron-bad-500-g":{tagline:`A wellness pause for whenever you need it.`,lead:`With its alkaline pH of 8.5, Kaiser-Natron® supports the skin in restoring its natural acid mantle, leaving it soft and supple.`,applications:[{title:`How to use`,body:`Dissolve 45 tablespoons of Kaiser-Natron® Bath in a full tub. 37 °C is the sweet spot. Soak for up to 30 minutes — for body and mind.`}]},"kaiser-natron-fussbad-500-g":{tagline:`Your feet have earned this.`,lead:`This alkaline foot bath revives tired feet and softens callused skin. The pH of 8.5 helps the skin restore its natural acid mantle. Cleansing, care and deodorising in one.`,applications:[{title:`How to use`,body:`Dissolve a heaped tablespoon of Kaiser-Natron® Foot Bath in 4 litres of water. 3841 °C is optimal. Then soak for 10 to 20 minutes.`}]},"kaiser-natron-daunenwasch-250-ml":{tagline:`Delicate down deserves protection.`,lead:`Kaiser-Natron® Down Wash preserves the natural loft of down and feathers so they stay fluffy. The added boost of sustainable lanolin does the work. With a long-lasting fresh scent.`,applications:[{title:`How to use`,body:`Wash up to 2.5 kg of down items per machine on the gentle cycle at max. 30 °C. Rinse well, low spin. Dry thoroughly, shake out often — only fully dry items prevent mould.`},{title:`Yield`,body:`These 250 ml of Kaiser-Natron® Down Wash are enough for around 4 machine loads of 2.5 kg of lightly soiled down laundry in soft to medium-hard water.`}]},"kaiser-natron-sport-profi-250-ml":{lead:`Getting sportswear and technical fabrics properly clean? Kaiser-Natron® Sport-Profi gets it done. It's strong in three areas: extra washing power, a dedicated fibre-protection system for high-tech fabrics, and powerful action against every kind of odour.`,applications:[{title:`How to use`,body:`Turn up to 2.5 kg of sportswear and technical garments inside out, fasten zips and buttons. Wash on the gentle cycle at max. 40 °C. Re-impregnate technical garments as needed. For handwash, one cap (30 ml) per 10 l of water is plenty.`},{title:`Yield`,body:`These 250 ml of Kaiser-Natron® Sport-Profi are enough for around 4 machine loads of 2.5 kg of lightly soiled sport and technical laundry in soft to medium-hard water.`},{title:`Dosing`,body:`Water hardness Soft + Medium: lightly soiled 60 ml, normally soiled 75 ml. Hard water: lightly soiled 75 ml, normally soiled 90 ml. One cap equals 30 ml.`}]},"kaiser-natron-spuelmittel-500-ml":{tagline:`Sparkling clean dishes — without harsh chemicals.`,lead:`Want sparkling clean dishes? Easy with Kaiser-Natron® Dish Soap — even without harsh chemicals in the water.`,descriptionLong:`This dish soap works on a purely alkaline basis, which is gentler on your skin too. And the fruity pomelo scent is a treat for the nose.`,applications:[{title:`Dosing`,body:`Use sparingly: just 3 ml in 5 litres of water is plenty for normally soiled dishes.`}]},"kaiser-natron-allzweck-reiniger-750-ml":{tagline:`No chance for dirt.`,lead:`The Kaiser-Natron® All-Purpose Cleaner is a powerful, very economical, environmentally sustainable cleaner for the gentle cleaning of floors, wood, kitchen and bathroom furniture, tiles and sanitary fixtures. The temporary dirt-shield makes the next clean easier, and the unique fresh pomelo scent leaves a pleasant atmosphere after every use.`,applications:[{title:`Normal soiling`,body:`30 to 50 ml per 5 litres of water.`},{title:`Heavy soiling`,body:`Apply undiluted and rinse thoroughly with water.`}]},"kaiser-natron-allzweck-spray-500-ml":{tagline:`Clean teamwork in action.`,lead:`For streak-free shine on every smooth surface, trusted Kaiser-Natron® and original HOLSTE Washing Soda team up here. Together they're especially alkaline and extra effective.`,applications:[{title:`How to use`,body:`Turn the nozzle until the spray symbol „ON" sits at the top. Spray on Kaiser-Natron® All-Purpose Spray and wipe clean with a dry cloth. If in doubt, test on an inconspicuous spot first.`}]}}},w=`de`;function T(e,t){let n=C[t]?t:w,r=C[w]?.[e]??null,i=C[n]?.[e]??null;return!r&&!i?null:{...r||{},...i||{}}}function fe(e){let{locale:t}=v();return f(()=>{let n=a(e)?e.value:typeof e==`function`?e():e;return n?T(n,t.value):null})}var pe={key:0,class:`min-h-[60vh] bg-cream`},me={class:`mx-auto w-full max-w-3xl px-6 py-24 text-center sm:px-8 md:py-32`},E={class:`font-display text-4xl font-normal text-ink md:text-5xl`},D={class:`mt-4 text-base leading-relaxed text-muted`},O={key:1},k={class:`bg-brand text-cream md:flex md:min-h-[calc(100svh-var(--nav-h))] md:max-h-[calc(100svh-var(--nav-h))] md:flex-col md:justify-center`},A={class:`mx-auto w-full max-w-6xl lg:max-w-7xl px-6 pt-8 pb-12 sm:px-8 md:py-6 lg:px-16 lg:py-8`},j={class:`mt-6 grid items-center gap-8 md:mt-6 md:grid-cols-2 md:gap-12 lg:gap-20`},M={class:`order-1 flex items-center justify-center md:order-none`},N=[`src`,`alt`],P={class:`order-2 flex flex-col justify-center`},F={class:`font-display text-4xl font-normal leading-tight text-cream md:text-5xl`},I={class:`block text-2xl text-cream/70 md:text-3xl`},L={key:0,class:`mt-5 font-display italic font-light text-xl text-cream md:text-2xl`},R={key:1,class:`mt-4 text-base leading-relaxed text-cream/85`},z={key:2,class:`mt-6 flex flex-wrap gap-2`},he={class:`inline-flex items-center rounded-pill border border-cream-line bg-cream-wash px-3 py-1 text-[11px] font-bold uppercase tracking-eyebrow text-cream`},ge={class:`mt-8 flex flex-col gap-4 rounded-md border border-cream-line bg-cream-wash p-5 sm:flex-row sm:items-center sm:gap-5`},_e={class:`font-display text-3xl font-normal text-cream`},ve={class:`flex items-center gap-3 sm:ml-auto`},ye={class:`bg-paper`},be={class:`mx-auto w-full max-w-3xl px-6 py-16 text-center md:py-24 lg:px-0`},xe={class:`text-sm uppercase tracking-label text-brand-soft`},Se={class:`mt-5 font-display text-2xl leading-relaxed text-ink md:text-3xl`},Ce={class:`bg-cream`},we={class:`mx-auto w-full max-w-6xl px-6 py-16 sm:px-8 md:py-24 lg:px-16`},Te={class:`max-w-2xl`},Ee={class:`text-sm uppercase tracking-label text-brand-soft`},De={class:`mt-3 font-display text-3xl font-normal leading-tight text-ink md:text-4xl`},Oe={class:`mt-10 grid gap-5 sm:grid-cols-2 md:mt-14 lg:grid-cols-3`},ke={class:`inline-flex h-9 w-9 items-center justify-center rounded-full bg-brand/10 font-display text-base text-brand`},Ae={key:0,class:`font-display text-xl font-normal leading-snug text-ink`},je={class:`bg-paper`},Me={class:`mx-auto w-full max-w-5xl px-6 py-16 sm:px-8 md:py-24 lg:px-12`},Ne={class:`grid gap-10 md:grid-cols-2 md:gap-14`},Pe={key:0},B={class:`text-sm uppercase tracking-label text-brand-soft`},Fe={class:`mt-3 font-display text-xl leading-relaxed text-ink md:text-2xl`},Ie={key:1},Le={class:`text-sm uppercase tracking-label text-brand-soft`},Re={class:`mt-3 text-base leading-relaxed text-ink/80`},ze={class:`bg-cream`},Be={class:`mx-auto w-full max-w-3xl px-6 py-16 sm:px-8 md:py-24`},Ve={class:`text-sm uppercase tracking-label text-brand-soft`},He={class:`mt-8 flex flex-col gap-3`},Ue={class:`group rounded-md border border-line bg-paper p-5 transition-colors open:border-brand-soft`},We={class:`flex cursor-pointer list-none items-center justify-between gap-4 font-display text-lg leading-snug text-ink`},Ge={class:`mt-3 text-sm leading-relaxed text-ink/80`},Ke={class:`bg-paper`},qe={class:`mx-auto w-full max-w-6xl px-6 py-16 sm:px-8 md:py-24 lg:px-16`},Je={class:`max-w-2xl`},Ye={class:`text-sm uppercase tracking-label text-brand-soft`},Xe={class:`mt-3 font-display text-3xl font-normal leading-tight text-ink md:text-4xl`},Ze={class:`mt-10 grid gap-6 sm:grid-cols-2 md:mt-12 lg:grid-cols-3`},V={__name:`ProductPage`,setup(a){let{t:C}=v(),w=oe(),T=ne(),V=re(),H=t(!1),U=t(1),W=f(()=>String(T.params.slug||``)),G=f(()=>y.find(e=>e.id===W.value)||null),K=fe(W);e(W,()=>{U.value=1,typeof window<`u`&&window.scrollTo({top:0,behavior:`instant`})});let q=t(null);o(()=>{let e=typeof window<`u`?window.history.state?.back:null;q.value=typeof e==`string`?e:null});let Qe=f(()=>{let e=q.value;return e?e===`/`||e.startsWith(`/#`)?`product.backHome`:e===`/shop`||e.startsWith(`/shop?`)||e.startsWith(`/shop#`)?`product.back`:`product.backGeneric`:`product.back`});function $e(){q.value?V.back():V.push(`/shop`)}let et=[{key:`nav.shop`,href:`/shop`},{key:`nav.bundles`,href:`/#bundles`},{key:`nav.about`,href:`/#about`},{key:`nav.kaiserhacks`,href:`/kaiserhacks`}],tt=[],nt=f(()=>{let e=G.value;return e?`${e.price.toFixed(2).replace(`.`,`,`)}`:``}),J=f(()=>G.value?.properties||[]),Y=f(()=>{let e=G.value;return e?y.filter(t=>t.id!==e.id&&t.category===e.category).slice(0,3):[]});async function rt(){let e=G.value;!e||!e.inStock||(await b(e.id,U.value),H.value=!0)}async function X(e){await b(e.id,1),H.value=!0}async function it({productId:e,quantity:t}){await ae(e,t)}async function at(e){await ie(e)}function ot(){H.value=!1,V.push(`/checkout`)}let Z=t(null),Q=null;function $(){let e=Z.value,t=e&&(e.$el||e);if(!t||typeof window>`u`)return;let n=Math.round(t.getBoundingClientRect().height);document.documentElement.style.setProperty(`--nav-h`,`${n}px`)}return o(()=>{if(se(),$(),typeof ResizeObserver<`u`&&Z.value){let e=Z.value.$el||Z.value;Q=new ResizeObserver($),Q.observe(e)}window.addEventListener(`resize`,$)}),te(()=>{Q&&Q.disconnect(),typeof window<`u`&&window.removeEventListener(`resize`,$)}),(e,t)=>{let a=r(`RouterLink`);return n(),g(m,null,[d(ce,{ref_key:`navRef`,ref:Z,variant:`brand`,layout:`standard`,items:et,"secondary-items":tt,"cart-count":i(w).count,products:i(y),onCart:t[0]||=e=>H.value=!0,onSearch:X},null,8,[`cart-count`,`products`]),G.value?(n(),g(`main`,O,[h(`section`,k,[h(`div`,A,[h(`button`,{type:`button`,class:`inline-flex items-center gap-2 text-sm tracking-label text-cream/80 transition-colors hover:text-accent`,onClick:$e},[d(_,{name:`arrow-left`,size:14}),p(` `+c(i(C)(Qe.value)),1)]),h(`div`,j,[h(`div`,M,[h(`img`,{src:G.value.image,alt:G.value.title,class:`max-w-[72%] max-h-[44vh] md:max-h-[48svh] lg:max-h-[52svh] w-auto object-contain drop-shadow-[0_28px_48px_rgba(0,0,0,0.28)]`,loading:`eager`,decoding:`async`},null,8,N)]),h(`div`,P,[h(`h1`,F,[p(c(G.value.title)+` `,1),h(`span`,I,c(G.value.size),1)]),i(K)&&i(K).tagline?(n(),g(`p`,L,c(i(K).tagline),1)):u(``,!0),i(K)&&i(K).lead?(n(),g(`p`,R,c(i(K).lead),1)):u(``,!0),J.value.length?(n(),g(`ul`,z,[(n(!0),g(m,null,s(J.value,e=>(n(),g(`li`,{key:e},[h(`span`,he,c(i(C)(`product.prop.${e}`)),1)]))),128))])):u(``,!0),h(`div`,ge,[h(`span`,_e,c(nt.value),1),h(`div`,ve,[d(le,{modelValue:U.value,"onUpdate:modelValue":t[1]||=e=>U.value=e,min:1,max:99,"decrease-label":i(C)(`cart.qty.decrease`),"increase-label":i(C)(`cart.qty.increase`)},null,8,[`modelValue`,`decrease-label`,`increase-label`]),d(x,{variant:`accent`,size:`md`,disabled:!G.value.inStock,onClick:rt},{before:l(()=>[d(_,{name:`plus`,size:16})]),default:l(()=>[p(` `+c(G.value.inStock?i(C)(`product.addToCart`):i(C)(`product.outOfStock`)),1)]),_:1},8,[`disabled`])])])])])])]),i(K)&&i(K).descriptionLong?(n(),g(m,{key:0},[d(S,{from:`brand`,to:`paper`}),h(`section`,ye,[h(`div`,be,[h(`p`,xe,c(i(C)(`product.about.title`)),1),h(`p`,Se,c(i(K).descriptionLong),1)])])],64)):u(``,!0),i(K)&&i(K).applications&&i(K).applications.length?(n(),g(m,{key:1},[d(S,{from:i(K)&&i(K).descriptionLong?`paper`:`brand`,to:`cream`},null,8,[`from`]),h(`section`,Ce,[h(`div`,we,[h(`div`,Te,[h(`p`,Ee,c(i(C)(`product.applications.title`)),1),h(`p`,De,c(i(C)(`product.applications.sub`)),1)]),h(`ul`,Oe,[(n(!0),g(m,null,s(i(K).applications,(e,t)=>(n(),g(`li`,{key:t,class:`flex flex-col gap-3 rounded-md border border-line bg-paper p-6`},[h(`span`,ke,c(String(t+1).padStart(2,`0`)),1),e.title?(n(),g(`h3`,Ae,c(e.title),1)):u(``,!0),e.body?(n(),g(`p`,{key:1,class:ee([`leading-relaxed text-ink/80`,e.title?`text-sm`:`text-base`])},c(e.body),3)):u(``,!0)]))),128))])])])],64)):u(``,!0),i(K)&&(i(K).ingredients||i(K).warnings)?(n(),g(m,{key:2},[d(S,{from:`cream`,to:`paper`}),h(`section`,je,[h(`div`,Me,[h(`div`,Ne,[i(K).ingredients?(n(),g(`div`,Pe,[h(`p`,B,c(i(C)(`product.ingredients.title`)),1),h(`p`,Fe,c(i(K).ingredients),1)])):u(``,!0),i(K).warnings?(n(),g(`div`,Ie,[h(`p`,Le,c(i(C)(`product.warnings.title`)),1),h(`p`,Re,c(i(K).warnings),1)])):u(``,!0)])])])],64)):u(``,!0),i(K)&&i(K).faq&&i(K).faq.length?(n(),g(m,{key:3},[d(S,{from:`paper`,to:`cream`}),h(`section`,ze,[h(`div`,Be,[h(`p`,Ve,c(i(C)(`product.faq.title`)),1),h(`ul`,He,[(n(!0),g(m,null,s(i(K).faq,(e,t)=>(n(),g(`li`,{key:t},[h(`details`,Ue,[h(`summary`,We,[h(`span`,null,c(e.q),1),d(_,{name:`chevron-down`,size:18,class:`shrink-0 text-brand-soft transition-transform duration-base ease-out group-open:rotate-180`})]),h(`p`,Ge,c(e.a),1)])]))),128))])])])],64)):u(``,!0),Y.value.length?(n(),g(m,{key:4},[d(S,{from:i(K)&&i(K).faq&&i(K).faq.length?`cream`:`paper`,to:`paper`},null,8,[`from`]),h(`section`,Ke,[h(`div`,qe,[h(`div`,Je,[h(`p`,Ye,c(i(C)(`product.related.title`)),1),h(`p`,Xe,c(i(C)(`product.related.sub`)),1)]),h(`ul`,Ze,[(n(!0),g(m,null,s(Y.value,e=>(n(),g(`li`,{key:e.id},[d(de,{title:e.title,size:e.size,price:e.price,image:e.image,"image-alt":e.title,"in-stock":e.inStock,href:e.href,tone:`cream`,onAdd:t=>X(e)},null,8,[`title`,`size`,`price`,`image`,`image-alt`,`in-stock`,`href`,`onAdd`])]))),128))])])])],64)):u(``,!0)])):(n(),g(`main`,pe,[h(`div`,me,[h(`p`,E,c(i(C)(`product.notFound.title`)),1),h(`p`,D,c(i(C)(`product.notFound.sub`)),1),d(a,{to:`/shop`,class:`mt-8 inline-flex`},{default:l(()=>[d(x,{variant:`primary`,size:`md`},{before:l(()=>[d(_,{name:`arrow-left`,size:16})]),default:l(()=>[p(` `+c(i(C)(`product.notFound.cta`)),1)]),_:1})]),_:1})])])),t[3]||=h(`div`,{"aria-hidden":`true`,class:`md:hidden`,style:{height:`calc(100px + env(safe-area-inset-bottom))`}},null,-1),d(ue,{modelValue:H.value,"onUpdate:modelValue":t[2]||=e=>H.value=e,items:i(w).items,subtotal:i(w).subtotal,count:i(w).count,onUpdateQuantity:it,onRemove:at,onCheckout:ot},null,8,[`modelValue`,`items`,`subtotal`,`count`])],64)}}};export{V as default};