/* Juzdan case study — Akbank digital wallet.
   Same editorial template as the Alternatifbank / Stablex V2 cases (narrow
   text column, pill section markers, numbered decision tracks, summary card
   up top, "Behind the work" credits close). Signature color matches Morpara
   on purpose (same palette, per request) — JZ-prefixed locals keep it
   collision-free from case-morpara.jsx's own MP-prefixed globals.
   No real screenshots exist yet — every [SCREEN: ...] slot from the content
   brief is a labeled placeholder panel. Several sections in the source brief
   were marked as draft placeholders (3 decisions, first-payment challenge
   framing, a research aside) — those are used here as the current best copy,
   ready to swap once real decisions/research land. */

const JZ_DARK = "#2B1243";      // signature surface — hero, impact, footer, nav dock (same as Morpara)
const JZ_HEAD = "#1D0C2E";      // heading color on light backgrounds
const JZ_ACCENT = "#C9A6F2";    // bright accent — colored H1 clause, footer "together" (Morpara's highlight)
const JZ_TINT = "rgba(43,18,67,.05)";   // light tint bg for cards (Morpara's tint)
const JZ_ACTIVE = "#4A2A6B";    // active nav-dock pill (Morpara's)
const JZ_LOGO_SRC =
  (typeof window !== "undefined" && window.__resources && window.__resources.juzdanLogo) ||
  "assets/juzdan-logo.png";
const JZ_FIGMA_URL = "https://www.figma.com/design/v1xBpG2l6sj4ffKrVPH5ha/Juzdan-Website---Tuna?node-id=886-80374&t=Ra7HyhhjzB2cjs1f-1";
const JZ_PROTO_URL = "https://www.figma.com/proto/v1xBpG2l6sj4ffKrVPH5ha/Juzdan-Website---Tuna?node-id=414-11550&p=f&viewport=267%2C314%2C0.14&t=WSnMPCHZLdD7Xdfm-1&scaling=scale-down&content-scaling=fixed&starting-point-node-id=414%3A11550&page-id=414%3A11549";
const JZ_PROTO_MOBILE_URL = "https://www.figma.com/proto/v1xBpG2l6sj4ffKrVPH5ha/Juzdan-Website---Tuna?node-id=514-16605&p=f&viewport=609%2C-375%2C0.79&t=b0qDto1GZj3KgK9X-1&scaling=scale-down&content-scaling=fixed&starting-point-node-id=514%3A16605&page-id=414%3A11548";
const JZ_SHOT_OLD_HOME = "assets/juzdan-old-homepage.png";
const JZ_SHOT_NEW_HOME = "assets/juzdan-new-homepage.png";
const JZ_SHOT_CAMPAIGNS = "assets/juzdan-campaigns.png";
const JZ_SHOT_JOIN_CTA = "assets/juzdan-join-cta.png";
const JZ_SHOT_COMPONENTS = "assets/juzdan-component-library.png";
const JZ_HERO_VIDEO_DESKTOP = "assets/juzdan-hero-desktop.mp4";
const JZ_HERO_VIDEO_MOBILE = "assets/juzdan-hero-mobile.mp4";

/* ---------- local building blocks (JZ-prefixed to stay collision-free) ---------- */

function JZPill({ children }) {
  return (
    <span className="inline-flex items-center whitespace-nowrap rounded-full border px-3.5 py-1.5 text-[14px] uppercase tracking-[0.18em]"
          style={{ borderColor: "rgba(15,26,22,.25)", color: "rgba(15,26,22,.6)" }}>
      {children}
    </span>
  );
}

