Small bathrooms are often written off as design compromises. We see them as an opportunity to prove otherwise. Every material and fitting has to earn its place. Our Cardiff clients wanted a calm, contemporary en-suite that fitted their budget without ever looking cheap, and that's exactly what we delivered.
Large terrazzo-effect tiles were used on the shower walls. Their scattered stone fragments introducing texture while staying timeless. Vertically ribbed tan tiles warm the vanity wall, and a soft blue vessel sink sits on crisp white floating shelves that keep the room feeling open. Matte black fixtures throughout add a sleek, contemporary edge, while a backlit mirror and a touch of greenery finish the space with real character.
Genuine mixed-media terrazzo would have blown the budget. So we sourced a cost-effective printed alternative that keeps every ounce of the look with none of the price tag. That's the kind of value engineering a knowledgeable designer brings to a project, and it's why even the smallest room in the house can become one of its most memorable.
If you'd like to discuss a new en suite shower room project or wet-room for your home, contact us today.
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rw06878FB9_569F_4D09_ADCE_4ACEEA22BD19',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rwEAD5CF18_5C50_444F_9196_DA7CADBE6151',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rw0602195D_4633_44E9_ADC9_A5D9FB6742D1',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rw008E5A6A_41DF_47BE_8077_93BAB86F4B15',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rw6CAA0158_F99A_45C3_BD3F_B34AA160739A',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rw06CA398A_CC83_4D2A_995E_B0F15447D3DB',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rwA378F7BD_9F56_4E07_B105_9B68D3638878',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />
{ if (window.innerWidth >= bp.minWidth) enabled = bp.enabled; });
if (!enabled) return;
$event.preventDefault();
const pic = $el.closest('picture');
const light = pic && pic.querySelector('source[data-lightbox-role="light"]');
const dark = pic && pic.querySelector('source[data-lightbox-role="dark"]');
$dispatch('image-lightbox-open', {
id: 'rwE727A01A_DD50_4CB4_AA29_2FF9755634CE',
src: (light && light.getAttribute('srcset')) || $el.currentSrc || $el.src,
srcDark: (dark && dark.getAttribute('srcset')) || null,
alt: $el.alt,
});
" oncontextmenu="return false" ondragstart="return false" onmousedown="return false" decoding="async" />