/* Scoped portfolio styles: no changes to pricing, forms or shared grids. */
.study-showcase { padding-block: clamp(60px, 7vw, 100px); background: #ece3d4; color: #29261f; }
.study-heading-row { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 36px; }
.study-showcase h2 { font-size: clamp(34px, 4.5vw, 60px); letter-spacing: -.05em; line-height: 1.07; margin: 0; font-weight: 550; }
.study-showcase h2 em { font-style: normal; color: #75572f; }
.study-heading-row > p { max-width: 390px; font-size: 16px; line-height: 1.75; color: #514735; }
.study-feature { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); border: 1px solid #cdbfa7; border-radius: 26px; overflow: hidden; background: #f5eee3; }
.study-image { position: relative; display: block; min-height: 450px; overflow: hidden; background: #342b22; }
.study-image img { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; transition: transform .7s ease; }
.study-image::after { content: ''; position: absolute; inset: 50% 0 0; background: linear-gradient(transparent, #171911c9); pointer-events: none; }
.study-image:hover img { transform: scale(1.035); }
.study-image:focus-visible { outline: 4px solid #fff1cc; outline-offset: -6px; z-index: 1; }
.study-image-label { position: absolute; z-index: 1; bottom: 28px; left: 28px; right: 28px; display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 28px; letter-spacing: -.06em; font-weight: 600; color: #fff6e5; }
.study-image-label > span { font-size: 13px; letter-spacing: 0; font-weight: 400; }
.study-feature-copy { padding: clamp(26px, 3.2vw, 46px); display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.study-label { color: #5c513e; font-size: 11px; line-height: 1.6; letter-spacing: .04em; }
.study-feature-copy h3 { font-size: clamp(32px, 3.5vw, 44px); font-weight: 550; line-height: 1.06; letter-spacing: -.045em; margin: 24px 0 16px; }
.study-feature-copy h2 { margin: 24px 0 18px; }
.study-feature-copy > p { color: #514735; line-height: 1.75; font-size: 15px; margin: 0 0 22px; }
.study-tags { display: flex; flex-wrap: wrap; list-style: none; gap: 8px; margin: 0 0 26px; padding: 0; }
.study-tags li { border: 1px solid #bdac90; color: #58482f; border-radius: 20px; padding: 6px 10px; font-size: 11px; }
.study-feature-copy > .study-disclosure { margin: 18px 0 0; font-size: 11px; color: #61543e; }
.study-more { display: inline-flex; align-items: center; gap: 14px; min-height: 48px; margin-top: 22px; font-size: 14px; color: #624821; text-decoration: underline; text-underline-offset: 5px; }
.study-own { border-top: 1px solid #bca58266; margin-top: 60px; padding-top: 48px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.study-own h2 { margin-block: 18px; }
.study-own p { font-size: 16px; line-height: 1.8; color: #514735; }
.study-own dl { margin: 0; }
.study-own dl div { border-bottom: 1px solid #bca58266; padding: 18px 0; }
.study-own dt { font-size: 12px; color: #624821; margin-bottom: 8px; }
.study-own dd { margin: 0; font-size: 16px; line-height: 1.7; }
@media (max-width: 900px) {
  .study-heading-row { align-items: start; flex-direction: column; gap: 8px; }
  .study-heading-row > p { max-width: 630px; }
  .study-feature { grid-template-columns: 1fr; }
  .study-image { min-height: 0; aspect-ratio: 16 / 10; }
  .study-own { grid-template-columns: 1fr; gap: 22px; }
}
@media (max-width: 450px) {
  .study-feature { border-radius: 18px; }
  .study-image-label { bottom: 20px; left: 20px; right: 20px; font-size: 24px; }
  .study-image-label > span { font-size: 11px; }
  .study-feature-copy { padding: 24px 20px; }
  .study-feature .button { white-space: normal; text-align: left; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .study-image img { transition: none; }
  .study-image:hover img { transform: none; }
}
