/* Deferred Components - non-critical UI loaded async */

/* Cookie Consent Banner */
.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--background-card,#1e2230);border-top:1px solid var(--border-color,#2d3344);box-shadow:0 -4px 20px rgba(0,0,0,.3);transform:translateY(100%);transition:transform .3s ease;padding:1rem}
.cookie-consent--visible{transform:translateY(0)}
.cookie-consent--hidden{transform:translateY(100%)}
.cookie-consent__inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.cookie-consent__text{flex:1;min-width:200px;font-size:.875rem;color:var(--text-secondary,#9ca3af);line-height:1.5}
.cookie-consent__link{color:var(--primary-color,#3498db);text-decoration:underline}
.cookie-consent__actions{display:flex;gap:.5rem;flex-shrink:0}
.cookie-consent__btn{padding:.5rem 1.25rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;border:none;font-family:inherit;transition:all .2s}
.cookie-consent__btn--accept{background:var(--primary-color,#3498db);color:#fff}
.cookie-consent__btn--accept:hover{background:var(--primary-dark,#2980b9)}
.cookie-consent__btn--decline{background:transparent;color:var(--text-secondary,#9ca3af);border:1px solid var(--border-color,#2d3344)}
.cookie-consent__btn--decline:hover{background:rgba(255,255,255,.05);color:var(--text-primary)}
@media(max-width:600px){.cookie-consent__inner{flex-direction:column;text-align:center}.cookie-consent__actions{width:100%;justify-content:center}}

/* Offline Form Banner */
.offline-form-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;margin-top:1rem;background:rgba(52,152,219,.1);border:1px solid rgba(52,152,219,.3);border-left:4px solid var(--primary-color,#3498db);border-radius:var(--border-radius-md);color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5}
.offline-form-banner i{color:var(--primary-color,#3498db);font-size:1.1rem;flex-shrink:0}
html[data-theme="dark"] .offline-form-banner{background:rgba(93,173,226,.1);border-color:rgba(93,173,226,.25)}

/* PWA Install Banner */
.pwa-install-banner{position:fixed;bottom:0;left:0;right:0;z-index:9990;background:#1a1a2e;color:#e9ecef;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.5rem;transform:translateY(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:0 -4px 20px rgba(0,0,0,.3)}
.pwa-install-banner.pwa-install-visible{transform:translateY(0)}
.pwa-install-text{display:flex;align-items:center;gap:.625rem;font-size:var(--font-size-sm);font-weight:500;flex:1;min-width:0}
.pwa-install-text i{color:#3498db;font-size:1.15rem;flex-shrink:0}
.pwa-install-actions{display:flex;gap:.5rem;flex-shrink:0}
.pwa-install-btn{padding:.5rem 1.25rem;background:#3498db;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}
.pwa-install-btn:hover{background:#2980b9}
.pwa-install-dismiss{padding:.5rem 1rem;background:transparent;color:#9ca3af;border:1px solid rgba(255,255,255,.12);border-radius:6px;font-size:.85rem;cursor:pointer;font-family:inherit;transition:color .2s,border-color .2s}
.pwa-install-dismiss:hover{color:#e9ecef;border-color:rgba(255,255,255,.25)}
@media(max-width:600px){.pwa-install-banner{flex-direction:column;text-align:center;padding:1rem}.pwa-install-actions{width:100%;justify-content:center}}

/* Footer Newsletter CTA */
.footer-newsletter{background:#1a1a2e;padding:2rem 2rem 1.5rem;position:relative}
.footer-newsletter::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(52,152,219,.3) 30%,rgba(52,152,219,.3) 70%,transparent)}
.footer-newsletter-inner{max-width:800px;margin:0 auto;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}
.footer-newsletter-text{flex:1;min-width:200px}
.footer-newsletter-title{color:#f8f9fa;font-size:1.1rem;font-weight:700;margin:0 0 .25rem}
.footer-newsletter-desc{color:#9ca3af;font-size:.875rem;margin:0;line-height:1.4}
.footer-newsletter-form{flex:1;min-width:280px}
.footer-newsletter-row{display:flex;gap:.5rem}
.footer-newsletter-input{flex:1;padding:.6rem 1rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#f8f9fa;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}
.footer-newsletter-input::placeholder{color:#6c757d}
.footer-newsletter-input:focus{border-color:#3498db;box-shadow:0 0 0 2px rgba(52,152,219,.2)}
.footer-newsletter-btn{padding:.6rem 1.5rem;background:#3498db;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .2s,transform .15s}
.footer-newsletter-btn:hover{background:#2980b9;transform:translateY(-1px)}
.footer-newsletter-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
.footer-newsletter-msg{font-size:.8rem;margin-top:.5rem;display:flex;align-items:center;gap:.4rem}.footer-newsletter-msg[hidden]{display:none!important}
.footer-newsletter-error{color:#e74c3c}
.footer-newsletter-success{color:#27ae60}
.footer-newsletter-rgpd{color:#6c757d;font-size:.7rem;margin:.75rem auto 0;text-align:center;max-width:800px}
.footer-newsletter-rgpd a{color:#5dade2;text-decoration:underline}
.honeypot-field{position:absolute;left:-9999px;height:0;width:0;overflow:hidden;opacity:0}
[data-theme="light"] .footer-newsletter{background:#e8edf2}
[data-theme="light"] .footer-newsletter-title{color:#2c3e50}
[data-theme="light"] .footer-newsletter-desc{color:#4a5568}
[data-theme="light"] .footer-newsletter-input{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.15);color:#2c3e50}
[data-theme="light"] .footer-newsletter-input::placeholder{color:#6c757d}
[data-theme="light"] .footer-newsletter-rgpd{color:#6c757d}
@media(prefers-color-scheme:light){:root:not([data-theme="dark"]) .footer-newsletter{background:#e8edf2}:root:not([data-theme="dark"]) .footer-newsletter-title{color:#2c3e50}:root:not([data-theme="dark"]) .footer-newsletter-desc{color:#4a5568}:root:not([data-theme="dark"]) .footer-newsletter-input{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.15);color:#2c3e50}}
@media(max-width:768px){.footer-newsletter{padding:1.5rem 1.2rem 1rem}.footer-newsletter-inner{flex-direction:column;text-align:center;gap:1rem}.footer-newsletter-row{flex-direction:column}.footer-newsletter-btn{width:100%}}

/* Lead Magnet Pages */
.lm-hero{padding:6rem 0 3rem;background:radial-gradient(ellipse at 20% 50%,rgba(93,173,226,0.15) 0,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(41,128,185,0.1) 0,transparent 50%),linear-gradient(135deg,#2980b9 0,#1a5276 100%);color:#fff;min-height:60vh;display:flex;align-items:center}
.lm-hero-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:1200px;margin:0 auto;padding:0 var(--spacing-xl)}
.lm-hero-text{max-width:560px}
.lm-badge{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,0.15);backdrop-filter:blur(8px);padding:.4rem 1rem;border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:600;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,0.2)}
.lm-hero h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.15;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,0.2)}
.lm-hero-subtitle{font-size:clamp(1rem,2vw,1.25rem);opacity:0.9;margin-bottom:1.5rem;line-height:1.5}
.lm-hero-benefits{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}
.lm-hero-benefits li{display:flex;align-items:center;gap:.6rem;font-size:var(--font-size-base)}
.lm-hero-benefits i{color:#2ecc71;font-size:1.1rem}
.lm-hero-form-wrapper{display:flex;justify-content:center}
.lm-form-card{background:var(--background-card,#fff);color:var(--text-primary,#2c3e50);border-radius:var(--border-radius-lg);padding:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-width:420px;width:100%}
.lm-form-card h2{font-size:1.35rem;margin-bottom:.5rem;color:var(--text-primary)}
.lm-form-card>p{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:1.25rem;line-height:1.5}
.lm-form-group{margin-bottom:1rem}
.lm-input{width:100%;padding:.75rem 1rem;border:2px solid var(--border-color,#e9ecef);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;background:var(--background-primary,#fff);color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}
.lm-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(52,152,219,0.15)}
.lm-checkbox-group{display:flex;align-items:flex-start;gap:.5rem}
.lm-checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;line-height:1.4}
.lm-checkbox-label input[type="checkbox"]{margin-top:3px;flex-shrink:0;accent-color:var(--primary-color)}
.lm-checkbox-label a{color:var(--primary-color);text-decoration:underline}
.lm-submit-btn{width:100%;padding:.85rem 1.5rem;background:var(--primary-color,#3498db);color:#fff;border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);min-height:48px}
.lm-submit-btn:hover:not(:disabled){background:var(--primary-dark,#2980b9);transform:translateY(-1px);box-shadow:0 4px 12px rgba(52,152,219,0.4)}
.lm-submit-btn:disabled{opacity:0.7;cursor:not-allowed}
.lm-form-note{font-size:var(--font-size-xs);color:var(--text-secondary);text-align:center;margin-top:.75rem;display:flex;align-items:center;justify-content:center;gap:.3rem}
.lm-form-message{padding:.75rem 1rem;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);margin-top:1rem;display:none}
.lm-form-message--success{background:rgba(39,174,96,0.1);color:#27ae60;border:1px solid rgba(39,174,96,0.2);display:block}
.lm-form-message--error{background:rgba(231,76,60,0.1);color:#e74c3c;border:1px solid rgba(231,76,60,0.2);display:block}
.lm-content-section{padding:3rem 0 4rem}
.lm-content-header{text-align:center;margin-bottom:2.5rem}
.lm-content-header h2{font-size:clamp(1.5rem,3vw,2rem);color:var(--text-primary);margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}
.lm-content-header>p{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:1.5rem}
.lm-print-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.5rem;background:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition-fast)}
.lm-print-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}
.lm-checklist{max-width:800px;margin:0 auto}
.lm-checklist-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border-color)}
.lm-checklist-header h2{font-size:1.75rem;color:var(--text-primary);margin-bottom:.5rem}
.lm-checklist-header p{color:var(--text-secondary);font-size:var(--font-size-base)}
.lm-checklist-category{margin-bottom:2rem}
.lm-checklist-category h3{font-size:1.15rem;color:var(--primary-color);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}
.lm-checklist-category h3 i{font-size:1rem}
.lm-checklist-category ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}
.lm-checklist-category li{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--background-secondary);border-radius:var(--border-radius-md);border:1px solid var(--border-color);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}
.lm-checklist-category li:hover{border-color:var(--primary-color);box-shadow:0 2px 8px rgba(52,152,219,0.1)}
.lm-check-box{flex-shrink:0;width:22px;height:22px;border:2px solid var(--border-color);border-radius:4px;margin-top:1px;position:relative;cursor:pointer;transition:all var(--transition-fast)}
.lm-check-box.checked{background:var(--primary-color);border-color:var(--primary-color)}
.lm-check-box.checked::after{content:'';position:absolute;top:3px;left:6px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.lm-check-text{font-size:var(--font-size-sm);line-height:1.5;color:var(--text-primary)}
.lm-check-text code{background:rgba(52,152,219,0.1);color:var(--primary-color);padding:.1rem .4rem;border-radius:3px;font-size:.8rem;font-family:'SF Mono',Monaco,Consolas,monospace}
.lm-checklist-footer{margin-top:2rem;padding-top:1.5rem;border-top:2px solid var(--border-color);text-align:center}
.lm-checklist-footer p{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:.5rem}
.lm-checklist-credit a{color:var(--primary-color);text-decoration:none;font-weight:600}
.lm-trust-section{padding:2.5rem 0;background:var(--background-secondary);border-top:1px solid var(--border-color)}
.lm-trust-items{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap}
.lm-trust-item{display:flex;align-items:center;gap:.6rem;font-size:var(--font-size-sm);color:var(--text-secondary)}
.lm-trust-item i{color:var(--primary-color);font-size:1.2rem}
@media print{.lm-hero,.lm-trust-section,.navbar,.footer,.lm-print-btn,.lm-content-header>p,.lm-content-header h2,#back-to-top,.skip-link,.cookie-consent{display:none!important}.lm-content-section{padding:0!important}.lm-checklist{max-width:100%}.lm-checklist-category li{break-inside:avoid;border:1px solid #ccc}.lm-check-box{border-color:#333}.lm-checklist-header{border-bottom:2px solid #333}.lm-checklist-category h3{color:#333;border-bottom:1px solid #ccc}.lm-check-text code{border:1px solid #ccc;background:#f5f5f5}}
@media(max-width:768px){.lm-hero{padding:5rem 0 2rem;min-height:auto}.lm-hero-content{grid-template-columns:1fr;gap:2rem;text-align:center}.lm-hero-benefits{align-items:center}.lm-form-card{max-width:100%}.lm-trust-items{gap:1.5rem}.lm-checklist-category li{padding:.6rem .75rem}.lm-checklist-category h3{font-size:1.05rem}}