function JZSectionNav() {
  const items = [
    ["jz-problem", "Problem"], ["jz-approach", "Approach"], ["jz-solution", "Solution"],
    ["jz-system", "Final design"], ["jz-impact", "Impact"],
  ];
  const [active, setActive] = React.useState("jz-problem");
  const [shown, setShown] = React.useState(false);
  const [navUp, setNavUp] = React.useState(false);
  const lastYRef = React.useRef(0);
  React.useEffect(() => {
    const pick = () => {
      const mid = window.scrollY + window.innerHeight * 0.5;
      let current = items[0][0];
      for (const [id] of items) {
        const el = document.getElementById(id);
        if (el && el.getBoundingClientRect().top + window.scrollY <= mid) current = id;
      }
      setActive(current);
      const y = window.scrollY;
      setShown(y > 40);
      if (y < lastYRef.current - 2) setNavUp(true);
      else if (y > lastYRef.current + 2 || y <= 2) setNavUp(false);
      lastYRef.current = y;
    };
    pick();
    window.addEventListener("scroll", pick, { passive: true });
    window.addEventListener("resize", pick);
    return () => { window.removeEventListener("scroll", pick); window.removeEventListener("resize", pick); };
  }, []);
  const go = (e, id) => {
    e.preventDefault();
    const el = document.getElementById(id);
    if (el) window.scrollTo({ top: el.getBoundingClientRect().top + window.scrollY - 80, behavior: "smooth" });
  };
  return (
    <React.Fragment>
    <nav className="md:hidden fixed left-0 right-0 z-40" style={{ top: navUp ? 64 : 0, opacity: shown ? 1 : 0, transition: "opacity .4s ease, top .3s ease", pointerEvents: shown ? "auto" : "none" }}>
      <div className="flex items-center gap-1 overflow-x-auto px-3 py-2" style={{ background: JZ_DARK, borderBottom: "1px solid rgba(255,255,255,0.12)", WebkitOverflowScrolling: "touch" }}>
        {items.map(([id, label]) => {
          const on = active === id;
          return (
            <a key={id} href={`#${id}`} onClick={(e) => go(e, id)}
               className="shrink-0 text-[11px] uppercase tracking-[0.12em] rounded-full px-3.5 py-1.5 whitespace-nowrap"
               style={on ? { background: JZ_ACTIVE, color: "#ffffff", fontWeight: 600 } : { color: "rgba(255,255,255,0.55)" }}>
              {label}
            </a>
          );
        })}
      </div>
    </nav>
    <nav className="hidden md:block fixed left-1/2 z-40"
         style={{
           bottom: 24,
           transform: `translateX(-50%) translateY(${shown ? 0 : 28}px)`,
           opacity: shown ? 1 : 0,
           pointerEvents: shown ? "auto" : "none",
           transition: "opacity .5s cubic-bezier(0.16,1,0.3,1), transform .5s cubic-bezier(0.16,1,0.3,1)",
         }}>
      <div className="flex items-center gap-1 rounded-full px-2 py-2"
           style={{ background: JZ_DARK, border: "1px solid rgba(255,255,255,0.1)", backdropFilter: "blur(14px)", WebkitBackdropFilter: "blur(14px)", boxShadow: "0 16px 50px -18px rgba(0,0,0,0.9)" }}>
        {items.map(([id, label]) => {
          const on = active === id;
          return (
            <a key={id} href={`#${id}`} onClick={(e) => go(e, id)}
               className="text-[12px] uppercase tracking-[0.14em] rounded-full px-3.5 py-2 transition-all duration-300 whitespace-nowrap"
               style={on ? { background: JZ_ACTIVE, color: "#ffffff", fontWeight: 600 } : { color: "rgba(255,255,255,0.5)" }}>
              {label}
            </a>
          );
        })}
      </div>
    </nav>
    </React.Fragment>
  );
}

/* narrow editorial text column */
function JZCol({ children, className = "" }) {
  return <div className={`mx-auto px-6 max-w-[680px] ${className}`}>{children}</div>;
}

/* light striped placeholder for big panels — stands in for real screenshots */
function JZPlaceholder({ label, height = 360 }) {
  return (
    <div className="grid place-items-center"
         style={{ height, backgroundImage: "repeating-linear-gradient(45deg, rgba(15,26,22,.05) 0 10px, transparent 10px 20px)" }}>
      <span className="text-[12px] uppercase tracking-[0.2em] px-4 text-center" style={{ color: "rgba(15,26,22,.5)" }}>{label}</span>
    </div>
  );
}

