.opening-cases { padding:76px 0 100px; }.opening-cases__heading { margin-bottom:36px; }.opening-cases__heading h2 { margin:0 0 8px; font-family:var(--serif); font-size:clamp(30px,3.5vw,43px); letter-spacing:.05em; }.opening-cases__heading > p:last-child { margin:0; color:#6a645b; font-size:15px; }.opening-case-card { margin-bottom:28px; display:grid; grid-template-columns:minmax(330px,.95fr) 1.05fr; overflow:hidden; border:1px solid rgba(182,144,70,.44); background:#fff; box-shadow:0 10px 25px rgba(64,49,25,.06); }.opening-case-card__cover { min-height:390px; overflow:hidden; background:#201a13; }.opening-case-card__cover img { width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.22,1,.36,1); }.opening-case-card:hover .opening-case-card__cover img { transform:scale(1.035); }.opening-case-card__body { padding:42px clamp(28px,4vw,58px); align-self:center; }.opening-case-card__tag { margin:0 0 9px; color:#ad8241; font-size:10px; font-weight:700; letter-spacing:.18em; }.opening-case-card h3 { margin:0 0 26px; font-family:var(--serif); font-size:clamp(25px,3vw,35px); font-weight:600; line-height:1.45; letter-spacing:.05em; }.opening-case-card__meta { margin-bottom:27px; border-top:1px solid rgba(182,144,70,.35); }.opening-case-card__meta span { display:block; margin-top:12px; color:#a17b41; font-size:12px; letter-spacing:.1em; }.opening-case-card__meta p { margin:2px 0 0; color:#514d46; font-size:15px; }.case-expand { display:inline-flex; align-items:center; gap:14px; padding:0 0 7px; color:#251e15; border:0; border-bottom:1px solid #b69052; background:transparent; font-family:var(--sans); font-size:14px; font-weight:700; letter-spacing:.06em; cursor:pointer; }.case-expand b { color:#b69052; font-size:19px; font-weight:400; }.opening-case-card__more { grid-column:1 / -1; padding:0 28px 30px; background:#faf8f3; }.case-card-gallery { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.case-card-gallery img { width:100%; aspect-ratio:1 / .84; object-fit:cover; cursor:zoom-in; }.venus-photo { object-fit:cover; }.venus-photo--one { object-position:16% 13%; }.venus-photo--two { object-position:82% 17%; }.venus-photo--three { object-position:16% 71%; }.venus-photo--four { object-position:82% 78%; } @media (max-width:760px) { .opening-cases { padding:52px 0 70px; }.opening-case-card { display:block; }.opening-case-card__cover { min-height:270px; }.opening-case-card__body { padding:28px 24px; }.opening-case-card h3 { margin-bottom:20px; }.opening-case-card__more { padding:0 14px 16px; }.case-card-gallery { grid-template-columns:1fr 1fr; gap:8px; } }
.case-video-thumb { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-width:0; aspect-ratio:1 / .84; overflow:hidden; border:0; color:#fff8e8; background:linear-gradient(rgba(25,17,10,.43),rgba(25,17,10,.78)),var(--video-cover) center/cover; text-align:center; cursor:default; }.case-video-thumb::before { content:""; position:absolute; inset:0; border:1px solid rgba(231,196,122,.62); }.case-video-thumb span,.case-video-thumb strong,.case-video-thumb small { position:relative; z-index:1; }.case-video-thumb span { display:grid; place-items:center; width:38px; height:38px; border:1px solid #efc66f; border-radius:50%; color:#efc66f; font-size:14px; text-indent:2px; }.case-video-thumb strong { font-family:var(--serif); font-size:16px; font-weight:600; letter-spacing:.05em; }.case-video-thumb small { max-width:150px; color:#e5d7bd; font-size:11px; line-height:1.5; }.case-video-thumb[data-youtube]:not([data-youtube=""]) { cursor:pointer; }.case-video-thumb[data-youtube]:not([data-youtube=""]):hover { filter:brightness(1.1); }.case-video-thumb.is-playing { padding:0; background:#000; }.case-video-thumb.is-playing::before { display:none; }.case-video-thumb.is-playing iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.opening-case-card { align-items:start; }.opening-case-card__cover { height:360px; min-height:0; background:#f6f3eb; }.opening-case-card__cover img { object-fit:contain; background:#f6f3eb; }
.opening-case-card:first-of-type { grid-template-columns:280px 1fr; }.opening-case-card:first-of-type .opening-case-card__cover { width:280px; height:398px; }
.opening-case-card--corporate { grid-template-columns:280px 1fr; }.opening-case-card--corporate .opening-case-card__cover { width:280px; height:398px; }
.opening-case-card:first-of-type .opening-case-card__body { padding-top:18px; padding-bottom:18px; }.opening-case-card:first-of-type h3 { margin-bottom:16px; }.opening-case-card:first-of-type .opening-case-card__meta { margin-bottom:16px; }.opening-case-card:first-of-type .opening-case-card__meta span { margin-top:7px; }

/* Compact vertical rhythm */
.opening-cases { padding-block:58px 72px; }
@media (max-width:760px) { .opening-cases { padding-block:44px 54px; } }
@media (max-width:760px) { .opening-case-card:first-of-type { grid-template-columns:1fr; }.opening-case-card:first-of-type .opening-case-card__cover { width:100%; } }
@media (max-width:760px) { .opening-case-card--corporate { grid-template-columns:1fr; }.opening-case-card--corporate .opening-case-card__cover { width:100%; height:270px; } }
@media (max-width:760px) { .opening-case-card__cover { height:270px; } }
.opening-case-card { grid-template-columns:280px 1fr; }
.opening-case-card__cover { width:280px; height:398px; }
@media (max-width:760px) { .opening-case-card__cover { width:100%; height:270px; } }
/* 手機案例主圖統一尺寸：第一張金星案例也不可沿用桌機的 398px 高度。 */
@media (max-width:760px) {
  .opening-case-card__cover,
  .opening-case-card:first-of-type .opening-case-card__cover,
  .opening-case-card--corporate .opening-case-card__cover {
    width:100%;
    height:270px;
    min-height:270px;
  }
  .opening-case-card__cover img { width:100%; height:100%; object-fit:contain; }
}
