<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>Pops Pens & More — Handcrafted Custom Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <style>
    *{margin:0;padding:0;box-sizing:border-box}
    :root{
      --primary:#6366f1;
      --primary2:#5855eb;
      --bg:#fafafa;
      --card:#ffffff;
      --border:#e5e7eb;
      --text:#111827;
      --muted:#6b7280;
      --success:#10b981;
      --warning:#f59e0b;
      --shadow:0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -1px rgba(0,0,0,.06);
      --shadow2:0 12px 24px rgba(0,0,0,.12);
      --radius:16px;
    }
    body{
      font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
      background:var(--bg);
      color:var(--text);
      line-height:1.6;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    .container{max-width:1200px;margin:0 auto;padding:0 20px}

    /* Toast Notifications */
    .toast-container{
      position:fixed;
      top:20px;
      right:20px;
      z-index:10000;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .toast{
      background:#fff;
      border-left:4px solid var(--success);
      padding:16px 20px;
      border-radius:12px;
      box-shadow:0 10px 40px rgba(0,0,0,.15);
      display:flex;
      align-items:center;
      gap:12px;
      min-width:300px;
      animation:slideIn 0.3s ease;
      font-weight:600;
    }
    .toast.error{border-left-color:#ef4444;}
    .toast.info{border-left-color:var(--primary);}
    @keyframes slideIn{
      from{transform:translateX(100%);opacity:0}
      to{transform:translateX(0);opacity:1}
    }
    @keyframes slideOut{
      to{transform:translateX(100%);opacity:0}
    }

    /* Cart Badge */
    .cart-btn{
      position:relative;
      background:rgba(255,255,255,.16);
      border:1px solid rgba(255,255,255,.24);
      color:#fff;
      padding:10px 16px;
      border-radius:12px;
      cursor:pointer;
      font-weight:700;
      transition:all 0.2s;
    }
    .cart-btn:hover{background:rgba(255,255,255,.22);transform:translateY(-2px)}
    .cart-count{
      position:absolute;
      top:-6px;
      right:-6px;
      background:var(--success);
      color:#fff;
      font-size:11px;
      font-weight:900;
      width:20px;
      height:20px;
      border-radius:50%;
      display:grid;
      place-items:center;
      border:2px solid #764ba2;
    }

    /* Header */
    header{
      background:linear-gradient(135deg,#667eea 0%, #764ba2 100%);
      color:#fff;
      position:relative;
      overflow:hidden;
    }
    header:before{
      content:'';
      position:absolute;
      inset:-50%;
      background:radial-gradient(circle, rgba(255,255,255,.12) 0%, transparent 70%);
      animation:float 18s ease-in-out infinite;
    }
    @keyframes float{
      0%,100%{transform:translate(0,0) rotate(0deg)}
      33%{transform:translate(28px,-28px) rotate(120deg)}
      66%{transform:translate(-18px,18px) rotate(240deg)}
    }

    .topbar{
      position:relative;
      z-index:2;
      padding:18px 0;
      border-bottom:1px solid rgba(255,255,255,.18);
      backdrop-filter: blur(6px);
    }
    .topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
    .brand{display:flex;align-items:center;gap:12px}
    .logo{
      width:42px;height:42px;border-radius:12px;
      background:rgba(255,255,255,.16);
      display:grid;place-items:center;
      box-shadow:0 10px 30px rgba(0,0,0,.15);
      font-weight:800;
      font-size:1.2rem;
    }
    .brand h1{font-size:1.05rem;font-weight:800;letter-spacing:-.02em;line-height:1.1}
    .brand small{display:block;opacity:.85;font-weight:400}

    .nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
    .nav a{
      opacity:.92;
      padding:10px 12px;
      border-radius:12px;
      transition:.2s ease;
      font-weight:600;
      font-size:.95rem;
    }
    .nav a:hover{background:rgba(255,255,255,.14);opacity:1}

    .header-hero{
      position:relative;z-index:2;
      padding:56px 0 64px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns: 1.15fr .85fr;
      gap:28px;
      align-items:center;
    }
    .headline{
      font-size:3.0rem;
      line-height:1.08;
      letter-spacing:-.03em;
      font-weight:800;
      margin-bottom:12px;
    }
    .subhead{font-size:1.15rem;opacity:.92;font-weight:300;max-width:60ch}
    .hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
    .btn{
      display:inline-flex;align-items:center;gap:10px;
      border:none;cursor:pointer;
      padding:14px 16px;border-radius:14px;
      font-weight:700;font-size:.98rem;
      transition:.2s ease;
      user-select:none;
    }
    .btn-primary{
      background:linear-gradient(135deg,var(--primary),var(--primary2));
      color:#fff;
      box-shadow:0 12px 30px rgba(99,102,241,.35);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(99,102,241,.45)}
    .btn-ghost{
      background:rgba(255,255,255,.16);
      color:#fff;
      border:1px solid rgba(255,255,255,.24);
    }
    .btn-ghost:hover{transform:translateY(-2px);background:rgba(255,255,255,.22)}
    .hero-card{
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.22);
      border-radius:var(--radius);
      padding:18px;
      box-shadow:0 20px 50px rgba(0,0,0,.18);
    }
    .hero-card .meta{
      display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px
    }
    .pill{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 10px;border-radius:999px;
      background:rgba(255,255,255,.14);
      border:1px solid rgba(255,255,255,.18);
      font-weight:700;font-size:.85rem;
    }
    .pill strong{opacity:.95}
    .preview-pen{
      background:linear-gradient(135deg, rgba(255,255,255,.14), rgba(255,255,255,.06));
      border:1px solid rgba(255,255,255,.18);
      border-radius:14px;
      padding:16px;
      display:grid;place-items:center;
      min-height:160px;
    }
    .pen-icon{
      font-size:4.2rem;
      filter:drop-shadow(0 10px 18px rgba(0,0,0,.18));
      animation:bounce 2.2s ease-in-out infinite;
    }
    @keyframes bounce{
      0%,100%{transform:translateY(0)}
      50%{transform:translateY(-8px)}
    }
    .hero-card .row{
      display:flex;gap:10px;margin-top:12px;flex-wrap:wrap
    }
    .mini{
      flex:1;
      min-width:140px;
      background:rgba(255,255,255,.12);
      border:1px solid rgba(255,255,255,.16);
      border-radius:12px;
      padding:10px;
    }
    .mini .k{font-size:.8rem;opacity:.86}
    .mini .v{font-weight:800}

    /* Main */
    main{padding:36px 0 70px}
    .section{margin-top:26px}
    .section-head{
      display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;
      margin-bottom:14px
    }
    .section-title{
      font-size:1.6rem;font-weight:800;letter-spacing:-.02em;
    }
    .section-desc{color:var(--muted);max-width:68ch}
    .link{
      color:var(--primary);
      font-weight:800;
      padding:10px 12px;border-radius:12px;
      border:1px solid var(--border);
      background:#fff;
      transition:.2s ease;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      gap:6px;
    }
    .link:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
    .grid{
      display:grid;
      grid-template-columns: repeat(12, 1fr);
      gap:16px;
    }
    .card{
      background:var(--card);
      border:1px solid var(--border);
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      overflow:hidden;
      transition:.2s ease;
    }
    .card:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
    .card-pad{padding:18px}
    .muted{color:var(--muted)}
    .tag{
      display:inline-flex;align-items:center;gap:8px;
      padding:7px 10px;border-radius:999px;
      background:#f3f4f6;border:1px solid var(--border);
      font-weight:800;font-size:.82rem;
      color:#374151;
    }

    /* Configurator feature */
    .feature{
      grid-column: span 12;
      display:grid;
      grid-template-columns: 1.05fr .95fr;
      gap:16px;
      padding:22px;
      background:linear-gradient(135deg, rgba(99,102,241,.08), rgba(118,75,162,.08));
      border:1px solid rgba(99,102,241,.18);
    }
    .feature h3{font-size:1.45rem;font-weight:900;letter-spacing:-.02em;margin-bottom:6px}
    .feature ul{margin-top:12px;padding-left:18px;color:#374151}
    .feature li{margin:6px 0}
    .feature .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
    .btn-white{
      background:#fff;color:var(--text);
      border:1px solid var(--border);
    }
    .btn-white:hover{transform:translateY(-2px);background:#f9fafb}
    .panel{
      background:#fff;
      border:1px solid var(--border);
      border-radius:14px;
      padding:16px;
    }
    .panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
    .progress{
      height:10px;border-radius:999px;background:#eef2ff;overflow:hidden;border:1px solid rgba(99,102,241,.22)
    }
    .progress > div{height:100%;width:45%;background:linear-gradient(135deg,var(--primary),var(--primary2));transition:width 0.3s ease}
    .kv{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}
    .kv div{padding:10px;border-radius:12px;border:1px solid var(--border);background:#fafafa}
    .kv .k{color:var(--muted);font-weight:700;font-size:.85rem}
    .kv .v{font-weight:900}

    /* Product cards */
    .prod{grid-column: span 4}
    .img{
      height:160px;
      background:linear-gradient(135deg,#f3f4f6,#e5e7eb);
      border-bottom:1px solid var(--border);
      display:grid;place-items:center;
      position:relative;
    }
    .badge{
      position:absolute;top:12px;left:12px;
      padding:7px 10px;border-radius:999px;
      background:rgba(17,24,39,.82);
      color:#fff;font-weight:900;font-size:.78rem;
      letter-spacing:.02em;
    }
    .price{font-weight:900;color:var(--primary);font-size:1.25rem}
    .prod .title{font-weight:900;letter-spacing:-.01em;font-size:1.1rem}
    .prod .meta-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
    .btn-mini{
      padding:10px 12px;border-radius:12px;
      border:1px solid var(--border);
      background:#fff;
      font-weight:900;
      cursor:pointer;
      transition:.2s ease;
      font-size:0.9rem;
    }
    .btn-mini:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--primary)}
    .btn-mini.primary{
      background:var(--primary);
      color:#fff;
      border-color:var(--primary);
    }

    /* Categories */
    .cat{grid-column: span 4}
    .cat .img{height:140px}
    .cat h4{font-size:1.15rem;font-weight:900;margin-top:8px}
    .cat p{color:var(--muted);margin-top:6px}
    .cat .row{display:flex;justify-content:space-between;align-items:center;margin-top:12px}

    /* Footer */
    footer{
      margin-top:36px;
      background:#0b1220;
      color:#cbd5e1;
      padding:42px 0;
    }
    footer .cols{
      display:grid;
      grid-template-columns: 1.2fr .8fr .8fr;
      gap:18px;
      align-items:flex-start;
    }
    footer h5{color:#fff;font-size:1rem;margin-bottom:10px}
    footer a{color:#cbd5e1;opacity:.95;transition:0.2s}
    footer a:hover{color:#fff}
    .footnote{margin-top:18px;color:#94a3b8;font-size:.9rem}

    /* Modal */
    .modal-backdrop{
      position:fixed;inset:0;background:rgba(17,24,39,.75);
      display:none;align-items:center;justify-content:center;
      padding:18px;
      z-index:9999;
      backdrop-filter:blur(4px);
    }
    .modal{
      width:min(1000px, 100%);
      max-height:90vh;
      background:#fff;border-radius:18px;
      box-shadow:0 25px 80px rgba(0,0,0,.35);
      overflow:hidden;
      border:1px solid rgba(255,255,255,.18);
      display:flex;
      flex-direction:column;
    }
    .modal-head{
      padding:16px 18px;
      display:flex;align-items:center;justify-content:space-between;gap:10px;
      border-bottom:1px solid var(--border);
      background:linear-gradient(135deg, rgba(99,102,241,.10), rgba(118,75,162,.10));
    }
    .modal-head h3{font-weight:950;letter-spacing:-.02em}
    .close{
      border:1px solid var(--border);
      background:#fff;
      padding:10px 12px;border-radius:12px;
      cursor:pointer;font-weight:900;
      transition:0.2s;
    }
    .close:hover{background:#f3f4f6}
    .modal-body{
      padding:0;
      overflow-y:auto;
      flex:1;
    }

    /* Studio/Configurator Styles */
    .studio-container{
      display:grid;
      grid-template-columns:1.2fr 0.8fr;
      min-height:600px;
    }
    .studio-preview{
      background:linear-gradient(135deg,#f3f4f6,#e5e7eb);
      display:flex;
      align-items:center;
      justify-content:center;
      padding:40px;
      position:relative;
      overflow:hidden;
    }
    .studio-preview::before{
      content:'';
      position:absolute;
      inset:0;
      background:radial-gradient(circle at 30% 30%, rgba(99,102,241,0.1) 0%, transparent 70%);
    }
    .pen-preview{
      font-size:120px;
      filter:drop-shadow(0 20px 40px rgba(0,0,0,.2));
      transition:all 0.3s ease;
      z-index:1;
      animation:none;
    }
    .pen-preview.bounce{animation:bounce 2s ease-in-out infinite}
    .studio-controls{
      padding:30px;
      background:#fff;
      overflow-y:auto;
      max-height:70vh;
    }
    .control-group{margin-bottom:24px}
    .control-label{
      font-weight:800;
      font-size:0.9rem;
      color:var(--text);
      margin-bottom:8px;
      display:block;
    }
    .option-grid{
      display:grid;
      grid-template-columns:repeat(2, 1fr);
      gap:8px;
    }
    .option-btn{
      padding:12px;
      border:2px solid var(--border);
      border-radius:12px;
      background:#fff;
      cursor:pointer;
      transition:all 0.2s;
      font-weight:600;
      text-align:center;
    }
    .option-btn:hover{border-color:var(--primary);transform:translateY(-2px)}
    .option-btn.active{
      border-color:var(--primary);
      background:#eef2ff;
      color:var(--primary);
      box-shadow:0 4px 12px rgba(99,102,241,.15);
    }
    .color-dot{
      width:20px;
      height:20px;
      border-radius:50%;
      display:inline-block;
      margin-right:6px;
      border:2px solid rgba(0,0,0,0.1);
      vertical-align:middle;
    }
    .price-display{
      background:linear-gradient(135deg,#f3f4f6,#fff);
      border:2px solid var(--border);
      border-radius:16px;
      padding:20px;
      margin-top:20px;
      text-align:center;
    }
    .price-amount{
      font-size:2rem;
      font-weight:900;
      color:var(--primary);
      line-height:1;
    }
    .price-note{
      font-size:0.85rem;
      color:var(--muted);
      margin-top:4px;
      font-weight:600;
    }
    .engraving-input{
      width:100%;
      padding:12px;
      border:2px solid var(--border);
      border-radius:12px;
      font-family:inherit;
      font-weight:600;
      margin-top:8px;
      transition:0.2s;
    }
    .engraving-input:focus{
      outline:none;
      border-color:var(--primary);
      box-shadow:0 0 0 3px rgba(99,102,241,.1);
    }
    .char-count{
      text-align:right;
      font-size:0.8rem;
      color:var(--muted);
      margin-top:4px;
      font-weight:600;
    }
    .add-to-cart-studio{
      width:100%;
      margin-top:16px;
      padding:16px;
      font-size:1.1rem;
      justify-content:center;
    }

    /* Cart Sidebar */
    .cart-sidebar{
      position:fixed;
      top:0;
      right:-400px;
      width:400px;
      max-width:100%;
      height:100vh;
      background:#fff;
      box-shadow:-10px 0 40px rgba(0,0,0,.15);
      z-index:10001;
      transition:right 0.3s ease;
      display:flex;
      flex-direction:column;
    }
    .cart-sidebar.open{right:0}
    .cart-header{
      padding:20px;
      border-bottom:1px solid var(--border);
      display:flex;
      justify-content:space-between;
      align-items:center;
      background:linear-gradient(135deg,#667eea 0%, #764ba2 100%);
      color:#fff;
    }
    .cart-header h3{margin:0;font-weight:800}
    .close-cart{
      background:rgba(255,255,255,.2);
      border:none;
      color:#fff;
      width:36px;
      height:36px;
      border-radius:50%;
      cursor:pointer;
      font-size:1.2rem;
      transition:0.2s;
    }
    .close-cart:hover{background:rgba(255,255,255,.3)}
    .cart-items{
      flex:1;
      overflow-y:auto;
      padding:20px;
    }
    .cart-item{
      display:flex;
      gap:12px;
      padding:16px;
      background:#f9fafb;
      border-radius:12px;
      margin-bottom:12px;
      border:1px solid var(--border);
    }
    .cart-item-icon{
      font-size:2rem;
      width:60px;
      height:60px;
      background:#fff;
      border-radius:12px;
      display:grid;
      place-items:center;
      border:1px solid var(--border);
    }
    .cart-item-details{flex:1}
    .cart-item-title{font-weight:800;margin-bottom:4px}
    .cart-item-meta{font-size:0.85rem;color:var(--muted);font-weight:600}
    .cart-item-price{font-weight:900;color:var(--primary);margin-top:4px}
    .remove-item{
      background:none;
      border:none;
      color:#ef4444;
      cursor:pointer;
      font-size:1.2rem;
      padding:4px;
      opacity:0.6;
      transition:0.2s;
    }
    .remove-item:hover{opacity:1}
    .cart-empty{
      text-align:center;
      padding:40px;
      color:var(--muted);
      font-weight:600;
    }
    .cart-footer{
      padding:20px;
      border-top:1px solid var(--border);
      background:#f9fafb;
    }
    .cart-total{
      display:flex;
      justify-content:space-between;
      font-size:1.2rem;
      font-weight:800;
      margin-bottom:16px;
    }
    .checkout-btn{
      width:100%;
      padding:16px;
      font-size:1.1rem;
      justify-content:center;
    }
    .cart-overlay{
      position:fixed;
      inset:0;
      background:rgba(0,0,0,.5);
      z-index:10000;
      opacity:0;
      visibility:hidden;
      transition:all 0.3s;
    }
    .cart-overlay.active{opacity:1;visibility:visible}

    /* Mobile Responsive */
    @media (max-width: 980px){
      .hero-grid{grid-template-columns:1fr}
      .feature{grid-template-columns:1fr}
      footer .cols{grid-template-columns:1fr}
      .prod,.cat{grid-column: span 6}
      .studio-container{grid-template-columns:1fr}
      .nav{display:none}
      .cart-sidebar{width:100%;right:-100%}
    }
    @media (max-width: 640px){
      .headline{font-size:2.25rem}
      .prod,.cat{grid-column: span 12}
      .hero-ctas{flex-direction:column}
      .btn{width:100%;justify-content:center}
    }
  </style>
</head>

<body>
  <!-- Toast Container -->
  <div class="toast-container" id="toastContainer"></div>

  <!-- Cart Overlay -->
  <div class="cart-overlay" id="cartOverlay" onclick="toggleCart()"></div>

  <!-- Cart Sidebar -->
  <div class="cart-sidebar" id="cartSidebar">
    <div class="cart-header">
      <h3>🛒 Your Cart</h3>
      <button class="close-cart" onclick="toggleCart()">✕</button>
    </div>
    <div class="cart-items" id="cartItems">
      <div class="cart-empty">Your cart is empty</div>
    </div>
    <div class="cart-footer">
      <div class="cart-total">
        <span>Total:</span>
        <span id="cartTotal">$0.00</span>
      </div>
      <button class="btn btn-primary checkout-btn" onclick="checkout()">
        💳 Checkout
      </button>
    </div>
  </div>

  <header>
    <div class="topbar">
      <div class="container">
        <div class="topbar-inner">
          <div class="brand">
            <div class="logo">PP</div>
            <div>
              <h1>Pops Pens & More</h1>
              <small>Handcrafted Pens • Custom Builds • Collectibles</small>
            </div>
          </div>

          <nav class="nav" aria-label="Primary">
            <a href="#design" onclick="scrollToSection('design')">Design Studio</a>
            <a href="#instock" onclick="scrollToSection('instock')">In-Stock Pens</a>
            <a href="#collectibles" onclick="scrollToSection('collectibles')">Collectibles</a>
            <a href="#about" onclick="scrollToSection('about')">About</a>
            <a href="#contact" onclick="scrollToSection('contact')">Contact</a>
            <button class="cart-btn" onclick="toggleCart()">
              🛒 Cart
              <span class="cart-count" id="cartCount" style="display:none">0</span>
            </button>
          </nav>
        </div>
      </div>
    </div>

    <div class="header-hero">
      <div class="container">
        <div class="hero-grid">
          <div>
            <div class="pill">✨ <strong>New:</strong> Build your custom pen online</div>
            <h2 class="headline">Design a pen that's uniquely yours.</h2>
            <p class="subhead">
              Choose pen style, finish, wood, and engraving—then add to cart.
              Or shop ready-to-ship pens and collectibles.
            </p>

            <div class="hero-ctas">
              <button class="btn btn-primary" onclick="openStudio()">
                🖊️ Open Design Studio
              </button>
              <a class="btn btn-ghost" href="#instock" onclick="scrollToSection('instock'); return false;">
                🛍️ Shop In-Stock
              </a>
              <a class="btn btn-ghost" href="#collectibles" onclick="scrollToSection('collectibles'); return false;">
                ⚾ Collectibles
              </a>
            </div>
          </div>

          <div class="hero-card" aria-label="Quick preview">
            <div class="meta">
              <div class="pill">🧩 Configurator</div>
              <div class="pill">🛒 WooCommerce-ready</div>
            </div>
            <div class="preview-pen">
              <div class="pen-icon" id="heroPenIcon">🖊️</div>
            </div>
            <div class="row">
              <div class="mini">
                <div class="k">Popular Build</div>
                <div class="v" id="heroBuild">Walnut • Gold</div>
              </div>
              <div class="mini">
                <div class="k">Add Engraving</div>
                <div class="v">+$8 base</div>
              </div>
              <div class="mini">
                <div class="k">Fast Ship</div>
                <div class="v">In-stock items</div>
              </div>
            </div>
          </div>

        </div>
      </div>
    </div>
  </header>

  <main class="container">
    <!-- FEATURE: Design Studio -->
    <section class="section" id="design">
      <div class="section-head">
        <div>
          <div class="section-title">Design Studio</div>
          <div class="section-desc">
            Build your perfect pen with our interactive configurator. Real-time pricing and live preview.
          </div>
        </div>
        <button class="link" onclick="openStudio()">Launch Studio →</button>
      </div>

      <div class="grid">
        <div class="card feature">
          <div>
            <h3>Custom pen configurator</h3>
            <p class="muted">
              Select from premium materials and finishes. Each pen is handmade to your specifications.
            </p>
            <ul>
              <li><strong>Pen Styles:</strong> Bolt Action, Classic Twist, Fountain, Click Pen</li>
              <li><strong>Premium Woods:</strong> Walnut, Maple, Ebony, Oak, Cherry</li>
              <li><strong>Metal Finishes:</strong> Gold, Chrome, Black Titanium, Copper</li>
              <li><strong>Engraving:</strong> Up to 20 characters, multiple font options</li>
            </ul>

            <div class="actions">
              <button class="btn btn-primary" onclick="openStudio()">🚀 Start Designing</button>
              <button class="btn btn-white" onclick="randomizeBuild()">🎲 Randomize Build</button>
            </div>
          </div>

          <div class="panel">
            <div class="panel-top">
              <div class="tag">Current Build</div>
              <div class="tag"><span style="color:var(--success)">●</span> Ready</div>
            </div>
            <div class="progress" aria-label="Progress"><div id="progFill" style="width:0%"></div></div>

            <div class="kv" style="margin-top:12px">
              <div>
                <div class="k">Pen Type</div>
                <div class="v" id="summaryType">Not selected</div>
              </div>
              <div>
                <div class="k">Finish</div>
                <div class="v" id="summaryFinish">—</div>
              </div>
              <div>
                <div class="k">Wood</div>
                <div class="v" id="summaryWood">—</div>
              </div>
              <div>
                <div class="k">Est. Price</div>
                <div class="v" id="summaryPrice">$0.00</div>
              </div>
            </div>

            <div style="margin-top:12px;color:var(--muted);font-weight:600;font-size:.92rem">
              Click "Start Designing" to configure your perfect pen.
            </div>
          </div>
        </div>
      </div>
    </section>

    <!-- IN-STOCK PENS -->
    <section class="section" id="instock">
      <div class="section-head">
        <div>
          <div class="section-title">In-Stock Pens</div>
          <div class="section-desc">
            Ready-to-ship items. Click "Clone This Pen" to customize your own version.
          </div>
        </div>
        <a class="link" href="#collectibles" onclick="scrollToSection('collectibles'); return false;">Browse Collectibles →</a>
      </div>

      <div class="grid" id="instockGrid">
        <!-- Populated by JS -->
      </div>
    </section>

    <!-- COLLECTIBLES -->
    <section class="section" id="collectibles">
      <div class="section-head">
        <div>
          <div class="section-title">Collectibles</div>
          <div class="section-desc">
            Curated memorabilia and gift bundles for the discerning collector.
          </div>
        </div>
        <a class="link" href="#about" onclick="scrollToSection('about'); return false;">About →</a>
      </div>

      <div class="grid">
        <article class="card cat">
          <div class="img" style="background:linear-gradient(135deg,#fef3c7,#fde68a)">
            <div style="font-size:46px">⚾</div>
          </div>
          <div class="card-pad">
            <h4>Baseball Memorabilia</h4>
            <p>Cards, signed balls, display cases, and collectibles.</p>
            <div class="row">
              <span class="tag">Popular</span>
              <button class="btn-mini" onclick="showToast('Baseball shop coming soon!', 'info')">Shop</button>
            </div>
          </div>
        </article>

        <article class="card cat">
          <div class="img" style="background:linear-gradient(135deg,#dbeafe,#93c5fd)">
            <div style="font-size:46px">🏈</div>
          </div>
          :root{
  --primary:#6366f1;
  --primary2:#5855eb;
  --bg:#fafafa;
  --card:#ffffff;
  --border:#e5e7eb;
  --text:#111827;
  --muted:#6b7280;
  --success:#10b981;
  --shadow:0 4px 6px -1px rgba(0,0,0,.1);
  --shadow2:0 12px 24px rgba(0,0,0,.12);
  --radius:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}

/* Header */
.topbar{
  background:linear-gradient(135deg,#667eea 0%, #764ba2 100%);
  color:#fff;
  padding:18px 0;
  position:sticky;
  top:0;
  z-index:100;
  box-shadow:0 4px 20px rgba(0,0,0,.1);
}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:12px}
.logo{
  width:42px;height:42px;border-radius:12px;
  background:rgba(255,255,255,.16);
  display:grid;place-items:center;font-weight:800;
}
.brand h1{font-size:1.05rem;font-weight:800;letter-spacing:-.02em}
.brand small{display:block;opacity:.85;font-weight:400}

.nav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.nav a{
  opacity:.92;
  padding:10px 14px;
  border-radius:12px;
  transition:.2s ease;
  font-weight:600;
  font-size:.95rem;
}
.nav a:hover{background:rgba(255,255,255,.14);opacity:1}
.nav a.active{background:rgba(255,255,255,.2);font-weight:700}

.cart-btn{
  position:relative;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  padding:10px 16px;
  border-radius:12px;
  cursor:pointer;
  font-weight:700;
  margin-left:8px;
}
.cart-count{
  position:absolute;
  top:-6px;right:-6px;
  background:var(--success);
  color:#fff;
  font-size:11px;
  font-weight:900;
  width:20px;height:20px;
  border-radius:50%;
  display:grid;place-items:center;
}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  border:none;cursor:pointer;
  padding:14px 20px;border-radius:14px;
  font-weight:700;font-size:.98rem;
  transition:.2s ease;
  text-decoration:none;
}
.btn-primary{
  background:linear-gradient(135deg,var(--primary),var(--primary2));
  color:#fff;
  box-shadow:0 12px 30px rgba(99,102,241,.35);
}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{
  background:transparent;
  color:inherit;
  border:1px solid currentColor;
}
.btn-white{
  background:#fff;color:var(--text);
  border:1px solid var(--border);
}

/* Cards */
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  transition:.2s ease;
}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow2)}
.card-pad{padding:18px}
.section{padding:40px 0}
.section-title{font-size:1.8rem;font-weight:800;margin-bottom:12px}
.section-desc{color:var(--muted);margin-bottom:24px;max-width:60ch}

/* Products */
.prod{grid-column:span 4}
@media(max-width:980px){.prod{grid-column:span 6}}
@media(max-width:640px){.prod{grid-column:span 12}}
.img{
  height:200px;
  background:linear-gradient(135deg,#f3f4f6,#e5e7eb);
  display:grid;place-items:center;
  position:relative;
  font-size:64px;
}
.badge{
  position:absolute;top:12px;left:12px;
  padding:6px 10px;border-radius:999px;
  background:rgba(17,24,39,.82);
  color:#fff;font-weight:800;font-size:.75rem;
}
.price{font-weight:900;color:var(--primary);font-size:1.3rem;margin-top:8px}
.prod .title{font-weight:900;font-size:1.1rem;margin-top:8px}

/* Footer */
footer{
  background:#0b1220;
  color:#cbd5e1;
  padding:42px 0;
  margin-top:60px;
}
footer .cols{
  display:grid;
  grid-template-columns:1.2fr .8fr .8fr;
  gap:18px;
}
@media(max-width:640px){footer .cols{grid-template-columns:1fr}}
footer h5{color:#fff;margin-bottom:12px}
footer a{color:#94a3b8;text-decoration:none;display:block;margin:6px 0;transition:.2s}
footer a:hover{color:#fff}

/* Toast */
.toast-container{
  position:fixed;
  top:20px;right:20px;
  z-index:10000;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.toast{
  background:#fff;
  border-left:4px solid var(--success);
  padding:16px 20px;
  border-radius:12px;
  box-shadow:0 10px 40px rgba(0,0,0,.15);
  font-weight:600;
  animation:slideIn 0.3s ease;
  min-width:300px;
}
@keyframes slideIn{
  from{transform:translateX(100%);opacity:0}
  to{transform:translateX(0);opacity:1}
}// Global Cart State
const Cart = {
  items: JSON.parse(localStorage.getItem('cart') || '[]'),
  
  save() {
    localStorage.setItem('cart', JSON.stringify(this.items));
    this.updateUI();
  },
  
  add(item) {
    const existing = this.items.find(i => 
      i.id === item.id && 
      i.type === item.type && 
      i.engraving === item.engraving
    );
    
    if (existing) {
      existing.quantity += 1;
    } else {
      this.items.push({...item, quantity: 1});
    }
    
    this.save();
    this.showToast(`Added ${item.name} to cart`);
  },
  
  remove(index) {
    this.items.splice(index, 1);
    this.save();
  },
  
  getTotal() {
    return this.items.reduce((sum, item) => sum + (item.price * item.quantity), 0);
  },
  
  getCount() {
    return this.items.reduce((sum, item) => sum + item.quantity, 0);
  },
  
  updateUI() {
    // Update all cart count badges on page
    document.querySelectorAll('.cart-count').forEach(el => {
      const count = this.getCount();
      el.textContent = count;
      el.style.display = count > 0 ? 'grid' : 'none';
    });
    
    // If on cart page, render items
    if (document.getElementById('cartItems')) {
      this.renderCartPage();
    }
  },
  
  renderCartPage() {
    const container = document.getElementById('cartItems');
    if (this.items.length === 0) {
      container.innerHTML = '<div style="text-align:center;padding:60px 20px;color:var(--muted)"><h3>Your cart is empty</h3><p>Add some pens to get started</p><a href="shop.html" class="btn btn-primary" style="margin-top:20px">Shop Pens</a></div>';
      document.getElementById('cartTotal').textContent = '$0.00';
      return;
    }
    
    container.innerHTML = this.items.map((item, idx) => `
      <div class="cart-item" style="display:flex;gap:16px;padding:20px;background:#f9fafb;border-radius:12px;margin-bottom:12px;border:1px solid var(--border)">
        <div style="font-size:48px">${item.icon || '🖊️'}</div>
        <div style="flex:1">
          <h4 style="margin:0 0 4px">${item.name}</h4>
          <div style="color:var(--muted);font-size:0.9rem">${item.specs || ''}</div>
          <div style="margin-top:8px;font-weight:800;color:var(--primary)">$${item.price.toFixed(2)} x ${item.quantity}</div>
        </div>
        <button onclick="Cart.remove(${idx})" style="background:none;border:none;color:#ef4444;cursor:pointer;font-size:1.2rem">🗑️</button>
      </div>
    `).join('');
    
    document.getElementById('cartTotal').textContent = '$' + this.getTotal().toFixed(2);
  },
  
  showToast(msg, type = 'success') {
    const container = document.querySelector('.toast-container') || (() => {
      const c = document.createElement('div');
      c.className = 'toast-container';
      document.body.appendChild(c);
      return c;
    })();
    
    const toast = document.createElement('div');
    toast.className = 'toast';
    toast.textContent = msg;
    container.appendChild(toast);
    
    setTimeout(() => {
      toast.style.animation = 'slideIn 0.3s ease reverse';
      setTimeout(() => toast.remove(), 300);
    }, 3000);
  }
};

// Initialize
document.addEventListener('DOMContentLoaded', () => {
  Cart.updateUI();
});

// Highlight current nav
const currentPage = location.pathname.split('/').pop() || 'index.html';
document.querySelectorAll('.nav a').forEach(link => {
  if (link.getAttribute('href') === currentPage) {
    link.classList.add('active');
  }
});<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Pops Pens & More — Handcrafted Custom Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <link rel="stylesheet" href="css/styles.css">
  <style>
    .hero{
      background:linear-gradient(135deg,#667eea 0%, #764ba2 100%);
      color:#fff;
      padding:80px 0;
      position:relative;
      overflow:hidden;
    }
    .hero::before{
      content:'';position:absolute;inset:-50%;
      background:radial-gradient(circle, rgba(255,255,255,.12) 0%, transparent 70%);
      animation:float 18s ease-in-out infinite;
    }
    @keyframes float{
      0%,100%{transform:translate(0,0) rotate(0deg)}
      50%{transform:translate(-20px,20px) rotate(180deg)}
    }
    .hero-content{position:relative;z-index:1;max-width:600px}
    .hero h1{font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:20px}
    .hero p{font-size:1.25rem;opacity:.9;margin-bottom:32px}
    
    .featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
    @media(max-width:768px){.featured-grid{grid-template-columns:1fr}}
    
    .feature-card{
      background:#fff;
      padding:30px;
      border-radius:16px;
      border:1px solid var(--border);
      text-align:center;
      transition:0.3s;
    }
    .feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow2)}
    .feature-icon{font-size:3rem;margin-bottom:16px}
  </style>
</head>
<body>

  <!-- Navigation -->
  <div class="topbar">
    <div class="container">
      <div class="topbar-inner">
        <a href="index.html" class="brand" style="text-decoration:none;color:#fff">
          <div class="logo">PP</div>
          <div>
            <h1>Pops Pens & More</h1>
            <small>Handcrafted Pens • Custom Builds • Collectibles</small>
          </div>
        </a>
        
        <nav class="nav">
          <a href="index.html">Home</a>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">Shop</a>
          <a href="collectibles.html">Collectibles</a>
          <a href="about.html">About</a>
          <a href="cart.html" class="cart-btn">
            🛒 Cart
            <span class="cart-count" style="display:none">0</span>
          </a>
        </nav>
      </div>
    </div>
  </div>

  <!-- Hero -->
  <section class="hero">
    <div class="container">
      <div class="hero-content">
        <h1>Craft Your Perfect Writing Instrument</h1>
        <p>Design a custom pen with our interactive studio, or shop our ready-to-ship collection of handcrafted writing instruments.</p>
        <div style="display:flex;gap:16px;flex-wrap:wrap">
          <a href="studio.html" class="btn btn-primary">🖊️ Design Your Pen</a>
          <a href="shop.html" class="btn btn-ghost">🛍️ Shop In-Stock</a>
        </div>
      </div>
    </div>
  </section>

  <!-- Features -->
  <section class="section">
    <div class="container">
      <h2 class="section-title">Why Choose Pops Pens?</h2>
      <div class="featured-grid">
        <div class="feature-card">
          <div class="feature-icon">🪵</div>
          <h3>Premium Materials</h3>
          <p class="muted">Hand-selected woods and aerospace-grade metals</p>
        </div>
        <div class="feature-card">
          <div class="feature-icon">⚡</div>
          <h3>Fast Turnaround</h3>
          <p class="muted">Custom pens ship within 5-7 business days</p>
        </div>
        <div class="feature-card">
          <div class="feature-icon">🔤</div>
          <h3>Custom Engraving</h3>
          <p class="muted">Personalize with names, dates, or messages</p>
        </div>
      </div>
    </div>
  </section>

  <!-- Featured Products Preview -->
  <section class="section" style="background:#fff;margin-top:40px;padding:60px 0">
    <div class="container">
      <div style="display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px">
        <div>
          <h2 class="section-title">Featured Pens</h2>
          <p class="section-desc">Ready to ship today</p>
        </div>
        <a href="shop.html" class="btn btn-white">View All →</a>
      </div>
      
      <div class="grid">
        <article class="card prod">
          <div class="img">🖊️</div>
          <div class="card-pad">
            <div class="badge">BEST SELLER</div>
            <h3 class="title">Walnut Bolt Action</h3>
            <div class="muted">Gold Finish • Hand-turned</div>
            <div class="price">$68.00</div>
            <button class="btn btn-primary" style="width:100%;margin-top:12px" onclick="Cart.add({id:1,name:'Walnut Bolt Action',price:68,icon:'🖊️',specs:'Gold Finish'})">Add to Cart</button>
          </div>
        </article>
        
        <article class="card prod">
          <div class="img">✒️</div>
          <div class="card-pad">
            <h3 class="title">Maple Classic Twist</h3>
            <div class="muted">Chrome Finish • Smooth writer</div>
            <div class="price">$49.00</div>
            <button class="btn btn-primary" style="width:100%;margin-top:12px" onclick="Cart.add({id:2,name:'Maple Classic Twist',price:49,icon:'✒️',specs:'Chrome Finish'})">Add to Cart</button>
          </div>
        </article>
        
        <article class="card prod">
          <div class="img">🖋️</div>
          <div class="card-pad">
            <h3 class="title">Ebony Fountain Pen</h3>
            <div class="muted">Black Titanium • Premium</div>
            <div class="price">$92.00</div>
            <button class="btn btn-primary" style="width:100%;margin-top:12px" onclick="Cart.add({id:3,name:'Ebony Fountain Pen',price:92,icon:'🖋️',specs:'Black Titanium'})">Add to Cart</button>
          </div>
        </article>
      </div>
    </div>
  </section>

  <footer>
    <div class="container">
      <div class="cols">
        <div>
          <h5>Pops Pens & More</h5>
          <p style="color:#94a3b8;margin-top:8px">Handcrafted pens and curated collectibles since 2020.</p>
        </div>
        <div>
          <h5>Shop</h5>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">In-Stock Pens</a>
          <a href="collectibles.html">Collectibles</a>
        </div>
        <div>
          <h5>Support</h5>
          <a href="about.html">About Us</a>
          <a href="about.html#contact">Contact</a>
          <a href="#">Shipping Info</a>
        </div>
      </div>
      <div class="footnote">© 2024 Pops Pens & More. All rights reserved.</div>
    </div>
  </footer>

  <script src="js/main.js"></script>
</body>
</html><!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Design Studio — Pops Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <link rel="stylesheet" href="css/styles.css">
  <style>
    .studio-layout{
      display:grid;
      grid-template-columns:1fr 400px;
      min-height:calc(100vh - 80px);
    }
    @media(max-width:900px){.studio-layout{grid-template-columns:1fr}}
    
    .preview-area{
      background:linear-gradient(135deg,#f3f4f6,#e5e7eb);
      display:flex;
      align-items:center;
      justify-content:center;
      padding:40px;
      position:relative;
    }
    .pen-display{
      font-size:150px;
      filter:drop-shadow(0 20px 40px rgba(0,0,0,.2));
      transition:all 0.3s ease;
    }
    
    .controls-area{
      background:#fff;
      border-left:1px solid var(--border);
      padding:30px;
      overflow-y:auto;
    }
    
    .control-group{margin-bottom:28px}
    .control-label{
      font-weight:800;
      font-size:0.9rem;
      margin-bottom:12px;
      display:block;
      color:var(--text);
    }
    
    .option-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:8px;
    }
    .option-btn{
      padding:12px;
      border:2px solid var(--border);
      border-radius:12px;
      background:#fff;
      cursor:pointer;
      transition:all 0.2s;
      font-weight:600;
      text-align:left;
    }
    .option-btn:hover{border-color:var(--primary)}
    .option-btn.active{
      border-color:var(--primary);
      background:#eef2ff;
      color:var(--primary);
    }
    
    .color-preview{
      display:inline-block;
      width:16px;
      height:16px;
      border-radius:50%;
      margin-right:6px;
      vertical-align:middle;
      border:2px solid rgba(0,0,0,0.1);
    }
    
    .price-box{
      background:linear-gradient(135deg,#f3f4f6,#fff);
      border:2px solid var(--border);
      border-radius:16px;
      padding:24px;
      text-align:center;
      margin-top:20px;
    }
    .price-amount{
      font-size:2.5rem;
      font-weight:900;
      color:var(--primary);
    }
    
    .engraving-box{
      margin-top:20px;
    }
    .engraving-box input{
      width:100%;
      padding:12px;
      border:2px solid var(--border);
      border-radius:12px;
      font-family:inherit;
      font-weight:600;
      margin-top:8px;
    }
    .engraving-box input:focus{
      outline:none;
      border-color:var(--primary);
    }
  </style>
</head>
<body>

  <div class="topbar">
    <div class="container">
      <div class="topbar-inner">
        <a href="index.html" class="brand" style="text-decoration:none;color:#fff">
          <div class="logo">PP</div>
          <div>
            <h1>Pops Pens & More</h1>
            <small>Design Studio</small>
          </div>
        </a>
        
        <nav class="nav">
          <a href="index.html">Home</a>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">Shop</a>
          <a href="collectibles.html">Collectibles</a>
          <a href="about.html">About</a>
          <a href="cart.html" class="cart-btn">
            🛒 Cart
            <span class="cart-count" style="display:none">0</span>
          </a>
        </nav>
      </div>
    </div>
  </div>

  <div class="studio-layout">
    <div class="preview-area">
      <div class="pen-display" id="penPreview">🖊️</div>
      <div style="position:absolute;bottom:30px;left:30px;background:rgba(255,255,255,.9);padding:16px;border-radius:12px;border:1px solid var(--border)">
        <div style="font-weight:800;margin-bottom:4px">Live Preview</div>
        <div style="color:var(--muted);font-size:0.9rem">Rotating view enabled</div>
      </div>
    </div>

    <div class="controls-area">
      <h2 style="margin-bottom:24px;font-weight:800">Configure Your Pen</h2>
      
      <div class="control-group">
        <label class="control-label">Pen Style</label>
        <div class="option-grid" id="styleOptions">
          <button class="option-btn active" data-value="bolt" data-icon="🔫" data-price="45">
            Bolt Action
          </button>
          <button class="option-btn" data-value="twist" data-icon="✒️" data-price="40">
            Classic Twist
          </button>
          <button class="option-btn" data-value="fountain" data-icon="🖋️" data-price="75">
            Fountain
          </button>
          <button class="option-btn" data-value="click" data-icon="🖊️" data-price="35">
            Click Pen
          </button>
        </div>
      </div>

      <div class="control-group">
        <label class="control-label">Wood Type</label>
        <div class="option-grid" id="woodOptions">
          <button class="option-btn active" data-value="walnut" data-price="15">
            <span class="color-preview" style="background:#5d4e37"></span>Walnut
          </button>
          <button class="option-btn" data-value="maple" data-price="12">
            <span class="color-preview" style="background:#e8d5b5"></span>Maple
          </button>
          <button class="option-btn" data-value="ebony" data-price="25">
            <span class="color-preview" style="background:#1a1a1a"></span>Ebony
          </button>
          <button class="option-btn" data-value="oak" data-price="10">
            <span class="color-preview" style="background:#c4a77d"></span>Oak
          </button>
          <button class="option-btn" data-value="cherry" data-price="18">
            <span class="color-preview" style="background:#8b4513"></span>Cherry
          </button>
          <button class="option-btn" data-value="rosewood" data-price="22">
            <span class="color-preview" style="background:#65000b"></span>Rosewood
          </button>
        </div>
      </div>

      <div class="control-group">
        <label class="control-label">Metal Finish</label>
        <div class="option-grid" id="finishOptions">
          <button class="option-btn active" data-value="gold" data-price="8">
            <span class="color-preview" style="background:linear-gradient(135deg,#ffd700,#ffed4e)"></span>Gold
          </button>
          <button class="option-btn" data-value="chrome" data-price="5">
            <span class="color-preview" style="background:linear-gradient(135deg,#c0c0c0,#e8e8e8)"></span>Chrome
          </button>
          <button class="option-btn" data-value="black" data-price="12">
            <span class="color-preview" style="background:#1f2937"></span>Black Ti
          </button>
          <button class="option-btn" data-value="copper" data-price="10">
            <span class="color-preview" style="background:#b87333"></span>Copper
          </button>
        </div>
      </div>

      <div class="engraving-box">
        <label class="control-label">Engraving (+$8)</label>
        <input type="text" id="engravingInput" placeholder="Enter text (max 20 chars)" maxlength="20">
        <div style="text-align:right;font-size:0.8rem;color:var(--muted);margin-top:4px">
          <span id="charCount">0</span>/20
        </div>
      </div>

      <div class="price-box">
        <div style="color:var(--muted);font-weight:600;margin-bottom:8px">Total Price</div>
        <div class="price-amount" id="totalPrice">$68.00</div>
        <div style="color:var(--muted);font-size:0.9rem;margin-top:8px">Free shipping on orders over $50</div>
      </div>

      <button class="btn btn-primary" style="width:100%;margin-top:20px;padding:18px;font-size:1.1rem" onclick="addCustomToCart()">
        Add to Cart →
      </button>
      
      <button class="btn btn-white" style="width:100%;margin-top:10px" onclick="randomize()">
        🎲 Randomize Design
      </button>
    </div>
  </div>

  <script src="js/main.js"></script>
  <script>
    const config = {
      style: {value:'bolt', price:45, icon:'🔫'},
      wood: {value:'walnut', price:15},
      finish: {value:'gold', price:8},
      engraving: ''
    };

    const prices = {
      style:{bolt:45,twist:40,fountain:75,click:35},
      wood:{walnut:15,maple:12,ebony:25,oak:10,cherry:18,rosewood:22},
      finish:{gold:8,chrome:5,black:12,copper:10}
    };

    function updatePrice() {
      let total = config.style.price + config.wood.price + config.finish.price;
      if (config.engraving) total += 8;
      
      document.getElementById('totalPrice').textContent = '$' + total.toFixed(2);
      document.getElementById('penPreview').textContent = config.style.icon;
    }

    function setupOptions(groupId, category) {
      document.querySelectorAll(`#${groupId} .option-btn`).forEach(btn => {
        btn.addEventListener('click', () => {
          document.querySelectorAll(`#${groupId} .option-btn`).forEach(b => b.classList.remove('active'));
          btn.classList.add('active');
          
          config[category] = {
            value: btn.dataset.value,
            price: parseInt(btn.dataset.price),
            icon: btn.dataset.icon || config.style.icon
          };
          updatePrice();
        });
      });
    }

    setupOptions('styleOptions', 'style');
    setupOptions('woodOptions', 'wood');
    setupOptions('finishOptions', 'finish');

    document.getElementById('engravingInput').addEventListener('input', (e) => {
      config.engraving = e.target.value;
      document.getElementById('charCount').textContent = e.target.value.length;
      updatePrice();
    });

    function addCustomToCart() {
      const total = parseFloat(document.getElementById('totalPrice').textContent.replace('$',''));
      const specs = `${config.wood.value.charAt(0).toUpperCase() + config.wood.value.slice(1)} • ${config.finish.value.charAt(0).toUpperCase() + config.finish.value.slice(1)}`;
      
      Cart.add({
        id: 'custom-' + Date.now(),
        name: `Custom ${config.style.value === 'bolt' ? 'Bolt Action' : config.style.value === 'twist' ? 'Classic Twist' : config.style.value === 'fountain' ? 'Fountain' : 'Click'} Pen`,
        price: total,
        icon: config.style.icon,
        specs: specs + (config.engraving ? ` • "${config.engraving}"` : ''),
        engraving: config.engraving
      });
    }

    function randomize() {
      const styles = document.querySelectorAll('#styleOptions .option-btn');
      const woods = document.querySelectorAll('#woodOptions .option-btn');
      const finishes = document.querySelectorAll('#finishOptions .option-btn');
      
      styles[Math.floor(Math.random() * styles.length)].click();
      woods[Math.floor(Math.random() * woods.length)].click();
      finishes[Math.floor(Math.random() * finishes.length)].click();
    }

    // Initialize
    updatePrice();
  </script>
</body>
</html><!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Shop In-Stock Pens — Pops Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <link rel="stylesheet" href="css/styles.css">
</head>
<body>

  <div class="topbar">
    <div class="container">
      <div class="topbar-inner">
        <a href="index.html" class="brand" style="text-decoration:none;color:#fff">
          <div class="logo">PP</div>
          <div>
            <h1>Pops Pens & More</h1>
            <small>In-Stock Collection</small>
          </div>
        </a>
        
        <nav class="nav">
          <a href="index.html">Home</a>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">Shop</a>
          <a href="collectibles.html">Collectibles</a>
          <a href="about.html">About</a>
          <a href="cart.html" class="cart-btn">
            🛒 Cart
            <span class="cart-count" style="display:none">0</span>
          </a>
        </nav>
      </div>
    </div>
  </div>

  <section class="section">
    <div class="container">
      <h1 class="section-title">In-Stock Pens</h1>
      <p class="section-desc">Ready to ship within 24 hours. Each pen is handcrafted and unique.</p>
      
      <div class="grid" style="margin-top:32px">
        <article class="card prod">
          <div class="img">🖊️</div>
          <div class="card-pad">
            <span class="badge">IN STOCK</span>
            <h3 class="title">Walnut Bolt Action — Gold</h3>
            <p class="muted">Rich walnut body with 24k gold plating. Smooth bolt mechanism.</p>
            <div class="price">$68.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:1,name:'Walnut Bolt Action',price:68,icon:'🖊️',specs:'Gold Finish'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>

        <article class="card prod">
          <div class="img">✒️</div>
          <div class="card-pad">
            <span class="badge">IN STOCK</span>
            <h3 class="title">Maple Classic Twist — Chrome</h3>
            <p class="muted">Light maple with polished chrome. Perfect everyday writer.</p>
            <div class="price">$49.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:2,name:'Maple Classic Twist',price:49,icon:'✒️',specs:'Chrome Finish'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>

        <article class="card prod">
          <div class="img">🖋️</div>
          <div class="card-pad">
            <span class="badge">LOW STOCK</span>
            <h3 class="title">Ebony Fountain — Black Titanium</h3>
            <p class="muted">Luxury fountain pen with titanium accents. Converter included.</p>
            <div class="price">$92.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:3,name:'Ebony Fountain Pen',price:92,icon:'🖋️',specs:'Black Titanium'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>

        <article class="card prod">
          <div class="img">🖊️</div>
          <div class="card-pad">
            <span class="badge">IN STOCK</span>
            <h3 class="title">Cherry Click Pen — Copper</h3>
            <p class="muted">Vibrant cherry wood with aged copper finish.</p>
            <div class="price">$54.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:4,name:'Cherry Click Pen',price:54,icon:'🖊️',specs:'Copper Finish'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>

        <article class="card prod">
          <div class="img">✒️</div>
          <div class="card-pad">
            <span class="badge">IN STOCK</span>
            <h3 class="title">Oak Classic Twist — Gold</h3>
            <p class="muted">Sturdy oak construction with gold trim. Great gift option.</p>
            <div class="price">$52.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:5,name:'Oak Classic Twist',price:52,icon:'✒️',specs:'Gold Finish'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>

        <article class="card prod">
          <div class="img">🖋️</div>
          <div class="card-pad">
            <span class="badge">NEW</span>
            <h3 class="title">Rosewood Fountain — Chrome</h3>
            <p class="muted">Exotic rosewood with modern chrome appointments.</p>
            <div class="price">$88.00</div>
            <div style="display:flex;gap:8px;margin-top:12px">
              <button class="btn btn-primary" style="flex:1" onclick="Cart.add({id:6,name:'Rosewood Fountain',price:88,icon:'🖋️',specs:'Chrome Finish'})">Add to Cart</button>
              <a href="studio.html" class="btn btn-white" style="padding:14px 12px" title="Clone in Studio">🔧</a>
            </div>
          </div>
        </article>
      </div>
    </div>
  </section>

  <footer>
    <div class="container">
      <div class="cols">
        <div>
          <h5>Pops Pens & More</h5>
          <p style="color:#94a3b8;margin-top:8px">Quality writing instruments handcrafted with care.</p>
        </div>
        <div>
          <h5>Shop</h5>
          <a href="studio.html">Custom Pens</a>
          <a href="shop.html">In-Stock</a>
          <a href="collectibles.html">Collectibles</a>
        </div>
        <div>
          <h5>Help</h5>
          <a href="about.html">Contact Us</a>
          <a href="#">Shipping</a>
          <a href="#">Returns</a>
        </div>
      </div>
    </div>
  </footer>

  <script src="js/main.js"></script>
</body>
</html><!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Shopping Cart — Pops Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <link rel="stylesheet" href="css/styles.css">
  <style>
    .cart-layout{
      max-width:800px;
      margin:40px auto;
    }
    .cart-item{
      display:flex;
      gap:20px;
      padding:24px;
      background:#fff;
      border-radius:16px;
      border:1px solid var(--border);
      margin-bottom:16px;
      align-items:center;
    }
    .cart-item-icon{
      font-size:48px;
      width:80px;
      height:80px;
      background:#f9fafb;
      border-radius:12px;
      display:grid;
      place-items:center;
      border:1px solid var(--border);
    }
    .quantity-control{
      display:flex;
      align-items:center;
      gap:12px;
      margin-top:8px;
    }
    .quantity-btn{
      width:32px;
      height:32px;
      border:1px solid var(--border);
      background:#fff;
      border-radius:8px;
      cursor:pointer;
      font-weight:700;
    }
    .checkout-box{
      background:#fff;
      padding:24px;
      border-radius:16px;
      border:1px solid var(--border);
      margin-top:24px;
    }
  </style>
</head>
<body>

  <div class="topbar">
    <div class="container">
      <div class="topbar-inner">
        <a href="index.html" class="brand" style="text-decoration:none;color:#fff">
          <div class="logo">PP</div>
          <div>
            <h1>Pops Pens & More</h1>
            <small>Shopping Cart</small>
          </div>
        </a>
        
        <nav class="nav">
          <a href="index.html">Home</a>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">Shop</a>
          <a href="collectibles.html">Collectibles</a>
          <a href="about.html">About</a>
        </nav>
      </div>
    </div>
  </div>

  <div class="container cart-layout">
    <h1 class="section-title">Your Cart</h1>
    
    <div id="cartItems">
      <!-- Populated by JS -->
    </div>

    <div class="checkout-box" id="checkoutBox" style="display:none">
      <div style="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px">
        <span style="font-size:1.2rem;font-weight:700">Estimated Total</span>
        <span style="font-size:2rem;font-weight:900;color:var(--primary)" id="cartTotal">$0.00</span>
      </div>
      
      <div style="background:#f3f4f6;padding:16px;border-radius:12px;margin-bottom:20px">
        <div style="font-weight:700;margin-bottom:8px">🚚 Free Shipping</div>
        <div style="color:var(--muted);font-size:0.9rem">All orders over $50 ship free via USPS Priority</div>
      </div>

      <button class="btn btn-primary" style="width:100%;padding:18px;font-size:1.1rem" onclick="checkout()">
        Proceed to Checkout →
      </button>
      
      <div style="text-align:center;margin-top:16px">
        <a href="shop.html" style="color:var(--muted);text-decoration:none;font-weight:600">← Continue Shopping</a>
      </div>
    </div>
  </div>

  <footer style="margin-top:100px">
    <div class="container">
      <div class="cols">
        <div>
          <h5>Pops Pens & More</h5>
          <p style="color:#94a3b8">Handcrafted in the USA.</p>
        </div>
        <div>
          <h5>Links</h5>
          <a href="index.html">Home</a>
          <a href="shop.html">Shop</a>
          <a href="about.html">Contact</a>
        </div>
      </div>
    </div>
  </footer>

  <script src="js/main.js"></script>
  <script>
    function checkout() {
      alert('Demo checkout: Total is ' + document.getElementById('cartTotal').textContent + '\n\nIn production, this would integrate with Stripe/PayPal.');
    }
    
    // Show/hide checkout box based on cart contents
    if (Cart.items.length > 0) {
      document.getElementById('checkoutBox').style.display = 'block';
    }
  </script>
</body>
</html><!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>About Us — Pops Pens</title>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
  <link rel="stylesheet" href="css/styles.css">
  <style>
    .about-hero{
      background:linear-gradient(135deg,#f3f4f6,#e5e7eb);
      padding:60px 0;
      text-align:center;
    }
    .about-hero h1{font-size:2.5rem;font-weight:800;margin-bottom:16px}
    .contact-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:40px;
      margin-top:40px;
    }
    @media(max-width:768px){.contact-grid{grid-template-columns:1fr}}
    
    .form-group{margin-bottom:20px}
    .form-group label{display:block;font-weight:700;margin-bottom:6px}
    .form-group input,
    .form-group textarea{
      width:100%;
      padding:12px;
      border:1px solid var(--border);
      border-radius:12px;
      font-family:inherit;
    }
  </style>
</head>
<body>

  <div class="topbar">
    <div class="container">
      <div class="topbar-inner">
        <a href="index.html" class="brand" style="text-decoration:none;color:#fff">
          <div class="logo">PP</div>
          <div>
            <h1>Pops Pens & More</h1>
            <small>About Us</small>
          </div>
        </a>
        
        <nav class="nav">
          <a href="index.html">Home</a>
          <a href="studio.html">Design Studio</a>
          <a href="shop.html">Shop</a>
          <a href="collectibles.html">Collectibles</a>
          <a href="about.html">About</a>
          <a href="cart.html" class="cart-btn">
            🛒 Cart
            <span class="cart-count" style="display:none">0</span>
          </a>
        </nav>
      </div>
    </div>
  </div>

  <div class="about-hero">
    <div class="container">
      <h1>Crafted with Passion</h1>
      <p style="max-width:600px;margin:0 auto;color:var(--muted);font-size:1.1rem">
        We believe that writing instruments should be as unique as the people who use them. 
        Every pen is handcrafted in our workshop using sustainably sourced materials.
      </p>
    </div>
  </div>

  <section class="section">
    <div class="container">
      <div class="contact-grid">
        <div>
          <h2 class="section-title">Get in Touch</h2>
          <p class="section-desc">Have questions about a custom order? Want to collaborate? We'd love to hear from you.</p>
          
          <form onsubmit="event.preventDefault(); Cart.showToast('Message sent! We\\'ll reply within 24 hours.'); this.reset();">
            <div class="form-group">
              <label>Name</label>
              <input type="text" required>
            </div>
            <div class="form-group">
              <label>Email</label>
              <input type="email" required>
            </div>
            <div class="form-group">
              <label>Message</label>
              <textarea rows="5" required></textarea>
            </div>
            <button type="submit" class="btn btn-primary">Send Message</button>
          </form>
        </div>
        
        <div>
          <h2 class="section-title">Visit Our Shop</h2>
          <div class="card" style="padding:24px;margin-bottom:20px">
            <h3 style="margin-bottom:12px">📍 Location</h3>
            <p class="muted">123 Craftsman Way<br>Woodworking District<br>Portland, OR 97201</p>
          </div>
          
          <div class="card" style="padding:24px;margin-bottom:20px">
            <h3 style="margin-bottom:12px">📧 Email</h3>
            <p class="muted">hello@popspens.com<br>support@popspens.com</p>
          </div>
          
          <div class="card" style="padding:24px">
            <h3 style="margin-bottom:12px">📱 Follow Us</h3>
            <p class="muted">@popspens on Instagram, Twitter, and Facebook</p>
          </div>
        </div>
      </div>
    </div>
  </section>

  <footer>
    <div class="container">
      <div class="cols">
        <div>
          <h5>Pops Pens & More</h5>
          <p style="color:#94a3b8">Quality craftsmanship since 2020.</p>
        </div>
        <div>
          <h5>Navigate</h5>
          <a href="index.html">Home</a>
          <a href="shop.html">Shop</a>
          <a href="about.html">About</a>
        </div>
        <div>
          <h5>Legal</h5>
          <a href="#">Privacy Policy</a>
          <a href="#">Terms of Service</a>
        </div>
      </div>
    </div>
  </footer>

  <script src="js/main.js"></script>
</body>
</html>/*
Theme Name: Pops Pens - Flatsome Child
Description: Custom pen configurator child theme
Author: Your Name
Template: flatsome
Version: 1.0
*/

/* Import Flatsome parent styles */
@import url("../flatsome/style.css");

/* Custom Variables */
:root{
  --pp-primary:#6366f1;
  --pp-primary-dark:#5855eb;
  --pp-bg:#fafafa;
}

/* Pen Configurator Styles */
.pen-configurator{
  background: linear-gradient(135deg,#f3f4f6,#e5e7eb);
  border-radius: 16px;
  padding: 40px;
  margin: 30px 0;
}

.configurator-layout{
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: start;
}

@media(max-width: 768px){
  .configurator-layout{grid-template-columns: 1fr;}
}

.pen-preview-stage{
  background: #fff;
  border-radius: 20px;
  min-height: 500px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 20px 60px rgba(0,0,0,0.1);
  position: relative;
  overflow: hidden;
}

.pen-display{
  font-size: 120px;
  filter: drop-shadow(0 10px 20px rgba(0,0,0,0.2));
  transition: all 0.3s ease;
}

.configurator-controls{
  background: #fff;
  padding: 30px;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.05);
}

.option-group{
  margin-bottom: 25px;
  border-bottom: 1px solid #eee;
  padding-bottom: 20px;
}

.option-group label{
  display: block;
  font-weight: 700;
  margin-bottom: 10px;
  color: #111;
}

.option-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.option-btn{
  padding: 12px;
  border: 2px solid #e5e7eb;
  background: #fff;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
  font-weight: 600;
}

.option-btn:hover{border-color: var(--pp-primary);}
.option-btn.active{
  border-color: var(--pp-primary);
  background: #eef2ff;
  color: var(--pp-primary);
}

.color-dot{
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 6px;
  border: 2px solid rgba(0,0,0,0.1);
  vertical-align: middle;
}

.price-display{
  background: linear-gradient(135deg,#667eea,#764ba2);
  color: #fff;
  padding: 20px;
  border-radius: 12px;
  text-align: center;
  margin: 20px 0;
}

.price-amount{
  font-size: 2rem;
  font-weight: 800;
}

/* Custom Product Cards */
.product-grid-custom{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.pen-product-card{
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 6px rgba(0,0,0,0.05);
  transition: transform 0.2s;
}

.pen-product-card:hover{
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.1);
}

.pen-product-card .image-wrap{
  height: 250px;
  background: linear-gradient(135deg,#f3f4f6,#e5e7eb);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  position: relative;
}

.badge-custom{
  position: absolute;
  top: 15px;
  left: 15px;
  background: rgba(0,0,0,0.8);
  color: #fff;
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 700;
}

/* Header Customization */
.header-main{
  background: linear-gradient(135deg,#667eea 0%, #764ba2 100%) !important;
}

.header-main .nav > li > a{
  color: #fff !important;
  font-weight: 600;
}

.header-main .cart-icon strong{
  color: #fff;
}

/* Hero Section Override */
.ux-banner{
  background: linear-gradient(135deg,#667eea 0%, #764ba2 100%);
}

/* Checkout Customization */
.woocommerce-checkout .form-row{
  margin-bottom: 20px;
}

/* Engraving Field Styling */
.engraving-field input{
  width: 100%;
  padding: 12px;
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  font-weight: 600;
}