/*
Theme Name: soscocu-fse
Theme URI: https://www.soscocu.org/
Author: SOS Cocu
Author URI: https://www.soscocu.org/
Description: Theme enfant propre de Twenty Twenty-Five, sans pages commerciales, recommandations de plugins, bannieres publicitaires ni dependances commerciales.
Template: twentytwentyfive
Version: 1.0.20
License: GNU General Public License version 2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: soscocu-fse
Requires PHP: 7.2
Tested up to: 6.9
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, block-patterns, block-styles, editor-style, wide-blocks, template-editing, style-variations, grid-layout, full-width-template, footer-widgets, featured-images, full-site-editing, featured-image-header, flexible-header, custom-background, custom-colors, custom-header, custom-menu, custom-logo, post-formats, sticky-post, threaded-comments, translation-ready, theme-options, rtl-language-support, education, portfolio, photography

soscocu-fse is released under the terms of GNU GPL.
*/

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-family: "Poppins", sans-serif !important;
}

/*
 * Text and navigation link styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.25ch;
}

a:hover,
a:focus {
	text-decoration-style: dashed;
}

a:active {
	text-decoration: none;
}

.wp-block-navigation .wp-block-navigation-item a:hover,
.wp-block-navigation .wp-block-navigation-item a:focus {
	text-decoration: underline;
	text-decoration-style: solid;
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}
.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/*
 * Search and File Block button styles.
 * Necessary until the following issues are resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/36444
 * https://github.com/WordPress/gutenberg/issues/27760
 */

.wp-block-search__button,
.wp-block-file .wp-block-file__button {
	background-color: #ffd428;
	border-radius: 0;
	border: none;
	color: var(--wp--preset--color--foreground);
	font-size: var(--wp--preset--font-size--medium);
	padding: calc(.667em + 2px) calc(1.333em + 2px);
}

body.home .wp-site-blocks > * + *{
	margin-block-start:0 !important;
}
body.home .services-section-01 .is-layout-flex, 
body.home .services-section-02 .is-layout-flex{ 
	gap:0 !important;
}

/*
 * Button hover styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link:hover {
	opacity: 0.90;
}

.wp-block-button__link{
	font-weight: normal !important;
}

/*
 * Alignment styles.
 * These rules are temporary, and should not be relied on or
 * modified too heavily by themes or plugins that build on
 * Twenty Twenty-Two. These are meant to be a precursor to
 * a global solution provided by the Block Editor.
 *
 * Relevant issues:
 * https://github.com/WordPress/gutenberg/issues/35607
 * https://github.com/WordPress/gutenberg/issues/35884
 */

.wp-site-blocks,
body > .is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-group.has-background,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align="full"] > .wp-block-group,
.is-root-container .wp-block[data-align="full"] > .wp-block-cover {
	padding-left: var(--wp--custom--spacing--outer);
	padding-right: var(--wp--custom--spacing--outer);
}

.wp-site-blocks .alignfull,
.wp-site-blocks > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-cover,
.wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-template-part > .wp-block-cover,
body > .is-root-container > .wp-block-cover,
body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background,
body > .is-root-container > .wp-block-template-part > .wp-block-cover,
.is-root-container .wp-block[data-align="full"] {
	margin-left: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	margin-right: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	width: unset;
}

body.home .wp-block-cover{ margin-block-start:0 !important; }
nav.Hdr-menu.wp-block-navigation ul{ font-weight:600 !important;}


/* Blocks inside columns don't have negative margins. */
.wp-site-blocks .wp-block-columns .wp-block-column .alignfull,
.is-root-container .wp-block-columns .wp-block-column .wp-block[data-align="full"],
/* We also want to avoid stacking negative margins. */
.wp-site-blocks .alignfull:not(.wp-block-group) .alignfull,
.is-root-container .wp-block[data-align="full"] > *:not(.wp-block-group) .wp-block[data-align="full"] {
	margin-left: auto !important;
	margin-right: auto !important;
	width: inherit;
}
.headright-part{ text-align:right;}
body.home header.wp-block-template-part{ position: relative; width:100%; z-index:999;}
/*
 * Responsive menu container padding.
 * This ensures the responsive container inherits the same
 * spacing defined above. This behavior may be built into
 * the Block Editor in the future.
 */

