// data.jsx — placeholder content for SajjadDesigns portfolio
// Exported to window for use across babel script scopes.

const ACCENTS = { red: '#ffffff', blue: '#ffffff', orange: '#ffffff' };

const PROJECTS = [
  { n: '01', slot: 'sadia', client: 'Sadia × NBA · Abu Dhabi Games 2025', tagline: 'A game-changing FMCG activation for the NBA Abu Dhabi Games 2025 — packaging, posters and an in-store experience.', title: 'Sadia × NBA', sub: 'Abu Dhabi Games 2025', cat: 'Campaign · Packaging', year: '2025', accent: 'red',
    blurb: 'Sadia teamed up with the NBA for the Abu Dhabi Games 2025 — a bold, high-energy campaign that put frozen food courtside. The system spans co-branded tub packaging, a poster series fusing Arabic and Latin lettering with flying product, and a playable in-store activation booth.',
    cover: 'assets/sadia/tub-01.jpg', hero: 'assets/sadia/hero.jpg',
    gallery: ['assets/sadia/tub-02.jpg','assets/sadia/tub-03.jpg','assets/sadia/podium.jpg','assets/sadia/poster-01.jpg','assets/sadia/poster-02.jpg','assets/sadia/poster-03.jpg','assets/sadia/poster-04.jpg','assets/sadia/poster-05.jpg','assets/sadia/poster-06.jpg','assets/sadia/poster-07.jpg','assets/sadia/poster-08.jpg','assets/sadia/poster-09.jpg'] },
  { n: '02', slot: 'geely', client: 'Geely · New Monjaro', tagline: 'A cinematic key-visual campaign for the New Monjaro flagship SUV — "Experience Refined".', title: 'GEELY- EXPERIENCE REFINED', caseTitle: 'Experience Refined', sub: 'Geely — New Monjaro', cat: 'Campaign · Art Direction', year: '2025', accent: 'blue',
    blurb: 'A premium launch campaign for Geely\u2019s New Monjaro flagship SUV. Three hero key visuals carry one line — "Experience Refined" — across sculpted desert, motion-blur highway and golden-hour coastline, each lighting the car as the quiet centre of a refined world.',
    cover: 'assets/geely/cover.jpg', hero: 'assets/geely/01.jpg',
    gallery: ['assets/geely/02.jpg','assets/geely/03.jpg','assets/geely/04.jpg','assets/geely/05.jpg','assets/geely/06.jpg','assets/geely/07.jpg','assets/geely/08.jpg','assets/geely/09.jpg','assets/geely/10.jpg','assets/geely/11.jpg','assets/geely/social-post-01.jpg','assets/geely/social-post-02.jpg','assets/geely/social-story.jpg'] },
  { n: '04', slot: 'wurth', client: 'Würth · Industrial Fixings', tagline: 'A full campaign system for a Würth expansion-anchor launch — flyer, social, web banner and a motion key visual.', title: 'Würth — Industrial Armor', sub: 'Würth · Product Launch', cat: 'Campaign · Motion', year: '2025', accent: 'red',
    blurb: 'A product-launch campaign for Würth\u2019s precision expansion anchor. Built around the line "Industrial Armor", the system runs from a bold red print flyer to a moody hero product render, a social post and a wide web banner — anchored by a looping motion key visual.',
    cover: 'assets/wurth/cover.png', hero: 'assets/wurth/cover.png',
    gallery: ['assets/wurth/flyer.jpg','assets/wurth/sm-post.jpg','assets/wurth/web-banner.jpg'] },
  { n: '05', slot: 'happilo', client: 'Happilo · Healthy Bars', tagline: 'A vibrant key-visual series for Happilo\u2019s Healthy Dryfruit Bar range — one explosive system across every flavour.', title: 'Happilo', sub: 'Healthy Dryfruit Bars', cat: 'Campaign · Packaging', year: '2024', accent: 'blue',
    blurb: 'A high-energy campaign for Happilo\u2019s Healthy Dryfruit Bar range. Each flavour gets its own saturated world — pistachio blue, walnut yellow, rose-almond magenta, blueberry violet, choco-almond brown — with the bar bursting from a halo of its hero ingredient, unified by one "Flavours in a Combo" system.',
    cover: 'assets/happilo/cover.png', hero: 'assets/happilo/01.jpg',
    gallery: ['assets/happilo/02.jpg','assets/happilo/03.jpg','assets/happilo/04.jpg','assets/happilo/05.jpg'] },
  { n: '06', slot: 'etihad', client: 'Etihad Guest · Emirates Islamic × Visa', tagline: 'A social-media campaign for the Etihad Guest Visa card — a destination-led series turning travel dreams into a swipeable feed.', title: 'Etihad Guest', sub: 'Social Media Campaign', cat: 'Social · Campaign', year: '2024', accent: 'blue', feed: true,
    blurb: 'A rolling social-media campaign for the Etihad Guest credit card by Emirates Islamic & Visa. Each post pairs a polaroid of a dream destination — Bangkok, Greece, London — with the card fan and a single handwritten hook, building a consistent, collectible grid across the feed.',
    cover: 'assets/etihad/inside-cover.png', hero: 'assets/etihad/inside-cover.png', feedCover: 'assets/etihad/cover.png',
    gallery: ['assets/etihad/01.jpg','assets/etihad/02.jpg','assets/etihad/03.jpg','assets/etihad/04.jpg','assets/etihad/05.jpg','assets/etihad/06.jpg','assets/etihad/07.jpg','assets/etihad/08.jpg'] },
  { n: '07', slot: 'starbucks', client: 'Starbucks · Ramadan Campaign', tagline: 'A bilingual Ramadan campaign for Starbucks — “Keep the Gathering Flowing” — anchored by a custom Islamic pattern system.', title: 'Starbucks', sub: 'Ramadan Campaign', cat: 'Campaign · Pattern', year: '2024', accent: 'orange',
    blurb: 'As Ramadan begins, families and friends come together to share moments of reflection, kindness and joy. Through the long nights and early mornings, Starbucks brings warmth, comfort and a spark of togetherness with every cup. The campaign runs bilingually across Arabic and English and spans animation, an illustrated story strip, a limited-edition Ramadan cup design and special Ramadan gift cards — all unified by a bespoke geometric pattern language drawn from Islamic tilework.',
    elements: ['Animation', 'Illustrated Story / Comic Strip', 'Limited-Edition Ramadan Cup Design', 'Special Ramadan Gift Cards'],
    cover: 'assets/starbucks/cover.gif', hero: 'assets/starbucks/kv-eng.jpg',
    gallery: ['assets/starbucks/kv-eng.jpg','assets/starbucks/kv-ar.jpg'],
    patterns: ['assets/starbucks/pattern-01.jpg','assets/starbucks/pattern-02.jpg','assets/starbucks/pattern-03.jpg'] },
];

