@charset "UTF-8";

/*
Theme Name: Balloonia
Theme URI: 
Author: Ali Baradaran
Author URI: qolabcs.com
Description: 
Tested up to: 6.8
Requires PHP: 5.6
Version: 11.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: balloonia
Tags: LTR, En
*/

/* Variables */
:root {
	/* Font Family */
	--global--font-primary: "Google Sans Flex", "Noto Sans", "Segoe UI", Tahoma;
	--global--font-secondary: "Noto Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	
	--global--font-primary-rtl: "Estedad", "Vazirmatn", Tahoma;

	/* Font Size */
	--global--font-size-base: 16px;
	--global--font-size-xs: .95rem;
	--global--font-size-sm: 1rem;
	--global--font-size-md: 1.05rem;
	--global--font-size-lg: 1.1rem;
	--global--font-size-xl: 1.25rem;
	--global--font-size-xxl: 1.75rem;
	--global--font-size-xxxl: 2.25rem;

	--global--font-size-page-title: var(--global--font-size-xxl);
	--global--letter-spacing: normal;

	/* Headings */
	--heading--font-family: var(--global--font-primary);
	--heading--font-size-h6: var(--global--font-size-xs);
	--heading--font-size-h5: var(--global--font-size-sm);
	--heading--font-size-h4: var(--global--font-size-lg);
	--heading--font-size-h3: calc(1.25 * var(--global--font-size-lg));
	--heading--font-size-h2: var(--global--font-size-xl);
	--heading--font-size-h1: var(--global--font-size-page-title);

	--heading--letter-spacing-h6: 0.05em;
	--heading--letter-spacing-h5: 0.05em;
	--heading--letter-spacing-h4: var(--global--letter-spacing);
	--heading--letter-spacing-h3: var(--global--letter-spacing);
	--heading--letter-spacing-h2: var(--global--letter-spacing);
	--heading--letter-spacing-h1: var(--global--letter-spacing);

	--heading--line-height-h6: var(--global--line-height-heading);
	--heading--line-height-h5: var(--global--line-height-heading);
	--heading--line-height-h4: var(--global--line-height-heading);
	--heading--line-height-h3: var(--global--line-height-heading);
	--heading--line-height-h2: var(--global--line-height-heading);
	--heading--line-height-h1: var(--global--line-height-page-title);
	
	--heading--font-weight: normal;
	--heading--font-weight-page-title: 300;
	--heading--font-weight-strong: 600;

	/* Colors */
	--global--color-black: #000;
	--global--color-dark-gray: #28303d;
	--global--color-gray: #39414d;
	--global--color-light-gray: #f0f0f0;
	--global--color-green: #d1e4dd;
	--global--color-blue: #d1dfe4;
	--global--color-purple: #d1d1e4;
	--global--color-red: #e4d1d1;
	--global--color-orange: #e4dad1;
	--global--color-yellow: #eeeadd;
	--global--color-white: #fff;
	--global--color-white-50: rgba(255, 255, 255, 0.5);
	--global--color-white-90: rgba(255, 255, 255, 0.9);
	--global--color-primary: var(--global--color-dark-gray); /* Body text color, site title, footer text color. */
	--global--color-secondary: var(--global--color-gray); /* Headings */
	--global--color-primary-hover: var(--global--color-primary);
	--global--color-background: var(--global--color-green); /* Mint, default body background */
	--global--color-border: var(--global--color-primary); /* Used for borders (separators) */

	/* Spacing */
	--global--spacing-unit: 5px;
	--global--spacing-measure: unset;
	--global--spacing-horizontal: calc( 4 * var(--global--spacing-unit) );
	--global--spacing-vertical: calc( 4 * var(--global--spacing-unit) );
	/* border width */
	--global--line-width: calc( var( --global--font-size-base ) / 10 );

	/* Elevation */
	--global--elevation: 1px 1px 5px 0 rgba(0, 0, 0, 0.35);



	/* Admin-bar height */
	--global--admin-bar--height: 0px;

	/* roundness */
	--roundness-step-01: calc( 4 * var(--global--spacing-unit) );
	--roundness-step-02: calc( var( --roundness-step-01 ) - var( --global--spacing-unit ) );
	--roundness-step-03: calc( var( --roundness-step-01 ) - ( var( --global--spacing-unit ) * 2 ) );
}
/**
 * font faces
 * */
@font-face {
  font-family: "Noto Sans";
  src: url( "/wp-content/themes/balloonia/assets/fonts/NotoSans.ttf" ) format("truetype");
  font-weight: 100 900;
  font-stretch: 75% 125%;

  font-style: normal;
}

@font-face {
  font-family: "Google Sans Flex";
  src: url( "/wp-content/themes/balloonia/assets/fonts/GoogleSansFlex.ttf" ) format("truetype");
  font-weight: 100 900;
  font-stretch: 75% 125%;

  font-style: normal;
}
/**
 * admin CSS
 */
.admin-bar {
	--global--admin-bar--height: 32px;
}
@media only screen and (max-width: 782px) {

	.admin-bar {
		--global--admin-bar--height: 46px;
	}
}

/* Document
   ========================================================================== */

/**

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body, html {
	margin: 0;
	padding: 0;
	top: 0;
	font-size: var( --global--font-size-base );
}

* {
	font-family: var( --global--font-primary );
	font-optical-sizing: auto;
	font-style: normal;
	font-variation-settings:
		"wdth" 100;
}

p {
	line-height: 1.8em;
}

ul {
	padding-left: calc( var( --global--spacing-unit ) * 2 );
}
/**
 * heading
 */
h1{
	font-size: var( --heading--font-size-h1 );
	font-weight: 200;
	line-height: 1.5em;
	margin: 0;
}
h2{
	font-size: var( --heading--font-size-h2 );
	font-weight: 200;
	line-height: 1.4em;
	margin: 0;
}
h3{
	font-size: var( --heading--font-size-h3 );
	font-weight: 300;
	line-height: 1.35em;
	margin: 0;
}
h4{
	font-size: var( --heading--font-size-h4 );
	font-weight: 400;
	line-height: 1.35em;
	margin: 0;
}
h5{
	font-size: var( --heading--font-size-h5 );
	font-weight: 500;
	line-height: 1.25em;
	margin: 0;
}
/**
 * link
 */
a{
	color: var( --global--color-black );
	text-decoration: none;
}

/**
 * Render the `main` element consistently in IE.
 */
#main, #masthead, #colophon {
	display: flex;
	max-width: 1920px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

#masthead {
	position: fixed;
	max-width: 1360px;
	top: 0;
	left: max( 0px, calc( ( 100% - 1360px ) / 2 ) );
	right: max( 0px, calc( ( 100% - 1360px ) / 2 ) );
	z-index: 999;
	background-color: transparent;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	transition: all 0.25s;
}

#masthead.gn8-sticky-header {
	background-color: var( --global--green-lightest );
	/*box-shadow: 0px 0px 2px var( --global--color-gray );
	border-bottom-right-radius: var( --roundness-step-03 );
	border-bottom-left-radius: var( --roundness-step-03 );*/
	transition: all 0.25s;
}

#main, #colophon {
	flex-direction: column;
	align-items: center;
}

body:is( .home, .front-page ) #main {
	margin-top: calc( var( --global--spacing-vertical ) * 1.5 );
	/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
}

body:not( :is( .home, .front-page ) ) #main {
	margin-top: calc( var( --global--spacing-vertical ) * 5 );
	/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
}

/**
 * navigation
 */
#site-navigation {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	width: 100%;
	padding: 0 calc( 1 * var(--global--spacing-horizontal) )!important;
}

:is( ul#primary-menu-list, ul#shop-menu-list ) {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	height: auto;
	width: auto;
	align-items: stretch;
	align-content: stretch;
	justify-content: center;
	justify-items: center;
	list-style-type: none;
	padding: 0 calc( var( --global--spacing-vertical ) * 1.5 );
	padding-bottom: 0!important;
	margin-top: calc( var( --global--spacing-horizontal ) * 1.5 );
	transition: margin-top 0.25s;
	column-gap: calc( var( --global--spacing-unit ) * 6 );
	row-gap: calc( var( --global--spacing-unit ) * 4 );
}

ul#primary-menu-list {
	flex-grow: 1;
	flex-shrink: 1;
}
ul#shop-menu-list {
	flex-grow: 0;
	flex-shrink: 1;
}

#masthead.gn8-sticky-header :is( ul#primary-menu-list, ul#shop-menu-list ) {
	margin-top: calc( var( --global--spacing-horizontal ) * 0.5 );
	transition: margin-top 0.25s;
}

:is( ul#primary-menu-list, ul#shop-menu-list ) > li {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	position: relative;
	font-size: .95em;
}

:is( ul#primary-menu-list, ul#shop-menu-list ) li:is( :hover, :focus ) a {
	transition: all 0.3s;
	text-shadow: 0;
}
	
:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children ul.sub-menu {
	display: flex;
	flex-direction: column;
	row-gap: calc( var( --global--spacing-horizontal ) * 1 );
	width: auto;
	padding: calc( var( --global--spacing-horizontal ) * 1 );
	background-color: var( --global--color-white );
	color: var( --global--color-black );
	list-style: none;
	border-bottom-left-radius: var( --roundness-step-03 );
	border-bottom-right-radius: var( --roundness-step-03 );
}

:is( ul#primary-menu-list, ul#shop-menu-list ) > li:is( :hover, :focus, .current_page_item ) a{
	color: var( --global--pink-darkest );
	transition: all 0.3s;
}

:is( ul#primary-menu-list, ul#shop-menu-list ) > li:is( :hover, :focus, .current_page_item )::before {
	color: var( --global--pink-darkest );
	transition: all 0.3s;
}

:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children ul.sub-menu li a {
	color: var( --global--color-black );
	transition: all 0.3s;
}


:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children ul.sub-menu li:hover a {
	color: var( --global--pink-darkest );
	transition: all 0.3s;
}

li.menu-item :is( a[lang^="ar"], a[lang^="fa"] ) {
	font-family: var( --global--font-primary-rtl );
}


#primary-mobile-menu {
	display: none;
	flex-direction: row;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	right: 0;
	padding: calc( 1.5 * var( --global--spacing-horizontal ) ) calc( 2.5 * var( --global--spacing-horizontal ) );
	border: none;
	border-radius: 0!important;
	border-bottom-left-radius: var( --roundness-step-01 )!important;
	z-index: 999;
	background-color: transparent!important;
}

#primary-mobile-menu:focus {
	outline-style: none;
	outline-width: var( --global--line-width );
	outline-color: var( --global--color-dark-gray );
}

#primary-mobile-menu .dropdown-icon {
	font-size: 2.25em;
	width: 1.5em;
	height: 1.5em;
	max-width: 1.5em;
	max-height: 1.5em;
	display: flex;
	flex-direction: row;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
}

#site-navigation:not( .is-open ) #primary-mobile-menu .dropdown-icon.close {
	display: none;
}

#site-navigation.is-open #primary-mobile-menu .dropdown-icon.open {
	display: none;
}

#site-navigation::before {
	content: " ";
	z-index: -1;
	position: fixed;
	top: 0;
	left: 100%;
	right: 0;
	bottom: 0;
	background-color: rgba( 0, 0, 0, 0 );
	backdrop-filter: blur( 0px );
	transition: all .35s;
}

#site-navigation.is-open::before {
	content: " ";
	z-index: -1;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba( 0, 0, 0, 0.05 );
	backdrop-filter: blur( 10px );
	transition: all .35s;
}

#site-navigation {
	transition: all .5s;
}


#main > * {
	max-width: 1360px;
	width: calc( 100% - 2 * var( --global--spacing-horizontal ) );
	box-sizing: border-box;
	margin: 0 calc( 1 * var( --global--spacing-horizontal ) );
}

#main > *.full-width {
	max-width: 1920px;
	width: 100%;
	margin: 0!important;
}

#main > *.narrow-width {
	max-width: 960px;
	width: 100%;
	margin-left: auto!important;
	margin-right: auto!important;
}

#colophon > * {
	max-width: 960px;
	width: 100%;
	box-sizing: border-box;
	margin: 0 calc( 2 * var( --global--spacing-horizontal ) );
}

#colophon {
	background-image: url( "/wp-content/uploads/2026/02/footer-background-01.webp" );
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100%;
	padding-bottom: calc( var( --global--spacing-vertical ) * 8 );
	border-radius: calc( var( --roundness-step-01 ) * 1.25 );
	overflow: hidden;
	padding-top: calc( var( --global--spacing-horizontal ) * 4 );
}

section {
	width: 100%;
	display: flex;
	flex-direction: column;
}

section.horizontal{
	flex-direction: row;
}

.balloonia-container {
	position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	padding: calc( var( --global--spacing-unit ) * 4 );
}

.balloonia-container.horizontal {
	flex-direction: row;
}

.post-load {
	display: none!important;
}



:is( .sign, .balloonia-container ) {
	box-sizing: border-box;
	border-width: var( --global--line-width );
	border-style: solid;
	border-color: transparent;
	border-radius: var( --roundness-step-01 );
}

.sign {
	position: relative;
	display: flex;
	align-items: center;
	justify-items: center;
	flex-shrink: 0;
	width: 120px;
	height: 120px;
	padding: var( --global--spacing-horizontal );
	border-radius: 50%;
	z-index: 1;
	outline-width: calc( var( --global--spacing-unit ) * 3 );
	outline-style: solid;
	outline-color: #fff;
}

.sign.balloonia-green::before {
	border-color: var( --global--green-darkest );
	outline-color: var( --global--green-darkest );
}

.sign.bottom-cut {	
	top: calc( var( --global--spacing-unit ) * 3 );
}

.sign.bottom-cut::before {
	position: absolute;
	content: " ";
	bottom: calc( var( --global--spacing-unit ) * -3 );
	left: calc( var( --global--spacing-unit ) * -3 );
	right: calc( var( --global--spacing-unit ) * -3 );
	top: calc( var( --global--spacing-unit ) * -3 );
	outline-width: var( --global--line-width );
	outline-style: solid;
	border-radius: 50%;
	box-sizing: border-box;
	clip-path: polygon( 
		calc( 0% - var( --global--line-width ) ) calc( 100% - 2 * var( --global--spacing-unit ) * 3 + var( --global--line-width ) ), 
		calc( 100% + var( --global--line-width ) ) calc( 100% - 2 * var( --global--spacing-unit ) * 3 + var( --global--line-width ) ), 
		calc( 100% + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ), 
		calc( 0% - var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ) 
	);
}


.sign.side-cut::before {
	position: absolute;
	content: " ";
	bottom: calc( var( --global--spacing-unit ) * -3 );
	left: calc( var( --global--spacing-unit ) * -3 );
	right: calc( var( --global--spacing-unit ) * -3 );
	top: calc( var( --global--spacing-unit ) * -3 );
	outline-width: var( --global--line-width );
	outline-style: solid;
	border-radius: 50%;
	box-sizing: border-box;
	clip-path: polygon( 
		calc( 100% - 1 * var( --global--spacing-unit ) * 3 + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
		calc( 100% + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
		calc( 100% + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ),
		calc( 100% - 1 * var( --global--spacing-unit ) * 3 + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) )
	);
}

html[ dir=rtl ] .sign.side-cut::before {
	clip-path: polygon( 
		calc( 0% - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
		calc( var( --global--spacing-horizontal ) - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
		calc( var( --global--spacing-horizontal ) - var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ),
		calc( 0% - var( --global--line-width ) ) calc( 100% + var( --global--line-width ) )
	); 
}


.inline-sign {
	position: relative;
	display: flex;
	align-items: center;
	justify-items: center;
	flex-shrink: 0;
	max-width: 120px;
	padding: var( --global--spacing-horizontal );
	z-index: 1;
}

/* footer */
#footer-separator {
	padding: calc( var( --global--spacing-vertical ) * 4 ) 0;
	background-image: url( "/wp-content/uploads/2026/02/footer-spacer-01.png" );
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 50%;
	box-sizing: border-box;
}

#footer-subscription-form{
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
}

#footer-subscription-form .balloonia-container {
	padding-top: calc( var( --global--spacing-vertical ) * 2.5 );
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	outline-offset: 0;
	outline-width: calc( var( --global--spacing-unit ) * 3 );
	outline-color: #fff;
	outline-style: solid;
}

#footer-reserve-info {
	position: relative;
	display: flex;
	flex-direction: row;
	align-items: center;
	box-sizing: border-box;
}

