/* Editorial previews share the current storefront's paper, coral and dark themes. */
.coming-soon-section { padding-block:42px 38px; border-top:1px solid var(--line); scroll-margin-top:0; }
.coming-soon-heading { display:grid; grid-template-columns:1fr minmax(260px,420px); align-items:end; gap:24px; margin-bottom:25px; }
.coming-soon-heading .eyebrow { margin:0 0 10px; }
.coming-soon-heading h2 { margin:0; font-size:clamp(29px,3.1vw,43px); font-weight:750; line-height:1.15; letter-spacing:-1.8px; }
.coming-soon-heading h2 em { color:var(--coral); font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.coming-soon-heading>p { margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.coming-soon-swipe-hint { display:none; }
.coming-soon-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.coming-soon-card { min-width:0; display:flex; flex-direction:column; background:var(--surface); border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.coming-soon-figure { margin:0; }
.coming-soon-image { aspect-ratio:2/3; background:var(--soft); border-bottom:1px solid var(--line); }
.coming-soon-image img { display:block; width:100%; height:100%; object-fit:contain; }
.coming-soon-figure figcaption { padding:10px 20px 0; color:var(--muted); font-size:11px; line-height:1.5; }
.coming-soon-body { display:flex; flex:1; flex-direction:column; padding:18px 20px 14px; }
.coming-soon-meta { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; color:var(--muted); font-size:10px; }
.coming-soon-meta>span:first-child { font-weight:650; letter-spacing:.5px; text-transform:uppercase; }
.coming-soon-badge { flex-shrink:0; padding:3px 8px; border:1px solid var(--line); border-radius:20px; color:var(--ink); background:var(--paper); font-weight:600; }
.coming-soon-body h3 { margin:15px 0 8px; font-size:25px; line-height:1.15; letter-spacing:-.8px; }
.coming-soon-tagline { margin:0 0 10px; color:var(--ink); font-size:15px; font-weight:550; line-height:1.5; }
.coming-soon-description { margin:0 0 18px; color:var(--muted); font-size:13px; line-height:1.65; }
.coming-soon-link { align-self:flex-start; margin-top:auto; min-height:44px; }
.coming-soon-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 24px; margin-top:20px; }
.coming-soon-footer p { margin:0; color:var(--muted); font-size:12px; }
.coming-soon-link:focus-visible { outline:2px solid var(--coral); outline-offset:4px; border-radius:2px; }
.coming-soon-grid:focus-visible { outline:2px solid var(--coral); outline-offset:5px; border-radius:14px; }
@media(max-width:1050px) { .coming-soon-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; } .coming-soon-heading { grid-template-columns:1fr 1fr; } }
@media(max-width:640px) { .coming-soon-section { padding-block:30px; } .coming-soon-heading { grid-template-columns:1fr; gap:14px; margin-bottom:20px; } .coming-soon-heading h2 { letter-spacing:-1.2px; } .coming-soon-swipe-hint { display:flex; justify-content:space-between; gap:12px; margin:0 0 12px; color:var(--muted); font-size:11px; } .coming-soon-grid { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:90%; gap:14px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:var(--coral) var(--soft); padding-bottom:14px; } .coming-soon-card { scroll-snap-align:start; } .coming-soon-body { padding:16px 18px 14px; } .coming-soon-footer { align-items:flex-start; flex-direction:column; } }
