.catalog-section{
  position:relative;
  overflow:hidden;
  padding:64px 0 68px;
  color:var(--ink);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  background:#fff
}
.catalog-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:23px
}
.catalog-heading>div{max-width:710px}
.catalog-heading .eyebrow{color:var(--accent)}
.catalog-heading h2{
  margin:0;
  color:var(--ink);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(1.6rem,2.7vw,2.35rem);
  font-weight:800;
  line-height:1.05;
  letter-spacing:-.045em
}
.catalog-heading p{
  max-width:670px;
  margin:13px 0 0;
  color:var(--text-soft)
}
.catalog-guide-link{
  flex:0 0 auto;
  padding:10px 14px;
  color:var(--accent);
  border:1px solid #d8bee2;
  border-radius:9px;
  background:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:750
}
.catalog-guide-link:hover{
  color:#4f1168;
  border-color:#b98acb;
  background:#faf6fc
}
.catalog-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:13px
}
.catalog-card{
  position:relative;
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:center;
  padding:11px 11px 17px;
  color:var(--ink);
  border:1px solid var(--line);
  border-radius:var(--radius-card);
  background:#fff;
  box-shadow:var(--shadow-soft);
  text-align:center;
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease
}
.catalog-card:hover{
  transform:translateY(-4px);
  color:var(--ink);
  border-color:#d3b5df;
  box-shadow:var(--shadow-card)
}
.catalog-card:focus-visible{outline:3px solid #ff9b4a;outline-offset:3px}
.catalog-card i{
  position:absolute;
  right:11px;
  top:10px;
  color:#9d8ca3;
  font-style:normal;
  font-size:12px
}
.catalog-icon{
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:1.17;
  margin-bottom:13px;
  color:#5f167c;
  border:1px solid #eee3f0;
  border-radius:14px;
  background:radial-gradient(circle at 42% 25%,#fff 0 22%,transparent 50%),linear-gradient(145deg,#fff2e6,#efe5ff);
  filter:drop-shadow(0 12px 15px rgba(15,6,18,.2))
}
.catalog-icon svg{
  width:48%;
  height:48%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke
}
.catalog-card:nth-child(3n+2) .catalog-icon{color:#b64c0c}
.catalog-card:nth-child(3n) .catalog-icon{color:#7a2aa0}
.catalog-card strong{font-size:1rem;line-height:1.2}
.catalog-card small{
  display:block;
  margin-top:5px;
  color:var(--text-soft);
  font-size:10px;
  line-height:1.3
}
.catalog-card-more{border-color:#e4c9d8}
.catalog-footnote,.article .catalog-panel .catalog-footnote{
  margin-top:15px;
  color:var(--text-soft);
  font-size:12px
}
.catalog-panel{
  position:relative;
  width:min(var(--max),calc(100vw - 36px))!important;
  margin:18px 0 8px 50%!important;
  padding:34px!important;
  overflow:hidden;
  color:var(--ink);
  border:1px solid var(--line)!important;
  border-radius:var(--radius-panel);
  background:#fff;
  box-shadow:none
}
.catalog-panel .catalog-heading{margin-bottom:21px}

@media(max-width:1050px){
  .catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .catalog-panel{padding:29px!important}
}
@media(max-width:720px){
  .catalog-section{padding:48px 0 52px}
  .catalog-heading{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
    margin-bottom:18px
  }
  .catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  .catalog-card{padding:8px 8px 13px;border-radius:16px}
  .catalog-icon{margin-bottom:10px;font-size:2.7rem}
  .catalog-card strong{font-size:.9rem}
  .catalog-card small{display:none}
  .catalog-panel{
    width:calc(100vw - 26px)!important;
    padding:20px 12px 22px!important;
    border-radius:16px
  }
  .catalog-panel .catalog-heading{margin-bottom:17px;padding:0 5px}
}
@media(max-width:410px){
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-icon{aspect-ratio:1.35}
}
@media(prefers-reduced-motion:reduce){
  .catalog-card{transition:none}
  .catalog-card:hover{transform:none}
}
