@font-face {
    font-family: 'Amnesty Trade Gothic Cn';
    src: url('fonts/AmnestyTradeGothic-BdCn20Ob.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-BdCn20Ob.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic Cn';
    src: url('fonts/AmnestyTradeGothic-BdCn20.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-BdCn20.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic-Bd2.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Bd2.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic-Bd2Obl.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Bd2Obl.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic Cn';
    src: url('fonts/AmnestyTradeGothic-Cn18Obl.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Cn18Obl.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic Cn';
    src: url('fonts/AmnestyTradeGothic-Cn18.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Cn18.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic-Light.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic-Obl.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-Obl.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic-LightObl.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic-LightObl.woff') format('woff');
    font-weight: 300;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Amnesty Trade Gothic';
    src: url('fonts/AmnestyTradeGothic.woff2') format('woff2'),
        url('fonts/AmnestyTradeGothic.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}


body {

    font-family: 'Amnesty Trade Gothic';
    font-size: calc(12px + 0.390625vw)!important;
    line-height: calc(13px + 0.390625vw)!important;
  --e-global-color-yellow: #ffff00;
  --e-global-color-grey-ultralight: #eeeeee;
  --e-global-color-grey-light: #818181;
  --e-global-color-grey-backround: #282828;
  --e-global-color-grey-medium: #7c7c7c;
  --e-global-color-grey-dark: #1c1c1c;
  position: relative;
}
.mapboxgl-map {

    font: calc(12px + 0.390625vw)/calc(13px + 0.390625vw) 'Amnesty Trade Gothic'!important;
}
html,body {
    background-color: var(--e-global-color-grey-backround);
    margin:0;
    padding:0;
    scrollbar-color:var(--e-global-color-grey-light) transparent;
    scrollbar-width: auto;
    overflow: hidden;
}

#orientationOverlay {
    position:fixed;
    left:0;
    bottom:0;
    top:0;
    right:0;
    background:rgba(0,0,0,.95);
    width:100vw;
    height:100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index:999999;
}

header {
    font-family: 'Amnesty Trade Gothic Cn';
    height: 60px;
    background-color: #000;
    color:#fff;
    text-transform: uppercase;
    font-size: 1rem;
}
header strong{
    font-size: 1.2rem;
    font-weight: bold;
}
@media(min-width:1024px){

    header {
        font-size: 1.4rem;
    }
    header strong{
        font-size: 1.7rem;
        font-weight: bold;
    }
}



.mapboxgl-map {
    width: 100%;
    height: 100%;
}
.affaires-map {
    width: 100%;
    position:relative;
}
.affaires-results{
    width: 100%;
    transition: all 600ms ease-in 600ms;
    background-color: var(--e-global-color-grey-backround);
}

.affaires-map.halfsize{
    height:calc(50vh - 60px);
}
.affaires-map.fullsize{
    height:calc(98vh - 60px);
}
.affaires-map.minsize{
    height:calc(5vh - 60px);
}

.affaires-results.halfsize{
    height:50vh;
}
.affaires-results.fullsize{
    height:calc(88vh - 60px);
}
.affaires-results.minsize{
    height:2vh;
}


.affaires-results.halfsize .ag-theme-quartz {
    height:calc(50vh - 100px);
}
.affaires-results.fullsize .ag-theme-quartz {
    height:calc(100vh - 160px);
}
.affaires-results.minsize .ag-theme-quartz {
    height:0;
}




.expand-buttons {
    position:relative;
    height:30px;
    width: 100%;
}
.expand-buttons button{
    border:none;
    background-color:var(--e-global-color-grey-backround);
    color: #fff;
    width: 40px;
    text-align: center;
    left:50%;
    position:absolute;
    transform: translateX(-50%);
    padding:0;
    transition: all 200ms ease-in;
}
.expand-buttons button span {
    position:relative;
    display: block;
    width: 40px;
    height: 15px;
}
.expand-buttons button:hover{
    color: var(--e-global-color-yellow);
}
.expand-buttons .up {
    height:20px;
    top:-20px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    z-index: 802;
    line-height: 1.8rem;
}
.expand-buttons .down {
    height:20px;
    top:0px;
    z-index: 801;
    line-height: 0;
}

.expand-buttons .up span:before{
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f0de';
    font-weight: 900;
    left:0;
    top:0;
    height:15px;
    width: 40px;
    text-align: center;
}
.expand-buttons .down span:before{
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f0dd';
    font-weight: 900;
    left:0;
    top:0;
    height:10px;
    width: 40px;
    text-align: center;
}
#offcanvasHomepage {
    top:60px;
    background-color:var(--e-global-color-grey-backround);
    color:#fff;
    transition: all 600ms ease-in;
}



.offcanvas.offcanvas-start {
    width:100vw;
}
.offcanvas-backdrop.show {
    top: 60px;
  }
@media(min-width:992px){

    .offcanvas.offcanvas-start {
        width:50vw;
    }
}
.volet h1 {
    font-family: 'Amnesty Trade Gothic Cn';
    color:#fff;
    text-transform: uppercase;
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 2rem;
    padding:24px 48px 0px 0 ;
}
.volet {
    position:fixed;
    top:60px;
    width:100vw;
    height:calc(100vh - 60px);
    overflow-y: scroll;
    z-index: 9999;
    background-color:var(--e-global-color-grey-backround);
    color:#fff;
    transition: all 600ms ease-in;
    right:-100vw;
}
.volet.active {
    right:0;
}
.volet-left {
    width:100vw;
    
}
/*.volet-right {
}*/
/*
@media(min-width:992px){

    .volet {

        overflow-y: hidden;
        right:-75vw;
        width:75vw;
    }
    .volet.active {
        right:-50vw;
    }
    .volet.active.wideopen {
        right:0;
    }
    .volet-left {
        width:25vw;
        height:calc(100vh - 60px);
    }
    .volet-right {
        width:50vw;
        height:calc(100vh - 60px);
    }
}*/
@media(min-width:1024px){

    .volet {
        overflow-y: hidden;
        right:-75vw;
        width:75vw;
        
    }
    .volet.active {
        right:-50vw;
    }
    .volet.active.wideopen {
        right:0;
    }
    .volet-left {
        width:25vw;
        height:calc(100vh - 60px);
        box-shadow: 0px 0px 4px 4px rgba(0,0,0,0.3);
        -webkit-box-shadow: 0px 0px 4px 4px rgba(0,0,0,0.3);
        -moz-box-shadow: 0px 0px 4px 4px rgba(0,0,0,0.3);
    }
    .volet-right {
        width:50vw;
        height:calc(100vh - 60px);
    }
}


.volet-right a{
    color: #fff;
    text-decoration: none;
}
.volet-right a:hover{
    color: var(--e-global-color-yellow);
    text-decoration: none;
}

.volet-right .volet-top,
.volet-left .volet-top {
    border-bottom:1px solid var(--e-global-color-grey-medium);
}
.volet-left .volet-middle {
    border-bottom:1px solid var(--e-global-color-grey-medium);
}
@media(min-width:1024px){
    .volet-right .volet-top,
    .volet-left .volet-top {
        height:calc(40vh - 60px);
    }
    .volet-left .volet-middle {
        height:45vh;
    }
    .volet-left .volet-bottom {
        height:10vh;
    }
    .volet-right .volet-extended {
        height:60vh;
    }
    .volet-left .volet-middle .volet-scrollbox {
        max-height:45vh;
        height: 100%;
        overflow-y: scroll;
        padding-right: 20px;
    }
    .volet-right .volet-top .volet-scrollbox {
        max-height:35vh;
        min-height:0;
        overflow-y: scroll;
        padding-right: 20px;
    }

    .volet-right .volet-extended .volet-scrollbox {
        max-height:20vh;
        height: 100%;
        overflow-y: scroll;
        padding-right: 20px;
    }
    .volet-right .volet-extended .volet-procedure .volet-scrollbox {
        max-height:40vh;
        height: 100%;
        overflow-y: scroll;
        padding-right: 20px;
    }
}


.volet-close-btn {
    border: none;
    background-color: var(--e-global-color-grey-backround);
    color:#fff;
    font-size: 0.7rem;
    line-height: 0;
    text-transform: uppercase;
    position: relative;
    padding-left:16px;
    transition: all 400ms ease-in;
}
.volet-close-btn span:before{
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f00d';
    font-weight: 900;
    left:0;
}
.volet-close-btn:hover {
    color: var(--e-global-color-yellow);
}
.affaire-content {
    font-family: 'Amnesty Trade Gothic';
    font-size:1rem;
    line-height: 1.3rem;
    font-weight: 600;
}
.affaire-subtitle {

    font-family: 'Amnesty Trade Gothic Cn';
    color: var(--e-global-color-yellow);
    text-transform: uppercase;
    font-size: 1.1rem;
    font-weight: 500;
}
.affaire-link a{

    font-family: 'Amnesty Trade Gothic';
    font-size: 0.9rem;
    line-height: 1.2rem;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
}
.affaire-link a:hover {

    color: var(--e-global-color-yellow);
    text-decoration: none;
}
.affaire-procedure {
    font-family: 'Amnesty Trade Gothic';
    font-size: 0.9rem;
    line-height: 1.2rem;
    font-weight: 400;
}
.affaire-pager {
    font-family: 'Amnesty Trade Gothic Cn';
    color: var(--e-global-color-grey-medium);
    text-transform: uppercase;
    font-size: 0.9rem;
}
.affaire-pager-btn {
    color: var(--e-global-color-grey-medium);
    background-color: transparent;
    border: none;
    font-size: 0.9rem;
}
.affaire-pager-btn:hover {
    color: #fff;
}
.affaire-counter {
    font-family: 'Amnesty Trade Gothic Cn';
    color: var(--e-global-color-yellow);
    text-transform: uppercase;
    font-size: 0.9rem;
}
.affaire-counter strong {
    color: #fff;
    font-size: 0.9rem;
}
.affaire-designation  {
    color: #fff;
    font-size: 1.4rem;
    line-height: 1.6rem;
    font-weight: 700;
    padding-left: 30px;
    position: relative;

}
.affaire-row-title {
    padding: 0;
    margin: 0;
    color: #fff;
    font-size: 1rem;
}
.affaire-row-title span {

    font-family: 'Amnesty Trade Gothic Cn';
    color: var(--e-global-color-grey-medium);
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: 600;
}

.affaire-designation:before{
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f007';
    font-weight: 900;
    left:0;
    top:-3px;
}
.affaire-source {
    font-size:0.9rem;
}

.border-lg-right {
    border-right:none;
}
@media(min-width:992px){
    .border-lg-right {
        border-right: 1px solid var(--e-global-color-grey-medium);
    }
}
.marker {
    color:#fff;
    pointer-events: none;
    font-weight:700;
}
.marker span{
    margin-top:-8px;
}
.filters  {
    position: absolute;
    top:0px;
    right:0;
    width: 200px;
    height: 100%;
    text-align: right;
    padding-right:24px;
    padding-top:10px;
    background-color: rgba(255,255,255,0.7);
}
.filters-title {
    text-transform: uppercase;
    color: var(--e-global-color-grey-dark);
    font-family: 'Amnesty Trade Gothic Cn';
    font-size: 0.9rem;
    font-weight: 700;
}
.filters-separator {
    width: 20px;
    height: 1px;
    border-top: 1px solid var(--e-global-color-grey-dark);
    margin:10px 0 10px auto;
}
.filters button {
    display: block;
    border: none;
    background-color: transparent;
    font-family: 'Amnesty Trade Gothic';
    font-size: 0.84rem;
    font-weight: 500;
    color: var(--e-global-color-grey-medium);
    padding:0;
    margin:3px 0 3px auto; 
}
.filters button:hover {
    color: var(--e-global-color-grey-light);
}
.filters button.active {
    color: var(--e-global-color-grey-dark);
}
.fa-empty {
    display: inline-block;
    width: 14px;
}
.map-overlay {
    position:absolute;
    top:0;
    left:0;
    width: 100%;
    height: 100%;
    background-color:rgba(40, 40, 40,0.8);
    pointer-events: none;
    opacity: 0;
    transition: opacity 200ms ease-in;
}
.map-overlay.active {
    opacity: 1;
}
.ag-header-cell-label .ag-header-cell-text {
    font-family: 'Amnesty Trade Gothic Cn';
    text-transform: uppercase;
    font-size: 0.95rem;
    font-weight: 600;
    transition: all 400ms ease-in;
}

.ag-header-cell-label:hover .ag-header-cell-text {
    color: var(--e-global-color-yellow);
}
.ag-root-wrapper {
    border:none;
    padding:0 32px;
}
.customSortDownLabel,
.customSortUpLabel {
    font-size:0.6rem;
    color: var(--e-global-color-grey-medium);
    line-height: 0;
    height:8px;
}
.customSortDownLabel.active,
.customSortUpLabel.active,
.customSortDownLabel:hover,
.customSortUpLabel:hover {
    color: var(--e-global-color-yellow);
}

.input-icons {
    width: 280px;
    position: relative;
    margin: 0 auto  15px 32px;
}
.input-icons input{
    width: 100%;
    padding:0.5rem 2rem 0.5rem 3.5rem;
    border-radius: 4px;
    border:none;
}
.input-icons .icon-before {
    position: absolute;
    z-index: 10;
    top:50%;
    transform: translateY(-50%);
    left:1.2rem;
    color:var(--e-global-color-grey-light);
}
.input-icons .icon-after {
    position: absolute;
    z-index: 10;
    top:50%;
    transform: translateY(-50%);
    right:1.2rem;
    color:var(--e-global-color-grey-light);
}

.input-icons .icon-btn {
    display: inline;
    border:none;
    background-color: transparent;
}
.verroutooltip {
    display: inline-block;
    position:relative;
    height:20px;
    width: 16px;
}
.verroutooltip:before {

    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f023';
    font-weight: 900;
    left:0;
    top:8px;
    height:20px;
    width: 16px;
    font-size:0.8rem;
    line-height: 0.8rem;
    color: #fff;
    
}
.verroutooltip:hover:before {

    color: var(--e-global-color-yellow);
    
}
.verroutooltiptext {
    display: none;
}
.absamntooltiptext .verroutooltiptext {
    display: inline-block;
}

#amn_affaires_form {
    position:relative;
}
 /* Tooltip container */
 .amntooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
  }
  
  /* Tooltip text */
  .absamntooltiptext {

    width: 280px;
    background-color: #fff;
    color: var(--e-global-color-grey-dark);
    text-align: center;
    padding: 18px;
    border-radius: 6px;
  
    position: absolute;
    z-index: 99999;
    transform: translate(-30%,-110%);

  }
  .amntooltip .amntooltiptext {
    visibility: hidden;
    width: 280px;
    background-color: #fff;
    color: var(--e-global-color-grey-dark);
    text-align: center;
    padding: 18px;
    border-radius: 6px;
  
    /* Position the tooltip text */
    position: absolute;
    z-index: 9999;
    bottom: 125%;
    left: 50%;
    margin-left: -60px;
  
    /* Fade in tooltip */
    opacity: 0;
    transition: opacity 0.3s;
  }
  
  /* Tooltip arrow */
  .amntooltip .amntooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 25%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
  }
  .absamntooltiptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 32%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
  }
  .absamntooltiptext {
    font-size: 0.90rem;
    line-height: 1.05rem;
    font-weight: 400;
  }
  .absamntooltiptext,
  .amntooltip:hover .amntooltiptext {
    font-family: 'Amnesty Trade Gothic';
    visibility: visible;
    opacity: 1;
    text-transform: none;
    font-weight: 400;
  } 
  .absamntooltiptext strong,
  .amntooltip:hover .amntooltiptext strong{
    font-family: 'Amnesty Trade Gothic Cn';
    text-transform: uppercase;
    font-weight: 700;
  } 

