/* =========================================================================
   Groupe BARAK — styles globaux partagés par toutes les pages
   ========================================================================= */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Archivo',sans-serif;color:#1B304F;background:#F7F5F1;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
input,textarea,button{font-family:'Archivo',sans-serif;}
::placeholder{color:#9aa3ae;}
a{color:inherit;text-decoration:none;}

@keyframes fadeUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.25;}}
@keyframes barWave{0%,100%{transform:scaleY(.4);}50%{transform:scaleY(1);}}

/* ---- hover / focus ---- */
.lnk-cta{transition:background .18s;}
.lnk-cta:hover{background:#df5f14!important;}
.hero-badge{transition:background .18s;}
.hero-badge:hover{background:rgba(243,112,33,.28)!important;}
.hero-badge-light{transition:background .18s, border-color .18s;}
.hero-badge-light:hover{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.32)!important;}
.card-uni-light{transition:transform .2s, box-shadow .2s;}
.card-uni-light:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,.22);}
.card-uni-dark{transition:background .2s, transform .2s;}
.card-uni-dark:hover{background:rgba(255,255,255,.1)!important;transform:translateY(-3px);}
.card-intend{transition:background .2s;}
.card-intend:hover{background:rgba(255,255,255,.09)!important;}
.lnk-footer{transition:color .15s;}
.lnk-footer:hover{color:#F37021;}
.lnk-wa:hover{color:#25D366;}
.lnk-wa-white:hover{color:#fff;}
.btn-white-contact{transition:background .18s, color .18s;}
.btn-white-contact:hover{background:#1B304F!important;color:#fff!important;}
.wa-float{transition:background .18s, transform .18s;}
.wa-float:hover{background:#1ebe5a!important;transform:translateY(-2px);}
.btn-orange{transition:background .2s;}
.btn-orange:hover{background:#df5f14!important;}
.btn-media{transition:border-color .15s, background .15s;}
.btn-media:hover{border-color:#F37021!important;background:#FFF8F3!important;}
.btn-ballon{transition:background .15s;}
.btn-ballon:hover{background:#FFF3EA!important;}
.fld{transition:border-color .15s, background .15s;}
.fld:focus{border-color:#F37021!important;}
.fld-cream:focus{border-color:#F37021!important;background:#fff!important;}

/* ---- navigation ---- */
header nav a{transition:color .15s;}
header nav a:hover{color:#F37021;}
.nav-active{color:#F37021!important;}

/* ---- menu burger mobile ---- */
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;color:#1B304F;align-items:center;justify-content:center;}
.mobile-menu{display:none;flex-direction:column;background:rgba(247,245,241,.98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #E6E1D8;padding:6px 20px 14px;}
.mobile-menu.open{display:flex;}
.mobile-menu a{padding:13px 2px;font-size:16px;font-weight:600;border-bottom:1px solid #EFEBE3;}
.mobile-menu a:last-child{border-bottom:none;}

@media (min-width:681px) and (max-width:980px){
  header nav{gap:16px!important;font-size:13.5px!important;}
  h1{font-size:48px!important;}
}
@media (max-width:680px){
  header nav{display:none!important;}
  .burger{display:inline-flex!important;}
  h1{font-size:33px!important;line-height:1.07!important;}
  h2{font-size:26px!important;line-height:1.14!important;}
  section:not(#top){padding-left:20px!important;padding-right:20px!important;}
  #top > div{padding-left:20px!important;padding-right:20px!important;}
}
@media (min-width:681px){
  .mobile-menu{display:none!important;}
}
@media (max-width:1120px){
  #intendance h2{white-space:normal!important;}
}

/* ---- pages légales ---- */
.legal{color:#3a4a5e;font-size:15.5px;line-height:1.7;}
.legal h2{font-size:20px;font-weight:800;color:#1B304F;margin:34px 0 10px;letter-spacing:-.01em;}
.legal p{margin:0 0 14px;}
.legal ul{margin:0 0 14px;padding-left:20px;}
.legal li{margin-bottom:7px;}
.legal strong{color:#1B304F;}
.legal a{color:#F37021;font-weight:600;}
.legal a:hover{text-decoration:underline;}
.todo{background:#FFF3EA;color:#9a4f1c;padding:0 5px;border-radius:4px;font-weight:600;}