/* wide tinted panel that breaks out of the text column */
function JZPanel({ children, caption, tint = "#F4F4F5", className = "", maxW = "1080px", border }) {
  return (
    <figure className={`mx-auto px-6 ${className}`} style={{ maxWidth: maxW }}>
      <div className="rounded-2xl overflow-hidden" style={{ background: tint, border: border || undefined }}>
        {children}
      </div>
      {caption && <figcaption className="mt-3 text-[14px]" style={{ color: "rgba(15,26,22,.5)" }}>{caption}</figcaption>}
    </figure>
  );
}

/* numbered decision block — highlight line is optional (not every decision has one) */
function JZDecision({ n, title, body, note, panel, caption, tint, panelMaxW }) {
  return (
    <div className="mt-24 first:mt-16">
      <JZCol>
        <Reveal>
          <h3 className="font-display font-medium text-[24px] md:text-[30px] leading-[1.15] tracking-tight" style={{ color: "#0f1a16" }}>
            <span style={{ color: JZ_DARK }}>{n}.</span> <span style={{ color: JZ_DARK }}>{title}</span>
          </h3>
        </Reveal>
        <Reveal delay={70}>
          <p className="mt-4 text-[20px] leading-[1.7]" style={{ color: "rgba(15,26,22,.78)" }}>{body}</p>
        </Reveal>
        {note && (
          <Reveal delay={160}>
            <p className="mt-4 text-[16px] leading-[1.6] rounded-lg px-4 py-3 inline-block" style={{ background: "rgba(21,217,151,.1)", color: "rgba(15,26,22,.7)" }}>
              {note}
            </p>
          </Reveal>
        )}
      </JZCol>
      <Reveal delay={120}>
        <JZPanel caption={caption} tint={tint} maxW={panelMaxW || "1080px"} className="mt-10">
          {panel}
        </JZPanel>
      </Reveal>
    </div>
  );
}

/* ---------- the page ---------- */

