/* ═══════════════════════════════════════════════════════════════════════
   Vehicly — Press / Media Page Styles (v2)
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Hero — dark, branded ─────────────────────────────────────────────── */

.press-page .legal-hero {
  padding: calc(80px + 5rem) 2rem 4rem;
  position: relative;
}

.press-page .legal-hero-title {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: var(--weight-extra);
  letter-spacing: -.035em;
}

/* legal-pages.css hides .legal-hero-icon — show it on press page */
.press-page .press-hero-icon {
  display: flex;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.press-hero-contact {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 2rem;
}

.press-contact-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .7rem 1.4rem;
  font-size: .9rem;
  font-weight: var(--weight-bold);
  color: var(--vh-text, #1c1917);
  background: var(--vh-primary, #F2C94C);
  border-radius: var(--radius-pill);
  text-decoration: none;
  letter-spacing: .01em;
  transition: background var(--duration-quick, .2s), transform var(--duration-fast, .15s), box-shadow var(--duration-quick, .2s);
}

.press-contact-btn:hover {
  background: var(--vh-primary-hover, #E5B93A);
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(var(--vh-primary-rgb, 242,201,76),.3);
}

.press-response-note {
  font-size: .8rem;
  color: var(--vh-text-muted, #6b6560);
}

/* ── Main content ─────────────────────────────────────────────────────── */

.press-main {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 2rem 5rem;
}

/* ── Sections ─────────────────────────────────────────────────────────── */

.press-section {
  padding: 3.5rem 0;
  border-bottom: 1px solid var(--vh-border, #e7e5e4);
}

.press-section:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.press-section-title {
  font-family: var(--vh-font-display, 'Inter', sans-serif);
  font-size: 1.1rem;
  font-weight: var(--weight-bold);
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--vh-text-muted, #6b6560);
  margin-bottom: 2rem;
}

.press-section-sub {
  font-size: .9rem;
  color: var(--vh-text-secondary, #57534e);
  margin-top: -.5rem;
  margin-bottom: 1.75rem;
  line-height: 1.6;
}

/* ── Facts — large-value grid ─────────────────────────────────────────── */

.press-facts-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border: 1px solid var(--vh-border, #e7e5e4);
  border-radius: 16px;
  overflow: hidden;
}

.press-fact-card {
  display: flex;
  flex-direction: column;
  gap: .35rem;
  padding: 1.75rem 1.5rem;
  border-right: 1px solid var(--vh-border, #e7e5e4);
  border-bottom: 1px solid var(--vh-border, #e7e5e4);
  background: var(--vh-surface, #ffffff);
  transition: background var(--duration-fast, .15s);
}

.press-fact-card:hover {
  background: rgba(var(--vh-primary-rgb, 242,201,76), .03);
}

/* Remove right border on last in each row */
.press-fact-card:nth-child(3n) {
  border-right: none;
}

/* Remove bottom border on last row */
.press-fact-card:nth-child(4),
.press-fact-card:nth-child(5),
.press-fact-card:nth-child(6) {
  border-bottom: none;
}

.press-fact-icon {
  display: none; /* simplified — icon removed for cleaner look */
}

.press-fact-body {
  display: flex;
  flex-direction: column;
  gap: .3rem;
}

.press-fact-body strong {
  font-size: .68rem;
  font-weight: var(--weight-bold);
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--vh-text-muted, #6b6560);
}

.press-fact-body span {
  font-size: 1rem;
  font-weight: 650;
  color: var(--vh-text, #1c1917);
  line-height: 1.35;
}

/* ── Story ────────────────────────────────────────────────────────────── */

.press-story {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  position: relative;
}

/* Large decorative opening quote */
.press-story::before {
  content: '\201C';
  position: absolute;
  top: -2rem;
  left: -1rem;
  font-size: 6rem;
  line-height: 1;
  color: var(--vh-primary, #F2C94C);
  font-family: Georgia, serif;
  opacity: .25;
  pointer-events: none;
  user-select: none;
}

.press-story p {
  font-size: 1rem;
  line-height: 1.8;
  color: var(--vh-text-secondary, #57534e);
}

.press-story p:first-child {
  font-size: 1.05rem;
  color: var(--vh-text, #1c1917);
  font-weight: var(--weight-medium);
}

.press-story em {
  font-style: italic;
  color: var(--vh-text, #1c1917);
  font-weight: var(--weight-semi);
}

/* ── Brand assets ─────────────────────────────────────────────────────── */

.press-brand-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
  margin-bottom: 3rem;
}

.press-brand-card {
  border: 1px solid var(--vh-border, #e7e5e4);
  border-radius: 14px;
  overflow: hidden;
  transition: box-shadow var(--duration-quick, .2s);
}

.press-brand-card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,.06);
}

.press-brand-preview {
  height: 130px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.press-brand-preview-light {
  background: var(--vh-bg, #faf9f7);
}

.press-brand-preview-dark {
  background: var(--vh-on-primary);
}

.press-logo-demo {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  font-family: var(--vh-font-display, 'Inter', sans-serif);
  font-size: 1.5rem;
  font-weight: var(--weight-extra);
  color: var(--vh-text, #1c1917);
  letter-spacing: -.025em;
}

.press-logo-demo-dark {
  color: #fff;
}

.press-logo-dot {
  display: inline-block;
  width: 15px;
  height: 15px;
  border-radius: var(--radius-full);
  background: var(--vh-primary, #F2C94C);
  flex-shrink: 0;
}

.press-brand-card-body {
  padding: .875rem 1.25rem;
  display: flex;
  flex-direction: column;
  gap: .15rem;
  border-top: 1px solid var(--vh-border, #e7e5e4);
  background: var(--vh-surface, #ffffff);
}

.press-brand-card-body strong {
  font-size: .85rem;
  font-weight: 650;
  color: var(--vh-text, #1c1917);
}

.press-brand-card-body span {
  font-size: .775rem;
  color: var(--vh-text-muted, #6b6560);
}

/* ── Color swatches ───────────────────────────────────────────────────── */

.press-subsection-title {
  font-size: .8rem;
  font-weight: var(--weight-bold);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--vh-text-muted, #6b6560);
  margin-bottom: 1rem;
  margin-top: 0;
}

.press-colors-grid {
  display: flex;
  gap: 1.25rem;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}

.press-color-swatch {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  flex: 1;
  min-width: 130px;
  max-width: 180px;
}

.press-color-block {
  height: 80px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,.07);
}

.press-color-body {
  display: flex;
  flex-direction: column;
  gap: .2rem;
}

.press-color-body strong {
  font-size: .85rem;
  font-weight: 650;
  color: var(--vh-text, #1c1917);
}

.press-color-body code {
  font-family: var(--vh-font-mono);
  font-size: .775rem;
  color: var(--vh-text-secondary, #57534e);
  background: var(--vh-surface, #ffffff);
  border: 1px solid var(--vh-border, #e7e5e4);
  border-radius: 5px;
  padding: .15rem .45rem;
  display: inline-block;
  width: fit-content;
}

.press-color-body span {
  font-size: .75rem;
  color: var(--vh-text-muted, #6b6560);
}

/* ── Usage rules ──────────────────────────────────────────────────────── */

.press-usage-rules {
  border-top: 1px solid var(--vh-border, #e7e5e4);
  padding-top: 2rem;
  margin-top: .5rem;
}

.press-rules-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: .875rem;
}

.press-rules-list li {
  display: flex;
  align-items: flex-start;
  gap: .625rem;
  font-size: .9rem;
  color: var(--vh-text-secondary, #57534e);
  line-height: 1.55;
}

.press-rules-list li svg { flex-shrink: 0; margin-top: .15rem; }
.press-rules-list strong { color: var(--vh-text, #1c1917); }

/* ── Key messages ─────────────────────────────────────────────────────── */

.press-quote {
  font-size: 1.2rem;
  line-height: 1.65;
  color: var(--vh-text, #1c1917);
  font-style: italic;
  font-weight: var(--weight-medium);
  padding: 1.75rem 2rem;
  background: rgba(var(--vh-primary-rgb, 242,201,76), .06);
  border-left: 3px solid var(--vh-primary, #F2C94C);
  border-radius: 0 12px 12px 0;
  margin: 0 0 2.5rem;
}

.press-bullets {
  display: flex;
  flex-direction: column;
  gap: 1.75rem;
}

.press-bullet {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  padding-bottom: 1.75rem;
  border-bottom: 1px solid var(--vh-border, #e7e5e4);
}

.press-bullet:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.press-bullet-num {
  font-family: var(--vh-font-display, 'Inter', sans-serif);
  font-size: .8rem;
  font-weight: var(--weight-extra);
  color: var(--vh-primary, #F2C94C);
  min-width: 2rem;
  padding-top: .15rem;
  letter-spacing: .04em;
}

.press-bullet strong {
  display: block;
  font-size: 1rem;
  font-weight: var(--weight-bold);
  color: var(--vh-text, #1c1917);
  margin-bottom: .35rem;
  letter-spacing: -.01em;
}

.press-bullet p {
  font-size: .9rem;
  line-height: 1.65;
  color: var(--vh-text-secondary, #57534e);
  margin: 0;
}

/* ── Press contact — dark CTA ─────────────────────────────────────────── */

.press-contact-block {
  background: var(--vh-surface, #ffffff);
  border: 1px solid var(--vh-border, #e7e5e4);
  border-radius: 20px;
  padding: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  flex-wrap: wrap;
}

.press-contact-info {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.press-contact-row {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: 1.1rem;
  font-weight: var(--weight-bold);
  color: var(--vh-text, #1c1917);
}

.press-contact-row svg { color: var(--vh-primary, #F2C94C); }

.press-contact-row a {
  color: var(--vh-text, #1c1917);
  text-decoration: none;
  border-bottom: 1.5px solid var(--vh-primary, #F2C94C);
  transition: opacity var(--duration-quick, .2s);
}

.press-contact-row a:hover { opacity: .75; }

.press-contact-note {
  font-size: .875rem;
  color: var(--vh-text-muted, #6b6560);
  margin: 0;
  max-width: 340px;
  line-height: 1.6;
}

.press-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .875rem 1.75rem;
  font-size: .9375rem;
  font-weight: var(--weight-bold);
  background: var(--vh-primary, #F2C94C);
  color: var(--vh-text, #1c1917);
  border-radius: 14px;
  text-decoration: none;
  transition: background var(--duration-quick, .2s), transform var(--duration-fast, .15s), box-shadow var(--duration-quick, .2s);
  white-space: nowrap;
  letter-spacing: .01em;
}

.press-cta-btn:hover {
  background: var(--vh-primary-hover, #E5B93A);
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(var(--vh-primary-rgb, 242,201,76),.25);
}

/* ── Responsive ───────────────────────────────────────────────────────── */

@media (max-width: 768px) {
  .press-facts-grid { grid-template-columns: repeat(2, 1fr); }
  .press-fact-card:nth-child(3n) { border-right: 1px solid var(--vh-border, #e7e5e4); }
  .press-fact-card:nth-child(2n) { border-right: none; }
  .press-fact-card:nth-child(4),
  .press-fact-card:nth-child(5),
  .press-fact-card:nth-child(6) { border-bottom: 1px solid var(--vh-border, #e7e5e4); }
  .press-fact-card:nth-child(5),
  .press-fact-card:nth-child(6) { border-bottom: none; }
  .press-brand-grid { grid-template-columns: 1fr; }
  .press-contact-block { flex-direction: column; align-items: flex-start; padding: 2rem 1.75rem; }
  .press-main { padding: 0 1.5rem 4rem; }
}

@media (max-width: 540px) {
  .press-facts-grid { grid-template-columns: 1fr; }
  .press-fact-card { border-right: none !important; }
  .press-fact-card:nth-child(n) { border-bottom: 1px solid var(--vh-border, #e7e5e4); }
  .press-fact-card:last-child { border-bottom: none; }
  .press-hero-contact { flex-direction: column; gap: .75rem; }
  .press-colors-grid { flex-direction: column; }
  .press-quote { padding: 1.25rem 1.25rem; font-size: 1.05rem; }
  .press-contact-block { padding: 1.75rem 1.25rem; border-radius: 14px; }
  .press-story::before { font-size: 4rem; top: -1rem; left: -.5rem; }
}