.wp-block-navigation__responsive-container.is-menu-open {
	padding-top: var(--wp--custom--spacing--outer);
	padding-bottom: var(--wp--custom--spacing--large);
	padding-right: var(--wp--custom--spacing--outer);
	padding-left: var(--wp--custom--spacing--outer);
}
.wp-block-navigation ul li.current-menu-item > a,
.wp-block-navigation ul li a:hover{ color:var(--wp--preset--color--extra-primary) !important;}

.category .wp-block-term-description,
.archive .wp-block-term-description {
	border: 1px solid #CCC !important;
	border-radius: 14px !important;
	padding: 14px 18px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
}

/* Scroll To Top */
.return-to-top-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: var(--wp--preset--color--primary);
    color: #ffffff;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.5s ease;
    z-index: 9999;
}
.return-to-top-btn .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
}
.return-to-top-btn.show {
    opacity: 1;
    visibility: visible;
}
.return-to-top-btn:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
.return-to-top-btn:active {
    transform: translateY(-1px);
}
.return-to-top-btn span {
    pointer-events: none;
}

/* = Contact Form 7 CSS
----------------------------------------------- */
.wpcf7{ 
	margin:30px 0 0;
	padding:0;
}
.wpcf7 input[type="text"], 
.wpcf7 input[type="tel"], 
.wpcf7 input[type="email"]{ 
	width:40%;
	border:1px solid #cccccc;
	box-shadow:inset 1px 1px 2px #ccc;
	color:#797979;
	margin-bottom:0;
	height:40px;
	padding:0 15px;
}
.wpcf7 textarea{	
	border:1px solid #cccccc;
	box-shadow:inset 1px 1px 2px #ccc;
	color:#797979;
	margin-bottom:25px;
	padding:10px;
	width:60%;
	height:160px;
	font-size:12px;
}
.wpcf7 input[type="submit"]{
	background-color:#efc62c;
	padding:20px 40px;
	border-radius:40px;
	font-weight:600;
	font-size:16px;
	cursor:pointer;
	color:#ffffff;	
	width:auto;
	border:none;
	text-transform:uppercase;
}
.wpcf7 input[type="submit"]:hover{
	background-color:#101010;
}

