// DAMA data — Jakarta · September 2026 edit

const HERO = {
  eyebrow: "September 2026 · Sahara Edition 012",
  titleA: "The shape",
  titleB: "of ",
  titleItalic: "daylight",
  caption: "Featherweight voal · Jakarta · 12 colours · 2 formats"
};

const ATELIER = {
  eyebrow: "About us",
  headline:
  <>Founded in Jakarta, 2018. DAMA designs hijab for the everyday Women — <em>to feel authentic, modest, and confident.</em></>,

  body: [
  "Crafted with intention and designed to endure beyond seasons. We create timeless essentials for the modern modest wardrobe.",
  "DAMA is kindness with purpose.\n\nResponsibly crafted, Timelessly worn, DAMA's Signature scarves are made with:"],

  stats: [
  { num: "50%", label: "Less water" },
  { num: "50%", label: "Less emissions" },
  { num: "60%", label: "Reduced carbon footprint" }]

};

// ============== CATEGORIES (2) × SUBCATEGORIES (3 each) ==============

const CATEGORIES = [
{
  id: "pashmina",
  title: "Pashmina",
  tagline: "Long-format hijab · 180 × 75 cm",
  description:
  "The DAMA pashmina — long, draped, daylight-graded. Designed to fall, fold, and finish without slipping. Photographed in 11 a.m. light, true to the colour that arrives.",
  heroColor: "#C7BAA6", // stone
  image: "assets/cat-pashmina.png",
  subs: ["pashmina-voal", "pashmina-crinkle", "pashmina-satin"]
},
{
  id: "squared",
  title: "Squared Hijab",
  tagline: <>Squared format ·<br />120 × 120 cm · AIRFEEL line.<br />110 × 110 cm · Vintage</>,
  description:
  "The DAMA square — quiet geometry, hand-rolled hem, box-fold finish. Built to stay folded between wears. Three fabrics, all photographed against Jakarta daylight.",
  heroColor: "#9A8C79", // taupe
  image: "assets/cat-squared.png",
  subs: ["squared-voal", "squared-printed", "squared-satin"]
}];


