/* ARGENTALIS — final production polish
   Only small scale/readability safeguards. No redesign. */

/* Slightly reduce the perceived scale of the site while preserving layout. */
html{font-size:15px!important}
@media(max-width:900px){html{font-size:14.6px!important}}
@media(max-width:520px){html{font-size:14.3px!important}}

/* Keep all interactive labels inside their controls. */
a.btn,button.btn,.btn,
.arg-ref-nav-cta,.result-cta,.final-cta-button,.guide-cta,.contact-submit,
[class*="cta"]{
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
}
@media(max-width:900px){
  a.btn,button.btn,.btn,
  .result-cta,.final-cta-button,.guide-cta,.contact-submit{
    white-space:normal!important;
    text-align:center;
    line-height:1.18!important;
  }
}

/* Language/country selector: same component, slightly smaller flags/menu. */
html body .arg-lang .arg-current-flag{
  width:31px!important;
  height:21px!important;
  border-radius:6px!important;
}
html body .arg-bilingual-menu{
  width:276px!important;
}
html body .arg-bilingual-menu a{
  grid-template-columns:38px minmax(0,1fr) 24px!important;
  gap:9px!important;
  padding:9px 10px!important;
}
html body .arg-bilingual-flag{
  width:32px!important;
  height:22px!important;
  border-radius:6px!important;
}
html body .arg-bilingual-name strong{font-size:.88rem!important}
html body .arg-bilingual-name span{font-size:.72rem!important}
@media(max-width:700px){
  html body .arg-lang .arg-current-flag{width:27px!important;height:18px!important}
  html body .arg-bilingual-menu{width:min(270px,calc(100vw - 32px))!important}
  html body .arg-bilingual-menu a{grid-template-columns:34px minmax(0,1fr) 22px!important;padding:9px!important}
  html body .arg-bilingual-flag{width:29px!important;height:20px!important}
}

/* Simulator floating cards: values must never clip in longer languages. */
.sim-photo-saving strong,
.sim-photo-main>strong,
.sim-photo-subcard strong{
  display:block;
  max-width:100%;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
  word-break:normal;
  overflow-wrap:normal;
}
.sim-photo-saving strong{font-size:clamp(20px,1.95vw,30px)!important}
.sim-photo-main>strong{font-size:clamp(27px,3vw,46px)!important}
.sim-photo-subcard strong{font-size:clamp(16px,1.8vw,24px)!important}
.sim-photo-count strong{font-size:clamp(17px,1.85vw,25px)!important}
@media(max-width:900px){
  .sim-photo-saving strong{font-size:clamp(16px,4.7vw,23px)!important}
  .sim-photo-main>strong{font-size:clamp(23px,7vw,33px)!important}
  .sim-photo-subcard strong{font-size:clamp(13px,4.2vw,19px)!important}
}
@media(max-width:520px){
  .sim-photo-saving strong{font-size:clamp(14px,4.5vw,20px)!important}
  .sim-photo-main>strong{font-size:clamp(21px,6.8vw,29px)!important}
  .sim-photo-subcard strong{font-size:clamp(12px,3.9vw,17px)!important}
}

/* QA 2026-09-15 — prevent long localized footer copy from forcing desktop overflow. */
@media (min-width:821px) and (max-width:1600px){
  html body .arg-ref-footer .arg-footer-top{
    gap:clamp(18px,2vw,30px)!important;
  }
  html body .arg-ref-footer .arg-footer-brandline{
    flex:1 1 auto!important;
    min-width:0!important;
  }
  html body .arg-ref-footer .arg-footer-brandline p{
    white-space:normal!important;
    max-width:min(330px,26vw)!important;
    overflow-wrap:break-word!important;
  }
  html body .arg-ref-footer .arg-footer-actions{
    flex:0 1 auto!important;
    gap:clamp(10px,1vw,16px)!important;
  }
  html body .arg-ref-footer .arg-lang{
    min-width:clamp(108px,8vw,132px)!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  html body .arg-ref-footer .arg-footer-guide-btn{
    min-width:clamp(230px,18vw,290px)!important;
    padding-left:18px!important;
    padding-right:18px!important;
    gap:18px!important;
  }
}

/* Tablet-landscape footer safeguard: keep the same components without horizontal spill. */
@media (min-width:821px) and (max-width:1180px){
  html body .arg-ref-footer .arg-footer-top{
    display:grid!important;
    grid-template-columns:1fr!important;
    align-items:start!important;
    gap:20px!important;
  }
  html body .arg-ref-footer .arg-footer-brandline{
    width:100%!important;
  }
  html body .arg-ref-footer .arg-footer-logo-link{
    flex:0 0 auto!important;
    width:auto!important;
    max-width:190px!important;
  }
  html body .arg-ref-footer .arg-footer-logo{
    width:auto!important;
    height:38px!important;
    max-width:190px!important;
    object-fit:contain!important;
  }
  html body .arg-ref-footer .arg-footer-brandline p{
    max-width:520px!important;
  }
  html body .arg-ref-footer .arg-footer-actions{
    width:100%!important;
    justify-content:flex-start!important;
  }
  html body .arg-ref-footer .arg-footer-guide-btn{
    min-width:230px!important;
    width:auto!important;
    max-width:420px!important;
  }
}
