.pack-page { color:#19344f; }
.pack-page h1,.pack-page h2,.pack-page h3 { color:#002b5f; }
.pack-page h1 { font-size:clamp(2.25rem,4.2vw,4.2rem); line-height:1.06; letter-spacing:-.035em; margin:.6em 0; }
.pack-page h2 { font-size:clamp(1.6rem,2.3vw,2.1rem); line-height:1.2; }
.pack-page p,.pack-page li { line-height:1.65; }
.pack-page .lead { font-size:1.2rem; max-width:39rem; }
.pack-hero { padding:2.5rem 0 3.5rem; background:#f7f4f5; border-bottom:3px solid #d8b572; }
.pack-columns { display:grid; grid-template-columns:1.15fr 1fr; align-items:start; gap:clamp(2rem,5vw,5rem); }
.pack-kicker { color:#b90050; text-transform:uppercase; font-size:.8rem; font-weight:800; letter-spacing:.12em; }
.pack-preview { display:block; width:min(100%,310px); justify-self:center; margin-top:1rem; box-shadow:0 14px 32px #002b5f25; transform:rotate(2deg); }
.pack-preview img { width:100%; height:auto; display:block; }
.pack-meta { font-size:.88rem; color:#4f6070; }
.pack-contents { padding-left:1.4rem; }
.pack-contents li { padding:.6rem 0; border-bottom:1px solid #dce2e8; }
.pack-form-panel { background:#f3f6fa; border-top:4px solid #c9005a; padding:clamp(1.2rem,3vw,2rem); scroll-margin-top:7rem; }
.pack-form { display:grid; gap:1.2rem; max-width:44rem; }
.pack-form label { display:grid; gap:.4rem; font-weight:650; }
.pack-form input:not([type=checkbox]):not([type=hidden]),.pack-form textarea,.pack-form select { box-sizing:border-box; width:100%; min-width:0; min-height:48px; background:#fff; border:1px solid #7c8e9e; border-radius:5px; padding:.7rem; font:inherit; color:#19344f; }
.pack-form .pack-check { grid-template-columns:22px 1fr; align-items:start; font-weight:400; }
.pack-check input { width:20px; height:20px; margin-top:.35rem; }
.pack-page .button { min-height:48px; padding:.8rem 1.2rem; }
.pack-page .fnd-notice { margin:1rem 0; border-left:4px solid #c9005a; background:#fff; padding:1rem; }
@media(max-width:760px) { .pack-columns { grid-template-columns:1fr; }.pack-preview { width:210px; }.pack-hero { padding:1.5rem 0 2rem; }.pack-page .button { text-align:center; }.pack-page h1 { font-size:2.5rem; } }

.pack-columns > * { min-width:0; }
.pack-page { overflow-wrap:anywhere; }
.pack-page .button { white-space:normal; max-width:100%; }
.fundraising-tools-page .nav-row { flex-wrap:wrap; }
.fundraising-tools-page .header-actions { flex-wrap:wrap; max-width:100%; }
.fundraising-tools-page .header-actions .header-cta { width:auto; flex:0 0 auto; }
