/* En-tête public OPTIMYS — source unique de cohérence visuelle */
.navbar .container{max-width:1440px;padding-inline:clamp(18px,3vw,48px)}
.navbar .navbar-inner{display:flex;align-items:center;gap:clamp(18px,2vw,34px);flex-wrap:nowrap;min-width:0}
.navbar .navbar-logo{order:1;flex:0 0 auto}
.navbar .logo-img{display:block;width:auto;height:56px;object-fit:contain}
.navbar .nav-links{order:2;display:flex;align-items:center;gap:clamp(14px,1.45vw,24px);margin-left:auto;min-width:0;flex-wrap:nowrap}
.navbar .nav-links li,.navbar .nav-links a{white-space:nowrap;flex:0 0 auto}
.navbar .nav-links a{font-size:clamp(13px,.95vw,15px)}
.navbar .nav-actions{order:3;display:flex!important;align-items:center;flex:0 0 auto}
.navbar .hamburger{order:4;flex:0 0 auto;margin-left:0}

.navbar .btn-tel{min-width:164px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:10px 15px;white-space:nowrap;border:1px solid rgba(255,255,255,.22);background:transparent;color:#fff;transition:border-color .18s ease,background .18s ease,color .18s ease}
.navbar .btn-tel:hover,.navbar .btn-tel:focus-visible{border-color:var(--orange-500,#f07020);background:rgba(240,112,32,.1);color:#fff}
.navbar .btn-tel-ico{display:inline-flex;color:var(--orange-500,#f07020)}
.navbar .btn-tel-txt{position:relative;display:inline-grid!important}
.navbar .btn-tel-a,.navbar .btn-tel-b{grid-area:1/1;transition:opacity .18s ease,transform .18s ease}
.navbar .btn-tel-b{opacity:0;transform:translateY(3px);font-variant-numeric:tabular-nums}
.navbar .btn-tel:hover .btn-tel-a,.navbar .btn-tel:focus-visible .btn-tel-a{opacity:0;transform:translateY(-3px)}
.navbar .btn-tel:hover .btn-tel-b,.navbar .btn-tel:focus-visible .btn-tel-b{opacity:1;transform:none}

@media (min-width:1281px){
  .navbar .nav-links{display:flex!important}
  .navbar .hamburger{display:none!important}
}
@media (max-width:1280px){
  .navbar .nav-links{display:none!important}
  .navbar .nav-actions{margin-left:auto;margin-right:10px}
  .navbar .hamburger{display:flex!important}
}
@media (max-width:520px){
  .navbar .container{padding-inline:14px}
  .navbar .navbar-inner{gap:7px!important}
  .navbar .logo-img{height:43px;max-width:122px}
  .navbar .btn-tel{min-width:124px;padding:8px 9px;font-size:12.5px}
  .navbar .nav-actions{margin-left:auto!important;margin-right:2px!important}
  .navbar .hamburger{margin:0!important}
}
@media (max-width:370px){
  .navbar .btn-tel-txt{display:none!important}
  .navbar .btn-tel{min-width:42px}
}

/* Pictogrammes linéaires communs, en remplacement des emojis natifs. */
.site-icon{width:1.35em;height:1.35em;display:inline-grid;place-items:center;flex:0 0 auto;vertical-align:-.22em;color:var(--orange-500,#f07020)}
.site-icon svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-icon--lg{width:2.65rem;height:2.65rem;padding:.58rem;border-radius:.8rem;background:rgba(240,112,32,.08);border:1px solid rgba(240,112,32,.26);vertical-align:middle}

/* Garde-fous responsive des pages transactionnelles et légales. */
@media (max-width:640px){
  .sign-block{padding:20px!important;min-width:0;max-width:100%;box-sizing:border-box}
  .sign-block [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr!important}
  .unlock-layout,.payment-layout{grid-template-columns:minmax(0,1fr)!important;max-width:100%;min-width:0}
  .unlock-layout>*,.payment-layout>*{min-width:0!important;max-width:100%!important}
  .preview-card,.payment-block,.order-recap,.livrable-preview,.payment-card{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box}
  .sign-block .btn,.payment-card .btn,.payment-card #pay-btn-text{white-space:normal!important;height:auto!important;line-height:1.35;text-align:center}
  .data-table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;box-sizing:border-box}
}
