
.qifp-shell,.qifp-shell *{box-sizing:border-box}
.qifp-shell{--fp-green:#0f5b46;--fp-green-dark:#073f31;--fp-green-soft:#eef8f3;--fp-gold:#e4b83c;--fp-ink:#153b30;--fp-muted:#687b74;--fp-border:#dbe8e2;width:100%;color:var(--fp-ink);font-family:"Inter","Segoe UI",sans-serif}
.qifp-container{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:54px 0 72px}
.qifp-hero{max-width:760px;margin-bottom:30px}
.qifp-eyebrow{margin-bottom:9px;color:#9b7114;font-size:12px;font-weight:800;letter-spacing:.16em}
.qifp-hero h1,.qifp-panel h2,.qifp-more h2{margin:0;color:var(--fp-green-dark);font-family:Georgia,"Times New Roman",serif;line-height:1.05}
.qifp-hero h1{font-size:clamp(44px,7vw,68px)}
.qifp-hero p{margin:16px 0 0;max-width:720px;color:var(--fp-muted);font-size:17px;line-height:1.7}
.qifp-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}
.qifp-category{min-height:78px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--fp-border);border-radius:14px;background:#fff;color:var(--fp-green);cursor:pointer;font:inherit;font-size:15px;font-weight:800;transition:.2s ease}
.qifp-category:hover{border-color:#b8d8ca;background:#f9fcfb}
.qifp-category.is-active{border-color:#c7a33a;background:#fff5cf;color:#2f4f44;box-shadow:inset 0 0 0 1px rgba(199,163,58,.15)}
.qifp-category-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--fp-green-soft);font-size:18px}
.qifp-category.is-active .qifp-category-icon{background:#ffe99c}
.qifp-panel{animation:qifpFade .2s ease}
@keyframes qifpFade{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.qifp-panel-heading{display:flex;justify-content:space-between;gap:20px;margin:10px 0 20px}
.qifp-panel-kicker{margin-bottom:6px;color:var(--fp-green);font-size:13px;font-weight:800}
.qifp-panel h2{font-size:clamp(30px,4vw,42px)}
.qifp-panel-heading p{max-width:760px;margin:12px 0 0;color:var(--fp-muted);line-height:1.68}
.qifp-ayah-list{display:grid;gap:16px}
.qifp-ayah-card{border:1px solid var(--fp-border);border-radius:16px;background:#fff;padding:26px;box-shadow:0 10px 28px rgba(7,63,49,.035)}
.qifp-ayah-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.qifp-ref{display:inline-flex;padding:6px 9px;border-radius:999px;background:var(--fp-green-soft);color:var(--fp-green);font-size:12px;font-weight:800}
.qifp-listen{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid #bdd9cc;border-radius:999px;background:#fff;color:var(--fp-green);cursor:pointer;font:inherit;font-size:13px;font-weight:800}
.qifp-listen:hover{background:var(--fp-green-soft)}
.qifp-listen.is-playing{border-color:var(--fp-green);background:var(--fp-green);color:#fff}
.qifp-arabic{color:var(--fp-green-dark);font-family:"Amiri Quran","Amiri","Traditional Arabic",serif;font-size:clamp(32px,5vw,46px);line-height:1.9;text-align:right}
.qifp-roman{margin:16px 0 0;color:#2f5548;font-size:17px;line-height:1.72}
.qifp-excerpt-note{margin-top:10px;color:#87958f;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.qifp-more{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-top:34px;padding:28px;border-radius:18px;background:linear-gradient(135deg,var(--fp-green),var(--fp-green-dark));color:#fff}
.qifp-more h2{color:#fff;font-size:clamp(26px,4vw,38px)}
.qifp-eyebrow-light{color:#f3d66f}
.qifp-primary-link{flex-shrink:0;display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:11px 16px;border-radius:9px;background:var(--fp-gold);color:#213b33!important;text-decoration:none!important;font-size:14px;font-weight:800}
.qifp-note{margin-top:22px;padding:16px 18px;border:1px solid #cfe2d8;border-radius:12px;background:var(--fp-green-soft);color:#45665a;font-size:13px;line-height:1.65}
@media(max-width:780px){
.qifp-container{width:min(100% - 28px,1080px);padding-top:34px;padding-bottom:54px}
.qifp-hero{margin-bottom:24px}
.qifp-hero h1{font-size:clamp(46px,13vw,56px)}
.qifp-hero p{font-size:16px}
.qifp-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.qifp-category{min-height:66px;border-radius:12px;font-size:15px}
.qifp-ayah-card{padding:21px 18px;border-radius:14px}
.qifp-ayah-top{align-items:flex-start;margin-bottom:13px}
.qifp-arabic{font-size:clamp(31px,9vw,40px);line-height:1.85}
.qifp-roman{font-size:16px}
.qifp-more{flex-direction:column;align-items:flex-start;padding:24px 20px}
.qifp-primary-link{width:100%}
}
@media(max-width:430px){
.qifp-listen-text{display:none}
.qifp-listen{width:40px;justify-content:center;padding:8px}
.qifp-category-icon{display:none}
}

/* v2.1 — remove theme-level top whitespace on the dedicated Find Peace page */
body.qifp-page main,
body.qifp-page .wp-block-post-content,
body.qifp-page .wp-site-blocks > main {
    margin-block-start: 0 !important;
    padding-block-start: 0 !important;
}

body.qifp-page .wp-block-post-content > .qifp-shell {
    margin-block-start: 0 !important;
}

/* Keep our own intentional breathing room instead of theme padding. */
@media (max-width: 780px) {
    .qifp-container {
        padding-top: 18px;
    }

    .qifp-panel h2 {
        font-size: 28px;
        line-height: 1.12;
    }

    .qifp-panel-heading {
        margin-top: 6px;
    }
}