#footer-reserve-info .balloonia-container {
	padding-top: calc( var( --global--spacing-vertical ) * 2 );
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	min-height: 150px;
	outline-offset: 0;
	outline-width: calc( var( --global--spacing-unit ) * 3 );
	outline-color: #fff;
	outline-style: solid;
	column-gap: calc( var( --global--spacing-vertical ) / 2 );
	row-gap: calc( var( --global--spacing-vertical ) / 2 );
}

#footer-reserve-info-side-image {
    position: absolute;
    right: -65px;
    left: auto;
    bottom: -55px;
    top: auto;
    width: 400px;
    height: auto;
	z-index: 9;
}

#footer-branches {
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: calc( var( --global--spacing-vertical ) * 3 ) 0;
}
.a-branch.balloonia-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-items: stretch;
	justify-content: stretch;
	column-gap: calc( var( --global--spacing-vertical ) / 2 );
	row-gap: calc( var( --global--spacing-vertical ) / 2 );
	outline-offset: 0;
	outline-width: calc( var( --global--spacing-unit ) * 3 );
	outline-color: #fff;
	outline-style: solid;
	padding: calc( var( --global--spacing-vertical ) / 2 );
}

.a-branch .branch-map{
	min-height: 220px;
	overflow: hidden;
	border-radius: calc( var( --roundness-step-01 ) - ( var( --global--spacing-vertical ) / 2 ) );
	width: 45%;
	flex-shrink: 1;
	flex-grow: 0;
	border-style: solid;
	border-width: var( --global--line-width );
	box-sizing: border-box;
}

.a-branch .branch-map iframe {
	height: 100%;
	width: 100%;
}

.a-branch .inline-sign {
	width: 8.5%;
	flex-shrink: 0;
	flex-grow: 0;
}

.a-branch .branch-info {
	width: 35%;
	flex-shrink: 0;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	row-gap: calc( var( --global--spacing-horizontal ) * .75 );
	align-items: stretch;
	align-content: stretch;
	padding: var( --global--spacing-horizontal ) 0;
}

.a-branch .branch-info .branch-name {
	margin-bottom: var( --global--spacing-horizontal );
}

.a-branch .branch-info > * {
	/*margin-bottom: calc( var( --global--spacing-horizontal ) * .75 );*/
}

.button-link, button:not( :is( .slick-prev, .slick-next, .lg-icon ) ) {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	cursor: pointer;
	align-items: center;
	align-content: center;
	column-gap: calc( var( --global--spacing-horizontal ) *.66 );
	background-color: var( --global--color-white )!important;
	width: max-content!important;
	border-style: solid;
	border-width: var( --global--line-width );	
	border-radius: calc( var( --roundness-step-01 ) * 4 );
	padding: calc( var( --global--spacing-horizontal ) / 3 ) calc( var( --global--spacing-horizontal ) / 1.3 );
	transition: all .3s;
	font-size: .95em;
	font-weight: 500;
	line-height: 1.2em!important;
}

.button-link > * {
	margin: 0!important;
}

:is( .button-link, .button-solid-link ):hover{
	box-shadow: var( --global--elevation );
	transition: all .3s;
}

.footer-contact-title {
	line-height: .6em;
	padding: calc( var( --global--spacing-horizontal ) / 3 ) calc( var( --global--spacing-horizontal ) / 1.3 );
	border-radius: 100px;
	background-color: var( --global--green-lightest );
}

.button-solid-link {
	cursor: pointer;
	width: max-content!important;
	border-style: solid;
	border-width: var( --global--line-width );	
	border-radius: calc( var( --roundness-step-01 ) * 4 );
	padding: calc( var( --global--spacing-horizontal ) / 3 ) calc( var( --global--spacing-horizontal ) / 1.3 );
	transition: all .3s;
	font-size: .95em;
	font-weight: 500;
}

.phone, .branch-phone, .number, .whatsapp, .instagram, .social, .is-mobile, .email, .branch-email {
	letter-spacing: 1px;
	direction: ltr!important;
}

.phone-container {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	/*
	align-items: center;
	align-content: center;
	*/
	justify-content: center;
	justify-items: center;
	row-gap: calc( var( --global--spacing-horizontal ) * 1 );
	column-gap: calc( var( --global--spacing-horizontal ) * 1 );
	margin-top: calc( var( --global--spacing-horizontal ) * 2 );
}

:is( .phone, .branch-phone )::before {
	content: "\f095";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	font-size: 1.05em;
	/*padding: 0 calc( var( --global--spacing-horizontal ) * .2 );*/
}

:is( .email, .branch-email )::before {
	content: "\f0e0";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	font-size: 1.05em;
	/*padding: 0 calc( var( --global--spacing-horizontal ) * .2 );*/
}

:is( .instagram )::before {
	content: "\f16d";
	font-family: "Font Awesome 7 Brands";
	font-weight: 900;
	font-size: 1.05em;
	/*padding: 0 calc( var( --global--spacing-horizontal ) * .2 );*/
}

:is( .whatsapp )::before {
	content: "\f232";
	font-family: "Font Awesome 7 Brands";
	font-weight: 900;
	font-size: 1.05em;
	/*padding: 0 calc( var( --global--spacing-horizontal ) * .2 );*/
}

:is( .is-mobile )::before {
	content: "\f3cf";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	font-size: 1.05em;
	/*padding: 0 calc( var( --global--spacing-horizontal ) * .2 );*/
}

.separated-title {
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	position: absolute;
	bottom: calc( 100% + var( --global--spacing-vertical ) / 2 );
	border-radius: var( --roundness-step-01 );
	padding: var( --global--spacing-unit ) calc( var( --global--spacing-unit ) * 3 );
	margin: 0 calc( var(--global--spacing-horizontal) * 1 )!important;
	border-width: var( --global--line-width );
	border-style: solid;
	left: max( var( --global--spacing-horizontal ), calc( ( 100% - 960px ) / 2 + var( --global--spacing-horizontal ) ) );
	font-weight: 500;
	font-size: larger;
}

html[ dir=rtl ] .separated-title {
	left: auto;
	right: max( var( --global--spacing-horizontal ), calc( ( 100% - 960px ) / 2 + var( --global--spacing-horizontal ) ) );
}

.separated-title.half-in {
	bottom: 100%;
	transform: translate( 0, 50% );
}

.separated-title.inline {
	position: static;
	width: fit-content;
	margin-bottom: calc( var( --global--spacing-vertical ) * 2 )!important;
}
/**
 * contact form 7
 */
.wpcf7 {
	width: 100%;
	display: block;
}

.wpcf7 form {
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	column-gap: calc( var( --global--spacing-vertical ) );
	row-gap: calc( var( --global--spacing-vertical ) );
	align-items: start;
	align-content: start;
	justify-content: center;
	justify-items: center;
}

.wpcf7 form.submitting {
	opacity: .7;
	user-select: none;
	cursor: not-allowed;
}

.wpcf7 form > *{
	display: flex;
	flex-shrink: 1;
	flex-grow: 0;
	width: calc( 50% - var( --global--spacing-vertical ) * 2 );
	margin: 0!important;
	justify-content: center;
	justify-items: center;
}

.wpcf7-form-control-wrap {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.wpcf7 form .wpcf7-response-output {
	width: 100%;
	margin: 0em!important;
	padding: 0!important;
	border: none!important;
}

.wpcf7-not-valid-tip {
	padding: 0 var( --global--spacing-horizontal );
}

input, text, select, button:not( :is( .slick-prev, .slick-next, .lg-icon ) ) {
	background-color: var( --global--color-white )!important;
	border-style: solid;
	border-width: var( --global--line-width );	
	border-radius: calc( var( --roundness-step-01 ) * 4 );
	padding: calc( var( --global--spacing-horizontal ) / 3 ) calc( var( --global--spacing-horizontal ) / 1.5 );
	transition: all .3s;
	font-size: .95em;
	font-weight: 500;
}

/* home page */
#homepage-hero-banner {
	height: 550px;
	position: relative;
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	align-items: center;
	align-content: center;
	padding: calc( var( --global--spacing-unit ) * 2 ) 0px 0px 0px!important;
	border-width: 0!important;	
}

#homepage-hero-banner:before {
	content: " ";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
	background-position: 50% top;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: var(--roundness-step-01);
  	overflow: hidden;
}

html[ dir="rtl" ] #homepage-hero-banner:before {
	transform: scaleX( -1 );
	content: " ";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
	background-position: 50% top;
	background-size: cover;
	background-repeat: no-repeat;
}

#homepage-hero-banner .a-slide {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	column-gap: calc( var( --global--spacing-unit ) * 4 );
	row-gap: calc( var( --global--spacing-unit ) * 4 );
}

.is-slider {
	position: relative;
}
/**
.is-slider::after {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var( --global--color-white );
}
*/
.is-slider.slider-initialized::after {
	display: none;
}

#homepage-hero-banner.is-slider .a-slide .slide-image {
	width: 66%;
	height: 75%;
	max-height: 400px;
	box-sizing: border-box;
	border-width: calc( var( --global--spacing-unit ) * 3 );
	border-style: solid;
	border-color: var( --global--color-white );
	border-top-left-radius: 500px;
	border-bottom-left-radius: 500px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var( --global--color-light-gray );
	overflow: hidden;
	transform: translateX( calc( var( --global--spacing-unit ) * 3 ) );
}

html[ dir="rtl" ] #homepage-hero-banner.is-slider .a-slide .slide-image {
	border-top-right-radius: 500px;
	border-bottom-right-radius: 500px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	transform: translateX( calc( -1 * var( --global--spacing-unit ) * 3 ) );
}

#homepage-hero-banner.is-slider .a-slide .slide-text {
	width: 34%;
	padding-left: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	display: flex;
	flex-direction: column;
}

html[ dir="rtl" ] #homepage-hero-banner.is-slider .a-slide .slide-text {
	padding-right: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	padding-left: 0!important;
}

#homepage-hero-banner.is-slider .a-slide .slide-text h4 {
	font-size: 1.8rem;
	font-weight: 500;
	margin: 0 calc( var( --global--spacing-unit ) * 3 ) calc( var( --global--spacing-unit ) * 5 ) 0;
}

#homepage-hero-banner.is-slider .a-slide .slide-text p {
	font-size: 1.2rem;
	margin: 0 calc( var( --global--spacing-unit ) * 3 ) calc( var( --global--spacing-unit ) * 4 ) 0;
}


/** latest news */
#homepage-latest-news {
	min-height: 350px;
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	background-image: url( "/wp-content/uploads/2026/02/homepage-latest-news-01.webp" );
	background-size: contain;
	background-repeat: no-repeat;
	align-items: center;
	align-content: center;
	margin-top: calc( var( --global--spacing-unit ) * 30 );
	padding: calc( var( --global--spacing-unit ) * 2 ) calc( var( --global--spacing-unit ) * 8 )!important;
	border-width: 0!important;
}

#homepage-latest-news .a-slide {
	max-width: 250px;
	min-width: 250px;
	height: 250px!important;
	display: flex;
	border-radius: 50%;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	position: relative;
	margin: 0 calc( var( --global--spacing-unit ) * 6 );
}

#homepage-latest-news.is-slider .a-slide .slide-image {
	width: calc( 100% - calc( var( --global--spacing-unit ) * 6 ) );
	height: calc( 100% - calc( var( --global--spacing-unit ) * 6 ) );
	box-sizing: border-box;
	border-radius: 50%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var( --global--color-light-gray );
	overflow: hidden;
}

#homepage-latest-news.is-slider .a-slide .slide-text {
	position: absolute;
	bottom: calc( var( --global--spacing-unit ) * 8 );
	left: calc( var( --global--spacing-unit ) * -2 );
	right: calc( var( --global--spacing-unit ) * -2 );
	display: flex;
	flex-direction: column;
	align-content: center;
	align-items: center;
	justify-content: center;
	justify-items: center;
	font-size: 1.1rem;
	font-weight: 400;
	line-height: 2.5em;
}

/**
 * #about-balloonia
 */
.rich-text:not( .button-link ) {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	/* text-align: justify; */
	padding: var( --global--spacing-horizontal );
	line-height: 1.8em;
	margin-top: 0!important;
	margin-bottom: 0!important;
}

.rich-text .button-link {
	line-height: 1.3em;
}

.rich-text p {
	text-indent: calc( var( --global--spacing-unit ) * 3 );
}

.rich-text li {
	margin-bottom: calc( var( --global--spacing-unit ) * 3 );
}

.rich-text .separated-title {
	margin-left: 0!important;
	margin-right: 0!important;
}


#about-balloonia {
	overflow: hidden;
	align-items: stretch;
	align-content: stretch;
	justify-content: center;
	justify-items: center;
	padding: 0;
	margin-top: calc( var( --global--spacing-unit ) * 22 );
}

html[ dir=rtl ] #about-balloonia {
	flex-direction: row-reverse;
}

#about-balloonia img {
	height: auto;
	max-height: 350px;
	max-width: 350px;
	object-fit: contain;
}

img.image-top-left{
	object-position: top left;
	align-self: flex-start;
	float: left;
	padding: calc( var( --global--spacing-unit ) * 3 );
	padding-left: 0!important;
}

img.image-top-right{
	object-position: top right;
	align-self: flex-start;
	float: right;
	padding: calc( var( --global--spacing-unit ) * 3 );
	padding-right: 0!important;
}

img.image-bottom-left{
	object-position: bottom left;
	align-self: flex-end;
	float: left;
	padding: calc( var( --global--spacing-unit ) * 3 );
	padding-left: 0!important;
}

img.image-bottom-right{
	object-position: bottom right;
	align-self: flex-end;
	float: right;
	padding: calc( var( --global--spacing-unit ) * 3 );
	padding-right: 0!important;
}

/** :is( #related-products, #homepage-products ) */
:is( #related-products, #homepage-products ) {
	height: 350px;
	margin-top: calc( var( --global--spacing-unit ) * 22 );
}

:is( #homepage-products ) {
	margin-bottom: calc( var( --global--spacing-unit ) * 12 );
}

:is( #related-products, #homepage-products ) .slides-container {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

:is( #related-products, #homepage-products ) .product-slide {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	justify-items: center;
	align-content: space-between;
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	padding: calc( var( --global--spacing-unit ) * 4 );
	width: 250px;
	height: 250px;
	background-image: url( '/wp-content/uploads/2026/02/product-350px-frame.webp' );
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	box-sizing: border-box;
}

:is( #related-products, #homepage-products ) .product-slide img {
	width: calc( 100% - var( --global--spacing-unit ) * 8 );
	height: 75%;
	object-fit: contain;
}

:is( #related-products, #homepage-products ) .product-slide .product-text {
	position: absolute;
	display: flex;
	flex-direction: column;
	height: 3.25em;
	justify-content: space-between;
	justify-items: space-between;
	background-image: url( '/wp-content/uploads/2026/03/product-350px-text.webp' );
	background-size: 100% 100%;
	background-position: center center;
	background-repeat: no-repeat;
	box-sizing: border-box;
	top: auto;
	bottom: calc( var( --global--spacing-unit ) * 2 );
	left: calc( var( --global--spacing-unit ) * 2 );
	right: calc( var( --global--spacing-unit ) * 2 );
	padding: calc( var( --global--spacing-unit ) * 1.25 ) calc( var( --global--spacing-unit ) * 2 );
}

:is( #related-products, #homepage-products ) .product-slide .product-name {
	width: 100%;
	z-index: 5;
	opacity: .75;
	font-size: .85em;
	font-weight: 500;
	line-height: 1em;
	overflow: hidden;
}

:is( #related-products, #homepage-products ) .product-slide .product-price {
	width: 100%;
	z-index: 5;
	opacity: .75;
	font-size: .8em;
	font-weight: 500;
	line-height: 1em;
	overflow: hidden;
}


:is( #related-products, #homepage-products ) .slick-slide:nth-child(3n) .product-slide {
	transform: rotateZ( -3deg );
} 

:is( #related-products, #homepage-products ) .slick-slide:nth-child(3n+1) .product-slide {
	transform: rotateZ( 2deg );
} 

:is( #related-products, #homepage-products ) .slick-slide:nth-child(3n+2) .product-slide {
	transform: rotateZ( 0deg );
} 

/** for-mothers */
#for-mothers {
	margin-top: calc( var( --global--spacing-unit ) * 12 );
	column-gap: var( --global--spacing-horizontal );
	row-gap: var( --global--spacing-horizontal );
	align-items: center;
	align-content: center;
}

