/* @layer-wrap:site.typo */
@layer site.typo {
/* Version: 16-10-2026 */
/* Typographie imposée par les réglages (police, tailles de texte), sortie de core/fonts.css (couches CSS, lot L2).
 * Couche « typo » (shared/core/design/stylesheets.php) : juste après le socle, avant les éléments et le header commun,
 * qui affinent cette base (tailles « petite » / « méta », titres de cartes) sans !important ; avant le thème, qui garde
 * la main sur sa propre typographie (police à chasse fixe de Terminal, tailles de Cinéma…).
 * Titres : structure/layout/headings.css. */

/* Police du portfolio : l'emporte sur la police du hub, la remise à zéro et les composants (couches antérieures). */
body.portfolio-font,
#portfolio_page.portfolio-font,
#loader.portfolio-font,
#profil-modal-root.portfolio-font,
.portfolio-font {
    font-family: var(--portfolios-font-name), var(--portfolios-font-stack, sans-serif);
}

body.portfolio-font :is(p, span, a, li, ul, ol, time, label, h1, h2, h3, h4, h5, h6, cite, em, strong, small, td, th, input, textarea, select, button, div, article, section, figcaption, header, footer, nav),
#portfolio_page.portfolio-font :is(p, span, a, li, ul, ol, time, label, h1, h2, h3, h4, h5, h6, cite, em, strong, small, td, th, input, textarea, select, button, div, article, section, figcaption, header, footer, nav),
#loader.portfolio-font :is(span, div),
#profil-modal-root.portfolio-font :is(p, span, a, li, ul, ol, time, label, h1, h2, h3, h4, h5, h6, cite, em, strong, small, td, th, input, textarea, select, button, div, article, section, figcaption, header, footer, nav),
#portfolio_page :is(header, #header, footer, #footer, #legal),
#portfolio_page :is(header, #header, footer, #footer, #legal) :is(p, span, a, li, ul, ol, button, nav, div, strong, em, small, label) {
    font-family: var(--portfolios-font-name), var(--portfolios-font-stack, sans-serif);
}

/* Accroches logo / titres (comme setup/theme) : héritent de #portfolio_page */
#portfolio_page .dynamic-font {
    font-family: inherit;
}

#portfolio_page :is(p, span, a) {
    font-size: var(--portfolios-font-size-base);
    line-height: var(--portfolios-text-line-height);
}

.arkt-btn:not(:where(#arktefakt-header, #arktefakt-top-bar, #arktefakt-editor-bar, #theme-parameter, #main-arktefakt-hub, #arktefakt_footer, .production-child-modal) *) {
    font-size: var(--portfolios-font-size-base);
}

/* Typo des titres h1–h6 : voir structure/layout/headings.css */

#portfolio_page :is(.populare-head span, #about #services .price-head .title, .pricing .price) {
    font-size: var(--portfolios-heading-primary-size);
    line-height: var(--portfolios-heading-primary-line-height);
}

#portfolio_page :is(.pf-thumbs--landscape p, .pf-thumbs--square p, .pf-thumbs--portrait p, .article-blog-infos__meta, .article-blog-infos__description) {
    font-size: var(--portfolios-font-size-meta, calc(var(--portfolios-font-size-base) * 0.8));
    line-height: calc(var(--portfolios-text-line-height) * 0.8);
}
}