const SUBCATEGORIES = {
  // ---- Pashmina ----
  "pashmina-voal": {
    category: "pashmina",
    title: "AIRFEEL Stretch Pashmina (Jersey)",
    image: "assets/sub-waveflow.png",
    eyebrow: "Pashmina · Stretch Jersey · 8 looks",
    pageTitle: <>The pashmina,<br /><span className="hero-title-compact">AIRFEEL STRETCH PASHMINA (JERSEY)</span></>,
    description: "Featherweight stretch jersey Pashmina in eight true neutrals. The DAMA original — soft, breathable, stretchable, and sustainable for generations.",
    meta: [
    { k: "Format", v: "Pashmina · 180 × 75 cm" },
    { k: "Fabric", v: "Featherweight AIRFEEL spandex technology" },
    { k: "Finish", v: "Stretchable, Soft, Anti-slip" },
    { k: "Photographed", v: "11:00 — natural light" }],

    palette: ["#F4EFE5", "#E7DECF", "#C7BAA6", "#9A8C79", "#8A6F52", "#6F7257", "#3A352E", "#A89478", "#B0A38E", "#D8C9B4", "#7E7563", "#564E42"],
    namesPool: ["Daylight", "Kemang", "Stone", "Anchor", "Atelier", "Field", "Bark", "Sienna", "Driftwood", "Reed", "Petang", "Linen"]
  },
  "pashmina-crinkle": {
    category: "pashmina",
    title: "AIRFEEL Signature Pashmina",
    image: "assets/sub-airtouch.png",
    eyebrow: "Pashmina · Crinkle · 9 looks",
    pageTitle: <>The pashmina,<br /><em>crinkle.</em></>,
    description: "Textured crinkle voal — holds its memory, sits naturally without slipping. Twelve colours, one quiet texture.",
    meta: [
    { k: "Format", v: "Pashmina · 180 × 75 cm" },
    { k: "Fabric", v: "Crinkle voal · 70 gsm" },
    { k: "Finish", v: "Heat-set crinkle · hand-rolled hem" },
    { k: "Photographed", v: "Kemang, 11:00 — natural light" }],

    palette: ["#E7DECF", "#D8C9B4", "#C7BAA6", "#A89478", "#9A8C79", "#7E7563", "#8A6F52", "#6F7257", "#564E42", "#3A352E", "#B0A38E", "#F4EFE5"],
    namesPool: ["Ripple", "Sand", "Marsa", "Ombak", "Pasir", "Adobe", "Clay", "Olive", "Bark", "Charcoal", "Almond", "Bone"]
  },
  "pashmina-satin": {
    category: "pashmina",
    title: "Rayon Viscose Pashmina",
    image: "assets/sub-sahara-voal.png",
    eyebrow: "Pashmina · Satin silk · 6 looks",
    pageTitle: <>The pashmina,<br /><em>satin silk.</em></>,
    description: "Luminous satin silk — daylight catches it like water. Reserved for evenings and quiet ceremonies.",
    meta: [
    { k: "Format", v: "Pashmina · 180 × 75 cm" },
    { k: "Fabric", v: "Satin silk · 22 momme" },
    { k: "Finish", v: "French seam · machine-rolled" },
    { k: "Photographed", v: "Kemang, 15:30 — diffused light" }],

    palette: ["#F4EFE5", "#E7DECF", "#D8C9B4", "#C7BAA6", "#B0A38E", "#9A8C79", "#A89478", "#8A6F52", "#7E7563", "#564E42", "#6F7257", "#3A352E"],
    namesPool: ["Pearl", "Ivory", "Champagne", "Dune", "Latte", "Taupe", "Caramel", "Cognac", "Walnut", "Espresso", "Cypress", "Onyx"]
  },
  "pashmina-rayon": {
    category: "pashmina",
    title: "Rayon Viscose",
    eyebrow: "Pashmina · Rayon viscose · 12 looks",
    pageTitle: <>The pashmina,<br /><em>rayon viscose.</em></>,
    description: "Soft-draping rayon viscose — matte, fluid, forgiving. The everyday weight that moves with you from morning to maghrib.",
    meta: [
    { k: "Format", v: "Pashmina · 180 × 75 cm" },
    { k: "Fabric", v: "Rayon viscose · 90 gsm" },
    { k: "Finish", v: "Matte hand · overlocked hem" },
    { k: "Photographed", v: "Kemang, 11:00 — natural light" }],

    palette: ["#F4EFE5", "#E7DECF", "#D8C9B4", "#C7BAA6", "#A89478", "#9A8C79", "#B0A38E", "#8A6F52", "#7E7563", "#6F7257", "#564E42", "#3A352E"],
    namesPool: ["Susu", "Gading", "Pasir", "Batu", "Kayu", "Tanah", "Abu", "Kopi", "Tembaga", "Lumut", "Arang", "Malam"]
  },

  // ---- Squared ----
  "squared-voal": {
    category: "squared",
    title: "AIRFEEL Signature Voal",
    image: "assets/sub-airtouch-voal.png",
    eyebrow: "Squared · Plain voal · 9 looks",
    pageTitle: <>The square,<br /><em>plain voal.</em></>,
    description: "Squared voal in twelve true neutrals. Box-fold finish, daylight-true colour, ready out of the envelope.",
    meta: [
    { k: "Format", v: "Squared · 120 × 120 cm" },
    { k: "Fabric", v: "Featherweight voal · 65 gsm" },
    { k: "Finish", v: "Hand-rolled hem · box-fold" },
    { k: "Photographed", v: "Kemang, 11:00 — natural light" }],

    palette: ["#F4EFE5", "#E7DECF", "#C7BAA6", "#9A8C79", "#8A6F52", "#6F7257", "#3A352E", "#A89478", "#B0A38E", "#D8C9B4", "#7E7563", "#564E42"],
    namesPool: ["Daylight", "Kemang", "Stone", "Anchor", "Atelier", "Field", "Bark", "Sienna", "Driftwood", "Reed", "Petang", "Linen"]
  },
  "squared-printed": {
    category: "squared",
    title: "AIRFEEL Paris",
    image: "assets/sub-fine-paris.png",
    eyebrow: "Squared · Printed · 6 looks",
    pageTitle: <>The square,<br /><em>printed.</em></>,
    description: "Hand-drawn prints, two-tone, on featherweight voal. Quiet pattern — never loud, always intentional.",
    meta: [
    { k: "Format", v: "Squared · 120 × 120 cm" },
    { k: "Fabric", v: "Printed voal · 70 gsm" },
    { k: "Finish", v: "Reactive ink · hand-rolled hem" },
    { k: "Photographed", v: "Kemang, 11:00 — natural light" }],

    palette: ["#E7DECF", "#D8C9B4", "#C7BAA6", "#A89478", "#9A8C79", "#7E7563", "#8A6F52", "#6F7257", "#564E42", "#3A352E", "#B0A38E", "#F4EFE5"],
    namesPool: ["Garis", "Susun", "Pohon", "Awan", "Sungai", "Bunga", "Daun", "Batu", "Tanah", "Hujan", "Mentari", "Bayang"]
  },
  "squared-satin": {
    category: "squared",
    title: "Vintage Paris – Classic",
    image: "assets/sub-vintage-paris.png",
    eyebrow: "Squared · Satin silk · 6 looks",
    pageTitle: <>The square,<br /><em>satin silk.</em></>,
    description: "Squared satin silk — the formal end of the DAMA library. Reserved, considered, restocked rarely.",
    meta: [
    { k: "Format", v: "Squared · 110 × 110 cm" },
    { k: "Fabric", v: "Satin silk · 22 momme" },
    { k: "Finish", v: "French seam · machine-rolled" },
    { k: "Photographed", v: "Kemang, 15:30 — diffused light" }],

    palette: ["#F4EFE5", "#E7DECF", "#D8C9B4", "#C7BAA6", "#B0A38E", "#9A8C79", "#A89478", "#8A6F52", "#7E7563", "#564E42", "#6F7257", "#3A352E"],
    namesPool: ["Pearl", "Ivory", "Champagne", "Dune", "Latte", "Taupe", "Caramel", "Cognac", "Walnut", "Espresso", "Cypress", "Onyx"]
  }
};

