/*
Theme Name: Cap Africa Editorial V2
Theme URI: https://cap-africa.local
Author: N&J Social Lab
Description: Thème WordPress Cap Africa inspiré des maquettes fournies : fond parchemin, visuels immersifs, destinations administrables et formulaire devis en étapes.
Version: 2.0.0
Text Domain: cap-africa-editorial
*/
:root{--ca-ink:#4a2719;--ca-brown:#774025;--ca-copper:#b96832;--ca-copper-dark:#8b421d;--ca-gold:#d99a52;--ca-paper:#ecd2c2;--ca-paper-light:#f4e5d9;--ca-paper-soft:#f7eee7;--ca-line:rgba(119,64,37,.28);--ca-white:#fffaf6;--ca-shadow:0 22px 60px rgba(64,29,14,.18);--ca-radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ca-ink);background:radial-gradient(circle at 20% 0%,rgba(255,255,255,.38),transparent 36rem),linear-gradient(180deg,#f2dfd1,#e6c7b5 45%,#eed6c8);font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:1.45}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.18;background:repeating-linear-gradient(0deg,rgba(90,45,25,.08) 0 1px,transparent 1px 4px),radial-gradient(circle at 70% 20%,rgba(255,255,255,.28),transparent 28rem)}img{max-width:100%;height:auto;display:block}a{color:inherit}.ca-container{width:min(1120px,calc(100% - 44px));margin-inline:auto}.ca-header{position:fixed;z-index:1000;inset:0 0 auto 0;padding:14px 0;transition:.25s ease}.admin-bar .ca-header{top:32px}.ca-header.is-scrolled{background:rgba(65,30,18,.82);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(52,22,12,.18)}.ca-nav{display:flex;justify-content:space-between;align-items:center;gap:20px}.ca-logo img{height:58px;width:auto}.ca-menu{display:flex;align-items:center;gap:26px;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#fff7ef;text-shadow:0 1px 8px rgba(0,0,0,.35)}.ca-menu a{text-decoration:none}.ca-menu a:hover{color:#ffd29a}.ca-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 25px;border:0;border-radius:11px;background:linear-gradient(180deg,#cf7b39,#9f4f23);color:white;font-family:Inter,system-ui,sans-serif;font-size:15px;font-weight:800;text-decoration:none;box-shadow:0 14px 28px rgba(126,59,26,.28),inset 0 1px rgba(255,255,255,.25);cursor:pointer;transition:.18s ease}.ca-btn:hover{transform:translateY(-2px);filter:saturate(1.05)}.ca-btn.ca-btn-soft{color:var(--ca-brown);background:rgba(255,246,237,.74);box-shadow:inset 0 0 0 1px rgba(119,64,37,.24)}.ca-page{overflow:hidden}.ca-hero{min-height:760px;display:flex;align-items:center;justify-content:center;text-align:center;color:white;position:relative;background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.1) 48%,rgba(51,25,13,.28)),url('assets/images/home-index.jpg') center top/cover no-repeat}.ca-hero:after{content:"";position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(0deg,#f1dccf,transparent)}.ca-hero-inner{width:min(960px,calc(100% - 36px));padding:120px 0 60px;transform:translateY(-18px)}.ca-hero-logo{margin:0 auto 32px;max-width:min(520px,82vw);filter:drop-shadow(0 10px 22px rgba(0,0,0,.42))}.ca-hero h1,.ca-destination-hero h1,.ca-form-visual h1{margin:0;font-size:clamp(38px,7vw,86px);line-height:.95;color:#fff8ef;font-weight:600;font-style:italic;text-shadow:0 3px 12px rgba(0,0,0,.45)}.ca-hero h1{font-size:clamp(38px,6vw,72px);max-width:760px;margin-inline:auto}.ca-hero p{color:#fff8ef;font-size:clamp(22px,2.6vw,32px);max-width:760px;margin:18px auto 26px;text-shadow:0 2px 10px rgba(0,0,0,.4)}.ca-paper{position:relative;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,.5),transparent 34rem),linear-gradient(180deg,rgba(255,249,244,.83),rgba(235,205,187,.78))}.ca-paper:before{content:"";position:absolute;inset:0;opacity:.15;pointer-events:none;background:repeating-linear-gradient(90deg,rgba(80,42,26,.08) 0 1px,transparent 1px 5px)}.ca-section{position:relative;padding:72px 0}.ca-title{display:flex;align-items:center;justify-content:center;gap:26px;font-size:clamp(34px,4vw,48px);line-height:1.05;font-weight:700;color:var(--ca-ink);text-align:center;margin:0 0 34px}.ca-title:before,.ca-title:after{content:"";flex:1;max-width:260px;height:1px;background:linear-gradient(90deg,transparent,var(--ca-line),transparent)}.ca-intro-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:58px}.ca-intro h2{margin:0 0 18px;font-size:clamp(32px,4vw,48px);line-height:1.05}.ca-intro .rule{width:210px;height:1px;background:var(--ca-line);margin:20px 0}.ca-intro p{margin:0 0 10px;font-family:Inter,system-ui,sans-serif;font-size:16px;color:#4f342a}.ca-lion{border-radius:0;overflow:hidden;box-shadow:var(--ca-shadow);min-height:250px;background:url('assets/images/destination-tanzanie.jpg') center 26%/cover no-repeat}.ca-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:58px;background:rgba(255,250,246,.52);border-top:1px solid var(--ca-line);border-bottom:1px solid var(--ca-line)}.ca-pillar{text-align:center;padding:28px 26px;border-right:1px solid var(--ca-line)}.ca-pillar:last-child{border-right:0}.ca-icon{width:50px;height:50px;border-radius:50%;border:2px solid var(--ca-copper);color:var(--ca-copper);display:inline-flex;align-items:center;justify-content:center;font-family:Inter,system-ui,sans-serif;font-weight:800;margin-bottom:13px}.ca-pillar h3{font-size:25px;margin:0 0 8px}.ca-pillar p{font-family:Inter,system-ui,sans-serif;font-size:13px;color:#6f5044;margin:0}.ca-dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ca-dest-card{position:relative;min-height:210px;border-radius:3px;overflow:hidden;color:#fff8ef;display:flex;align-items:flex-end;box-shadow:0 12px 34px rgba(89,42,23,.2);text-decoration:none;background:#6f3b20}.ca-dest-card:before{content:"";position:absolute;inset:0;background:var(--bg) center/cover no-repeat;transition:.45s ease}.ca-dest-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.58))}.ca-dest-card:hover:before{transform:scale(1.06)}.ca-dest-card h3{position:relative;z-index:1;width:100%;text-align:center;font-size:35px;margin:0;padding:54px 12px 20px;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.5)}.ca-travel-types{color:white;padding:44px 0;background:linear-gradient(180deg,rgba(151,71,24,.86),rgba(139,63,23,.92)),url('assets/images/home-index.jpg') center 60%/cover no-repeat}.ca-travel-types h2{color:white;margin:0 0 30px;text-align:center;font-size:42px;font-weight:600}.ca-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-left:1px solid rgba(255,255,255,.3)}.ca-type{text-align:center;padding:10px 24px;border-right:1px solid rgba(255,255,255,.32);font-family:Inter,system-ui,sans-serif;font-weight:800}.ca-type .ca-icon{color:white;border-color:rgba(255,255,255,.65)}.ca-quote-band{min-height:250px;display:flex;align-items:center;text-align:center;color:white;background:linear-gradient(180deg,rgba(86,39,17,.15),rgba(86,39,17,.2)),url('assets/images/home-index.jpg') center bottom/cover no-repeat}.ca-quote-band p{font-size:clamp(30px,4vw,52px);font-style:italic;line-height:1.12;max-width:960px;margin:0 auto;color:#fff8ef;text-shadow:0 2px 12px rgba(0,0,0,.5)}.ca-behind{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:center}.ca-team-img{min-height:270px;border-radius:4px;box-shadow:var(--ca-shadow);background:url('assets/images/home-index.jpg') 50% 86%/cover no-repeat}.ca-behind h2{font-size:36px;margin:0 0 14px}.ca-behind p{font-family:Inter,system-ui,sans-serif;font-size:16px;color:#5f453b}.ca-form-section{padding:0 0 80px}.ca-form-visual{min-height:360px;display:flex;align-items:center;justify-content:center;text-align:center;color:white;background:linear-gradient(180deg,rgba(94,42,19,.1),rgba(94,42,19,.25)),url('assets/images/form-destination.jpg') center top/cover no-repeat}.ca-form-visual h1{font-size:clamp(42px,6vw,68px)}.ca-form-wrap{width:min(1060px,calc(100% - 32px));margin:-16px auto 0;position:relative;z-index:2}.ca-progress{display:flex;justify-content:center;gap:8px;margin-bottom:38px;flex-wrap:wrap}.ca-step-tab{display:inline-flex;align-items:center;gap:9px;padding:9px 16px;min-height:42px;border-radius:22px;background:rgba(255,246,237,.66);border:1px solid rgba(119,64,37,.17);color:#79513f;font-family:Inter,system-ui,sans-serif;font-weight:750;box-shadow:inset 0 1px rgba(255,255,255,.42);cursor:pointer}.ca-step-tab b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#d8a87d;color:white}.ca-step-tab.is-active{background:linear-gradient(180deg,#bd6f38,#8d4322);color:white;box-shadow:0 10px 22px rgba(133,60,28,.24)}.ca-step-tab.is-active b{background:rgba(255,255,255,.22)}.ca-form-card{background:rgba(246,226,212,.84);border:1px solid rgba(119,64,37,.15);box-shadow:var(--ca-shadow);padding:42px;border-radius:18px}.ca-form-step{display:none}.ca-form-step.is-active{display:block}.ca-form-step h2{display:flex;align-items:center;justify-content:center;gap:24px;font-size:clamp(34px,4vw,50px);text-align:center;margin:0 0 34px}.ca-form-step h2:before,.ca-form-step h2:after{content:"";height:1px;background:var(--ca-line);flex:1;max-width:230px}.ca-help{text-align:center;font-family:Inter,system-ui,sans-serif;color:#6b4a3d;font-size:17px;max-width:760px;margin:0 auto 30px}.ca-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ca-choice{position:relative;display:block;min-height:175px;border-radius:6px;overflow:hidden;cursor:pointer;box-shadow:0 10px 24px rgba(76,35,18,.18);background:#9b5a30}.ca-choice input{position:absolute;opacity:0;pointer-events:none}.ca-choice span{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:22px 10px;color:white;font-size:30px;line-height:1;text-align:center;text-shadow:0 2px 10px rgba(0,0,0,.55);background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.58));z-index:2}.ca-choice:before{content:"";position:absolute;inset:0;background:var(--choice-bg,linear-gradient(135deg,#a65b2b,#4d2918)) center/cover no-repeat;transition:.35s ease}.ca-choice:hover:before{transform:scale(1.06)}.ca-choice input:checked+span{box-shadow:inset 0 0 0 5px #c7733a;background:linear-gradient(180deg,rgba(87,37,13,.08),rgba(112,46,18,.74))}.ca-choice.is-simple{min-height:112px;background:rgba(255,246,237,.58)}.ca-choice.is-simple:before{display:none}.ca-choice.is-simple span{position:relative;inset:auto;min-height:112px;color:var(--ca-ink);font-size:28px;text-shadow:none;background:rgba(255,246,237,.52);border:1px solid rgba(119,64,37,.16);box-shadow:none}.ca-choice.is-simple input:checked+span{background:#f4d4bd;box-shadow:inset 0 0 0 4px #c7733a}.ca-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.ca-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ca-field{display:flex;flex-direction:column;gap:8px;margin-bottom:18px;font-family:Inter,system-ui,sans-serif}.ca-field label{font-weight:800;color:#614134}.ca-field input,.ca-field select,.ca-field textarea{width:100%;min-height:60px;border:1px solid rgba(119,64,37,.24);background:rgba(255,250,246,.65);border-radius:8px;padding:14px 16px;font:inherit;font-size:18px;color:#5a382d}.ca-field textarea{min-height:145px;resize:vertical}.ca-actions{display:flex;justify-content:center;gap:14px;margin-top:34px}.ca-note{margin:28px auto 0;max-width:900px;border:1px solid rgba(119,64,37,.22);border-radius:10px;background:rgba(255,246,237,.42);padding:18px;text-align:center;font-family:Inter,system-ui,sans-serif;color:#6a4738}.ca-alert{padding:16px 18px;border-radius:10px;font-family:Inter,system-ui,sans-serif;font-weight:800;margin-bottom:24px;text-align:center}.ca-success{background:#e7f5e9;color:#166534}.ca-error{background:#fff0ed;color:#991b1b}.ca-destination-hero{min-height:620px;display:flex;align-items:flex-start;justify-content:center;text-align:center;color:white;padding-top:70px;background:var(--hero-img) center top/cover no-repeat}.ca-destination-hero .ca-container{padding-top:60px}.ca-destination-hero h1{font-size:clamp(58px,8vw,94px)}.ca-destination-hero h2{color:#fff8ef;font-size:clamp(28px,4vw,43px);font-style:italic;font-weight:600;margin:12px 0 6px;text-shadow:0 3px 10px rgba(0,0,0,.35)}.ca-destination-hero p{color:#fff8ef;font-size:26px;max-width:800px;margin:18px auto 0;text-shadow:0 2px 10px rgba(0,0,0,.4)}.ca-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 44px}.ca-info-item{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:center}.ca-info-icon{width:52px;height:52px;border-radius:50%;border:2px solid var(--ca-brown);color:var(--ca-brown);background:#e7bd91;display:grid;place-items:center;font-family:Inter,system-ui,sans-serif;font-weight:900}.ca-info-item h3{font-size:27px;margin:0;line-height:1.1}.ca-info-item p{font-family:Inter,system-ui,sans-serif;font-size:15px;margin:4px 0 0;color:#6d4b3d}.ca-experience-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.ca-exp-img{min-height:160px;background:var(--exp-bg) center/cover no-repeat;box-shadow:0 10px 24px rgba(76,35,18,.15)}.ca-exp-caption{text-align:center;font-size:20px;line-height:1.08;margin-top:10px}.ca-season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.ca-season{display:grid;grid-template-columns:52px 1fr;gap:15px;align-items:start;padding:0 18px;border-right:1px solid var(--ca-line)}.ca-season:last-child{border-right:0}.ca-season h3{font-size:30px;margin:0}.ca-season p{font-family:Inter,system-ui,sans-serif;font-size:15px;color:#6d4b3d;margin:4px 0 0}.ca-travel-mode{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px}.ca-mode-card{display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:center}.ca-mode-card h3{font-size:34px;margin:0;line-height:1.12}.ca-mode-img{min-height:260px;background:url('assets/images/destination-ethiopie.png') center bottom/cover no-repeat;opacity:.9;border-radius:6px}.ca-footer{background:#4c2618;color:#fff3e8;padding:48px 0 26px;font-family:Inter,system-ui,sans-serif}.ca-footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:34px;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:32px}.ca-footer img{max-width:300px;margin-bottom:18px}.ca-footer h3{font-size:13px;text-transform:uppercase;letter-spacing:.16em;color:#e6ae76}.ca-footer a{display:block;text-decoration:none;color:#ffe7d2;margin:0 0 9px}.ca-footer p{color:#f6d9c4;font-size:14px;max-width:470px}.ca-copy{padding-top:22px;font-size:13px;color:#e7c2ab}@media(max-width:1020px){.ca-menu{display:none}.ca-intro-grid,.ca-behind,.ca-travel-mode{grid-template-columns:1fr}.ca-dest-grid,.ca-choice-grid{grid-template-columns:repeat(2,1fr)}.ca-footer-grid{grid-template-columns:1fr}}@media(max-width:760px){body{font-size:17px}.ca-container{width:min(100% - 28px,1120px)}.ca-logo img{height:48px}.ca-hero{min-height:640px;background-position:center top}.ca-hero-logo{max-width:310px}.ca-section{padding:54px 0}.ca-title{gap:12px}.ca-title:before,.ca-title:after{max-width:72px}.ca-pillars,.ca-type-grid,.ca-info-grid,.ca-experience-strip,.ca-season-grid,.ca-grid-2,.ca-grid-3{grid-template-columns:1fr}.ca-pillar,.ca-type,.ca-season{border-right:0;border-bottom:1px solid var(--ca-line)}.ca-dest-grid,.ca-choice-grid{grid-template-columns:1fr}.ca-choice{min-height:150px}.ca-form-card{padding:26px 18px}.ca-step-tab{font-size:12px;padding:8px 10px}.ca-destination-hero{min-height:500px}}
/* À PROPOS — 5 points Cap Africa */
.ca-pillars.ca-pillars-5 {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin-top: 58px !important;
  background: rgba(255, 250, 246, 0.52) !important;
  border-top: 1px solid var(--ca-line) !important;
  border-bottom: 1px solid var(--ca-line) !important;
}

.ca-pillars.ca-pillars-5 .ca-pillar {
  text-align: center !important;
  padding: 38px 24px !important;
  border-right: 1px solid var(--ca-line) !important;
  border-bottom: 0 !important;
}

.ca-pillars.ca-pillars-5 .ca-pillar:last-child {
  border-right: 0 !important;
}

.ca-pillars.ca-pillars-5 .ca-icon.ca-icon-img {
  width: 92px !important;
  height: 92px !important;
  margin: 0 auto 22px !important;
  border: 3px solid var(--ca-copper) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
}

.ca-pillars.ca-pillars-5 .ca-icon.ca-icon-img img {
  width: 42px !important;
  height: 42px !important;
  object-fit: contain !important;
  display: block !important;
  filter: none !important;
}

.ca-pillars.ca-pillars-5 .ca-pillar h3 {
  font-size: 24px !important;
  line-height: 1.08 !important;
  margin: 0 0 12px !important;
  color: var(--ca-ink) !important;
}

.ca-pillars.ca-pillars-5 .ca-pillar p {
  font-family: Inter, system-ui, sans-serif !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #6f5044 !important;
  margin: 0 auto !important;
  max-width: 220px !important;
}

/* Responsive tablette */
@media (max-width: 1200px) {
  .ca-pillars.ca-pillars-5 {
    grid-template-columns: repeat(3, 1fr) !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar:nth-child(3) {
    border-right: 0 !important;
  }
}

/* Responsive tablette petite */
@media (max-width: 900px) {
  .ca-pillars.ca-pillars-5 {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar {
    border-right: 1px solid var(--ca-line) !important;
    border-bottom: 1px solid var(--ca-line) !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar:nth-child(2n) {
    border-right: 0 !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar:last-child {
    border-bottom: 0 !important;
  }
}

/* Responsive mobile */
@media (max-width: 640px) {
  .ca-pillars.ca-pillars-5 {
    grid-template-columns: 1fr !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar {
    border-right: 0 !important;
    border-bottom: 1px solid var(--ca-line) !important;
    padding: 34px 22px !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar:last-child {
    border-bottom: 0 !important;
  }

  .ca-pillars.ca-pillars-5 .ca-icon.ca-icon-img {
    width: 78px !important;
    height: 78px !important;
    margin-bottom: 18px !important;
  }

  .ca-pillars.ca-pillars-5 .ca-icon.ca-icon-img img {
    width: 36px !important;
    height: 36px !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar h3 {
    font-size: 26px !important;
  }

  .ca-pillars.ca-pillars-5 .ca-pillar p {
    font-size: 15px !important;
    max-width: 320px !important;
  }
}
/* Vidéo bandeau accueil */
.ca-hero-video-section {
  position: relative;
  overflow: hidden;
  background-image: none !important;
}

.ca-hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.ca-hero-video-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(55, 24, 10, 0.32);
  z-index: 1;
  pointer-events: none;
}

.ca-hero-video-section::after {
  z-index: 2;
}

.ca-hero-video-section .ca-hero-inner {
  position: relative;
  z-index: 3;
}