#for-mothers .rich-text {
	position: relative;
}

#for-mothers img {
	max-width: 200px;
}

/** homepage FAQ */
#homepage-faq {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
	flex-direction: column;
}

#homepage-faq .a-faq {
	display: flex;
	flex-direction: column;
	margin: 0!important;
	overflow: hidden;
}

#homepage-faq .a-faq :is( .a-faq-question, .a-faq-answer ) {
	border-style: solid;
	border-width: var( --global--line-width );
	box-sizing: border-box;
}

#homepage-faq .a-faq .a-faq-question {
	position: relative;
	overflow: hidden;
	cursor: pointer;
	padding: var( --global--spacing-horizontal );
}

#homepage-faq .a-faq:first-of-type .a-faq-question {
	border-top-left-radius: var( --roundness-step-01 );
	border-top-right-radius: var( --roundness-step-01 );
}

#homepage-faq .a-faq .a-faq-question::after {
	content: "\f078";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	position: absolute;
	top: 0;
	bottom: 0;
	font-size: 1.8em;
	padding: var( --global--spacing-horizontal );
	transition: all 0.15s;
}

html:not( [ dir=rtl ] ) #homepage-faq .a-faq .a-faq-question::after {
	left: auto;
	right: 0;
}

html[ dir=rtl ] #homepage-faq .a-faq .a-faq-question::after {
	left: 0;
	right: auto;
}

#homepage-faq .a-faq .a-faq-answer {
	margin-top: var( --global--line-width );
	background-color: var( --global--color-white );
	margin-bottom: 0;
	overflow: hidden;
	position: relative;
}

#homepage-faq .a-faq:last-of-type .a-faq-answer {
	border-bottom-left-radius: var( --roundness-step-01 );
	border-bottom-right-radius: var( --roundness-step-01 );
}

#homepage-faq .a-faq.is-close .a-faq-answer {
	height: 0!important;
}

#homepage-faq .a-faq.is-open .a-faq-answer {
	height: auto;
	padding: var( --global--spacing-horizontal );
}



#homepage-faq .a-faq.is-close .a-faq-question::after {
	transform: rotateZ( 180deg );
	transition: all 0.15s;
}

.bubble-slide {
	border-width: var( --global--line-width );
	border-style: solid;
}

.bubble-slide > * {
	border-width: var( --global--line-width );
	border-style: solid;
}

.bubble-slide > *:is( .slide-text ) {
	border-radius: var( --roundness-step-01 );
}

/* slider */
.slides-container {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}

.slick-initialized .slick-slide {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
}

:is( .slick-list, .slick-track ) {
	height: 100%;
	min-width: 100%;
}

:is( .slick-prev, .slick-next ) {
	width: calc( var( --global--spacing-unit ) * 10 )!important;
	height: calc( var( --global--spacing-unit ) * 10 )!important;
	border-radius: 50%;
	border-style: solid;
	border-width: var( --global--line-width )!important;	
	display: flex;
	flex-direction: row;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	font-size: 1.5em;
	font-family: 'Font Awesome 7 Free';
	position: absolute;
	bottom: 0;
	transform: translateY( 50% );
	cursor: pointer;
}

.is-slider.button-out :is( .slick-prev, .slick-next ) {
	transform: translateY( 100% );
}

.is-slider .slick-prev {
	z-index: 990;
	left: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
}

.is-slider .slick-next {
	z-index: 990;
	left: calc( max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) ) + var( --global--spacing-unit ) * 10 + var( --global--spacing-unit ) * 2 );
}

html[ dir="rtl" ] .is-slider .slick-next {
	right: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
}

html[ dir="rtl" ] .is-slider .slick-prev {
	right: calc( max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) ) + var( --global--spacing-unit ) * 10 + var( --global--spacing-unit ) * 2 );
}


/** a page */
#page-hero-banner {
	height: 400px;
	position: relative;
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	align-items: center;
	align-content: center;
	padding: 0px!important;
	border-width: 0!important;
	margin-bottom: calc( var( --global--spacing-unit ) * 8 );
}

:is( #page-hero-banner, .an-department ) .banner-image {
	width: 60%;
	height: 85%;
	max-height: 400px;
	box-sizing: border-box;
	border-width: calc( var( --global--spacing-unit ) * 3 );
	border-style: solid;
	border-color: var( --global--color-white );
	border-top-left-radius: 500px;
	border-bottom-left-radius: 500px;
	background-color: transparent;
	overflow: hidden;
	transform: translateX( calc( var( --global--spacing-unit ) * 3 ) );
}

html[ dir="rtl" ] :is( #page-hero-banner, .an-department ) .banner-image {
	border-top-right-radius: 500px;
	border-bottom-right-radius: 500px;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	transform: translateX( -1 * calc( var( --global--spacing-unit ) * 3 ) );
}

:is( #page-hero-banner, .an-department ) .banner-text {
	width: 40%;
	padding-left: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	padding-right: calc( var( --global--spacing-unit ) * 5 );
	display: flex;
	flex-direction: column;
	justify-items: center;
	justify-content: center;
	text-shadow: 0px 0px 2px var( --global--color-white ), 
				 0px 0px 2px var( --global--color-white ), 
				 0px 0px 3px var( --global--color-white ), 
				 0px 0px 3px var( --global--color-white ), 
				 0px 0px 4px var( --global--color-white ), 
				 0px 0px 6px var( --global--color-white ),
				 0px 0px 8px var( --global--color-white ),
				 0px 0px 14px var( --global--color-white ),
				 0px 0px 20px var( --global--color-white );
}

html[ dir="rtl" ] :is( #page-hero-banner, .an-department ) .banner-text {
	padding-right: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	padding-left: calc( var( --global--spacing-unit ) * 5 );
}

:is( #page-hero-banner, .an-department ) .page-title {
	font-size: 1.9rem;
	font-weight: 500;
	margin-bottom: calc( var( --global--spacing-vertical ) * 2 );
}

:is( #page-hero-banner, .an-department ) .page-subtitle {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.1em;
	margin: 0 calc( var( --global--spacing-unit ) * 3 ) calc( var( --global--spacing-unit ) * 4 ) 0;
}

.main-text {
	margin: var( --global--spacing-vertical ) 0 calc( var( --global--spacing-vertical ) * 2 ) 0!important;
	background-color: rgba( 0, 0, 0, 0.025 );
	border: var( --global--line-width ) solid rgba( 0, 0, 0, 0.05 );
}

#page-hero-half-banner {
	height: 400px;
	position: relative;
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	align-items: stretch;
	align-content: stretch;
	padding: 0px!important;
	border-width: 0!important;
}

#page-hero-half-banner .banner-text {
	position: relative;
	width: calc( 100% - 350px - calc( var( --global--spacing-unit ) * 10 ) );
	padding-left: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	padding-right: calc( var( --global--spacing-unit ) * 5 );
	display: flex;
	flex-direction: column;
	justify-items: center;
	justify-content: center;
	box-sizing: border-box;
	text-shadow: 0px 0px 2px var( --global--color-white ), 0px 0px 2px var( --global--color-white ), 0px 0px 3px var( --global--color-white ), 0px 0px 4px var( --global--color-white ), 0px 0px 6px var( --global--color-white );
}

html[ dir="rtl" ] #page-hero-half-banner .banner-text {
	padding-right: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 10 ) );
	padding-left: calc( var( --global--spacing-unit ) * 5 );
}

:is( #page-hero-half-banner ) .breadcrumb {
	position: absolute;
	top: calc( var( --global--spacing-unit ) * 8 );
}

:is( #page-hero-banner ) .breadcrumb {
	position: absolute;
	bottom: calc( var( --global--spacing-unit ) * -6 );
}

.share-links {
	position: absolute;
	bottom: calc( var( --global--spacing-unit ) * 8 );
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
}

.share-links a {
	display: block;
	width: 36px;
	height: 36px;
}

.share-links a img {
	width: 100%;
	height: 100%;
}

.banner-text .date {
	margin: 0;
	padding: 0;
	font-size: .95em;
}

#page-hero-half-banner .page-title {
	font-size: 1.9rem;
	font-weight: 500;
	margin-bottom: calc( var( --global--spacing-vertical ) * 2 );
}

#page-hero-half-banner .banner-image {
	height: 350px;
	width: 350px;
	align-self: center;
	box-sizing: border-box;
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-01 );
	padding: calc( var( --global--spacing-unit ) * 3 );
}

#page-hero-half-banner .banner-image img {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	object-fit: cover;
	object-position: center center;
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: calc( var( --roundness-step-01 ) - var( --global--spacing-unit ) * 3 );
}

#page-hero-half-banner.circle-image :is( .banner-image, .banner-image img ) {
	border-radius: 50%;
}

#class-benefits{
	margin-top: calc( var( --global--spacing-unit ) * 1 );
	position: relative;
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 400px;
	box-sizing: border-box;
	background-color: var( --global--color-dark-gray );
	border: calc( var( --global--spacing-unit ) ) solid var( --global--color-white );
	border-image-source: url( "/wp-content/uploads/2026/02/wooden-frame-02.webp" );
	border-image-slice: 70;
	border-image-outset: 5px;
	border-image-width: calc( var( --global--spacing-unit ) * 4 );
}

#class-benefits .slides-container {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
#class-benefits .a-slide {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	justify-items: flex-start;
	justify-content: flex-start;
	row-gap: calc( var( --global--spacing-unit ) * 4 );
	color: var( --global--color-white );
	box-sizing: border-box;
	padding: calc( var( --global--spacing-horizontal ) * 2 );
}

#class-benefits .a-slide h4 {
	font-size: 1.8rem!important;
}

#class-benefits .a-slide p {
	font-size: 1.15rem!important;
	overflow-y: auto;
}

#class-warnings {
	margin-top: calc( var( --global--spacing-unit ) * 30 );
	position: relative;
}

#class-warnings ul {
	display: flex;
	flex-direction: column;
	width: auto;
	box-sizing: border-box;
	padding: 0 calc( var( --global--spacing-horizontal ) * 2 );
}

/** ucomming classes and workshops */
#class-upcomming {
	min-height: 350px;
	display: flex;
	flex-direction: row;
	box-sizing: border-box;
	background-image: url( "/wp-content/uploads/2026/02/class-upcomming-01.webp" );
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	align-items: center;
	align-content: center;
	margin-top: calc( var( --global--spacing-unit ) * 14 );
	padding: calc( var( --global--spacing-unit ) * 2 ) calc( var( --global--spacing-unit ) * 8 )!important;
	border-width: 0!important;
}

#class-upcomming .a-slide {
	max-width: 250px;
	min-width: 250px;
	height: 250px!important;
	display: flex;
	border-radius: var( --roundness-step-01 );
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	position: relative;
	margin: 0 calc( var( --global--spacing-unit ) * 6 );
}

#class-upcomming.is-slider .a-slide .slide-image {
	width: calc( 100% - calc( var( --global--spacing-unit ) * 6 ) );
	height: calc( 100% - calc( var( --global--spacing-unit ) * 6 ) );
	box-sizing: border-box;
	border-radius: calc( var( --roundness-step-01 ) - var( --global--spacing-unit ) * 3 );
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var( --global--color-light-gray );
	overflow: hidden;
}

#class-upcomming.is-slider .a-slide .slide-text {
	position: absolute;
	bottom: calc( var( --global--spacing-unit ) * 8 );
	left: calc( var( --global--spacing-unit ) * -2 );
	right: calc( var( --global--spacing-unit ) * -2 );
	display: flex;
	flex-direction: column;
	align-content: center;
	align-items: center;
	justify-content: center;
	justify-items: center;
	font-size: 1.1rem;
	font-weight: 400;
	line-height: 2.5em;
}


.title-sign {
	border-style: solid;
	border-width: var( --global--line-width );
}

html:not( [ dir=rtl ] ) .title-sign {
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translate( -50%, -50% );
	width: 60px;
	height: 60px;
	border-radius: 50%;
	box-sizing: border-box;
	padding: calc( var( --global--spacing-horizontal ) / 2 );
}

html[ dir=rtl ] .title-sign {
	position: absolute;
	right: 100%;
	top: 50%;
	transform: translate( 50%, -50% );
	width: 75px;
	height: 75px;
	border-radius: 50%;
	box-sizing: border-box;
	padding: calc( var( --global--spacing-horizontal ) / 2 );
}

html:not( [ dir=rtl ] ) .has-sign {
	padding-right: max( 45px, calc( var( --global--spacing-unit ) * 3 ) );
}

html[ dir=rtl ] .has-sign {
	padding-left: max( 45px, calc( var( --global--spacing-unit ) * 3 ) );
}

.fancy-list {
	list-style: none;
}

.fancy-list li {
	position: relative;
	line-height: 1.8em;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	column-gap: 5px;
	margin-bottom: var( --global--spacing-vertical );
}

.fancy-list li::before {
	content: " ";
	display: block;
	position: relative;
	top: 5px;
	width: 1.2em;
	height: 1.2em;
	flex-shrink: 0;
	background-size: contain;
	background-repeat: no-repeat;
}

.fancy-list.yellow li::before {
	background-image: url( "/wp-content/uploads/2026/02/fancy-list-yellow.webp" );
}

.fancy-list.blue li::before {
	background-image: url( "/wp-content/uploads/2026/02/fancy-list-blue.webp" );
}

.fancy-list.green li::before {
	background-image: url( "/wp-content/uploads/2026/02/fancy-list-green.webp" );
}

.fancy-list.pink li::before {
	background-image: url( "/wp-content/uploads/2026/02/fancy-list-pink.webp" );
}

.fancy-list.purple li::before {
	background-image: url( "/wp-content/uploads/2026/02/fancy-list-purple.webp" );
}

#class-registration-guide {
	margin-top: calc( var( --global--spacing-unit ) * 28 );
}

#branch-gallery {
	position: relative;
	margin-top: calc( var( --global--spacing-unit ) * 18 );
}

#branch-registration-guide {
	margin-top: calc( var( --global--spacing-unit ) * 18 );
}

#branch-specifications {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

#department-specifications {
	margin-top: calc( var( --global--spacing-unit ) * 16 );
}

#department-features {
	margin-top: calc( var( --global--spacing-unit ) * 16 )!important;
}

#branch-departments {
	margin-top: calc( var( --global--spacing-unit ) * 18 );
}

#branch-departments {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	row-gap: calc( var( --global--spacing-unit ) * 5 );
	column-gap: calc( var( --global--spacing-unit ) * 5 );
	justify-content: center;
	justify-items: center;
}

#branch-departments .an-department {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-content: center;
	flex-basis: calc( 50% - var( --global--spacing-unit ) * 5 );
	flex-shrink: 0;
	flex-grow: 1;
	height: 250px;
	border-radius: var( --roundness-step-01 );
	overflow: hidden;
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

#branch-departments .an-department img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	object-fit: cover;
	object-position: center center;
}

#department-maintext {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	row-gap: calc( var( --global--spacing-unit ) * 6 );
	column-gap: calc( var( --global--spacing-unit ) * 6 );
	margin-bottom: calc( var( --global--spacing-unit ) * 8 );
}

html[ dir=rtl ] #department-maintext {
	flex-direction: row-reverse;
}

#department-maintext img {
	width: 250px;
	height: auto;
	object-fit: contain;
	transform: scale( 1 );
	flex-shrink: 1;
	flex-grow: 0;
}

#department-registration-guide {
	margin-top: calc( var( --global--spacing-unit ) * 4 );
	row-gap: calc( var( --global--spacing-unit ) * 1 );
	column-gap: calc( var( --global--spacing-unit ) * 6 );
}

#department-registration-guide > img {
	width: 200px;
	height: auto;
	object-fit: contain;
	transform: scale( 1.7 );
	transform-origin: 60% 60%;
	flex-shrink: 1;
	flex-grow: 0;
}

#department-contact-info {
	margin-top: calc( var( --global--spacing-unit ) * 16 );
	margin-bottom: calc( var( --global--spacing-unit ) * 10 );
}

.image-gallery {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	align-items: center;
	align-content: center;
	row-gap: calc( var( --global--spacing-unit ) * 5 );
	column-gap: calc( var( --global--spacing-unit ) * 5 );
	padding: var( --global--spacing-horizontal ) 0;
}

