@charset "utf-8";

body.grv-site.grv-page #container #mainContent {
    overflow-wrap: anywhere;
}

body.grv-site.grv-page #container #mainContent :where(font, span, p, div, td, th) {
    font-family: inherit !important;
}

body.grv-site.grv-page #container #mainContent h1 {
    margin: 0 0 24px;
    font-size: clamp(26px, 3vw, 38px);
}

body.grv-site.grv-page #mainContent h2,
body.grv-site.grv-page #mainContent h3 {
    color: #164f87;
    line-height: 1.3;
}

body.grv-site.grv-page #mainContent > hr {
    width: 100%;
    height: 1px;
    border: 0;
    background: #d4e1ee;
}

body.grv-site.grv-page:not(.grv-gallery) #mainContent img {
    max-width: 100%;
    height: auto;
}

body.grv-site.grv-page #mainContent > img {
    border-radius: 14px;
}

body.grv-site.grv-page #container #mainContent td {
    color: #253b56;
}

body.grv-site.grv-archives .news {
    overflow-x: auto;
}

body.grv-site .site-table-scroll {
    max-width: 100%;
    overflow-x: auto;
    margin: 24px 0;
    scrollbar-color: #afc5de #f0f5fb;
}

body.grv-site table.site-data-table {
    min-width: 560px;
    width: 100% !important;
    margin: 0 !important;
    border: 1px solid #bdcfe3 !important;
    border-spacing: 0 !important;
    border-collapse: separate !important;
    border-radius: 12px;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.5;
}

body.grv-site #container #mainContent table.site-data-table > :is(thead, tbody, tfoot) > tr > :is(td, th) {
    padding: 12px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #c8d7e8 !important;
    background: #f2f6fc !important;
    color: #203b59 !important;
    vertical-align: middle;
}

body.grv-site #container #mainContent table.site-data-table > :is(thead, tbody) > tr:first-child > :is(td, th) {
    background: #195b98 !important;
    color: white !important;
    font-weight: 700;
}

body.grv-site #container #mainContent table.site-data-table > :is(thead, tbody, tfoot) > tr:hover > :is(td, th) {
    background-color: #c7e3ff !important;
    color: #143657 !important;
}

body.grv-site #container #mainContent table.site-data-table > :is(thead, tbody) > tr:first-child:hover > :is(td, th) {
    background-color: #124a7d !important;
    color: white !important;
}

body.grv-site #container #mainContent table.site-data-table > :is(thead, tbody, tfoot) > tr > :is(td, th) :is(p, font, span) {
    color: inherit;
}

body.grv-site.grv-gallery #mainContent > table {
    width: 100%;
    table-layout: fixed;
    border-spacing: 12px;
}

body.grv-site.grv-gallery .onglet {
    width: auto;
    padding: 0;
    vertical-align: top;
}

body.grv-site.grv-gallery .onglet a {
    display: block;
    padding: 14px;
    border: 1px solid #d4e1ee;
    border-radius: 12px;
    background: #f2f6fc;
    color: #164f87;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

body.grv-site.grv-gallery .onglet a:hover,
body.grv-site.grv-gallery .onglet a:focus-visible {
    border-color: #82b3e5;
    background: #d4e7ff;
}

body.grv-site.grv-gallery .onglet img {
    display: block;
    max-width: 100%;
    height: 90px;
    margin: 0 auto 10px;
    border-radius: 8px;
    object-fit: contain;
}

body.grv-site.grv-gallery #contenu {
    max-width: 100%;
    overflow-x: auto;
}

body.grv-site.grv-admin #mainContent > form {
    color: #253b56;
}

body.grv-site.grv-admin #mainContent textarea,
body.grv-site.grv-admin #mainContent input[type="text"] {
    box-sizing: border-box;
    max-width: 100%;
    padding: 10px 12px;
    border: 1px solid #adc4dd;
    border-radius: 8px;
    background: white;
    color: #203b59;
    font: inherit;
}

body.grv-site.grv-admin #mainContent textarea {
    width: 100%;
    min-height: 240px;
}

body.grv-site.grv-admin #mainContent .nicEdit-panelContain,
body.grv-site.grv-admin #mainContent .nicEdit-main {
    box-sizing: border-box;
    max-width: 100%;
}

body.grv-site.grv-admin #mainContent .nicEdit-main {
    overflow-x: auto;
    font-family: inherit;
}

body.grv-site.grv-admin .site-data-table > tbody > tr > td > font {
    font-size: 14px;
    color: #253b56;
}

body.grv-site .site-table-scroll:focus-visible {
    outline: 3px solid #1671c9;
    outline-offset: 3px;
}

@media (max-width: 800px) {
    body.grv-site.grv-gallery #mainContent > table,
    body.grv-site.grv-gallery #mainContent > table > tbody { display: block; }
    body.grv-site.grv-gallery #mainContent > table > tbody > tr { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 12px; margin-bottom: 12px; }
    body.grv-site.grv-gallery #mainContent > table > tbody > tr > td { display: block; }
}
