/**
Theme Name: Astra
Theme URI: https://wpastra.com/
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: The Astra WordPress theme is lightning-fast and highly customizable. It has over 1 million downloads and the only theme in the world with 6,000+ five-star reviews! It’s ideal for professional web designers, solopreneurs, small businesses, eCommerce, membership sites and any type of website. It offers special features and templates so it works perfectly with all page builders like Spectra, Elementor, Beaver Builder, etc. Fast performance, clean code, mobile-first design and schema markup are all built-in, making the theme exceptionally SEO-friendly. It’s fully compatible with WooCommerce, SureCart and other eCommerce plugins and comes with lots of store-friendly features and templates. Astra also provides expert support for free users. A dedicated team of fully trained WordPress experts are on hand to help with every aspect of the theme. Try the live demo of Astra: https://zipwp.org/themes/astra/
Version: 4.13.10
Requires at least: 5.3
WC requires at least: 3.0
WC tested up to: 11.0.1
Tested up to: 7.1
Requires PHP: 5.3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra
Domain Path: /languages
Tags: custom-menu, custom-logo, entertainment, one-column, two-columns, left-sidebar, e-commerce, right-sidebar, custom-colors, editor-style, featured-images, full-width-template, microformats, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready, blog
AMP: true

Astra WordPress Theme, Copyright 2020 WPAstra.
Astra is distributed under the terms of the GNU GPL.

Astra is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of.
Nicolas Gallagher and Jonathan Neal https://necolas.github.com/normalize.css/

Astra icon font is based on IcoMoon-Free vector icon by Keyamoon.
IcoMoon-Free vector icon distributed under terms of CC BY 4.0 or GPL. (https://creativecommons.org/licenses/by/4.0/ or https://www.gnu.org/licenses/gpl.html)
Source: http://keyamoon.com/

Flexibility is a JavaScript polyfill for Flexbox By Jonathan Neal, 10up. (https://github.com/jonathantneal/flexibility)
Licensed under MIT ( https://github.com/jonathantneal/flexibility/blob/master/LICENSE.md )

Screenshot image is a collage of actual sites created using the Astra WordPress Theme.

Icons used in the Screenshot image are all licensed under Creative Commons ( CC BY 4.0 ) License ( https://fontawesome.com/license/free )
https://fontawesome.com/v5.15/icons/store?style=solid
https://fontawesome.com/v5.15/icons/shopping-cart?style=solid
https://fontawesome.com/v5.15/icons/pen-square?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid
https://fontawesome.com/v5.15/icons/user-tie?style=solid

Illustrations used in the Screenshot images are all licensed under Creative Commons ( CC0 ) License ( https://gumroad.com/l/humaaans )
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/standing-24.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/sitting-2.png

Hand-drawn illustrations used are created by Brainstorm Force and released under Creative Commons ( CC0 ) License.
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/girl-with-image-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/boy-with-code-container.png
https://websitedemos.net/web-design-agency-08/wp-content/uploads/sites/796/2021/05/web-browser.png

The same site as screenshot can be imported from here https://websitedemos.net/web-design-agency-08/.

For more information, refer to this document on how to create a page like in the screenshot - https://wpastra.com/docs/replicating-the-screenshot/.

Astra default breadcrumb is based on Breadcrumb Trail by Justin Tadlock. (https://github.com/justintadlock/breadcrumb-trail)
Breadcrumb Trail is distributed under the terms of the GNU GPL v2 or later.

Astra local fonts feature is based on Webfonts Loader by WordPress Themes Team (WPTT). (https://github.com/WPTT/webfont-loader)
Licensed under MIT ( https://github.com/WPTT/webfont-loader/blob/master/LICENSE )

/* Note: The CSS files are loaded from assets/css/ folder. */

/* -------------------------------------------------------------------------
   ZBOM Manila homepage
   ------------------------------------------------------------------------- */