.image-gallery .an-image {
	padding: 0;
	height: auto;
	box-sizing: border-box;
	display: block;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	border-radius: var( --roundness-step-01 );
	flex-basis: calc( 20% - ( var( --global--spacing-unit ) * 5 ) );
	transition: all 0.15s;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

.image-gallery .an-image img {
	display: block;
	position: relative;
	min-width: 100%;
	height: 150px;
	object-fit: cover;
}

.image-gallery .an-image:hover {
	transform: rotateZ( 0deg );
	box-shadow: 1px 1px 5px var( --global--color-gray );
}


.image-gallery .an-image:nth-child(4n) {
	transform: rotateZ( -3deg );
} 

.image-gallery .an-image:nth-child(4n+1) {
	transform: rotateZ( 2deg );
} 

.image-gallery .an-image:nth-child(4n+2) {
	transform: rotateZ( 0deg );
} 

.image-gallery .an-image:nth-child(4n+3) {
	transform: rotateZ( 3deg );
} 

/** team */
#team-human {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	width: 100%;
	row-gap: calc( var( --global--spacing-unit ) * 5 );
	column-gap: calc( var( --global--spacing-unit ) * 5 );
	justify-content: center;
	justify-items: center;
	align-items: stretch;
	align-content: stretch;
	position: relative;
	padding: calc( var( --global--spacing-vertical ) * 2 ) 0;
}

#team-human .a-member {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	width: calc( 180px + var( --global--spacing-unit ) * 2 ); 
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-01 );
	padding: var( --global--spacing-unit );
	box-sizing: border-box;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

#team-human .a-member:nth-child(3n) {
	transform: rotateZ( -3deg );
} 

#team-human .a-member:nth-child(3n+1) {
	transform: rotateZ( 2deg );
} 

#team-human .a-member:nth-child(3n+2) {
	transform: rotateZ( 1deg );
} 

#team-human .a-member img {
	width: 180px;
	height: 180px;
	object-fit: cover;
	border-radius: var( --roundness-step-02 );
	overflow: hidden;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

#team-human .a-member .a-member-text{
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	width: 100%;
}

#team-human .a-member :is( .a-member-job, .a-member-name ) {
	text-align: center;
	word-break: normal;
	padding: calc( var( --global--spacing-unit ) );
	margin: 0!important;
}

#team-human .a-member .a-member-name {
	font-size: .95em;
	font-weight: 500;
}

#team-human .a-member .a-member-job {
	font-size: .75em;
	line-height: .95em;
}

/** another team */
#team-character {
	position: relative;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	position: relative;
	width: 100%;
	row-gap: calc( var( --global--spacing-unit ) * 10 );
	margin-top: calc( var( --global--spacing-vertical ) * 6 );
	padding: calc( var( --global--spacing-vertical ) * 1 ) 0;
}

#team-character .a-member {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	padding: var( --global--spacing-unit );
	box-sizing: border-box;
}

#team-character .a-member .a-member-image {
	position: absolute;
	top: calc( var( --global--spacing-unit ) * 2.5 );
	z-index: 1;
	width: 250px;
	height: 250px;
	overflow: hidden;
	box-sizing: border-box;
	border-style: solid;
	border-radius: 50%;
	border-width: var( --global--line-width );
	padding: calc( var( --global--spacing-unit ) * 4.5 );
}

#team-character .a-member .a-member-text {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	width: calc( 100% - 215px );
	min-height: 250px;
	box-sizing: border-box;
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-01 );
	padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 6.5 );
	margin-top: calc( var( --global--spacing-unit ) * 1 );
}

#team-character .a-member .a-member-image img {
	width: 100%;
	height: 100%;
	flex-shrink: 0;
	object-fit: contain;
}

#team-character .a-member:nth-child(2n+1) .a-member-text {
	margin-right: 0;
}

#team-character .a-member:nth-child(2n+1) .a-member-image {
	left: 0;
	clip-path: polygon( 
		calc( 0% - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
		calc( 100% - 30px + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
		calc( 100% - 30px + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ),
		calc( 0% + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) )
	);
}

#team-character .a-member:nth-child(2n) .a-member-text {
	margin-left: 0;
}

#team-character .a-member:nth-child(2n) .a-member-image {
	right: 0;
	clip-path: polygon( 
		calc( 30px - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
		calc( 100% + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
		calc( 100% + var( --global--line-width ) ) calc( 100% + var( --global--line-width ) ),
		calc( 30px - var( --global--line-width ) ) calc( 100% + var( --global--line-width ) )
	); 
}

/** article */
#an-article-maintext img {
	display: block;
	margin: 1.8em 1.8em 1.8em calc( -1 * var( --global--spacing-horizontal ) );
	border-radius: var( --roundness-step-02 );
	overflow: hidden;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

html[ dir=rtl  ] #an-article-maintext img {
	margin: 1.8em calc( -1 * var( --global--spacing-horizontal ) ) 1.8em 1.8em;
}

#an-article-maintext img:not( :is( .size-medium, .size-thumbnail ) ) {
	clear: both;
	float: none;
	width: 80%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

#an-article-maintext img:is( .size-medium, .size-thumbnail ) {
	float: left;
}

html[ dir=rtl  ] #an-article-maintext :is( .size-medium, .size-thumbnail ) {
	float: right;
}

.single-article #class-upcomming {
	margin-top: calc( var( --global--spacing-unit ) * 30 );
}

.single-article #homepage-latest-news {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

/** events */ 
#an-event-schedule {
	margin-top: calc( var( --global--spacing-unit ) * 20 );
}

th, td {
	text-align: center;
	background-color: var( --global--color-light-gray );
	border-radius: var( --roundness-step-02 );
	padding: var( --global--spacing-unit ) calc( var( --global--spacing-unit ) * 2 );
}

th {
	background-color: var( --global--color-white );
}

#an-event-schedule :is( th, td ) {
	width: 50%;
}

.a-branch {
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-02 );
	padding: calc( var( --global--spacing-unit ) * 1 ) calc( var( --global--spacing-unit ) * 4 );
	font-weight: 500;
	text-shadow: none;
}

.single-event #class-registration-guide {
	margin-top: calc( var( --global--spacing-unit ) * 18 );
}

.single-event #class-upcomming {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

.single-event #team-human {
	margin-top: calc( var( --global--spacing-unit ) * 18 );
	display: flex;
	flex-direction: column;
}

.single-event #team-human .a-member {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	width: 100%;
	transform: none;
	align-items: stretch;
	align-content: stretch;
}

.single-event #team-human .a-member img {
	width: 150px;
	height: 150px;
	flex-grow: 0;
	flex-shrink: 0;
}

.single-event #team-human .a-member .a-member-text {
	align-items: flex-start;
	align-content: flex-start;
	padding: calc( var( --global--spacing-unit ) * 2 );
}

.single-event #team-human .a-member .a-member-name {
	font-size: 1.1em;
	height: 20px;
}

.single-event #team-human .a-member .a-member-about {
	height: 100px;
	overflow: scroll;
	padding: 0!important;
	margin: 0!important;
	font-size: .9em;
}

/** single class */
.single-class #class-registration-guide{
	margin-top: calc( var( --global--spacing-unit ) * 14 );
}

.single-class #team-human {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

.single-class #branch-gallery {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

.single-class #class-upcomming {
	margin-top: calc( var( --global--spacing-unit ) * 24 );
}

/** single news */
.single-news #class-upcomming {
	margin-top: calc( var( --global--spacing-unit ) * 34 );
}

.single-news #branch-gallery {
	margin-top: calc( var( --global--spacing-unit ) * 2 );
}

#related-eventclass {
	position: relative;
	margin-top: calc( var( --global--spacing-unit ) * 14 );
}

#related-eventclass .separated-title {
	font-size: 1em;
}

.eventclass-gallery, .object-type-gallery {
	width: 100%;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-items: stretch;
	justify-content: stretch;
	padding: calc( var( --global--spacing-unit ) * 4 ) 0 0 0;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
}

.eventclass-gallery .a-eventclass, .object-type-gallery .a-object-type {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	border-style: solid;
	transition: all 0.15s;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-02 );
	padding: calc( var( --global--spacing-unit ) * 2 );
	width: calc( 150px + var( --global--spacing-unit ) * 4 )!important;
	max-width: calc( 50% - var( --global--spacing-unit ) * 8 );
}

.eventclass-gallery .a-eventclass:hover, .object-type-gallery .a-object-type:hover {
	transition: all 0.15s;
	box-shadow: 1px 1px 5px var( --global--color-gray );
}

.eventclass-gallery .a-eventclass img, .object-type-gallery .a-object-type img {
	padding: 0!important;
	margin: 0!important;
	width: 100%!important;
	border-radius: calc( var( --roundness-step-02 ) - var( --global--spacing-unit ) * 2 )!important;
}

.eventclass-gallery .a-eventclass .a-eventclass-name, .object-type-gallery .a-object-type .a-object-type-name {
	font-size: .95em;
	text-indent: 0;
}

/** cafe menu */
#cafe-menu {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	position: relative;
	column-gap: calc( var( --global--spacing-unit ) * 4 );
	row-gap: calc( var( --global--spacing-unit ) * 4 );
	margin-bottom: calc( var( --global--spacing-unit ) * 14 );
	padding: calc( var( --global--spacing-unit ) * 8 ) calc( var( --global--spacing-unit ) * 4 ) 0 calc( var( --global--spacing-unit ) * 4 );
}

#cafe-menu #cafe-categories {
	display: flex;
	flex-direction: column;
	column-gap: calc( var( --global--spacing-unit ) * 3 );
	row-gap: calc( var( --global--spacing-unit ) * 3 );
	width: 175px;
	box-sizing: border-box;
	flex-shrink: 0;
	flex-grow: 0;
	padding: calc( var( --global--spacing-unit ) * 4 ) 0 0 0;
	background-color: var( --global--color-white );
}

#cafe-menu #cafe-categories .cafe-menu-category-item {
	cursor: pointer;
	border-style: solid;
	border-width: var( --global--line-width );
	border-radius: var( --roundness-step-01 );
	display: block;
	text-align: center;
	width: 100%;
	font-size: .95em;
	box-sizing: border-box;
	transition: all .15s;
	padding: calc( var( --global--spacing-unit ) * 1 ) calc( var( --global--spacing-unit ) * 4 );
}

#cafe-menu #cafe-categories .cafe-menu-category-item:is( :hover, .selected ) {
	background-color: var( --global--yellow-darker )!important;
	transition: all .15s;
}

#cafe-menu #cafe-items {
	display: block;
	overflow: hidden;
	width: 100%;
	position: relative;
}

#cafe-items .cafe-main-category {
	position: absolute;
	top: 0;
	left: 100%;
	width: 80%;
	margin-left: 10%;
	margin-right: 10%;
	display: flex;
	flex-shrink: 0;
	flex-grow: 0;
	opacity: 0;
	flex-direction: row;
	flex-wrap: wrap;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	padding-top: calc( var( --global--spacing-unit ) * 4 );
	transition: opacity .3;
}

#cafe-items .cafe-main-category.selected {
	opacity: 1;
	position: relative;
	left: auto;
	transition: opacity .3;
}

.cafe-menu-item {
	width: 100%;
	box-sizing: border-box;
	display: flex;
	flex-direction: row-reverse;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	padding: calc( var( --global--spacing-unit ) * 1 );
	border-radius: var( --roundness-step-01 );
	background-color: rgba( 0, 0, 0, 0.03 );
}

.cafe-menu-item:nth-child( 2n + 1 ) {
	flex-direction: row;
}

.cafe-menu-item img{
	border-radius: var( --roundness-step-02 );
	overflow: hidden;
	width: 200px;
	height: 200px;
	flex-grow: 0;
	flex-shrink: 0;
	object-fit: cover;
	box-shadow: 0px 0px 1px var( --global--color-gray );
}

.cafe-menu-item .cafe-menu-item-text {
	display: flex;
	flex-direction: column;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	width: 100%;
	box-sizing: border-box;
	padding: calc( var( --global--spacing-unit ) * 4 );
}

.cafe-menu-item .cafe-menu-item-name {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
}

.cafe-menu-item .cafe-menu-item-name h4 {
	width: 100%;
}

.cafe-menu-item-price {
	font-size: .95em;
	font-weight: 700;
	color: var( --global--pink-darkest );
	padding: 0;
	margin: 0;
	min-width: 5em;
	text-align: right;
}

.cafe-menu-item-price del {
	font-size: .8em;
	color: var( --global--pink-lighter );
	margin: 0 calc( var( --global--spacing-unit ) * 1 );
}

html[ dir="rtl" ] .cafe-menu-item-price {
	text-align: left;
}

.cafe-menu-item-description {
	font-size: .8em;
}

.cafe-child-category {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	box-sizing: border-box;
}

.cafe-child-category-title {
	width: 100%;
	text-align: center;
	font-size: 1.4em;
	font-weight: 500;
	padding: calc( var( --global--spacing-unit ) * 2 ) 0;
	background-color: var( --global--color-white );
}

@media screen and ( width > 960px ) {
	.hide-over-960 {
		display: none!important;
	}	

	#department-maintext img {
		transform: scale( 1.25 );
	}
}

/** archive */
#archive-list {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	align-content: stretch;
	justify-content: stretch;
	justify-items: stretch;
	column-gap: calc( var( --global--spacing-unit ) * 2 );
	row-gap: calc( var( --global--spacing-unit ) * 2 );
}

#archive-list .archive-list-item {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: stretch;
	align-content: stretch;
	justify-content: stretch;
	justify-items: stretch;
	column-gap: calc( var( --global--spacing-unit ) * 1 );
	row-gap: calc( var( --global--spacing-unit ) * 1 );
	padding: calc( var( --global--spacing-unit ) * 1 );
	border-radius: var( --roundness-step-01 );
	background-color: rgba( 0, 0, 0, 0.03 );
	box-sizing: border-box;
	transition: all 0.15s;
	box-shadow: 0px 0px 0px var( --global--color-gray );
}

#archive-list .archive-list-item:hover {
	box-shadow: 0px 0px 3px var( --global--color-gray );
}

#archive-list .archive-list-item img {
	width: 170px;
	height: 170px;
	flex-shrink: 0;
	flex-grow: 0;
	object-fit: cover;
	border-radius: var( --roundness-step-02 );
	box-shadow: 0px 0px 1px var( --global--color-gray );
	overflow: hidden;
}

#archive-list .archive-list-item .archive-list-item-text {
	display: flex;
	flex-direction: column;
	flex-shrink: 1;
	flex-grow: 0;
	width: 100%;
	padding: calc( var( --global--spacing-unit ) * 2 );
}

#archive-list .archive-list-item .archive-list-item-text date {
	margin-top: calc( var( --global--spacing-unit ) * 1.5 );
	padding: calc( var( --global--spacing-unit ) * .3 ) calc( var( --global--spacing-unit ) * 1.5 );
	font-size: .7em;
	width: max-content;
	border-radius: var( --roundness-step-03 );
	border: var( --global--line-width ) solid var( --global--yellow-darker );
	background-color: var( --global--yellow-lightest );
}

#archive-tools {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	row-gap: calc( var( --global--spacing-unit ) * 10 );
}

#archive-tools-terms {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	column-gap: calc( var( --global--spacing-unit ) * 4 );
	row-gap: calc( var( --global--spacing-unit ) * 4 );
}

#archive-tools-search {
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-content: center;
	justify-items: center;
	justify-content: center;
	column-gap: calc( var( --global--spacing-unit ) * 4 );
	row-gap: calc( var( --global--spacing-unit ) * 4 );
}

html[dir="rtl"] #archive-tools-search i {
	transform: scaleX( -1 );
}

.pagination, .woocommerce nav.woocommerce-pagination ul {
	display: flex!important;
	flex-direction: row!important;
	flex-wrap: nowrap!important;
	align-items: center!important;
	align-content: center!important;
	justify-content: center!important;
	justify-items: center!important;
	column-gap: calc( var( --global--spacing-unit ) * 2 )!important;
	row-gap: calc( var( --global--spacing-unit ) * 2 )!important;
	border: none!important;
}

.pagination .page-numbers, .woocommerce nav.woocommerce-pagination ul > li {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	width: 2em;
	height: 2em;
	font-size: 1.05em;
	background-color: var( --global--yellow-lighter );
	border-radius: var( --roundness-step-02 );
	border: var( --global--line-width ) solid var( --global--yellow-darkest );
}

