/*
Theme Name:   Fluid PM
Theme URI:    https://example.com/divi-child/
Description:  Thème enfant pour Divi
Author:       Philippe M
Author URI:   https://graphil.com
Template:     Divi
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  divi-child
Screenshot:   screenshot.jpg
*/

/*Login*/
#nav{text-align:center;}

/*Fluid*/
html {
    font-size:62.5%
}

.et_pb_text {
    margin:0 !important
}

.no-padding {
    padding:0 !important
}

button, .et_pb_button {
    margin-top: 0 !important;
    margin-bottom:0 !important
}

.pm h1 {
    font-size: clamp(3.5rem, calc(3.5rem +((1vw - 0.48rem) * 2.8217)), 6rem);
    line-height: clamp(4.2rem, calc(4.2rem +((1vw - 0.48rem) * 3.386)), 7.2rem);
    letter-spacing:-1px
}

.pm h2 {
    font-size: clamp(2.8rem, calc(2.8rem +((1vw - 0.48rem) * 2.2574)), 4.8rem);
    line-height:clamp(3.36rem, calc(3.36rem +((1vw - 0.48rem) * 2.7089)), 5.76rem)
}

.pm h3 {
    font-size: clamp(2.24rem, calc(2.24rem +((1vw - 0.48rem) * 1.8059)), 3.84rem);
    line-height:clamp(2.69rem, calc(2.69rem +((1vw - 0.48rem) * 2.1671)), 4.61rem)
}

.pm h4 {
    font-size: clamp(2.2rem, calc(1.79rem +((1vw - 0.48rem) * 1.4447)), 3.07rem);
    line-height:clamp(2.15rem, calc(2.15rem +((1vw - 0.48rem) * 1.7337)), 3.68rem)
}

.pm h5 {
    font-size: clamp(2rem, calc(1.43rem +((1vw - 0.48rem) * 1.1558)), 2.46rem);
    line-height:clamp(1.72rem, calc(1.72rem +((1vw - 0.48rem) * 1.3869)), 2.95rem)
}

.pm h6 {
    font-size: clamp(1.8rem, calc(1.14rem +((1vw - 0.48rem) * 0.9246)), 1.97rem);
    line-height:clamp(1.37rem, calc(1.37rem +((1vw - 0.48rem) * 1.1095)), 2.36rem)
}

.pm p, .pm a, .pm li {
    font-size: clamp(1.7rem, calc(1.7rem +((1vw - 0.48rem) * 0.3386)), 1.9rem);
    line-height: clamp(2.38rem, calc(2.38rem +((1vw - 0.48rem) * 0.3386)), 2.8rem);
    overflow-wrap: break-word;
    word-wrap: break-word;
    text-wrap:balance
}

.uppercase {
    text-transform:uppercase
}

.lowercase {
    text-transform:lowercase
}

.left {
    text-align:left !important
}

.center {
    text-align:center !important
}

.right {
    text-align:right !important
}

.justify {
    text-align:justify !important
}

.pm-content {
    font-size: clamp(1.7rem, calc(1.7rem +((1vw - 0.48rem) * 0.3386)), 1.9rem);
    line-height: clamp(2.38rem, calc(2.38rem +((1vw - 0.48rem) * 0.3386)), 2.8rem);
    max-width: 70ch;
    margin: 0 auto;
    text-align: center;
    text-wrap:pretty
}

.heading-xxlarge {
    font-size: clamp(5rem, 4.5vw, 6rem);
    letter-spacing: -1px;
    line-height: 1.05;
    text-wrap:balance
}

.heading-xlarge {
    font-size: clamp(4rem, 3.5vw, 5rem);
    letter-spacing: -1px;
    line-height: 1.1;
    text-wrap:balance
}

.heading-large {
    font-size: clamp(3rem, 2.8vw, 4rem);
    letter-spacing: -1px;
    line-height: 1.2;
    text-wrap:balance
}

.heading-medium {
    font-size: clamp(2.4rem, 2.2vw, 3rem);
    letter-spacing: 0px;
    line-height: 1.3;
    text-wrap:balance
}

.heading-small {
    font-size: clamp(1.8rem, 1.6vw, 2.4rem);
    letter-spacing: 0px;
    line-height: 1.4;
    text-wrap:balance
}

.hero-section {
    padding:clamp(6rem, 10vw, 12rem) clamp(3rem, 6vw, 8rem)
}

.large-section {
    padding:clamp(4rem, 8vw, 10rem) clamp(2rem, 5vw, 6rem)
}

.medium-section {
    padding:clamp(3rem, 6vw, 8rem) clamp(1.5rem, 4vw, 5rem)
}

.small-section {
    padding:clamp(2rem, 4vw, 6rem) clamp(1rem, 3vw, 4rem)
}

img {
    max-width: 100%;
    height: auto;
    display: block;
    border: 0;
    vertical-align: middle;
    border-radius: 0.5rem;
    object-fit: cover;
    width:100%
}

.shadow-small {
    box-shadow:0px 1px 2px rgba(0, 0, 0, 0.05), 0px 1px 3px rgba(0, 0, 0, 0.1)
}

.shadow-medium {
    box-shadow:0px 4px 6px rgba(0, 0, 0, 0.05), 0px 2px 4px rgba(0, 0, 0, 0.1)
}

.shadow-large {
    box-shadow:0px 10px 15px rgba(0, 0, 0, 0.05), 0px 4px 6px rgba(0, 0, 0, 0.1)
}

.shadow-xlarge {
    box-shadow:0px 20px 25px rgba(0, 0, 0, 0.05), 0px 10px 10px rgba(0, 0, 0, 0.1)
}

.shadow-inset {
    box-shadow:inset 0px 1px 3px rgba(0, 0, 0, 0.1)
}

