/* ==========================================================
   About — welcome
   ========================================================== */

.welcome .grid {
  display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(40px, 6vw, 88px); align-items: center;
}
.photo-frame { position: relative; }
.photo-frame img {
  width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius);
  box-shadow: 0 30px 60px -30px rgba(43,34,28,.55);
}
.photo-frame::before {
  content: ""; position: absolute; inset: 18px -18px -18px 18px; z-index: 0;
  border: 2px solid var(--orange); border-radius: var(--radius);
}
.photo-frame img { position: relative; z-index: 1; }
.welcome p { margin: 0 0 1.1rem; }
.welcome .btn-row { margin-top: 1.8rem; align-items: center; gap: 1.4rem; }

/* At-a-glance facts */
.about-facts {
  list-style: none; margin: 1.6rem 0 0; padding: 1.3rem 0 0;
  border-top: 1px solid var(--cream-2);
  display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 1rem 2.2rem;
}
.about-facts li { display: flex; gap: .7rem; align-items: flex-start; font-size: .95rem; color: var(--text-muted-dark); }
.about-facts .icon { width: 22px; height: 22px; color: var(--orange-deep); margin-top: .15rem; }
.about-facts strong {
  display: block; font-family: var(--display); font-weight: 600; font-size: .78rem;
  letter-spacing: .14em; text-transform: uppercase; color: var(--text-dark);
}
.about-facts a { color: var(--orange-deep); font-weight: 700; }
.about-facts a:hover { text-decoration: underline; }

@media (max-width: 900px) {
  .welcome .grid { grid-template-columns: 1fr; }
  .welcome .photo-frame { order: -1; margin-right: 18px; }
}
@media (max-width: 600px) {
  .about-facts { grid-template-columns: 1fr; }
  .welcome .btn-row .btn { width: 100%; }
}

/* ---------- The Atmosphere (about page photo strip) ---------- */
.atmosphere { background: var(--ink-2); }
.atmo-strip {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: 1.4fr 1fr 1.4fr; gap: clamp(.75rem, 1.5vw, 1.1rem);
}
.atmo-strip a { position: relative; display: block; height: clamp(260px, 30vw, 380px); border-radius: var(--radius); overflow: hidden; }
.atmo-strip img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.atmo-strip a::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  background: linear-gradient(0deg, rgba(14,11,9,.85) 0%, rgba(14,11,9,0) 50%);
  box-shadow: inset 0 0 0 1px rgba(242,138,30,0); transition: box-shadow .3s;
}
.atmo-strip a:hover img { transform: scale(1.05); }
.atmo-strip a:hover::after, .atmo-strip a:focus-visible::after { box-shadow: inset 0 0 0 2px rgba(242,138,30,.8); }
.atmo-cap {
  position: absolute; left: 1rem; bottom: .9rem; z-index: 1;
  font-family: var(--display); font-weight: 600; letter-spacing: .14em; text-transform: uppercase; font-size: .85rem; color: #fff;
}
@media (max-width: 760px) {
  .atmo-strip { grid-template-columns: 1fr 1fr; }
  .atmo-strip li:first-child { grid-column: 1 / -1; }
  .atmo-strip a { height: clamp(200px, 50vw, 300px); }
}