div.ag-cell[col-id=regime] strong{
    color:var(--e-global-color-yellow);
}


.regimes-legende {
    font-family: 'Amnesty Trade Gothic Cn';
    text-transform: uppercase;
    font-weight: 500;
}
.regime-legende  {
    color: #fff;
    font-size:0.9rem;
    margin:0;
    padding:0;
}
.regime-legende span {
    color:var(--e-global-color-yellow);
    font-family: 'Amnesty Trade Gothic Cn';
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: none!important;
}

.titre-verrou{
    padding-left:20px;
}
.titre-verrou:before{
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content:'\f023';
    font-weight: 900;
    left:0;
    top:0;
    height:20px;
    width: 20px;
    font-size:0.8rem;
    line-height: 0.8rem;
}

.toggleVoletBtn {
    color: var(--e-global-color-grey-dark);
    background-color: var(--e-global-color-yellow);
    border: 1px solid var(--e-global-color-yellow);
    border-radius:20px;
    padding:0.35rem 1.55rem;
    text-transform: uppercase;
    font-size: 0.85rem;
    font-weight: 600;
    transition: all 200ms ease-in;
}

.toggleVoletBtn:hover {
    background-color: var(--e-global-color-grey-dark);
    color: var(--e-global-color-yellow);
    
}
.mapboxgl-ctrl.mapboxgl-ctrl-attrib {
    font-size:0.6rem!important;
}
.liens-homepage a{
    color: #fff;
    text-decoration: underline;
}
.liens-homepage a:hover {
    color: var(--e-global-color-yellow);
    text-decoration: underline;
}
.container.page-content .page-title {
    color:#fff;
    padding-top:40px;
}
.container.page-content .page-post-content {
    color:#fff;
    padding-top:40px;
    font-size: 1rem;
}
.container.page-content .page-post-content a{
    color:#fff;
    text-decoration: underline;
    transition: all 200ms ease-in;
}
.container.page-content .page-post-content a:hover{
    color: var(--e-global-color-yellow);
    text-decoration: underline;
}

.home-volet-btn {
    position: absolute;
    top:0px;
    left:-32px;
    height:130px;
    width: 32px;
    z-index: 1045;
    text-align: center;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transition: all 200ms ease-in;
    background-color: var(--e-global-color-grey-backround);
    padding:8px;
}
.home-volet-btn a{
    color: #fff;
    transition: all 200ms ease-in;
    font-size: 0.7rem;
    text-decoration: none;
    text-transform: uppercase;
}
.home-volet-btn a:hover{
    color: var(--e-global-color-yellow);
}
.home-volet-btn.active {
    left:0;
}
/* Fiche indexable des pages affaire : le volet React reste l'affichage visuel.
   Le contenu HTML est conservé dans le DOM et accessible sans JavaScript. */
body.single-affaire .amn-affaire-seo { position: absolute; width: 1px; height: 1px; padding: 0 !important; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
body.single-affaire .amn-affaire-seo:focus-within { position: static; width: auto; height: auto; margin: 0; overflow: visible; clip-path: none; white-space: normal; }
body.single-affaire .amn-affaire-languages { display: flex; gap: 1rem; }