:is( .pagination, .woocommerce-pagination ) .page-numbers.current, 
.woocommerce nav.woocommerce-pagination ul li a:focus, 
.woocommerce nav.woocommerce-pagination ul li a:hover, 
.woocommerce nav.woocommerce-pagination ul li span.current {
	background-color: var( --global--yellow-darker )!important;
	color: var( --global--color-black );
}

html[ dir=rtl ] :is( .pagination, .woocommerce-pagination ) .page-numbers:is( .next, .prev ) i {
	transform: scaleX( -1 );
}

/** product list */
#before-shop-loop .woocommerce-ordering {
	font-size: .9em;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) {
	margin-top: calc( var( --global--spacing-unit ) * 10 );
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	column-gap: calc( var( --global--spacing-unit ) * 8 );
	row-gap: calc( var( --global--spacing-unit ) * 8 );
}

.woocommerce .products ul::after, .woocommerce .products ul::before, 
.woocommerce :is( ul.products, ul.wc-block-grid__products )::after, 
.woocommerce :is( ul.products, ul.wc-block-grid__products )::before {
	content: ""!important;
	display: none!important;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) {
	float: none;
	clear: both;
	margin: 0!important;
	padding: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	width: calc( 33.3333% - var( --global--spacing-unit ) * 8 );
}

:is( .related.products ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) {
	width: calc( 25% - var( --global--spacing-unit ) * 8 )!important;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) a {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	justify-items: center;
	align-content: space-between;
	row-gap: calc( var( --global--spacing-unit ) * 2 );
	padding: calc( var( --global--spacing-unit ) * 6 ) calc( var( --global--spacing-unit ) * 4 );
	width: 100%;
	height: 300px;
	background-image: url( '/wp-content/uploads/2026/02/product-350px-frame.webp' );
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	box-sizing: border-box;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) img {
	width: calc( 100% - var( --global--spacing-unit ) * 8 );
	height: 75%;
	object-fit: contain;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-text {
	position: absolute;
	display: flex;
	flex-direction: column;
	height: 3.25em;
	justify-content: space-between;
	justify-items: space-between;
	background-image: url( '/wp-content/uploads/2026/03/product-350px-text.webp' );
	background-size: 100% 100%;
	background-position: center center;
	background-repeat: no-repeat;
	box-sizing: border-box;
	top: auto;
	bottom: calc( var( --global--spacing-unit ) * 2 );
	left: calc( var( --global--spacing-unit ) * 2 );
	right: calc( var( --global--spacing-unit ) * 2 );
	padding: calc( var( --global--spacing-unit ) * 1.25 ) calc( var( --global--spacing-unit ) * 2 );
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-name {
	width: 100%;
	z-index: 5;
	opacity: .75;
	font-size: .85em;
	font-weight: 500;
	line-height: 1em;
	overflow: hidden;
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-price {
	width: 100%;
	z-index: 5;
	opacity: .75;
	font-size: .8em;
	font-weight: 500;
	line-height: 1em;
	overflow: hidden;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .price {
	color: var( --global--color-black );
}

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ):nth-child(4n) {
	transform: rotateZ( -3deg );
} 

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ):nth-child(4n+1) {
	transform: rotateZ( 2deg );
} 

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ):nth-child(4n+2) {
	transform: rotateZ( 0deg );
} 

:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ):nth-child(4n+3) {
	transform: rotateZ( -2deg );
} 



#product-categories {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: stretch;
	justify-content: center;
	justify-items: center;
	column-gap: calc( var( --global--spacing-unit ) * 8 );
	row-gap: calc( var( --global--spacing-unit ) * 8 );
	margin: calc( var( --global--spacing-unit ) * 18 ) 0 calc( var( --global--spacing-unit ) * 10 ) 0;
	padding-top: calc( var( --global--spacing-unit ) * 8 );
}

#product-categories .product-category {
	position: relative;
	width: 175px;
	height: 175px;
	border-radius: var( --roundness-step-01 );
	border-style: solid;
	border-width: var( --global--line-width );
	overflow: hidden;
}

#product-categories .product-category img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#product-categories .product-category .category-title {
	position: absolute;
	left: calc( var( --global--spacing-unit ) * 1 );
	right: calc( var( --global--spacing-unit ) * 1 );
	top: auto;
	bottom: calc( var( --global--spacing-unit ) * 1 );
	z-index: 1;
	border-radius: var( --roundness-step-02 );
	padding: calc( var( --global--spacing-unit ) * 1 );
	text-align: center;
	font-size: .875em;
	font-weight: 500;
}

#product-categories .product-category:nth-child(3n)  {
	transform: rotateZ( -3deg );
} 

#product-categories .product-category:nth-child(3n+1) {
	transform: rotateZ( 2deg );
} 

#product-categories .product-category:nth-child(3n+2) {
	transform: rotateZ( 0deg );
} 


/**
* Input Plus - Minus
*/
input[type=number] {
	-moz-appearance: textfield!important;
	-webkit-appearance: none;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}

.gn8-input-plus-minus{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	column-gap: var( --1x );
}

.gn8-input-plus-minus input {
	border: none!important;
	width: 2em;
	height: 2em;
	font-weight: 400;
	font-size: 1em;
	padding: 0!important;
	text-align: center;
}

.gn8-input-plus-minus i{
	height: 2em;
	width: 2em;
	border-radius: 100px;
	line-height: 1.5em;
	cursor: pointer;
	font-size: 1em;
	display: flex;
	flex-direction: row;
	align-items: center;
	align-content: center;
	justify-content: center;
	justify-items: center;
	/*color: white;*/
	text-align: center;
	border-radius: 50%;
	border-style: solid;
	border-width: var( --global--line-width );
	border-color: var( --global--pink-darkest );
	background-color: var( --global--pink-lightest );
}

.gn8-input-plus-minus i.button-plus {
	/*background-color: var( --global--color-primary );*/
}

.gn8-input-plus-minus i.button-minus {
	/*background-color: var( --global--red-dark );*/
}

.gn8-input-plus-minus i.button-plus.disabled,
.gn8-input-plus-minus i.button-minus.disabled {
	cursor: not-allowed;
}

.woocommerce div.product div.summary .breadcrumb {
	margin-bottom: calc( var( --global--spacing-unit ) * 8 );
	font-size: .95em;
}

.woocommerce div.product div.summary {
	position: relative;
}

.woocommerce div.product div.summary .share-links {
	bottom: 0;
	position: static;
	margin-top: calc( var( --global--spacing-unit ) * 8 );
}

.woocommerce div.product form.cart div.quantity {
	float: none;
	clear: both;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	margin: 0 calc( var( --global--spacing-unit ) * 4 ) 0 0;
}

div.product p.price, div.product span.price {
	color: var( --global--color-black )!important;
	font-size: 1.25em;
}

.woocommerce div.product form.cart .button {
	float: none;
	clear: both;
	vertical-align: middle;
	font-weight: 500;
	color: var( --global--color-black );
	border-radius: var( --roundness-step-01 );
	border-style: solid;
	border-width: var( --global--line-width );
	border-color: var( --global--pink-darkest );
	background-color: var( --global--pink-lightest )!important;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;
	align-content: stretch;
	margin: calc( var( --global--spacing-unit ) * 8 ) 0;
}

.woocommerce span.onsale {
	min-height: 3.236em;
	min-width: 3.236em;
	padding: .202em;
	font-size: 1em;
	font-weight: 500;
	position: absolute;
	text-align: center;
	line-height: 3.236;
	top: -.5em;
	left: -.5em;
	margin: 0;
	border-radius: 100%;
	border-style: solid;
	border-width: var( --global--line-width );
	border-color: var( --global--pink-darkest );
	background-color: var( --global--pink-lightest )!important;
	color: var( --global--color-black );
	font-size: .857em;
	z-index: 9;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	list-style: none;
	padding: 0 0 0 1em;
	margin: 0 0 1.618em;
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	column-gap: calc( var( --global--spacing-unit ) * 4 );
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after {
	display: none!important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after, 
.woocommerce div.product .woocommerce-tabs ul.tabs li::before {
	display: none!important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	border: var( --global--line-width ) solid var( --global--green-darkest );
	background-color: var( --global--color-white );
	color: #515151;
	display: inline-block;
	position: relative;
	z-index: 0;
	border-radius: var( --roundness-step-01 );
	margin: 0!important;
	padding: 0 1em;
	font-weight: 500;
	font-size: 1em;
	box-sizing: border-box;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	font-weight: 500!important;
}

.woocommerce-tabs.wc-tabs-wrapper {
	padding-top: calc( var( --global--spacing-unit ) * 8 );
}

.woocommerce-Tabs-panel h2{
	margin-bottom: calc( var( --global--spacing-unit ) * 4 );
}

.woocommerce table.shop_attributes th {
	font-size: .95em;
	font-weight: 500!important;
}

.woocommerce table.shop_attributes td {
	font-size: .95em;
	font-style: normal;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background: var( --global--green-lightest );
	color: #515151;
	z-index: 2;
	border-bottom-color: var( --global--green-darkest );
}

.wc-block-grid__product-add-to-cart {
	display: none!important;
}

.product_title {
	font-weight: 500!important;
}

.woocommerce-product-gallery__image img {
	width: 100%;
	max-height: 400px;
	min-height: 400px;
	object-fit: contain;
}

.flex-control-thumbs img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
	overflow: hidden;	
	border-radius: var( --roundness-step-01 );
	/* border: var( --global--color-gray ) solid var( --global--line-width );	 */
	box-shadow: 0px 0px 1px var( --global--color-gray )!important;
}

.flex-control-thumbs li {
	box-sizing: border-box;
	padding: calc( var( --global--spacing-unit ) * 1 );
}

.woocommerce div.product p.price del, 
.woocommerce div.product span.price del {
	opacity: .7;
	font-size: .85em;
	display: inline-block;
}

/** WooCommerce Block */
.wc-block-cart, .wc-block-checkout, .checkout-button, #place_order {
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
}

.wc-block-components-sidebar-layout .wc-block-components-main {
	margin: 0;
	width: 75%;
	box-sizing: border-box;
	padding-right: 0!important;
	border: var( --global--line-width ) solid var( --global--color-black );
	border-radius: var( --roundness-step-01 );
	padding: calc( var( --global--spacing-unit ) * 1 )!important;
}

.wc-block-checkout .wc-block-components-sidebar-layout .wc-block-components-main {
	order: 1!important;
	margin-top: calc( var( --global--spacing-unit ) * 6 )!important;
}

.wc-block-checkout__sidebar.is-sticky {
	position: static;
}

.wc-block-components-sidebar {
	width: 50%;
	box-sizing: border-box;
	padding-left: 0!important;
	align-self: flex-start;
	margin-top: calc( var( --global--spacing-unit ) * 6 )!important;
	padding: calc( var( --global--spacing-unit ) * 4 )!important;
	background-color: var( --global--green-lightest );
	border-radius: var( --roundness-step-01 );
	border: var( --global--line-width ) solid var( --global--color-black );
}

.wc-block-cart__main .wc-block-cart-items td {
	border-style: none;
	padding: calc( var( --global--spacing-unit ) * 4 )!important;
	vertical-align: top;
}

.wc-block-cart__main .wc-block-cart-items {
	border-bottom-style: none!important;
	border-spacing: 0;
}

.wc-block-cart-item__product {
	text-align: left;
}

html[ dir=rtl ] .wc-block-cart-item__product {
	text-align: right;
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link, 
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity .wc-block-cart-item__remove-link {
	padding: calc( var( --global--spacing-unit ) * 1 )!important;
	color: var( --global--pink-darkest );
}

.editor-styles-wrapper table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img, 
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
	margin: 0;
	padding: calc( var( --global--spacing-unit ) * 2 );
	box-sizing: border-box;
	width: 100%;
	object-fit: contain;
}

.wc-block-cart__submit-button, 
button.wc-block-components-checkout-place-order-button {
	border-radius: var( --roundness-step-01 )!important;
	border: var( --global--line-width ) solid var( --global--green-darkest )!important;
	background-color: var( --global--green-darker )!important;
}

.wc-block-cart__submit {
	margin: 0!important;
}

.wc-block-checkout__sidebar {
	order: 0!important;
	width: 75%;
}

.wc-block-checkout__form {
	padding: calc( var( --global--spacing-unit ) * 2 );
}

.wc-block-checkout__form :is( input, textarea, select ) {
	border-radius: var( --roundness-step-01 )!important;
}

.wc-block-components-country-input {
	margin-top: calc( var( --global--spacing-unit ) * 3 )!important;
}

.wc-block-components-notice-banner.is-error {
	border-radius: var( --roundness-step-01 )!important;
	background-color: #fff0f0;
	border-color: #cc1818;
}

.wc-block-checkout__actions .wc-block-checkout__actions_row {
	font-size: var( --global--font-size-base );
	padding: calc( var( --global--spacing-unit ) * 4 )!important;
	background-color: var( --global--green-lightest );
	border-radius: var( --roundness-step-01 );
	border: var( --global--line-width ) solid var( --global--color-black );
}

.wc-block-checkout__actions {
	margin-bottom: 0px!important;
}

.wc-block-components-textarea {
	resize: none!important;
	height: 10em;
}

.checkout-button, .wc-backward, #place_order {
	color: var( --global--color-black )!important;
	font-weight: 500!important;
	font-size: var( --global--font-size-base )!important;
	padding: calc( var( --global--spacing-unit ) * 4 )!important;
	background-color: var( --global--green-lightest )!important;
	border-radius: var( --roundness-step-01 )!important;
	border: var( --global--line-width ) solid var( --global--green-darkest )!important;
}

#place_order {
	padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 8 )!important;
}

[name=update_cart] {
	color: var( --global--color-black )!important;
	font-weight: 500!important;
	text-align: right!important;
	transition: all .15s;
	opacity: 1;
}

html[ dir=rtl ] [name=update_cart] {
	text-align: left!important;
}

[name=update_cart]:disabled {
	opacity: .3!important;
	transition: all .15s;
}

:is( .is-mobile )::before {
	display: none!important;
	content: ""!important;
}

.wp-block-heading {
	margin: calc( var( --global--spacing-unit ) * 8 ) 0!important;
}

.theme-twentytwenty .wc-block-grid.has-3-columns .wc-block-grid__product, 
.wc-block-grid.has-3-columns .wc-block-grid__product {
    flex: 1 1 calc( 33.3333% - var( --global--spacing-unit ) * 8 );
    max-width: calc( 33.3333% - var( --global--spacing-unit ) * 8 );
}

:is( .woocommerce-cart-form, .shop_table, .cart_item ) :is( td, th ) {
	border: none;
	border-radius: 0;
	background-color: transparent;
}

:is( .woocommerce-cart-form, .shop_table ) :is( th, button ) {
	font-weight: 500!important;
}

:is( .woocommerce-cart-form, .shop_table ) {
	border-radius: var( --roundness-step-01 )!important;
}

.woocommerce-error, 
.woocommerce-info, 
.woocommerce-message {
    padding: calc( var( --global--spacing-unit ) * 4 )!important;
    margin: 0 0 calc( var( --global--spacing-unit ) * 8 ) 0!important;
    position: relative;
    background-color: var( --global--green-darkest );
    color: var( --global--color-white );
    border-top: none!important;
	border-radius: var( --roundness-step-01 )!important;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;
}

.woocommerce-info {
    background-color: var( --global--blue-darkest );
}

.woocommerce-error {
    background-color: var( --global--pink-darkest );
}

.woocommerce-error::before, 
.woocommerce-info::before, 
.woocommerce-message::before {
    font-family: WooCommerce;
    content: " ";
    display: none!important;
    position: absolute;
}

.woocommerce-form-coupon-toggle {
	border-radius: var( --roundness-step-01 )!important;
    background-color: var( --global--blue-darkest );
	margin-bottom: calc( var( --global--spacing-unit ) * 8 );
    padding: 0!important;
	overflow: hidden;
}

.woocommerce-form-coupon-toggle :is( .woocommerce-error, .woocommerce-info, .woocommerce-message ) {
    margin: 0!important;
}

.woocommerce a.remove {
	display: block;
	font-size: .8em!important;
	height: auto!important;
	width: auto!important;
	text-align: center;
	line-height: 1;
	border-radius: 0;
	color: var( --wc-red ) !important;
	text-decoration: none;
	font-weight: 400!important;
	border: 0;
}