.color-change{
	color: var(--wp--preset--color--extra-primary);
}
.tab-buttons a.wp-element-button {
	border: none;
	font-weight: 600 !important;
}
.tab-buttons .wp-block-button a:hover,
.tab-buttons .active .wp-block-button a{
	color: var(--wp--preset--color--extra-primary) !important;
	border-bottom: solid 2px var(--wp--preset--color--extra-primary);
}
.about-image img {
    position: relative;
    margin-top: -100px;
    box-shadow: 0 0 15px 1px #afafaf;
}
.icon-box {
    background: var(--wp--preset--color--extra-primary);
    border-radius: 50%;
    width: 80px;
    height: 80px;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.service-box {
    border: solid 1px rgb(0 0 0 / 20%);
}
.service-box:hover{
	background: var(--wp--preset--color--extra-primary) !important;
}
.service-box:hover h4{
	color: #fff !important;
}
.service-box:hover .icon-box{
	background: #000 !important;
}
.post-main-area{
	box-shadow: 0 0 15px 1px #afafaf;
}

.blog-area .post-main-area.is-layout-flow > .taxonomy-category,
.blog-area .post-main-area.is-layout-flow > .wp-block-post-terms,
.blog-area .post-main-area.is-layout-flow > .wp-block-post-date {
	margin-block-start: 0 !important;
	margin-block-end: 2px !important;
}

.blog-area .post-main-area.is-layout-flow > .wp-block-post-title {
	margin-block-start: 2px !important;
	margin-block-end: 14px !important;
	line-height: 1.15;
}

.blog-area .post-main-area.is-layout-flow > .wp-block-post-featured-image {
	margin-block-start: 14px !important;
}

.footer-div a{
	text-decoration: none;
}

.post-page-area .wp-block-post{
	padding: 30px;
	box-shadow: 12px 12px 50px rgba(0, 0, 0, 0.4);
	margin-bottom: 30px;
	border-radius: 18px;
	overflow: hidden;
}

.post-page-area .wp-block-post .wp-block-post-title {
	margin-top: 0 !important;
	margin-block-start: 2px !important;
	margin-block-end: 14px !important;
	margin-bottom: 14px !important;
	line-height: 1.15;
}

.post-page-area .wp-block-post .taxonomy-category,
.post-page-area .wp-block-post .wp-block-post-terms,
.post-page-area .wp-block-post .wp-block-post-date {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 4px !important;
	margin-bottom: 4px !important;
}

.post-page-area .wp-block-post > .wp-block-group.has-text-color.has-link-color {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
	margin-block-end: 4px !important;
	margin-bottom: 4px !important;
}

.post-page-area .wp-block-post .taxonomy-category + .wp-block-post-title,
.post-page-area .wp-block-post .wp-block-post-terms + .wp-block-post-title,
.post-page-area .wp-block-post .wp-block-post-date + .wp-block-post-title {
	margin-top: 0 !important;
	margin-block-start: 2px !important;
}

.post-page-area .wp-block-post .wp-block-post-featured-image {
	margin-block-start: 14px !important;
}

.sidebar-area-wrap .taxonomy-post_tag a {
    background: var(--wp--preset--color--extra-primary);
    padding: 5px !important;
    border-radius: 6px;
    display: inline-block;
    margin-bottom: 10px;
    color: #fff !important;
    margin-right: 10px;
}

.sidebar-widget {
	--sidebar-widget-gap: 10px;
	--sidebar-widget-padding: 25px;
	--sidebar-search-padding: 8px 12px;
	--sidebar-search-input-height: 30px;
	--sidebar-search-button-width: 50px;
	--sidebar-search-gap: 8px;
	border-radius: 18px;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--cyan-bluish-gray, #abb8c3);
	box-shadow: var(--wp--preset--shadow--natural, 0 8px 20px rgba(0, 0, 0, 0.18));
	margin-bottom: var(--sidebar-widget-gap);
	padding: var(--sidebar-widget-padding);
}

.sidebar-widget:not(.has-background):not([style*="background"]) {
	background: #ffffff;
}

.sidebar-search-box {
	border: 0 !important;
	border-radius: 6px;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
	padding: var(--sidebar-search-padding) !important;
}

.sidebar-search-box:not(.has-background):not([style*="background"]) {
	background: #fff8df;
}

.sidebar-search-box .wp-block-search__inside-wrapper {
	display: grid;
	grid-template-columns: 1fr var(--sidebar-search-button-width);
	gap: var(--sidebar-search-gap);
}

.sidebar-search-box .wp-block-search__input {
	appearance: none !important;
	-webkit-appearance: none !important;
	min-height: var(--sidebar-search-input-height);
	border: 1px solid #9f9f9f;
	border-radius: 0 !important;
	background: #ffffff;
	color: #777777;
	font-size: 18px;
	padding: 0 14px;
}

.sidebar-search-box input[type="search"],
.sidebar-search-box .wp-block-search__inside-wrapper input[type="search"] {
	appearance: none !important;
	-webkit-appearance: none !important;
	border-radius: 0 !important;
}

body .wp-site-blocks form.wp-block-search input.wp-block-search__input[type="search"],
body .wp-site-blocks .wp-block-search input[type="search"],
body .wp-site-blocks input[type="search"].wp-block-search__input,
body input[type="search"].wp-block-search__input {
	appearance: none !important;
	-webkit-appearance: none !important;
	border-radius: 0 !important;
	-webkit-border-radius: 0 !important;
}

.sidebar-search-box .wp-block-search__button {
	min-height: var(--sidebar-search-input-height);
	margin-left: 0;
	border: 0;
	border-radius: 0;
	background: #ffcc00 !important;
	color: #ffffff !important;
	padding: 0;
}

.sidebar-search-box .wp-block-search__button svg {
	fill: currentColor;
	width: 26px;
	height: 26px;
}

.sidebar-area-wrap .taxonomy-post_tag span{
	display: none;
}

.single-related-posts {
	background-color: #fff8df;
	border-radius: 6px;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	margin-top: 40px;
	padding: 28px;
}

.single-related-post-card {
	background-color: #ffffff;
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.20);
	margin-bottom: 24px;
	padding: 22px 26px;
}