.shadow-none {
    box-shadow:none
}

.border-small{
	border:solid 1px #000
}

.border-medium{
	border:solid 2px #000
}

.border-large{
	border:solid 4px #000
}

.border-xlarge{
	border:solid 8px #000
}

.radius-small {
    border-radius:0.25rem
}

.radius-medium {
    border-radius:0.5rem
}

.radius-large {
    border-radius:1rem
}

.radius-pill {
    border-radius:50px
}

.radius-circle {
    border-radius:50%
}

.bg-blue{background-color:#70bad3!important;
}

.bg-red{background-color:#f24e29!important;
}

.bg-ivoire{background-color:#fff8ed!important;
}

.flex {
    display:flex
}

.flex-row {
    flex-direction:row
}

.flex-column {
    flex-direction:column
}

.justify-center {
    justify-content:center
}

.align-center {
    align-items:center
}

.flex-wrap {
    flex-wrap:wrap
}

.flex-nowrap {
    flex-wrap:nowrap
}

.flexbox {
    display: flex;
    flex: 1 1 0;
    gap:2rem
}

@media (max-width: 1024px) {
    .flexbox {
        flex-direction:column
    }
}

.gap-xsmall {
    gap:clamp(0.25rem, 0.5vw, 0.5rem)
}

.gap-small {
    gap:clamp(0.5rem, 1vw, 1rem)
}

.gap-medium {
    gap:clamp(1rem, 1.5vw, 1.5rem)
}

.gap-large {
    gap:clamp(1.5rem, 2vw, 2rem)
}

.gap-xlarge {
    gap:clamp(2rem, 3vw, 3rem)
}

.regular {
    font-weight:400
}

.medium {
    font-weight:500
}

.semibold {
    font-weight:600
}

.bold {
    font-weight:800
}

.text-xsmall {
    font-size: clamp(1.2rem, 0.8vw, 1.4rem);
    line-height:1.4
}

.text-small {
    font-size: clamp(1.4rem, 0.9vw, 1.6rem);
    line-height:1.5
}

.text-medium {
    font-size: clamp(1.6rem, 1vw, 1.8rem);
    line-height:1.6
}

.text-large {
    font-size: clamp(1.8rem, 1.2vw, 2rem);
    line-height:1.6
}

.text-xlarge {
    font-size: clamp(2rem, 1.5vw, 2.4rem);
    line-height:1.6
}

.margin-top-xsmall {
    margin-top:clamp(0.5rem, 1vw, 1rem) !important
}

.margin-bottom-xsmall {
    margin-bottom:clamp(0.5rem, 1vw, 1rem) !important
}

.margin-top-small {
    margin-top:clamp(1rem, 2vw, 1.5rem) !important
}

.margin-bottom-small {
    margin-bottom:clamp(1rem, 2vw, 1.5rem) !important
}

.margin-top-medium {
    margin-top:clamp(2rem, 3vw, 3rem) !important
}

.margin-bottom-medium {
    margin-bottom:clamp(2rem, 3vw, 3rem) !important
}

.margin-top-large {
    margin-top:clamp(4rem, 5vw, 6rem) !important
}

.margin-bottom-large {
    margin-bottom:clamp(4rem, 5vw, 6rem) !important
}

.margin-top-xlarge {
    margin-top:clamp(6rem, 7vw, 8rem) !important
}

.margin-bottom-xlarge {
    margin-bottom:clamp(6rem, 7vw, 8rem) !important
}

.notice {
    font-size: 1.6rem;
    padding: 2rem;
    background-color: #BDD1F2;
    max-width: 65ch;
    border-radius: 0.4rem;
    line-height: 1.5;
    margin: 1rem 0;
    border:2px solid #8FBAFF
}

.warning {
    font-size: 1.6rem;
    padding: 2rem;
    background-color: #F7FFA0;
    max-width: 65ch;
    border-radius: 0.4rem;
    line-height: 1.5;
    margin: 1rem 0;
    border:2px solid #DEF300
}

.success {
    font-size: 1.6rem;
    padding: 2rem;
    background-color: #9DFF98;
    max-width: 65ch;
    border-radius: 0.4rem;
    line-height: 1.5;
    margin: 1rem 0;
    border:2px solid #65FF5D
}

.error {
    font-size: 1.6rem;
    padding: 2rem;
    background-color: #FF9F9F;
    max-width: 65ch;
    border-radius: 0.4rem;
    line-height: 1.5;
    margin: 1rem 0;
    border:2px solid #FF6F6F
}

.padding-xsmall {
    padding:clamp(0.5rem, 1vw, 1rem) !important
}

.padding-small {
    padding:clamp(1rem, 2vw, 1.5rem) !important
}

.padding-medium {
    padding:clamp(2rem, 3vw, 3rem) !important
}

.padding-large {
    padding:clamp(4rem, 5vw, 6rem) !important
}

.padding-xlarge {
    padding:clamp(6rem, 7vw, 8rem) !important
}

.hover-scale {
    transition:transform 0.4s ease-in-out
}

.hover-scale:hover {
    transform:scale(1.05)
}

.hover-shadow {
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.05), 0px 2px 4px rgba(0, 0, 0, 0.1);
    transition:box-shadow 0.3s ease
}

.hover-shadow:hover {
    box-shadow:0 8px 12px rgba(0, 0, 0, 0.2)
}

.transparent-20 {
    opacity:0.8 !important
}

.transparent-30 {
    opacity:0.7 !important
}

.transparent-40 {
    opacity:0.6 !important
}

.transparent-50 {
    opacity:0.5 !important
}

.transparent-60 {
    opacity:0.4 !important
}

.transparent-70 {
    opacity:0.3 !important
}

.glass {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 0.4rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 2rem;
    color:#222222
}

.bold {
    font-weight: bold
} 