/* CAME — mismo concepto de selector y fotografía, sin montos comerciales. */
.came-products-note { margin: 0 0 28px; padding: 18px 22px; border: 1px solid #e4dced; border-left: 4px solid #492f7b; border-radius: 10px; background: #f7f5fa; color: #554b62; font: 400 15px/1.65 'Open Sans', Arial, sans-serif; }
.came-products-note a { color: #492f7b; text-decoration: underline; text-underline-offset: 3px; }
.came-product-group { margin: 0 0 16px; }
.came-product-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  box-sizing: border-box;
  min-height: 60px;
  margin: 0;
  padding: 16px 22px;
  border: 1px solid #cfcfd2;
  border-radius: 9px;
  background: #fff;
  color: #3e3e3e;
  font: 500 18px/1.45 'Open Sans', Arial, sans-serif;
  text-align: left;
  list-style: none;
  cursor: pointer;
}
.came-product-summary::-webkit-details-marker { display: none; }
.came-product-summary svg { width: 20px; height: 20px; flex-shrink: 0; }
.came-product-group[open] > .came-product-summary { border-color: #e30613; color: #e30613; }
.came-product-group[open] > .came-product-summary svg { transform: rotate(180deg); }
.came-product-options { display: grid; gap: 14px; padding-top: 16px; }
.sec-productos .came-product-options .nav-link {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 82px;
  box-sizing: border-box;
  margin: 0;
  padding: 14px;
  border: 1px solid #ded8e9;
  border-radius: 10px;
  background: #fff;
  color: #3e3e3e;
  font: 500 18px/1.45 'Open Sans', Arial, sans-serif;
  text-align: left;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease;
}
.sec-productos .came-product-options .nav-link:hover { border-color: #e30613; background: #fff5f5; }
.sec-productos .came-product-options .nav-link.active { padding: 14px; background: #e30613; border-color: #e30613; color: #fff; }
.came-product-options .icon-prod { display: block; width: 55px; height: 55px; object-fit: contain; flex-shrink: 0; }
.came-product-regularize { border-color: #e30613; color: #bd0010; }
.came-product-regularize > span { display: flex; align-items: center; gap: 12px; }
.came-product-regularize > span svg { width: 25px; height: 25px; }
.came-product-regularize.active { background: #e30613; border-color: #e30613; color: #fff; }
.came-product-summary:hover { border-color: #e30613; }
.came-product-summary:focus-visible,
.came-product-options .nav-link:focus-visible,
.came-product-panel a:focus-visible,
.came-product-panel button:focus-visible { outline: 3px solid #492f7b; outline-offset: 3px; }
.came-product-panel { padding: 28px; border: 1px solid #eee8f2; border-bottom: 2px solid #e30613; border-radius: 16px; background: #fff; box-shadow: 0 6px 24px rgb(37 23 62 / 4%); scroll-margin-top: calc(var(--came-header-height) + 20px); }
.came-product-panel[hidden] { display: none !important; }
.came-product-photo { min-height: 350px; }
.came-product-photo img { display: block; width: 100%; height: 100%; min-height: 350px; object-fit: cover; border-radius: 14px; }
.sec-productos .came-product-panel h3 { margin: 0 0 20px; color: #492f7b; font: 600 28px/1.25 'Jost', Arial, sans-serif; }
.came-product-logo { display: block; width: auto; max-width: 180px; max-height: 108px; margin-bottom: 22px; }
.sec-productos .came-product-panel p { margin: 0 0 16px; font-size: 17px; line-height: 1.6; text-align: left; }
.came-product-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 22px; }
.came-product-actions .btn { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
.came-product-actions .came-product-link { color: #492f7b; font: 500 15px/1.5 'Open Sans', Arial, sans-serif; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 767.98px) {
  .came-product-panel { padding: 20px; }
  .came-product-photo, .came-product-photo img { min-height: 0; height: auto; }
  .came-product-photo img { aspect-ratio: 4 / 3; object-fit: cover; }
  .sec-productos .came-product-panel h3 { font-size: 26px; }
  .came-product-summary, .sec-productos .came-product-options .nav-link { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .sec-productos .came-product-options .nav-link { transition: none; } }
