.hero > img { object-position: center; }
.intro-body a { color: inherit; text-underline-offset: .25rem; }
.crop-tee img { object-position: 32% 62%; transform: scale(1.5); }
.crop-sweat img { object-position: 55% 60%; transform: scale(1.5); }
.crop-cap img { object-position: 10% 68%; transform: scale(1.5); }
.crop-weekender img { object-position: 83% 45%; transform: scale(1.5); }
.crop-pillow img { object-position: 64% 50%; }
.product-pillow { grid-column: span 2; }
.product-pillow .product-image { aspect-ratio: 16 / 9; }
.inquiry { background: #f3efe5; color: #111513; border: 1px solid #111513; }
.hospitality { display: grid; grid-template-columns: 1.3fr .7fr; min-height: 44rem; background: #efe9dc; }
.hospitality-image { min-height: 38rem; overflow: hidden; }
.hospitality-image img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
.hospitality-copy { padding: 8rem 6vw; align-self: center; }
.hospitality-copy h2 { font: normal clamp(2.7rem, 4.8vw, 5rem)/1 var(--serif); letter-spacing: -.045em; margin: 0 0 2rem; }
.hospitality-copy > p:not(.eyebrow) { font: 1.05rem/1.7 var(--serif); color: #484842; }
.hospitality-copy .partner-note { margin: 2rem 0; padding-top: 2rem; border-top: 1px solid #bdb4a3; font-size: .92rem; }
.product-status { display: flex; gap: .45rem; padding-top: .8rem; flex-wrap: wrap; }
.product-status span { border: 1px solid #c7c2b7; padding: .35rem .5rem; font-size: .6rem; letter-spacing: .08em; text-transform: uppercase; color: #64645f; }
.connection { padding: 8rem 6vw; background: #17201c; color: #fff; display: grid; grid-template-columns: .85fr 1.15fr; gap: 8vw; }
.connection h2, .crest-story h2 { font: normal clamp(2.8rem, 5vw, 5rem)/1 var(--serif); letter-spacing: -.045em; margin: 0 0 2rem; }
.connection p, .crest-story p { font: 1.05rem/1.7 var(--serif); color: #cbd0cb; }
.connection-list article { display: grid; grid-template-columns: 2.5rem 1fr auto; gap: 1.3rem; align-items: start; padding: 1.25rem 0; border-top: 1px solid rgba(255,255,255,.2); }
.connection-list b { font-size: .68rem; letter-spacing: .12em; color: #98a29b; }
.connection-list span { font-size: .85rem; line-height: 1.5; color: #bbc2bd; }
.connection-list span strong { display: block; color: #fff; font: normal 1.25rem var(--serif); margin-bottom: .3rem; }
.connection-list em { font-style: normal; text-transform: uppercase; letter-spacing: .12em; font-size: .6rem; border: 1px solid rgba(255,255,255,.35); padding: .35rem .5rem; }
.crest-story { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: 8vw; padding: 8rem 6vw; background: #0b1518; color: #fff; border-top: 1px solid rgba(255,255,255,.12); }
.crest-mark { padding: 2rem; border: 1px solid rgba(200,162,75,.4); background: #101b1e; }
.crest-mark img { display: block; width: 100%; height: auto; }
.crest-story h2 { font-size: clamp(2.5rem, 4.5vw, 4.5rem); }
footer small a { color: inherit; text-underline-offset: .25rem; }
@media (max-width: 900px) {
  .connection, .crest-story { grid-template-columns: 1fr; padding: 5rem 1.5rem; gap: 3rem; }
  .connection-list article { grid-template-columns: 2rem 1fr; }
  .connection-list em { grid-column: 2; }
  .crest-mark { padding: 1.2rem; }
  .hero > img { object-position: 58% center; }
  .product-pillow { grid-column: span 1; }
  .hospitality { grid-template-columns: 1fr; }
  .hospitality-image { min-height: 28rem; }
  .hospitality-copy { padding: 5rem 1.5rem; }
}

.crop-cap img,.product:hover .crop-cap img{object-position:center;transform:none}.preview-link{justify-self:end;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;color:inherit}.product-availability{border-top:1px solid #d2cec5;padding:.7rem 0 1.4rem;font-size:.82rem;color:#596058;margin:0}.product-status span{font-size:.7rem;letter-spacing:.04em}
