/*
Theme Name: CCN Formation
Theme URI: https://formation.chemin-neuf.fr
Author: Communauté du Chemin Neuf
Author URI: https://wwww.chemin-neuf.fr
Description: The WordPress theme for the CCN Formation website
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ccn
Version: 1.6.4
Tags: one-column, two-columns, right-sidebar, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

@import "css/fonts.css";
@import "css/forms.css";
@import "css/nav.css";
@import "css/button.css";
@import "css/blocks.css";
@import "css/modal.css";
@import "css/blockquote.css";
/* @import "css/footer.css"; */


:root {
    --primary-color: #007cba; /* #e9a91f; */
    --primary-contrast-color: white;

    --black: #4b4b4b;

    --gold: #e9a91f;

    --light-orange: #F3EEEA;
    --dark-orange: #C1573C;
    --cana-red: red;
    --ete-rose: hsla(-10, 65%, 55%, 1);

    --green-valid: hsl(85 100% 58% / 1);
    --orange-warning: orange;
    --red-error: red;


    --shadow1: 0 0 20px rgba(0,0,0,.2);
    --text-shadow1: 1px 1px 2px #00000047;

    font-size: 14px;
}

html, body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;

    font-family: 'Montserrat';
    background: white; /* hsl(240 22% 90% / 1); */
    color: black;
}
body {overflow: hidden;}

* {
    box-sizing: border-box;
}

h1, h2, h3, h4, h5 {color: var(--black); max-width: 950px; margin-left: auto; margin-right: auto;}

h1 {
    font-family: 'Montserrat';
    letter-spacing: 3px;
    font-size: 4rem;
    text-align: center;
    margin-bottom: 0rem;
    color: white;
}

h1 > span {
    display: block;
    font-size: 2.6rem;
}

h2 { 
    position: relative;
    color: var(--black);
    font-size: 4rem;
    line-height: 4.2rem;
    /* margin: 3rem 1rem 0rem 1rem; */
    width: 100%;
    /* max-width: min(100vw, 1000px); */
}
h2.subtitle {
    color: white;
    text-align: center;
    line-height: 2rem;
}

h3 {
    font-size: 2.3rem;
    text-align: center;
}

h4 {
    font-size: 1.3rem;
}

a {
    text-decoration: none;
    color: var(--primary-color);
    transition: all 0.2s ease-out;
}
a:hover {
    font-weight: bold;
    transition: all 0.2s ease-in 0;
}
a.ext-link:after {
    content: '\f35d';
    font-family: 'Font Awesome 5 Free';
    display: inline;
    margin-left: 5px;
}

p {
    max-width: 800px;
    margin: 1rem auto;
    text-align: justify;
}

h1 a, h2 a, h3 a {
    text-decoration: none;
    color: inherit;
}

.fullwidth ul {
    max-width: 800px;
    margin: auto;
    margin-top: 1rem;
}

input.error {
    border: 1px solid red;
}

.success-msg {
    background: hsl(122 100% 82% / 1);
    padding: 2rem;
    border: 3px solid green;
    color: hsl(39 100% 18% / 1);
}
.warning-msg {
    background: hsl(39 100% 76% / 1);
    padding: 2rem;
    border: 3px solid orange;
    color: hsl(39 100% 18% / 1);
}


.fas.fa-times {cursor: pointer;}
.wp-block-cover {
    width: 100vw; 
    margin-top: 3rem;
    margin-bottom: 3rem;
    position: relative;
}
.wp-block-cover h1, .wp-block-cover h2, .wp-block-cover h3, .wp-block-cover h4 {
    text-shadow: var(--text-shadow1);
    margin: auto;
}


.has-blue-primary-background-color {background: var(--primary-color) !important}
.has-gold-background-color {background: var(--gold) !important}
.has-gold-color {color: var(--gold);}

p.has-medium-font-size {
    font-size: 1.2rem;
}

#page-header {
    height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    text-shadow: var(--text-shadow1);
    cursor: pointer;
    /* margin-bottom: -3rem; */
    /* clip-path: polygon(0 0, 100% 0, 100% calc(100% - 11vw), 0 100%); */
}

#page-header > video.title-video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 100%;
    height: 100%;
    z-index: 0;
    -o-object-fit: cover;
    object-fit: cover;
}

#page-header > h1 {
    opacity: 0;
    transform: translateY(10px);
}
#page-header > h1.show {
    opacity: 1;
    transform: translateY(0);
    transition: all 0.5s ease-out;
}

.full-width-section {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

#page.restrictedwidth {
    max-width: 25cm;
    margin: auto;
}

/* #page.fullwidth > h2,
#page.fullwidth > h3,
#page.fullwidth > h4,
#page.fullwidth > p, */
#page.fullwidth > .wp-block-buttons {
    margin-left: 6.4rem;
    margin-right: 6.4rem;
}

.restrictedwidth .wp-block-cover {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.wp-block-buttons.alignright {
    display: flex;
    justify-content: flex-end;
}
.wp-block-buttons.aligncenter {
    display: flex;
    justify-content: center;
}


.overlap-header {
    background: var(--primary-color); /* #00558a; */
    color: white;
    text-align: center;
    padding: 1rem;
    height: 23.9rem;
    margin-bottom: -19.2rem;
}

.show-mobile {display: none;}
@media screen and (max-width: 470px) {.show-mobile {display: flex;}}

img {object-fit: contain; height: auto;}
img.contain {object-fit: contain;}
img.cover {object-fit: cover;}
.wp-block-column {
    display: flex; 
    /* align-items: center; */
    justify-content: center;
    flex-direction: column;
}


/* Logo Cana spécifique */
#menu-item-874 > a:nth-child(1) > img {
    height: 4.4rem;
    margin-bottom: 0.5rem;
}



/* page inscriptions spécifique */
.header.inscription-header {
    position: fixed;
    top: 0;
    left: 0;
    height: 70vh;
    width: 100%;
    z-index: 0;
}
.header.inscription-header h1 {
    margin-bottom: 0;
    margin-top: 12rem;
    opacity: 1;
}

.inscription-container {
    /* padding: 3rem; */
    background: white;
    position: relative;
    margin-top: 51vh !important;
    z-index: 1000000000;
    border-radius: 6px;
    box-shadow: 0 0 33px -2px #2b2b2b70;
}

.inscription-container > .frm_forms {
    background-color: white;
    position: relative;
    z-index: 1;
    padding: 3rem;
}


/* Page */

.subtitle {
    font-size: 1.4rem;
    margin: 0 auto;
    margin-top: 1rem;
    max-width: min(90vw, 800px);
}