.page-template-template-homepage #masthead,
.page-template-template-homepage #ast-desktop-header,
.page-template-template-homepage #ast-mobile-header,
.page-template-template-homepage .site-footer,
.page-template-template-homepage #colophon,
.page-template-template-homepage .entry-header,
.page-template-template-homepage .ast-breadcrumbs-wrapper,
.page-template-template-homepage #ast-scroll-top,
.page-template-template-homepage .comments-area {
	display: none !important;
}

.page-template-template-homepage .site-content,
.page-template-template-homepage .site-content > .ast-container,
.page-template-template-homepage #primary,
.page-template-template-homepage .ast-article-single,
.page-template-template-homepage .entry-content {
	max-width: none;
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
	border: 0;
}

.page-template-template-homepage.ast-separate-container,
.page-template-template-homepage.ast-separate-container .site-content,
.page-template-template-homepage.ast-plain-container {
	background: #fff;
}

.page-template-template-homepage.zbom-nav-open,
.page-template-template-homepage.zbom-modal-open {
	overflow: hidden;
}

.zbom-home {
	--zbom-dark: #111111;
	--zbom-text: #1a1a1a;
	--zbom-muted: #5c5c5c;
	--zbom-line: #e6e6e6;
	--zbom-soft: #f5f5f5;
	--zbom-white: #ffffff;
	--zbom-radius: 20px;
	--zbom-max: 1180px;
	color: var(--zbom-text);
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 16px;
	line-height: 1.65;
	background: var(--zbom-white);
}

.zbom-home h1,
.zbom-home h2,
.zbom-home h3 {
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-weight: 700;
	line-height: 1.15;
	color: var(--zbom-dark);
	margin: 0 0 16px;
}

.zbom-home p {
	margin: 0 0 16px;
}

.zbom-wrap {
	width: min(var(--zbom-max), calc(100% - 48px));
	margin: 0 auto;
}

.zbom-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 30px;
	border-radius: var(--zbom-radius);
	border: 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.zbom-btn:hover {
	transform: translateY(-1px);
	text-decoration: none;
}

.zbom-btn--light {
	background: var(--zbom-white);
	color: var(--zbom-dark);
}

.zbom-btn--dark {
	background: var(--zbom-dark);
	color: var(--zbom-white);
}

.zbom-btn--sm {
	min-height: 40px;
	padding: 10px 22px;
	font-size: 13px;
}

.zbom-kicker {
	margin: 0 0 10px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--zbom-muted);
}

.zbom-section-head {
	max-width: 640px;
	margin: 0 auto 40px;
	text-align: center;
}

.zbom-section-head h2 {
	font-size: clamp(28px, 4vw, 40px);
}

.zbom-section-head p {
	color: var(--zbom-muted);
}

.zbom-section-cta {
	margin-top: 36px;
	text-align: center;
}

/* Header */
.zbom-header {
	position: sticky;
	top: 0;
	z-index: 40;
	display: flex;
	align-items: stretch;
	background: #1a1a1a;
	color: var(--zbom-white);
}

.zbom-header.is-scrolled {
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.zbom-header__inner {
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 32px;
	min-height: 92px;
}

.zbom-header__logo {
	flex: 0 0 auto;
	align-self: center;
	line-height: 0;
}

.zbom-header__logo img {
	display: block;
	height: 64px;
	width: auto;
}

.zbom-header__wordmark {
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--zbom-white);
}

.zbom-header__right {
	display: flex;
	align-items: stretch;
	gap: 36px;
}

.zbom-nav {
	display: flex;
	align-items: center;
}

.zbom-nav__list {
	display: flex;
	align-items: center;
	gap: 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.zbom-nav a {
	color: var(--zbom-white);
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.01em;
	text-decoration: none;
}

.zbom-nav a:hover {
	opacity: 0.78;
}

.zbom-nav .current-menu-item > a {
	font-weight: 700;
	opacity: 1;
}

.zbom-header__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: stretch;
	min-height: 92px;
	height: auto;
	padding: 0 36px;
	border: 0;
	border-radius: 0;
	background: var(--zbom-white);
	color: #111;
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	white-space: nowrap;
}