.single-related-post-card .wp-block-post-featured-image {
	flex: 0 0 130px;
	margin: 0 34px 0 0 !important;
}

.single-related-post-card .wp-block-post-featured-image img {
	height: 90px;
	object-fit: cover;
	width: 130px;
}

.post-page-area > .wp-block-columns > .wp-block-column:last-child .wp-block-post-featured-image,
.wp-site-blocks .sidebar-widget .wp-block-post-featured-image,
.wp-site-blocks .single-related-post-card .wp-block-post-featured-image {
	flex: 0 0 105px !important;
	width: 105px !important;
	max-width: 105px !important;
	margin: 0 24px 0 0 !important;
}

.post-page-area > .wp-block-columns > .wp-block-column:last-child .wp-block-post-featured-image img,
.wp-site-blocks .sidebar-widget .wp-block-post-featured-image img,
.wp-site-blocks .single-related-post-card .wp-block-post-featured-image img {
	display: block !important;
	width: 105px !important;
	height: 72px !important;
	max-width: 105px !important;
	object-fit: cover !important;
}

.single-related-post-card .wp-block-post-title {
	flex: 1 1 auto;
	font-size: 18px !important;
	font-weight: 700;
	line-height: 1.45;
	margin: 0;
}

.post-page-area > .wp-block-columns > .wp-block-column:last-child .wp-block-post-title,
.wp-site-blocks .sidebar-widget .wp-block-post-title {
	flex: 1 1 auto;
	min-width: 0;
	margin-left: 24px !important;
}

.sidebar-mini-list .wp-block-post,
.sidebar-mini-list .wp-block-group,
.sidebar-mini-card {
	display: flex !important;
	align-items: center !important;
	column-gap: 24px !important;
	row-gap: 12px !important;
}

.sidebar-mini-list .wp-block-post-featured-image,
.sidebar-mini-card .wp-block-post-featured-image {
	flex: 0 0 105px !important;
	width: 105px !important;
	max-width: 105px !important;
	margin: 0 !important;
}

.sidebar-mini-list .wp-block-post-featured-image img,
.sidebar-mini-card .wp-block-post-featured-image img {
	display: block !important;
	width: 105px !important;
	height: 72px !important;
	max-width: 105px !important;
	object-fit: cover !important;
}

.sidebar-mini-list .wp-block-post-title,
.sidebar-mini-card .wp-block-post-title {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	line-height: 1.25 !important;
}

.wp-site-blocks .wp-block-column:last-child .wp-block-query .wp-block-post-featured-image img,
.wp-site-blocks .sidebar-widget .wp-block-query .wp-block-post-featured-image img,
.wp-site-blocks .sidebar-widget .wp-block-post-template > li .wp-block-post-featured-image img {
	display: block !important;
	width: 105px !important;
	height: 72px !important;
	max-width: 105px !important;
	object-fit: cover !important;
}

.wp-site-blocks .wp-block-column:last-child .wp-block-query .wp-block-post-title,
.wp-site-blocks .sidebar-widget .wp-block-query .wp-block-post-title,
.wp-site-blocks .sidebar-widget .wp-block-post-template > li .wp-block-post-title {
	margin-left: 24px !important;
	line-height: 1.25 !important;
}

.single-related-post-card .wp-block-post-title a {
	color: var(--wp--preset--color--primary);
	text-decoration: none;
}

.read-more-btn a.wp-block-post-excerpt__more-link {
    background: var(--wp--preset--color--extra-primary);
    border-color: currentColor;
    background: #ffd428;
	color: #ffffff !important;
	text-decoration: none !important;
    font-weight: 700;
    padding-top: 15px;
    padding-right: 30px;
    padding-bottom: 15px;
    padding-left: 30px;
	padding: 8px 18px;
	border: 1px solid #f19a10;
}

