.article-sidebar-sticky { position: sticky; top: 100px; align-self: flex-start; z-index: 10; }
.wp-block-column:has(.article-sidebar-sticky) > .wp-block-template-part { display: contents; }

body.page-id-205 .footer-optin-wrap, body.page-id-323 .footer-optin-wrap, body.page-id-11 .footer-optin-wrap:not(.home-optin-block), body.page-id-3 .footer-optin-wrap { display:none !important; }
body.page-id-11 .site-footer-optin-section, body.page-id-3 .site-footer-optin-section { display:none !important; }

body:not(.single-post) .heateor_sss_vertical_sharing { display: none !important; }
.heateor_sss_vertical_sharing [class*="share_count"], .heateor_sss_vertical_sharing [class*="sharing_count"] { display: none !important; }
.heateor_sss_vertical_sharing a[class*="heateor_sss"] { opacity: 0.8; filter: saturate(0.55) brightness(1.05); transform: scale(0.82); }

.novamira-popup-overlay { position: fixed; inset: 0; background: rgba(20,30,40,0.55); z-index: 99999; display: none; align-items: center; justify-content: center; padding: 20px; box-sizing: border-box; }
.novamira-popup-overlay.is-visible { display: flex; }
.novamira-popup-card { background: var(--wp--preset--color--tertiary); border-radius: 10px; max-width: 420px; width: 100%; padding: 32px 28px; position: relative; text-align: center; box-shadow: 0 12px 40px rgba(0,0,0,0.25); }
.novamira-popup-close { position: absolute; top: 10px; right: 14px; background: none; border: none; font-size: 1.4rem; line-height: 1; cursor: pointer; color: var(--wp--preset--color--primary-alt-accent); }
.novamira-popup-card img { width: 170px; border-radius: 4px; box-shadow: 0 4px 12px rgba(0,0,0,0.15); margin-bottom: 12px; }
.novamira-popup-card h3 { color: var(--wp--preset--color--primary); margin: 0 0 8px 0; font-size: 1.3rem; }
.novamira-popup-card p.novamira-popup-text { color: var(--wp--preset--color--primary-alt-accent); font-size: 0.9rem; margin: 0 0 16px 0; }
.novamira-popup-form input { width: 100%; box-sizing: border-box; padding: 11px 14px; margin-bottom: 10px; border-radius: 6px; border: 1px solid var(--wp--preset--color--border-light); font-family: inherit; font-size: 0.9rem; }
.novamira-popup-form button { width: 100%; box-sizing: border-box; background-color: var(--wp--preset--color--primary); color: var(--wp--preset--color--tertiary); border: none; border-radius: 6px; padding: 12px 16px; font-family: inherit; font-weight: 600; font-size: 0.9rem; cursor: pointer; }
.novamira-popup-disclaimer { color: var(--wp--preset--color--primary-alt-accent); font-size: 0.72rem; margin: 8px 0 0 0; }

.novamira-post-footer { position: relative; overflow: hidden; border-radius: 10px; padding: 56px 32px; text-align: center; isolation: isolate; }
.novamira-post-footer::before { content: ''; position: absolute; inset: 0; background-image: url('https://staging.micronutrition-et-vitalite.fr/wp-content/uploads/2026/07/Guide-Offert-Couverture.png'); background-size: cover; background-position: center 15%; filter: blur(1px); transform: scale(1.1); z-index: -2; }
.novamira-post-footer::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(15,26,38,0.80) 0%, rgba(15,26,38,0.90) 100%); z-index: -1; }
.novamira-post-footer h3 { color: #FFFEFB; font-size: 1.6rem; margin: 0 0 10px 0; }
.novamira-post-footer p.novamira-post-footer-text { color: rgba(255,254,251,0.85); font-size: 0.95rem; max-width: 480px; margin: 0 auto 24px auto; }
.novamira-post-footer-form { max-width: 420px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }
.novamira-post-footer-form input { flex: 1; min-width: 160px; box-sizing: border-box; padding: 12px 14px; border-radius: 6px; border: none; font-family: inherit; font-size: 0.9rem; }
.novamira-post-footer-form button { flex-shrink: 0; background-color: var(--wp--preset--color--primary-accent); color: var(--wp--preset--color--primary); border: none; border-radius: 6px; padding: 12px 22px; font-family: inherit; font-weight: 700; font-size: 0.9rem; cursor: pointer; white-space: nowrap; }
.novamira-post-footer-form .novamira-optin-error { width: 100%; color: #F2B8B5; }

.novamira-optin-image-trigger { cursor: pointer; transition: transform 0.15s ease, box-shadow 0.15s ease; }
.novamira-optin-image-trigger:hover, .novamira-optin-image-trigger:focus-visible { transform: scale(1.03); box-shadow: 0 10px 26px rgba(0,0,0,0.22); outline: none; }

.novamira-optin-form button[type="submit"]:disabled { opacity: 0.5; cursor: not-allowed; }

@keyframes novamira-optin-pulse { 0% { box-shadow: 0 0 0 0 rgba(15,42,68,0.35); } 100% { box-shadow: 0 0 0 14px rgba(15,42,68,0); } }
.novamira-optin-pulse { animation: novamira-optin-pulse 1s ease-out; border-radius: 6px; }