:root { --primary: #0f172a; --primary-light: #1e293b; --accent: #0ea5e9; --accent-hover: #0284c7; --text: #334155; --text-light: #64748b; --bg: #ffffff; --bg-alt: #f8fafc; --border: #e2e8f0; --radius: 8px; --shadow: 0 1px 3px rgba(0,0,0,.08); --shadow-md: 0 4px 12px rgba(0,0,0,.1); --transition: .25s ease; } *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; } body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: var(--text); line-height: 1.6; background: var(--bg); } a { text-decoration: none; color: inherit; transition: var(--transition); } ul { list-style: none; } img { max-width: 100%; display: block; } .container { max-width: 1280px; margin: 0 auto; padding: 0 24px; } .btn { display: inline-flex; align-items: center; justify-content: center; padding: 10px 22px; border-radius: var(--radius); font-weight: 600; font-size: .95rem; border: 1px solid transparent; cursor: pointer; transition: var(--transition); gap: 8px; } .btn-primary { background: var(--accent); color: #fff; } .btn-primary:hover { background: var(--accent-hover); transform: translateY(-1px); box-shadow: var(--shadow-md); } .btn-outline { border-color: var(--border); color: var(--primary); background: transparent; } .btn-outline:hover { border-color: var(--accent); color: var(--accent); } .section { padding: 80px 0; } .section-header { text-align: center; margin-bottom: 48px; } .section-header h2 { font-size: 2rem; font-weight: 700; color: var(--primary); margin-bottom: 12px; } .section-header p { color: var(--text-light); max-width: 640px; margin: 0 auto; } .tag { display: inline-block; padding: 4px 12px; border-radius: 99px; font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .5px; } .tag-blue { background: #e0f2fe; color: #0369a1; } .tag-green { background: #dcfce7; color: #15803d; } .tag-amber { background: #fef3c7; color: #b45309; } /* HEADER */ .site-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.95); backdrop-filter: blur(8px); border-bottom: 1px solid var(--border); } .header-top { background: var(--primary); color: #fff; font-size: .82rem; padding: 8px 0; } .header-top .container { display: flex; justify-content: space-between; align-items: center; } .header-top a { color: #cbd5e1; } .header-top a:hover { color: #fff; } .main-header { padding: 16px 0; } .main-header .container { display: flex; justify-content: space-between; align-items: center; gap: 24px; } .logo { font-size: 1.5rem; font-weight: 800; color: var(--primary); display: flex; align-items: center; gap: 10px; } .logo span { color: var(--accent); } .nav-desktop { display: flex; gap: 28px; } .nav-desktop a { font-weight: 500; color: var(--text); position: relative; } .nav-desktop a:hover, .nav-desktop a.active { color: var(--accent); } .nav-desktop a::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 2px; background: var(--accent); transition: var(--transition); } .nav-desktop a:hover::after { width: 100%; } .header-actions { display: flex; align-items: center; gap: 16px; } .icon-btn { width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--border); display: flex; align-items: center; justify-content: center; cursor: pointer; background: transparent; transition: var(--transition); } .icon-btn:hover { border-color: var(--accent); color: var(--accent); } .mobile-toggle { display: none; background: none; border: none; cursor: pointer; } .mobile-toggle span { display: block; width: 24px; height: 2px; background: var(--primary); margin: 5px 0; transition: var(--transition); } .nav-mobile { display: none; flex-direction: column; padding: 20px 0; border-top: 1px solid var(--border); } .nav-mobile a { padding: 12px 0; font-weight: 500; border-bottom: 1px solid var(--border); } .nav-mobile.active { display: flex; } /* HERO */ .hero { background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%); padding: 80px 0 60px; } .hero .container { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; } .hero h1 { font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 800; color: var(--primary); line-height: 1.15; margin-bottom: 16px; } .hero p { font-size: 1.1rem; color: var(--text-light); margin-bottom: 28px; max-width: 520px; } .hero-actions { display: flex; gap: 12px; flex-wrap: wrap; } .hero-visual { background: #fff; border-radius: 16px; padding: 32px; box-shadow: var(--shadow-md); display: flex; align-items: center; justify-content: center; min-height: 320px; position: relative; overflow: hidden; } .hero-visual::before { content: 'β˜•'; position: absolute; font-size: 12rem; opacity: .06; right: -20px; bottom: -20px; transform: rotate(-12deg); } .hero-visual-inner { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; width: 100%; } .hero-card { background: var(--bg-alt); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; text-align: center; } .hero-card h4 { font-size: .95rem; font-weight: 600; margin-bottom: 4px; } .hero-card p { font-size: .82rem; color: var(--text-light); margin: 0; } /* OVERVIEW */ .overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; } .overview-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 24px; transition: var(--transition); } .overview-card:hover { border-color: var(--accent); transform: translateY(-2px); box-shadow: var(--shadow-md); } .overview-icon { width: 48px; height: 48px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.4rem; margin-bottom: 16px; } .overview-card h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: 8px; color: var(--primary); } .overview-card p { font-size: .92rem; color: var(--text-light); } /* PRODUCTS */ .products { background: var(--bg-alt); } .product-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; } .product-card { background: #fff; border-radius: var(--radius); overflow: hidden; border: 1px solid var(--border); transition: var(--transition); } .product-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); } .product-img { height: 180px; background: #f8fafc; display: flex; align-items: center; justify-content: center; font-size: 3.5rem; border-bottom: 1px solid var(--border); } .product-body { padding: 20px; } .product-body h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: 8px; color: var(--primary); } .product-body p { font-size: .9rem; color: var(--text-light); margin-bottom: 16px; } .product-meta { display: flex; justify-content: space-between; align-items: center; } .product-link { color: var(--accent); font-weight: 600; font-size: .9rem; } .product-link:hover { text-decoration: underline; } .product-cat { font-size: .78rem; color: var(--text-light); background: var(--bg-alt); padding: 4px 10px; border-radius: 99px; } /* SOLUTIONS */ .solutions-tabs { display: flex; justify-content: center; gap: 8px; margin-bottom: 32px; flex-wrap: wrap; } .tab-btn { padding: 10px 20px; border-radius: 99px; border: 1px solid var(--border); background: transparent; cursor: pointer; font-weight: 500; transition: var(--transition); } .tab-btn.active, .tab-btn:hover { background: var(--accent); color: #fff; border-color: var(--accent); } .tab-content { display: none; } .tab-content.active { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; } .tab-visual { background: var(--bg-alt); border-radius: 12px; height: 320px; display: flex; align-items: center; justify-content: center; font-size: 4rem; border: 1px solid var(--border); } .tab-text h3 { font-size: 1.5rem; font-weight: 700; margin-bottom: 12px; color: var(--primary); } .tab-text p { margin-bottom: 16px; color: var(--text-light); } .tab-text ul { margin: 16px 0; } .tab-text li { position: relative; padding-left: 24px; margin-bottom: 10px; } .tab-text li::before { content: 'βœ“'; position: absolute; left: 0; color: var(--accent); font-weight: 700; } /* ABOUT */ .about-content { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; } .about-text h2 { font-size: 2rem; font-weight: 700; margin-bottom: 16px; color: var(--primary); } .about-text p { margin-bottom: 16px; color: var(--text-light); } .cert-badges { display: flex; gap: 16px; margin-top: 24px; flex-wrap: wrap; } .cert-badge { display: flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--border); border-radius: var(--radius); font-size: .85rem; font-weight: 600; } .about-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; } .stat-card { background: var(--bg-alt); border: 1px solid var(--border); border-radius: var(--radius); padding: 24px; text-align: center; } .stat-card h3 { font-size: 1.8rem; font-weight: 800; color: var(--accent); } .stat-card p { font-size: .9rem; color: var(--text-light); } /* CONTACT */ .contact { background: var(--bg-alt); } .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; } .contact-info h3 { font-size: 1.4rem; font-weight: 700; margin-bottom: 16px; color: var(--primary); } .contact-info p { margin-bottom: 20px; color: var(--text-light); } .contact-list li { display: flex; gap: 12px; margin-bottom: 14px; } .contact-list span { color: var(--accent); } .contact-form { background: #fff; padding: 32px; border-radius: var(--radius); border: 1px solid var(--border); } .form-group { margin-bottom: 16px; } .form-group label { display: block; font-weight: 500; margin-bottom: 6px; font-size: .92rem; } .form-group input, .form-group select, .form-group textarea { width: 100%; padding: 10px 14px; border: 1px solid var(--border); border-radius: var(--radius); font-family: inherit; font-size: .95rem; transition: var(--transition); } .form-group input:focus, .form-group select:focus, .form-group textarea:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(14,165,233,.15); } .form-group textarea { min-height: 100px; resize: vertical; } .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; } /* FOOTER */ .site-footer { background: var(--primary); color: #cbd5e1; padding: 64px 0 0; } .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 48px; } .footer-brand .logo { color: #fff; margin-bottom: 16px; } .footer-brand p { font-size: .92rem; line-height: 1.7; max-width: 320px; } .footer h4 { color: #fff; font-size: .95rem; font-weight: 700; margin-bottom: 16px; text-transform: uppercase; letter-spacing: .5px; } .footer ul li { margin-bottom: 10px; } .footer ul li a { font-size: .92rem; } .footer ul li a:hover { color: #fff; padding-left: 4px; } .footer-bottom { border-top: 1px solid #334155; padding: 24px 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; font-size: .85rem; } .footer-social { display: flex; gap: 12px; } .footer-social a { width: 36px; height: 36px; border-radius: 50%; border: 1px solid #475569; display: flex; align-items: center; justify-content: center; } .footer-social a:hover { background: var(--accent); border-color: var(--accent); color: #fff; } /* RESPONSIVE */ @media (max-width: 992px) { .hero .container { grid-template-columns: 1fr; text-align: center; } .hero p { margin-left: auto; margin-right: auto; } .hero-actions { justify-content: center; } .tab-content.active { grid-template-columns: 1fr; } .about-content { grid-template-columns: 1fr; } .contact-grid { grid-template-columns: 1fr; } .footer-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 768px) { .nav-desktop { display: none; } .mobile-toggle { display: block; } .header-top { display: none; } .form-row { grid-template-columns: 1fr; } .footer-grid { grid-template-columns: 1fr; } .footer-bottom { justify-content: center; text-align: center; } }
Established 2015

Reliable Beverage Packaging for Modern Businesses

Cup Source provides wholesale cupware, bowls, lids, and custom packaging solutions designed for food service operators, retailers, and distributors.

Hot Cups

8oz – 20oz Insulated

Cold Cups

Clarity & Dome Lids

Takeaway Bowls

Soup, Salad & Noodle

Custom Print

Full-Color Branding

Why Operators Choose Cup Source

We streamline your supply chain with consistent quality, transparent pricing, and dedicated account support.

πŸ“¦

Nationwide Warehousing

Strategic distribution centers ensure faster lead times and reduced freight costs for your location.

♻️

Sustainable Materials

Compostable, recyclable, and BPA-free options to help you meet environmental compliance and customer expectations.

🏷️

Private Label Services

From die creation to bulk printing, we handle the entire custom packaging process with low minimums.

πŸ“Š

B2B Account Management

Dedicated reps, net-30 terms for qualified buyers, and real-time inventory tracking through our portal.

Product Catalog

Explore our complete range of single-serve containers, lids, and accessories built for commercial use.

πŸ₯€
Hot Beverages

Double-Wall Paper Cups

PE-lined with peelable lids. Available in 8, 12, 16, and 20 oz with tamper-resistant options.

View Specs β†’ Bulk Only
🧊
Cold Beverages

Crystal PET Cold Cups

High clarity, impact-resistant cups with flat or dome lids. Ideal for smoothies and iced coffee.

View Specs β†’ Ready to Ship
πŸ₯£
Food Service

Wheat Straw Takeaway Bowls

Eco-friendly, grease-resistant bowls with vented lids. Microwave and dishwasher safe.

View Specs β†’ Sustainable
πŸ”§
Accessories

Lids, Sleeves & Stickers

Compatible fit guarantees for all major cup brands. Custom sleeve printing available.

Download Full Catalog (PDF)

Industry Solutions

Tailored packaging programs designed for your operational scale and compliance requirements.

β˜•

Specialty Beverage Packaging

From espresso shots to large-format cold brews, our thermal-rated cups maintain temperature while reducing condensation and slip hazards.

  • Double & triple-wall insulation options
  • Custom sleeve printing for seasonal menus
  • Compostable PLA lids meeting local ordinances
  • Volume pricing for multi-location chains
Request Sample Kit
🍜

Foodservice & Takeout Containers

Grease-resistant bowls and secure lid systems designed for hot and cold dishes, soups, and grain bowls.

  • Leak-resistant vented lids
  • Sturdy handles for delivery drivers
  • FDA-compliant food-grade materials
  • Consistent batch sizing for kitchen workflow
Get Quote
πŸ“¦

Retail & Wholesale Distribution

Shelf-ready packaging with UPC labeling, pallet configurations, and white-label programs for regional distributors.

  • GTIN/UPC registration support
  • Flexible MOQs for new SKUs
  • Drop-ship & cross-dock capabilities
  • Seasonal & promotional bundling
Partner Inquiry
πŸŽͺ

Events, Festivals & Catering

Durable, stackable cups with rapid fulfillment for large-scale gatherings, concerts, and corporate functions.

  • Crush-resistant cold cups
  • Branded event sleeves & stickers
  • Expedited shipping & overflow inventory
  • Post-event recycling guidance
Event Planning

Committed to Quality & Reliability

Since 2015, Cup Source has partnered with food service operators, distributors, and retailers to deliver packaging that performs under pressure. We prioritize material integrity, consistent manufacturing, and transparent supply chain practices.

Our production partners maintain ISO 9001 certification, and all food-contact materials are FDA-compliant. We continuously invest in sustainable alternatives without compromising durability or cost-efficiency.

βœ“ ISO 9001
βœ“ FDA Compliant
βœ“ BPA-Free
βœ“ Carbon Neutral Shipping

2,000+

Active Accounts

10M+

Units Shipped/Month

99.2%

On-Time Delivery

24h

Avg. Quote Response

Get in Touch

Whether you need a one-time bulk order or a long-term supply agreement, our team is ready to assist.

Contact Information

Reach out for pricing, samples, or account setup. We typically respond within 4 business hours.

  • πŸ“ 1200 Commerce Dr, Suite 400, Dallas, TX 75201
  • πŸ“ž 1-800-555-0199 (Mon–Fri, 8am–6pm CT)
  • βœ‰οΈ sales@cupsource.com
  • 🌐 support@cupsource.com