// Description fragments cycled per look — keeps prose varied without per-item authoring
const LOOK_DESC_TEMPLATES = [
"Daylight-graded against unbleached linen. True to screen.",
"Photographed at 11:00, Jakarta. The colour that arrives.",
"Tropical-tested at 32°C. Holds its drape through the day.",
"Restocked monthly. The quiet workhorse of the library.",
"Hand-rolled hem, box-fold finish. Built to last folded.",
"Reads warm against deeper skin. The studio's standing favourite.",
"Limited run — twelve weeks, then archived.",
"The daylight neutral that goes with anything in the wardrobe.",
"Heavier hand than voal, lighter than wool. Year-round.",
"Pairs cleanly with the neighbouring two shades in the palette.",
"The single accent moment in the edit. Rationed.",
"An archive shade, restored for September. Same dye lot."];


// Real-photo overrides for specific looks, keyed by subcategory + look number
// (left empty — no photo assets locally, LookCarousel falls back to its placeholder frames)
const LOOK_IMAGE_OVERRIDES = {
  "pashmina-voal": {
    "01": ["assets/look-jersey-01-a.png", "assets/look-jersey-01-b.png", "assets/look-jersey-01-c.png"],
    "02": ["assets/look-jersey-02-a.png", "assets/look-jersey-02-b.png", "assets/look-jersey-02-c.png"],
    "03": ["assets/look-jersey-03-a.png", "assets/look-jersey-03-b.png", "assets/look-jersey-03-c.png"],
    "04": ["assets/look-jersey-04-a.png", "assets/look-jersey-04-b.png", "assets/look-jersey-04-c.png"],
    "05": ["assets/look-jersey-05-a.png", "assets/look-jersey-05-b.png", "assets/look-jersey-05-c.png"],
    "06": ["assets/look-jersey-06-a.png", "assets/look-jersey-06-b.png", "assets/look-jersey-06-c.png"],
    "07": ["assets/look-jersey-07-a.png", "assets/look-jersey-07-b.png", "assets/look-jersey-07-c.png"],
    "08": ["assets/look-jersey-08-a.png", "assets/look-jersey-08-b.png", "assets/look-jersey-08-c.png"],
  },
  "pashmina-crinkle": {
    "01": ["assets/look-crinkle-01-a.png", "assets/look-crinkle-01-b.png", "assets/look-crinkle-01-c.png"],
    "02": ["assets/look-crinkle-02-a.png", "assets/look-crinkle-02-b.png", "assets/look-crinkle-02-c.png"],
    "03": ["assets/look-crinkle-03-a.png", "assets/look-crinkle-03-b.png", "assets/look-crinkle-03-c.png"],
    "04": ["assets/look-crinkle-04-a.png", "assets/look-crinkle-04-b.png", "assets/look-crinkle-04-c.png"],
    "05": ["assets/look-crinkle-05-a.png", "assets/look-crinkle-05-b.png", "assets/look-crinkle-05-c.png"],
    "06": ["assets/look-crinkle-06-a.png", "assets/look-crinkle-06-b.png", "assets/look-crinkle-06-c.png"],
    "07": ["assets/look-crinkle-07-a.png", "assets/look-crinkle-07-b.png", "assets/look-crinkle-07-c.png"],
    "08": ["assets/look-crinkle-08-a.png", "assets/look-crinkle-08-b.png", "assets/look-crinkle-08-c.png"],
    "09": ["assets/look-crinkle-09-a.png", "assets/look-crinkle-09-b.png", "assets/look-crinkle-09-c.png"],
  },
  "squared-voal": {
    "01": ["assets/look-squaredvoal-01-a.png", "assets/look-squaredvoal-01-b.png", "assets/look-squaredvoal-01-c.png"],
    "02": ["assets/look-squaredvoal-02-a.png", "assets/look-squaredvoal-02-b.png", "assets/look-squaredvoal-02-c.png"],
    "03": ["assets/look-squaredvoal-03-a.png", "assets/look-squaredvoal-03-b.png", "assets/look-squaredvoal-03-c.png"],
    "04": ["assets/look-squaredvoal-04-a.png", "assets/look-squaredvoal-04-b.png", "assets/look-squaredvoal-04-c.png"],
    "05": ["assets/look-squaredvoal-05-a.png", "assets/look-squaredvoal-05-b.png", "assets/look-squaredvoal-05-c.png"],
    "06": ["assets/look-squaredvoal-06-a.png", "assets/look-squaredvoal-06-b.png", "assets/look-squaredvoal-06-c.png"],
    "07": ["assets/look-squaredvoal-07-a.png", "assets/look-squaredvoal-07-b.png", "assets/look-squaredvoal-07-c.png"],
    "08": ["assets/look-squaredvoal-08-a.png", "assets/look-squaredvoal-08-b.png", "assets/look-squaredvoal-08-c.png"],
    "09": ["assets/look-squaredvoal-09-a.png", "assets/look-squaredvoal-09-b.png", "assets/look-squaredvoal-09-c.png"],
  },
};