function JuzdanCase({ navigate }) {
  return (
    <div className="relative" style={{ background: "#FCFCFC", color: "#0f1a16" }}>
      <JZSectionNav />

      {/* HERO */}
      <header className="relative overflow-hidden" style={{ background: JZ_DARK, color: "#fff" }}>
        <div className="mx-auto max-w-[1080px] px-6 pt-36 pb-36">
          <Reveal>
            <div className="text-[14px] uppercase tracking-[0.22em] text-white/45">Juzdan — Digital Wallet (Akbank)</div>
          </Reveal>
          <div className="mt-6 flex items-start justify-between gap-10">
            <div>
              <Reveal delay={40}>
                <a href={JZ_FIGMA_URL} target="_blank" rel="noopener noreferrer" aria-label="View Juzdan in Figma" className="md:hidden mb-5 inline-block">
                  <img src={JZ_LOGO_SRC} alt="Juzdan logo" draggable="false" className="block select-none rounded-2xl" style={{ width: 72, height: 72 }} />
                </a>
              </Reveal>
              <Reveal delay={80}>
                <h1 className="font-display font-medium text-[40px] md:text-[58px] leading-[1.06] tracking-[-0.02em] max-w-[18ch]" style={{ color: "#ffffff" }}>
                  A wallet people actually reach for. <span style={{ color: JZ_ACCENT }}>Pay, send, done.</span>
                </h1>
              </Reveal>
            </div>
            <Reveal delay={120}>
              <a href={JZ_FIGMA_URL} target="_blank" rel="noopener noreferrer" aria-label="View Juzdan in Figma" className="hidden md:block shrink-0 transition-transform hover:-translate-y-1">
                <img src={JZ_LOGO_SRC} alt="Juzdan logo" draggable="false"
                     className="block select-none rounded-2xl"
                     style={{ width: 160, height: 160, boxShadow: "0 30px 70px -30px rgba(0,0,0,.7)" }} />
              </a>
            </Reveal>
          </div>
        </div>
      </header>

      {/* SUMMARY */}
      <section id="jz-summary" className="pt-20 pb-24">
        <JZCol>
          <Reveal>
            <div className="rounded-2xl px-7 py-7 md:px-9 md:py-8" style={{ background: JZ_TINT }}>
              <div className="text-[14px] uppercase tracking-[0.2em]" style={{ color: "rgba(15,26,22,.5)" }}>Summary</div>
              <p className="mt-4 text-[20px] leading-[1.7]" style={{ color: "rgba(15,26,22,.85)" }}>
                Juzdan is a digital wallet backed by the biggest bank of Turkey (Akbank), built to pay, transfer,
                store cards, scan QR, and confirm, all in one place. I owned the <strong className="font-bold" style={{ color: "#0f1a16" }}>design end to end</strong>: I
                drew the <strong className="font-bold" style={{ color: "#0f1a16" }}>layout</strong>, designed
                the <strong className="font-bold" style={{ color: "#0f1a16" }}>UI components and microanimations</strong> myself,
                presented every stage to the brand.
              </p>
            </div>
          </Reveal>
        </JZCol>
        <Reveal delay={80}>
          <JZPanel className="mt-10" tint="#2B2B2B">
            <div className="flex flex-col sm:flex-row items-center justify-center gap-6 p-6 md:p-10">
              <div className="w-full sm:w-auto" style={{ maxWidth: 610, borderRadius: 16, border: `4px solid ${JZ_DARK}`, overflow: "hidden" }}>
                <video src={JZ_HERO_VIDEO_DESKTOP} autoPlay muted loop playsInline preload="auto" className="w-full h-auto block" />
              </div>
              <div className="w-full sm:w-auto" style={{ maxWidth: 220, borderRadius: 32, border: `4px solid ${JZ_DARK}`, overflow: "hidden" }}>
                <video src={JZ_HERO_VIDEO_MOBILE} autoPlay muted loop playsInline preload="auto" className="w-full h-auto block" />
              </div>
            </div>
          </JZPanel>
        </Reveal>
      </section>

      {/* PROBLEM */}
      <section id="jz-problem" className="pb-28">
        <JZCol>
          <Reveal><JZPill>The problem</JZPill></Reveal>
          <Reveal delay={70}>
            <h2 className="mt-6 font-display font-medium text-[28px] md:text-[36px] leading-[1.12] tracking-tight" style={{ color: JZ_HEAD }}>
              The product and its best reasons to join were buried.
            </h2>
          </Reveal>
          <Reveal delay={130}>
            <p className="mt-6 text-[20px] leading-[1.7]" style={{ color: "rgba(15,26,22,.78)" }}>
              Juzdan had a strong app and a constant stream of campaigns, but the website led with
              neither. Visitors could not quickly see the product in action or the rewards on offer, so
              the page gave them little reason to download or join. The result was weak customer
              acquisition from a site that should have been the product&apos;s strongest funnel into the
              wallet.
            </p>
          </Reveal>
        </JZCol>
        <Reveal delay={120}>
          <p className="mt-12 mb-3 mx-auto px-6 text-[14px]" style={{ maxWidth: "1080px", color: "rgba(15,26,22,.5)" }}>Old homepage</p>
          <JZPanel tint="#F4F4F5" border="1px solid rgba(15,26,22,.1)">
            <img src={JZ_SHOT_OLD_HOME} alt="Old Juzdan homepage, product and campaigns not surfaced" draggable="false" className="w-full h-auto block select-none" />
          </JZPanel>
        </Reveal>
      </section>

      {/* APPROACH */}
      <section id="jz-approach" className="py-24" style={{ background: "#F4F4F5" }}>
        <JZCol>
          <Reveal><JZPill>The approach</JZPill></Reveal>
          <Reveal delay={70}>
            <h2 className="mt-6 font-display font-medium text-[28px] md:text-[36px] leading-[1.12] tracking-tight" style={{ color: JZ_HEAD }}>
              Lead with the app, boost the campaigns, and let acquisition follow.
            </h2>
          </Reveal>
          <Reveal delay={130}>
            <p className="mt-6 text-[20px] leading-[1.7]" style={{ color: "rgba(15,26,22,.78)" }}>
              Instead of treating the homepage as a place to explain the wallet, I made it sell the two
              things that actually move people: the product itself and the rewards for using it. I put
              the app front and center, amplified the campaigns around it, and designed so joining became
              the natural next step rather than a separate ask. Get those first two right, and customer
              acquisition follows.
            </p>
          </Reveal>
        </JZCol>
      </section>

      {/* SOLUTION */}
      <section id="jz-solution" className="py-28">
        <JZCol>
          <Reveal><JZPill>The solution</JZPill></Reveal>
          <Reveal delay={70}>
            <h2 className="mt-6 font-display font-medium text-[28px] md:text-[36px] leading-[1.12] tracking-tight" style={{ color: JZ_HEAD }}>
              Three decisions turned attention into members.
            </h2>
          </Reveal>
        </JZCol>

        <JZDecision
          n="1" title="Lead with the app."
          body="I made the product the hero: a large, living mockup of the real app in the hero, paired with a persistent, prominent Download action, so the first thing a visitor registers is what Juzdan is and how to get it."
          tint="#FFFFFF"
          panel={<img src={JZ_SHOT_NEW_HOME} alt="App mockup in hero + Download CTA" draggable="false" className="w-full h-auto block select-none" />}
        />
        <JZDecision
          n="2" title="Boost the campaigns."
          body="I amplified the rewards around the product: a live count of active campaigns in the hero and a running campaign banner across the top, turning a vague promise into concrete, visible value."
          note="The hook: “64 active campaigns” makes the value impossible to scroll past."
          tint="#F4F4F5"
          panel={<img src={JZ_SHOT_CAMPAIGNS} alt="Active-campaign badge + top campaign banner" draggable="false" className="w-full h-auto block select-none" />}
        />
        <JZDecision
          n="3" title="Let customer acquisition follow."
          body="With the app and the offers doing the convincing, joining becomes the obvious payoff. I made “become a member” the single clearest action on the page, carrying cleanly from desktop to mobile, so acquisition is the result of the first two moves rather than a separate pitch."
          tint="#FFFFFF"
          panel={<img src={JZ_SHOT_JOIN_CTA} alt="“Juzdanlı Ol” join CTA, desktop + mobile" draggable="false" className="w-full h-auto block select-none" />}
        />
      </section>

      {/* DESIGN SYSTEM */}
      <section id="jz-system" className="py-28" style={{ background: "#F4F4F5" }}>
        <JZCol>
          <Reveal><JZPill>Final design</JZPill></Reveal>
          <Reveal delay={70}>
            <h2 className="mt-6 font-display font-medium text-[28px] md:text-[36px] leading-[1.12] tracking-tight" style={{ color: JZ_HEAD }}>
              The system behind every screen.
            </h2>
          </Reveal>
          <Reveal delay={130}>
            <p className="mt-6 text-[20px] leading-[1.7]" style={{ color: "rgba(15,26,22,.78)" }}>
              I designed the UI components and controls that power the whole app: navigation, payment and
              transfer modules, inputs, states and feedback, consistent across the product and aligned to
              the brand. Every screen was built from the same parts, so the app stays coherent and is
              ready to hand over and extend.
            </p>
          </Reveal>
          <Reveal delay={160}>
            <div className="mt-6 flex flex-wrap gap-2">
              {["Navigation", "Payment Module", "Transfer Module", "Inputs", "States", "Feedback"].map((m) => (
                <span key={m} className="inline-flex items-center whitespace-nowrap rounded-full px-3.5 py-1.5 text-[13px]"
                      style={{ background: "rgba(15,26,22,.05)", color: "rgba(15,26,22,.65)" }}>{m}</span>
              ))}
            </div>
          </Reveal>
        </JZCol>

        <Reveal delay={110}>
          <JZPanel className="mt-12" tint="#FFFFFF">
            <img src={JZ_SHOT_COMPONENTS} alt="Component and control library for the app" draggable="false" className="w-full h-auto block select-none" />
          </JZPanel>
        </Reveal>

        <JZCol className="mt-7">
          <Reveal delay={180}>
            <div className="mt-5 flex flex-wrap items-center gap-x-7 gap-y-2 text-[15px]">
              <a href={JZ_FIGMA_URL} target="_blank" rel="noopener noreferrer"
                 className="inline-block"
                 style={{ color: "#0E8C63", textDecoration: "underline", textUnderlineOffset: "3px", textDecorationColor: "rgba(14,140,99,.4)" }}>
                View in Figma →
              </a>
              <a href={JZ_PROTO_URL} target="_blank" rel="noopener noreferrer"
                 className="inline-block"
                 style={{ color: "#0E8C63", textDecoration: "underline", textUnderlineOffset: "3px", textDecorationColor: "rgba(14,140,99,.4)" }}>
                View prototype (Desktop) →
              </a>
              <a href={JZ_PROTO_MOBILE_URL} target="_blank" rel="noopener noreferrer"
                 className="inline-block"
                 style={{ color: "#0E8C63", textDecoration: "underline", textUnderlineOffset: "3px", textDecorationColor: "rgba(14,140,99,.4)" }}>
                View prototype (Mobile) →
              </a>
            </div>
          </Reveal>
        </JZCol>
      </section>

      {/* IMPACT */}
      <section id="jz-impact" className="py-28" style={{ background: JZ_DARK, color: "#fff" }}>
        <JZCol>
          <Reveal><span className="inline-flex items-center rounded-full border border-white/25 px-3.5 py-1.5 text-[14px] uppercase tracking-[0.18em] text-white/60">Impact</span></Reveal>
          <Reveal delay={70}>
            <p className="mt-6 text-[16px] leading-[1.6] text-white/50 max-w-[56ch]">
              Proposed targets based on the strategy above. The site hasn&apos;t launched yet, so these
              aren&apos;t measured numbers. They&apos;ll be replaced with real results once it&apos;s live.
            </p>
          </Reveal>

          <div className="mt-10 grid grid-cols-1 sm:grid-cols-3 gap-10">
            {[
              ["+40%", "App downloads", "Targeted lift in the share of visitors who go on to download the app. Leading with the product, front and center, is built to drive installs."],
              ["+50%", "Campaign engagement", "Targeted lift in the share of visitors who open at least one campaign. Surfacing the rewards in the hero turns a hidden draw into a visible one."],
              ["+30%", "New member acquisition", "Targeted lift in the share of visitors who become members (Juzdanlı Ol). With the app and the offers doing the convincing, joining follows."],
            ].map(([num, label, micro]) => (
              <Reveal key={label}>
                <div>
                  <div className="font-display font-normal text-[36px] md:text-[44px] leading-none tracking-tight" style={{ color: JZ_ACCENT }}>{num}</div>
                  <div className="mt-3 text-[16px] text-white/85">{label}</div>
                  {micro && <div className="mt-1.5 text-[14px] leading-[1.6] text-white/45">{micro}</div>}
                </div>
              </Reveal>
            ))}
          </div>
        </JZCol>
      </section>

      {/* BEHIND THE WORK */}
      <section className="pt-10 pb-24">
        <JZCol>
          <Reveal>
            <div className="rounded-2xl px-7 py-8 md:px-9" style={{ background: JZ_TINT }}>
              <div className="text-[14px] uppercase tracking-[0.2em]" style={{ color: "rgba(15,26,22,.5)" }}>Behind the work</div>
              <div className="mt-6 grid grid-cols-1 sm:grid-cols-2 gap-y-6 gap-x-6 text-[16px]">
                <div>
                  <div className="text-[14px] uppercase tracking-[0.14em]" style={{ color: JZ_DARK }}>Role</div>
                  <div className="mt-1.5" style={{ color: "rgba(15,26,22,.85)" }}>UX templates, Microanimation &amp; Interaction design, UI component &amp; design, brand presentations</div>
                </div>
                <div>
                  <div className="text-[14px] uppercase tracking-[0.14em]" style={{ color: JZ_DARK }}>Timeline</div>
                  <div className="mt-1.5" style={{ color: "rgba(15,26,22,.85)" }}>10 weeks (FE&amp;BE not included)</div>
                </div>
              </div>
            </div>
          </Reveal>
        </JZCol>
      </section>

      {/* FOOTER */}
      <section className="py-12" style={{ background: JZ_DARK, color: "#fff" }}>
        <Reveal>
          <div className="w-full px-6 md:px-10">
            <div className="grid grid-cols-2 gap-8 md:flex md:items-center md:justify-between md:gap-6">
              <button onClick={() => { navigate("case/alternatifbank"); window.scrollTo({ top: 0 }); }} className="text-left shrink-0 order-2 md:order-none">
                <div className="text-[12px] uppercase tracking-[0.18em] text-white/45">Previous project</div>
                <div className="mt-1.5 font-display text-[20px] md:text-[22px] text-white">Alternatif Bank</div>
              </button>
              <div className="flex flex-col items-center text-center gap-2 col-span-2 order-1 md:order-none flex-1">
                <h2 className="font-display font-normal text-[28px] md:text-[48px] leading-[1] tracking-tight">
                  Let's work <span style={{ color: JZ_ACCENT }}>together</span><span style={{ color: "rgba(255,255,255,.25)" }}>.</span>
                </h2>
                <a href="mailto:tunaaldemir@gmail.com" className="mt-3 inline-block font-display text-[15px] md:text-[18px] text-white/80 hover:text-white link-underline">
                  tunaaldemir@gmail.com
                </a>
                <a href={/iPhone|iPad|iPod|Android/i.test(navigator.userAgent) ? "tel:+31634483433" : "facetime:+31634483433"}
                   className="inline-block font-display text-[13px] md:text-[15px] text-white/45 hover:text-white/75">
                  +31 06 34 48 34 33
                </a>
                <div className="mt-3 flex items-center gap-3">
                  <a href="https://wa.me/905353130311" target="_blank" rel="noopener noreferrer" aria-label="WhatsApp" className="transition-transform hover:-translate-y-0.5">
                    <svg width="34" height="34" viewBox="0 0 34 34" fill="none" xmlns="http://www.w3.org/2000/svg">
                      <circle cx="17" cy="17" r="17" fill="#fff"/>
                      <g transform="translate(7 7) scale(0.833)">
                        <path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.149-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.885-9.885 9.885M20.52 3.449C18.24 1.245 15.24 0 12.045 0 5.463 0 .104 5.334.101 11.892c0 2.096.549 4.142 1.595 5.945L0 24l6.335-1.652a12.062 12.062 0 005.71 1.447h.005c6.585 0 11.946-5.335 11.949-11.893a11.821 11.821 0 00-3.484-8.45" fill={JZ_DARK}/>
                      </g>
                    </svg>
                  </a>
                  <a href="https://www.linkedin.com/in/tuna-aldemir/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn" className="transition-transform hover:-translate-y-0.5">
                    <svg width="34" height="34" viewBox="0 0 34 34" fill="none" xmlns="http://www.w3.org/2000/svg">
                      <circle cx="17" cy="17" r="17" fill="#fff"/>
                      <path d="M12.6 13.2a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm-1.27 1.15h2.53v8.15h-2.53v-8.15Zm4.12 0h2.42v1.11h.04c.34-.62 1.16-1.28 2.39-1.28 2.56 0 3.03 1.64 3.03 3.78v4.54h-2.53v-4.03c0-.96-.02-2.2-1.36-2.2-1.36 0-1.57 1.04-1.57 2.13v4.1h-2.53v-8.15Z" fill={JZ_DARK}/>
                    </svg>
                  </a>
                  <a href="assets/Tuna_Aldemir_CV.pdf" target="_blank" rel="noopener noreferrer" aria-label="View CV" className="transition-transform hover:-translate-y-0.5">
                    <span className="grid place-items-center size-[34px] rounded-full" style={{ background: "#fff", color: JZ_DARK }}>
                      <span className="font-display font-semibold text-[13px] tracking-tight">CV</span>
                    </span>
                  </a>
                </div>
              </div>
              <button onClick={() => { navigate("case/sabanci"); window.scrollTo({ top: 0 }); }} className="text-right shrink-0 order-3 md:order-none justify-self-end">
                <div className="text-[12px] uppercase tracking-[0.18em] text-white/45">Next project</div>
                <div className="mt-1.5 font-display text-[20px] md:text-[22px] text-white">Sabancı Üniversitesi</div>
              </button>
            </div>
          </div>
        </Reveal>
      </section>
    </div>
  );
}

window.JuzdanCase = JuzdanCase;