.woocommerce #content table.cart td.actions .coupon, 
.woocommerce table.cart td.actions .coupon, 
.woocommerce-page #content table.cart td.actions .coupon, 
.woocommerce-page table.cart td.actions .coupon {
	float: left;
	display: flex;
	align-items: stretch;
	align-content: stretch;
}

#add_payment_method table.cart td.actions .coupon .input-text, 
.woocommerce-cart table.cart td.actions .coupon .input-text, 
.woocommerce-checkout table.cart td.actions .coupon .input-text {
	float: left;
	box-sizing: border-box;
	border: var( --global--line-width ) solid var( --global--color-black );
	padding: calc( var( --global--spacing-unit ) * 1 ) calc( var( --global--spacing-unit ) * 3 )!important;
	margin: 0;
	outline: 0;
}

.woocommerce #content table.cart td.actions .input-text, 
.woocommerce table.cart td.actions .input-text, 
.woocommerce-page #content table.cart td.actions .input-text, 
.woocommerce-page table.cart td.actions .input-text {
	width: auto;
}

.woocommerce table.shop_table_responsive tr:nth-child(2n) td, 
.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
	background-color: rgba( 0,0,0,0 )!important;
}

.woocommerce table.shop_table_responsive tr td::before, 
.woocommerce-page table.shop_table_responsive tr td::before {
	font-weight: 500!important;
}

:is( .woocommerce table.shop_table_responsive tr td, .woocommerce-page table.shop_table_responsive tr td ) .gn8-input-plus-minus {
	justify-content: flex-end;
	justify-items: flex-end;
}

#add_payment_method table.cart td.actions .coupon .coupon-error-notice, 
.woocommerce-cart table.cart td.actions .coupon .coupon-error-notice, 
.woocommerce-checkout table.cart td.actions .coupon .coupon-error-notice {	
	flex-basis: auto;
}

#customer_details {
	width: 100%;
	max-width: 576px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: calc( var( --global--spacing-unit ) * 8 );
}

#customer_details :is( h1, h2, h3, h4, h5, h6 ) {
	padding: 0 calc( var( --global--spacing-unit ) * 3 )!important;
}

.woocommerce form.checkout_coupon {
	border: none!important;
	padding: calc( var( --global--spacing-unit ) * 4 );
	margin: 0!important;
	text-align: auto;
	border-radius: 0!important;
}

#woocommerce-checkout-form-coupon {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1%;
}

:is( #woocommerce-checkout-form-coupon, .woocommerce-checkout ) :is( input, textarea, select ) {
	padding: calc( var( --global--spacing-unit ) * 1.5 ) calc( var( --global--spacing-unit ) * 3 );
	border-radius: var( --roundness-step-01 );
}

button[name=apply_coupon] {
	color: var( --global--color-black )!important;
	font-weight: 500!important;
	font-size: var( --global--font-size-base )!important;
	background-color: var( --global--green-lightest )!important;
	border-radius: var( --roundness-step-01 )!important;
	border: var( --global--line-width ) solid var( --global--green-darkest )!important;
}

.form-row label {
	padding: 0 calc( var( --global--spacing-unit ) * 3 )!important;
}

.woocommerce-additional-fields {
	margin-top: calc( var( --global--spacing-unit ) * 8 )!important;
}

#order_comments {
	height: 8em;
	resize: none!important;
}

@media screen and ( width > 960px ) {	

	html:not([dir=rtl]) :is( ul#primary-menu-list, ul#shop-menu-list ) > li.lang-item {
		margin-left: auto;
	}

	html[dir=rtl] :is( ul#primary-menu-list, ul#shop-menu-list ) > li.lang-item {
		margin-right: auto;
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children ul.sub-menu {
		display: none;
		box-sizing: border-box;
		position: absolute;
		top: calc( 50% + 1em );
		left: calc( var( --global--spacing-horizontal ) * -0.5 );
		right: auto;
		width: max-content;
		min-width: calc( 100% + var( --global--spacing-horizontal ) );
		padding: calc( var( --global--spacing-horizontal ) * 1 );
		background-color: var( --global--color-white );
		color: var( --global--color-black );
		list-style: none;
		border-bottom-left-radius: var( --roundness-step-03 );
		border-bottom-right-radius: var( --roundness-step-03 );
		/*box-shadow: 0px 2px 1px var( --global--color-gray );*/
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children:hover ul.sub-menu {
		display: flex;
		flex-direction: column;
		row-gap: calc( var( --global--spacing-horizontal ) * 1 );
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children::before {
		content: "+";
		display: block;
		position: absolute;
		right: 102.5%;
		left:auto;
		transition: all 0.3s;
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children:hover::before {
		content: "-";
		display: block;
		position: absolute;
		right: 102.5%;
		left:auto;
		transition: all 0.3s;
	}

	html[ dir=rtl ] :is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children::before {
		content: "+";
		display: block;
		position: absolute;
		left: 102.5%;
		right:auto;
		transition: all 0.3s;
	}
	
	html[ dir=rtl ] :is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children:hover::before {
		content: "-";
		display: block;
		position: absolute;
		left: 102.5%;
		right:auto;
		transition: all 0.3s;
	}
	
	#masthead.gn8-sticky-header :is( ul#primary-menu-list, ul#shop-menu-list ) > li {
		height: calc( var( --global--spacing-horizontal ) * 1.75 );
	}


	#masthead.gn8-sticky-header :is( ul#primary-menu-list, ul#shop-menu-list ) > li.menu-item-has-children ul.sub-menu {
		background-color: var( --global--green-lightest );
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) > li {
		height: calc( var( --global--spacing-horizontal ) * 2.5 );
	}
}

@media screen and ( width < 961px ) {

	:is( #page-hero-banner ) .breadcrumb {
		left: calc( var( --global--spacing-unit ) * 4 );
	}	

	.share-links a {
		display: block;
		width: 30px;
		height: 30px;
	}

	.eventclass-gallery {
		justify-content: center;
		justify-items: center;
	}

	#cafe-items .cafe-main-category {
		position: absolute;
		top: 0;
		box-sizing: border-box;
		left: 100%;
		width: 100%;
		margin-left: 0%;
		margin-right: 0%;
		display: flex;
		flex-shrink: 0;
		flex-grow: 0;
		opacity: 0;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: calc( var( --global--spacing-unit ) * 2 );
		row-gap: calc( var( --global--spacing-unit ) * 2 );
		padding-top: calc( var( --global--spacing-unit ) * 4 );
		transition: opacity .3;
	}

	#archive-list .archive-list-item img {
		width: 120px;
		height: auto;
		object-fit: cover;
	}

	#product-categories .product-category {
		width: 150px;
		height: 150px;
	}

	#product-categories .product-category .category-title {
		font-size: .775em;
	}

	#product-categories {
		column-gap: calc( var( --global--spacing-unit ) * 4 );
		row-gap: calc( var( --global--spacing-unit ) * 4 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) {
		column-gap: calc( var( --global--spacing-unit ) * 4 );
		row-gap: calc( var( --global--spacing-unit ) * 4 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) {
		float: none;
		clear: both;
		margin: 0!important;
		padding: 0;
		position: relative;
		width: calc( 33.3333% - var( --global--spacing-unit ) * 4 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) a {
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		justify-items: center;
		align-content: space-between;
		row-gap: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 6 ) calc( var( --global--spacing-unit ) * 4 );
		width: 100%;
		height: 250px;
		max-width: 250px;
		background-image: url( '/wp-content/uploads/2026/02/product-350px-frame.webp' );
		background-size: contain;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-text {
		position: absolute;
		display: flex;
		flex-direction: column;
		height: 3.25em;
		justify-content: space-between;
		justify-items: space-between;
		background-image: url( '/wp-content/uploads/2026/03/product-350px-text.webp' );
		background-size: 100% 100%;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
		top: auto;
		bottom: calc( var( --global--spacing-unit ) * 2 );
		left: calc( var( --global--spacing-unit ) * 4 );
		right: calc( var( --global--spacing-unit ) * 4 );
		padding: calc( var( --global--spacing-unit ) * 1.25 ) calc( var( --global--spacing-unit ) * 2 );
	}

	.wc-block-cart__main .wc-block-cart-items td {
		padding: calc( var( --global--spacing-unit ) * 0.5 )!important;
	}

	#shop-menu-list {
		flex-direction: row!important;
	}
	
	:is(ul#primary-menu-list, ul#shop-menu-list) {
		column-gap: calc( var(--global--spacing-unit) * 4 );
		font-size: .95em;
	}
}

@media screen and ( width < 769px ) {

	#cafe-menu {
		display: flex;
		flex-direction: column;
		column-gap: calc( var( --global--spacing-unit ) * 4 );
		row-gap: calc( var( --global--spacing-unit ) * 4 );
		margin-bottom: calc( var( --global--spacing-unit ) * 14 );
		padding: calc( var( --global--spacing-unit ) * 0 ) calc( var( --global--spacing-unit ) * 0 ) 0 calc( var( --global--spacing-unit ) * 0 );
	}

	#cafe-menu #cafe-categories {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: calc( var( --global--spacing-unit ) * 3 );
		row-gap: calc( var( --global--spacing-unit ) * 3 );
		width: 100%;
		box-sizing: border-box;
		padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 1 );
	}

	#cafe-menu #cafe-categories .cafe-menu-category-item {
		width: calc( 33.33% - var( --global--spacing-unit ) * 3 );
		font-size: .95em;
		flex-grow: 0;
		flex-shrink: 0;
	}

	#cafe-items .cafe-main-category {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		box-sizing: border-box;
	}

	#product-categories .product-category {
		width: 125px;
		height: 125px;
	}

	#product-categories .product-category .category-title {
		font-size: .705em;
	}

	#product-categories {
		column-gap: calc( var( --global--spacing-unit ) * 2 );
		row-gap: calc( var( --global--spacing-unit ) * 2 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) {
		column-gap: calc( var( --global--spacing-unit ) * 3 );
		row-gap: calc( var( --global--spacing-unit ) * 3 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) {
		float: none;
		clear: both;
		margin: 0!important;
		padding: 0;
		position: relative;
		width: calc( 33.33% - var( --global--spacing-unit ) * 3 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) a {
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		justify-items: center;
		align-content: space-between;
		row-gap: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 6 ) calc( var( --global--spacing-unit ) * 4 );
		width: 190px;
		height: 210px;
		background-image: url( '/wp-content/uploads/2026/02/product-350px-frame.webp' );
		background-size: contain;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-text {
		position: absolute;
		display: flex;
		flex-direction: column;
		height: 3.25em;
		justify-content: space-between;
		justify-items: space-between;
		background-image: url( '/wp-content/uploads/2026/03/product-350px-text.webp' );
		background-size: 100% 100%;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
		top: auto;
		bottom: calc( var( --global--spacing-unit ) * 2 );
		left: min( calc( var( --global--spacing-unit ) * 2 ) );
		right: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 1.25 ) calc( var( --global--spacing-unit ) * 2 );
	}

	.woocommerce-product-gallery__image img {
		width: 100%;
		max-height: 350px;
		min-height: 350px;
		object-fit: contain;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main {
		width: 100%;
	}

	.wc-block-components-sidebar {
		width: 100%;
	}

	button[name=update_cart] {
		margin-top: calc( var( --global--spacing-unit ) * 1 )!important;
		width: 100%!important;
	}
}

/* responsive */
@media screen and ( width < 1360px ) and ( width > 960px ) {

	#main, #masthead {
		width: calc( 100% - var( --global--spacing-horizontal ) );
		margin: 0 calc( var( --global--spacing-horizontal ) * .5 );
	}
	

	#masthead.gn8-sticky-header :is( ul#primary-menu-list, ul#shop-menu-list ) > li {
		height: calc( var( --global--spacing-horizontal ) * 2 );
	}

	#main {
		margin-top: calc( var( --global--spacing-horizontal ) * 1.5 );
	}

	#colophon > * {
		max-width: 960px;
		width: 100%;
		margin: 0 calc( var( --global--spacing-horizontal ) );
	}

	#colophon {
		margin: 0;
		padding: calc( var( --global--spacing-horizontal ) * 4 ) var( --global--spacing-horizontal ) calc( var( --global--spacing-vertical ) * 10 ) var( --global--spacing-horizontal );
	}

	.sign {
		width: 120px;
		height: 120px;
	}

	#footer-branches {
		margin: calc( var( --global--spacing-vertical ) * 3 ) 0;
	}
	
	#homepage-hero-banner {
		height: 500px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
		background-position: 50% top;
		background-size: cover;
		background-repeat: no-repeat;
	}
	
	#homepage-latest-news {
		height: 350px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-latest-news-01.webp" );
		background-size: contain;
		background-repeat: no-repeat;
		align-items: center;
		align-content: center;
		padding: calc( var( --global--spacing-unit ) * 2 ) 0px 0px 0px!important;
		border-width: 0!important;
	}

	#homepage-latest-news .a-slide {
		max-width: 225px;
		min-width: 225px;
		height: 225px!important;
	}

	.slides-container {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
	}

	#about-balloonia img {
		width: 250px;
	}

	:is( #related-products, #homepage-products ) .product-slide {
		width: 200px;
		height: 200px;
	}

	#for-mothers img {
		max-width: 175px;
	}

	#class-upcomming {		
		background-size: contain;
		background-repeat: no-repeat;
	}

	#class-upcomming .a-slide {
		max-width: 225px;
		min-width: 225px;
		height: 225px!important;
	}

	#department-registration-guide > img {
		width: 200px;
		height: auto;
		object-fit: contain;
		transform: scale( 1.7 );
		transform-origin: 65% 50%;
		flex-shrink: 1;
		flex-grow: 0;
	}

	:is( #related-products, #homepage-products ) .product-slide .product-text {
		height: 3em;
		font-size: .95rem;
	}
}

