/* CAPER cart — shared by / and /fr */
.cart-add{
  display:block; width:100%; text-align:center; box-sizing:border-box;
  padding:13px 20px; margin:0 0 10px; border-radius:3px; cursor:pointer;
  background:transparent; color:#062C2F; border:1.5px solid #C9A15A;
  font-family:'Anton',Impact,sans-serif; font-size:16px; letter-spacing:.02em;
  transition:background .15s ease;
}
.cart-add:hover{background:rgba(201,161,90,.14);}
.cart-add:empty{display:none;}
.cart-pair{margin:0 0 10px;}
.cart-pair .cp-cap{text-align:center; font-size:15px; color:rgba(22,22,22,.68); margin:0 0 6px; font-style:italic;}
.cart-pair .cp-row{display:flex; gap:8px;}
.cart-pair .cart-add{flex:1; width:auto; margin:0; padding:11px 8px; font-size:15px;}
.cart-pair-sm{margin:4px 0 0;}
.cart-pair-sm .cp-cap{font-size:14px; margin:0 0 4px;}
.cart-pair-sm .cp-row{justify-content:center; gap:14px;}
.cart-pair-sm .cart-add.cart-add-sm{flex:none; margin:0; padding:2px 0; font-size:15px;}
.cart-add.is-added{background:#E7EFEE; border-color:#0C3A3E;}
.cart-add.cart-add-sm{
  border:none; background:none; padding:2px 0; margin:6px 0 0;
  font-family:'Cormorant Garamond',Georgia,serif; font-size:15px; letter-spacing:0;
  color:rgba(22,22,22,.68); text-decoration:underline; text-decoration-color:rgba(22,22,22,.25);
}
.cart-add.cart-add-sm:hover{background:none; color:#161616;}
.cart-add.cart-add-sm.is-added{background:none; text-decoration:none; color:#0C3A3E; font-weight:600;}

#caper-cart-btn{
  position:fixed; right:18px; bottom:18px; z-index:9000;
  display:flex; align-items:center; gap:10px; padding:12px 18px; border-radius:40px;
  background:#062C2F; color:#F3EFE3; border:1.5px solid #C9A15A; cursor:pointer;
  font-family:'Anton',Impact,sans-serif; font-size:15px; letter-spacing:.03em;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
}
#caper-cart-btn:hover{background:#0C3A3E;}
#caper-cart-btn svg{width:20px; height:20px; stroke:#D9B978; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
#caper-cart-btn .cc-count{
  min-width:22px; height:22px; padding:0 6px; border-radius:11px; background:#C9A15A; color:#062C2F;
  display:inline-flex; align-items:center; justify-content:center; font-size:13px;
}
#caper-cart-btn.is-empty .cc-count{display:none;}

#caper-cart-overlay{
  position:fixed; inset:0; z-index:9001; background:rgba(6,20,22,.55);
  opacity:0; visibility:hidden; transition:opacity .2s ease, visibility .2s;
}
#caper-cart-overlay.open{opacity:1; visibility:visible;}
#caper-cart-drawer{
  position:fixed; top:0; right:0; bottom:0; z-index:9002; width:min(420px,100vw);
  background:#FAF8F3; color:#161616; display:flex; flex-direction:column;
  transform:translateX(100%); transition:transform .25s ease; visibility:hidden;
  box-shadow:-12px 0 40px rgba(0,0,0,.3); font-family:'Cormorant Garamond',Georgia,serif; font-size:18px;
}
#caper-cart-drawer.open{transform:none; visibility:visible;}
.cc-head{display:flex; align-items:center; justify-content:space-between; padding:18px 22px; background:#062C2F; color:#F3EFE3;}
.cc-head h2{margin:0; font-family:'Anton',Impact,sans-serif; font-weight:400; font-size:20px; letter-spacing:.03em;}
.cc-close{background:none; border:none; color:#F3EFE3; font-size:30px; line-height:1; cursor:pointer; padding:0 4px;}
.cc-body{flex:1; overflow-y:auto; padding:18px 22px;}
.cc-empty{color:rgba(22,22,22,.6); text-align:center; margin:40px 0;}
.cc-item{display:flex; gap:12px; align-items:flex-start; padding:12px 0; border-bottom:1px solid rgba(22,22,22,.12);}
.cc-item .cc-name{flex:1; font-weight:600; line-height:1.25;}
.cc-item .cc-lang{display:inline-block; margin-left:6px; padding:1px 7px; border-radius:3px; background:#E7EFEE; color:#0C3A3E; font-family:'Anton',sans-serif; font-size:11px; letter-spacing:.05em; vertical-align:2px;}
.cc-item .cc-price{white-space:nowrap; font-weight:600;}
.cc-item .cc-rm{background:none; border:none; padding:0; margin-top:3px; display:block; color:rgba(22,22,22,.55); font:inherit; font-size:14px; text-decoration:underline; cursor:pointer;}
.cc-save{margin:12px 0 0; padding:9px 12px; background:#F1ECE0; border-left:3px solid #C9A15A; font-size:16px;}
.cc-sug{margin-top:18px;}
.cc-sug h3{margin:0 0 8px; font-family:'Anton',sans-serif; font-weight:400; font-size:14px; letter-spacing:.05em; color:#96702A; text-transform:uppercase;}
.cc-sug .cc-item{border:1px solid rgba(22,22,22,.12); border-radius:4px; padding:10px 12px; margin-bottom:8px; align-items:center;}
.cc-sug button{background:transparent; border:1.5px solid #C9A15A; color:#062C2F; border-radius:3px; padding:6px 12px; cursor:pointer; font-family:'Anton',sans-serif; font-size:13px; white-space:nowrap;}
.cc-foot{padding:16px 22px 22px; border-top:1px solid rgba(22,22,22,.14); background:#fff;}
.cc-total{display:flex; justify-content:space-between; font-size:21px; font-weight:700; margin-bottom:14px;}
.cc-go{width:100%; padding:15px; border:none; border-radius:3px; cursor:pointer; background:#C9A15A; color:#062C2F; font-family:'Anton',Impact,sans-serif; font-size:18px; letter-spacing:.02em;}
.cc-go:hover{background:#D9B978;}
.cc-go[disabled]{opacity:.55; cursor:progress;}
.cc-note{margin:10px 0 0; text-align:center; font-size:14px; color:rgba(22,22,22,.6);}
.cc-err{margin:10px 0 0; color:#9b2c2c; font-size:15px; text-align:center;}
@media (max-width:480px){ #caper-cart-btn{right:12px; bottom:12px;} }

/* ---- solutions guides column, right of the bundle ---- */
#offers .wrap{max-width:1120px;}
.offers{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,.86fr);}
.guides{display:flex; flex-direction:column; gap:26px;}
.case-card.guide{flex:1; padding:30px 18px 18px; text-align:center;}
.case-card.guide .cover{width:74px; margin:0 auto 12px;}
.case-card.guide h3{font-size:19px; line-height:1.15;}
.case-card.guide .desc{font-size:15px; margin:0 0 10px;}
.case-card.guide .price-row{margin-bottom:12px;}
.case-card.guide .price-tag{font-size:26px;}
.case-card.guide .btn{padding:12px 14px; font-size:15px; margin-bottom:10px;}
.case-card.guide .cart-pair{margin:0;}
.case-card.guide .cart-pair .cp-cap{font-size:14px; margin:0 0 5px;}
.case-card.guide .cart-pair .cart-add{padding:9px 4px; font-size:14px;}
@media (max-width:1020px){
  .offers{grid-template-columns:repeat(3,minmax(0,1fr));}
  .guides{grid-column:1 / -1; flex-direction:row;}
  .case-card.guide{padding:30px 22px 20px;}
}
@media (max-width:760px){
  .offers{grid-template-columns:1fr;}
  .guides{flex-direction:column; grid-column:auto;}
  .case-card.guide{padding:32px 26px 24px;}
  .case-card.guide .cover{width:84px;}
}

/* ---- language switch, top of the hero ---- */
.lang-switch{
  position:absolute; top:18px; right:22px; z-index:5; display:flex;
  border:1.5px solid #C9A15A; border-radius:30px; overflow:hidden; background:rgba(6,44,47,.55);
  box-shadow:0 4px 14px rgba(0,0,0,.25);
}
.lang-switch a{
  display:block; padding:9px 18px; text-decoration:none; color:#F3EFE3;
  font-family:'Anton',Impact,sans-serif; font-size:15px; letter-spacing:.04em; line-height:1;
  transition:background .15s ease;
}
.lang-switch a:hover{background:rgba(201,161,90,.25);}
.lang-switch a.on{background:#C9A15A; color:#062C2F; cursor:default; pointer-events:none;}
@media (max-width:520px){ .lang-switch{top:12px; right:12px;} .lang-switch a{padding:8px 14px; font-size:14px;} }

/* language-version buttons may wrap onto two lines on narrow cards */
.cart-pair .cart-add{white-space:normal; line-height:1.15; min-height:48px; display:flex; align-items:center; justify-content:center;}
