/* IBOS V16.7.4.4 · Contact refinement — scoped to home and contact page. */
.ibos-visual-theme .contact-section .contact-card{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  align-items:start;
  gap:clamp(24px,4vw,60px);
}
.ibos-visual-theme .contact-section .contact-copy,
.ibos-visual-theme .contact-page-section .contact-page-info{min-width:0;}
.ibos-visual-theme .contact-section .contact-copy{display:flex;flex-direction:column;align-items:flex-start;}
.ibos-visual-theme .ibos-contact-methods{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  margin:22px 0 0;
  max-width:510px;
  width:100%;
  color:var(--ibos-text,#253251);
}
.ibos-visual-theme .ibos-contact-method{
  width:100%;min-width:0;
  display:flex;align-items:center;
  gap:15px;
  margin:0;
  padding:16px 18px;
  background:var(--ibos-surface,#fff);
  border:1px solid var(--ibos-border,#e2e5f4);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(31,42,71,.035);
  color:var(--ibos-text,#253251)!important;
  text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.ibos-visual-theme .ibos-contact-method:hover,
.ibos-visual-theme .ibos-contact-method:focus-visible{
  transform:translateY(-2px);
  border-color:var(--ibos-primary,#7c3aed);
  box-shadow:0 12px 30px rgba(31,42,71,.095);
  outline-offset:3px;
}
.ibos-visual-theme .ibos-contact-method-icon{
  flex:0 0 48px;width:48px;height:48px;
  display:grid;place-items:center;
  background:var(--ibos-soft-alt,#f3ecff);
  border-radius:13px;
  color:var(--ibos-primary,#7c3aed);
}
.ibos-visual-theme .ibos-contact-method-icon svg{width:23px;height:23px;display:block;}
.ibos-visual-theme .ibos-contact-method-content{
  display:flex;flex:1 1 auto;min-width:0;
  flex-direction:column;align-items:flex-start;
  gap:4px;line-height:1.35;text-align:left;
}
.ibos-visual-theme .ibos-contact-method-content small{
  display:block;font-size:12px;font-weight:600;
  line-height:1.35;color:var(--ibos-muted,#6a7188);
}
.ibos-visual-theme .ibos-contact-method-content strong{
  color:var(--ibos-text,#253251);
  font-size:clamp(15px,1.45vw,18px);
  font-weight:750;line-height:1.35;
  overflow-wrap:anywhere;word-break:normal;
}
.ibos-visual-theme .ibos-contact-method-arrow{
  flex:0 0 auto;align-self:center;
  font-size:20px;font-weight:600;
  color:var(--ibos-primary,#7c3aed);
  transition:transform .2s ease;
}
.ibos-visual-theme .ibos-contact-method:hover .ibos-contact-method-arrow{transform:translate(2px,-2px);}
.ibos-visual-theme .ibos-contact-illustration{
  display:block;width:100%;max-width:510px;
  margin:14px 0 0;
  padding:8px;
  background:var(--ibos-surface,#fff);
  border:1px solid var(--ibos-border,#e2e5f4);
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(31,42,71,.05);
  aspect-ratio:2.25/1;
}
.ibos-visual-theme .ibos-contact-illustration img{
  display:block;width:100%;height:100%;
  max-height:215px;object-fit:cover;object-position:center;
  border-radius:12px;
}
/* Keep the contact page company/address text unchanged; style only the new cards. */
.ibos-visual-theme .contact-page-info .ibos-contact-methods a{
  display:flex;margin:0;font-size:inherit;font-weight:inherit;
}
.ibos-visual-theme .contact-page-info .ibos-contact-method-content strong{
  display:block;line-height:1.35;font-size:clamp(15px,1.45vw,18px);
}
.ibos-visual-theme .contact-page-info .ibos-contact-illustration{margin-top:20px;aspect-ratio:16/9;}
@media(max-width:990px){
  .ibos-visual-theme .contact-section .contact-card{grid-template-columns:minmax(0,1fr);}
  .ibos-visual-theme .contact-section .contact-copy{display:block;}
  .ibos-visual-theme .ibos-contact-methods,
  .ibos-visual-theme .ibos-contact-illustration{max-width:560px;}
}
@media(max-width:640px){
  .ibos-visual-theme .contact-section .contact-card{gap:24px;}
  .ibos-visual-theme .ibos-contact-methods{gap:10px;margin-top:20px;}
  .ibos-visual-theme .ibos-contact-method{padding:13px 12px;gap:11px;border-radius:13px;}
  .ibos-visual-theme .ibos-contact-method-icon{flex-basis:42px;width:42px;height:42px;border-radius:11px;}
  .ibos-visual-theme .ibos-contact-method-icon svg{width:21px;height:21px;}
  .ibos-visual-theme .ibos-contact-method-content strong{font-size:15px;}
  .ibos-visual-theme .ibos-contact-method-arrow{font-size:18px;}
  .ibos-visual-theme .ibos-contact-illustration{padding:6px;margin-top:16px;border-radius:16px;aspect-ratio:16/9;}
  .ibos-visual-theme .ibos-contact-illustration img{border-radius:11px;}
}
@media(prefers-reduced-motion:reduce){
  .ibos-visual-theme .ibos-contact-method,
  .ibos-visual-theme .ibos-contact-method-arrow{transition:none;}
  .ibos-visual-theme .ibos-contact-method:hover,
  .ibos-visual-theme .ibos-contact-method:hover .ibos-contact-method-arrow{transform:none;}
}
