.works.section{padding-top:72px}
.works-featured{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
.works-featured-card{margin:0;aspect-ratio:4/5;overflow:hidden;background:#e9e2d4}
.works-featured-card img{width:100%;height:100%;object-fit:cover;display:block}

.works-carousel-wrap{margin-top:42px}
.works-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.works-carousel-head h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400;letter-spacing:-.02em;color:#382f2a}
.works-carousel-controls{display:flex;gap:10px}
.works-carousel-controls button{width:46px;height:46px;border:1px solid rgba(56,47,42,.22);background:#f7f2e8;color:#382f2a;border-radius:999px;font-size:20px;line-height:1;cursor:pointer;transition:all .2s ease}
.works-carousel-controls button:hover{background:#777B5B;color:#fff;border-color:#777B5B}

.works-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,33%);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#777B5B #ece5d7;padding-bottom:8px}
.works-carousel::-webkit-scrollbar{height:10px}
.works-carousel::-webkit-scrollbar-track{background:#ece5d7;border-radius:999px}
.works-carousel::-webkit-scrollbar-thumb{background:#777B5B;border-radius:999px}
.works-slide{margin:0;background:#fff;border:1px solid rgba(56,47,42,.08);scroll-snap-align:start;overflow:hidden;display:flex;flex-direction:column}
.works-slide img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:#e9e2d4}
.works-slide figcaption{position:static!important;max-width:none!important;background:#f7f2e8!important;color:#382f2a!important;padding:14px 16px!important;font:600 14px/1.45 Arial,Helvetica,sans-serif!important;text-transform:none!important;letter-spacing:.01em!important}

/* make bottom mobile CTA clearer as clickable */
.mobile-book{gap:12px;align-items:center}
.mobile-book-main{font-size:16px;font-weight:700;line-height:1.2}
.mobile-book-badge{margin-left:auto;font-size:11px;font-weight:500;opacity:.95;line-height:1.2}
.mobile-book-icon{flex:0 0 auto;width:32px;height:32px;border-radius:999px;background:rgba(255,255,255,.18);display:inline-flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.mobile-book:hover .mobile-book-icon{transform:translateX(2px)}

@media (max-width: 900px){
  .works-featured{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .works-carousel{grid-auto-columns:minmax(250px,46%)}
}

@media (max-width: 620px){
  .works.section{padding-top:56px!important}
  .works-featured{grid-template-columns:1fr;gap:14px;margin-top:22px}
  .works-featured-card{aspect-ratio:4/5}
  .works-carousel-wrap{margin-top:28px}
  .works-carousel-head{margin-bottom:14px}
  .works-carousel-head h3{font-size:22px}
  .works-carousel-controls button{width:40px;height:40px;font-size:18px}
  .works-carousel{grid-auto-columns:84%;gap:14px;padding-bottom:4px}
  .works-slide figcaption{padding:12px 14px!important;font-size:15px!important;line-height:1.4!important}
  .mobile-book{display:grid!important;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:0 14px!important}
  .mobile-book-main{font-size:15px}
  .mobile-book-badge{margin-left:0;font-size:10px;text-align:right;max-width:118px}
  .mobile-book-icon{width:30px;height:30px;font-size:17px}
}