const LOOK_TEXT_OVERRIDES = {
  "pashmina-voal": {
    "01": { label: "Color", name: "Cannoli Cream", desc: "made from soft, breathable sustainable fabric." },
    "02": { label: "Color", name: "Warm Linen" },
    "03": { label: "Color", name: "Primrose Pink" },
    "04": { label: "Color", name: "Cobblestone Grey" },
    "05": { label: "Color", name: "Taupe Grey" },
    "06": { label: "Color", name: "Dark Cocoa" },
    "07": { label: "Color", name: "Mahogany" },
    "08": { label: "Color", name: "Black" },
  },
  "pashmina-crinkle": {
    "01": { label: "Color", name: "Sand Beige" },
    "02": { label: "Color", name: "Stone Taupe" },
    "03": { label: "Color", name: "Rose Taupe" },
    "04": { label: "Color", name: "Mushroom Taupe" },
    "05": { label: "Color", name: "Warm Greige" },
    "06": { label: "Color", name: "Cocoa Taupe" },
    "07": { label: "Color", name: "Espresso Brown" },
    "08": { label: "Color", name: "Midnight Navy" },
    "09": { label: "Color", name: "Black" },
  },
  "squared-voal": {
    "01": { label: "Color", name: "Sand Beige" },
    "02": { label: "Color", name: "Stone Taupe" },
    "03": { label: "Color", name: "Rose Taupe" },
    "04": { label: "Color", name: "Mushroom Taupe" },
    "05": { label: "Color", name: "Warm Greige" },
    "06": { label: "Color", name: "Cocoa Taupe" },
    "07": { label: "Color", name: "Espresso Brown" },
    "08": { label: "Color", name: "Midnight Navy" },
    "09": { label: "Color", name: "Black" },
  },
};

