/*
Theme Name: LP Child
Theme URI: https://praxis.reliquiae.earth
Description: Thème enfant Praxis basé sur GeneratePress
Author: Grūmpÿ
Template: generatepress
Version: 1.0
Text Domain: lp-child
*/


/* =========================
   PALETTE LP
========================= */

:root {
    --lp-violet: #453567;
    --lp-teal: #1b6d60;
    --lp-framboise-toxique: #d85581;
    --lp-framboise-radioactive: #ce0f4a;
    --lp-violet-pas-trop-violent: #74649f;
    --lp-teal-ratatine: #407f73;
}


/* =========================
   POLICES
========================= */

@font-face {
    font-family: 'LP Jost';
    src: url('fonts/Jost-Light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'LP Oswald';
    src: url('fonts/oswald.light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}


/* =========================
   TEXTE COURANT
========================= */

body {
    font-family: 'LP Oswald', sans-serif;
    font-size: 18px;
    line-height: 1.6;
    font-weight: normal;
    color: #4f4f58;
}


/* =========================
   TOUS LES TITRES
========================= */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'LP Jost', sans-serif !important;
    font-weight: normal !important;
    line-height: 1.18;
    margin-top: 1.15em;
    margin-bottom: 0.45em;
    font-synthesis: none;
}


/* =========================
   COULEURS TYPOGRAPHIQUES
========================= */

h1 {
    color: var(--lp-violet);
}

h2 {
    color: var(--lp-teal);
}

h3 {
    color: #94b99a;
}

h4 {
    color: var(--lp-violet-pas-trop-violent);
}

h5 {
    color: var(--lp-framboise-toxique);
}

h6 {
    color: #B6B6C4;
}


/* =========================
   HIÉRARCHIE DES TAILLES
========================= */

h1 {
    font-size: 2.55rem;
    letter-spacing: 0.005em;
}

h2 {
    font-size: 2.05rem;
    letter-spacing: 0.008em;
}

h3 {
    font-size: 1.70rem;
    letter-spacing: 0.008em;
}

h4 {
    font-size: 1.45rem;
}

h5 {
    font-size: 1.24rem;
}

h6 {
    font-size: 1.10rem;
}


/* =========================
   LIENS
========================= */

a {
    color: var(--lp-violet);
    transition: color 0.2s ease;
}

a:hover {
    color: var(--lp-framboise-radioactive);
}


/* =========================
   NOM DU SITE
========================= */

.site-title {
    font-family: 'LP Jost', sans-serif;
    font-weight: normal;
}


/* =========================
   MASQUAGE TITRE AUTOMATIQUE
========================= */

.site-logo + .site-branding .main-title,
.site-branding .site-title,
.site-branding .main-title {
    display: none;
}


/* =========================
   MENU PRINCIPAL
========================= */

.main-navigation a,
.main-nav ul li a,
.main-nav .menu-item a {
    font-family: 'LP Jost', sans-serif !important;
    font-size: 1.2rem;
    font-weight: normal !important;
    letter-spacing: 0.012em;
    line-height: 1.2;
    font-synthesis: none;
}


/* =========================
   CITATIONS / BLOCKQUOTE
========================= */

blockquote {
    border-left: 4px solid var(--lp-violet-pas-trop-violent) !important;
    padding-left: 1.2em;
}


/* =========================
   LÉGENDE MASQUÉE
========================= */

.no-legend figcaption {
    display: none !important;
}


/* =========================
   FORMULAIRE LOGIN PRAXIS
========================= */

.praxis-login {
    width: 100%;
    max-width: 420px;
    margin-top: 2rem;
    margin-bottom: 4rem;
}

.praxis-login form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.35rem;
}

.praxis-login p,
.praxis-login label {
    margin: 0;
    font-size: 1rem;
    color: var(--lp-violet);
}

.praxis-login label {
    display: block;
    margin-bottom: 0.45rem;
}

.praxis-login input[type="text"],
.praxis-login input[type="password"] {
    width: 420px;
    max-width: 100%;
    height: 54px;
    padding: 0 1rem;
    border: 1px solid #DDD7E8;
    border-radius: 14px;
    background: #F7F6FA;
    font-family: 'LP Oswald', sans-serif;
    font-size: 1rem;
    color: var(--lp-violet);
    box-sizing: border-box;
    transition: border-color 0.2s ease;
}

.praxis-login input[type="text"]:focus,
.praxis-login input[type="password"]:focus {
    outline: none;
    border-color: var(--lp-teal);
    background: #FFFFFF;
}

.praxis-login .login-submit {
    margin-top: 0.25rem;
}

.praxis-login input[type="submit"] {
    width: auto;
    min-width: 140px;
    height: 52px;
    padding: 0 2rem;
    border: none;
    border-radius: 14px;
    background: var(--lp-teal);
    color: #FFFFFF;
    font-family: 'LP Jost', sans-serif;
    font-size: 1rem;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

.praxis-login input[type="submit"]:hover {
    opacity: 0.88;
}


/* =========================
   ESPACEMENT RESSOURCES
========================= */

.page-id-154 .entry-content > * {
    margin-bottom: 2rem;
}


/* =========================
   FOOTER
========================= */

.site-info {
    font-size: 0.9rem;
    opacity: 0.72;
}


/* =========================
   BOUTONS RESSOURCES
========================= */

.wp-block-buttons .wp-block-button__link {
    border-radius: 6px !important;
    padding: 0.85rem 1.2rem;
    font-family: 'LP Jost', sans-serif;
    font-size: 0.95rem;
    transition: opacity 0.2s ease;
}

.wp-block-buttons .wp-block-button__link:hover {
    opacity: 0.88;
}


/* =========================
   FORMULAIRE CONTACT PRAXIS
========================= */

.praxis-contact {
    width: 100%;
    max-width: 680px;
    margin-top: 2rem;
    margin-bottom: 4rem;
}

.praxis-contact-intro {
    margin-bottom: 2rem;
    font-size: 1.05rem;
    color: var(--lp-violet);
    line-height: 1.6;
}


/* =========================
   CHAMPS FORMULAIRE
========================= */

.praxis-field {
    margin-bottom: 1.5rem;
}

.praxis-field label {
    display: block;
    margin-bottom: 0.45rem;
    color: var(--lp-violet);
    font-family: 'LP Jost', sans-serif;
    font-size: 1rem;
}

.praxis-field input,
.praxis-field textarea {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 1rem 1.2rem;
    border: 1px solid #DDD7E8;
    border-radius: 14px;
    background: #F7F6FA;
    font-family: 'LP Oswald', sans-serif;
    font-size: 1rem;
    color: var(--lp-violet);
    transition:
        border-color 0.2s ease,
        background 0.2s ease;
}

.praxis-field input:focus,
.praxis-field textarea:focus {
    outline: none;
    border-color: var(--lp-teal);
    background: #FFFFFF;
}


/* =========================
   BOUTON ENVOI
========================= */

.praxis-contact button {
    display: inline-block;
    width: auto;
    min-width: 160px;
    height: 52px;
    padding: 0 2rem;
    border: none;
    border-radius: 14px;
    background: var(--lp-teal);
    color: #FFFFFF;
    font-family: 'LP Jost', sans-serif;
    font-size: 1rem;
    cursor: pointer;
    transition:
        opacity 0.2s ease,
        transform 0.15s ease;
}

.praxis-contact button:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}


/* =========================
   MESSAGES
========================= */

.praxis-success {
    margin-bottom: 1.5rem;
    color: var(--lp-teal);
}

.praxis-error {
    margin-bottom: 1.5rem;
    color: var(--lp-framboise-radioactive);
}


/* =========================
   HONEYPOT
========================= */

.praxis-honeypot {
    display: none;
}