/*
Theme Name: OGI
Theme URI: web-ia.com
Author: Boris Billy
Author URI: web-ia.com
Description: WEB IA starter theme
Tags: blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Tested up to: 6.6
Requires PHP: 7.3
Version: 1.0.0
License: GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ogi

Gutzilla WordPress Theme, (C) 2024 Boris Billy.
Gutzilla is distributed under the terms of the GNU GPL.
*/

@font-face {
	font-family: 'ogifont';
	src: url('./assets/fonts/ogifont.woff2?29807111') format('woff2'),
		url('./assets/fonts/ogifont.woff?29807111') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
  @media screen and (-webkit-min-device-pixel-ratio:0) {
	@font-face {
	  font-family: 'ogifont';
	  src: url('../font/ogifont.svg?29807111#ogifont') format('svg');
	}
  }
  */
[class^="icon-"]:before,
[class*=" icon-"]:before {
	font-family: "ogifont";
	font-style: normal;
	font-weight: normal;
	speak: never;

	display: inline-block;
	text-decoration: inherit;
	width: 1em;
	margin-right: .2em;
	text-align: center;
	/* opacity: .8; */

	/* For safety - reset parent styles, that can break glyph codes*/
	font-variant: normal;
	text-transform: none;

	/* fix buttons height, for twitter bootstrap */
	line-height: 1em;

	/* Animation center compensation - margins should be symmetric */
	/* remove if not needed */
	margin-left: .2em;

	/* you can be more comfortable with increased icons size */
	/* font-size: 120%; */

	/* Font smoothing. That was taken from TWBS */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	/* Uncomment for 3D effect */
	/* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-arrow:before {
	content: '\e800';
}

/* '' */
.icon-download:before {
	content: '\e801';
}

/* '' */
.icon-espace-client:before {
	content: '\e802';
}

/* '' */
.icon-phone:before {
	content: '\e803';
}

/* '' */

/* CSS Reset
---------------------------------------------------------------------------- */

:root {
	--plyr-color-main: var(--wp--preset--color--primary);
	--wp--preset--color--global-primary: #00ACBA;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	scroll-behavior: smooth;
	box-sizing: border-box;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

b,
strong {
	font-weight: var(--wp--custom--font-weight--semi-bold);
}

ol,
ul {
	padding: 0;
}

.prefixe {
	display: inline-block;
	background-color: var(--wp--preset--color--primary);
	padding: 6.5px 31px;
	border-radius: 100px;
	font-size: 14px;
	text-transform: uppercase;
	line-height: 1;
	color: var(--wp--preset--color--base);
}

.text-relatif {
	position: relative;
}

/* ol:where(:not([class*="wp-block"])),
ol:where(.wp-block-list),
ul:where(:not([class*="wp-block"])),
ul:where(.wp-block-list) {
	padding-inline-start: var(--wp--preset--spacing--medium);
} */

body#tinymce.wp-editor ol:where(:not([class*="wp-block"])),
body#tinymce.wp-editor ol:where(.wp-block-list),
body#tinymce.wp-editor ul:where(:not([class*="wp-block"])),
body#tinymce.wp-editor ul:where(.wp-block-list) {
	padding-left: 1em !important;
	padding-inline-start: 1.5em !important;
}

.wp-block-list li,
div[class*="m-"] ul li {
	padding-left: 22px;
	list-style-type: none;
	margin-bottom: 11px;
}

.wp-block-list li::before,
div[class*="m-"] ul li::before {
	content: '';
	width: 8px;
	height: 8px;
	display: inline-block;
	color: var(--wp--preset--color--secondary);
	border: 1px solid;
	background: currentColor;
	border-radius: 50%;
	margin-left: -22px;
	margin-right: 14px;
}

.has-secondary-background-color .wp-block-list li::before,
.has-primary-darken-background-color .wp-block-list li::before,
.has-primary-background-color .wp-block-list li::before {
	color: var(--wp--preset--color--base);
}

div[class*="wp-block-"] figcaption {
	color: var(--wp--preset--color--secondary);
	font-size: var(--wp--preset--font-size--x-small);
	margin-bottom: 0;
	margin-top: 20px;
	text-align: center;
}

img,
figure {
	max-width: 100%;
	height: auto;
}

/* 
:root :where(.is-layout-constrained)>*,
:root :where(.editor-styles-wrapper) :where(.is-layout-constrained)>* {
	margin-block-start: 0;
} */

.acf-block-component {
	padding: 0 !important;
}

.wp-block-button__link {
	width: auto;
}

/* Standardize form styling
--------------------------------------------- */

input,
button,
textarea,
select {
	font: inherit;
}

input[type="button"],
input[type="email"],
input[type="search"],
input[type="submit"],
input[type="text"],
textarea {
	-webkit-appearance: none;
}

input:not([type="submit"]),
select,
textarea,
.wp-block-post-comments-form input:not([type="submit"]):not([type="checkbox"]),
.wp-block-post-comments-form textarea {
	color: var(--wp--preset--color--dark);
	border-radius: 5px;
	border: solid 1px var(--wp--preset--color--grey);
	padding: .5em 1em;
	font-size: var(--wp--preset--font-size--small);
}

input:focus-visible,
textarea:focus-visible {
	outline-color: var(--wp--preset--color--primary);
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

label {
	width: 100%;
	display: block;
}

::placeholder {
	color: var(--wp--preset--color--secondary);
	font-size: var(--wp--preset--font-size--small);
	opacity: 0.75;
}

/* Helper styles that can't be done via theme.json
---------------------------------------------------------------------------- */

a.more-link {
	display: block;
}

/* Inline code */
*:not(.wp-block-code)>code {
	background-color: var(--wp--preset--color--grey);
	font-weight: var(--wp--custom--font-weight--medium);
	;
	padding: 3px 5px;
	position: relative;
	border-radius: 3px;
}

/* Adjust terms at bottom of posts */
.single .wp-block-group .wp-block-post-terms,
.blog .wp-block-group .wp-block-post-terms {
	margin-bottom: -8px !important;
}

/* Remove margin on term description on archive pages */
.wp-block-term-description p:last-child {
	margin-bottom: 0;
}

/* Remove last separator on post list */
.remove-border-and-padding .wp-block-post-template li:last-child .wp-block-separator {
	display: none;
}

/* Hide post meta div if no tags assigned */
.single .wp-block-group:has(> .post-meta:empty) {
	display: none;
}

.wp-block-group:empty:has(+ .comment-respond) {
	display: none;
}

.row-logos>figure {
	flex-shrink: 1 !important;
}

@media (max-width: 781px) {
	.ogi-hide-on-mobile {
		display: none;
	}
}



/* 1 - Header */
body {
	&.is-open {
		overflow-y: hidden;
	}

	&.has-top-bar {
		position: relative;

		#header_bar,
		main.site-content {
			transition: all 300ms ease-in-out;
		}
	}
}

.wp-block-site-tagline {
	color: #636363;
	font-size: var(--wp--preset--font-size--base);
	font-weight: var(--wp--custom--font-weight--medium);
}

.loop-admin {
	background-color: #f7f7f7;
	text-align: center;
	padding: 2em 0;
}

.js-close {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 10;
	margin: 0 auto;
	width: 100px;
	border: none;
	background-color: rgba(255, 255, 255, 0.25);
	border-radius: 0 0 6px 6px;
	color: #fff;
	transition: all 300ms ease-in-out;
	font-size: var(--wp--preset--font-size--small);

	&:hover {
		cursor: pointer;
		background-color: rgba(255, 255, 255, 0.35);
	}

	&.active {
		opacity: .4;

		&:hover {
			opacity: 1;
		}
	}
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 5;
	border: none;

	.wp-block-button.is-style-fill .wp-block-button__link {
		background-color: var(--wp--preset--color--global-primary);
		border-color: var(--wp--preset--color--global-primary);

		&:after {
			color: var(--wp--preset--color--global-primary);
			;
		}
	}
}

.wp-block-site-logo {
	img {
		height: 93px;
    	width: 97px;
	}
}

@media (width <=781px) {
	.site-header {
		.wp-block-site-logo {
			img {
				max-width: 60px;
				height: auto;
			}
		}

		.header__navigation {
			justify-content: flex-end;

			.wp-block-buttons {
				justify-content: flex-start;
			}
		}
	}
}

/** page contact ***/
.page-id-58 {
	.zone-top {
		>.wp-block-group {
			@media(width < 768px) {
				gap: 0 !important;
			}
		}

		.is-layout-constrained {
			@media(width < 768px) {
				flex-basis: auto;
			}
		}

		.wp-block-image {
			@media(width < 768px) {
				margin-bottom: 1.5em !important;
				margin-top: -1em !important;

				img {
					max-width: 90%;
				}
			}
		}
	}
}

.gform_required_legend {
	display: none;
}

.contact-form {
	
	.gform_wrapper {
		.gform_body {

			input,
			textarea {
				box-shadow: none;
			}
		}

		.gform_footer {
			justify-content: center;

			.gform_button {
				border-radius: 50px !important;
				padding: 12px 24px !important;
			}
		}
	}
}

.wp-pagenavi {
	text-align: center;
	margin: 0 0 1em 0;

	.pages {
		display: none;
	}

	span,
	a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: .4em .8em;
		margin: .5em;
		font-size: var(--wp--preset--font-size--x-small);
		text-decoration: none;
		border: solid 1px var(--wp--preset--color--grey);
		color: var(--wp--preset--color--primary);
		background: #fff;
		transition: all 300ms ease-in-out;
		border-radius: 50%;
		width: 40px;
		height: 40px;
	}

	.current {
		background: var(--wp--preset--color--primary-darken);
		border-color: var(--wp--preset--color--primary-darken);
		color: var(--wp--preset--color--base);
	}

	a:hover {
		border-color: var(--wp--preset--color--dark-grey);
		color: var(--wp--preset--color--dark-grey) !important;
		text-decoration: none;
	}

	.last,
	.first {
		background: none;
		border: none;
		display: inline;
	}
}

/* Utilities */
.stretched-link {
	&:before {
		content: '';
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		top: 0;
	}

}

.title-with-lines {
	position: relative;
	width: max-content;

	@media (max-width: 576px) {
		width: auto;
	}

	&:before {
		content: url('./assets/img/lines.svg');
		position: absolute;
		z-index: -1;
		left: -35px;
		top: 50%;
		transform: translateY(-50%);
	}
}

.title-highlight strong {
	position: relative;
	z-index: 1;
	display: inline-block;
	
	&:after {
		content: "";
		position: absolute;
		z-index: -1;
		background-color: #DAECC6;
		bottom: 3px;
		left: -4px;
		height: 12px;
		width: 100%;
		border-radius: 13px;
	}
}

.btn-link {
	font-weight: bold;
	text-decoration: underline;
}

.text-center {
	text-align: center;
}

.js-obf-link {
	margin: 0;
}

/* Footer CTA */
.footer-background {
	background-color: var(--wp--preset--color--global-primary);
}

footer.site-footer {
	#footer-newsletter {

		.footer-cta {

			position: relative;
			z-index: 1;
			border-radius: 30px;

			@media (width < 768px) {
				max-width: inherit;
			}

			&:after {
				content: '';
				position: absolute;
				z-index: -1;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				background: linear-gradient(0deg, rgba(0, 0, 0, 0.52) 0%, rgba(0, 0, 0, 0.52) 100%);
				border-radius: 30px;
			}

			.gform_wrapper {
				margin-top: 1em;


				.gform_validation_errors {
					margin-bottom: 1em;
					background-color: rgba(255, 255, 255, 0.25);
					border-color: #fff;
					outline: none;
					padding: 10px;

					.gform_submission_error,
					.gform-icon {
						color: #fff;
					}

					.gform-icon {
						border-color: #fff;
						color: var(--wp)
					}
				}

				.gform_heading {
					.gform_required_legend {
						display: none;
					}
				}

				.gform_body {
					.gform_fields {
						position: relative;

						.gfield--type-email {
							grid-column: span 12;

							input {
								padding: 15px 12px;
								height: auto;
								line-height: normal;
							}
						}

						.gfield--type-submit {
							grid-column: span 4;
							position: absolute;
							top: 4px;
							right: 5px;

							.gform-button {
								background-color: var(--wp--preset--color--global-primary);
							}

							&:after {
								display: inline-block;
								content: '\e800';
								font-family: 'ogifont';
								color: var(--wp--preset--color--global-primary);
								width: 37px;
								height: 37px;
								position: absolute;
								display: flex;
								align-items: center;
								justify-content: center;
								line-height: normal;
								top: 4px;
								right: 4px;
								background-color: #fff;
								border-radius: 50%;
							}

							.gform-button {
								width: 100%;
								align-items: center;
								padding: 11px 3.5em 11px 1em;
								line-height: normal;
								height: auto;

							}
						}

						.gfield {
							.gfield_description {
								color: #fff;
							}
						}
					}
				}

				.gform_footer {
					margin: 0;
				}
			}
		}

	}

	#footer-blocs {
		&:before {
			content: url(./assets/img/footer-circles.svg);
			position: absolute;
			right: 0;
			bottom: -6px;
		}

		.wp-element-button {
			min-width: 226px;
		}

		.wp-block-button.is-style-fill-white .wp-block-button__link,
		.wp-block-button.is-style-fill-white .wp-block-button__link:after,
		.wp-block-button.is-style-outline-white .wp-block-button__link:after {
			color: var(--wp--preset--color--global-primary);
		}

		@media (width < 768px) {
			text-align: center;

			.is-layout-flex {
				justify-content: center;
				flex-wrap: wrap;
			}

			.column-menu {
				padding-top: 1em !important;

				.wp-block-navigation {
					align-items: center;
				}
			}
		}

		.has-primary-background-color {
			background: url(./assets/img/footer-logo.svg);
			background-repeat: no-repeat;
			background-position: bottom right;
		}

		.wp-block-navigation__container {
			padding-left: 20px;

			.wp-block-navigation-link:before {
				content: "";
				position: absolute;
				width: 3px;
				height: 3px;
				background-color: white;
				border-radius: 100%;
				left: -15px;
			}
		}

		.menu__list {
			display: flex;
			flex-direction: column;
			gap: 5px;
			padding-left: 20px;

			.menu-item {
				position: relative;
				list-style: none;

				@media (max-width: 768px) {
					width: fit-content;
					margin: 0 auto;
				}

				&:before {
					content: "";
					position: absolute;
					width: 3px;
					height: 3px;
					background-color: white;
					border-radius: 100%;
					top: 50%;
					left: -15px;
				}

				a,p {
					cursor: pointer;
					font-size: 1rem;
					text-decoration: none;

					&:hover {
						text-decoration: underline;
					}
				}
			}
		}
	}
}