.zbom-header__cta:hover {
	background: #f2f2f2;
	color: #111;
	text-decoration: none;
}

.zbom-menu-toggle {
	display: none;
	align-self: center;
	width: 42px;
	height: 42px;
	padding: 10px;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.zbom-menu-toggle span {
	display: block;
	height: 2px;
	margin: 5px 0;
	background: var(--zbom-white);
}

/* Hero */
.zbom-hero {
	--zbom-hero-inset: max(24px, calc((100% - var(--zbom-max)) / 2));
	position: relative;
	min-height: calc(100vh - 92px);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: center;
	padding: 72px 0 150px;
}

.zbom-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.62) 0%, rgba(0, 0, 0, 0.28) 48%, rgba(0, 0, 0, 0.12) 100%);
}

.zbom-hero__content {
	position: relative;
	z-index: 1;
	max-width: 560px;
	margin-left: var(--zbom-hero-inset);
	color: var(--zbom-white);
}

.zbom-hero h1 {
	font: normal normal normal 50px/65px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #fff;
	margin-bottom: 18px;
}

.zbom-hero p {
	max-width: 480px;
	margin-bottom: 28px;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.75;
	color: rgba(255, 255, 255, 0.92);
}

.zbom-hero__stat {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 3;
	background: var(--zbom-white);
	border-top-right-radius: 48px;
	padding: 18px 22px 0 var(--zbom-hero-inset);
}

.zbom-hero__stat-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 56px;
	min-width: 440px;
	padding: 18px 32px 18px 22px;
	border-radius: 22px;
	background: #1a1a1a;
	color: var(--zbom-white);
}

.zbom-hero__stat-flags {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}

.zbom-hero__stat-flags-row {
	display: flex;
	align-items: center;
	gap: 8px;
}

.zbom-hero__stat-flags-row img {
	display: block;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	object-fit: cover;
	border: 0;
	background: #333;
}

.zbom-hero__stat-flags span {
	font-size: 13px;
	font-weight: 500;
	line-height: 1.3;
	white-space: nowrap;
}

.zbom-hero__stat-num {
	flex: 0 0 auto;
	text-align: left;
}

.zbom-hero__stat-num strong {
	display: block;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.02em;
}

.zbom-hero__stat-num span {
	display: block;
	margin-top: 2px;
	font-size: 13px;
	font-weight: 500;
}

/* Video */
.zbom-video-sec {
	padding: 48px 0 40px;
}

.zbom-video {
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	overflow: hidden;
	border-radius: 18px;
}

.zbom-video[disabled] {
	cursor: default;
}

.zbom-video img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.zbom-video__play {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
}

/* About */
.zbom-about {
	padding: 72px 0 90px;
}

.zbom-about__grid {
	display: grid;
	grid-template-columns: 0.9fr 1.1fr;
	gap: 64px;
	align-items: center;
}

.zbom-about__logo img {
	display: block;
	width: 100%;
	max-width: 420px;
	height: auto;
}

.zbom-about__copy h2 {
	font: normal normal 500 50px/70px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #1e1e1e;
}

.zbom-about__text,
.zbom-about__text p {
	color: var(--zbom-muted);
}

/* Vision */
.zbom-vision {
	position: relative;
	background: var(--zbom-white);
}

.zbom-vision__intro {
	position: relative;
	display: flex;
	align-items: center;
	height: 714px;
	padding: 88px 0 200px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.zbom-vision__intro-overlay {
	position: absolute;
	inset: 0;
	background: rgb(27 26 26 / 84%);
}

.zbom-vision__intro-inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 64px;
	align-items: start;
	color: #fff;
}

.zbom-vision__intro-inner h2 {
	margin: 0;
	font: normal normal 500 50px/70px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #fff;
}

.zbom-vision__intro-copy p {
	margin: 0 0 28px;
	font: normal normal 300 18px/30px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #fff;
}

.zbom-vision__feature {
	position: relative;
	z-index: 2;
	margin-top: -150px;
	padding-bottom: 24px;
}

