:root {
    --primary-color     :#383b51;
    --secondary-color   :#e2027b;
    --third-color       :#d9d1c9;
    --success-color     :#27AE60;
    --danger-color      :#E74C3C;
    --warning-color     :#F39C12;
    --info-color        :#ccc;
    --dark-color        :#222430;
    --light-bg          :#efefef;
    --white             :#FFFFFF;
    --gradient          :linear-gradient(#383b51, #e2027b);
    --text-color        :#383b51;
    --border-color      :#E0E0E0;
    --trans             :transparent;
    --font-main         :-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    --transition        :all 0.3s ease;
    --gap               :clamp(15px, 3vw, 40px);
    --martom            :clamp(15px, 3vw, 30px);
    --padding           :clamp(15px, 3vw, 40px);
    --radius            :clamp(6px, 3vw, 12px);
    --font-weight       :400;
    --font-size         :clamp(14px, 2vw, 16px);
    --primary-font      :"Outfit", sans-serif;
    --secondary-font    :"Outfit", sans-serif;
    --mg-gap            : 8px;
    --mg-radius         : 8px;
    --mg-cols           : 4;
    --mg-arrow-size     : 40px;
    --mg-arrow-bg       : #383b51;
    --mg-arrow-color    : #fff;
    --mg-overlay-bg     : rgba(0,0,0,.92);
    --mg-img-radius     : 6px;
    --mg-thumb-size     : 64px;
}

.bg             {background-color:#efefef;}
.bgwhite        {background-color:white;}
.bgwhite2       {background-color:fafafa;}
.bg1            {background-color:#383b51;}
.bg2            {background-color:#e2027b;}
.bg3            {background-color:#45243e;}

.colorwhite     {color:white;}
.color          {color:#e2027b;}
.color1         {color:#383b51;}
.color2         {color:#764BA2;}
.color3         {color:#d9d1c9;}
.borderwhite    {border-color:white;}
.border1        {border-color:#383b51;}
.border2        {border-color:#764BA2;}
.border3        {border-color:#E0E0E0;}

/* ------------------ 
------- Body --------
------------------ */
body {background: var(--light-bg); color: var(--text-color); line-height: 1.6;}
h1 {color:var(--white); background-color:var(--primary-color);}
h2 {color:var(--white); background-color:var(--secondary-color);}
h3 {color:var(--secondary-color);}


/* ------------------ 
------ Sidebar ------
------------------ */
.menu-sidebar {background-color: var(--primary-color);}
.icon {background-color:var(--white);}
.icon::before, .icon::after {background-color:var(--dark-color);}
.menu a {color:var(--white);}
.menu a.active {color:var(--third-color);}

.menu-content img {max-width:80%; margin: auto;/*background-color:var(--white);  border-radius: 50%;*/}

/* ------------------ 
------- Header ------
------------------ */
.header {box-shadow:0 2px 10px rgba(0,0,0,0.4); background-color:var(--third-color);}
.header-logo {display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding:20px 0 10px;}
.header-content {margin: 0 auto;}
/*.header-content {margin:0 auto; padding:0; min-height:50px; position: relative; background: url(img/back.webp) no-repeat top right / contain;}*/
.nav-header a {color:var(--text-color); font-weight: 600;}
.nav a::before {background:var(--primary-color);}
.nav-header a:hover {background:var(--gradient); color:var(--white);}
.toggleable_content {/*border-width:0 3px 0 0; border-style: solid; margin:0 35px 0 0; padding:0 20px 0 0; border-color:var(--primary-color);*/}
.toggleable_label::after {background:var(--gradient); color:var(--white);}
.content-filter-btn-index.active {background: var(--gradient); color:var(--white);}

.header-index       {justify-content:space-between;}
.header-index h2    {background-color: var(--trans); color:var(--text-color); padding:0;}
.search-box         {}
.search-box input   {border:none; border-bottom: 1px solid #bbb; background-color: var(--light-bg);}
#searchSuggestions  {background:#fff; border:1px solid #ddd; box-shadow:0 4px 12px rgba(0,0,0,.1);} 

@media (max-width: 768px) {
    .header-index {justify-content: center;}
}

.toggle {}

/* ------ custom  ------ */
.logo {width: 100%; max-width: 750px;}
.logo img {}
label h2 {background: var(--gradient);}
.pubtel-V h2 {background-color:var(--white); color: var(--primary-color); padding:0; margin:0 0 10px; font-weight: 600; font-size:1.4em;}
.numero {font-size:2em; font-weight: 600; background:var(--gradient); color:var(--white);}
.call-in {padding: 6px 10px; flex-wrap: wrap; background:var(--gradient); border-radius: 8px; margin: 10px 0; color:var(--white); display: flex; justify-content: center; font-size: 20px; align-items: center;}
.call-in a {font-weight: 600; font-size: 1.3em; white-space: nowrap;}

/* ------------------ 
----- Breadcrumb ----
------------------ */
.breadcrumb a {color:var(--primary-color);}
.breadcrumb a:hover {color:var(--white); background-color:var(--primary-color);}
.breadcrumb-separator {color:var(--third-color);}
.breadcrumb-current {}

/* ------------------ 
---- Catégories -----
------------------ */
.view-link {color:#bbb;}
.view-link:hover {color:#333;}

/* ------------------ 
------ Galerie ------
------------------ */
.page-header-bloc {background-color:var(--secondary-color); color: var(--white);}
.page-header-bloc h1 {background-color:var(--trans); color: var(--white);}
.image-card, .ad-card {background-color:var(--white);}
.image-info h2 {color: var(--primary-color); background-color: var(--trans); font-weight:600; font-size: 18px;}
.image-description {color: var(--secondary-color);}
.image-description span {background:var(--gradient); color:var(--white);}
.image-description p {background-color: #d9d2ca; color: #383b51;}
.pagination-btn.active {background-color: var(--primary-color); color:var(--white); border-color:#d53a7c;}
.pagination-btn {border: 1px solid #ddd; background-color: var(--white);}
.pagination-btn:hover {background: #dd6196; border-color: #d53a7c; color:white;}
.pagination-dots {color: #999;}

/* ------------------ 
------ Page ------
------------------ */
.page-section {}
.misenpage strong {color:var(--primary-color);}

/* ------------------ 
------ Image ------
------------------ */
.image-section {background-color:var(--white); box-shadow:0 8px 30px rgba(0, 0, 0, 0.12); padding: clamp(10px, 2vw, 30px);}
.image-section h1 {font-size: 1.4em;}
.image-description-detail h2 {}

/* Compteurs stats / durée */
.content-stats { padding: 10px 20px; font-size: .9em; opacity: .8; background-color: var(--light-bg); border-radius: var(--radius); margin: 10px 0 0; }
.stat-like { background: none; border: none; cursor: pointer; padding: 4px 8px; border-radius: 20px; transition: all .2s; color: inherit; font-size: inherit; }
.stat-like:hover { background: rgba(220, 53, 69, .1); color: #dc3545; }
.stat-like.liked { color: #dc3545; }
.stat-like.liked svg { fill: #dc3545; }
.stat-views, .stat-duration { opacity: .7; }

.profile-name-display h2 {}
.tag-link {background: var(--gradient); color:var(--white);}
.related-content {background-color: var(--white); box-shadow:0 8px 30px rgba(0, 0, 0, 0.12);}
.related-content h3 {color:var(--secondary-color);}
.related-item:hover .related-item-title {color:var(--primary-color);}
.call {background: var(--gradient); color:var(--white);}
.profile-gallery-section h3 {background-color: var(--primary-color); color: var(--white); border-radius: var(--radius);}

@media (max-width:480px) {
    .image-section {background-color: inherit; box-shadow: none; padding: 0;}
 }

/* ------------------ 
------ Widgets ------
------------------ */
/*.widget h3 {background-color: var(--white); box-shadow:0 4px 15px rgba(0,0,0,0.1);}*/
.widget .dropdown, .widget h3 {background-color: var(--white); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);}

/* ------------------ 
------ Swiper ------
------------------ */
.swiper {width:100%; max-width:300px; height: auto; float: left; margin-right: 30px !important;}
.swiper-button-next, .swiper-button-prev {background: rgb(255, 255, 255, .7); border-radius: 8px; color:var(--primary-color) !important;}
.swiper-button-next:after, .swiper-button-prev:after {font-size: 30px !important;}
.swiper-pagination {position: relative !important; padding-top: 20px;}
.swiper-pagination-bullet-active {background:var(--primary-color) !important;}

@media (max-width:480px) {
    .swiper {float:none; margin:0 auto !important;}
}

/* ------------------ 
------ footer ------
------------------ */
.footer-block h3, .footer-block h4, .footer-block h5 {color:var(--primary-color);}
.footer-block a:hover {}
.footer-bottom {background-color: var(--white)}
.footer-copyright {color:var(--info-color);}

/* ------ custom ------ */
.footer-infos {font-size: clamp(14px, 1.7vw, 19px); line-height: 140%; font-weight: 300; color:var(--white); }
.footer-block-1 img {border-radius:0;}


/* ------ custom SVA ------ */
.price-block {margin: auto; width: 280px; position: relative;}
.price-num {display: flex; border-style: solid; border-width: 1px 0 1px 1px; color: #a50f78; font-family: Arial; font-size: 19px; font-weight: bold; height: 37px; padding: 0 10px; align-items: center;}
.price-img {max-width: 140px;}


/* ------ custom Cookies ------ */
.cookie-consent {background-color: var(--third-color); font-family:var(--font-main); box-shadow:0px -2px 10px rgba(0, 0, 0, 0.4);}
.cookie-consent-inner h4 {color: var(--secondary-color); font-size:15px; margin-bottom:-10px;}
.cookie-actions button {color:var(--white); font-weight:600;}
#cookie-accept {background: var(--success-color);}
#cookie-refuse {background: var(--primary-color);}

/* ------------------ 
--- scroll to top ---
------------------ */
.scroll-to-top {background-color: rgb(217 209 201 / 85%);}
.scroll-to-top:hover {background-color:rgba(217 209 201 / 100%); color:var(--white);}

/* ------------------ 
--- disclaimer ---
------------------ */
.disclaimer-content {background-color:var(--white); border-radius:var(--radius); padding:var(--padding); box-shadow:0 20px 60px rgba(0, 0, 0, 0.5);}
.disclaimer-site-name {color:var(--primary-color); background-color: var(--trans); font-weight:700; font-size:clamp(25px, 3vw, 33px);}
.disclaimer-title {font-size:clamp(20px, 2vw, 26px); color:var(--secondary-color);}
.disclaimer-buttons {}
.disclaimer-text {font-size:clamp(14px, 2vw, 20px);}