@media (max-width: 1100px) {
	.post-page-area .wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex {
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

@media (max-width: 990px) {
	.post-page-area .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		padding-right: 0 !important;
	}
}

.woocommerce-account .wp-block-post-title, .woocommerce-account main .woocommerce, .woocommerce-cart .wp-block-post-title, .woocommerce-cart main .woocommerce, .woocommerce-checkout .wp-block-post-title, .woocommerce-checkout main .woocommerce {
    max-width: 100%;
}

pre {
    background: #eee;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em;
}

/*comment*/
.wp-block-comments{
    padding: 20px;
    border: 1px solid #dfdfdf;
}
.wp-block-comment-template li .wp-block-columns{
    border: 1px solid #dfdfdf;
    padding: 20px;
}
.wp-block-avatar img{
    border: 1px solid #dfdfdf;
    padding: 2px;
}
.wp-block-post-comments-form textarea{
    background: #f8f8f8;
}
.entry-content{
	overflow-wrap: anywhere;
	overflow: hidden;
}
.banner-image figure {
    height: 650px;
    margin: 0 auto;
    text-align: center;
}
.banner-image img {
	height: 100%;
	object-fit: cover;
}
.banner-wrap{
	padding-bottom: 0;
}
/*Woocommerce Account page CSS*/

nav.woocommerce-MyAccount-navigation li {
    border: 1px solid var(--wp--preset--color--primary) !important;
    margin-bottom: 10px;
    padding: 10px !important;
    background-color: var(--wp--preset--color--primary) !important;
}
nav.woocommerce-MyAccount-navigation li a{
    color: #fff;
    padding: 10px 0 !important;
    text-decoration: none !important;
}
nav.woocommerce-MyAccount-navigation li:hover {
    background-color: transparent !important;
    border-color: #000 !important;
}
nav.woocommerce-MyAccount-navigation li:hover a{
    color:var(--wp--preset--color--primary);
}

.wc-block-components-notice-banner {
    margin: 0;
}

a.added_to_cart.wc-forward {
    background-color: #32373c;
    color: #fff;
    padding-top: calc(0.667em + 2px);
    padding-right: calc(1.333em + 2px);
    padding-bottom: calc(0.667em + 2px);
    padding-left: calc(1.333em + 2px);
}

/*  Account Page CSS */
.woocommerce-account h2 {
	font-weight: 500;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li,.woocommerce-account .addresses .title .edit {
	background: var(--wp--preset--color--extra-primary);
	margin-bottom: 10px;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
	background-color: transparent !important;
}
.woocommerce-MyAccount-navigation ul li a,.woocommerce-account .addresses .title .edit {
	padding: 8px 12px !important;
	font-size: 16px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0 !important;
}
.woocommerce-account .addresses .title .edit{
	color: #fff !important;
	text-decoration: none;
}
nav.woocommerce-MyAccount-navigation ul li a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}
.woocommerce-account .addresses .title .edit {
    float: left;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	list-style: none;
	border-bottom: 1px solid #eaeaea;
	position: relative;
	padding: 0;
}
.woocommerce-MyAccount-navigation ul li a {
	padding: 15px 0;
	display: block;
	text-decoration: none;
}
.woocommerce-MyAccount-navigation ul li:last-child {
	border: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 2rem;
	padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	text-decoration: none;
}
.meta-category a{
	text-decoration: none !important;
}
.post-navigation-link-previous a,
.post-navigation-link-next a {
	color: #fff !important;
	text-decoration: none;
}
.post-navigation-link-previous ,
.post-navigation-link-next {
  background: var(--wp--preset--color--extra-primary);
  color: var(--wp--preset--color--secondary);
  padding: 7px 20px;
  border-radius: 5px;
}
.post-pgntion{
	margin-top: 40px;
}

.post-page-area {
	width: 100%;
	max-width: 100% !important;
	padding-top: 40px !important;
}

.post-page-area > .wp-block-columns,
.post-page-area .wp-block-columns.clean-two-column-layout {
	width: 100%;
	max-width: 1480px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.post-page-area > .wp-block-columns > .wp-block-column:first-child {
	flex-basis: 70% !important;
}

.post-page-area > .wp-block-columns > .wp-block-column:last-child {
	flex-basis: 30% !important;
}

@media (max-width: 781px) {
	.post-page-area > .wp-block-columns > .wp-block-column:first-child,
	.post-page-area > .wp-block-columns > .wp-block-column:last-child {
		flex-basis: 100% !important;
	}
}