.zbom-vision__card {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 520px;
	padding: 80px 48px;
	overflow: hidden;
	border-radius: 48px;
	background-size: cover;
	background-position: center;
	text-align: center;
	color: #fff;
}

.zbom-vision__card-overlay {
	position: absolute;
	inset: 0;
	background: rgba(12, 12, 12, 0.5);
}

.zbom-vision__card-inner {
	position: relative;
	z-index: 1;
	max-width: 560px;
}

.zbom-vision__logo {
	display: block;
	width: auto;
	max-width: 220px;
	height: auto;
	margin: 0 auto 28px;
	mix-blend-mode: screen;
}

.zbom-vision__card h3 {
	margin: 0 0 16px;
	color: #fff;
	font-size: clamp(24px, 3vw, 32px);
	font-weight: 600;
	line-height: 1.25;
}

.zbom-vision__card p {
	margin: 0 0 28px;
	color: rgba(255, 255, 255, 0.9);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.75;
}

/* Categories */
.zbom-cats {
	padding: 56px 0 90px;
}

.zbom-cats .zbom-section-head h2 {
	font: normal normal 500 50px/70px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #1e1e1e;
}

.zbom-cats__track-wrap {
	position: relative;
	width: 100%;
}

.zbom-cats__track {
	display: flex;
	gap: 10px;
	overflow: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.zbom-cats__track::-webkit-scrollbar {
	display: none;
}

.zbom-cat {
	position: relative;
	flex: 0 0 calc(50% - 5px);
	min-height: 560px;
	overflow: hidden;
	scroll-snap-align: start;
}

.zbom-cat img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 560px;
	object-fit: cover;
}

.zbom-cat__overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 22px 28px;
	background: rgb(27 26 26 / 78%);
	color: #fff;
}

.zbom-cat__copy {
	min-width: 0;
}

.zbom-cat__overlay h3 {
	margin: 0 0 6px;
	color: #fff;
	font-size: 22px;
	font-weight: 600;
	line-height: 1.3;
}

.zbom-cat__overlay p {
	margin: 0;
	color: #fff;
	font: normal normal 300 15px/24px Montserrat, "Segoe UI", sans-serif;
}

.zbom-cat__overlay .zbom-btn {
	flex: 0 0 auto;
	white-space: nowrap;
}

.zbom-arrow {
	position: absolute;
	top: 50%;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	appearance: none;
	background: rgb(255 255 255 / 42%);
	color: #111;
	box-shadow: none;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transform: translateY(-50%);
	cursor: pointer;
}

.zbom-arrow:hover {
	background: rgb(255 255 255 / 58%);
}

.zbom-arrow svg {
	display: block;
}

.zbom-arrow--prev {
	left: 20px;
}

.zbom-arrow--next {
	right: 20px;
}

/* Portfolio */
.zbom-portfolio {
	padding: 20px 0 90px;
}

.zbom-portfolio .zbom-section-head h2 {
	font: normal normal 500 50px/70px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #1e1e1e;
}

.zbom-portfolio__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}

.zbom-portfolio__grid figure {
	position: relative;
	margin: 0;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}

.zbom-portfolio__grid img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.zbom-portfolio__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 28px 24px;
	background: rgb(27 26 26 / 72%);
	color: #fff;
	text-align: center;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.zbom-portfolio__overlay strong {
	display: block;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
}

.zbom-portfolio__overlay span {
	display: block;
	max-width: 280px;
	font: normal normal 300 15px/24px Montserrat, "Segoe UI", sans-serif;
	color: #fff;
}

.zbom-portfolio__grid figure:hover img,
.zbom-portfolio__grid figure:focus-within img {
	transform: scale(1.04);
}

.zbom-portfolio__grid figure:hover .zbom-portfolio__overlay,
.zbom-portfolio__grid figure:focus-within .zbom-portfolio__overlay {
	opacity: 1;
}

/* FAQ */
.zbom-faq {
	padding: 90px 0;
	background: #f3f3f3;
}

.zbom-faq__head {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	gap: 48px 64px;
	align-items: start;
	margin-bottom: 48px;
}

