/* =========================================================
   DVSTUDIO V129 — 1370 WINE MENU EDITORIAL / FLIPBOOK
   Real supplied artwork only. No recoloring or generated pages.
   ========================================================= */

.client-theme-1370 .wine-menu-section{
  --wine-green:#0e3827;
  --wine-terracotta:#b94b1b;
  --wine-cream:#f4f0e8;
  --wine-paper:#fbf8f2;
  overflow:clip;
}

.client-theme-1370 .wine-menu-editorial{
  margin-top:clamp(30px,4.5vw,64px);
  display:grid;
  gap:clamp(26px,4vw,54px);
}

.wine-menu-mockup-wrap{
  border:1px solid rgba(14,56,39,.14);
  border-radius:clamp(22px,2.4vw,36px);
  overflow:hidden;
  background:var(--wine-paper,#fbf8f2);
  box-shadow:0 24px 70px rgba(14,56,39,.09);
}
.wine-menu-mockup{margin:0;overflow:hidden;background:#e9e0d2}
.wine-menu-mockup img{
  display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;
  filter:none!important;opacity:1!important;mix-blend-mode:normal!important;
}
.wine-menu-project-meta{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  padding:clamp(18px,2.4vw,30px);
  background:var(--wine-paper,#fbf8f2);color:var(--wine-green,#0e3827)
}
.wine-menu-project-meta h3{
  margin:7px 0 0;font-family:var(--font-body);font-size:clamp(24px,2.7vw,38px);
  line-height:1.05;font-weight:750;letter-spacing:-.035em
}
.wine-menu-meta-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.wine-menu-meta-tags span{
  border:1px solid rgba(14,56,39,.18);border-radius:999px;padding:9px 12px;
  font-size:9px;font-weight:850;letter-spacing:.12em;color:var(--wine-green,#0e3827)
}

.wine-book{
  border:1px solid rgba(14,56,39,.15);
  border-radius:clamp(22px,2.7vw,38px);
  background:
    radial-gradient(circle at 50% 8%,rgba(255,255,255,.95),rgba(255,255,255,0) 42%),
    linear-gradient(145deg,#e9e2d7,#f8f4ec 52%,#e8dfd1);
  padding:clamp(14px,2.1vw,28px);
  box-shadow:0 26px 80px rgba(14,56,39,.10);
  color:var(--wine-green,#0e3827);
  contain:layout paint;
}
.wine-book-toolbar,.wine-book-footer{
  display:flex;align-items:center;justify-content:space-between;gap:18px
}
.wine-book-toolbar{padding:2px 2px clamp(14px,1.8vw,22px)}
.wine-book-toolbar>div:first-child{display:flex;align-items:center;gap:12px;min-width:0}
.wine-book-kicker,.wine-book-toolbar strong,.wine-book-footer{
  font-size:10px;font-weight:850;letter-spacing:.11em;text-transform:uppercase
}
.wine-book-kicker{color:rgba(14,56,39,.62)}
.wine-book-toolbar strong{white-space:nowrap;color:var(--wine-green,#0e3827)}
.wine-book-toolbar-actions{display:flex;gap:8px}
.wine-book-toolbar-actions button,.wine-book-edge{
  appearance:none;border:1px solid rgba(14,56,39,.18);background:rgba(255,255,255,.66);
  color:var(--wine-green,#0e3827);cursor:pointer;transition:transform .2s ease,background .2s ease,opacity .2s ease
}
.wine-book-toolbar-actions button{
  width:42px;height:42px;border-radius:999px;font-size:18px;display:grid;place-items:center
}
.wine-book-toolbar-actions button:hover,.wine-book-edge:hover{background:#fff;transform:translateY(-1px)}
.wine-book button:disabled{opacity:.28;cursor:default;transform:none!important}

.wine-book-stage{
  position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;align-items:center;
  gap:clamp(8px,1.3vw,18px);outline:none;touch-action:pan-y;user-select:none;-webkit-user-select:none
}
.wine-book-stage:focus-visible .wine-book-shell{outline:2px solid rgba(185,75,27,.55);outline-offset:6px}
.wine-book-edge{width:46px;height:68px;border-radius:999px;display:grid;place-items:center;font-size:18px;z-index:8}
.wine-book-shell{
  min-width:0;position:relative;perspective:2400px;filter:drop-shadow(0 22px 22px rgba(53,40,24,.14));
}
.wine-book-spread{
  position:relative;width:100%;aspect-ratio:2886/2048;transform-style:preserve-3d;
}
.wine-book-page,.wine-book-turn{
  position:absolute;top:0;width:50%;height:100%;overflow:hidden;background:#f5f1e9;
}
.wine-book-page{
  box-shadow:inset 0 0 0 1px rgba(14,56,39,.07);transition:opacity .18s ease;
}
.wine-book-page-left{left:0;border-radius:12px 2px 2px 12px}
.wine-book-page-right{left:50%;border-radius:2px 12px 12px 2px}
.wine-book-page.is-empty{opacity:0;pointer-events:none}
.wine-book-page img,.wine-book-turn-face img{
  width:100%;height:100%;display:block;object-fit:cover;background:#f5f1e9;
  filter:none!important;opacity:1!important;mix-blend-mode:normal!important;
  -webkit-user-drag:none;
}
.wine-book-spine{
  position:absolute;left:50%;top:0;bottom:0;width:18px;z-index:5;transform:translateX(-50%);pointer-events:none;
  background:linear-gradient(90deg,rgba(67,45,24,.20),rgba(255,255,255,.45) 38%,rgba(255,255,255,.18) 52%,rgba(61,41,23,.18));
  filter:blur(.4px);mix-blend-mode:multiply;opacity:.48
}
.wine-book-turn{
  left:50%;z-index:6;transform-origin:left center;transform-style:preserve-3d;overflow:visible;
  border-radius:2px 12px 12px 2px;pointer-events:none;display:none;
  will-change:transform;
}
.wine-book-turn.is-active{display:block}
.wine-book-turn.is-next{animation:wineTurnNext .68s cubic-bezier(.55,.06,.2,1) both}
.wine-book-turn.is-prev{animation:wineTurnPrev .68s cubic-bezier(.55,.06,.2,1) both}
.wine-book-turn-face{
  position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;
  box-shadow:0 6px 25px rgba(47,31,17,.12)
}
.wine-book-turn-front{border-radius:2px 12px 12px 2px}
.wine-book-turn-back{transform:rotateY(180deg);border-radius:12px 2px 2px 12px}
.wine-book-turn::after{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;backface-visibility:hidden;
  background:linear-gradient(90deg,rgba(36,21,9,.18),transparent 14%,transparent 72%,rgba(255,255,255,.18));
  opacity:.4
}
@keyframes wineTurnNext{from{transform:rotateY(0deg)}to{transform:rotateY(-180deg)}}
@keyframes wineTurnPrev{from{transform:rotateY(-180deg)}to{transform:rotateY(0deg)}}

.wine-book-footer{padding:clamp(14px,1.7vw,21px) 2px 2px;color:rgba(14,56,39,.65)}
.wine-book-footer>[data-wine-title]{color:var(--wine-green,#0e3827);letter-spacing:.065em}
.wine-book-hint{text-align:right;font-weight:650;letter-spacing:.04em;text-transform:none}

/* Work archive: one campaign poster + one strong editorial mockup, not a crowded three-card wall. */
#capabilities-world .work-graphics-showcase-v129{
  grid-template-columns:minmax(190px,.68fr) minmax(0,1.32fr)!important;
  align-items:end!important;
}
#capabilities-world .work-graphics-showcase-v129 figure:nth-child(2){transform:translateY(-12px)}
#capabilities-world .work-graphics-showcase-v129 .work-graphic-wine img{aspect-ratio:3/2;object-fit:cover}
#capabilities-world .work-graphics-showcase-v129 .work-graphic-wine a{display:block;color:inherit;text-decoration:none}

@media(max-width:1100px){
  #capabilities-world .work-graphics-showcase-v129{
    grid-template-columns:minmax(220px,34vw) minmax(420px,64vw)!important;
  }
  #capabilities-world .work-graphics-showcase-v129 figure:nth-child(2){transform:none}
}

@media(max-width:760px){
  .wine-menu-project-meta{align-items:flex-start;flex-direction:column}
  .wine-menu-meta-tags{justify-content:flex-start}
  .wine-book{padding:12px;border-radius:22px;contain:layout paint}
  .wine-book-toolbar{padding:2px 2px 12px}
  .wine-book-kicker{max-width:24ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .wine-book-stage{grid-template-columns:1fr;gap:0}
  .wine-book-edge{display:none}
  .wine-book-shell{width:min(100%,520px);margin-inline:auto;filter:drop-shadow(0 16px 18px rgba(53,40,24,.13))}
  .wine-book-spread{aspect-ratio:1443/2048}
  .wine-book-page,.wine-book-turn{width:100%;left:0!important;border-radius:10px!important}
  .wine-book-page-left,.wine-book-spine{display:none!important}
  .wine-book-page-right{left:0}
  .wine-book-turn{transform-origin:left center}
  .wine-book-turn-face,.wine-book-turn-front,.wine-book-turn-back{border-radius:10px!important}
  .wine-book-footer{align-items:flex-start;flex-direction:column;gap:7px}
  .wine-book-hint{text-align:left;font-size:9px}
  #capabilities-world .work-graphics-showcase-v129{
    grid-template-columns:minmax(205px,68vw) minmax(300px,86vw)!important;
  }
}

@media(max-width:480px){
  .wine-book-toolbar-actions button{width:39px;height:39px}
  .wine-book-kicker{font-size:8px}
  .wine-book-toolbar strong{font-size:9px}
  .wine-book-footer{font-size:8px}
}

@media(prefers-reduced-motion:reduce){
  .wine-book-turn.is-next,.wine-book-turn.is-prev{animation-duration:.01ms!important}
}
