YOUR JOURNEY TO TIMELESS ELEGANCE

B E G I N S   H E R E

SINCE 1949,

SINCE 1949,

TT GEMS HAS BEEN A TRUSTED NAME IN THE
GEMSTONE INDUSTRY, SERVING

TT GEMS HAS BEEN A TRUSTED NAME IN THE GEMSTONE INDUSTRY, SERVING

jewellers, collectors and
gem lovers WORLDWIDE.

jewellers, collectors and gem lovers WORLDWIDE .

FEATURED STONES OF THE MONTH

EXPLORE OUR NEW COLLECTION

SRILANKAN BLUE SAPPHIRE

OVAL

9.46 CARAT

+

ZAMBIAN EMERALD

SQUARE CUSHION

16.71 CARAT

+

ZAMBIAN EMERALD PAIR

HEART

13.07 CARAT

+

ZAMBIAN EMERALD

ROUND

7.08 CARAT

+

ZAMBIAN EMERALD

ROUND

4.22 CARAT

+

MOZAMBICAN HEATED RUBY

OCTAGON

4.86 CARAT

+

NATURAL TANZANITE PAIR

ROUND

15.48 CARAT

+

NATURAL AQUAMARINE PAIR

OVAL

11.93 CARAT

+

NATURAL MORGANITE PAIR

PEAR

31.09 CARAT

+

NATURAL PERIDOT PAIR

CUSHION

12.79 CARAT

+
EXPLORE MORE
jQuery(function ($) { var $btn = $('#toggleProducts'); // Find the Elementor section/container then the products grid inside it var $section = $btn.closest('.has_eae_slider, .elementor-section, .e-parent'); var $grid = $section.find('.wd-products-element .products').first(); if (!$grid.length) return; // Wrap grid in a clipping container that we can height-animate if (!$grid.parent().hasClass('products-clip')) { $grid.wrap('
'); } var $clip = $grid.parent('.products-clip'); var total = $grid.children('.wd-product').length; if (total <= 10) { $btn.hide(); return; } // Helpers to compute heights function collapsedHeight() { var $items = $grid.children('.wd-product'); if ($items.length <= 10) return $grid.outerHeight(true); var $tenth = $items.eq(9); // index 9 = 10th // distance from top of grid to bottom of 10th card var bottom = $tenth.position().top + $tenth.outerHeight(true); return Math.ceil(bottom); } function expandedHeight() { // Temporarily ensure fully expanded to measure natural height var wasCollapsed = $grid.hasClass('is-collapsed'); if (wasCollapsed) $grid.removeClass('is-collapsed'); // Use scrollHeight for reliability on grids var h = Math.ceil($grid.get(0).scrollHeight); if (wasCollapsed) $grid.addClass('is-collapsed'); return h; } // Initialize collapsed state $grid.addClass('is-collapsed'); // We need to set an initial height on the clip after images load function setInitialHeight() { $clip.height(collapsedHeight()); } // Try after DOM ready + after images have likely laid out setInitialHeight(); $(window).on('load', setInitialHeight); // Toggle handler with height animation $btn.on('click', function (e) { e.preventDefault(); var isCollapsed = $grid.hasClass('is-collapsed'); if (isCollapsed) { // Expanding: animate clip from collapsed -> expanded $clip.height(collapsedHeight()); // ensure a known start requestAnimationFrame(function(){ $grid.removeClass('is-collapsed'); $clip.height(expandedHeight()); }); $btn.find('.wd-btn-text').text('EXPLORE LESS').end().addClass('is-open'); } else { // Collapsing: set current expanded height, then shrink to collapsed $clip.height(expandedHeight()); requestAnimationFrame(function(){ $grid.addClass('is-collapsed'); $clip.height(collapsedHeight()); }); $btn.find('.wd-btn-text').text('EXPLORE MORE').end().removeClass('is-open'); } }); // Recalculate heights on resize (debounced) var resizeTimer; $(window).on('resize', function () { clearTimeout(resizeTimer); resizeTimer = setTimeout(function () { if ($grid.hasClass('is-collapsed')) { $clip.height(collapsedHeight()); } else { $clip.height(expandedHeight()); } }, 120); }); });

OUR GEMSTONES

HARMONY BETWEEN NATURE & LUXURY

EMERALD (218)

RUBY (136)

BLUE SAPPHIRE (58)

YELLOW SAPPHIRE (53)

TANZANITE (44)

RUBELLITE TOURMALINE (46)

EMERALD (218)

RUBY (136)

BLUE SAPPHIRE (58)

YELLOW SAPPHIRE (53)

TANZANITE (44)

RUBELLITE TOURMALINE (46)

TSAVORITE (13)

MULTI TOURMALINE (5)

PERIDOT (37)

EMERALD (26)

Tanzanite (13)

MORGANITE (4)

Aquamarine (17)

Rubellite Tourmaline (18)

Tourmaline

EMERALD (218)

RUBY (136)

BLUE SAPPHIRE (58)

YELLOW SAPPHIRE (53)

TANZANITE (44)

RUBELLITE TOURMALINE (46)

TESTIMONIALS FROM OUR CUSTOMERS