/* Share card structure and actions; each resource may supply its own cover. */
.ip-pack-card a { text-decoration:none; }
.ip-pack-copy a,.ip-pack-card h3 a { color:inherit; }
.ip-pack-hero { display:flex; flex-direction:column; justify-content:space-between; }
.ip-pack-hero.ip-pack-hero--image { display:block; padding:0; min-height:0; aspect-ratio:var(--resource-cover-ratio,3 / 2); background:var(--pack-cover-bg); }
.ip-pack-hero--image > img { display:block; width:100%; height:100%; object-fit:contain; }
.ip-icon-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:center; justify-items:center; gap:12px; padding:15px 6px 13px; }
.ip-icon-grid img { display:block; width:28px; height:28px; object-fit:contain; }
.ip-pack-card a:focus-visible { outline:2px solid #776394; outline-offset:4px; }
/* Collection packs use the same 88px heading and 3:2 cover as website cards. */
[data-study="quiet-cards"] .quiet-pack-card-heading { gap:12px; }
.quiet-pack-card-copy { flex:1; min-width:0; }
.quiet-pack-card-copy:hover .resource-name { color:var(--muted); }
.quiet-pack-preview-card .fp-download-slot { width:6em; }
[data-study="quiet-cards"] .quiet-pack-preview { display:flex; flex-direction:column; justify-content:space-between; }
[data-study="quiet-cards"] .quiet-pack-preview--image { background:var(--pack-cover-bg); }
[data-study="quiet-cards"] .quiet-pack-preview--image > img { height:100%; object-fit:contain; }
[data-study="quiet-cards"] .quiet-pack-preview--sample { padding:clamp(12px,5cqw,20px); background:var(--fp-lilac); color:var(--fp-purple); }
.quiet-pack-preview .fp-spec-lettering { flex:1; min-height:0; align-items:center; padding:0; }
.quiet-pack-preview .fp-spec-latin { font-size:clamp(42px,25cqw,100px); }
.quiet-pack-preview .fp-spec-top,.quiet-pack-preview .fp-spec-bottom { flex:none; }
[data-study="quiet-cards"] .quiet-font-pack-art--cover { background:var(--fp-peach); color:#69351e; }
[data-study="quiet-cards"] .quiet-font-pack-art--hand { background:var(--fp-paper); color:#5b5741; }
.quiet-font-cover-lettering { font-family:'Songti SC','STSong',serif; font-size:clamp(28px,13cqw,54px); font-weight:700; line-height:1.05; }
.quiet-font-hand-lettering { font-family:'Kaiti SC','STKaiti','KaiTi',cursive; font-size:clamp(32px,15cqw,60px); font-weight:500; transform:rotate(-8deg); text-decoration:underline; text-underline-offset:8px; }
.ip-detail-specimen { color:#514071; }
.ip-detail-label { display:flex; justify-content:space-between; gap:16px; font-size:12px; line-height:1.5; margin-bottom:28px; }
.ip-style-sample + .ip-style-sample { border-top:1px solid #51407125; margin-top:26px; padding-top:24px; }
.ip-style-sample h2 { font-size:12px; font-weight:500; margin:0 0 20px; }
.ip-detail-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:26px 18px; align-items:center; justify-items:center; }
.ip-detail-grid img { display:block; width:36px; height:36px; object-fit:contain; }
@media(max-width:759px) {
  .ip-icon-grid { padding-block:25px; gap:16px; }
  .ip-icon-grid img { width:32px; height:32px; }
  .ip-detail-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px 12px; }
  .ip-detail-grid img { width:30px; height:30px; }
  .ip-detail-label { font-size:11px; margin-bottom:22px; }
}
