/* Article pivoté -90° : hauteur écran = hauteur des capitales du mot suivant (Anton : capHeight 1760 / unitsPerEm 2048). */
:root { --btp-cap: 0.859375; }
.btp-title-art {
    --btp-art-w: 1700; /* largeur du viewBox du symbole, posée par btp-title-art.js */
    display: inline-block;
    position: relative;
    vertical-align: baseline;
    width: calc(var(--btp-cap) * 1em * 1760 / var(--btp-art-w));
    height: calc(var(--btp-cap) * 1em);
    margin-right: 0.14em;
    line-height: 0;
    letter-spacing: 0;
    text-indent: 0;
    color: var(--btp-red-light);
}
.btp-title-art > .btp-sr {
    position: absolute; width: 1px; height: 1px; overflow: hidden;
    clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}
.btp-title-art__g {
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    width: calc(var(--btp-cap) * 1em);
    height: calc(var(--btp-cap) * 1em * 1760 / var(--btp-art-w));
    fill: currentColor;
    transform: translate(-50%, -50%) rotate(-90deg);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.btp-section-title:hover .btp-title-art__g { transform: translate(-50%, -50%) rotate(0deg); }
@media (prefers-reduced-motion: reduce) { .btp-title-art__g { transition: none; } }
/* Hôtes texte (data-i18n conservé) : neutralise l'ancien rendu texte pivoté. */
.btp-menu-group-sep--photo .btp-grp-art.btp-art-host, .btp-btn-logo-submit .btp-submit-prefix.btp-art-host {
    display: contents !important; transform: none !important; font-size: inherit !important; margin: 0 !important;
}
.btp-art-host .btp-title-art { margin-right: 0; }
.btp-menu-group-sep.btp-menu-group-sep--photo .btp-grp-mark { font-size: clamp(24px, 2.8vw, 38px); align-items: baseline; gap: 0.24em; }
.btp-menu-group-sep.btp-menu-group-sep--photo .btp-grp-mark .btp-grp-name { font-size: 1em; }
.btp-btn-logo-submit .btp-submit-prefix-wrap:has(.btp-art-host) { display: contents !important; font-size: inherit !important; }
html[lang="zh"] .btp-art-host.btp-art-host.btp-art-host, html[lang="ja"] .btp-art-host.btp-art-host.btp-art-host, html[lang="ko"] .btp-art-host.btp-art-host.btp-art-host { display: none !important; }
/* Le wrapper porte la taille de police du mot voisin (la em du calcul) : on bat les règles génériques « span ». */
html body span.btp-title-art { font-size: inherit; }
