/* Vitrine editorial: cada material tem uma composição de entrada própria. */
.shop-grid-samples { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.shop-card-editorial { display:flex; flex-direction:column; min-width:0; border:1px solid var(--color-line); background:var(--color-card); }
.material-poster { position:relative; display:flex; flex-direction:column; justify-content:flex-start; height:330px; padding:30px 32px 22px; overflow:hidden; isolation:isolate; text-decoration:none; color:var(--color-ink); background:var(--color-paper); }
.poster-art { position:absolute; z-index:-2; width:100%; height:100%; object-fit:cover; inset:0; transition:transform .45s ease; }
.material-poster:hover .poster-art { transform:scale(1.035); }
.poster-kicker { font: .63rem/1.5 var(--sans); letter-spacing:.14em; text-transform:uppercase; color:var(--color-red-hover); }
.poster-phrase { display:block; font:400 clamp(2.3rem,3.5vw,3.25rem)/1.08 var(--serif); letter-spacing:-.035em; margin:28px 0 17px; max-width:18ch; }
.poster-phrase em { font-weight:400; }
.poster-rule { display:block; width:34px; height:1px; background:currentColor; opacity:.65; }
.poster-bottom { margin-top:auto; display:flex; justify-content:space-between; align-items:center; font: .7rem/1.5 var(--sans); letter-spacing:.035em; }
.poster-bottom>span { font-size:1.35rem; }
.poster-paisagem .poster-art { object-position:75% 55%; opacity:.65; }
.poster-paisagem::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#f4efe6ee,#f4efe699 50%,#f4efe600); }
.poster-paisagem .poster-phrase { max-width:16ch; }
.poster-duplo { background:var(--color-night); color:var(--color-paper); }
.poster-duplo .poster-art { inset:0 0 0 auto; width:55%; opacity:.65; filter:grayscale(1) sepia(.2); mix-blend-mode:screen; object-position:50% 50%; }
.poster-duplo::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#202427 20%,#202427bb 62%,#20242700); }
.poster-duplo .poster-kicker { color:var(--color-red-soft); }
.poster-duplo .poster-phrase { max-width:18ch; }
.poster-entre { background:var(--color-red-hover); color:var(--color-paper); }
.poster-entre .poster-art { inset:auto -45px -55px auto; width:260px; height:260px; object-fit:contain; mix-blend-mode:screen; opacity:.22; }
.poster-entre .poster-kicker { color:#f0d5cc; }
.poster-entre .poster-phrase { max-width:18ch; }
.poster-vestigios { background:var(--color-paper); }
.poster-vestigios .poster-art { inset:0 0 0 auto; width:49%; height:100%; object-fit:cover; object-position:48% 2%; }
.poster-vestigios::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#f4efe6 47%,#f4efe600 64%); }
.poster-vestigios .poster-kicker { max-width:21ch; }
.poster-vestigios .poster-phrase { max-width:10ch; }
.poster-vestigios .poster-bottom { max-width:48%; }
.shop-card-editorial .shop-copy { padding:24px 24px 0; }
.shop-card-editorial .shop-copy .shop-product-title { font:400 1.9rem/1.1 var(--serif); letter-spacing:-.035em; margin:0 0 12px; }
.shop-card-editorial .shop-copy .shop-product-title a { color:var(--color-ink); text-decoration:none; }
.shop-card-editorial .shop-copy .shop-product-title a:hover { color:var(--color-red-hover); }
.shop-card-editorial .shop-copy>p:not(.eyebrow) { font-size:.9rem; line-height:1.75; max-width:53ch; margin:0 0 18px; }
.shop-card-editorial .shop-bottom { padding:16px 0 22px; gap:16px; }
.shop-details-line { display:flex; flex-direction:column; gap:8px; }
.shop-card-editorial .shop-format { color:var(--color-muted); font-size:.72rem; line-height:1.65; }
.shop-preview-link { width:fit-content; font-size:.72rem; line-height:1.6; color:var(--color-red-hover); text-decoration:none; }
.shop-preview-link:hover { text-decoration:underline; text-underline-offset:4px; }
.shop-purchase { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.shop-purchase>span { font:400 1.35rem/1.3 var(--serif); white-space:nowrap; }
.shop-purchase>a { display:inline-flex; gap:18px; align-items:center; font-size:.78rem; line-height:1.6; color:var(--color-paper); background:var(--color-ink); padding:11px 14px; text-decoration:none; }
.shop-purchase>a:hover { background:var(--color-red-hover); }
@media(max-width:1000px) { .material-poster { padding:26px 24px 20px; } .poster-phrase { font-size:2.55rem; } .shop-card-editorial .shop-copy { padding:22px 20px 0; } .shop-purchase { align-items:flex-start; flex-direction:column; gap:14px; } }
@media(max-width:650px) {
 .shop-grid-samples { grid-template-columns:1fr; gap:24px; }
 .shop-card-editorial { display:flex; grid-template-columns:none; }
 .material-poster { height:285px; padding:24px 24px 20px; }
 .poster-kicker { font-size:.59rem; }
 .poster-phrase { font-size:2.4rem; margin-top:28px; }
 .poster-paisagem .poster-phrase { font-size:2.3rem; }
 .poster-duplo .poster-art { width:70%; }
 .poster-entre .poster-art { width:210px; height:210px; }
 .poster-vestigios .poster-art { width:45%; }
 .poster-vestigios .poster-phrase { max-width:10ch; }
 .poster-bottom { font-size:.68rem; }
 .shop-card-editorial .shop-copy { padding:20px 18px 0; }
 .shop-card-editorial .shop-copy .shop-product-title { font-size:1.85rem; }
 .shop-card-editorial .shop-copy>p:not(.eyebrow) { font-size:.86rem; }
 .shop-purchase { flex-direction:row; align-items:center; gap:10px; }
 .shop-purchase>span { font-size:1.2rem; }
 .shop-purchase>a { font-size:.7rem; padding:10px 11px; gap:12px; }
}
@media(max-width:370px) { .shop-purchase { flex-direction:column; align-items:flex-start; } .poster-phrase { font-size:2.15rem; } }
@media(prefers-reduced-motion:reduce) { .poster-art { transition:none; } .material-poster:hover .poster-art { transform:none; } }
.poster-duplo .poster-art { mask-image:linear-gradient(to right,transparent,#000 40%); -webkit-mask-image:linear-gradient(to right,transparent,#000 40%); }
.poster-entre .poster-art { mask-image:radial-gradient(ellipse at center,#000 8%,transparent 70%); -webkit-mask-image:radial-gradient(ellipse at center,#000 8%,transparent 70%); }
