/*
Theme Name: Le Cabinet de Littérature
Theme URI: https://lecdl.fr
Author: Le Cabinet de Littérature
Description: Thème sur mesure du Cabinet de Littérature : correction, relecture et cours de littérature.
Version: 1.0.5
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cabinet-litterature
*/

/* Titres de section, dans la police du logo */
.cdl-section{font-family:Belleza,"Fira Sans",Arial,sans-serif!important;font-weight:400!important;text-transform:uppercase;letter-spacing:.06em;font-size:var(--wp--preset--font-size--titre)!important}

/* En-tête */
header.wp-block-template-part{position:sticky;top:0;z-index:50}
.admin-bar header.wp-block-template-part{top:32px}
@media (max-width:782px){.admin-bar header.wp-block-template-part{top:46px}}
.cdl-header{background:#000;color:#fff}
.cdl-header a{color:#fff;text-decoration:none}
.cdl-header a:hover{text-decoration:underline;color:#fff}
.cdl-header__haut{min-height:84px}
.cdl-logo img{width:210px;height:auto;display:block}
.cdl-header__liens{font-size:var(--wp--preset--font-size--petit);font-weight:500;margin:0}
.cdl-header__liens a+a{margin-left:1.25rem}
.cdl-header .wp-block-button__link{border-radius:999px;background:transparent;border:1px solid #fff;color:#fff;padding:.5rem 1rem}
.cdl-header .wp-block-button.is-style-fill .wp-block-button__link{background:#fff;color:#000}
.cdl-header .wp-block-button__link:hover{background:#fff;color:#000;text-decoration:none}
.cdl-header__nav{border-top:1px solid #2a2a2a}
.cdl-nav{gap:2.25rem!important}
.cdl-nav .wp-block-navigation-item__content{padding:.9rem 0}
.cdl-nav .wp-block-navigation__submenu-container{background:#fff!important;color:#000!important;border:1px solid var(--wp--preset--color--filet)!important;padding:1.25rem 1.5rem!important;min-width:min(560px,90vw)!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2rem}
.cdl-nav .wp-block-navigation__submenu-container a{color:#000!important;text-transform:none;letter-spacing:0;font-weight:500;font-size:1rem;padding:.6rem 0!important;border-bottom:1px solid #ECEAE5}
.cdl-nav .wp-block-navigation__submenu-container a:hover{color:var(--wp--preset--color--petrole)!important}
.cdl-nav .wp-block-navigation__responsive-container.is-menu-open{background:#000!important;color:#fff!important}

/* Texte sur bandeaux (ouverture) */
.cdl-bande,.cdl-bande-lien a{display:inline;background:#fff;color:#000;padding:.15em .45em;-webkit-box-decoration-break:clone;box-decoration-break:clone;line-height:1.75;text-decoration:none}
.cdl-bande-lien{margin:0;font-size:var(--wp--preset--font-size--moyen);font-weight:600}
.cdl-bande-lien a:hover{background:#000;color:#fff;outline:1px solid #fff}
.cdl-ouverture{background:#000;color:#fff}
.cdl-ouverture p.cdl-chapo{color:#D9D7D2;max-width:36em}

/* Pastilles */
.cdl-pastilles{background:var(--wp--preset--color--pierre)}
.cdl-pastilles p{margin:0}
.cdl-pastilles p a{display:inline-block;background:#fff;padding:.45rem .75rem;margin:.2rem .3rem .2rem 0;text-decoration:none;font-size:var(--wp--preset--font-size--petit)}
.cdl-pastilles p a:hover{background:#000;color:#fff}

/* Cartes */
.cdl-visuel{aspect-ratio:4/3;position:relative;margin:0}
.cdl-visuel.is-noir{background:#000}.cdl-visuel.is-pierre{background:#D9D7D2}.cdl-visuel.is-gris{background:#ABA8A1}.cdl-visuel.is-ardoise{background:#3A3A3C}
.cdl-etiquette{position:absolute;top:12px;left:12px;margin:0!important;background:#000;color:#fff;font-size:12px;font-weight:600;padding:4px 8px}
.cdl-carte p.cdl-etiquette{color:#fff}
.cdl-visuel.is-noir p.cdl-etiquette,.cdl-visuel.is-ardoise p.cdl-etiquette{background:#fff;color:#000}
.cdl-carte h3{font-size:clamp(1rem,1.4vw,1.15rem);hyphens:auto;-webkit-hyphens:auto;overflow-wrap:normal;word-break:normal;font-family:Belleza,"Fira Sans",Arial,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.05em;margin-top:1rem}
.cdl-carte h3 a{text-decoration:none}.cdl-carte h3 a:hover{text-decoration:underline}
.cdl-carte p{margin:.4rem 0 0;font-size:.95rem;color:#4A4A4A}
.cdl-carte p.cdl-prix{color:#000;font-weight:600}

/* Repères */
.cdl-reperes{background:#000;color:#fff}
.cdl-chiffre{display:inline-block;position:relative;z-index:0;color:#000;font-weight:700;font-size:2.5rem;padding:.2em .55em;margin:0 auto!important}
.cdl-chiffre::before{content:"";position:absolute;inset:0;background:#fff;transform:skewX(-8deg);z-index:-1}
.cdl-reperes .cdl-legende{color:#D9D7D2;margin-top:.8rem}

/* Estimateur */
.cdl-estimateur{background:#fff;padding:2rem}
.cdl-estimateur label{font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.cdl-estimateur input{display:block;width:100%;box-sizing:border-box;margin-top:.5rem;border:0;border-bottom:2px solid #000;font:600 2rem var(--wp--preset--font-family--texte);padding:.3rem 0;background:transparent}
.cdl-estimateur input:focus{outline:2px solid var(--wp--preset--color--petrole);outline-offset:4px}
.cdl-estimateur__prix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.5rem}
.cdl-estimateur__prix span{display:block;font-size:.875rem;color:#575757}
.cdl-estimateur__prix strong{display:block;font-size:1.6rem}
.cdl-estimateur__note{font-size:.8rem;color:#575757;margin-top:1rem}

/* Le Carnet */
.cdl-carnet li{border-top:2px solid #000;padding-top:1rem}
.cdl-carnet a{font-weight:600;font-size:1.15rem;text-decoration:none}
.cdl-carnet a:hover{text-decoration:underline}

/* Pied de page */
.cdl-footer{background:var(--wp--preset--color--pierre);border-top:1px solid var(--wp--preset--color--filet);font-size:.9rem}
.cdl-footer a{text-decoration:none;color:#3A3A3A}
.cdl-footer a:hover{text-decoration:underline;color:#000}
.cdl-footer .cdl-logo-pied{background:#000;display:inline-block;padding:.5rem .75rem}
.cdl-footer .cdl-logo-pied img{width:170px;height:auto;display:block}

/* Barre flottante */
.cdl-pilules{position:fixed;left:0;right:0;bottom:1rem;z-index:40;pointer-events:none;margin:0!important}
footer.wp-block-template-part{padding-bottom:4.5rem;background:var(--wp--preset--color--pierre)}
.cdl-pilules .wp-block-button{pointer-events:auto}
.cdl-pilules .wp-block-button__link{border-radius:999px;background:#fff;color:#000;border:1px solid #000;padding:.55rem 1rem}
.cdl-pilules .wp-block-button.is-style-fill .wp-block-button__link{background:#000;color:#fff}

/* Rythme vertical : pas de bandes blanches entre les sections */
.wp-site-blocks>main,.wp-site-blocks>footer,main.wp-block-group>*{margin-block-start:0}
header.wp-block-template-part .cdl-header{position:relative}

/* Pages intérieures : mise en page muséale */
.cdl-page{padding-top:clamp(4rem,10vw,8rem);padding-bottom:clamp(5rem,12vw,9rem)}
.cdl-page__tete{text-align:center;margin-bottom:clamp(3rem,7vw,5.5rem)}
.cdl-page__titre{font-family:Belleza,"Fira Sans",Arial,sans-serif!important;font-weight:400!important;text-transform:uppercase;letter-spacing:.12em;font-size:clamp(2rem,5.5vw,3.75rem)!important;line-height:1.15;margin:0}
.cdl-page__titre::after{content:"";display:block;width:56px;height:1px;background:#000;margin:2rem auto 0}
.cdl-page__texte{--wp--style--global--content-size:640px}
.cdl-page__texte>*+*{margin-block-start:1.5rem}
.cdl-page__texte p{font-size:1.0625rem;line-height:1.85;color:#1C1C1C}
.cdl-page__texte>p:first-child{font-size:clamp(1.2rem,2.2vw,1.4rem);line-height:1.65;color:#000;font-weight:400;margin-bottom:3rem}
.cdl-page__texte h2{font-family:Belleza,"Fira Sans",Arial,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.14em;font-size:1rem;margin-top:4.5rem!important;padding-top:1.5rem;border-top:1px solid #000}
.cdl-page__texte h3{font-weight:600;font-size:1.05rem;margin-top:2.5rem}
.cdl-page__texte ul{list-style:none;padding:0;margin-top:1.75rem}
.cdl-page__texte ul li{position:relative;padding:1rem 0 1rem 2.25rem;border-bottom:1px solid var(--wp--preset--color--filet);line-height:1.7}
.cdl-page__texte ul li:first-child{border-top:1px solid var(--wp--preset--color--filet)}
.cdl-page__texte ul li::before{content:"";position:absolute;left:0;top:1.95rem;width:1.1rem;height:1px;background:#000}
.cdl-page__texte .wp-block-table{margin-top:2.5rem;margin-bottom:1rem}
.cdl-page__texte .wp-block-table table{border-collapse:collapse;width:100%;border:0}
.cdl-page__texte .wp-block-table th,.cdl-page__texte .wp-block-table td{border:0;border-bottom:1px solid var(--wp--preset--color--filet);padding:1.1rem .25rem;text-align:left;vertical-align:top;font-size:1rem}
.cdl-page__texte .wp-block-table thead{border:0}
.cdl-page__texte .wp-block-table thead th{border-bottom:1px solid #000;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#575757;padding-bottom:.8rem}
.cdl-page__texte .wp-block-table td:last-child,.cdl-page__texte .wp-block-table th:last-child{text-align:right;white-space:nowrap}
.cdl-page__texte .wp-block-table td a{text-decoration:none;border-bottom:1px solid #000}
.cdl-page__texte .wp-block-table td a:hover{color:var(--wp--preset--color--petrole);border-color:var(--wp--preset--color--petrole)}
.cdl-page__texte .wp-block-buttons{margin-top:3.5rem}
.cdl-page__texte .wp-block-button__link{background:transparent;color:#000;border:1px solid #000;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;padding:1.1rem 2rem}
.cdl-page__texte .wp-block-button__link:hover{background:#000;color:#fff;border-color:#000}
.cdl-page__texte a{text-underline-offset:.2em;text-decoration-thickness:1px}

/* Menu plein écran sur téléphone */
.cdl-nav .wp-block-navigation__responsive-container.is-menu-open{padding:5.5rem 2rem 3rem!important}
.cdl-nav .is-menu-open .wp-block-navigation__container{gap:2.25rem!important;align-items:flex-start!important}
.cdl-nav .is-menu-open .wp-block-navigation-item{align-items:flex-start!important;width:100%}
.cdl-nav .is-menu-open .wp-block-navigation-item>.wp-block-navigation-item__content{font-family:Belleza,"Fira Sans",Arial,sans-serif;font-size:1.5rem;font-weight:400;letter-spacing:.1em;padding:0!important;color:#fff!important}
.cdl-nav .is-menu-open .wp-block-navigation__submenu-container{display:block!important;background:transparent!important;border:0!important;padding:.75rem 0 0!important;min-width:0!important;width:100%}
.cdl-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content{color:#BDBAB3!important;border:0!important;font-family:"Fira Sans",Arial,sans-serif!important;font-size:1rem!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important;text-align:left!important;padding:.45rem 0!important}
.cdl-nav .is-menu-open .wp-block-navigation__submenu-container{gap:0!important}
.cdl-nav .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{color:#fff!important}
.cdl-nav .is-menu-open .wp-block-navigation__submenu-icon{display:none}

/* Lien réservé au menu sur téléphone */
@media (min-width:782px){.cdl-nav .cdl-mobile-seul{display:none!important}}

/* Accessibilité */
a:focus-visible,button:focus-visible{outline:2px solid var(--wp--preset--color--petrole);outline-offset:3px}
@media (max-width:781px){
.cdl-header__liens,.cdl-header__haut .wp-block-buttons{display:none!important}
.cdl-header__haut{min-height:68px}
.cdl-logo img{width:160px}
.cdl-header__nav{position:absolute;top:0;right:clamp(1.25rem,4vw,2.5rem);height:68px;display:flex;align-items:center;border-top:0;padding:0!important;width:auto!important}
.cdl-visuel{aspect-ratio:16/7}
.cdl-reperes .wp-block-columns{flex-wrap:wrap!important}
.cdl-reperes .wp-block-columns>.wp-block-column{flex-basis:calc(50% - 1rem)!important}
.cdl-chiffre{font-size:1.6rem}
.cdl-pilules{display:none!important}
footer.wp-block-template-part{padding-bottom:0}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