const REVIEWS = [
  { quote: 'Sajjad is the rare designer who can hold the whole system in his head and still obsess over a single kerning pair. Half my best work shipped because he raised the bar on it.',
    name: 'Jithesh Narayan',  role: 'Creative Director', org: 'Impact BBDO', accent: 'red' },
  { quote: 'He thinks in grids and feels in type. Hand him an impossible brief on Friday and by Monday there is a system so obvious you wonder why it didn’t already exist.',
    name: 'Bijoy', role: 'Art Director',      org: 'Impact BBDO',     accent: 'blue' },
  { quote: 'Calm under any deadline, generous with credit, ruthless about quality. Our juniors learned more in six months next to Sajjad than in two years anywhere else.',
    name: 'Hafil Muhammed', role: 'Creative Lead',      org: 'Thakkol Creatives', accent: 'orange' },
  { quote: 'The portfolio undersells him. What you don’t see is the hundred decisions he quietly killed to make the one that mattered land this hard.',
    name: 'Farhan',  role: 'Account Director',   org: 'Xad Advertisement',     accent: 'red' },
];

const STATS = [
  { k: '5+',  l: 'Years experience' },
  { k: '50+', l: 'Brands & clients' },
  { k: '4',   l: 'Languages' },
  { k: 'UAE', l: 'Dubai based' },
];