.zbom-faq__intro p {
	margin: 0 0 24px;
	max-width: 360px;
	color: var(--zbom-muted);
	font: normal normal 300 16px/28px Montserrat, "Segoe UI", sans-serif;
}

.zbom-faq__head h2 {
	margin: 0;
	text-align: right;
	font: normal normal 500 50px/60px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #1e1e1e;
}

.zbom-faq__list {
	column-count: 2;
	column-gap: 20px;
}

.zbom-faq__item {
	display: inline-block;
	width: 100%;
	margin: 0 0 20px;
	padding: 28px 32px;
	overflow: hidden;
	border-radius: 20px;
	background: var(--zbom-white);
	break-inside: avoid;
}

.zbom-faq__q {
	width: 100%;
	padding: 0;
	border: 0;
	appearance: none;
	background: transparent;
	text-align: left;
	font: normal normal 700 20px/30px Montserrat, "Segoe UI", sans-serif;
	color: var(--zbom-dark);
	box-shadow: none;
	outline: none;
	-webkit-tap-highlight-color: transparent;
	cursor: pointer;
}

.zbom-faq__q:hover,
.zbom-faq__q:active,
.zbom-faq__q:focus,
.zbom-faq__q:focus-visible {
	background: transparent;
	color: var(--zbom-dark);
	box-shadow: none;
	outline: none;
}

.zbom-faq__q::-moz-focus-inner {
	border: 0;
	padding: 0;
}

.zbom-faq__a {
	display: none;
	padding-top: 14px;
	color: var(--zbom-muted);
}

.zbom-faq__a p {
	margin: 0;
	font: normal normal 300 15px/26px Montserrat, "Segoe UI", sans-serif;
	color: var(--zbom-muted);
}

.zbom-faq__item.is-open .zbom-faq__a {
	display: block;
}

/* Partners */
.zbom-partners {
	padding: 80px 0;
	background: #fff;
}

.zbom-partners .zbom-section-head {
	margin-bottom: 56px;
}

.zbom-partners .zbom-section-head h2 {
	font: normal normal 500 50px/60px Montserrat, "Segoe UI", sans-serif;
	letter-spacing: 0;
	color: #1e1e1e;
}

.zbom-partners__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	column-gap: 48px;
	row-gap: 44px;
}

.zbom-partners__grid img {
	flex: 0 0 calc((100% - 192px) / 5);
	max-width: 168px;
	max-height: 52px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.82;
}

/* Footer */
.zbom-footer {
	border-radius: 0;
	background-color: #111;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	color: #fff;
}

.zbom-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 0.75fr 1.2fr;
	gap: 40px 32px;
	align-items: start;
	padding: 80px 0 48px;
}

.zbom-footer h3 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 18px;
}

.zbom-footer a,
.zbom-footer p,
.zbom-footer span {
	color: #fff;
	text-decoration: none;
}

.zbom-footer a:hover {
	opacity: 0.78;
}

.zbom-footer__brand > img {
	display: block;
	width: 360px;
	max-width: 100%;
	height: 153px;
	margin: 0 0 32px;
	object-fit: contain;
	object-position: left center;
}

.zbom-footer__brand p {
	margin: 0;
	max-width: 360px;
	font: normal normal 300 14px/24px Montserrat, "Segoe UI", sans-serif;
}

.zbom-footer__social {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-top: 32px;
}

.zbom-footer__social a {
	display: block;
	line-height: 0;
}

.zbom-footer__social img {
	display: block;
	width: 40px;
	height: 40px;
	margin: 0;
	object-fit: contain;
	mix-blend-mode: screen;
}

.zbom-footer__links ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.zbom-footer__links li + li {
	margin-top: 12px;
}

.zbom-footer__row {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 16px;
}

.zbom-footer__row img {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 3px;
	object-fit: contain;
	filter: brightness(0) invert(1);
}

.zbom-footer__photo {
	display: block;
	width: 545px;
	max-width: 100%;
	height: 268px;
	margin-top: 8px;
	object-fit: cover;
	border-radius: 0;
}

