/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

/* Bricks sections, container and blocks */

ul.brxe-section, ul.brxe-container, ul.brxe-block, ul.brxe-div {
	margin: 0;
	padding: 0;
}

/* Bricks SVG */

.bricks-link-wrapper:has(.brxe-svg) {
	line-height: 0;
}

/* Bricks outline */

#brx-content *:focus-visible, #brx-content *:focus-within {
	outline-color: var(--primary);
}

/* Bricks navigation */

.bricks-nav-menu {
	display: flex;
	gap: var(--space-m);
}

.bricks-nav-menu > .menu-item {
	margin: unset;
	padding: unset;
}

.brxe-nav-menu .bricks-mobile-menu-wrapper:before {
    background-color: var(--primary-d-5);
}

.brx-submenu-toggle {
    gap: 0.25em;
}

.brx-submenu-toggle.icon-right button {
    margin-left: unset;
    font-size: 0.75em;
}

.bricks-nav-menu .sub-menu {
    display: grid;
    gap: var(--space-s);
    padding: var(--space-s);
	font-size: calc(var(--text-s) * 0.75);
	line-height: 1.5;
    background-color: var(--primary-d-5);
}

.bricks-nav-menu .sub-menu a, .bricks-nav-menu .sub-menu button {
	padding: unset;
}

[aria-expanded="true"].bricks-mobile-menu-toggle {
	color: var(--light);
}

/* Bricks form */

.brxe-form {
	gap: 1.5em;
}

.brxe-form .form-group {
	gap: 0.5em;
	padding: unset;
}

#brx-content .brxe-form * {
	outline: unset;
}

.brxe-form .label, .brxe-form label, .brxe-form .choose-files {
	font-size: var(--text-s);
	line-height: 1;
	text-transform: unset;
	letter-spacing: unset;
	margin-bottom: unset;
}

.brxe-form input::placeholder, .brxe-form textarea::placeholder, .brxe-form select {
    font-size: 0.9em;
}

.brxe-form input, .brxe-form textarea {
	padding: 0.75em;
	line-height: 1;
}

.brxe-form input, .brxe-form textarea, .brxe-form select, .brxe-form .choose-files {
	border: 0.075em solid var(--dark-t-1);
	border-radius: calc(var(--radius) / 2);
	outline: unset;
	transition: var(--transition);
}

.brxe-form input:hover, .brxe-form textarea:hover, .brxe-form select:hover, .brxe-form .choose-files:hover {
	border-color: var(--primary-t-5);
}

.brxe-form input:focus-visible, .brxe-form input:focus-within, .brxe-form textarea:focus-visible, .brxe-form textarea:focus-within, .brxe-form select:focus-visible, .brxe-form select:focus-within, .brxe-form .choose-files:focus-visible, .brxe-form .choose-files:focus-within {
	border: 0.075em solid var(--primary);
    box-shadow: 0 0 0 0.25em var(--primary-t-1);
}

.brxe-form .options-wrapper input[type="checkbox"], .brxe-form .options-wrapper input[type="checkbox"] {
	border: unset;
}

.brxe-form .options-wrapper input[type="checkbox"]:focus-visible, .brxe-form .options-wrapper input[type="checkbox"]:focus-within {
	box-shadow: 0 0 0 0.15em var(--primary-t-1);
}

.brxe-form .options-wrapper {
	display: grid;
	gap: 0.5em;
}

.brxe-form .choose-files {
	padding: 1em 1.5em;
}

.brxe-form .choose-files:hover {
	background: unset;
}

.brxe-form .submit-button-wrapper {
	width: 100%;
}

.brxe-form .options-wrapper:has([type="checkbox"]) label a {
	transition: var(--transition);
}

.brxe-form .options-wrapper:has([type="checkbox"]) label a:hover {
	color: var(--primary);
}

/* Bricks popup */

@media (max-width: 767px) {
	body .brx-popup .brx-popup-content {
		width: 95%;
    }
}

.brx-popup .brx-popup-backdrop {
	backdrop-filter: blur(3px);
}

/* Selection */

::selection {
	color: var(--light);
	background: var(--primary);
}

/* Custom */

.bricks-button:hover {
	transform: translateY(-5%);
}

.bricks-button.bricks-background-primary {
	background-image: linear-gradient(135deg, var(--primary), var(--primary-d-3), var(--primary));
	background-size: 200%;
}

.bricks-button.bricks-background-primary:hover {
	background-position: right center;
}