/* PsyConseil's public pages: shared rhythm, existing theme and content. */
.psy-public-page { padding-block: clamp(1.5rem, 4vw, 3rem); overflow-wrap: anywhere; }
.psy-public-page .card { border-color: var(--alicia-public-card-border); border-radius: var(--alicia-radius-lg); box-shadow: var(--alicia-shadow-sm); }
.psy-public-page .psy-page-hero { background: radial-gradient(ellipse at 95% 0%, rgba(var(--alicia-color-primary-rgb), .12), transparent 60%), var(--alicia-public-card-bg); border: 1px solid var(--alicia-public-card-border); border-radius: var(--alicia-radius-lg); margin-bottom: 2rem !important; }
.psy-public-page h1 { font-size: clamp(2rem, 3.8vw, 3.4rem); line-height: 1.15; letter-spacing: -.035em; text-wrap: balance; }
.psy-public-page h2, .psy-public-page h3 { text-wrap: balance; letter-spacing: -.02em; }
.psy-public-page .lead { font-size: clamp(1.05rem, 1.5vw, 1.2rem); line-height: 1.8; color: var(--alicia-text-secondary); max-width: 48rem; text-wrap: pretty; }
.psy-public-page p { line-height: 1.75; }
.psy-public-page .alicia-public-feature-card { position: relative; padding: clamp(1.4rem, 2.4vw, 2rem); }
.psy-public-page .alicia-public-feature-card::before { content: ''; position: absolute; top: 0; left: 1.5rem; right: 1.5rem; height: 3px; background: linear-gradient(90deg, transparent, var(--alicia-color-primary), transparent); opacity: .5; }
.psy-public-page .alicia-public-feature-card:hover { transform: translateY(-3px); }
.psy-public-page .alicia-public-inline-icon { flex-shrink: 0; border-radius: 14px; }
.psy-public-page .btn { min-height: 44px; border-radius: .8rem; white-space: normal; justify-content: center; }
.psy-public-page .btn-sm { padding: .6rem .9rem; }
.psy-public-page .form-control, .psy-public-page .form-select { min-height: 46px; border-radius: .75rem; }
.psy-public-page .form-label { font-weight: 600; margin-bottom: .6rem; }
.psy-public-page textarea.form-control { min-height: 10rem; resize: vertical; }
.psy-public-page a:focus-visible, .psy-public-page button:focus-visible { outline: 2px solid var(--alicia-color-primary); outline-offset: 4px; }
.psy-public-page .psy-page-hero .small.d-inline-flex { flex-wrap: wrap; }
.psy-public-page .alicia-article-list-image { background: transparent; }
.psy-public-page .alicia-article-list-image img { -webkit-mask-image: linear-gradient(#000 80%, transparent); mask-image: linear-gradient(#000 80%, transparent); }
.psy-public-page .alicia-article-list-card:hover { transform: translateY(-3px); }
.psy-public-page .alicia-article-list-excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.psy-public-page .pagination { flex-wrap: wrap; gap: .3rem; }
.psy-public-page .alicia-article-header { padding-bottom: 2rem; border-bottom: 1px solid var(--alicia-border-color); }
.psy-public-page .alicia-article-cover img { width: 100%; height: auto; }
.psy-public-page .article-content { line-height: 1.85; }
.psy-shop-heading { padding: clamp(1.5rem, 3vw, 3rem); }
.psy-shop article.card { border-top: 3px solid rgba(var(--alicia-color-primary-rgb), .45); transition: transform .2s, box-shadow .2s; }
.psy-shop article.card:hover { transform: translateY(-3px); box-shadow: var(--alicia-shadow-md); }
.psy-product-price { color: var(--alicia-color-primary); font-size: 1.6rem; letter-spacing: -.025em; }
.psy-shop .card-body > .d-flex:last-child { padding-top: 1rem; border-top: 1px solid var(--alicia-border-color); }
@media (max-width: 575.98px) {
    .psy-public-page.container-fluid { padding-inline: 0; }
    .psy-public-page .card-body.p-4 { padding: 1.25rem !important; }
    .psy-public-page .alicia-public-feature-top { flex-wrap: wrap; }
    .psy-public-page .btn-lg.px-5 { padding-inline: 1.2rem !important; width: 100%; }
    .psy-public-page .alicia-article-list-footer { flex-wrap: wrap; gap: .75rem; }
    .psy-public-page .form-control, .psy-public-page .form-select { font-size: 1rem; }
    .psy-shop-heading > .d-flex { width: 100%; }
    .psy-shop-heading > .d-flex > .btn { flex: 1 1 auto; }
}
@media (prefers-reduced-motion: reduce) {
    .psy-public-page .alicia-public-feature-card, .psy-public-page .alicia-article-list-card, .psy-shop article.card { transition: none; }
    .psy-public-page .alicia-public-feature-card:hover, .psy-public-page .alicia-article-list-card:hover, .psy-shop article.card:hover { transform: none; }
}

.psy-dashboard-figure img { display: block; width: 100%; height: auto; border-radius: 1rem; }
.psy-shop-card { overflow: hidden; }
.psy-shop .psy-shop-cover { position: relative; display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 9; background: radial-gradient(ellipse at top right, rgba(var(--alicia-color-primary-rgb), .25), transparent), var(--alicia-bg-surface-muted); color: var(--alicia-color-primary); font-size: 3.5rem; overflow: hidden; text-decoration: none; }
.psy-shop-cover img { width: 100%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(#000 80%, transparent); mask-image: linear-gradient(#000 80%, transparent); }
.psy-shop-cover > span { position: absolute; top: 1rem; left: 1rem; border-radius: 2rem; padding: .45rem .8rem; background: var(--alicia-bg-surface); color: var(--alicia-text-primary); font-size: .75rem; font-weight: 600; }
.psy-shop .psy-shop-cover-large { border-radius: 1.2rem; font-size: 5rem; }
.psy-shop .psy-shop-cover-large img { object-fit: contain; mask-image: none; -webkit-mask-image: none; }
.psy-shop-meta { color: var(--alicia-text-secondary); font-size: .9rem; }
.psy-shop-facts { display: flex; flex-wrap: wrap; gap: .65rem; }
.psy-shop-facts li { padding: .5rem .8rem; background: var(--alicia-bg-surface); border: 1px solid var(--alicia-border-color); border-radius: 2rem; font-size: .85rem; }
.psy-purchase-card { border-top: 3px solid var(--alicia-color-primary) !important; }
.psy-purchase-card .psy-product-price { font-size: clamp(2rem, 3vw, 2.8rem); font-weight: 700; }
.psy-purchase-help { padding-top: 1rem; border-top: 1px solid var(--alicia-border-color); }
.psy-program { padding: 1rem 0; border-top: 1px solid var(--alicia-border-color); }
.psy-program summary { display: flex; align-items: center; flex-wrap: wrap; gap: .7rem; cursor: pointer; font-weight: 600; }
.psy-program summary::after { content: '+'; margin-left: auto; color: var(--alicia-color-primary); }
.psy-program[open] summary::after { content: '−'; }
.psy-program summary::-webkit-details-marker { display: none; }
.psy-program summary small { font-weight: 400; color: var(--alicia-text-secondary); }
.psy-program-number { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border-radius: .6rem; background: rgba(var(--alicia-color-primary-rgb), .12); color: var(--alicia-color-primary); }
.psy-program ol { margin-top: 1rem; padding-left: 2rem; }
.psy-program li { padding-block: .5rem; color: var(--alicia-text-secondary); }
.psy-program summary:focus-visible { outline: 2px solid var(--alicia-color-primary); outline-offset: 4px; }
@media(min-width:992px) { .psy-purchase-column { position: sticky; top: 9rem; } }
@media(max-width:991.98px) { .psy-purchase-column { position: static; } }
#acheter { scroll-margin-top: 9rem; }

.psy-article-media:has(iframe) { aspect-ratio: 16 / 11; }
.article-content iframe { max-width: 100%; }

.psy-article-media:has(iframe) { aspect-ratio: auto; }