const TIMELINE = [
  { y: '2023 — now',  r: 'Sr. Creative Designer',  o: 'Impact BBDO · Dubai' },
  { y: '2019 — 23',   r: 'Jr. Graphic Designer',    o: 'Thakkol Creatives · Kozhikode' },
  { y: '2018',        r: 'Graphic Designer',        o: 'Xad Advertisement · Kozhikode' },
];

const TOOLS = ['Photoshop', 'Illustrator', 'InDesign', 'After Effects', 'Premiere Pro', 'Midjourney', 'Sora', 'Google Veo'];
const LANGUAGES = ['English', 'Hindi', 'Tamil', 'Malayalam'];
const CONTACT = {
  email: 'muhammedsajadbk@gmail.com',
  phone: '+971 5450 266 46',
  location: 'Dubai, United Arab Emirates',
  site: 'https://www.behance.net/muhammedsajjadbk',
  behance: 'https://www.behance.net/muhammedsajjadbk',
  linkedin: 'https://www.linkedin.com/in/muhammedsajjad/',
  resume: 'https://drive.google.com/file/d/19IlIp-duuBekMDZDnEV8ycjhu0HNys5C/view?usp=sharing',
};

const BRANDING = [
  { name: 'Cattle Hostel',   cat: 'Logo & Identity',      tone: '#3f6b3a', img: 'assets/branding/cattle-hostel.jpg' },
  { name: 'Triton Crescent', cat: 'Real Estate Branding', tone: '#b01f24', img: 'assets/branding/triton-crescent.jpg' },
  { name: 'Voltaic',         cat: 'Brand Identity',       tone: '#0b2a86', img: 'assets/branding/voltaic.jpg' },
  { name: 'triarc',          cat: 'Architecture Branding',tone: '#1f8f9e', img: 'assets/branding/triarc.jpg' },
  { name: 'Tiffin Box',      cat: 'F&B Identity',         tone: '#1f4d40', img: 'assets/branding/tiffin-box.jpg' },
  { name: 'Arboosh',         cat: 'F&B Branding',         tone: '#0d3b2e', img: 'assets/branding/arboosh.jpg' },
  { name: 'Saroya',          cat: 'Fashion Branding',     tone: '#0e1d42', img: 'assets/branding/saroya.jpg' },
  { name: 'RK Hospitality',  cat: 'Corporate Identity',   tone: '#0f4334', img: 'assets/branding/rk-hospitality.jpg' },
  { name: 'The Cheese Mill', cat: 'F&B Branding',         tone: '#e8531f', img: 'assets/branding/cheese-mill.jpg' },
  { name: 'Leggett',         cat: 'Property Branding',    tone: '#c0161c', img: 'assets/branding/leggett.jpg' },
];

// accent resolver — 'multi' keeps each project's own accent; otherwise lock to one.
window.__accentMode = 'multi';
// auto-number projects by position so the index stays clean
PROJECTS.forEach((p, i) => { p.n = String(i + 1).padStart(2, '0'); });
function acColor(name) {
  const m = window.__accentMode;
  return (m && m !== 'multi') ? ACCENTS[m] : ACCENTS[name];
}

// Media — render a real <img> when src is present, else a fillable drop-slot.
function Media({ src, id, ph, alt, style }) {
  if (src) return <img src={src} alt={alt || ph || ''} loading="lazy" style={{ width: '100%', height: '100%', objectFit: 'cover', display: 'block', ...style }} />;
  return <image-slot id={id} shape="rect" placeholder={ph} style={{ width: '100%', height: '100%', ...style }}></image-slot>;
}
window.Media = Media;

Object.assign(window, { ACCENTS, PROJECTS, BRANDING, REVIEWS, STATS, TIMELINE, TOOLS, LANGUAGES, CONTACT, acColor });
