/* [L6 pàgines base 2026-09-30] El text ric (p, li, strong, b i els enllaços sense classe) pren el token de text de
   la superfície (--ia-color-text, que brand, dark i image redefineixen); sense això main p, main li, main li p,
   strong i main a del tema el pinten amb el seu color fix (1,21:1 a surface dark). Token i no inherit: inherit
   aclaria el cos a les superfícies clares (#6F6F6F, 4,53:1 sobre soft). :where() deixa p, li, strong i b a
   (0,1,0) perquè qualsevol regla pròpia del mòdul hi guanyi; el bloc va al principi perquè hi guanyin en empat. */
.iaLayer-iamapv1 :where(p, li, strong, b) { color: var(--ia-color-text, inherit); }
.iaLayer-iamapv1 a:not([class]) { color: var(--ia-color-text, inherit); text-decoration: underline; }
.iaLayer-iamapv1 a:not([class]):is(:hover, :focus-visible) { --ia-interaction-text-hover: var(--ia-color-text, inherit); color: var(--ia-interaction-text-hover); text-decoration: underline; }
.iaLayer-iamapv1 {
  --imv1-bg: transparent;
  --imv1-card-bg: var(--ia-color-surface, #ffffff);
  --imv1-rule: var(--ia-color-border, #d6d6d6);
  --imv1-ic-bg: var(--ia-color-surface-soft, #f3f3f3);
  --imv1-btn-bg: var(--ia-button-primary-bg);
  --imv1-btn-fg: var(--ia-button-primary-text);
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: var(--ia-space-l, 32px) var(--ia-space-m, 20px);
  background: var(--imv1-bg);
  color: var(--ia-color-text, #1a1a1a);
  font-family: var(--ia-font-body, sans-serif);
}
.iaLayer-iamapv1.imv1-surface--soft {
  --imv1-bg: var(--ia-color-surface-soft, #f3f3f3);
  --imv1-ic-bg: var(--ia-color-surface, #ffffff);
}
.iaLayer-iamapv1 .imv1-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--ia-space-l, 32px);
  align-items: center;
  width: 100%;
}
.iaLayer-iamapv1 .imv1-body {
  min-width: 0;
  max-width: 65ch;
}
.iaLayer-iamapv1 .imv1-head {
  margin-top: var(--ia-space-s, 1rem); margin-bottom: 0;
}
.iaLayer-iamapv1 .imv1-eyebrow {
  margin: 0 0 var(--ia-space-xs, 8px);
  color: var(--ia-color-text-soft, #6b6b6b);
  font-size: var(--ia-eyebrow-size);
  font-weight: var(--ia-eyebrow-weight);
  letter-spacing: var(--ia-eyebrow-tracking);
  line-height: var(--ia-eyebrow-lh);
  text-transform: var(--ia-eyebrow-transform);
}
.iaLayer-iamapv1 .imv1-title {
  margin: 0;
  color: var(--ia-color-text, #1a1a1a);
  font-family: var(--ia-font-heading, sans-serif);
  font-size: var(--ia-title-section-size);
  font-weight: var(--ia-title-section-weight);
  line-height: var(--ia-title-section-lh);
  overflow-wrap: break-word;
}
.iaLayer-iamapv1 .imv1-intro {
  margin: var(--ia-space-s, 12px) 0 0;
  color: var(--ia-color-text-soft, #6b6b6b);
  font-size: var(--ia-body-size);
  line-height: var(--ia-body-lh);
}
.iaLayer-iamapv1 .imv1-address {
  display: flex;
  align-items: flex-start;
  gap: var(--ia-space-s, 12px);
  margin-top: var(--ia-space-m, 20px); margin-bottom: 0;
  padding: var(--ia-space-m, 20px) 0;
  border-top: 1px solid var(--imv1-rule);
  border-bottom: 1px solid var(--imv1-rule);
  color: var(--ia-color-text, #1a1a1a);
  font-style: normal;
  font-size: var(--ia-body-size);
  line-height: var(--ia-body-lh);
}
.iaLayer-iamapv1 .imv1-ic {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: var(--imv1-ic-bg);
  color: var(--ia-color-text, #1a1a1a);
}
.iaLayer-iamapv1 .imv1-ic svg {
  width: 1.25rem;
  height: 1.25rem;
}
.iaLayer-iamapv1 .imv1-address-text {
  min-width: 0;
  padding-top: 0.4rem;
  white-space: pre-line;
  overflow-wrap: break-word;
}
.iaLayer-iamapv1 .imv1-actions {
  margin-top: var(--ia-space-l, 32px); margin-bottom: 0;
}
/* [MOVE-READY 2026-10-03] Espaiat «cada peça el seu margin-top + reinici del primer fill» (només layout; l'aspecte per defecte no canvia): moure una peça s'emporta el seu espai. */
.iaLayer-iamapv1 .imv1-body > :first-child { margin-top: 0; }
.iaLayer-iamapv1 .imv1-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--ia-space-xs, 8px);
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  padding: var(--ia-space-xs, 8px) var(--ia-space-m, 20px);
  border: 2px solid transparent;
  border-radius: var(--ia-radius-button, 8px);
  background: var(--imv1-btn-bg);
  color: var(--imv1-btn-fg);
  font-family: var(--ia-font-body, sans-serif);
  font-size: var(--ia-btn-size);
  font-weight: var(--ia-btn-weight);
  line-height: var(--ia-btn-lh);
  text-align: center;
  text-decoration: none;
  transition: var(--ia-interaction-transition, box-shadow 0.2s ease);
}
.iaLayer-iamapv1 .imv1-cta-ic {
  display: inline-flex;
}
.iaLayer-iamapv1 .imv1-cta-ic svg {
  width: 1em;
  height: 1em;
}
.iaLayer-iamapv1 .imv1-cta:hover {
  box-shadow: var(--ia-interaction-shadow-hover, 0 6px 18px rgba(0, 0, 0, 0.18));
}
.iaLayer-iamapv1 .imv1-cta:focus-visible {
  outline: 3px solid var(--ia-color-focus-ring, currentColor);
  outline-offset: 3px;
}
.iaLayer-iamapv1 .imv1-media {
  min-width: 0;
  overflow: hidden;
  border-radius: var(--ia-card-media-radius, 8px);
  background: var(--ia-color-surface-soft, #f3f3f3);
}
.iaLayer-iamapv1 .imv1-media picture,
.iaLayer-iamapv1 .imv1-media img {
  display: block;
  width: 100%;
  height: auto;
}
@media (min-width: 600px) {
  .iaLayer-iamapv1 .imv1-cta {
    width: auto;
  }
}
@media (min-width: 992px) {
  .iaLayer-iamapv1 {
    padding: var(--ia-space-xl, 64px) var(--ia-space-l, 32px);
  }
  .iaLayer-iamapv1.imv1-has-media .imv1-inner {
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: var(--ia-space-xl, 64px);
  }
}
/* [L6 GUTTER 28 2026-09-30] Superfícies default i soft: gutter lateral únic var(--ia-section-gutter) (system-twig.css), a totes les amplades (guanya al padding de l'arrel, també dins els @media). */
.iaLayer-iamapv1.imv1-surface--default,
.iaLayer-iamapv1.imv1-surface--soft { padding-inline: var(--ia-section-gutter, 28px); }
