/* =====================================================================
   YULCOM – Design 2026
   Actif seulement quand <body> porte la classe .yd-design
   (aperçu administrateur, lien d'aperçu, ou publication dans les réglages).
   ===================================================================== */

body.yd-design{
  --yd-navy:#0b2d50;
  --yd-navy-2:#0f3a66;
  --yd-blue:#145d96;
  --yd-accent:#1497d0;
  --yd-accent-dark:#0f7fb2;
  --yd-sky:#7fd3f5;
  --yd-ink:#1f2d3b;
  --yd-text:#3a4a5a;
  --yd-muted:#6b7a89;
  --yd-line:#e3e9ef;
  --yd-soft:#f4f7fa;
  --yd-radius:14px;
  --yd-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --yd-head:"Plus Jakarta Sans","Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  color:var(--yd-text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

/* ---------- Typographie ---------- */
body.yd-design,
body.yd-design :is(p,li,a,span,div,input,select,textarea,button,label,td,th,small,strong,em,b,blockquote,figcaption,address,dd,dt):not([class*="icon"]):not([class*="fa-"]):not([data-ico-fa]):not(.dashicons){
  font-family:var(--yd-font)!important;
}
body.yd-design :is(h1,h2,h3,h4,h5,h6,.bt_bb_headline_content,.bt_bb_service_content_title,.bt_bb_grid_item_post_title,.bt_bb_grid_item_post_title a){
  font-family:var(--yd-head)!important;
  letter-spacing:-.018em;
}
body.yd-design .bt_bb_headline_tag{line-height:1.14}
body.yd-design .bt_bb_headline.bt_bb_font_weight_900 .bt_bb_headline_tag,
body.yd-design .bt_bb_headline.bt_bb_font_weight_800 .bt_bb_headline_tag{font-weight:800}
body.yd-design .bt_bb_text p,
body.yd-design .btArticleContent p,
body.yd-design .bt_bb_headline_subheadline{line-height:1.7}
body.yd-design .bt_bb_headline_subheadline{color:inherit;opacity:.88}

/* Titres noirs pur -> bleu marine de la marque */
body.yd-design .bt_bb_headline[style*="color:rgb(0,0,0)"] .bt_bb_headline_tag,
body.yd-design .bt_bb_headline[style*="color: rgb(0, 0, 0)"] .bt_bb_headline_tag,
body.yd-design .bt_bb_headline[style*="color:#000"] .bt_bb_headline_tag,
body.yd-design .btLightSkin .bt_bb_section:not(.btDarkSkin):not([class*="overlay_dark"]) h2.bt_bb_headline_tag{color:var(--yd-navy)}
body.yd-design .bt_bb_headline[style*="color:rgb(0,0,0)"] .bt_bb_headline_subheadline{color:var(--yd-text)}

/* Mot mis en avant (<u>) dans les titres : couleur, sans soulignement */
body.yd-design .bt_bb_headline_content u{text-decoration:none;color:var(--yd-accent)}

/* Tiret décoratif au-dessus des titres */
body.yd-design .bt_bb_dash_top .bt_bb_headline_content:before,
body.yd-design .bt_bb_dash_bottom .bt_bb_headline_content:after{border-color:var(--yd-accent)!important}

/* ---------- En-tête ---------- */
body.yd-design .mainHeader{
  background:linear-gradient(180deg,rgba(9,36,66,.97),rgba(11,45,80,.95))!important;
  box-shadow:0 1px 0 rgba(255,255,255,.06),0 10px 30px rgba(6,24,44,.18)!important;
  -webkit-backdrop-filter:saturate(140%) blur(8px);
  backdrop-filter:saturate(140%) blur(8px);
}
body.yd-design .btLogoArea,
body.yd-design .btVerticalHeaderTop{background:var(--yd-navy)!important}
body.yd-design .menuPort nav > ul > li > a{
  font-family:var(--yd-font)!important;
  font-weight:600!important;
  font-size:14.5px!important;
  letter-spacing:.015em;
  color:rgba(255,255,255,.92)!important;
  position:relative;
}
body.yd-design .menuPort nav > ul > li > a:after{
  content:"";position:absolute;left:0;right:0;bottom:22px;height:2px;border-radius:2px;
  background:var(--yd-sky);transform:scaleX(0);transform-origin:left;transition:transform .25s ease;
}
body.yd-design .menuPort nav > ul > li:hover > a,
body.yd-design .menuPort nav > ul > li.current-menu-item > a,
body.yd-design .menuPort nav > ul > li.current-menu-ancestor > a{color:#fff!important}
body.yd-design .menuPort nav > ul > li:hover > a:after,
body.yd-design .menuPort nav > ul > li.current-menu-item > a:after,
body.yd-design .menuPort nav > ul > li.current-menu-ancestor > a:after{transform:scaleX(1)}

/* Sous-menus */
body.yd-design .btMenuHorizontal .menuPort > nav > ul > li > ul,
body.yd-design .btMenuHorizontal .menuPort > nav > ul > li > ul ul{
  border-radius:12px;
  box-shadow:0 18px 50px rgba(6,24,44,.18),0 0 0 1px rgba(11,45,80,.06)!important;
  padding:8px 0!important;
  overflow:hidden;
}
body.yd-design .btMenuHorizontal .menuPort ul ul li > a{
  font-size:14px!important;
  font-weight:500!important;
  color:var(--yd-ink)!important;
  transition:background .2s,color .2s;
}
body.yd-design .btMenuHorizontal .menuPort ul ul li > a:hover{background:var(--yd-soft)!important;color:var(--yd-accent)!important}

/* ---------- Boutons ---------- */
body.yd-design .bt_bb_button a,
body.yd-design .bt_bb_button .bt_bb_link{
  border-radius:8px!important;
  font-weight:600!important;
  letter-spacing:.01em;
  transition:background-color .2s,color .2s,box-shadow .2s,transform .2s;
}
body.yd-design .bt_bb_button.bt_bb_style_filled a{
  box-shadow:0 8px 20px rgba(20,151,208,.22)!important;
}
body.yd-design .bt_bb_button.bt_bb_style_filled a:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(20,151,208,.28)!important}
body.yd-design .bt_bb_button.bt_bb_style_clean a{font-weight:700!important}
body.yd-design .bt_bb_button.bt_bb_style_clean a:hover{color:var(--yd-accent)!important}

/* ---------- Pastilles « services » (icône + titre) ---------- */
body.yd-design .bt_bb_service .bt_bb_icon_holder{border-radius:14px!important}
body.yd-design .bt_bb_service_content_title{font-weight:700!important;color:var(--yd-navy)}
body.yd-design .btDarkSkin .bt_bb_service_content_title,
body.yd-design [class*="overlay_dark"] .bt_bb_service_content_title{color:#fff}

/* ---------- Cartes d'actualités (grilles d'articles) ---------- */
body.yd-design .bt_bb_grid_item_inner{
  background:#fff!important;
  border-radius:var(--yd-radius);
  overflow:hidden;
  box-shadow:0 1px 2px rgba(11,45,80,.06),0 10px 30px rgba(11,45,80,.08);
  transition:transform .25s ease,box-shadow .25s ease;
  height:100%;
}
body.yd-design .bt_bb_grid_item_inner:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(11,45,80,.06),0 18px 40px rgba(11,45,80,.14)}
body.yd-design .bt_bb_grid_item_post_content{padding:22px 24px 24px!important;background:#fff!important}
body.yd-design .bt_bb_grid_item_post_title,
body.yd-design .bt_bb_grid_item_post_title a{
  font-size:17px!important;line-height:1.4!important;font-weight:700!important;color:var(--yd-navy)!important;text-decoration:none!important;
}
body.yd-design .bt_bb_grid_item_post_title a:hover{color:var(--yd-accent)!important}
/* Titres des cartes : 3 lignes complètes maximum, puis « … » (plus de ligne coupée en deux) */
html body.yd-design .bt_bb_grid_item_post_title,
html body.yd-design .bt_bb_masonry_post_grid .bt_bb_masonry_post_grid_content .bt_bb_grid_item .bt_bb_grid_item_post_content .bt_bb_grid_item_post_title{
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;line-clamp:3!important;
  overflow:hidden!important;max-height:none!important;height:auto!important;
}
body.yd-design .bt_bb_grid_item_post_title a{display:inline!important}
body.yd-design .bt_bb_grid_item_item_read_more a{font-weight:700!important;color:var(--yd-accent)!important}
body.yd-design .bt_bb_grid_item_post_thumbnail img{transition:transform .5s ease}
body.yd-design .bt_bb_grid_item_inner:hover .bt_bb_grid_item_post_thumbnail img{transform:scale(1.03)}

/* ---------- En-tête des pages intérieures ---------- */
body.yd-design .btPageHeadline .bt_bb_headline_tag{font-weight:800!important}
body.yd-design .btPageHeadline .bt_bb_background_overlay_dark_solid:before,
body.yd-design .btPageHeadline[class*="overlay"]:before{background:linear-gradient(120deg,rgba(7,29,54,.88),rgba(11,45,80,.72))!important}

/* ---------- Contenu des articles ---------- */
body.yd-design .btArticleContent,
body.yd-design .btSingleArticle .bt_bb_text{font-size:17px}
body.yd-design .btArticleContent a,
body.yd-design .btContent .bt_bb_section:not([class*="overlay_dark"]):not(.btDarkSkin) .bt_bb_text a:not(.bt_bb_link){color:var(--yd-accent);text-underline-offset:3px}
/* Texte justifié : alignement à gauche, plus lisible */
body.yd-design [style*="justify"],body.yd-design [align="justify"]{text-align:left!important}

/* ---------- Pied de page ---------- */
body.yd-design .btSiteFooter .bt_bb_headline .bt_bb_headline_tag{
  font-family:var(--yd-font)!important;
  font-size:12.5px!important;font-weight:700!important;letter-spacing:.12em;color:var(--yd-navy)!important;
}
body.yd-design .btSiteFooter a{transition:color .2s,opacity .2s}
body.yd-design .btSiteFooter .bt_bb_section:not([class*="overlay_dark"]):not(.btDarkSkin) .bt_bb_text a:hover{color:var(--yd-accent)!important}
/* Zone blanche du pied de page : liens lisibles */
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) .bt_bb_text a,
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) .widget a,
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) li a{color:var(--yd-ink)!important;text-decoration:none}
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) .bt_bb_button a,
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) .bt_bb_icon a{color:var(--yd-blue)!important}
body.yd-design .btSiteFooter .bt_bb_section:not(.bt_bb_color_scheme_6):not([style*="rgb(19,94,150)"]) a:hover{color:var(--yd-accent)!important}
/* Barre de copyright (fond bleu) : liens en blanc */
body.yd-design .btSiteFooter .btDarkSkin a,
body.yd-design .btSiteFooter [class*="overlay_dark"] a,
body.yd-design .btSiteFooterCopyMenu a,
body.yd-design .btSiteFooter .bt_bb_section.bt_bb_color_scheme_6 a,
body.yd-design .btSiteFooter .bt_bb_section[style*="background-color:rgb(19,94,150)"] a{color:#fff!important}
body.yd-design .btSiteFooter .btDarkSkin a:hover,
body.yd-design .btSiteFooterCopyMenu a:hover{opacity:.8}
body.yd-design .btSiteFooter input[type="email"],
body.yd-design .btSiteFooter input[type="text"]{border-radius:8px!important;border:1px solid var(--yd-line)!important;box-shadow:none!important}
body.yd-design .btSiteFooter input[type="submit"],
body.yd-design .btSiteFooter button{border-radius:8px!important;font-weight:600!important}

/* ---------- Champs de formulaires ---------- */
body.yd-design .btContent input[type="text"],
body.yd-design .btContent input[type="email"],
body.yd-design .btContent input[type="tel"],
body.yd-design .btContent textarea,
body.yd-design .btContent select{border-radius:8px}

/* ---------- Sélection & focus ---------- */
body.yd-design ::selection{background:rgba(20,151,208,.18)}
body.yd-design a:focus-visible,
body.yd-design button:focus-visible{outline:3px solid var(--yd-sky);outline-offset:2px}

/* ---------- Mobile ---------- */
@media (max-width:991px){
  body.yd-design .menuPort nav > ul > li > a:after{display:none}
}
@media (max-width:767px){
  body.yd-design{font-size:16px}
  body.yd-design .bt_bb_grid_item_post_content{padding:18px 18px 20px!important}
}
@media (prefers-reduced-motion:reduce){
  body.yd-design *{transition:none!important}
}