@media screen and ( width < 961px ) and ( width > 768px ) {
	:root {
		--global--spacing-horizontal: calc( 2.5 * var( --global--spacing-unit ) );
		--global--spacing-vertical: calc( 2.5 * var( --global--spacing-unit ) );
		--roundness-step-01: calc( 2.5 * var(--global--spacing-unit) );
	}

	#main, #masthead {
		width: calc( 100% - var( --global--spacing-horizontal ) * 2 );
		margin: 0 calc( var( --global--spacing-horizontal ) * 1 );
	}

	#main {
		margin-top: calc( var( --global--spacing-vertical ) * 1.5 );
	}

	#colophon > * {
		max-width: 768px;
		width: 100%;
	}	

	#colophon {
		margin: 0;
		width: 100%;
		background-size: 150%;
		width: calc( 100% - var( --global--spacing-horizontal ) );
		padding: calc( var( --global--spacing-horizontal ) * 4 ) var( --global--spacing-horizontal ) calc( var( --global--spacing-vertical ) * 10 ) var( --global--spacing-horizontal );
	}

	.vertical-960 {
		flex-direction: column!important;
	}

	.vertical-rev-960 {
		flex-direction: column-reverse!important;
	}

	#about-balloonia img {
		height: auto;
		max-height: 350px;
		min-width: 150px;
		width: 40%;
		object-fit: contain;
	}
	
	#about-balloonia {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}

	img.image-top-left{
		object-position: top left;
		align-self: flex-start;
	}

	img.image-top-right{
		object-position: top right;
		align-self: flex-end;
	}

	img.image-bottom-left{
		object-position: bottom left;
		align-self: flex-start;
	}

	img.image-bottom-right{
		object-position: bottom right;
		align-self: flex-start;
	}

	.sign {
		width: 100px;
		height: 100px;
	}

	#footer-separator {
		padding: calc( var( --global--spacing-vertical ) * 6 ) 0;
	}

	#footer-branches {
		margin: calc( var( --global--spacing-vertical ) * 3 ) 0;
	}
	
	#homepage-hero-banner {
		height: 450px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
		background-position: 50% top;
		background-size: cover;
		background-repeat: no-repeat;
	}
	
	#homepage-latest-news {
		height: 350px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-latest-news-01.webp" );
		background-size: 150%;
		background-repeat: no-repeat;
		align-items: center;
		align-content: center;
		padding: calc( var( --global--spacing-unit ) * 2 ) 0px 0px 0px!important;
		border-width: 0!important;
	}

	#homepage-latest-news .a-slide {
		max-width: 225px;
		min-width: 225px;
		height: 225px!important;
	}

	.hide-under-960 {
		display: none;
	}

	:is( #related-products, #homepage-products ) .product-slide {
		width: 200px;
		height: 200px;
	}

	:is( #related-products, #homepage-products ) {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}


	#for-mothers img {
		max-width: 150px;
	}

	.rich-text .separated-title {
		margin-left: 0!important;
		margin-right: 0!important;
	}

	body:not( :is( .home, .front-page ) ) #main {
		margin-top: calc( var( --global--spacing-vertical ) * 5 );
		/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
	}

	#class-upcomming {	
		background-size: 150%;
		background-repeat: no-repeat;
	}

	#class-upcomming .a-slide {
		max-width: 225px;
		min-width: 225px;
		height: 225px!important;
	}

	.image-gallery .an-image {
		flex-basis: calc( 25% - ( var( --global--spacing-unit ) * 5 ) );
	}

	#department-registration-guide > img {
		width: 250px;
		height: auto;
		object-fit: contain;
		transform: scale( 1.5 );
		transform-origin: 70% 16%;
		flex-shrink: 1;
		flex-grow: 0;
	}

	#team-human .a-member {
		width: calc( 180px + var( --global--spacing-unit ) * 2 ); 
	}

	#team-human .a-member img {
		width: 180px;
		height: 180px;
	}

	#team-character .a-member:nth-child(2n) {
		flex-direction: column;
	}

	#team-character .a-member:nth-child(2n+1) {
		flex-direction: column;
	}

	#team-character .a-member .a-member-image {
		position: absolute;
		top: calc( var( --global--spacing-unit ) * 1.5 );
		z-index: 1;
		width: 200px;
		height: 200px;
		overflow: hidden;
		box-sizing: border-box;
		border-style: solid;
		border-radius: 50%;
		border-width: var( --global--line-width );
		padding: calc( var( --global--spacing-unit ) * 2.5 );
	}

	#team-character .a-member .a-member-text {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		align-content: center;
		width: calc( 100% - 165px );
		min-height: 250px;
		box-sizing: border-box;
		border-style: solid;
		border-width: var( --global--line-width );
		border-radius: var( --roundness-step-01 );
		padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 6.5 );
		margin-top: calc( var( --global--spacing-unit ) * 1 );
	}

	#primary-mobile-menu {
		display: flex;
		z-index: 999;
		transition: padding 0.25s;
	}

	#masthead.gn8-sticky-header #primary-mobile-menu {
		padding: calc( 2 * var( --global--spacing-horizontal ) ) calc( 2.5 * var( --global--spacing-horizontal ) );
		transition: padding 0.25s;
	}	

	#site-navigation {
		position: fixed;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		height: 100%;
		width: auto;
		left: 100%;
		right: -100%;
		top: 0;
		bottom: 0;
		background-color: var( --global--color-white );
	}

	#site-navigation.is-open {
		transition: all .5s;
		left: max( calc( 0% + var( --global--spacing-vertical ) * 4 ), calc( 100% - 500px ) );
		right: 0;
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: 100%;
		overflow-y: auto;
		align-items: stretch;
		align-content: stretch;
		justify-content: center;
		justify-items: center;
		list-style-type: none;
		padding: calc( var( --global--spacing-vertical ) * 1 )!important;
		box-sizing: border-box;
		background-color: var( --global--color-white );
		margin: 0!important;
	}	

	:is( ul#primary-menu-list, ul#shop-menu-list ) li {
		text-align: center;
	}	
	
	#footer-reserve-info-side-image {
        position: absolute;
        right: -50px;
        left: auto;
        bottom: -40px;
        top: auto;
        width: 350px;
        height: auto;
		z-index: 9;
    }
}

@media screen and ( width < 769px ) and ( width > 576px ) {
	:root {
		--global--spacing-horizontal: calc( 2 * var( --global--spacing-unit ) );
		--global--spacing-vertical: calc( 2 * var( --global--spacing-unit ) );
		--roundness-step-01: calc( 2 * var(--global--spacing-unit) );
	}

	#main, #masthead, #colophon {
		margin: 0 calc( var( --global--spacing-horizontal ) * 1 );
	}
	
	#main, #masthead {
		width: calc( 100% - var( --global--spacing-horizontal ) * 2 );
		padding: 0;
	}

	#masthead {
		height: calc( var( --global--spacing-horizontal ) * 6.5 );
		background-color: transparent;
		transition: all 0.25s;
	}

	#masthead.gn8-sticky-header {
		background-color: var( --global--color-white );
		transition: all 0.25s;
	}

	#main {
		margin-top: calc( var( --global--spacing-vertical ) * 2 );
	}

	#colophon > * {
		width: 100%;
	}

	#colophon {
		background-size: 150%;
		width: calc( 100% - var( --global--spacing-horizontal ) * 2 );
		padding: calc( var( --global--spacing-horizontal ) * 4 ) var( --global--spacing-horizontal ) calc( var( --global--spacing-vertical ) * 10 ) var( --global--spacing-horizontal );
	}

	.vertical-960 {
		flex-direction: column!important;
	}

	.vertical-rev-960 {
		flex-direction: column-reverse!important;
	}

	#about-balloonia img {
		height: auto;
		max-height: 350px;
		min-width: 150px;
		width: 40%;
		object-fit: contain;
	}
	
	#about-balloonia {
		margin-top: calc( var( --global--spacing-unit ) * 18 );
	}

	img.image-top-left{
		object-position: top left;
		align-self: flex-start;
	}

	img.image-top-right{
		object-position: top right;
		align-self: flex-end;
	}

	img.image-bottom-left{
		object-position: bottom left;
		align-self: flex-start;
	}

	img.image-bottom-right{
		object-position: bottom right;
		align-self: flex-start;
	}

	:is( .balloonia-container, section ).horizontal {
		flex-direction: column;
	}

	.sign {
		width: 80px;
		height: 80px;
	}	

	#footer-separator {
		padding: calc( var( --global--spacing-vertical ) * 6 ) 0;
		background-size: 60%;
	}

	#footer-branches {
		margin: calc( var( --global--spacing-vertical ) * 3 ) 0;
	}

	#footer-branches .a-branch .branch-map{
		width: 100%;
	}

	#footer-branches .a-branch .inline-sign {
		width: 10%;
	}

	.button-link, .button-solid-link {
		padding: calc( var( --global--spacing-horizontal ) / 2 ) calc( var( --global--spacing-horizontal ) );
	}
	
	.button-link {
		/*flex-direction: column;*/
	}

	#primary-mobile-menu {
		display: flex;
		z-index: 999;
		transition: padding 0.25s;
	}

	#masthead.gn8-sticky-header #primary-mobile-menu {
		padding: calc( 2 * var( --global--spacing-horizontal ) ) calc( 2.5 * var( --global--spacing-horizontal ) );
		transition: padding 0.25s;
	}

	#site-navigation {
		position: fixed;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		height: 100%;
		width: auto;
		left: 100%;
		right: -100%;
		top: 0;
		bottom: 0;
		background-color: var( --global--color-white );
	}

	#site-navigation.is-open {
		transition: all .5s;
		left: max( calc( 0% + var( --global--spacing-vertical ) * 4 ), calc( 100% - 500px ) );
		right: 0;
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: auto;
		overflow-y: auto;
		align-items: stretch;
		align-content: stretch;
		justify-content: center;
		justify-items: center;
		list-style-type: none;
		padding: calc( var( --global--spacing-vertical ) * 1 )!important;
		box-sizing: border-box;
		background-color: var( --global--color-white );
		margin: 0!important;
	}	

	:is( ul#primary-menu-list, ul#shop-menu-list ) li {
		text-align: center;
	}

	#footer-reserve-info .balloonia-container {
		padding-top: calc( var( --global--spacing-vertical ) * 3 );
	}
	
	#footer-reserve-info .sign {
		display: none;
	}
	
	#homepage-hero-banner {
		height: 500px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
		background-position: 50% top;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#main > * {
		max-width: 1360px;
		width: 100%;
		box-sizing: border-box;
	}

	.slides-container {
		left: 0;
		right: 0;
	}

	#homepage-hero-banner.is-slider .a-slide .slide-image {
		width: 50%;
	}

	#homepage-hero-banner.is-slider .a-slide .slide-text {
		width: 50%;
	}
	
	#homepage-latest-news {
		height: 350px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-latest-news-01.webp" );
		background-size: 150%;
		background-repeat: no-repeat;
		align-items: center;
		align-content: center;
		padding: calc( var( --global--spacing-unit ) * 2 ) 0px 0px 0px!important;
		border-width: 0!important;
	}

	#homepage-latest-news .a-slide {
		max-width: 220px;
		min-width: 220px;
		height: 220px!important;
	}

	.hide-under-960 {
		display: none;
	}

	:is( #related-products, #homepage-products ) .product-slide {
		width: 180px;
		height: 180px;
	}

	:is( #related-products, #homepage-products ) .product-slide .product-text {
		height: 3em;
		font-size: .95rem;
	}

	:is( #related-products, #homepage-products ) {
		margin-top: calc( var( --global--spacing-unit ) * 18 );
	}


	#for-mothers img {
		max-width: 100px;
	}

	.rich-text .separated-title {
		margin-left: 0!important;
		margin-right: 0!important;
	}	

	#page-hero-banner .banner-image {
		width: 100%;
		height: 85%;
		width: 100%;
	}

	#page-hero-banner .banner-text {
		width: auto;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		padding: 0 calc( 8 * var( --global--spacing-horizontal ) );
	}

	body:not( :is( .home, .front-page ) ) #main {
		margin-top: calc( var( --global--spacing-vertical ) * 9 );
		/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
	}

	body:is( .home, .front-page ) #main {
		margin-top: calc( var( --global--spacing-vertical ) );
		/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
	}
	
	#class-upcomming {
		background-size: 150%;
		background-repeat: no-repeat;
	}

	#class-upcomming .a-slide {
		max-width: 220px;
		min-width: 220px;
		height: 220px!important;
	}

	.image-gallery .an-image {
		flex-basis: calc( 25% - ( var( --global--spacing-unit ) * 5 ) );
	}

	#branch-departments .an-department {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		align-content: center;
		flex-basis: calc( 100% - var( --global--spacing-unit ) * 5 );
	}	

	#department-maintext {
		display: flex;
		flex-direction: column;
	}

	html[ dir=rtl ] #department-maintext {
		flex-direction: column;
	}

	#department-maintext img {
		width: 300px;
		transform: scale( 1.25 );
	}

	#department-registration-guide > img {
		width: 250px;
		height: auto;
		object-fit: contain;
		transform: scale( 1.25 );
		transform-origin: center 50px;
		flex-shrink: 1;
		flex-grow: 0;
	}

	#department-registration-guide {
		flex-direction: column-reverse;
		align-items: center;
		align-content: center;
	}

	#team-human .a-member {
		width: calc( 150px + var( --global--spacing-unit ) * 2 ); 
	}

	#team-human .a-member img {
		width: 150px;
		height: 150px;
	}

	#team-character .a-member:nth-child(2n) {
		flex-direction: column;
	}

	#team-character .a-member:nth-child(2n+1) {
		flex-direction: column;
	}

	#team-character .a-member .a-member-image {
		position: absolute;
		top: calc( var( --global--spacing-unit ) * 1.5 );
		z-index: 1;
		width: 200px;
		height: 200px;
		overflow: hidden;
		box-sizing: border-box;
		border-style: solid;
		border-radius: 50%;
		border-width: var( --global--line-width );
		padding: calc( var( --global--spacing-unit ) * 2.5 );
	}

	#team-character .a-member .a-member-text {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		align-content: center;
		width: calc( 100% - 165px );
		min-height: 250px;
		box-sizing: border-box;
		border-style: solid;
		border-width: var( --global--line-width );
		border-radius: var( --roundness-step-01 );
		padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 6.5 );
		margin-top: calc( var( --global--spacing-unit ) * 1 );
	}

	#page-hero-half-banner {
		height: 350px;
	}

	#page-hero-half-banner .banner-image {
		width: 300px;
		height: 300px;
	}

	#page-hero-half-banner .banner-text {
		width: calc( 100% - 300px - calc( var( --global--spacing-unit ) * 6 ) );
		padding-left: max( calc( ( 100% - 960px ) / 2 ), calc( var( --global--spacing-unit ) * 4 ) );
	}

	.single-article #class-upcomming {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}

	.single-article #homepage-latest-news {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}	

	:is( #related-products, #homepage-products ) .product-slide .product-name {
		font-size: .9em;
		line-height: .9em;
	}

	:is( #related-products, #homepage-products ) .product-slide .product-price {
		font-size: .7em;
		line-height: .85em;
	}
	
	#footer-reserve-info-side-image {
        position: absolute;
        right: -40px;
        left: auto;
        bottom: -35px;
        top: auto;
        width: 270px;
        height: auto;
        z-index: 9;
    }
}

