/* Fiche des articles standard : styles limités à ce template. */
.fisel-single-post {
    background: #fff;
    color: var(--fisel-text);
}

.fisel-single-post .fisel-post-reading {
    width: min(820px, calc(100% - 40px));
    margin-inline: auto;
}

.fisel-single-post .fisel-post-hero {
    padding: 40px 0;
    background: linear-gradient(135deg, var(--fisel-teal-dark), var(--fisel-teal));
    color: #fff;
}

.fisel-single-post .fisel-post-back {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin-bottom: 14px;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
}

.fisel-single-post .fisel-post-back:hover {
    color: var(--fisel-yellow);
    text-decoration: underline;
}

.fisel-single-post .fisel-post-hero time {
    display: block;
    margin-bottom: 12px;
    color: var(--fisel-yellow);
    font-size: .95rem;
}

.fisel-single-post .fisel-post-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2rem, 5vw, 3.5rem);
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.fisel-single-post .fisel-post-body {
    padding-block: 32px 48px;
}

.fisel-single-post .fisel-post-featured {
    margin: 0 0 20px;
    text-align: center;
}

.fisel-single-post .fisel-post-featured img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(100%, 760px);
    max-height: 360px;
    margin-inline: auto;
    border-radius: 18px;
}

.fisel-single-post .fisel-post-content {
    display: flow-root;
    font-size: 1.125rem;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.fisel-single-post .fisel-post-content p,
.fisel-single-post .fisel-post-content ul,
.fisel-single-post .fisel-post-content ol {
    margin-block: 0 1.25em;
}

.fisel-single-post .fisel-post-content ul,
.fisel-single-post .fisel-post-content ol {
    padding-inline-start: 1.5em;
}

.fisel-single-post .fisel-post-content li + li {
    margin-top: .35em;
}

.fisel-single-post .fisel-post-content h2,
.fisel-single-post .fisel-post-content h3 {
    color: var(--fisel-teal-dark);
    line-height: 1.25;
    margin-block: 1.5em .65em;
}

.fisel-single-post .fisel-post-content h2 {
    font-size: clamp(1.6rem, 3vw, 2rem);
}

.fisel-single-post .fisel-post-content h3 {
    font-size: clamp(1.3rem, 2.5vw, 1.55rem);
}

.fisel-single-post .fisel-post-content > :first-child {
    margin-top: 0;
}

.fisel-single-post .fisel-post-content blockquote {
    margin: 1.5em 0;
    padding: 20px 24px;
    border-inline-start: 4px solid var(--fisel-orange);
    background: var(--fisel-light);
    color: var(--fisel-teal-dark);
}

.fisel-single-post .fisel-post-content blockquote > :last-child {
    margin-bottom: 0;
}

.fisel-single-post .fisel-post-content a {
    color: var(--fisel-teal-dark);
    text-decoration: underline;
    text-underline-offset: .2em;
}

.fisel-single-post .fisel-post-content a:hover {
    text-decoration-thickness: 2px;
}

.fisel-single-post .fisel-post-content img,
.fisel-single-post .fisel-post-content video {
    max-width: 100%;
    height: auto;
}

.fisel-single-post .fisel-post-content iframe {
    max-width: 100%;
}

.fisel-single-post .fisel-post-content .alignwide,
.fisel-single-post .fisel-post-content .alignfull {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
}

.fisel-single-post .fisel-post-content figcaption {
    font-size: .9rem;
    line-height: 1.5;
    color: #626b6d;
    text-align: center;
}

.fisel-single-post .fisel-post-pages {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
}

.fisel-single-post .fisel-post-bottom {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid #e3e8e7;
}

.fisel-single-post .fisel-post-return {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 12px 22px;
    border-radius: 999px;
    background: var(--fisel-orange);
    color: var(--fisel-teal-dark);
    text-decoration: none;
    font-weight: 800;
}

.fisel-single-post .fisel-post-return:hover {
    background: var(--fisel-teal-dark);
    color: #fff;
}

.fisel-single-post a:focus-visible {
    outline: 3px solid var(--fisel-teal-dark);
    outline-offset: 4px;
}

.fisel-single-post .fisel-post-hero a:focus-visible {
    outline-color: var(--fisel-yellow);
}

@media (max-width: 768px) {
    .fisel-single-post .fisel-post-hero {
        padding: 28px 0;
    }

    .fisel-single-post .fisel-post-body {
        padding-block: 24px 36px;
    }

    .fisel-single-post .fisel-post-featured img {
        max-height: 280px;
    }

    .fisel-single-post .fisel-post-content {
        font-size: 1.0625rem;
    }

    .fisel-single-post .fisel-post-content blockquote {
        padding: 16px 18px;
    }
}
