h1, h2, h3, h4, h5, h6{
	font-family: 'Moul', 'Open Sans' !important;
	letter-spacing :0 !important;
}

p{color:#000 ;}
.download a:hover{color:#fff !important;}
/* Ensure dropdown menus always open smoothly on hover */
.sf-menu li {
	position: relative !important;
}
.sf-menu .sub-menu {
	display: none;
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	z-index: 99999 !important;
}
.sf-menu li:hover > .sub-menu,
.sf-menu li.sfHover > .sub-menu {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.sf-menu .sub-menu li:hover > .sub-menu,
.sf-menu .sub-menu li.sfHover > .sub-menu {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	left: 100% !important;
	top: 0 !important;
}
table tbody td{
	color:#000;
	padding: 14px 10px !important;
}
.page-numbers:hover{color:#335f80 !important}
li{color:#000;}
.sr-number{margin-bottom:0 !important;}
.pd0{padding:0 !important;}
.mt20{margin-top:20px !important;}
.sitemap a{color:#202a37;}
i:hover,a:hover{color:#fff !important;}
.blg-report-main a:hover,
.breadcrumbs a:hover,
#breadcrumbs a:hover,
.page_item a{color:#335f80  !important;}
.search-block a:hover,
.sitemap ul li a:hover{color:#335f80  !important;}
.content a:hover,.list-report-year a:hover{color:#0046ff  !important;}
/*service page*/
.font-head{font-family: 'Moul', 'Open Sans' !important;}
.p-bg-province{
	padding:10px !important;
	font-family: 'Moul', 'Open Sans' !important;
}
.th-table-province th{
	padding:10px !important;
	border:1px solid #ddd !important;
	font-family: 'Moul', 'Open Sans' !important;
}
.table-service-by-province td{border:1px solid #ddd !important;}
.table-service-by-province td:first-child,
.th-table-province th:first-child{width:25%}
.table-service-by-province td:last-child,
.th-table-province th:last-child{width:40%}

.upw-posts .entry-title a:hover{color:#335f80  !important;}
body{
	font-family: 'Battambang', 'Open Sans' !important;
	font-size: 14px !important;
}

.list-single-year li{
	padding:10px;
	background:#154cc7;
	list-style:none;
	margin:0;
	font-size:17px;
	font-weight:bold;
}
.report-blog {
	width: 32%;
    float: left;
    margin-left: 1%;
    margin-top: 2%;
}
.cel-modern-menu-alt .sf-menu .two-row-menu a{
	padding: 9px 25px !important;
    font-size: 13px;
	line-height: 1.7;
	text-align:center
}
#uniqueId--pager{clear:both;padding-top:30px;}
#uniqueId--pager ul li{
	margin:9px 0 0 2px;
	
}
#uniqueId--pager ul li a{
	padding: 13px 20px;
	font-size:12px;
	color: #909396;
}
.list-page-blog{
	border:1px solid #eee;
}
.list-page-blog p{
	background: #154cc7;
    padding: 10px 10px;
    background-size: 100%;
    color: #fff !important;
text-align:center;
}
.search-block{padding:15px 0 !important;}
.search-block a{color:#0056b3;font-size: 15px;}
.list-program li a{
	text-decoration:underline;
}
.list-program li{
list-style:square;}
.list-program li a{color:#0046ff !important;}
.list-page-blog li{
    padding: 15px 10px 15px 0;
    list-style: square;
    border-bottom: 1px solid #f7f7f7;
    margin: 0 0 0 30px;
}
.blg-annoucement-main p{color:#fff !important;}
.cel-modern-menu-alt .sf-menu li .sub-menu li a{color:#000  !important;background-color: #fff;}
.header-logo img{max-width:600px;}
.search-form input[type="search"]{width:89% !important;}
.header-top-search .search-submit{right:12% !important;}
.cel-ressources-grid .cel-ressources-category a
.cel-underline span, .cel-sitemap-list.cel-sitemap-list-pages li a span,
.cel-post-title a{color:#154cc7 !important;}
.cel-ressources-grid h2,
.cel-post-title-single,
.cel-post-title a{
	font-family: 'Battambang', 'Open Sans' !important;
	font-size:15px !important;
	
}
.cel-ressources-grid .cel-ressources-category a{padding:0 !important}
.cel-post-title-single{font-size: 18px;line-height:2;}
/* Homepage Main Carousel - Uniform Fit Crop Engine */
.carousel-inner {
	height: 390px !important;
	max-height: 390px !important;
	overflow: hidden !important;
	border-radius: 4px;
	background-color: #0b1f4b;
}

.carousel-item {
	height: 390px !important;
	max-height: 390px !important;
	overflow: hidden !important;
	position: relative;
	background-color: #0b1f4b;
}

.carousel-item .row {
	height: 100% !important;
	margin: 0 !important;
}

.slide-img {
	height: 390px !important;
	max-height: 390px !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
	position: relative;
	background-color: #0b1f4b;
}

.slide-img img,
.carousel-crop-img {
	width: 100% !important;
	height: 390px !important;
	max-height: 390px !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block !important;
	transition: transform 0.4s ease;
}

.carousel-item:hover .slide-img img,
.carousel-item:hover .carousel-crop-img {
	transform: scale(1.02);
}

.slide-content {
	position: absolute !important;
	background: linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.85) 100%) !important;
	width: 100% !important;
	max-width: 100% !important;
	border-left: 4px solid #153ab2;
	bottom: 0 !important;
	left: 0 !important;
	padding: 14px 20px 24px 20px !important;
	color: #fff !important;
	font-weight: 500;
	z-index: 10;
	box-sizing: border-box;
}

.slide-content .content a {
	color: #ffffff !important;
	font-size: 15px;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.slide-content .date {
	color: #93c5fd;
	font-size: 12px;
	margin-top: 4px;
}

.carousel-indicators {
	bottom: 4px !important;
	z-index: 15;
	margin-bottom: 0 !important;
}

.carousel-indicators li {
	width: 10px !important;
	height: 10px !important;
	border-radius: 50% !important;
	background-color: rgba(255, 255, 255, 0.45) !important;
	border: 1px solid rgba(0,0,0,0.2) !important;
	margin: 0 4px !important;
	cursor: pointer;
	transition: all 0.3s ease;
}

.carousel-indicators li.active {
	background-color: #1dca8f !important;
	transform: scale(1.3);
}
.container{max-width: 68% !important;}
.header-nav{
	max-width: 1294px;
	width: 68% !important;
    margin: 0 auto;

	float:none !important;
	border-bottom-width: 0 !important;
}
.cel-wrapper.main-menu-wrapper{
	background:#fff;
}
.wrap-shadow{
	padding:10px 0;
	background: url(../images/banner-header.jpg) no-repeat right top!important;
	-webkit-box-shadow: inset 0px -3px 26px -10px rgba(0,0,0,0.13);
-moz-box-shadow: inset 0px -3px 26px -10px rgba(0,0,0,0.13);
box-shadow: inset 0px -3px 26px -10px rgba(0,0,0,0.13);
}
.minimal-sidebar .widget_recent_entries ul{
	margin: 0;
	padding:0;
}
.widget_nav_menu ul li.current_page_item>a, 
.elementor-widget-wp-widget-nav_menu ul li.current_page_item>a,
.cel-ressources-grid .cel-ressources-category a{
	color:#0046ff !important; }
.cel-page-title h1{
	font-family: 'Moul', cursive, 'Open Sans' !important;
	color: #1e293b;
	font-size: 18px;
	padding: 10px 0;
	position: relative;
	border-bottom: 2px solid #2563eb;
	margin-bottom: 12px;
	width: 100% !important;
	background: transparent !important;
	display: flex;
	align-items: center;
	box-sizing: border-box;
}
.cel-page-title h1::before{
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background: url('../images/kbach.png') no-repeat center center;
	background-size: contain;
	margin-right: 10px;
	flex-shrink: 0;
}
.cel-page-title p{font-size:14px;padding:0 20px}
.cel-page-title .page-title-wrapper{padding:0 20px;}
.cel-modern-menu-alt{
	margin-top:0 !important;
}
.news-announcement .cel-post-title-single{
	display: none !important;
}
.news-announcement .blogpost-img{
	text-align: center;
	box-shadow: none !important;
}
.news-announcement .blogpost-img .attachment-post-thumbnail{
	display: inline-block !important;
}
.news-announcement .date{
	color: #74a0ea;
    font-size: 13px;
}
.top-header-area {
    width: 100%;
    background-color: #0046ff;
    position: relative;
    z-index:2;
}
.select2-container{width:100% !important}
.select2-container--default .select2-selection--single{width:200px !important}
.top-header-area .top-header-content {
    width: 100%;
    background-color: #0046ff;
    position: relative;
    z-index: 1;
    height: 30px;
    color: #fff;
}
.justify-content-between {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.align-items-center {
    -ms-flex-align: center!important;
    align-items: center!important;
}
.justify-content-between {
    -ms-flex-pack: justify!important;
    justify-content: space-between!important;
}
.d-flex {
    display: -ms-flexbox!important;
    display: flex!important;
}
.nav-contact li {
    display: inline-block;
	padding-right: 10px;
	font-size:13px;
	color:#fff;
}
.top-header-area .login-search-area .login a {
    display: inline-block;
    color: #fff;
	margin: 0 5px;
	line-height: 1.7;
}

.year-of-tag{
	display: inline-block;
    font-size: 13px;
    margin-left: 10px;
   
}
.year-of-tag a:hover{
	color:#fff !important;
}
.year-of-tag:before{
	content: "|" ;
	color:#fff;
	margin-right: 10px;
}
.social {
    padding: 0 5px;
    margin: 3px 5px;
}
.language a{
	font-size:12px;
	padding-top: 2px !important;
}
.webmail{margin-right:10px;}
.webmail span{
	font-size:12px;
}
.top-header-area .login-search-area .login a {
    display: inline-block;
    color: #fff;
    margin:5px 5px;
}
.social a {
    border: 2px solid #fff;
    border-radius: 50% 50%;
    width: 20px;
    height: 20px;
    text-align: center;
    font-size: 10px;
}

.header-text-presentation-outer{display: none;}
.header-top-search .search-submit:before{
	/* content:'f002'; */
	color:  #154cc7 !important;
}
.sf-menu .sub-menu li a {
	color:#000;
}

.cel-modern-menu-alt .sf-menu li .sub-menu li.current-menu-item a,
.cel-modern-menu-alt .sf-menu>li.current_page_parent>a,
.cel-modern-menu-alt .sf-menu>li.current-menu-parent>a,
.cel-modern-menu-alt .sf-menu>li.current-menu-ancestor a
 {
	background:#0046ff;
	color:#fff !important;
}
.cel-modern-menu-alt .sf-menu>li.current_page_parent:after,
.cel-modern-menu-alt .sf-menu>li.current-menu-parent:after,
.cel-modern-menu-alt .sf-menu>li.current-menu-ancestor:after{
	color:#fff !important;
}
.search-block a.cel-ressource-download:hover{color:#fff !important}
.cel-modern-menu-alt .sf-menu li .sub-menu li a:hover{
	background:#0046ff !important;
	color:#fff !important;
}
.sf-menu .sub-menu li.current-menu-item a > li {
	border:1px solid #000;
}
.cel-modern-menu-alt .sf-menu>li>a{
	color:#000 !important;
	font-size: 14px;
    padding: 18px 25px 16px 25px !important;
}
.menu-item-has-children{
	position: relative;
}
.menu-item-has-children:after{
	content: "›" !important;  /* this is your text. You can also use UTF-8 character codes as I do here */
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	top:0;
	right:5px !important;
	color:#002483 !important;
	background-color: transparent !important;
}
.menu-item-has-children:hover::after,
.current-menu-item:after{
	color:#fff !important;
}
.sub-menu .menu-item-has-children:after{display: none !important;}
.slide-content{
	position: absolute !important;
	background: rgba(0,0,0,0.6);
	width:90%;
	border-left:3px solid #153ab2;
	bottom:20px;
	left:0;
	padding:10px 0;
	color: #fff;
	font-weight: 500;
}
.minimal-sidebar .widget, .minimal-sidebar .sidebar .elementor-widget{
	margin-bottom: 30px !important;
}
/*marquee*/
.header-ticker{
	position: relative;
	height: 3rem;
	overflow: hidden;
}
@-webkit-keyframes ticker {
    0% {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      visibility: visible;
    }
    100% {
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
    }
  }
  @keyframes ticker {
    0% {
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0);
      visibility: visible;
    }
    100% {
      -webkit-transform: translate3d(-100%, 0, 0);
      transform: translate3d(-100%, 0, 0);
    }
  }
  .ticker a{
      color:#fff;
      word-break: normal;
      white-space: nowrap !important;
	  font-size: 14px;
	  text-decoration: none;
	  display: inline-block;
  }
 
  .ticker p{
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 3rem;
    white-space: nowrap !important;
  }
  .ticker br {
    display: none !important;
  }
  .ticker-wrap {
    position: absolute;
    top: 0;
    width: 100%;
	font-size: 14px;
    overflow: hidden;
    height: 3rem;
    background-color: rgba(5, 54, 108, 0.51);
    padding-left: 100%;
    box-sizing: content-box;
    left:0;
  }
  .ticker-wrap .ticker {
    display: inline-flex;
    align-items: center;
    height: 3rem;
    line-height: 3rem;
    white-space: nowrap;
    padding-right: 100%;
    box-sizing: content-box;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-name: ticker;
    animation-name: ticker;
    -webkit-animation-duration: 60s;
    animation-duration: 60s;
  }
  .ticker-wrap .ticker__item {
    display: inline-flex;
    align-items: center;
    height: 3rem;
    padding: 0 2.5rem 0 28px;
    font-size: 14px;
    line-height: 3rem;
    color: white;
    background: url(../images/logo-small.png) no-repeat left center;
    background-size: 20px 20px;
    white-space: nowrap;
    flex-shrink: 0;
  }
.header h3,
.sidebar .widgettitle{
	font-family: 'Moul', 'Open Sans';
	font-size:15px !important;
	color:#fff;
	background: #0046ff;
	text-align: center;
	padding:3px 0;
	margin-bottom: 0 !important;
}
.upw-posts .entry-title a{
	height: 71px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
	overflow: hidden;
	
font-size: 13px !important;
    line-height: 1.9 !important;
}
.blg-annoucement-wrapper{
	background:#154cc7;
	padding:5px 20px;
	height: 390px !important;
	max-height: 390px !important;
	overflow: hidden;
	border-radius: 4px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
}
.tbl-doc {
	width: 100% !important;
	border-collapse: collapse !important;
}
.tbl-doc td a {
	color: #000 !important;
}
.tbl-doc tr th:first-child,
.tbl-doc tr td:first-child {
	width: auto !important;
	text-align: left !important;
}
.tbl-doc tr th:nth-child(2),
.tbl-doc tr td:nth-child(2),
.tbl-doc tr th:last-child,
.tbl-doc tr td:last-child {
	width: 1% !important;
	white-space: nowrap !important;
	text-align: center !important;
	vertical-align: middle !important;
	padding: 8px 12px !important;
}
.tbl-doc tr td {
	padding: 10px 12px;
	border: 1px solid #dae0e7 !important;
}
.tbl-doc tr td span { font-weight: normal; }
.tbl-doc tr th img { width: 25px; }
.tbl-doc tr th {
	background: #f6f7f8;
	color: #000 !important;
	border: 1px solid #dae0e7;
	padding: 12px 14px;
	text-align: center;
}
.blg-annoucement-wrapper .header h3{
	background:url(../images/kbach-ruler.png) no-repeat bottom  center;
	background-size:100px;
}
.blg-annoucement-main ul li a{
	height: 53px;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
line-height:1.6;
}
.cel-section-title:before{
	content: none !important;
}

.blg-annoucement-main ul li{
	list-style: none;
	position: relative;
	margin: 0 0 0 30px;
	padding:10px 0;
	border-bottom: 1px solid #1a67a0;
}
.blg-annoucement-main ul li:nth-last-child(2){
	border-bottom: none;
}
.blg-annoucement-main ul li div.date{
	color:#74a0ea;
	font-size:13px;
}
.blg-annoucement-main ul li:before{
	font-family: 'IcoMoon-Ultimate';
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "\e99b";
    font-size: 15px;
    line-height: 16px;
    position: absolute;
    left: -25px;
	top: 27px;
	color:#1dca8f;
}
.blg-annoucement-main ul li.no-announcement:before{
	display: none !important;
	content: none !important;
}
.blg-annoucement-main ul li.no-announcement{
	margin-left: 0 !important;
	padding-left: 0 !important;
}
.read-more i{
	background:#154cc7;
	color:#fff;
	width:13px;
	height: 13px;
	border-radius: 50%;
	text-align: center;
	line-height: 1.2;
	font-size: 12px;
}
.read-more a{
	/* color:#154cc7; */
	font-style: italic;
	text-align: right;
	padding-right:2px;
}
.main-second{
	background:#faf8f8;
	padding:25px 0;
}
.utube-wrapper{
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 6px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
	padding: 12px 14px 14px;
	margin-top: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}
.utube-wrapper .video-section-header{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 2px solid #f1f5f9;
}
.utube-wrapper .video-header-title{
	font-family: 'Battambang', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #0f172a;
	margin: 0 !important;
	display: flex;
	align-items: center;
}
/* Perfect responsive 16:9 video container without black bars */
.utube-wrapper .video-player-container{
	position: relative !important;
	width: 100% !important;
	padding-top: 56.25% !important; /* Standard 16:9 aspect ratio */
	height: 0 !important;
	overflow: hidden !important;
	border-radius: 4px !important;
	background: #000000 !important;
}
.utube-wrapper .video-player-container p,
.utube-wrapper .video-player-container .fluid-width-video-wrapper,
.utube-wrapper .video-player-container .wp-block-embed,
.utube-wrapper .video-player-container .wp-block-embed__wrapper{
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}
.utube-wrapper .video-player-container iframe{
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	border: 0 !important;
}
.utube-wrapper .fluid-width-video-wrapper{
	padding-top: 56.25% !important;
	margin: 0 !important;
}
.utube-wrapper .utube-title{
	font-family: 'Battambang', sans-serif !important;
	font-size: 13px;
	font-weight: 600;
	color: #1e293b;
	padding: 0; 
	margin: 8px 0 12px 0;
	height: auto;
	max-height: 42px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	line-height: 1.5;
}

/* Header Search & Smart Language Flag Container */
.header-search-lang-container {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	width: 100%;
}
.header-search-lang-container .header-top-search {
	flex: 1;
	max-width: 320px;
	margin: 0 !important;
}
.header-search-lang-container .search-form input[type="search"] {
	width: 100% !important;
	height: 42px !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 4px !important;
	padding: 8px 42px 8px 14px !important;
	font-size: 14px !important;
	background: #ffffff !important;
	box-shadow: inset 0 1px 2px rgba(0,0,0,0.05);
}
.header-search-lang-container .search-form input[type="search"]:focus {
	border-color: #0046ff !important;
	outline: none !important;
}
.header-search-lang-container .header-top-search .search-submit {
	right: 4px !important;
	top: 1px !important;
	height: 40px !important;
	min-height: 40px !important;
	background: transparent !important;
}

/* Dual Layer Card Stack Language Switcher */
.lang-deck-switcher {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	position: relative;
	padding: 6px 8px;
	perspective: 600px;
}

.lang-deck-link {
	position: relative;
	display: block;
	width: 68px;
	height: 44px;
	text-decoration: none !important;
	outline: none;
	cursor: pointer;
}

/* Individual Flag Card (Clean rounded corners, white border, soft shadow) */
.lang-deck-card {
	position: absolute;
	width: 44px;
	height: 29px;
	border-radius: 6px;
	background: #ffffff;
	border: 2px solid #ffffff;
	box-shadow: 0 3px 8px rgba(15, 23, 42, 0.16);
	overflow: hidden;
	box-sizing: border-box;
	transform-origin: bottom left !important;
	transition: transform 0.45s cubic-bezier(0.34, 1.56, 0.64, 1),
	            box-shadow 0.45s ease,
	            filter 0.45s ease,
	            z-index 0.45s step-end;
	will-change: transform, z-index;
}

.lang-flag-svg {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	pointer-events: none;
}

/* Back Card: anchored at bottom-left, rotates counter-clockwise (-15deg) so the top-right corner rises UP */
.lang-card-back {
	top: 7px;
	left: 10px;
	z-index: 1;
	transform-origin: bottom left !important;
	transform: rotate(-15deg);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.lang-card-dimmer {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(15, 23, 42, 0.35);
	pointer-events: none;
	transition: opacity 0.4s ease;
}

/* Front Card: foreground, upright at 0deg */
.lang-card-front {
	top: 7px;
	left: 10px;
	z-index: 2;
	transform-origin: bottom left !important;
	transform: rotate(0deg);
	box-shadow: 0 5px 12px rgba(0, 0, 0, 0.24);
}

/* Hover effect on desktop */
.lang-deck-link:hover .lang-card-back {
	transform: rotate(-18deg) scale(1.03);
}
.lang-deck-link:hover .lang-card-front {
	transform: scale(1.02);
}

/* Swapping Animation when clicked (Back card swoops out & comes to front; Front card rotates -15deg & goes behind) */
.lang-deck-switcher.is-swapping .lang-card-back {
	z-index: 3 !important;
	animation: nchadsSwapToFront 0.5s cubic-bezier(0.34, 1.45, 0.64, 1) forwards !important;
}

.lang-deck-switcher.is-swapping .lang-card-front {
	z-index: 1 !important;
	animation: nchadsSwapToBack 0.5s cubic-bezier(0.34, 1.45, 0.64, 1) forwards !important;
}

.lang-deck-switcher.is-swapping .lang-card-dimmer {
	opacity: 0 !important;
}

@keyframes nchadsSwapToFront {
	0% {
		top: 7px;
		left: 10px;
		transform-origin: bottom left;
		transform: rotate(-15deg) scale(1);
		z-index: 1;
	}
	45% {
		top: -4px;
		left: 16px;
		transform-origin: bottom left;
		transform: rotate(-22deg) scale(1.08);
		z-index: 3;
	}
	100% {
		top: 7px;
		left: 10px;
		transform-origin: bottom left;
		transform: rotate(0deg) scale(1);
		box-shadow: 0 5px 12px rgba(0, 0, 0, 0.24);
		z-index: 3;
	}
}

@keyframes nchadsSwapToBack {
	0% {
		top: 7px;
		left: 10px;
		transform-origin: bottom left;
		transform: rotate(0deg) scale(1);
		z-index: 2;
	}
	45% {
		top: 11px;
		left: 2px;
		transform-origin: bottom left;
		transform: rotate(6deg) scale(0.96);
		z-index: 1;
	}
	100% {
		top: 7px;
		left: 10px;
		transform-origin: bottom left;
		transform: rotate(-15deg) scale(1);
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
		z-index: 1;
	}
}

/* Curved Solid Switching Arrows */
.lang-deck-arrow {
	position: absolute;
	z-index: 4;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	transition: transform 0.3s ease;
}

.lang-deck-arrow svg {
	display: block;
}

/* Top-Right Arrow: tucked neatly close against the top-right corner of the flag */
.lang-arrow-tr {
	top: 0px;
	right: 7px;
}

/* Bottom-Left Arrow: tucked neatly close against the bottom-left corner of the flag */
.lang-arrow-bl {
	bottom: 1px;
	left: 5px;
}

.lang-deck-link:hover .lang-arrow-tr {
	transform: translate(1px, -1px) rotate(6deg);
}
.lang-deck-link:hover .lang-arrow-bl {
	transform: translate(-1px, 1px) rotate(6deg);
}

.lang-deck-switcher.is-swapping .lang-deck-arrow {
	opacity: 0.3;
	transform: scale(0.85);
}

/* Legacy single-flag class backwards compatibility */
.smart-flag-switcher {
	display: none;
}

/* Facebook Reliable Page Card */
.home-facebook-page-card.fb-reliable-card {
	background: #ffffff;
	border: 1px solid #c4cde0;
	border-radius: 4px;
	padding: 0;
	margin-top: 15px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
	overflow: hidden;
}

.fb-reliable-cover {
	position: relative;
	width: 100%;
	min-height: 140px;
	background-size: cover;
	background-position: center center;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 12px;
	box-sizing: border-box;
}

.fb-reliable-cover-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.3) 50%, rgba(0,0,0,0.75) 100%);
	z-index: 1;
}

.fb-reliable-brand {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.fb-reliable-avatar-box {
	display: block;
	width: 48px;
	height: 48px;
	background: #ffffff;
	border: 2px solid #ffffff;
	box-shadow: 0 1px 4px rgba(0,0,0,0.4);
	flex-shrink: 0;
	border-radius: 3px;
	overflow: hidden;
}

.fb-reliable-avatar {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fb-reliable-title-group {
	display: flex;
	flex-direction: column;
	text-shadow: 0 1px 2px rgba(0,0,0,0.85);
}

.fb-reliable-name {
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.35;
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	flex-wrap: wrap;
}

.fb-reliable-badge {
	color: #1877f2;
	background: #ffffff;
	border-radius: 50%;
	font-size: 13px;
}

.fb-reliable-sub {
	color: #f1f5f9;
	font-size: 11.5px;
	margin-top: 3px;
	font-weight: 500;
}

.fb-reliable-actions {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 14px;
	gap: 8px;
}

.fb-reliable-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #f0f2f5;
	color: #1c1e21 !important;
	border: 1px solid #ced0d4;
	border-radius: 3px;
	padding: 4px 12px;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.15);
	transition: background 0.15s ease, border-color 0.15s ease;
}

.fb-reliable-btn:hover {
	background: #e4e6eb;
	color: #050505 !important;
	border-color: #bec3c9;
}

.fb-reliable-btn i {
	font-size: 12px;
}

.fb-btn-follow i {
	color: #1877f2;
	font-size: 13px;
}

.fb-btn-share i {
	color: #4b4f56;
}

.home-facebook-page-card.fb-classic-banner-card {
	background: #ffffff;
	border: 1px solid #c4cde0;
	border-radius: 4px;
	padding: 0;
	margin-top: 15px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
	overflow: hidden;
}

.fb-classic-cover {
	position: relative;
	width: 100%;
	height: 130px;
	background-size: cover;
	background-position: center center;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 10px 12px;
	box-sizing: border-box;
}

.fb-classic-cover-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.2) 50%, rgba(0,0,0,0.65) 100%);
	z-index: 1;
}

.fb-classic-brand-header {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.fb-classic-avatar-box {
	display: block;
	width: 48px;
	height: 48px;
	background: #ffffff;
	border: 2px solid #ffffff;
	box-shadow: 0 1px 4px rgba(0,0,0,0.4);
	flex-shrink: 0;
	border-radius: 2px;
	overflow: hidden;
}

.fb-classic-avatar {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fb-classic-title-group {
	display: flex;
	flex-direction: column;
	text-shadow: 0 1px 2px rgba(0,0,0,0.8);
}

.fb-classic-name {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #ffffff !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 16px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	line-height: 1.2;
}

.fb-classic-name:hover {
	text-decoration: underline !important;
}

.fb-verified-badge {
	color: #3897f0;
	font-size: 14px;
	background: #ffffff;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.fb-classic-likes-count {
	color: #f1f5f9;
	font-size: 11.5px;
	margin-top: 2px;
	font-weight: 500;
}

/* Cover Buttons */
.fb-classic-cover-actions {
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: auto;
}

.fb-classic-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f0f2f5;
	color: #1c1e21 !important;
	border: 1px solid #ced0d4;
	border-radius: 3px;
	padding: 3px 10px;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.15);
	transition: background 0.2s ease, border-color 0.2s ease;
}

.fb-classic-btn:hover {
	background: #e4e6eb;
	color: #050505 !important;
	border-color: #bec3c9;
}

.fb-classic-btn i {
	font-size: 12px;
	color: #4b4f56;
}

.fb-btn-like i {
	color: #1877f2;
	font-size: 13px;
}

/* Bottom Friends Like & Facepile Strip */
.fb-classic-facepile-strip {
	background: #f6f7f9;
	border-top: 1px solid #e5e6e9;
	padding: 8px 12px 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.fb-facepile-label {
	font-size: 11px;
	color: #606770;
	font-weight: 500;
}

.fb-facepile-avatars {
	display: flex;
	align-items: center;
	gap: 6px;
	overflow: hidden;
	flex-wrap: nowrap;
}

.fb-user-thumb-link {
	display: inline-block;
	text-decoration: none;
	line-height: 0;
	transition: transform 0.15s ease;
}

.fb-user-thumb-link:hover {
	transform: scale(1.18);
	z-index: 2;
}

.fb-user-avatar-img {
	width: 32px;
	height: 32px;
	border-radius: 2px;
	object-fit: cover;
	border: 1px solid #c4cde0;
	box-shadow: 0 1px 2px rgba(0,0,0,0.12);
	display: block;
	background: #e2e8f0;
}
.blg-report-wrapper {
	background:#fff;
	padding:10px 10px;
	margin-top:42px;
}
.blg-report-main ul li {
	list-style-type: none;
	position: relative;
	margin-left:10px;
}
.blg-report-main ul li i{
	color: #1dca8f;
    margin-right: 10px;
    font-size: 12px;
}
.blg-report-main ul li a{
	color:#202a37;
	padding:5px 0 15px;
	border-bottom: 1px solid #e4e8eb;
	display: block;
}
.cel-ressources-ul li:last-child{
	border-bottom: none;
}
.blg-report-main ul{margin:0}
.blg-report-main ul li:last-child a{
	border-bottom: none;
	padding-bottom:0;
}
.cel-ressources-grid{margin: 4px 0 !important;}
.news-events-list > li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: none !important;
}
.cel-ressources-ul li{
	border-bottom: 1px solid #e3e3e8;
}
.cel-ressources-title a:hover{color:#0046ff !important;}
.page-numbers li .current{
	color:#0046ff !important;
}
.cel-ressources-meta,
.post-misc-comments{
	display: none !important;
}
.news-events-list .cel-ressources-meta{
	display: block !important;
	padding-bottom:10px;
}
.doc-wrapper .sub-doc .inner-sub-doc{
	overflow: hidden;
	background:#fff;
	border: 1px solid #e9ecef;
	border-radius: 4px;
	box-shadow: none !important;
	transform: none !important;
}
.doc-wrapper .sub-doc .inner-sub-doc:hover{
	box-shadow: none !important;
	transform: none !important;
}
.doc-wrapper .sub-doc{
	margin-bottom: 22px;
}
.doc-wrapper .sub-doc .sub-doc-img{
	width: 130px;
    height: 183px;
	overflow: hidden;
	float: left;
	background: #f8fafc;
	display: flex;
	align-items: center;
	justify-content: center;
}
.doc-wrapper .sub-doc .sub-doc-img img{
	width:100%;
	border:1px solid #e2e8f0;
	height:100%;
	object-fit: cover;
	object-position: top center;
}
.doc-wrapper .sub-doc .sub-doc-img img.doc-fallback-thumb{
	object-fit: contain;
	padding: 8px;
	background: #f1f5f9;
}
.doc-wrapper .sub-doc .sub-doc-content{
	float:left;
	width:55%;
	margin-left: 15px;
	padding-top:15px;
}
.sub-doc-content .download{
	background:#154cc7;
	font-size:13px;
    display: inline-block;
        padding: 2px 10px;
	margin-top:10px;
	
}
.sub-doc-content .download i{
	padding:0 10px 0 0;
	line-height:1;
	
}
.doc-wrapper .sub-doc .sub-doc-content p{
	padding:0;
    height: 90px;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.6;
}
.doc-wrapper .sub-doc .sub-doc-content .cate{
	color:#74a0ea;
	padding:5px 0 10px;
	font-size:12px;
}
.download i{
	background: #0046ff;
    display: inline-block;
    padding: 10px 11px 10px;
    margin-bottom: 10px;
    margin-top: 10px;
    border-radius: 50%;
    line-height: 1.2;
}
.breadcrumbs .current-item{
	overflow: hidden;
	width: 250px;
    height: 24px;
	text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    vertical-align: top;

}
.download i{
	color:#fff;
	font-size: 10px;
}
.pagination-blog > .page-numbers{
    padding: 13px 20px;
    width: 50px;
    text-align: center;
	color: #909396;
	font-size:12px;
	border:1px solid #dae0e7;
}
.pagination-blog > .current{
	color:#0046ff ;
}
.blogpost-img{margin:0 !important;}
/*quarter*/
.cel-post-title,
.default-post-block{margin-bottom: 0 !important;}
.quarterlist li{
	list-style-type: none;
	border-bottom: none;
}
.quarterlist li a{
	font-weight: normal;
	position: relative;
}
.quarterlist li a:before {
    font-family: 'IcoMoon-Ultimate';
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    content: "\e99b";
    font-size: 12px;
    line-height: 16px;
    position: absolute;
    left: -25px;
    top: 3px;
    color: #1dca8f;
}
/*main three*/
.main-third{
	padding:25px 0;
}
.title{
	font-family: 'Moul', 'Open Sans';
    color: #262930;
    font-size: 18px;
    margin-bottom: 5px;
}
.autoplay .items{
	text-align: center;
	margin-top:30px;
}
.autoplay .items .post-meta{
	margin-bottom: 20px;
	font-size:14px;
	
}
.autoplay .items .post-meta p{
	line-height:1.4;
	color:#000 !important;
}
.slick-slide img{
	margin:0 auto;
	width: 60px;
}
.slick-dots{
	bottom:0 !important;
	background:#fff;
}
.autoplay{    padding-bottom: 20px;}
.blg-support-main ul.support-wrapper{
	background:url(../images/bg-help.jpg) no-repeat right top, #fbfafa;
	padding-bottom:20px;
}
.blg-support-main ul.support-wrapper li.each-title{
	height: 70px !important;
	overflow: hidden;
	font-size: 12px;
	line-height: 1.7;
	padding:0;
}
.blg-support-main ul.support-wrapper li span:last-child{
	float:left;
	width:70%;
}
.blg-support-main ul li span:first-child{
	float:left;
	font-weight: bold;
	width:30%;
}
.blg-support-main .slick-dots li button{
	background: none !important;
	border:none;
}
.slick-dots li{height: auto !important;}
.slick-dots li button{border-color: none !important;}
.footer-sidebars-wrapper{
	background:url(../images/footer-bg.jpg) no-repeat right bottom;
	border-top: 2px solid #b4bedb;
	background-size: cover;
}
.footer-area .footer-widget-area .list {
    position: relative;
	z-index: 1;
	list-style-type: none !important;
}
.footer-area .footer-widget-area .list li {
    display: block;
	margin: 10px 0;
}
.footer-sidebars-wrapper .widget ul li{
	list-style-type: none;
	padding:2px 0;
	color:#fff;
}
.footer-area .footer-widget-area .list li a {
    display: block;
    padding: 5px 0;
    color: #fff;
}
.footer-area .footer-widget-area .list li img {
    margin-right: 5px;
}
.footer-sidebars-wrapper .widget h3.widgettitle{
	font-family: 'Battambang', 'Open Sans';
	font-size: 16px;
	color:#fff !important;
}
.main-footer{
	margin-bottom:  0 !important;
}
.footer-sidebars-wrapper .widget{margin-bottom: 10px !important;}
.footer-sidebars-wrapper .widget a{color:#fff !important;}
.footer-sidebars-wrapper .widget a i{
	color:#1dca8f !important;
	margin-right:8px;
}

/* NCHADS Footer Contact Columns (Icon column separate from Text column) */
.footer-sidebars-wrapper .widget_text ul.list,
.footer-widget-area .widget_text ul.list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item,
.footer-widget-area .widget_text ul.list li.nchads-contact-item {
    list-style: none !important;
    margin: 8px 0 !important;
    padding: 0 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-link,
.footer-widget-area .widget_text ul.list li.nchads-contact-item .nchads-contact-link {
    display: flex !important;
    align-items: flex-start !important;
    text-decoration: none !important;
    color: #ffffff !important;
    line-height: 1.6 !important;
    padding: 2px 0 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-icon,
.footer-widget-area .widget_text ul.list li.nchads-contact-item .nchads-contact-icon {
    flex: 0 0 24px !important;
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    margin-right: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin-top: 3px !important;
    line-height: 1 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-icon i,
.footer-widget-area .widget_text ul.list li.nchads-contact-item .nchads-contact-icon i {
    color: #1dca8f !important;
    font-size: 15px !important;
    line-height: 1 !important;
    display: inline-block !important;
    text-align: center !important;
    width: 16px !important;
    margin-right: 0 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-icon i.fas,
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-icon i.fa {
    font-family: 'Font Awesome 5 Free' !important;
    font-weight: 900 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-icon i.fab {
    font-family: 'Font Awesome 5 Brands' !important;
    font-weight: 400 !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item .nchads-contact-text,
.footer-widget-area .widget_text ul.list li.nchads-contact-item .nchads-contact-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
    color: #ffffff !important;
    font-size: 14px !important;
}
.footer-sidebars-wrapper .widget_text ul.list li.nchads-contact-item a.nchads-contact-link:hover .nchads-contact-text {
    color: #1dca8f !important;
}
.footer-bottom-wrapper{
	text-align: center !important;
	padding: 5px 0;
	background-color: #002483;
}
.cel-ressources-grid .ressource-date i, .cel-ressources-grid .ressource-format i, .cel-ressources-grid .ressource-share i{
	margin-right:0 !important;
}
.quarterly-list a{color:#002483}
.breadcrumbs a,
#breadcrumbs a{color:#002483}
#breadcrumbs{padding: 0 0 15px 0;}
.list-report-year a{color:#335f80 !important;font-weight:normal;}
.cel-ressources-title a{color:#000 !important;}
.list-single-year li a{color:#fff !important;font-weight:normal;}
.sitemap-grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 20px;
	grid-row-gap: 10px;
}
.sitemap ul li{
	list-style-type:none;
}
.sitemap ul li a{
	color:#007cba;
}
.sitemap .main{margin-bottom:20px;}
.sitemap .main .main-ttl a{
	color:#000;
}
.wrapp-grid-list-3{
    display: grid;
	grid-template-columns: auto auto auto;
	grid-column-gap: 20px;
	grid-row-gap: 10px;
}
.grid-doc{grid-template-columns:5% 95% !important;}
.cel-ressources-file{width:40px;padding-top:10px}
.cel-ressources-file img{    
padding: 10px 10px;
    background: #efefef;
}
.breadcrumbs {
	max-width: 68%;
	margin: 0 auto;
}
.breadcrumbs .filters-page-title-wrapper {
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	font-size: 11px;
	line-height: 1;
}
.breadcrumbs a,
.breadcrumbs .current-item {
	display: inline-flex !important;
	align-items: center !important;
	background: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 4px !important;
	padding: 4px 11px !important;
	font-size: 14px !important;
	line-height: 1.35 !important;
	color: #64748b !important;
	text-decoration: none !important;
	height: auto !important;
	width: auto !important;
	vertical-align: middle !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.02) !important;
	transition: all 0.2s ease !important;
}
.breadcrumbs a:hover {
	background: #ffffff !important;
	border-color: #cbd5e1 !important;
	color: #2563eb !important;
}
.breadcrumbs .current-item {
	color: #475569 !important;
	font-weight: 600 !important;
	background: #f1f5f9 !important;
}

/* On single post/document/page views: hide current-item breadcrumb pill and its trailing separator */
.single .breadcrumbs .current-item,
.single .breadcrumbs span[property="itemListElement"]:last-child,
.single .breadcrumbs span.current-item {
	display: none !important;
}
.breadcrumbs a span {
	padding: 0 !important;
}
.breadcrumbs span[property="itemListElement"] {
	display: inline-flex;
	align-items: center;
}
.cel-underline span{color:#154cc7 }
.searchandfilter ul{width:100% !important;}
.searchandfilter ul li{margin-left:0 !important;width:40%;}
.searchandfilter ul li:last-child{width:20% !important;}
.select2-container .select2-selection--single{width:100% !important;}
.searchandfilter ul li input[type="text"]{width:100% !important;font-size:14px;}
.wpcf7-submit, .searchandfilter input[type="submit"]{background:#154cc7 !important;}
 .cel-ressources-grid .cel-ressource-download,
.cel-ressource-download{
background:#154cc7;
color:#fff !important;
}
.small-secondary{font-size:13px !important;}
.kh-only{
	color: #c71515;
	font-style:italic;
	font-size:12px;
    position: absolute;
    left: 0;
    bottom: -8px;
}
.wrap-khmer-only{
	display:inline-block;
	position:relative;
	height:60px;
}
.wrap-khmer-only .celestial-button{font-size:13px;}
.cel-ressource-download span{font-size:11px;}
.cel-ressources-grid .cel-ressource-download:hover{
	color:#fff !important;
}
.searchandfilter input[type="date"]{
	width: 100% !important;
}
.cel-ressources-img .res-image{
	border: 1px solid #d5e2ff;
	overflow: hidden;
	height:auto !important;
}
#scrollUp{background-color: #1dca8f !important;}
#comments{display: none;}
.footer-bottom-grid.fb-grid-reverse .fbottom-right .impressum{
	text-align: center !important;
}
.footer-bottom-wrapper p{
	padding:0;
	color:#b2c4f4 !important;
	font-weight: normal;
}
.footer-widget-1 ul li{ overflow: hidden;}
.footer-widget-1 ul li a{
	color: #202a37;
    padding: 15px 0 !important;
	display: block;
	margin-left:30px;
	border-bottom: 1px solid #2249ae !important;
}
.footer-widget-1 ul li:last-child a{
    border-bottom: none !important;
}
.footer-widget-1 ul li a:before{
	color:#384f81;
	content: "";
    font-size:11px;
    margin-right: 30px;
    position: absolute;
	left:0;
	top:25px;
	background: url(../images/arrow-right.png) no-repeat right center;
    width: 8px;
    height: 8px;
    background-size: contain;
}
.page-content {
	width:100% !important;
	margin: 0 auto;
}
.page-content li{
	list-style-type: square;
	color:#000;
}
.main-menu-control {padding-top:10px;}
.page-content a{color:#202a37;}
.page-content a:hover{color:#0046ff !important;}
.sf-menu .sub-menu li a:hover{color:#0046ff !important;}
.entry-title a{
	font-size:14px;
	color:#202a37;
	font-family: 'Battambang' , 'Open sans';
}
.entry-title{
	line-height: 1.2;
	margin:0 0 0 100px;
}
/*category taxonomy*/
.cel-ressources-category a:first-child{
	display:none !important;
}
.cel-ressources-category a:nth-child(2){
	display:none !important;
}
/*side bar*/
.upw-posts .news_and_announcement_tax-announcement,
.upw-posts .news_and_announcement_tax-job-annoucement{display:none;}
.upw-posts .news_announcement{
	position: relative;
	padding-top: 1em !important;
	padding-bottom: 0 !important;
	border-bottom:none !important;
	border-top:1px solid #ddd !important
}
.upw-posts article:first-child{border-top:none !important;}
.hfeed{padding-top: 1em !important;}
.upw-posts .entry-image{
	width:80px;
	height: 80px;
    position: absolute;
    top: auto;
    left: 0;
}
.wp-block-gallery:not(.alignfull){
	margin-left:auto !important;
}
.upw-posts .entry-image img{width:100%}
/*dropdown*/
.select2-results__option{color:#65696e !important;}
.footer-grid-3{
	grid-template-columns: 1fr 2fr 1fr !important;
}
@media only screen and (min-width: 1441px){
	.page-content-fullwidth, .cel-wrapper {
		width: 100% !important;
	}
	.celestial-main {
		margin: 20px 0 !important;
	}
}
@media only screen and (min-width: 1249px){
.header-inner-grid {
    grid-gap: 4%;
    grid-template-columns: 100% !important;
}
.header-top-search{margin: 0 !important;}
}
@media only screen and (max-width:1024px){
	.page-content-fullwidth, .cel-wrapper{width:100% !important;}
}
@media only screen and (max-width:960px){
	.title,.header h3, .sidebar h3.widgettitle,
	h1, h2, h3, h4, h5, h6{
		font-family: 'Battambang', 'Open Sans' !important;
		font-weight: bold;
	}
	.main-menu-control {padding-top:10px;}
	.nav-contact{display:none;}
	.page-content-fullwidth, .cel-wrapper{width:100%}
}
@media screen and (max-width:991px){
	.breadcrumbs{max-width:85%;}
	.blg-annoucement-wrapper,.sub-doc{margin-top:20px;}
	.header-logo img{max-width:100%;}
	.header-logo{margin:22px 0 !important;}
	.menu-item-has-children:after{display: none !important;}
	.header-menu-type-wrapper{
		max-width: 70%;
		margin: 0 auto;
	}
	.utube-wrapper{
		padding-bottom:10px;
	}
	.utube-wrapper .utube-title{
		padding:10px 0;
		height: auto;
		display: block;
	}
	.report-blog{
		width:48%;
	}
}
@media only screen and (max-width:767px){
	.webmail span{display: none;}
	.sitemap-grid{grid-template-columns: 1fr;}
	.footer-bottom-wrapper p{font-size:11px;}
	.searchandfilter ul li{width:100%;}
	.page-content-fullwidth{width:100% !important;}
	.cel-ressources-file img{padding:0;}
	.cel-ressources-file{width:20px;}
	.kh-only{position:relative;}
	.main-menu-control {padding-top:10px;}
	.cel-ressources-info{
		padding-left:10px !important;
	}
	.cel-ressources-img{
		width:100% !important;
		height:auto !important;
	}
	.cel-ressources-img .res-image{
		width:100%;
		position:relative !important;
	}
	.title{font-size:16px}
	.doc-wrapper .sub-doc .sub-doc-content{
		width:55%;
	}
	.carousel-item{max-height:none !important;}
	.blg-annoucement-wrapper{margin-top:20px;}
	.slide-content{
		position:relative !important;
		bottom:0;
	}
	.carousel-item a{font-size:12px;}
	.cel-ressources-info{
		padding-left:40px;
	}
	.page-title-wrapper{
		padding:0 !important;
	}
	.page-content-fullwidth{
		width:100% !important;
	}
	.nav-contact{
		display:none;
	}
	.wrapp-grid-list-3{
		grid-template-columns: auto auto;
	}
	.footer-grid-3{
		grid-template-columns:auto!important;
		grid-gap:30px !important;
	}
	.sub-doc{
		margin-bottom:30px;
	}
	.header-menu-type-wrapper{
		max-width:80% !important;
	}
	.report-blog{
		width:100%;
	}

}
@media only screen and (min-width: 1441px){
	.breadcrumbs {
		max-width: 68% !important;
		margin: 0 auto;
	}
}
@media only screen and (min-width: 991px){
	.breadcrumbs {
		max-width: 86% ;
		margin: 0 auto;
	}
.header-grid {
	grid-gap: 4% !important;
    grid-template-columns: 70% 30% !important;
}
.header-logo,
.topright-section-search-wrapper{
	margin-top:  0 !important;
}
.header-topright-area{
	padding-top: 22px;
}
}
.country-selector  {
    /* position: absolute !important; */
    
    right: 0 !important;
    z-index: 999 !important;
    background: none !important;
    border: none !important;
    box-shadow: none;
	color: #ffff !important;
	bottom: auto !important;
}
.country-selector.weglot-dropdown .wgcurrent{
	border: none !important;
}
.country-selector.weglot-dropdown .wgcurrent:after{
	color:#fff !important;
	background: url(../images/arrow.png) no-repeat right center !important;
	background-size:9px !important;
}
.country-selector.weglot-dropdown .wgcurrent span{padding-right:30px !important;}
.country-selector.weglot-dropdown a{
	color:#202a37 !important;
	line-height: 36px !important;
}
.filter-post-title h1{font-size: 22px;}
.filters-page-title-wrapper .filter-post-form{margin:0 0 !important;}
.filters-page-title-wrapper .filter-post-title{margin-top:0 !important}
.celestial-button-fill.celestial-button-skin{
	background:#154cc7 !important;
}
#select2-ressources_category-results{
	/* height: 200px !important; */
	/* overflow: hidden !important; */
}
.lang-item {
	display: inline;
	font-size: 13px;
  }
.page-title-wrapper{
	margin-bottom: 30px !important;
	padding: 20px 40px;
}
.cel-ressources-title{
	position: relative;
}
.current_page_item > a{
	color:#0046ff !important;
	
}
.cel-ressources-title .download-icon{
	position: absolute;
	right: 0;
	padding: 3px 13px 5px !important;
	top: 10%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
    margin-top: 0;
}
.cel-ressources-title .download-icon i{
	margin-left:0 !important;
}
.widget_ultimate_posts{
border: 1px solid #efefef !important;
    padding: 15px 15px !important;
}
.portfolio-filter-wrapper,
.cel-page-title,
.portfolio-wrapper{
	width: 68% !important;
	margin: 0 auto;
}
.content-left-grid .cel-page-title{
	width:100% !important;
	margin-bottom: 20px;
}
.cel-page-title{background: transparent !important;}
.cel-modern-menu-alt .sf-menu>li:after{
	/* content: "" !important;
    display: inline-block;
    width: 1px;
    height: 22px;
    position: absolute;
    top: 20px;
	right: 0px; */
	/*background-color:#dce2f4 !important;*/
}
.sf-menu .sub-menu .sub-menu{
	left:258px !important;
	transition: none !important;
	top:0 !important;
}
.cel-post-navigation-grid.cel-post-navigation-margins{margin-top:150px !important;}
.tax-title{color:#154cc7;}
.tb-list-unit{
	padding-left:10px;
}
.tb-list-unit tr td{
	padding:0 0 0 10px;
	font-size: 14px;
}
.unit-doc{
font-size: 17px;
    color: #154cc7;
    background: #f7f7f7;
    padding: 10px;
}
.artist-grid-item{
	margin-top:20px;
}
.tbl-file td {
	padding: 5px;
}

.carousel-item{
	height:390px !important;
	max-height:390px !important;
}
.carousel-item a{width:100%;color:rgb(231, 231, 231);font-weight: normal;}
#text-4,#text-6{margin-bottom:0 !important;}
.cel-ressources-grid .ressource-format i{margin-left:0;}

/* Tablet & Mobile responsive overrides */
@media screen and (max-width: 991px) and (min-width: 768px) {
	.carousel-inner,
	.carousel-item,
	.slide-img,
	.slide-img img,
	.carousel-crop-img {
		height: 320px !important;
		max-height: 320px !important;
	}
	.blg-annoucement-wrapper {
		height: auto !important;
		max-height: none !important;
		min-height: 280px !important;
		margin-top: 20px;
	}
}

@media screen and (max-width: 767px) {
	.carousel-inner,
	.carousel-item,
	.slide-img,
	.slide-img img,
	.carousel-crop-img {
		height: 240px !important;
		max-height: 240px !important;
	}
	.slide-content {
		padding: 8px 12px 18px 12px !important;
	}
	.slide-content .content a {
		font-size: 13px !important;
		line-height: 1.4 !important;
	}
	.blg-annoucement-wrapper {
		height: auto !important;
		max-height: none !important;
		margin-top: 15px;
	}
}
	
@media screen and (max-width: 1190px) and (min-width: 991px){
	.cel-modern-menu-alt .sf-menu>li>a{padding:18px 15px !important;}
	.doc-wrapper .sub-doc .sub-doc-content{width:55%;}
	.doc-wrapper .sub-doc .sub-doc-img{width:100px;}
	.breadcrumbs {
		max-width: 80%;
		margin: 0 auto;
	}
	.celestial-main {
		margin: 20px 0 !important;
	}
}
@media screen and (max-width: 991px) and (min-width: 600px){
	.header-logo img{max-width:70% !important}
	.header-logo{margin:22px 0 !important;}
}
@media screen and (max-width: 1448px) and (min-width: 991px){
.header-nav{width:100% !important;}
}
@media screen and (max-width:400px){
	.top-header-area .login-search-area .login a span{
		display:none;
	}

}
.cel-modern-menu-alt .sf-menu>li>a:hover,
.cel-modern-menu-alt .sf-menu>.current-menu-item a{background:#0046ff;color:#fff  !important;}
/* .cel-modern-menu-alt .sf-menu>.current-menu-item ul li a{background:#fff} */
/*.cel-modern-menu-alt .sf-menu>li.current-menu-item>a{background:#f2f2f2  !important;}*/
.select2-results__option,
.select2-container {font-size:13px !important;}
.select2-selection--single .select2-selection__rendered{font-size: 14px !important;}

/* ==========================================================================
   WYSIWYG Pixel-Exact Website Print Engine (Print Exactly What You See)
   ========================================================================== */
@media print {
	/* 1. Page settings & Full Color Fidelity */
	@page {
		size: auto;
		margin: 8mm 10mm;
	}

	*,
	*::before,
	*::after {
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
		color-adjust: exact !important;
		text-shadow: none !important;
		box-sizing: border-box !important;
	}

	html, body {
		width: 100% !important;
		min-width: 1100px !important;
		background: #ffffff !important;
		color: #1e293b !important;
		font-size: 13.5px !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	/* Suppress raw URLs or bracketed links output by Bootstrap print styles */
	a[href]::after,
	abbr[title]::after {
		content: "" !important;
	}
	a {
		text-decoration: none !important;
	}

	/* 2. Hide interactive & floating UI controls */
	#wpadminbar,
	.main-menu-control,
	.mobile-logo-wrapper,
	.search-and-filter-box,
	.search-form,
	.header-top-search,
	.header-ticker,
	.carousel-control-prev,
	.carousel-control-next,
	.carousel-indicators,
	.scroll-top,
	#scroll-top,
	.back-to-top,
	.ppg-fixed-widget-card,
	.ppg-flag-compact-pill {
		display: none !important;
		visibility: hidden !important;
	}

	/* 3. Top Blue Utility Bar */
	.top-header-area {
		display: block !important;
		background-color: #0046ff !important;
		width: 100% !important;
	}
	.top-header-area .top-header-content {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		background-color: #0046ff !important;
		color: #ffffff !important;
		padding: 0 15px !important;
		height: 32px !important;
	}
	.top-header-area a {
		color: #ffffff !important;
	}

	/* 4. Header Branding / Logo Row */
	.header-wrapper {
		display: block !important;
		background: #ffffff !important;
		padding: 10px 0 !important;
	}
	.header-grid {
		display: flex !important;
		align-items: center !important;
		justify-content: space-between !important;
		max-width: 96% !important;
		margin: 0 auto !important;
	}
	.header-logo {
		display: block !important;
		margin: 0 !important;
	}
	.header-logo .default-logo-wrapper {
		display: block !important;
	}
	.header-logo img {
		max-width: 520px !important;
		height: auto !important;
		display: block !important;
	}
	.header-topright-area {
		display: block !important;
	}

	/* 5. Desktop Horizontal Navigation Bar (Clean Single-Line Menu) */
	.header-menu-type-wrapper,
	.cel-wrapper.main-menu-wrapper,
	.cel-modern-menu-alt,
	.header-nav {
		display: block !important;
		background: #ffffff !important;
		margin: 0 !important;
		padding: 0 !important;
		border-bottom: 2px solid #0046ff !important;
	}
	.sf-menu {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		justify-content: flex-start !important;
		align-items: center !important;
		float: none !important;
		list-style: none !important;
		margin: 0 !important;
		padding: 0 !important;
		width: 100% !important;
		background: #ffffff !important;
	}
	.sf-menu > li {
		display: inline-block !important;
		float: none !important;
		list-style: none !important;
		position: relative !important;
		margin: 0 !important;
		padding: 0 !important;
	}
	.sf-menu > li > a {
		display: inline-block !important;
		padding: 12px 18px !important;
		font-family: 'Battambang', sans-serif !important;
		font-size: 13.5px !important;
		font-weight: 600 !important;
		color: #1e293b !important;
		text-decoration: none !important;
		white-space: nowrap !important;
		height: auto !important;
		line-height: 1.4 !important;
	}
	.sf-menu > li.current-menu-item > a,
	.sf-menu > li.current-menu-parent > a {
		background: #0046ff !important;
		color: #ffffff !important;
		border-radius: 2px 2px 0 0 !important;
	}
	/* Hide submenus completely in print mode so they don't dump vertically down the page */
	.sf-menu .sub-menu,
	.sf-menu ul {
		display: none !important;
		visibility: hidden !important;
	}
	.menu-item-has-children::after {
		display: none !important;
	}

	/* 6. Section 1 Hero: 2-Column Desktop Layout (Slider Carousel + Announcement Box) */
	.celestial-main {
		display: block !important;
		padding-top: 15px !important;
	}
	.celestial-main .content-left-grid,
	.celestial-main .content-right-grid {
		display: grid !important;
		grid-template-columns: 66% 32% !important;
		grid-gap: 2% !important;
		max-width: 96% !important;
		margin: 0 auto !important;
		align-items: stretch !important;
	}
	.celestial-main .inner-content {
		display: block !important;
		width: 100% !important;
	}
	.carousel,
	.carousel-inner {
		display: block !important;
		position: relative !important;
		width: 100% !important;
		height: 385px !important;
		border-radius: 4px !important;
		overflow: hidden !important;
	}
	.carousel-item.active {
		display: block !important;
		position: relative !important;
		width: 100% !important;
		height: 385px !important;
	}
	.carousel-item:not(.active) {
		display: none !important;
	}
	.carousel-item .slide-img {
		width: 100% !important;
		height: 385px !important;
	}
	.carousel-item .slide-img img,
	.carousel-item .carousel-crop-img {
		width: 100% !important;
		height: 385px !important;
		object-fit: cover !important;
		display: block !important;
	}
	.carousel-item .slide-content {
		position: absolute !important;
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		background: rgba(0, 0, 0, 0.7) !important;
		padding: 12px 18px !important;
		color: #ffffff !important;
		border-left: 4px solid #0046ff !important;
	}
	.carousel-item .slide-content a {
		color: #ffffff !important;
		font-weight: bold !important;
		font-size: 14px !important;
	}

	/* Blue Announcement Box */
	.blg-annoucement-wrapper {
		display: flex !important;
		flex-direction: column !important;
		justify-content: space-between !important;
		background: #0046ff !important;
		border-radius: 4px !important;
		height: 385px !important;
		max-height: 385px !important;
		padding: 12px 18px !important;
		color: #ffffff !important;
		box-sizing: border-box !important;
	}
	.blg-annoucement-wrapper .header h3 {
		color: #ffffff !important;
		font-family: 'Moul', cursive !important;
		font-size: 14px !important;
		background: transparent !important;
		margin: 0 0 10px 0 !important;
		padding: 0 !important;
		text-align: center !important;
	}
	.blg-annoucement-main ul {
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}
	.blg-annoucement-main ul li {
		list-style: none !important;
		margin: 0 !important;
		padding: 8px 0 !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.25) !important;
	}
	.blg-annoucement-main ul li a {
		color: #ffffff !important;
		font-size: 13px !important;
		font-weight: 500 !important;
		display: block !important;
	}
	.blg-annoucement-main ul li .date {
		color: #bfdbfe !important;
		font-size: 11.5px !important;
	}
	.blg-annoucement-wrapper .read-more a {
		color: #ffffff !important;
		font-size: 12px !important;
	}

	/* 7. Section 2: Library (2x2 Grid) + Video Sidebar */
	.main-second {
		display: block !important;
		background: #f8fafc !important;
		padding: 25px 0 !important;
	}
	.main-second .content-left-grid {
		display: grid !important;
		grid-template-columns: 66% 32% !important;
		grid-gap: 2% !important;
		max-width: 96% !important;
		margin: 0 auto !important;
	}
	.doc-wrapper {
		display: block !important;
		background: transparent !important;
	}
	.doc-wrapper .download-document .title {
		font-family: 'Moul', cursive !important;
		font-size: 18px !important;
		color: #1e293b !important;
		display: flex !important;
		align-items: center !important;
		margin-bottom: 15px !important;
	}
	.doc-wrapper .download-document .title img {
		height: 24px !important;
		width: auto !important;
		margin-right: 10px !important;
	}
	.doc-wrapper .row {
		display: flex !important;
		flex-wrap: wrap !important;
		margin-left: -8px !important;
		margin-right: -8px !important;
	}
	.doc-wrapper .sub-doc {
		width: 50% !important;
		max-width: 50% !important;
		flex: 0 0 50% !important;
		padding: 0 8px !important;
		margin-bottom: 16px !important;
	}
	.doc-wrapper .inner-sub-doc {
		display: flex !important;
		background: #ffffff !important;
		border: 1px solid #e2e8f0 !important;
		border-radius: 4px !important;
		padding: 10px !important;
		height: 100% !important;
	}
	.doc-wrapper .sub-doc-img {
		width: 90px !important;
		min-width: 90px !important;
		height: 125px !important;
		margin-right: 12px !important;
		overflow: hidden !important;
		background: #f1f5f9 !important;
	}
	.doc-wrapper .sub-doc-img img {
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
	}
	.doc-wrapper .sub-doc-content {
		flex: 1 !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: space-between !important;
	}
	.doc-wrapper .sub-doc-content p {
		font-size: 12.5px !important;
		font-weight: 600 !important;
		color: #1e293b !important;
		margin: 0 !important;
		line-height: 1.4 !important;
	}
	.doc-wrapper .sub-doc-content .download {
		display: inline-block !important;
		background: #0046ff !important;
		color: #ffffff !important;
		font-size: 11px !important;
		padding: 3px 8px !important;
		border-radius: 3px !important;
		margin-top: 6px !important;
		align-self: flex-start !important;
	}
	.doc-wrapper .sub-doc-content .download a {
		color: #ffffff !important;
	}

	.utube-wrapper {
		display: block !important;
		background: #ffffff !important;
		border: 1px solid #e2e8f0 !important;
		border-radius: 4px !important;
		padding: 12px !important;
		margin-top: 0 !important;
	}
	.utube-wrapper .utube-title {
		font-size: 13px !important;
		font-weight: 600 !important;
		margin-top: 8px !important;
		color: #1e293b !important;
	}

	/* 8. Footer Columns & Bottom Bar */
	.main-footer,
	.footer-sidebars-wrapper {
		display: block !important;
		background-color: #0b1f4c !important;
		color: #ffffff !important;
		padding: 25px 0 15px 0 !important;
	}
	.footer-grid-3 {
		display: grid !important;
		grid-template-columns: 1fr 1fr 1fr !important;
		grid-gap: 30px !important;
		max-width: 96% !important;
		margin: 0 auto !important;
	}
	.footer-widget-1,
	.footer-widget-2,
	.footer-widget-3 {
		color: #ffffff !important;
	}
	.footer-sidebars-wrapper .widget h3.widgettitle {
		color: #ffffff !important;
		font-size: 15px !important;
		margin-bottom: 12px !important;
	}
	.footer-sidebars-wrapper .widget ul li,
	.footer-sidebars-wrapper .widget a {
		color: #e2e8f0 !important;
		font-size: 12.5px !important;
	}
	.footer-bottom-wrapper {
		display: block !important;
		background-color: #06112d !important;
		color: #94a3b8 !important;
		text-align: center !important;
		padding: 10px 0 !important;
		font-size: 12px !important;
	}

	/* 9. Page Break Rules */
	.carousel,
	.blg-annoucement-wrapper,
	.sub-doc,
	.inner-sub-doc,
	.utube-wrapper,
	.footer-grid-3 {
		break-inside: avoid !important;
		page-break-inside: avoid !important;
	}
}

/* -------------------------------------------------------------
   Smooth Instant Page Transitions & Swup SPA Engine
   ------------------------------------------------------------- */
html {
	scroll-behavior: smooth;
}
.transition-fade {
	transition: opacity 0.16s ease-in-out, transform 0.16s ease-in-out;
	opacity: 1;
	transform: translateY(0);
}
html.is-animating .transition-fade {
	opacity: 0;
	transform: translateY(4px);
}
html.is-rendering .transition-fade {
	opacity: 0.2;
}

/* -------------------------------------------------------------
   Contact Form 7 Security & Spam Defense (Honeypot + Quiz)
   ------------------------------------------------------------- */
.nchads-hp-wrap {
	display: none !important;
	visibility: hidden !important;
	position: absolute !important;
	left: -9999px !important;
	top: -9999px !important;
	height: 0 !important;
	width: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.wpcf7-form .wpcf7-quiz-label {
	font-weight: 600;
	color: #1e293b;
	display: block;
	margin-bottom: 6px;
}

.wpcf7-form input.wpcf7-quiz {
	border: 2px solid #cbd5e1;
	border-radius: 6px;
	padding: 8px 12px;
	width: 140px;
	font-size: 15px;
	font-weight: 600;
	color: #0f172a;
	transition: border-color 0.2s ease;
}

.wpcf7-form input.wpcf7-quiz:focus {
	border-color: #2563eb;
	outline: none;
}

/* -------------------------------------------------------------
   Responsive Layout for News & Announcement Archive List (< 768px)
   Order: Title -> Image -> Property Tags -> Description (Justify) -> Download Buttons
   ------------------------------------------------------------- */
@media screen and (max-width: 767px) {
	.news-events-list .cel-ressources-grid {
		display: flex !important;
		flex-direction: column !important;
		grid-gap: 0 !important;
		padding: 12px 0 16px 0 !important;
		border-bottom: 1px solid #e2e8f0 !important;
	}
	.news-events-list .cel-ressources-img {
		order: 2 !important;
		width: 100% !important;
		max-height: 220px !important;
		height: auto !important;
		margin: 8px 0 10px 0 !important;
		border-radius: 6px !important;
		overflow: hidden !important;
	}
	.news-events-list .cel-ressources-img .blogpost-img img,
	.news-events-list .cel-ressources-img img {
		width: 100% !important;
		height: 200px !important;
		object-fit: cover !important;
		border-radius: 6px !important;
	}
	.news-events-list .cel-ressources-info {
		order: 1 !important;
		display: contents !important; /* lets children participate in the outer flex order */
	}
	.news-events-list .cel-ressources-title {
		order: 1 !important;
		width: 100% !important;
		margin: 0 0 8px 0 !important;
		font-size: 15.5px !important;
		line-height: 1.5 !important;
	}
	.news-events-list .cel-ressources-props {
		order: 3 !important;
		width: 100% !important;
		margin: 4px 0 10px 0 !important;
		display: flex !important;
		align-items: center !important;
		gap: 6px !important;
		flex-wrap: wrap !important;
	}
	.news-events-list .cel-ressources-props span {
		font-size: 9px !important;
		padding: 2px 6px !important;
	}
	.news-events-list .cel-ressources-excerpt {
		order: 4 !important;
		width: 100% !important;
		text-align: justify !important;
		text-justify: inter-word !important;
		font-size: 13.5px !important;
		line-height: 1.65 !important;
		color: #334155 !important;
		margin: 0 0 12px 0 !important;
	}
	.news-events-list .cel-ressources-actions {
		order: 5 !important;
		width: 100% !important;
		display: flex !important;
		justify-content: flex-end !important;
		margin-top: 4px !important;
		gap: 8px !important;
	}
}

/* -------------------------------------------------------------
   Homepage Library Section Styling Enhancements
   ------------------------------------------------------------- */
.doc-wrapper.inner-content {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 6px !important;
	padding: 16px 18px !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
	box-sizing: border-box !important;
}

.doc-wrapper .inner-sub-doc {
	display: flex !important;
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 4px !important;
	padding: 12px !important;
	height: 100% !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
	transform: none !important;
	transition: none !important;
}

.doc-wrapper .inner-sub-doc:hover {
	border-color: #e2e8f0 !important;
	box-shadow: none !important;
	transform: none !important;
}

.doc-wrapper .sub-doc-img {
	width: 90px !important;
	min-width: 90px !important;
	height: 135px !important;
	margin-right: 14px !important;
	overflow: hidden !important;
	border-radius: 3px !important;
	background: #f1f5f9 !important;
	flex-shrink: 0 !important;
}

.doc-wrapper .sub-doc-img img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

.doc-wrapper .sub-doc-content {
	flex: 1 !important;
	min-width: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	height: 100% !important;
}

.doc-wrapper .sub-doc-top {
	display: flex !important;
	flex-direction: column !important;
	gap: 5px !important;
}

.doc-wrapper .sub-doc-title {
	font-family: 'Battambang', 'Open Sans', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.45 !important;
	margin: 0 !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

.doc-wrapper .sub-doc-title a {
	color: #1e293b !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.doc-wrapper .sub-doc-title a:hover,
.doc-wrapper .inner-sub-doc:hover .sub-doc-title a {
	color: #154cc7 !important;
	text-decoration: underline !important;
}

.doc-wrapper .sub-doc-desc a {
	color: #64748b !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.doc-wrapper .sub-doc-desc a:hover,
.doc-wrapper .inner-sub-doc:hover .sub-doc-desc a {
	color: #334155 !important;
}


.doc-wrapper .doc-item-props {
	display: flex !important;
	align-items: center !important;
	gap: 4px !important;
	flex-wrap: wrap !important;
	margin: 2px 0 0 0 !important;
	line-height: 1 !important;
}

.doc-wrapper .doc-item-props span {
	display: inline-flex !important;
	align-items: center !important;
	gap: 2.5px !important;
	font-size: 8px !important;
	color: #64748b !important;
	background: #f8fafc !important;
	padding: 1.5px 5px !important;
	border-radius: 2px !important;
	border: 1px solid #e2e8f0 !important;
	font-weight: 500 !important;
}

.doc-wrapper .doc-item-props span a {
	color: inherit !important;
	text-decoration: none !important;
}

.doc-wrapper .doc-item-props span a:hover {
	color: #154cc7 !important;
}

.doc-wrapper .doc-item-props i {
	font-size: 7.5px !important;
	color: #94a3b8 !important;
}

.doc-wrapper .sub-doc-desc {
	font-size: 11.5px !important;
	line-height: 1.45 !important;
	color: #64748b !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	margin-top: 2px !important;
}

.doc-wrapper .home-doc-actions {
	margin-top: auto !important;
	padding-top: 8px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 6px !important;
	flex-wrap: wrap !important;
}

.doc-wrapper .home-doc-actions .doc-type-btn {
	background: #ffffff !important;
	color: #1e293b !important;
	border: 1.5px solid #cbd5e1 !important;
	padding: 3px 9px !important;
	min-height: 0 !important;
	height: 23px !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 10.5px !important;
	line-height: 15px !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 4.5px !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
	transition: all 0.2s ease !important;
}

.doc-wrapper .home-doc-actions .doc-type-btn:hover {
	border-color: #94a3b8 !important;
	background: #f8fafc !important;
	transform: translateY(-1px) !important;
}

/* Library Archive & Taxonomy Pill Styling */
.tbl-doc .cel-ressources-props {
	display: flex !important;
	align-items: center !important;
	gap: 4px !important;
	flex-wrap: wrap !important;
	margin-top: 5px !important;
	line-height: 1 !important;
}

.tbl-doc .cel-ressources-props span {
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 2.5px !important;
	font-size: 7.5px !important;
	color: #64748b !important;
	background: #f8fafc !important;
	padding: 1px 4px !important;
	border-radius: 2px !important;
	border: 1px solid #e2e8f0 !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
}

.tbl-doc .cel-ressources-props span a {
	color: inherit !important;
	text-decoration: none !important;
}

.tbl-doc .cel-ressources-props span a:hover {
	color: #154cc7 !important;
}

.tbl-doc .cel-ressources-props i {
	font-size: 7px !important;
	color: #94a3b8 !important;
	margin: 0 !important;
}

.tbl-doc .cel-ressources-props .kh-only {
	color: #ea580c !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	font-weight: 600 !important;
	font-size: 7.5px !important;
}

/* Document Table Action Pill Buttons */
.tbl-doc td .doc-tbl-btn {
	background: #ffffff !important;
	color: #1e293b !important;
	border: 1.5px solid #cbd5e1 !important;
	padding: 4px 10px !important;
	min-height: 0 !important;
	height: auto !important;
	border-radius: 4px !important;
	font-weight: 600 !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 5px !important;
	box-shadow: 0 1px 2px rgba(0,0,0,0.04) !important;
	transition: all 0.2s ease !important;
	white-space: nowrap !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.tbl-doc td .doc-tbl-btn:hover {
	border-color: #94a3b8 !important;
	background: #f8fafc !important;
	color: #0f172a !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 2px 4px rgba(0,0,0,0.06) !important;
}

.tbl-doc td .doc-tbl-btn i.doc-file-icon {
	font-size: 13px !important;
	line-height: 1 !important;
	margin: 0 !important;
	background: transparent !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
}

.tbl-doc td .doc-tbl-btn .doc-dl-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 3px !important;
	font-size: 11px !important;
	color: #334155 !important;
	flex-shrink: 0 !important;
}

.tbl-doc td .doc-tbl-btn .doc-dl-badge i {
	font-size: 9px !important;
	color: #64748b !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
}

.tbl-doc td .doc-tbl-btn .doc-file-size {
	font-size: 10px !important;
	color: #64748b !important;
	font-weight: 500 !important;
	border-left: 1px solid #cbd5e1 !important;
	padding-left: 5px !important;
	margin-left: 2px !important;
	flex-shrink: 0 !important;
}

/* Responsive Table Wrapper & Mobile Layout: Switch Table to Modern Card List */
.doc-table-responsive-wrapper {
	width: 100%;
	margin-bottom: 25px;
}

@media screen and (max-width: 768px) {
	/* 1. Dissolve table structure into clean vertical card list */
	.tbl-doc,
	.tbl-doc tbody,
	.tbl-doc tr {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	/* 2. Hide traditional table header row on mobile */
	.tbl-doc tr:first-child:has(th),
	.tbl-doc thead,
	.tbl-doc tr th {
		display: none !important;
	}

	/* 3. Each document becomes an individual card row */
	.tbl-doc tr {
		background: #ffffff !important;
		border: 1px solid #e2e8f0 !important;
		border-radius: 8px !important;
		padding: 14px 14px 12px 14px !important;
		margin-bottom: 12px !important;
		box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 10px !important;
	}

	.tbl-doc tr:hover {
		border-color: #cbd5e1 !important;
		box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.06) !important;
	}

	/* 4. Reset standard td borders and padding inside card */
	.tbl-doc tr td {
		border: none !important;
		padding: 0 !important;
		background: transparent !important;
		text-align: left !important;
		width: 100% !important;
	}

	/* Title & meta section */
	.tbl-doc tr td:first-child {
		width: 100% !important;
	}

	.tbl-doc tr td:first-child .cel-ressources-title {
		font-size: 14.5px !important;
		line-height: 1.55 !important;
		margin: 0 0 6px 0 !important;
		font-weight: 600 !important;
	}

	.tbl-doc tr td:first-child .cel-ressources-title a {
		color: #1e293b !important;
	}

	.tbl-doc tr td:first-child .cel-ressources-title a:hover {
		color: #0046ff !important;
	}

	/* Props (date, category badges) */
	.tbl-doc .cel-ressources-props {
		margin-top: 4px !important;
		gap: 6px !important;
	}

	.tbl-doc .cel-ressources-props span {
		font-size: 10.5px !important;
		padding: 2px 6px !important;
	}

	/* 5. Action buttons container (row below title & meta) */
	.tbl-doc tr td:nth-child(2),
	.tbl-doc tr td:last-child {
		display: inline-flex !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	/* Hide empty action cells so they don't take empty space */
	.tbl-doc tr td:empty,
	.tbl-doc tr td:nth-child(2):not(:has(a)),
	.tbl-doc tr td:last-child:not(:has(a)) {
		display: none !important;
	}

	/* Group buttons neatly in an inline flex cluster below the post info, aligned to the RIGHT */
	.tbl-doc tr {
		display: flex !important;
		flex-wrap: wrap !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-end !important;
	}

	.tbl-doc tr td:first-child {
		flex: 1 1 100% !important;
		width: 100% !important;
	}

	.tbl-doc tr td:nth-child(2),
	.tbl-doc tr td:last-child {
		flex: 0 0 auto !important;
		margin-left: 8px !important;
		margin-right: 0 !important;
		margin-top: 6px !important;
	}

	/* Mobile button styling */
	.tbl-doc td .doc-tbl-btn {
		padding: 5px 12px !important;
		font-size: 11px !important;
		gap: 5px !important;
		border-radius: 5px !important;
		background: #f8fafc !important;
		border: 1px solid #cbd5e1 !important;
	}

	.tbl-doc td .doc-tbl-btn i.doc-file-icon {
		font-size: 13.5px !important;
	}

	.tbl-doc td .doc-tbl-btn .doc-dl-badge {
		font-size: 11px !important;
		font-weight: 600 !important;
	}

	.tbl-doc td .doc-tbl-btn .doc-file-size {
		font-size: 9.5px !important;
		padding-left: 5px !important;
	}
}


/* ==========================================================================
   Khmer Typography for WordPress Admin Bar & Quick Controls
   Ensures Khmer text (កែសម្រួល, ថ្មី, etc.) renders in Battambang instead of raw system fallback
   ========================================================================== */
#wpadminbar,
#wpadminbar * {
	font-family: 'Battambang', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;
}

#wpadminbar .ab-item,
#wpadminbar .ab-label,
#wpadminbar .ab-icon,
#wpadminbar a.ab-item {
	font-family: 'Battambang', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

#wpadminbar .dashicons,
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before {
	font-family: dashicons !important;
}