@media screen and ( width < 577px ) {
	:root {
		--global--spacing-horizontal: calc( 3 * var( --global--spacing-unit ) );
		--global--spacing-vertical: calc( 3 * var( --global--spacing-unit ) );
		--roundness-step-01: calc( 3 * var(--global--spacing-unit) );

		--global--font-size-base: .9rem;
		--global--font-size-xs: .85rem;
		--global--font-size-sm: .9rem;
		--global--font-size-md: .95rem;
		--global--font-size-lg: 1rem;
		--global--font-size-xl: 1.1rem;
		--global--font-size-xxl: 1.5rem;
		--global--font-size-xxxl: 1.75rem;
	}

	#main, #masthead {
		margin: 0 calc( var( --global--spacing-horizontal ) * 1 );
	}
	
	#main, #masthead {
		width: calc( 100% - var( --global--spacing-horizontal ) * 2 );
		padding: 0;
	}

	#colophon {
		padding-top: var( --global--spacing-horizontal );
		margin: 0;
	}

	#masthead {
		height: calc( var( --global--spacing-horizontal ) * 5 );
		/* background-color: var( --global--color-white ); */
		transition: all 0.25s;
	}

	#masthead.gn8-sticky-header {
		background-color: var( --global--color-white );
		transition: all 0.25s;
	}

	.vertical-960 {
		flex-direction: column!important;
	}

	.vertical-rev-960 {
		flex-direction: column-reverse!important;
	}

	#about-balloonia img {
		height: auto;
		max-height: 135px;
		width: 100%;
  		max-width: 100%;
		object-fit: contain;
	}
	
	#about-balloonia {
		margin-top: calc( var( --global--spacing-unit ) * 8 );
	}
	

	img.image-top-left{
		object-position: top left;
		align-self: flex-start;
	}

	img.image-top-right{
		object-position: top right;
		align-self: flex-end;
	}

	img.image-bottom-left{
		object-position: bottom left;
		align-self: flex-start;
	}

	img.image-bottom-right{
		object-position: bottom right;
		align-self: flex-start;
	}

	#main {
		margin-top: calc( var( --global--spacing-vertical ) * 1.5 );
	}

	#colophon > * {
		width: 100%;
	}

	#colophon {
		background-size: 200%;
		width: calc( 100% - var( --global--spacing-horizontal ) );
		padding: calc( var( --global--spacing-horizontal ) * 4 ) var( --global--spacing-horizontal ) calc( var( --global--spacing-vertical ) * 10 ) var( --global--spacing-horizontal );
	}

	:is( .balloonia-container, section ).horizontal {
		flex-direction: column;
	}

	.sign {
		width: 80px;
		height: 80px;
	}

	.separated-title.half-in {
		margin: 0!important;
		left: 50%;
		transform: translate( -50%, 50% );
		width: max-content;
		max-width: 80%;
		font-size: .925rem;
	}	

	#footer-separator {
		padding: calc( var( --global--spacing-vertical ) * 4 ) 0;
		background-size: 60%;
	}

	#footer-branches {
		margin: calc( var( --global--spacing-vertical ) * 3 ) 0;
	}

	#footer-branches .a-branch .branch-map{
		width: 100%;
	}

	#footer-branches .a-branch .inline-sign {
		width: 15%;
	}

	.button-link, .button-solid-link {
		padding: calc( var( --global--spacing-horizontal ) / 2 ) calc( var( --global--spacing-horizontal ) );
	}	
	
	.button-link {
		font-size: 1em;
		flex-direction: column-reverse;
		row-gap: calc( var( --global--spacing-vertical ) * 1 );
		width: 100%!important;
		box-sizing: border-box;
		border-radius: var( --roundness-step-01 );
	}
	
	.button-link .footer-contact-title {
		font-size: 1.05em;
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}

	.wpcf7 form {
		flex-direction: column;
	}
	
	.wpcf7 form > * {
		width: 100%;
		box-sizing: border-box;
	}

	#primary-mobile-menu {
		display: flex;
		z-index: 999;
		transition: padding 0.25s;
	}

	#masthead.gn8-sticky-header #primary-mobile-menu {
		padding: calc( 1.5 * var( --global--spacing-horizontal ) ) calc( 2.5 * var( --global--spacing-horizontal ) );
		transition: padding 0.25s;
	}

	#site-navigation {
		position: fixed;
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		height: 100%;
		width: auto;
		left: 100%;
		right: -100%;
		top: 0;
		bottom: 0;
		background-color: var( --global--color-white );
	}

	:is( ul#primary-menu-list, ul#shop-menu-list )  {
		display: flex;
		flex-direction: column;
		width: 100%;
		height: auto;
		overflow-y: auto;
		align-items: stretch;
		align-content: stretch;
		justify-content: center;
		justify-items: center;
		list-style-type: none;
		padding: calc( var( --global--spacing-vertical ) * 1 )!important;
		box-sizing: border-box;
		background-color: var( --global--color-white );
		margin: 0!important;
	}

	:is( ul#primary-menu-list, ul#shop-menu-list ) li {
		text-align: center;
	}

	#site-navigation.is-open {
		transition: all .5s;
		left: max( calc( 0% + var( --global--spacing-vertical ) * 4 ), calc( 100% - 500px ) );
		right: 0;
	}

	#footer-reserve-info .balloonia-container {
		padding-top: calc( var( --global--spacing-vertical ) * 3 );
	}
	
	#footer-reserve-info .sign {
		display: none;
	}

	.slides-container {
		left: 0;
		right: 0;
	}
	
	#homepage-hero-banner {
		height: auto!important;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-hero-banner-01.webp" );
		background-position: 50% top;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#main > * {
		max-width: 1360px;
		width: 100%;
		box-sizing: border-box;
	}

	#homepage-hero-banner.is-slider .a-slide {
		flex-direction: column;
		padding: calc( var( --global--spacing-vertical ) * 4 ) calc( var( --global--spacing-vertical ) * 2 );
	}

	#homepage-hero-banner.is-slider .a-slide .slide-image {
		width: 100%;
		height: 300px;
		border-radius: calc( var(--roundness-step-01 ) * 2 );
		transform: translateX( 0 );
	}

	html[ dir="rtl" ] #homepage-hero-banner.is-slider .a-slide .slide-image {
		width: 100%;
		height: 300px;
		border-radius: calc( var(--roundness-step-01 ) * 2 );
	}

	#homepage-hero-banner.is-slider .a-slide .slide-text {
		width: 100%;
	}
	
	#homepage-latest-news {
		height: 350px;
		display: flex;
		flex-direction: row;
		box-sizing: border-box;
		background-image: url( "/wp-content/uploads/2026/02/homepage-latest-news-01.webp" );
		background-size: 200%;
		background-repeat: repeat;
		align-items: center;
		align-content: center;
		padding: calc( var( --global--spacing-unit ) * 2 ) 0px 0px 0px!important;
		border-width: 0!important;
	}

	#homepage-latest-news .a-slide {
		max-width: 250px;
		min-width: 250px;
		height: 250px!important;
	}

	.hide-under-960 {
		display: none;
	}

	:is( #related-products, #homepage-products ) .product-slide {
		width: 180px;
		height: 180px;
	}

	:is( #related-products, #homepage-products ) {
		margin-top: calc( var( --global--spacing-unit ) * 10 );
	}
	

	:is( #related-products, #homepage-products ) .product-slide .product-name {
		font-size: .95em;
	}

	#for-mothers img {
		max-width: 100px;
	}

	#for-mothers {
		margin-top: calc( var( --global--spacing-unit ) * 14 );
	}

	.rich-text .separated-title {
		margin-left: 0!important;
		margin-right: 0!important;
	}	

	#page-hero-banner .banner-image {
		width: 100%;
		height: 85%;
		width: 100%;
	}

	#page-hero-banner .banner-text {
		width: auto;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		padding: 0 calc( 1 * var( --global--spacing-horizontal ) ) 0 calc( 6 * var( --global--spacing-horizontal ) );
	}

	html[ dir=rtl ] #page-hero-banner .banner-text {
		padding: 0 calc( 6 * var( --global--spacing-horizontal ) ) 0 calc( 1 * var( --global--spacing-horizontal ) );
	}

	:is( #page-hero-banner, #page-hero-half-banner ) .page-title {
		font-size: 1.75rem;
	}

	:is( #page-hero-banner, #page-hero-half-banner ) .page-subtitle {
		font-size: 1.3rem;
	}

	body:not( :is( .home, .front-page ) ) #main {
		margin-top: calc( var( --global--spacing-vertical ) * 5 );
		/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
	}

	body:is( .home, .front-page ) #main {
		margin-top: calc( var( --global--spacing-vertical ) );
		/* row-gap: calc( var( --global--spacing-vertical ) * 6 ); */
	}
	
	#class-upcomming {
		background-size: 200%;
		background-repeat: repeat;
	}

	#class-upcomming .a-slide {
		max-width: 250px;
		min-width: 250px;
		height: 250px!important;
	}

	.image-gallery .an-image {
		flex-basis: calc( 33.33% - ( var( --global--spacing-unit ) * 5 ) );
	}

	#branch-departments .an-department {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		align-content: center;
		flex-basis: calc( 100% - var( --global--spacing-unit ) * 5 );
	}	

	#department-maintext {
		display: flex;
		flex-direction: column;
	}

	html[ dir=rtl ] #department-maintext {
		flex-direction: column;
	}

	#department-maintext img {
		width: 250px;
		transform: scale( 1.25 );
	}

	#department-registration-guide {
		margin-bottom: calc( var( --global--spacing-vertical ) * 4.5 );
	}

	#department-registration-guide > img {
		width: 250px;
		height: auto;
		object-fit: contain;
		transform: scale( 1.25 );
		transform-origin: center 50px;
		flex-shrink: 1;
		flex-grow: 0;
	}

	#department-registration-guide {
		flex-direction: column-reverse;
		align-items: center;
		align-content: center;
	}

	#team-human .a-member {
		width: calc( 150px + var( --global--spacing-unit ) * 2 ); 
	}

	#team-human .a-member img {
		width: 150px;
		height: 150px;
	}
	
	#team-character {
		row-gap: calc( var( --global--spacing-unit ) * 6 );
	}

	#team-character .a-member:nth-child(2n) {
		flex-direction: column;
	}

	#team-character .a-member:nth-child(2n+1) {
		flex-direction: column;
	}

	#team-character .a-member:nth-child(2n+1) .a-member-text {
		margin: auto;
	}

	#team-character .a-member:nth-child(2n) .a-member-text {
		margin: auto;
	}

	#team-character .a-member .a-member-image {
		position: relative;
		z-index: 1;
		width: 200px;
		height: 200px;
		overflow: hidden;
		box-sizing: border-box;
		border-style: solid;
		border-radius: 50%;
		border-width: var( --global--line-width );
		padding: calc( var( --global--spacing-unit ) * 3 ) calc( var( --global--spacing-unit ) * 4.5 ) 30px calc( var( --global--spacing-unit ) * 4.5 );
	}

	#team-character .a-member .a-member-text {
		position: relative;
		display: flex;
		flex-direction: column;
		align-items: center;
		align-content: center;
		width: 100%;
		min-height: 250px;
		box-sizing: border-box;
		border-style: solid;
		border-width: var( --global--line-width );
		border-radius: var( --roundness-step-01 );
		padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 6.5 );
		margin-top: -18px!important;
	}

	#team-character .a-member:nth-child(2n+1) .a-member-image {
		right: auto;
		left: 50%;
		transform: translateX( -50% );
		clip-path: polygon( 
			calc( 0% - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
			calc( 100% + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
			calc( 100% + var( --global--line-width ) ) calc( 100% - 30px + var( --global--line-width ) ),
			calc( 0% - var( --global--line-width ) ) calc( 100% - 30px + var( --global--line-width ) )
		);
	}

	#team-character .a-member:nth-child(2n) .a-member-image {
		right: auto;
		left: 50%;
		transform: translateX( -50% );
		clip-path: polygon( 
			calc( 0% - var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ), 
			calc( 100% + var( --global--line-width ) ) calc( 0% - var( --global--line-width ) ),
			calc( 100% + var( --global--line-width ) ) calc( 100% - 30px + var( --global--line-width ) ),
			calc( 0% - var( --global--line-width ) ) calc( 100% - 30px + var( --global--line-width ) )
		);
	}

	#page-hero-half-banner {
		height: 300px;
	}

	#page-hero-half-banner:is( .circle-image, .square-image ) .banner-image {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		width: auto;
		height: 300px;
		border-radius: var( --roundness-step-01 )!important;
	}

	#page-hero-half-banner .banner-image img {
		border-radius: calc( var( --roundness-step-01 ) - var( --global--spacing-unit ) * 2 )!important;
	}

	#page-hero-half-banner .banner-text {
		width: calc( 100% - calc( var( --global--spacing-unit ) * 12 ) );
	}

	#page-hero-half-banner :is( .banner-image, .banner-image img ) {
		z-index: -1;
	}

	#page-hero-half-banner .banner-image img {
		height: calc( 300px - var( --global--spacing-unit ) * 6 );
	}

	.single-article #class-upcomming {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}

	.single-article #homepage-latest-news {
		margin-top: calc( var( --global--spacing-unit ) * 24 );
	}

	#an-article-maintext img:not( :is( .size-medium, .size-thumbnail ) ) {
		clear: both;
		float: none;
		width: 80%;
		height: auto;
		margin-left: auto;
		margin-right: auto;
	}

	#an-article-maintext img:is( .size-medium, .size-thumbnail ) {
		clear: both;
		float: none;
		width: 80%;
		height: auto;
		margin-left: auto;
		margin-right: auto;
	}

	html[ dir=rtl  ] #an-article-maintext :is( .size-medium, .size-thumbnail ) {
		clear: both;
		float: none;
		width: 80%;
		height: auto;
		margin-left: auto;
		margin-right: auto;
	}

	#cafe-menu #cafe-categories {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		column-gap: calc( var( --global--spacing-unit ) * 2 );
		row-gap: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 4 ) calc( var( --global--spacing-unit ) * 1 );
	}

	#cafe-menu #cafe-categories .cafe-menu-category-item {
		width: calc( 33.33% - var( --global--spacing-unit ) * 2 );
		font-size: .85em;
		flex-grow: 0;
		flex-shrink: 0;
	}.cafe-menu-item {
		width: calc( 50% - var( --global--spacing-unit ) * 1 );
		flex-direction: column;
	}

	.cafe-menu-item:nth-child( 2n + 1 ) {
		flex-direction: column;
	}

	.cafe-menu-item img{
		width: 100%;
		height: auto;
	}	

	.cafe-menu-item .cafe-menu-item-text {
		display: flex;
		flex-direction: column;
		column-gap: calc( var( --global--spacing-unit ) * 1 );
		row-gap: calc( var( --global--spacing-unit ) * 1 );
		width: 100%;
		box-sizing: border-box;
		padding: calc( var( --global--spacing-unit ) * 1 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) {
		float: none;
		clear: both;
		margin: 0!important;
		padding: 0;
		position: relative;
		width: calc( 50% - var( --global--spacing-unit ) * 3 );
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) a {
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		justify-items: center;
		align-content: space-between;
		row-gap: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 6 ) calc( var( --global--spacing-unit ) * 4 );
		width: 100%;
		height: 200px;
		max-width: 200px;
		background-image: url( '/wp-content/uploads/2026/02/product-350px-frame.webp' );
		background-size: contain;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
	}

	:is( #product-loop, .related.products, .wc-block-product-new ) :is( ul.products, ul.wc-block-grid__products ) :is( li.product, li.wc-block-grid__product ) .product-text {
		position: absolute;
		display: flex;
		flex-direction: column;
		height: 3.25em;
		justify-content: space-between;
		justify-items: space-between;
		background-image: url( '/wp-content/uploads/2026/03/product-350px-text.webp' );
		background-size: 100% 100%;
		background-position: center center;
		background-repeat: no-repeat;
		box-sizing: border-box;
		top: auto;
		bottom: calc( var( --global--spacing-unit ) * 2 );
		left: calc( var( --global--spacing-unit ) * 2 );
		right: calc( var( --global--spacing-unit ) * 2 );
		padding: calc( var( --global--spacing-unit ) * 1.25 ) calc( var( --global--spacing-unit ) * 2 );
	}

	.wc-block-checkout__actions .wc-block-checkout__actions_row, .checkout-button, #place_order {
		font-size: larger;
		flex-direction: column-reverse;
		gap: 32px;
		justify-content: center;
	}
	
	#footer-reserve-info-side-image {
        display: none;
    }
}

@media screen and ( max-width: 360px ) {
	:root {
		--global--spacing-horizontal: calc( 2 * var( --global--spacing-unit ) );
		--global--spacing-vertical: calc( 2 * var( --global--spacing-unit ) );
		--roundness-step-01: calc( 2 * var(--global--spacing-unit) );

		--global--font-size-base: .85rem;
		--global--font-size-xs: .8rem;
		--global--font-size-sm: .85rem;
		--global--font-size-md: .9rem;
		--global--font-size-lg: .95rem;
		--global--font-size-xl: 1.05rem;
		--global--font-size-xxl: 1.4rem;
		--global--font-size-xxxl: 1.6rem;
	}

	.sign {
		width: 70px;
		height: 70px;
	}

	#team-human .a-member {
		width: calc( 100px + var( --global--spacing-unit ) * 2 ); 
	}

	#team-human .a-member img {
		width: 100px;
		height: 100px;
	}
}


/**
 * SVG
 */
path, line {
	stroke-width: calc( var( --global--line-width ) * 3 );
	stroke-linecap: round;
	stroke-linejoin: round;
}

:is( path, line ).no-fill {
	fill: none!important;
}

:is( path, line ).no-stroke {
	stroke: none!important;
}

:is( path, line ).fill-white {
	fill: var( --global--color-white )!important;
}

/* colors */
.color-white:not( path ) {
	color: var( --global--color-white );
}

path.color-white  {
	fill: var( --global--color-white );
}
/** green */
.balloonia-green {
	background-color: var( --global--green-lightest );
	border-color: var( --global--green-darkest );
}

.balloonia-green .color-darkest:not:is( path, line ) {
	fill: var( --global--green-darkest );
}

.balloonia-green .color-darkest:is( path, line ) {
	stroke: var( --global--green-darkest );
	fill: none;
}
/** purple */
.balloonia-purple {
	background-color: var( --global--purple-lightest );
	border-color: var( --global--purple-darkest );
}

.balloonia-purple .color-darkest {
	fill: var( --global--purple-darkest );
}

.balloonia-purple .color-darkest:is( path, line ) {
	stroke: var( --global--purple-darkest );
	fill: none;
}

/** blue */
.balloonia-blue {
	background-color: var( --global--blue-lightest );
	border-color: var( --global--blue-darkest );
}

.balloonia-blue .color-darkest {
	fill: var( --global--blue-darkest );
}

.balloonia-blue .color-darkest:is( path, line ) {
	stroke: var( --global--blue-darkest );
	fill: none;
}


/** yellow */
.balloonia-yellow {
	background-color: var( --global--yellow-lightest );
	border-color: var( --global--yellow-darkest );
}

.balloonia-yellow .color-darkest {
	fill: var( --global--yellow-darkest );
}

.balloonia-yellow .color-darkest:is( path, line ) {
	stroke: var( --global--yellow-darkest );
	fill: none;
}


/** pink */
.balloonia-pink {
	background-color: var( --global--pink-lightest );
	border-color: var( --global--pink-darkest );
}

.balloonia-pink .color-darkest {
	fill: var( --global--pink-darkest );
}

.balloonia-pink .color-darkest:is( path, line ) {
	stroke: var( --global--pink-darkest );
	fill: none;
}

span.badge {
	font-size: .8em;
	border-radius: 100px;
	margin: calc( 1 * var( --global--spacing-unit ) ) calc( .5 * var( --global--spacing-unit ) );
	padding: calc( .5 * var( --global--spacing-unit ) ) calc( 1.5 * var( --global--spacing-unit ) );
	border: var(--global--line-width);
	border-style: solid;
}