/**
 * Chambre de Commerce et des Projets du Canada (CCP-CANADA)
 * Palette issue du logo : marine #1A2B4C, rouge #E31B23, gris #666666
 */
:root {
  --ccp-navy: #1a2b4c;
  --ccp-red: #e31b23;
  --ccp-gray: #666666;
  --color-primary: #1a2b4c;
  --color-secondary: #1a2b4c;
  --color-blue: #e31b23;
  --color-sky: #1a2b4c;
  --color-heading-1: #1a2b4c;
  --color-title: #1a2b4c;
  --color-heading-dark: #1a2b4c;
  --color-body: #5d666f;
}

.ccp-site .header-main-one-wrapper .thumbnail a {
  display: flex;
  align-items: center;
}

.ccp-site .header-main-one-wrapper .thumbnail img,
.ccp-site .rts-sidebar-menu-desktop .logo-1 img {
  max-height: 58px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Navigation : typographie et espacement alignés sur le thème Invena */
.ccp-site .nav-area ul {
  gap: clamp(22px, 2.4vw, 48px);
}

.ccp-site .nav-area ul li a,
.ccp-site header .main-nav > a {
  font-family: var(--font-primary), "Red Hat Display", system-ui, sans-serif;
  font-weight: 600;
  letter-spacing: -0.01em;
}

.ccp-site .header-one .nav-area {
  margin-right: clamp(24px, 4vw, 80px);
}

.ccp-site .pre-title span {
  color: var(--ccp-red);
}

/* Filigrane « gros titre » des sections : proche du rendu d’origine, teinte marine légère */
.ccp-site .title-style-two .bg-content {
  -webkit-text-stroke-color: rgba(26, 43, 76, 0.11);
}

.ccp-site #soumission-express textarea {
  min-height: 100px;
}

.ccp-site .rts-breadcrumb-area .bg-title {
  color: rgba(26, 43, 76, 0.12);
}

/* ——— Pieds de page : textes discrets, pas de gros blocs colorés ——— */

.ccp-site .map-information-2-footer .ccp-footer-map-title {
  margin: 0 0 10px;
  font-family: var(--font-primary), "Red Hat Display", system-ui, sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  color: #2c3544;
  line-height: 1.3;
}

.ccp-site .map-information-2-footer .contact-information-main-wrapper .signle-contact-information {
  margin-bottom: 28px;
}

.ccp-site .map-information-2-footer .contact-information-main-wrapper .signle-contact-information .information-wrapper span {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6b7280;
  margin-bottom: 6px;
}

.ccp-site .map-information-2-footer .ccp-footer-contact-value {
  display: inline-block;
  font-size: 15px;
  font-weight: 500;
  color: #1c2539;
  line-height: 1.45;
  text-decoration: none;
}

.ccp-site .map-information-2-footer .ccp-footer-contact-value--block {
  display: block;
}

.ccp-site .map-information-2-footer a.ccp-footer-contact-value:hover {
  color: #111032;
}

/* Colonnes footer sombre (footer-two) : titres de colonne plus petits */
.ccp-site .footer-two .footer-one-single-wized .wized-title .title,
.ccp-site .footer-two .footer-one-single-wized .wized-title p.title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #fff;
}

/* Footer pages contact / FAQ (footer-8) */
/* Couleur de fond de secours (l'image 05.webp est absente) */
.ccp-site .footer-8-area-bg {
  background-color: #1a2b4c;
}

.ccp-site .footer-8-area-bg .footer-one-single-wized .wized-title .title,
.ccp-site .footer-8-area-bg .footer-one-single-wized .wized-title p.title {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  display: block;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  margin-bottom: 0;
}

.ccp-site .footer-8-area-bg .footer-one-single-wized .wized-title {
  margin-bottom: 22px;
}

.ccp-site .footer-8-area-bg .footer-one-single-wized .signle-footer-contact-8 .inner-content .title {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(255, 255, 255, 0.72);
}

.ccp-site .footer-8-area-bg .footer-one-single-wized .signle-footer-contact-8 .inner-content a {
  font-size: 15px;
  font-weight: 500;
  color: #d1d5db;
}

.ccp-site .footer-8-area-bg .footer-one-single-wized .signle-footer-contact-8 .inner-content a:hover {
  color: #fff;
}

/* Bouton infolettre (footer-two) : neutre, pas rouge */
.ccp-site .footer-two .update-wrapper .email-footer-area button {
  background: #2c3544;
  color: #fff;
}

.ccp-site .footer-two .update-wrapper .email-footer-area button:hover {
  background: #1c2539;
}

/* Boutons : accent rouge du logo (sans modifier tout le --color-primary du thème) */
.ccp-site .rts-btn.btn-primary {
  background: var(--ccp-red);
  color: #fff;
}

.ccp-site .rts-btn.btn-primary:hover {
  background: #f2f2f2;
  color: var(--ccp-navy);
}

.ccp-site .rts-btn.btn-primary.btn-white {
  background: #f2f2f2;
  color: var(--ccp-navy);
}

.ccp-site .rts-btn.btn-primary.btn-white::before {
  background: var(--ccp-navy);
}

.ccp-site .rts-btn.btn-primary.btn-white:hover {
  background: var(--ccp-navy);
  color: #f2f2f2;
}

/* ——— Pages intérieures ——— */
.ccp-page-main {
  padding-top: 0;
}

.ccp-value-card {
  background: #f8f9fb;
  border-radius: 12px;
  padding: 28px 24px;
  height: 100%;
  border: 1px solid #eef0f3;
}

.ccp-value-card .title {
  font-size: 20px;
  margin-bottom: 12px;
  color: var(--ccp-navy);
}

.ccp-check-list {
  max-width: 720px;
  margin: 0 auto;
  padding-left: 1.25rem;
  line-height: 1.9;
}

