/* The written chapter after couple stories: existing type and purple, no motion. */
.home-reviews[hidden], .home-reviews [hidden] { display:none !important; }
.home-reviews { color:#493153; margin-top:20px; scroll-margin-top:80px; }
.home-reviews-inner { min-width:0; }
.home-reviews-all { display:inline-flex; align-items:center; gap:14px; color:#71527f; font-size:13px; font-weight:600; text-decoration:none; min-height:44px; padding:8px 0; }
.home-reviews-all:hover { text-decoration:underline; text-underline-offset:5px; }
.home-reviews-gallery { min-width:0; }
.home-reviews-track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 18px)/2); gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; overscroll-behavior-x:contain; scrollbar-width:none; padding:4px 3px 10px; margin:0 -3px; }
.home-reviews-track::-webkit-scrollbar { display:none; }
.home-review-card { position:relative; min-width:0; display:flex; flex-direction:column; scroll-snap-align:start; padding:26px 26px 12px; border:1px solid #e1d6e7; border-top:3px solid #9a7aaa; border-radius:4px 4px 14px 14px; background:#fffdfd; }
.home-review-kind { align-self:flex-start; color:#71527f; font-size:11px; line-height:1.4; font-weight:600; margin:0 0 24px; padding:5px 9px; border-radius:4px; background:#f2ecf6; }
.home-review-kind::after { content:''; position:absolute; right:24px; top:22px; width:30px; height:28px; background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 28'%3E%3Cpath fill='%23d9cbe2' d='M0 28V15Q0 3 13 0v5Q5 8 5 15h8v13zm21 0V15Q21 3 34 0v5Q26 8 26 15h8v13z'/%3E%3C/svg%3E"); }
.home-review-quote { font-size:15px; line-height:1.9; color:#3d2948; margin:0 0 24px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; white-space:pre-line; min-height:7.6em; }
.home-review-card-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:8px; margin-top:auto; border-top:1px solid #eee7f1; }
.home-review-author { font-size:12px; color:#76647f; }
.home-review-read { border:0; background:none; color:#71527f; font-size:12px; font-weight:600; min-height:44px; padding:8px 0 8px 10px; }
.home-review-read:hover { text-decoration:underline; text-underline-offset:4px; }
.home-reviews-bottom { display:flex; justify-content:space-between; align-items:center; margin-top:8px; }
.home-reviews-progress { font-size:12px; color:#76647f; font-variant-numeric:tabular-nums; letter-spacing:1px; }
.home-reviews-controls { display:flex; gap:8px; }
.home-reviews-controls button { width:44px; height:44px; border:1px solid #d9cce1; border-radius:50%; background:transparent; color:#71527f; font-size:20px; transition:background .15s; }
.home-reviews-controls button:disabled { opacity:.35; cursor:default; }
.home-reviews-controls button:not(:disabled):hover { background:#eee5f4; }
.home-reviews-controls button:not(:disabled):active { background:#e2d5ec; }
.home-review-dialog { position:fixed; inset:0; margin:auto; width:min(520px,calc(100% - 32px)); max-height:80dvh; overflow-y:auto; padding:28px; border:1px solid #e5dce9; border-radius:12px; background:#fffdfa; color:#3d2948; }
.home-review-dialog::backdrop { background:rgba(28,14,38,.48); }
.home-review-dialog-top { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.home-review-dialog-top h2 { font:400 24px/1.5 'Gowun Batang',serif; }
.home-review-close { min-width:64px; min-height:44px; padding:8px; border:0; background:none; color:#71527f; font-size:14px; }
.home-review-dialog-author { color:#76647f; font-size:13px; margin:10px 0 20px; }
.home-review-dialog-content { white-space:pre-wrap; overflow-wrap:anywhere; font-size:16px; line-height:1.9; margin-bottom:24px; }
.home-reviews-preview { font-size:11px; color:#76647f; margin:10px 0 0; }
@media(max-width:768px) {
  .home-reviews { margin-top:16px; }
  .home-reviews-track { margin-right:-20px; padding-right:20px; gap:14px; grid-auto-columns:88%; }
  .home-review-card { padding:22px 22px 10px; }
  .home-review-kind { margin-bottom:20px; }
  .home-review-kind::after { width:25px; height:24px; right:20px; }
  .home-review-quote { font-size:15px; line-height:1.85; min-height:7.4em; margin-bottom:20px; }
  .home-reviews-bottom { margin-top:4px; }
  .home-review-dialog { padding:22px; }
}
@media(prefers-reduced-motion:reduce) {
  .home-reviews-track { scroll-behavior:auto; }
  .home-reviews-controls button { transition:none; }
}
