/* Tarifs ouverts depuis les badges des fiches : contenu de la page 1068. */
.trios-tariff-dialog:not([open]) { display:none; }
.trios-tariff-dialog[open] {
    display:flex;
    flex-direction:column;
    width:min(38rem, calc(100% - 2rem));
    max-width:none;
    max-height:calc(100vh - 2rem);
    max-height:calc(100dvh - 2rem);
    margin:auto;
    padding:0;
    overflow:hidden;
    border:0;
    border-radius:12px;
    background:#fff1e6;
    color:#21252a;
    font-family:inherit;
    font-size:1rem;
    line-height:1.65;
    box-shadow:0 24px 80px rgba(24, 19, 14, .3);
    animation:trios-tariff-open 180ms cubic-bezier(.16, 1, .3, 1);
}
.trios-tariff-dialog::backdrop { background:rgba(24, 19, 14, .65); }
html.trios-tariff-dialog-open { overflow:hidden; }
.trios-tariff-dialog__header {
    display:flex;
    flex:none;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    padding:1.25rem 2rem;
    border-bottom:1px solid #ddcbbc;
}
.trios-tariff-dialog .trios-tariff-dialog__header h2 {
    margin:0;
    color:#21252a;
    font-size:1.4rem;
    font-weight:800;
    font-style:normal;
    line-height:1.3;
    text-transform:none;
}
.trios-tariff-dialog__header h2::before { content:none; }
.trios-tariff-dialog__close {
    display:inline-flex;
    flex:none;
    align-items:center;
    gap:.6rem;
    min-height:44px;
    padding:.5rem .75rem;
    border:1px solid #b99155;
    border-radius:4px;
    background:transparent;
    color:#81561a;
    font:inherit;
    font-size:.9rem;
    font-weight:700;
    line-height:1.4;
    cursor:pointer;
    transition:background-color 160ms ease-out, color 160ms ease-out;
}
.trios-tariff-dialog__close:hover { background:#81561a; color:#fff; }
.trios-tariff-dialog :focus-visible { outline:2px solid #81561a; outline-offset:3px; }
.trios-tariff-dialog__body {
    min-height:0;
    padding:2rem;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-color:#b99155 #fff1e6;
    scrollbar-width:thin;
}
.trios-tariff-dialog__page-link { margin:2rem 0 0; }
.trios-tariff-dialog__page-link a {
    display:inline-flex;
    align-items:center;
    min-height:44px;
    color:#81561a;
    font-weight:700;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:.25em;
}
.trios-tariff-dialog__page-link a:hover { color:#704500; text-decoration-thickness:3px; }
.trios-tariff-dialog ::selection { background:#e7bb75; color:#21252a; }
@keyframes trios-tariff-open {
    from { transform:translateY(10px); }
    to { transform:translateY(0); }
}
@media(max-width:600px) {
    .trios-tariff-dialog[open] { width:calc(100% - 1rem); max-height:calc(100dvh - 1rem); }
    .trios-tariff-dialog__header { gap:.5rem; padding:1rem; }
    .trios-tariff-dialog .trios-tariff-dialog__header h2 { font-size:1.15rem; }
    .trios-tariff-dialog__body { padding:1.25rem 1rem; }
}
@media(prefers-reduced-motion:reduce) {
    .trios-tariff-dialog[open] { animation:none; }
    .trios-tariff-dialog__close { transition:none; }
}

/* Tarifs de la saison : page dédiée et grille réutilisée dans les infos pratiques. */
.trios-tariff-dialog .trios-rates { margin:2rem 0 3rem; color:#21252a; }
.trios-tariff-dialog .trios-rates .trios-rates-heading { margin:2.5rem 0 1.25rem; font-size:1.25rem; font-weight:800; line-height:1.4; }
.trios-tariff-dialog .trios-rates .trios-rates-heading:first-child { margin-top:0; }
.trios-tariff-dialog .trios-rates .trios-rates-table { width:100%; max-width:100%; margin:0 0 2.5rem; overflow-x:auto; overscroll-behavior-inline:contain; }
.trios-tariff-dialog .trios-rates .trios-rates-table table { width:100%; min-width:620px; border-collapse:collapse; font-size:.95rem; font-variant-numeric:tabular-nums; }
.trios-tariff-dialog .trios-rates .trios-rates-table th,
.trios-tariff-dialog .trios-rates .trios-rates-table td { padding:.85rem 1rem; border:0; border-bottom:1px solid #ddcbbc; text-align:center; vertical-align:middle; white-space:nowrap; }
.trios-tariff-dialog .trios-rates .trios-rates-table thead th { color:#fff8f2; background:#21252a; font-size:.8rem; font-weight:800; }
.trios-tariff-dialog .trios-rates .trios-rates-table th:first-child,
.trios-tariff-dialog .trios-rates .trios-rates-table td:first-child { position:sticky; left:0; z-index:1; width:28%; text-align:left; white-space:normal; }
.trios-tariff-dialog .trios-rates .trios-rates-table td:first-child { background:#fff1e6; }
.trios-tariff-dialog .trios-rates .trios-rates-table tr:nth-child(even) td { background:#fff8f2; }
.trios-tariff-dialog .trios-rates .trios-rates-table tbody tr:hover td { background:#f8e7d4; }
.trios-tariff-dialog .trios-rates .trios-rate-definition { display:grid; grid-template-columns:minmax(11rem,15rem) minmax(0,1fr); gap:0 2rem; margin:0; padding:1.4rem 0; border-top:1px solid #ddcbbc; }
.trios-tariff-dialog .trios-rates .trios-rate-definition > .wp-block-group__inner-container { display:contents; }
.trios-tariff-dialog .trios-rates .trios-rate-definition .trios-rates-term { display:block; grid-column:1; grid-row:1 / span 3; margin:0; color:#21252a; font-size:1rem; font-style:normal; font-weight:800; line-height:1.5; text-transform:none; }
.trios-tariff-dialog .trios-rates .trios-rates-term::before { content:none; }
.trios-tariff-dialog .trios-rates .trios-rate-definition p { grid-column:2; max-width:75ch; margin:0 0 .55rem; line-height:1.7; }
.trios-tariff-dialog .trios-rates .trios-rate-definition p:last-child { margin-bottom:0; }
.trios-tariff-dialog .trios-rates .trios-rates-notice { max-width:80ch; margin:2rem 0 0; padding:1.5rem; border:1px solid #ddcbbc; background:#fff8f2; }
.trios-tariff-dialog .trios-rates .trios-rates-notice p { margin:0 0 .8rem; line-height:1.7; }
.trios-tariff-dialog .trios-rates .trios-rates-notice p:last-child { margin-bottom:0; }
.trios-tariff-dialog .trios-rates .trios-rates-scroll-note { display:none; }
@media(max-width:767.98px) {
 .trios-tariff-dialog .trios-rates { margin-top:1.5rem; }
 .trios-tariff-dialog .trios-rates .trios-rate-definition { grid-template-columns:minmax(0,1fr); gap:.55rem; padding:1.25rem 0; }
 .trios-tariff-dialog .trios-rates .trios-rate-definition .trios-rates-term { grid-column:1; grid-row:auto; }
 .trios-tariff-dialog .trios-rates .trios-rate-definition p { grid-column:1; }
 .trios-tariff-dialog .trios-rates .trios-rates-scroll-note { display:block; max-width:45ch; margin:0 0 .75rem; color:#665344; font-size:.85rem; line-height:1.5; }
 .trios-tariff-dialog .trios-rates .trios-rates-table th,.trios-tariff-dialog .trios-rates .trios-rates-table td { padding:.75rem; }
 .trios-tariff-dialog .trios-rates .trios-rates-table th:first-child,.trios-tariff-dialog .trios-rates .trios-rates-table td:first-child { width:145px; min-width:145px; }
}

.trios-tariff-dialog .trios-rates { margin:0; }
.trios-tariff-dialog .trios-rates .trios-rates-table { margin:0; }
.trios-tariff-dialog .trios-rates .trios-rates-table table { min-width:0; }
.trios-tariff-dialog .trios-rates .trios-rates-table th:first-child,
.trios-tariff-dialog .trios-rates .trios-rates-table td:first-child { width:70%; min-width:0; }
