:root{
  --catalog-red:#d71920;
  --catalog-black:#0b0b0b;
  --catalog-paper:#f7f6f3;
  --catalog-line:#cfcfcf;
}
.catalog-stage{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:calc(100vh - 86px);
  background:
    radial-gradient(circle at 22% 20%,rgba(215,25,32,.08),transparent 28%),
    linear-gradient(180deg,#fbfbfa 0%,#f2f1ee 100%);
  padding:72px 0 84px;
  --index-border-width:clamp(170px,16vw,280px);
}
.catalog-stage::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.13;
  background-image:radial-gradient(#111 0.8px,transparent 0.8px);
  background-size:17px 17px;
}
.catalog-stage .page-side-stack{z-index:1}
.catalog-coming{
  position:relative;
  z-index:3;
  width:min(1080px,calc(100% - 430px));
  margin:0 auto;
}
.catalog-coming__panel{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:4px solid var(--catalog-black);
  box-shadow:12px 12px 0 var(--catalog-red);
}
.catalog-coming__visual{
  display:block;
  width:100%;
  aspect-ratio:16/8.2;
  object-fit:cover;
  object-position:center;
  border-bottom:4px solid var(--catalog-black);
}
.catalog-coming__content{
  position:relative;
  padding:36px 42px 40px;
  text-align:center;
}
.catalog-coming__content::before,
.catalog-coming__content::after{
  content:"";
  position:absolute;
  top:24px;
  width:82px;
  height:6px;
  background:var(--catalog-red);
  transform:skewX(-28deg);
}
.catalog-coming__content::before{left:28px}
.catalog-coming__content::after{right:28px}
.catalog-coming__eyebrow{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  margin:0 0 12px;
  padding:6px 14px 5px;
  background:var(--catalog-black);
  color:#fff;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.catalog-coming h1{
  margin:0;
  color:var(--catalog-black);
  font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;
  font-size:clamp(3rem,7vw,6.5rem);
  line-height:.88;
  letter-spacing:.015em;
  text-transform:uppercase;
  font-style:italic;
  text-shadow:3px 3px 0 #e6e6e6;
}
.catalog-coming h1 span{color:var(--catalog-red)}
.catalog-coming__lead{
  max-width:720px;
  margin:20px auto 0;
  color:#333;
  font-size:1.06rem;
  font-weight:700;
  line-height:1.6;
}
.catalog-coming__note{
  max-width:650px;
  margin:8px auto 0;
  color:#666;
  font-size:.92rem;
  line-height:1.55;
}
.catalog-coming__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:24px;
}
.catalog-coming__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 20px 11px;
  border:3px solid var(--catalog-black);
  background:var(--catalog-black);
  color:#fff;
  text-decoration:none;
  font-size:.84rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:4px 4px 0 #cfcfcf;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.catalog-coming__btn--red{
  background:var(--catalog-red);
  border-color:var(--catalog-red);
  box-shadow:4px 4px 0 var(--catalog-black);
}
.catalog-coming__btn:hover,
.catalog-coming__btn:focus-visible{
  transform:translateY(-2px);
  box-shadow:6px 6px 0 var(--catalog-black);
}
.catalog-coming__facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:22px;
  border:2px solid var(--catalog-black);
  background:#f3f3f3;
}
.catalog-coming__facts span{
  padding:12px 9px;
  color:#333;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.catalog-coming__facts span+span{border-left:2px solid var(--catalog-black)}
@media (max-width:1240px){
  .catalog-coming{width:min(980px,calc(100% - 230px))}
  .catalog-stage{--index-border-width:112px}
}
@media (max-width:900px){
  .catalog-stage{padding:36px 0 54px;min-height:auto}
  .catalog-coming{width:calc(100% - 28px)}
  .catalog-coming__panel{box-shadow:7px 7px 0 var(--catalog-red)}
  .catalog-coming__content{padding:28px 18px 30px}
  .catalog-coming__content::before,.catalog-coming__content::after{display:none}
  .catalog-coming__visual{aspect-ratio:4/3}
  .catalog-coming__lead{font-size:.98rem}
  .catalog-coming__facts{grid-template-columns:1fr}
  .catalog-coming__facts span+span{border-left:0;border-top:2px solid var(--catalog-black)}
}