.ccp-check-list li {
  margin-bottom: 8px;
}

.ccp-process-steps {
  max-width: 820px;
  margin: 0 auto;
}

.ccp-process-step {
  display: flex;
  gap: 24px;
  align-items: flex-start;
  margin-bottom: 32px;
  padding-bottom: 32px;
  border-bottom: 1px solid #eef0f3;
}

.ccp-process-step:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.ccp-process-num {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--ccp-navy);
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  font-family: var(--font-primary), "Red Hat Display", sans-serif;
}

.ccp-process-step .title {
  font-size: 22px;
  margin-bottom: 10px;
}

.ccp-doc-box {
  background: #f8f9fb;
  border-radius: 12px;
  padding: 32px;
  border: 1px solid #eef0f3;
}

.ccp-form-projet textarea {
  min-height: 140px;
}

.ccp-footer-contact-inline {
  font-size: 15px;
  font-weight: 500;
  color: #d1d5db;
  line-height: 1.45;
}

.ccp-footer-hours {
  margin-top: 16px;
  font-size: 14px;
  color: #9ca3af !important;
}

.ccp-footer .disc {
  color: #9ca3af;
  line-height: 1.65;
}

.ccp-cta-inline {
  background: var(--ccp-navy);
  padding: 48px 0;
  margin-top: 40px;
}

.ccp-cta-inline .title,
.ccp-cta-inline span {
  color: #fff;
}

.ccp-cta-inline span.pre {
  opacity: 0.85;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ccp-faq-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ccp-faq-item {
  background: #f8f9fb;
  border: 1px solid #eef0f3;
  border-radius: 10px;
  padding: 0 20px;
}

.ccp-faq-item summary {
  cursor: pointer;
  font-weight: 600;
  font-family: var(--font-primary), "Red Hat Display", sans-serif;
  color: var(--ccp-navy);
  padding: 18px 0;
  list-style: none;
}

.ccp-faq-item summary::-webkit-details-marker {
  display: none;
}

.ccp-faq-item[open] summary {
  border-bottom: 1px solid #eef0f3;
}

.ccp-faq-item p {
  padding: 0 0 18px;
  margin: 0;
  line-height: 1.65;
  color: var(--color-body);
}

.ccp-site .rtl-ltr-switcher-btn {
  display: none !important;
}

/* ===== Hero pages intérieures — disposition en deux colonnes ===== */
.ccp-page-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  min-height: 540px;
  display: flex;
  align-items: center;
  position: relative;
  padding: 80px 0;
}

.ccp-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, rgba(26, 43, 76, 0.94) 0%, rgba(26, 43, 76, 0.80) 55%, rgba(26, 43, 76, 0.42) 100%);
  z-index: 0;
}

.ccp-page-hero > .max-w-\[1335px\] {
  position: relative;
  z-index: 1;
  width: 100%;
}

/* Pre-title */
.ccp-page-hero .hero-pre {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.70);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.ccp-page-hero .hero-pre::before {
  content: "";
  display: inline-block;
  width: 32px;
  height: 2px;
  background: var(--ccp-red);
  flex-shrink: 0;
}

.ccp-page-hero .hero-pre span {
  color: var(--ccp-red);
}

/* Title */
.ccp-page-hero h1 {
  color: #fff;
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.16;
  margin-bottom: 22px;
}

/* Description */
.ccp-page-hero p.disc {
  color: rgba(255, 255, 255, 0.82);
  font-size: 16px;
  line-height: 1.75;
  margin-bottom: 34px;
  max-width: 520px;
}

/* Action buttons */
.ccp-page-hero .hero-btns {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}

.ccp-page-hero .rts-btn.btn-border {
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
}

.ccp-page-hero .rts-btn.btn-border:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.7);
}

/* Breadcrumb nav */
.ccp-breadcrumb-nav {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.60);
}

.ccp-breadcrumb-nav a {
  color: rgba(255, 255, 255, 0.60);
  text-decoration: none;
  transition: color 0.2s;
}

.ccp-breadcrumb-nav a:hover {
  color: #fff;
}

.ccp-breadcrumb-nav .sep {
  font-size: 9px;
}

.ccp-breadcrumb-nav .current {
  color: var(--ccp-red);
  font-weight: 500;
}

/* Stats card — colonne droite */
.ccp-hero-card {
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 18px;
  padding: 32px 26px;
}

.ccp-hero-card-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.09);
}

.ccp-hero-card-item:first-child {
  padding-top: 0;
}

.ccp-hero-card-item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.ccp-hero-card-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: var(--ccp-red);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 18px;
  color: #fff;
}

.ccp-hero-card-text .val {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  line-height: 1.15;
  font-family: var(--font-primary), "Red Hat Display", sans-serif;
}

.ccp-hero-card-text .lbl {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.60);
  margin-top: 3px;
  line-height: 1.4;
}

/* Responsive */
@media only screen and (max-width: 991px) {
  .ccp-hero-card { display: none; }
  .ccp-page-hero { min-height: 420px; padding: 60px 0; }
}

@media only screen and (max-width: 575px) {
  .ccp-page-hero { min-height: 360px; padding: 50px 0; }
  .ccp-page-hero p.disc { max-width: 100%; }
}

/* Image de fond par page */
.ccp-hero-apropos    { background-image: url(../images/banner/06.webp); }
.ccp-hero-activites  { background-image: url(../images/banner/07.webp); }
.ccp-hero-processus  { background-image: url(../images/banner/08.webp); }
.ccp-hero-soumission { background-image: url(../images/banner/09.webp); }
.ccp-hero-faq        { background-image: url(../images/banner/10.webp); }
.ccp-hero-contact    { background-image: url(../images/banner/13.webp); }
