Gallery

<!-- Gallery -->
<div class="gallery">
    <div class="gallery_header">
        <div class="fs-row">
            <div class="fs-cell">
                <div class="fs-mini">
                    <div class="gallery_header_inner">
                        <h2 class="gallery_title">Gallery</h2>
                        <div class="gallery_description">
                            <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Curabitur blandit tempus porttitor. Etiam porta sem malesuada magna mollis euismod. Donec ullamcorper nulla non metus auct.</p>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="gallery_body">
        <div class="fs-row">
            <div class="fs-cell">
                <div class="gallery_body_inner">
                    <div class="gallery_items">
                        <div class="js-observable gallery_row grid_layout_70_30">
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <a class="js-video-appender video_feature_appender" href="https://www.youtube.com/embed/cD4Q11_f_5U">
                                            <span class="video_feature_appender_inner">
                                                <span class="video_feature_appender_icon">
                                                    <i class="fa-regular fa-play"></i>
                                                </span>
                                                <span class="video_feature_appender_label">Play</span>

                                            </span>
                                        </a> <span class="gallery_item_media gallery_item_size_wide">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/1440x810/1 1440w, https://images.fastspot.com/merced/1220x686/1 1220w, https://images.fastspot.com/merced/980x552/1 980w, https://images.fastspot.com/merced/740x416/1 740w, https://images.fastspot.com/merced/500x282/1 500w, https://images.fastspot.com/merced/300x169/1 300w" src="https://images.fastspot.com/merced/300x169/1" alt="" loading="lazy" width="300" height="169">
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Curabitur blandit tempus porttitor. Etiam porta sem malesuada magna mollis euismod. Donec <a href="#">ullamcorper nulla non metus auctor fringilla</a>.</p>
                                    </figcaption>
                                </figure>
                            </div>
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_portrait">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/735x980/2 735w, https://images.fastspot.com/merced/555x740/2 555w, https://images.fastspot.com/merced/375x500/2 375w, https://images.fastspot.com/merced/225x300/2 225w" src="https://images.fastspot.com/merced/225x300/2" alt="" loading="lazy" width="225" height="300">
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus.</p>
                                    </figcaption>
                                </figure>
                            </div>
                        </div>
                        <div class="js-observable gallery_row grid_layout_50_50">
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_wide">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/980x552/3 980w, https://images.fastspot.com/merced/740x416/3 740w, https://images.fastspot.com/merced/500x282/3 500w, https://images.fastspot.com/merced/300x169/3 300w" src="https://images.fastspot.com/merced/300x169/3" alt="" loading="lazy" width="300" height="169">
                                        </span>
                                    </span>
                                </figure>
                            </div>
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_wide">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/980x552/4 980w, https://images.fastspot.com/merced/740x416/4 740w, https://images.fastspot.com/merced/500x282/4 500w, https://images.fastspot.com/merced/300x169/4 300w" src="https://images.fastspot.com/merced/300x169/4" alt="" loading="lazy" width="300" height="169">
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus.</p>
                                    </figcaption>
                                </figure>
                            </div>
                        </div>
                        <div class="js-observable gallery_row grid_layout_100">
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_wide">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/1440x810/1 1440w, https://images.fastspot.com/merced/1220x686/1 1220w, https://images.fastspot.com/merced/980x552/1 980w, https://images.fastspot.com/merced/740x416/1 740w, https://images.fastspot.com/merced/500x282/1 500w, https://images.fastspot.com/merced/300x169/1 300w" src="https://images.fastspot.com/merced/300x169/1" alt="" loading="lazy" width="300" height="169">
                                            <iframe class="gallery_item_iframe" width="560" height="315" src="https://www.youtube.com/embed/cD4Q11_f_5U" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" title="The Best Practices for Organizing Dirty CSS + 1 Hot Pepper" allowfullscreen></iframe>
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Donec sodales sagittis magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nunc.</p>
                                    </figcaption>
                                </figure>
                            </div>
                        </div>
                        <div class="js-observable gallery_row grid_layout_30_70">
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_portrait">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/735x980/2 735w, https://images.fastspot.com/merced/555x740/2 555w, https://images.fastspot.com/merced/375x500/2 375w, https://images.fastspot.com/merced/225x300/2 225w" src="https://images.fastspot.com/merced/225x300/2" alt="" loading="lazy" width="225" height="300">
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Curabitur blandit tempus porttitor. Etiam porta sem malesuada magna mollis euismod. Donec <a href="#">ullamcorper nulla non metus auctor fringilla</a>.</p>
                                    </figcaption>
                                </figure>
                            </div>
                            <div class="gallery_item">
                                <figure class="gallery_item_figure">
                                    <span class="gallery_item_figure_media">
                                        <span class="gallery_item_media gallery_item_size_wide">

                                            <img class="gallery_item_image" srcset="https://images.fastspot.com/merced/1440x810/3 1440w, https://images.fastspot.com/merced/1220x686/3 1220w, https://images.fastspot.com/merced/980x552/3 980w, https://images.fastspot.com/merced/740x416/3 740w, https://images.fastspot.com/merced/500x282/3 500w, https://images.fastspot.com/merced/300x169/3 300w" src="https://images.fastspot.com/merced/300x169/3" alt="" loading="lazy" width="300" height="169">
                                        </span>
                                    </span>
                                    <figcaption class="gallery_item_caption">
                                        <p>Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus.</p>
                                    </figcaption>
                                </figure>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<!-- END: Gallery -->
{#
	{% include '@component-gallery' with {
		title: 'Title',
		description: 'Description',
		rows: [
			{
				layout: '100',
				items: [
					{
						image: '1',
						alt: '',
						video: {
							service: '',
							id: '',
							title: ''
						},
						caption: 'caption'
					}
				]
			}
		]
	} %}
#}

{%
	set layout_sizes = {
		"70_30": [
			"wide",
			"portrait"
		],
		"30_70": [
			"portrait",
			"wide"
		],
		"50_50": [
			"wide",
			"wide"
		],
		"100": [
			"wide"
		]
	}
%}

<!-- Gallery -->
<div class="gallery">
	{% if title or description %}
		<div class="gallery_header">
			<div class="fs-row">
				<div class="fs-cell">
					<div class="fs-mini">
						<div class="gallery_header_inner">
							{% if title %}
								<h2 class="gallery_title">{{ title }}</h2>
							{% endif %}
							{% if description %}
								<div class="gallery_description">
									<p>{{ description }}</p>
								</div>
							{% endif %}
						</div>
					</div>
				</div>
			</div>
		</div>
	{% endif %}
	<div class="gallery_body">
		<div class="fs-row">
			<div class="fs-cell">
				<div class="gallery_body_inner">
					<div class="gallery_items">
						{% for row in rows %}
							<div class="js-observable gallery_row grid_layout_{{ row.layout }}">
								{% for item in row.items %}
									{% set img_size = attribute(layout_sizes, row.layout)[ loop.index0 ] %}
									<div class="gallery_item">
										<figure class="gallery_item_figure">
											<span class="gallery_item_figure_media">
												{% if item.appender %}
													{% include '@component-video-appender' %}
												{% endif %}
												<span class="gallery_item_media gallery_item_size_{{ img_size }}">
													{% if img_size == "wide" %}
														{% if row.layout == "50_50" %}
															{% include '@component-image' with {
																class: 'gallery_item',
																alt: '',
																image: item.image,
																loading: 'lazy',
																sources: [
																	img.wide.med,
																	img.wide.sml,
																	img.wide.xsml,
																	img.wide.xxsml
																]
															} %}
														{% else %}
															{% include '@component-image' with {
																class: 'gallery_item',
																alt: '',
																image: item.image,
																loading: 'lazy',
																sources: [
																	img.wide.xlrg,
																	img.wide.lrg,
																	img.wide.med,
																	img.wide.sml,
																	img.wide.xsml,
																	img.wide.xxsml
																]
															} %}
														{% endif %}
													{% else %}
														{% include '@component-image' with {
															class: 'gallery_item',
															alt: '',
															image: item.image,
															loading: 'lazy',
															sources: [
																img.portraitFull.med,
																img.portraitFull.sml,
																img.portraitFull.xsml,
																img.portraitFull.xxsml
															]
														} %}
													{% endif %}
													{% if item.video.service == 'youtube' %}
														<iframe class="gallery_item_iframe" width="560" height="315" src="https://www.youtube.com/embed/{{ item.video.id }}" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture"{% if item.video.title %} title="{{ item.video.title }}"{% endif %} allowfullscreen></iframe>
													{% elseif item.video.service == 'vimeo' %}
														<iframe class="gallery_item_iframe" src="https://player.vimeo.com/video/{{ item.video.id }}?color=ffffff&title=0&byline=0&portrait=0" frameborder="0" allow="autoplay; fullscreen"{% if item.video.title %} title="{{ item.video.title }}"{% endif %} allowfullscreen></iframe>
														<script src="https://player.vimeo.com/api/player.js"></script>
													{% endif %}
												</span>
											</span>
											{% if item.caption %}
												<figcaption class="gallery_item_caption">
													<p>{{ item.caption }}</p>
												</figcaption>
											{% endif %}
										</figure>
									</div>
								{% endfor %}
							</div>
						{% endfor %}
					</div>
				</div>
			</div>
		</div>
	</div>
</div>
<!-- END: Gallery -->

No notes defined.