.wp-social-link-linkedin {
	background-color: transparent;
}

.article-hero-zone {
	@media (width < 1200px) {
		padding-left: 25px;
		padding-right: 25px;
	}

	h1 {
		color: #fff;
	}
	
	figure {
		position: absolute;
		height: 100%;
		width: 100%;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;

		&:before {
			content: '';
			background: #000000;
			background: linear-gradient(-90deg, rgba(0, 0, 0, 1) 0%, var(--wp--preset--color--primary) 100%);
			opacity: 0.3;
			position: absolute;
			top: 0;
			bottom: 0;
			left: 0;
			right: 0;
			border-radius: 30px;
		}

		img {
			height: 100%;
    		object-fit: cover;
		}
	}
}

.article-date {
	display: flex;
	align-items: center;
	gap: 6px;
}

/* Bloc services - Composition */
.bloc-services {
	.wp-block-column {
		display: flex;
		flex-direction: column;
		align-self: initial;

		.wp-block-group {
			flex: 1;
		}
	}
}

/* Filtres Cas clients & Témoignages */
.filtres {
	margin: 15px 0 30px;

	.facetwp-facet {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 1rem;
		margin-bottom: 0;

		.facetwp-checkbox {
			display: inline-flex;
			align-items: center;
			padding: 8px 15px;
			border: 1px solid var(--facet-color, #13b0a6);
			background: #fff;
			color: var(--facet-color, #13b0a6);
			font-weight: 600;
			line-height: 1;
			cursor: pointer;
            transition: all 0.3s ease;
			font-family: var(--wp--preset--font-family--primary);
			font-size: var(--wp--preset--font-size--base);
			font-weight: var(--wp--custom--font-weight--regular);

			&:hover {
				background: var(--facet-color, #13b0a6);
				color: #fff;
			}

			&.checked {
				background: var(--facet-color, #13b0a6);
				border-color: var(--facet-color, #13b0a6);
				color: #fff;
			}

			.facetwp-counter {
				  display: none;
			}
		}
	}
}