/* ================================================
   Visit Our Showroom Page
   ================================================ */

.visit-page {
  padding: 0;
  /* Break out of .container to allow full-width sections */
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

/* --- Header (boxed, beige) --- */
.visit-page__header {
  background: #F0EBE7;
  padding: var(--space-3xl) var(--space-xl);
  text-align: center;
}

.visit-page__header-title {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-display);
  font-size: clamp(2rem, 4.5vw, 3.2rem);
  font-weight: 600;
  line-height: 1.08;
  color: var(--ink);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.visit-page__header-lead {
  margin: 0;
  font-family: var(--font-body);
  font-size: 1rem;
  font-style: italic;
  line-height: 1.6;
  color: var(--ink-soft);
}

/* --- Shared: full-width 50/50 split sections --- */
.visit-page__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 32rem;
}

.visit-page__split-image {
  overflow: hidden;
  min-height: 24rem;
}

.visit-page__split-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.visit-page__split-content {
  display: flex;
  align-items: center;
  padding: var(--space-3xl) clamp(2rem, 5vw, 5rem);
}

.visit-page__split-inner {
  max-width: 34rem;
}

/* --- Section title --- */
.visit-page__section-title {
  margin: 0 0 var(--space-lg);
  font-family: var(--font-display);
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 600;
  line-height: 1.1;
  color: var(--ink);
}

/* --- Visit info section --- */
.visit-page__info {
  background: #F8F9FA;
}

.visit-page__info .visit-page__split-image { }

.visit-page__detail {
  margin-bottom: var(--space-lg);
}

.visit-page__detail-label {
  margin: 0 0 var(--space-2xs);
  font-family: var(--font-ui);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink);
}

.visit-page__detail p {
  margin: 0;
  font-family: var(--font-body);
  font-size: 0.92rem;
  line-height: 1.75;
  color: var(--ink-soft);
}

.visit-page__detail a {
  color: var(--gold);
  text-decoration: none;
}

.visit-page__detail a:hover {
  color: var(--gold-hover);
  text-decoration: underline;
}

/* --- CTA buttons --- */
.visit-page__cta {
  display: inline-block;
  margin-top: var(--space-lg);
  padding: 0.7rem 2rem;
  background: var(--gold);
  color: var(--white);
  font-family: var(--font-ui);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background var(--duration-fast) var(--ease);
}

.visit-page__cta:hover {
  background: var(--gold-hover);
  color: var(--white);
}

.visit-page__cta-outline {
  display: inline-block;
  margin-top: var(--space-lg);
  padding: 0.65rem 2rem;
  border: 1.5px solid var(--ink);
  background: transparent;
  color: var(--ink);
  font-family: var(--font-ui);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);
}

.visit-page__cta-outline:hover {
  background: var(--ink);
  color: var(--white);
}

/* --- Trade section --- */
.visit-page__trade {
  background: #F8F9FA;
}

.visit-page__trade .visit-page__split-image { }

.visit-page__trade-eyebrow {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-ui);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--gold);
}

.visit-page__trade-title {
  margin: 0 0 var(--space-xl);
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.2rem);
  font-weight: 700;
  line-height: 1.06;
  color: var(--ink);
  letter-spacing: 0.06em;
}

.visit-page__trade p {
  margin: 0 0 var(--space-md);
  font-family: var(--font-body);
  font-size: 0.92rem;
  line-height: 1.8;
  color: var(--ink-soft);
}

.visit-page__benefits {
  margin: var(--space-xs) 0 0;
  padding-left: var(--space-lg);
  list-style: disc;
}

.visit-page__benefits li {
  margin-bottom: var(--space-2xs);
  font-family: var(--font-body);
  font-size: 0.9rem;
  line-height: 1.7;
  color: var(--ink-soft);
}

/* --- Consultation section --- */
.visit-page__consultation {
  background: #F8F9FA;
}

.visit-page__consultation .visit-page__split-image { }

.visit-page__consultation .visit-page__split-content p {
  margin: 0 0 var(--space-md);
  font-family: var(--font-body);
  font-size: 0.94rem;
  line-height: 1.8;
  color: var(--ink-soft);
}

/* --- Spotlight / Design stories --- */
.visit-page__spotlight {
  background: #F8F9FA;
}

.visit-page__spotlight .visit-page__split-content {
  background: var(--ink-deep);
}

.visit-page__spotlight .visit-page__section-title,
.visit-page__spotlight-heading {
  margin: 0 0 var(--space-lg);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  font-weight: 600;
  font-style: italic;
  line-height: 1.2;
  color: #fff;
}

.visit-page__spotlight .visit-page__split-content p {
  margin: 0 0 var(--space-md);
  font-family: var(--font-body);
  font-size: 0.94rem;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.82);
}

.visit-page__spotlight .visit-page__cta-outline {
  border-color: #fff;
  color: #fff;
}

.visit-page__spotlight .visit-page__cta-outline:hover {
  background: #fff;
  color: var(--ink-deep);
}

.visit-page__spotlight-img {
  overflow: hidden;
}

.visit-page__spotlight-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* --- Responsive --- */
@media (max-width: 768px) {
  .visit-page__split {
    grid-template-columns: 1fr;
  }

  .visit-page__split-image {
    min-height: 16rem;
  }
}