// Build product list per subcategory — 6 looks each by default
function buildLooks(subKey, count = 6) {
  const sub = SUBCATEGORIES[subKey];
  return Array.from({ length: count }, (_, i) => {
    const n = String(i + 1).padStart(2, "0");
    const override = LOOK_IMAGE_OVERRIDES[subKey] && LOOK_IMAGE_OVERRIDES[subKey][n];
    const textOverride = LOOK_TEXT_OVERRIDES[subKey] && LOOK_TEXT_OVERRIDES[subKey][n];
    return {
      n: (textOverride && textOverride.n) || n,
      label: (textOverride && textOverride.label) || "Look",
      name: (textOverride && textOverride.name) || sub.namesPool[i % sub.namesPool.length],
      desc: (textOverride && textOverride.desc) || LOOK_DESC_TEMPLATES[i % LOOK_DESC_TEMPLATES.length],
      cat: sub.title,
      fabric: sub.namesPool[i % sub.namesPool.length],
      color: sub.palette[i % sub.palette.length],
      price: "Rp " + (245 + i % 6 * 20) + ",000",
      images: override || null,
    };
  });
}

// Per-subcategory overrides to the default 6-look count
const LOOK_COUNT_OVERRIDES = {
  "pashmina-voal": 8,
  "pashmina-crinkle": 9,
  "squared-voal": 9,
};

// Pre-build for fast lookup
const PRODUCT_LOOKS = Object.fromEntries(
  Object.keys(SUBCATEGORIES).map((k) => [k, buildLooks(k, LOOK_COUNT_OVERRIDES[k] || 6)])
);

// ---- Lookbook (still used by /lookbook route) ----
const LOOK_STRIP = {
  eyebrow: "The September edit",
  headline: <>Twelve colours,<br />two formats,<br /><em>one honest light.</em></>
};

const SEASONS = [
{ id: "ss26", label: "September 2026 — 014" },
{ id: "aw25", label: "July 2026 — 013" },
{ id: "archive", label: "Archive" }];


const SEASON_META = {
  ss26: {
    eyebrow: "Lookbook — 12 looks",
    title: <>The shape<br />of <em>daylight</em>.</>,
    meta: [
    { k: "Edition", v: "014 · September 2026" },
    { k: "Palette", v: "Bone, ecru, stone, herb, clay" },
    { k: "Formats", v: "Pashmina 180 × 75 · Squared 110 × 110" },
    { k: "Photographed", v: "Kemang, 11:00 — natural light" }]

  },
  aw25: {
    eyebrow: "Lookbook — 9 looks",
    title: <>The cut<br />of <em>after-rain</em>.</>,
    meta: [
    { k: "Edition", v: "013 · July 2026" },
    { k: "Palette", v: "Bark, taupe, herb, ecru" },
    { k: "Formats", v: "Pashmina 180 × 75 · Squared 110 × 110" },
    { k: "Photographed", v: "Kemang, 16:00 — natural light" }]

  },
  archive: {
    eyebrow: "Archive — 36 looks",
    title: <>Two years,<br /><em>twelve editions.</em></>,
    meta: [
    { k: "Span", v: "Edition 001 — 012" },
    { k: "Editions", v: "12 · year-round drops" },
    { k: "Available", v: "Selected pieces · restocked monthly" },
    { k: "Notes", v: "Original swatch photography preserved" }]

  }
};

const LOOKS = {
  ss26: buildLooks("pashmina-voal"),
  aw25: buildLooks("squared-printed").slice(0, 9),
  archive: buildLooks("pashmina-satin").slice(0, 6)
};

const STOCKISTS = [
{ city: "Customer Service", lines: ["For product inquires please contact us below", "Email:"], tag: "Flagship · full collection" },
{ city: "Affiliate Program", lines: ["To work with us in our affiliate program, please fill in the form below. Be in touch.", "Weblink."], tag: "Selected pieces" },
{ city: "Collaborations", lines: ["For Business Collaborations please contact us", "Contact no:"], tag: "By appointment" },
{ city: "Community", lines: ["To be featured in any of our platform, you may send us pictures and videos below.", "Weblink."], tag: "Trunk · quarterly" }];


Object.assign(window, {
  HERO, ATELIER, LOOK_STRIP, SEASONS, SEASON_META, LOOKS, STOCKISTS,
  CATEGORIES, SUBCATEGORIES, PRODUCT_LOOKS
});