.zbom-footer__bar {
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.zbom-footer__bar-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
	min-height: 58px;
	font-size: 12px;
}

.zbom-footer__bar-inner p {
	margin: 0;
}

.zbom-footer__legal {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
}

/* Modal */
.zbom-modal {
	position: fixed;
	inset: 0;
	z-index: 80;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(0, 0, 0, 0.82);
}

.zbom-modal[hidden] {
	display: none;
}

.zbom-modal__frame {
	width: min(960px, 100%);
	aspect-ratio: 16 / 9;
	background: #000;
}

.zbom-modal__frame iframe,
.zbom-modal__frame video {
	width: 100%;
	height: 100%;
	border: 0;
}

.zbom-modal__close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: var(--zbom-white);
	cursor: pointer;
}

.zbom-modal__close::before,
.zbom-modal__close::after {
	content: "";
	position: absolute;
	left: 12px;
	right: 12px;
	top: 19px;
	height: 2px;
	background: var(--zbom-dark);
}

.zbom-modal__close::before {
	transform: rotate(45deg);
}

.zbom-modal__close::after {
	transform: rotate(-45deg);
}

@media (max-width: 980px) {
	.zbom-header {
		position: sticky;
	}

	.zbom-header__inner {
		display: flex;
	}

	.zbom-header__cta {
		display: none;
	}

	.zbom-menu-toggle {
		display: block;
	}

	.zbom-header__right {
		gap: 0;
	}

	.zbom-nav {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		top: 92px;
		background: #1a1a1a;
		padding: 16px 24px 24px;
	}

	.zbom-nav.is-open {
		display: block;
	}

	.zbom-nav__list {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}

	.zbom-about__grid,
	.zbom-vision__intro-inner,
	.zbom-faq__head,
	.zbom-footer__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.zbom-faq__head h2 {
		text-align: left;
	}

	.zbom-faq__list {
		column-count: 1;
	}

	.zbom-vision__intro {
		height: auto;
		min-height: 0;
		padding: 64px 0 160px;
	}

	.zbom-vision__feature {
		margin-top: -110px;
	}

	.zbom-vision__card {
		min-height: 420px;
		padding: 56px 28px;
		border-radius: 32px;
	}

	.zbom-portfolio__grid {
		grid-template-columns: 1fr 1fr;
	}

	.zbom-partners__grid {
		column-gap: 28px;
		row-gap: 32px;
	}

	.zbom-partners__grid img {
		flex-basis: calc((100% - 56px) / 3);
	}

	.zbom-hero {
		min-height: 70vh;
		align-items: center;
		padding-bottom: 180px;
	}

	.zbom-hero {
		--zbom-hero-inset: 24px;
	}

	.zbom-hero__content {
		margin-left: auto;
		margin-right: auto;
		width: min(var(--zbom-max), calc(100% - 48px));
	}

	.zbom-hero__stat {
		right: auto;
		padding-right: 20px;
	}

	.zbom-hero__stat-card {
		min-width: 0;
		width: 100%;
	}
}

@media (max-width: 640px) {
	.zbom-wrap {
		width: calc(100% - 32px);
	}

	.zbom-hero {
		--zbom-hero-inset: 16px;
	}

	.zbom-hero__content {
		width: calc(100% - 32px);
	}

	.zbom-cat {
		flex-basis: 100%;
		min-height: 420px;
	}

	.zbom-cat img {
		min-height: 420px;
	}

	.zbom-cat__overlay {
		flex-wrap: wrap;
		padding: 18px 16px;
	}

	.zbom-portfolio__grid {
		grid-template-columns: 1fr;
	}

	.zbom-partners__grid img {
		flex-basis: calc((100% - 28px) / 2);
	}

	.zbom-hero__stat-card {
		flex-wrap: wrap;
		gap: 20px;
		min-width: 0;
	}

	.zbom-footer__bar-inner {
		flex-direction: column;
		gap: 8px;
		padding: 16px 0;
	}

	.zbom-arrow {
		display: none;
	}
}

