.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.offer-card{display:flex;flex-direction:column;gap:14px;min-width:0;background:#111925;border:1px solid #9a824344;border-radius:18px;padding:28px 24px}.offer-card h3{font:600 25px/1.3 var(--font-serif,Georgia);margin:0}.offer-card h3 a{color:#f0ddab;text-decoration:none}.offer-card p{margin:0;color:#cbd0d9;font-size:17px;line-height:1.65}.offer-label{color:#e8c876;font-size:12px;letter-spacing:1.3px;font-weight:700}.offer-cover{height:225px;display:flex;justify-content:center;align-items:center;margin:8px 0}.offer-cover img{height:100%;max-width:100%;object-fit:contain;filter:drop-shadow(0 12px 14px #0007)}.offer-card .offer-price{font-size:40px;color:#f3d782;margin-top:auto;padding-top:14px;font-weight:700}.offer-price span{display:block;font-size:14px;font-weight:400;color:#c5cbd6}.offer-card .offer-note{font-size:14px;color:#d0c7ae}.offer-card .btn-buy{display:block;text-align:center;white-space:normal;padding:15px 12px}.offer-bundle{border:2px solid #d1ad54;background:linear-gradient(160deg,#27231b,#101824)}.offer-disclaimer{text-align:center;margin:26px auto 0;color:#bec7d4;font-size:15px;max-width:800px}.offer-guide{max-width:900px;margin:36px auto;padding:28px;border:1px solid #ac8f4e55;border-radius:14px;color:#d5d9e0;font-size:18px;line-height:1.8}.offer-guide h2{color:#ecd394}.offer-guide a,.offer-included-note a,.offer-archive-note a{color:#f0cf78}.offer-included-note{max-width:1000px;margin:20px auto;padding:16px 24px;font-size:17px;text-align:center}.bundle-inclusions{max-width:1050px;margin:30px auto;display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 20px}.bundle-inclusions article{display:flex;gap:20px;align-items:center;text-align:left;background:#111925;border:1px solid #ae8f4655;border-radius:14px;padding:24px}.bundle-inclusions img{width:100px;height:155px;object-fit:contain}.bundle-inclusions h3{font-size:21px;line-height:1.35;color:#ebd295}.bundle-inclusions p{color:#cbd0d9}.offer-archive-note{background:#1c2533;border:1px solid #a68c53;padding:20px;margin:24px auto;max-width:1050px;font-size:18px;line-height:1.6}.curated-offers .section-head>p{max-width:680px;margin:18px auto 30px;color:#ccd2dd;font-size:18px;line-height:1.7}@media(max-width:850px){.offer-grid,.bundle-inclusions{grid-template-columns:1fr}.offer-cover{height:190px}.offer-card{padding:26px}.bundle-inclusions article{padding:20px}.offer-guide{margin:24px 18px}.offer-archive-note{margin:18px}}@media(max-width:380px){.bundle-inclusions article{flex-direction:column;align-items:flex-start}.offer-card{padding:22px 18px}}
.offer-four-covers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;align-items:center}.offer-four-covers img{width:100%;height:180px;object-fit:contain;transform:rotate(-4deg)}.offer-four-covers img:nth-child(even){transform:rotate(4deg)}.bundle-hero-covers{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px;width:100%}.bundle-hero-covers img{width:100%;height:240px;object-fit:contain;filter:drop-shadow(0 12px 14px #0007)}@media(max-width:700px){.bundle-hero-covers img{height:160px}.bundle-hero-covers{gap:12px;padding:8px}.offer-four-covers img{height:160px}}


/* ==================== 6-EBOOK STOREFRONT ENHANCEMENTS ==================== */
.btn-header-test {
    background: linear-gradient(135deg, #2ECC71 0%, #27AE60 100%) !important;
    color: #05140A !important;
    font-weight: 700 !important;
    border: 1px solid #7DCEA0 !important;
    box-shadow: 0 0 16px rgba(46, 204, 113, 0.45) !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}
.btn-header-test:hover {
    filter: brightness(1.15) !important;
    box-shadow: 0 0 22px rgba(46, 204, 113, 0.7) !important;
    transform: translateY(-2px) !important;
}

.library-hero-section {
    padding-top: 40px !important;
    padding-bottom: 50px !important;
    position: relative;
    z-index: 1;
}

.library-hero-section .section-head {
    text-align: center;
    max-width: 860px;
    margin: 0 auto 40px;
}

.offer-three-covers {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    align-items: center;
    width: 100%;
}
.offer-three-covers img {
    width: 100%;
    height: 180px;
    object-fit: contain;
    filter: drop-shadow(0 10px 12px rgba(0,0,0,0.6));
    transition: transform 0.3s ease;
}
.offer-three-covers img:nth-child(1) { transform: rotate(-3deg); }
.offer-three-covers img:nth-child(2) { transform: translateY(-6px); z-index: 2; }
.offer-three-covers img:nth-child(3) { transform: rotate(3deg); }
.offer-card:hover .offer-three-covers img { transform: translateY(-4px) scale(1.02); }

/* Grand Bundle Full-Width Card (Row 3) */
.offer-card-grand {
    margin-top: 36px;
    background: radial-gradient(ellipse at 50% 0%, #2b2313 0%, #101722 75%);
    border: 2px solid #F0C850;
    border-radius: 20px;
    padding: 36px;
    box-shadow: 0 16px 40px rgba(0,0,0,0.6), 0 0 30px rgba(240, 200, 80, 0.15);
    position: relative;
    overflow: hidden;
}
.offer-card-grand::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, transparent, #FFD866, #F0C850, transparent);
}
.grand-badge {
    display: inline-block;
    background: linear-gradient(135deg, #F0C850 0%, #B8943E 100%);
    color: #000;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.5px;
    padding: 6px 16px;
    border-radius: 20px;
    text-transform: uppercase;
    margin-bottom: 18px;
}
.grand-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    align-items: center;
}
@media (max-width: 900px) {
    .grand-grid { grid-template-columns: 1fr; gap: 24px; }
}

.grand-covers-showcase {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    background: rgba(0, 0, 0, 0.35);
    padding: 20px;
    border-radius: 14px;
    border: 1px solid rgba(240, 200, 80, 0.2);
}
.grand-covers-showcase img {
    width: 100%;
    height: 140px;
    object-fit: contain;
    filter: drop-shadow(0 8px 12px rgba(0,0,0,0.7));
    transition: transform 0.2s;
}
.grand-covers-showcase img:hover {
    transform: scale(1.08) translateY(-4px);
    z-index: 3;
}

.grand-info h3 {
    font-family: var(--font-heading, 'Playfair Display', Georgia, serif);
    font-size: 32px;
    line-height: 1.25;
    color: #F2ECE0;
    margin-bottom: 12px;
}
.grand-info .grand-desc {
    color: #D5CFC2;
    font-size: 16px;
    line-height: 1.65;
    margin-bottom: 20px;
}
.grand-bullets {
    list-style: none;
    padding: 0;
    margin: 0 0 24px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 18px;
}
@media (max-width: 600px) {
    .grand-bullets { grid-template-columns: 1fr; }
}
.grand-bullets li {
    font-size: 14px;
    color: #E8DFCF;
    display: flex;
    align-items: center;
    gap: 8px;
}
.grand-bullets li::before {
    content: "✓";
    color: #2ECC71;
    font-weight: bold;
}
.grand-pricing-row {
    display: flex;
    align-items: baseline;
    gap: 16px;
    margin-bottom: 20px;
}
.price-strike {
    font-size: 22px;
    color: #8A8278;
    text-decoration: line-through;
}
.price-grand {
    font-size: 46px;
    font-weight: 800;
    color: #FFD866;
    font-family: var(--font-heading, Georgia, serif);
}
.price-grand-label {
    font-size: 14px;
    color: #7DCEA0;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.btn-grand-buy {
    display: block;
    width: 100%;
    text-align: center;
    background: linear-gradient(135deg, #F0C850 0%, #D4AF37 100%);
    color: #0A0907;
    font-family: var(--font-ui, -apple-system, sans-serif);
    font-weight: 800;
    font-size: 17px;
    letter-spacing: 0.5px;
    padding: 18px 24px;
    border-radius: 10px;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(240, 200, 80, 0.35);
    transition: all 0.25s ease;
    cursor: pointer;
    border: none;
}
.btn-grand-buy:hover {
    filter: brightness(1.1);
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(240, 200, 80, 0.5);
}

/* Secondary CTA below catalog */
.quiz-invite-banner {
    margin-top: 50px;
    background: linear-gradient(135deg, rgba(20, 28, 40, 0.95) 0%, rgba(15, 20, 30, 0.98) 100%);
    border: 1px solid rgba(46, 204, 113, 0.35);
    border-radius: 16px;
    padding: 36px 30px;
    text-align: center;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
}
.quiz-invite-banner .quiz-badge {
    display: inline-block;
    background: rgba(46, 204, 113, 0.15);
    border: 1px solid rgba(46, 204, 113, 0.4);
    color: #7DCEA0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    padding: 5px 14px;
    border-radius: 20px;
    text-transform: uppercase;
    margin-bottom: 14px;
}
.quiz-invite-banner h3 {
    font-family: var(--font-heading, Georgia, serif);
    font-size: 28px;
    color: #F2ECE0;
    margin-bottom: 12px;
}
.quiz-invite-banner p {
    color: #cbd0d9;
    font-size: 16px;
    max-width: 680px;
    margin: 0 auto 24px;
    line-height: 1.65;
}
.btn-quiz-cta {
    display: inline-block;
    background: linear-gradient(135deg, #2ECC71 0%, #27AE60 100%);
    color: #05140A;
    font-family: var(--font-ui, -apple-system, sans-serif);
    font-weight: 700;
    font-size: 16px;
    padding: 16px 36px;
    border-radius: 8px;
    text-decoration: none;
    letter-spacing: 0.5px;
    box-shadow: 0 8px 20px rgba(46, 204, 113, 0.35);
    transition: all 0.2s ease;
}
.btn-quiz-cta:hover {
    filter: brightness(1.12);
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(46, 204, 113, 0.5);
}

/* Card Button Dual actions */
.offer-card-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 14px;
}
.btn-details-link {
    display: block;
    text-align: center;
    font-size: 14px;
    color: #d8c9a6;
    text-decoration: none;
    padding: 6px;
    transition: color 0.2s;
}
.btn-details-link:hover {
    color: #FFD866;
    text-decoration: underline;
}
