/* =========================================================
   GOES — Listado y ficha de modelo
   ========================================================= */

.goes-pagehead { padding: clamp(48px, 8vw, 110px) 0 24px; }

/* ---- HERO ficha ---- */
.goes-modelo-hero { position: relative; min-height: 78vh; display: flex; align-items: flex-end; overflow: hidden; background: #0b0b0b; }
.goes-modelo-hero__media { position: absolute; inset: 0; z-index: 0; }
.goes-modelo-hero__media::after { content:""; position:absolute; inset:0; background: var(--goes-hero-overlay); }
.goes-modelo-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.goes-modelo-hero__content { position: relative; z-index: 1; color: #fff; padding-bottom: clamp(36px, 6vw, 80px); }
.goes-modelo-hero h1 { color: #fff; font-size: clamp(3rem, 11vw, 8rem); line-height: .9; }
.goes-modelo-hero__cta { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; margin-top: 18px; }
.goes-modelo-precio { color: #fff; font-size: 1.05rem; }
.goes-modelo-precio strong { color: var(--goes-orange); }

/* ---- Franja de specs destacadas ---- */
.goes-modelo-strip { background: var(--goes-bg-2); border-bottom: 1px solid var(--goes-border-col); }
.goes-modelo-strip__inner { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 8px; padding: 28px 0; }
.goes-strip-item { text-align: center; padding: 8px 12px; border-right: 1px solid var(--goes-border-col); }
.goes-strip-item:last-child { border-right: 0; }
.goes-strip-item__value { display: block; font-family: var(--goes-font-head); font-weight: 900; font-size: clamp(1.6rem, 3.4vw, 2.6rem); color: var(--goes-orange); line-height: 1; }
.goes-strip-item__label { display: block; margin-top: 6px; font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--goes-text-muted); }

/* ---- Bloques de características (imagen + texto) ---- */
.goes-feature { padding: clamp(48px, 8vw, 120px) 0; }
.goes-feature__inner { display: grid; grid-template-columns: 1.1fr .9fr; gap: 48px; align-items: center; }
.goes-feature--rev .goes-feature__media { order: 2; }
.goes-feature__media img { width: 100%; border-radius: var(--goes-radius); object-fit: cover; }
.goes-feature__text { max-width: 46ch; }
.goes-feature__text p { color: var(--goes-text-muted); font-size: 1.05rem; }

/* ---- Tabla de especificaciones ---- */
.goes-spectable { border: 1px solid var(--goes-border-col); border-radius: var(--goes-radius); overflow: hidden; }
.goes-specrow { display: flex; justify-content: space-between; gap: 24px; padding: 16px 24px; border-bottom: 1px solid var(--goes-border-col); }
.goes-specrow:last-child { border-bottom: 0; }
.goes-specrow span:first-child { color: var(--goes-text-muted); }
.goes-specrow span:last-child { font-family: var(--goes-font-head); font-weight: 700; }

/* ---- Galería ---- */
.goes-gallery img { border-radius: var(--goes-radius-sm); aspect-ratio: 4/3; object-fit: cover; width: 100%; }

/* ---- Selector de color ---- */
.goes-colors { text-align: center; }
.goes-colors__stage { max-width: 820px; margin: 24px auto 8px; min-height: 240px; display: flex; align-items: center; justify-content: center; }
.goes-colors__stage img { width: 100%; height: auto; transition: opacity .2s ease; }
.goes-colors__swatches { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; margin-top: 12px; }
.goes-swatch { display: inline-flex; align-items: center; gap: 9px; background: transparent; border: 1px solid var(--goes-border-col); border-radius: var(--goes-radius-pill); padding: 8px 16px 8px 9px; cursor: pointer; color: var(--goes-text); font: inherit; transition: border-color .2s ease; }
.goes-swatch:hover, .goes-swatch.is-active { border-color: var(--goes-orange); }
.goes-swatch__dot { width: 20px; height: 20px; border-radius: 50%; background: var(--sw); border: 1px solid rgba(255,255,255,.25); display: inline-block; }
.goes-swatch em { font-style: normal; font-size: .85rem; font-weight: 600; }

/* ---- Prose (fallback) ---- */
.goes-prose { max-width: 72ch; }
.goes-prose p { color: var(--goes-text-muted); }

@media (max-width: 900px) {
  .goes-feature__inner { grid-template-columns: 1fr; }
  .goes-feature--rev .goes-feature__media { order: 0; }
  .goes-modelo-strip__inner { grid-auto-flow: row; grid-template-columns: repeat(2, 1fr); grid-auto-columns: auto; }
  .goes-strip-item:nth-child(2n) { border-right: 0; }
  .goes-strip-item { border-bottom: 1px solid var(--goes-border-col); }
}
