/* ===================================================================================

Theme Name: Politono Child
Theme URI: https://themeforest.net/user/xpeedstudio/portfolio
Author: Xpeedstudio
Author URI: https://xpeedstudio.com/
Description: Sassico is a Creative saas digital marketing WordPress Theme.
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: politono
* Template: politono
* License: GNU General Public License version 3.0
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
* Tags: one-column, right-sidebar, left-sidebar, custom-menu, featured-images, post-formats, sticky-post, translation-ready

* We encourage you to create Child theme for any modifications you will want to do.

* Why use Child theme?

* Because of future updates we may provide for this theme that will overwrite your
* modifications and all your custom work.

* If you are not familiar with Child Themes, you can read about it here:
* http://codex.wordpress.org/Child_Themes
* http://wp.tutsplus.com/tutorials/theme-development/child-themes-basics-and-creating-child-themes-in-wordpress/

====================================================================================== */

/* Identité Sénat RDC : bleu institutionnel, jaune et rouge du drapeau. */
:root {
  --senat-blue: #0077B6;
  --senat-navy: #073B65;
  --senat-yellow: #F7D117;
  --senat-red: #CE2B37;
  --senat-text: #24384A;
  --senat-pale: #F4F8FB;
}
body { color: var(--senat-text); background: #fff; }
h1, h2, h3, h4, h5, h6 { color: var(--senat-navy); }
a:hover, .post .entry-header .entry-title a:hover,
.entry-header .entry-title a:hover, .sidebar ul li a:hover {
  color: var(--senat-blue) !important;
}
/* Une touche du drapeau, sans modifier le contenu ni les gabarits. */
.header-standard .header-wrapper {
  background: #fff;
  border-top: 4px solid var(--senat-yellow);
  border-bottom: 2px solid var(--senat-red);
  box-shadow: 0 4px 18px rgba(7,59,101,.08);
}
.header .logo img {
  display: block;
  max-height: 72px;
  max-width: min(72px, 18vw);
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 50%;
}
.topbar { background-color: var(--senat-navy); color: #fff; }
.topbar a, .topbar .top-info { color: #fff; }
.header ul.navbar-nav > li > a:hover,
.header ul.navbar-nav > li > a.active,
.header ul.navbar-nav > li > a:focus { color: var(--senat-blue) !important; }
.header .navbar-nav .dropdown-menu { border-top: 3px solid var(--senat-yellow); }
.header .quote-btn, .xs-btn-primary, .wfp-view .xs-btn-primary,
.wfp-view .xs-btn.submit-btn, .elementor-button {
  background-color: var(--senat-blue);
  border-color: var(--senat-blue);
  color: #fff;
}
.header .quote-btn:hover, .xs-btn-primary:hover, .elementor-button:hover {
  background-color: var(--senat-navy);
  border-color: var(--senat-navy);
  color: #fff;
}
.xs-innner-page-banner.banner-solid, .banner-area.banner-solid {
  background-color: var(--senat-navy);
}
.xs-innner-page-banner.banner-solid .banner-title,
.banner-area.banner-solid .banner-title { color: #fff; }
.post .post-body { background: #fff; }
.post .post-media img, .entry-thumbnail img { max-width: 100%; height: auto; }
.xs-footer { background-color: var(--senat-navy); color: #f2f7fa; }
.xs-footer h1, .xs-footer h2, .xs-footer h3, .xs-footer h4,
.xs-footer a, .xs-footer .footer-widget { color: #f2f7fa; }
.xs-footer a:hover { color: var(--senat-yellow) !important; }
.copy-right { background-color: #052D4B; color: #fff; }
:where(.entry-content, .elementor-widget-container) img,
:where(.entry-content, .elementor-widget-container) video { max-width: 100%; height: auto; }
:where(.entry-content, .elementor-widget-container) iframe { max-width: 100%; }
.entry-content table { display: block; max-width: 100%; overflow-x: auto; }
:focus-visible { outline: 2px solid var(--senat-yellow); outline-offset: 2px; }
@media (max-width: 991px) {
  .header .navbar { flex-wrap: wrap; }
  .header .navbar-collapse { flex-basis: 100%; }
  .header .navbar-nav { width: 100%; }
  .header .navbar-nav > li > a { white-space: normal; }
  .xs-innner-page-banner .banner-title, .banner-area .banner-title {
    font-size: clamp(1.7rem, 5vw, 2.8rem);
    line-height: 1.2;
  }
}
@media (max-width: 767px) {
  .header-standard .header-wrapper { border-top-width: 3px; }
  .header .logo img { max-height: 56px; max-width: 56px; }
  .header .navbar { gap: 8px; }
  .topbar .top-info { display: flex; flex-wrap: wrap; gap: 4px 12px; }
  .topbar .top-info li { margin: 0; }
  .post .post-body, .xs-footer .footer-widget { padding-left: 0; padding-right: 0; }
  .entry-content h1 { font-size: clamp(1.8rem, 7vw, 2.5rem); line-height: 1.2; }
  .entry-content h2 { font-size: clamp(1.5rem, 6vw, 2rem); line-height: 1.25; }
  .entry-content h3 { font-size: clamp(1.25rem, 5vw, 1.6rem); line-height: 1.3; }
  .xs-footer .footer-widget { margin-bottom: 18px; }
}
@media (max-width: 480px) {
  .header .logo img { max-height: 48px; max-width: 48px; }
  .header .nav-search-area, .header .header-quote { margin-left: 0; }
  .xs-innner-page-banner .banner-title, .banner-area .banner-title {
    font-size: 1.6rem; line-height: 1.2;
  }
}

/* Pied de page inspiré de la référence visuelle, adapté au Sénat. */
.xs-footer.senat-footer {
  position: relative;
  background: radial-gradient(circle at 50% 20%, #1269a9 0%, #0c4e87 44%, #092f63 100%) !important;
  color: #fff !important;
  padding: 0 !important;
}
.senat-footer__flag { height: 12px; background: linear-gradient(90deg, #0797da 0 33.333%, #f7d117 33.333% 66.666%, #ce2b37 66.666% 100%); }
.senat-footer__main { padding-top: 66px; padding-bottom: 60px; }
.senat-footer__column { min-width: 0; margin-bottom: 20px; }
.senat-footer__brand { display: flex; align-items: center; gap: 15px; max-width: 100%; color: #fff !important; }
.senat-footer__brand img { width: 104px; height: 104px; flex: 0 0 104px; border-radius: 50%; object-fit: cover; }
.senat-footer__brand-name { max-width: 145px; font-size: 1.32rem; line-height: 1.08; font-weight: 800; letter-spacing: .015em; border-left: 3px solid #f7d117; padding-left: 13px; }
.senat-footer__brand-name small { display: block; margin-top: 6px; font-size: .65rem; line-height: 1.35; font-weight: 600; letter-spacing: .02em; }
.xs-footer.senat-footer .senat-footer__title { position: relative; color: #fff !important; font-size: 1.35rem; line-height: 1.2; font-weight: 700; margin: 0 0 30px; padding: 0 0 16px; }
.senat-footer__title::after { content: ""; width: 72%; max-width: 185px; height: 1px; position: absolute; bottom: 0; left: 0; background: rgba(255,255,255,.28); }
.senat-footer__location { position: relative; padding-left: 27px; line-height: 1.7; margin: 0 0 14px; }
.senat-footer__location span { position: absolute; left: 2px; top: 0; font-size: 17px; color: #f7d117; }
.xs-footer.senat-footer a { color: #fff !important; }
.xs-footer.senat-footer a:hover, .xs-footer.senat-footer a:focus { color: #f7d117 !important; }
.senat-footer__links, .senat-footer__social { list-style: none; margin: 0; padding: 0; }
.senat-footer__links li { margin: 0 0 9px; }
.senat-footer__links a::before { content: "↗"; display: inline-block; margin-right: 10px; color: #f7d117; }
.senat-footer__social { display: flex; flex-wrap: wrap; gap: 10px; }
.senat-footer__social li a { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; min-width: 40px; border: 1px solid rgba(255,255,255,.4); border-radius: 50%; padding: 8px; }
.senat-footer__contact-link, .senat-footer__news { text-decoration: underline; text-underline-offset: 3px; }
.senat-footer__bottom { background: rgba(0,20,50,.32); padding: 16px 0; font-size: .88rem; }
.senat-footer__back-to-top { z-index: 30; background: #f1f4f8; box-shadow: 0 3px 12px rgba(0,0,0,.2); }
.senat-footer__back-to-top a { display: block; color: #073b65; }
@media (max-width: 991px) {
  .senat-footer__main { padding-top: 46px; padding-bottom: 34px; }
  .senat-footer__column { margin-bottom: 30px; }
}
@media (max-width: 575px) {
  .senat-footer__flag { height: 8px; }
  .senat-footer__main { padding-top: 38px; padding-bottom: 18px; }
  .senat-footer__column { padding-left: 18px; padding-right: 18px; margin-bottom: 26px; }
  .senat-footer__brand img { width: 82px; height: 82px; flex-basis: 82px; }
  .senat-footer__brand-name { font-size: 1.2rem; }
  .xs-footer.senat-footer .senat-footer__title { margin-bottom: 18px; font-size: 1.2rem; }
  .senat-footer__back-to-top { right: 16px; bottom: 16px; }
}

.xs-footer.senat-footer p, .xs-footer.senat-footer li { color: #fff !important; }
.senat-footer__extra { margin-top: 20px; font-size: .92rem; }
.senat-footer__extra .widget-title { color: #fff !important; font-size: 1rem; }
