:root{--primary-color:#8e44ad;--primary-hover:#7d3c98;--secondary-color:#2c3e50;--secondary-light:#34495e;--accent-color:#3498db;--text-dark:#333;--text-medium:#444;--text-light:#555;--text-muted:#666;--bg-primary:#fafafa;--bg-white:#fff;--bg-light:#f8f9fa;--bg-lighter:#e9ecef;--border-color:#e0e0e0;--border-light:#ddd;--shadow-light:rgba(0,0,0,0.05);--shadow-medium:rgba(0,0,0,0.1);--font-primary:'Open Sans',sans-serif;--font-heading:'Playfair Display',serif;--font-size-base:1rem;--font-size-lg:1.2rem;--font-size-xl:1.4rem;--font-size-h3:1.5rem;--font-size-h2:2rem;--font-size-h1:2.5rem;--font-size-hero:3rem;--line-height-base:1.6;--line-height-relaxed:1.7;--spacing-xs:0.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--max-width:1200px;--border-radius:8px;--border-radius-sm:4px;--transition:0.3s ease;}*{margin:0;padding:0;box-sizing:border-box;}body{font-family:var(--font-primary);line-height:var(--line-height-base);color:var(--text-dark);background-color:var(--bg-primary);}h1,h2,h3{font-family:var(--font-heading);margin-bottom:var(--spacing-sm);color:var(--secondary-color);}h1{font-size:var(--font-size-h1);text-align:center;margin-bottom:var(--spacing-lg);}h2{font-size:var(--font-size-h2);margin-top:var(--spacing-lg);}h3{font-size:var(--font-size-h3);}p{margin-bottom:var(--spacing-sm);color:var(--text-medium);}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition);}a:hover{color:var(--primary-hover);text-decoration:underline;}p a{color:var(--text-dark);text-decoration:underline;}p a:hover{color:var(--primary-color);}ul,ol{margin:var(--spacing-sm) 0 var(--spacing-md) 0;padding-left:var(--spacing-lg);color:var(--text-medium);}ul li,ol li{margin-bottom:var(--spacing-xs);line-height:var(--line-height-base);}ul{list-style-type:disc;}ol{list-style-type:decimal;}li::marker{color:var(--text-medium);}ul a,ol a{color:var(--text-medium);}ul a:hover,ol a:hover{color:var(--text-dark);}blockquote{background:var(--bg-light);border-left:4px solid var(--primary-color);margin:var(--spacing-lg) 0;padding:var(--spacing-sm) var(--spacing-md);font-style:italic;color:var(--text-light);border-radius:0 var(--border-radius) var(--border-radius) 0;}blockquote p{margin:0 0 var(--spacing-sm) 0;line-height:var(--line-height-relaxed);}blockquote p:last-child{margin-bottom:0;}.main-content{max-width:var(--max-width);margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);min-height:calc(100vh - 200px);}.header{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--secondary-light) 100%);box-shadow:0 2px 10px var(--shadow-medium);position:sticky;top:0;z-index:100;}.nav{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);}.nav-brand{display:flex;align-items:center;gap:var(--spacing-sm);}.nav-brand-link{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;transition:opacity var(--transition);}.nav-brand-link:hover{opacity:0.9;}.logo{width:55px;height:55px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,0.2);}.church-name{font-family:var(--font-heading);font-size:var(--font-size-xl);font-weight:600;color:#fff;white-space:nowrap;}.nav-menu{display:flex;list-style:none;gap:var(--spacing-lg);align-items:center;margin:0;padding:0;}.nav-menu li{margin:0;padding:0;}.nav-link{color:#ecf0f1;text-decoration:none;font-weight:400;transition:color var(--transition);position:relative;display:inline-block;padding:var(--spacing-xs) 0;}.nav-link:hover,.nav-link.active{color:#fff;text-decoration:none;}.nav-link.active::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ecf0f1;}.hero{text-align:center;padding:var(--spacing-xl) 0 var(--spacing-lg) 0;background:linear-gradient(rgba(52,73,94,0.8),rgba(52,73,94,0.8));color:#fff;margin:calc(-1 * var(--spacing-xl)) calc(-1 * var(--spacing-lg)) var(--spacing-xl) calc(-1 * var(--spacing-lg));}.hero img{width:180px;height:180px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,0.3);margin-bottom:var(--spacing-sm);}.hero h1{color:#fff;font-size:var(--font-size-hero);margin-bottom:0.75rem;}.hero p{font-size:var(--font-size-lg);color:#f8f9fa;max-width:600px;margin:0 auto;}.card{background:var(--bg-white);border-radius:var(--border-radius);padding:var(--spacing-lg);margin:var(--spacing-lg) 0;box-shadow:0 4px 15px var(--shadow-medium);}.accordion{margin:var(--spacing-lg) 0;}.accordion-item{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:var(--spacing-xs);overflow:hidden;box-shadow:0 2px 5px var(--shadow-light);}.accordion-header{background:var(--bg-light);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-weight:400;font-size:var(--font-size-base);color:var(--text-dark);border:none;width:100%;text-align:left;transition:background-color var(--transition);position:relative;display:flex;justify-content:space-between;align-items:center;}.accordion-header:hover{background:var(--bg-lighter);}.accordion-header.active{background:var(--secondary-color);color:#fff;}.accordion-header::after{content:'+';font-size:var(--font-size-lg);transition:transform var(--transition);flex-shrink:0;}.accordion-header.active::after{transform:rotate(45deg);}.accordion-content{padding:var(--spacing-sm) var(--spacing-md);display:none;background:var(--bg-white);}.opt-out-form{background:var(--bg-white);border-radius:var(--border-radius);padding:var(--spacing-lg);margin:var(--spacing-lg) 0;box-shadow:0 4px 15px var(--shadow-medium);max-width:500px;}.form-group{margin-bottom:var(--spacing-md);}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--secondary-color);}.form-group input,.form-group textarea{width:100%;padding:0.75rem;border:1px solid var(--border-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);transition:border-color var(--transition);}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px rgba(142,68,173,0.2);}.form-note{font-size:0.9rem;color:var(--text-muted);margin:-0.5rem 0 var(--spacing-sm) 0;font-style:italic;}.btn-submit{background:var(--primary-color);color:#fff;border:none;padding:0.75rem var(--spacing-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-base);cursor:pointer;transition:background-color var(--transition);}.btn-submit:hover{background:var(--primary-hover);}.footer{background:var(--secondary-color);color:#ecf0f1;margin-top:4rem;}.email-signup{background:var(--secondary-light);padding:var(--spacing-lg) 0;border-bottom:1px solid var(--secondary-color);}.signup-content{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg);text-align:center;}.signup-content h3{color:#fff;margin-bottom:var(--spacing-xs);font-size:var(--font-size-h3);}.signup-content p{color:#d5dbdb;margin-bottom:var(--spacing-md);}.signup-form{max-width:600px;margin:0 auto;}.signup-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);}.signup-fields input[name="first_name"],.signup-fields input[name="last_name"]{min-width:0;}.signup-fields input[name="email_address"],.signup-fields input[name="phone_number"]{min-width:0;}.signup-fields .btn-signup{grid-column:1 / -1;}.signup-fields input{padding:0.75rem;border:1px solid #7f8c8d;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);}.btn-signup{background:var(--primary-color);color:#fff;padding:0.75rem var(--spacing-md);border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);cursor:pointer;transition:background-color var(--transition);white-space:nowrap;}.btn-signup:hover{background:var(--primary-hover);}.btn-signup:disabled{background:#7f8c8d;cursor:not-allowed;}.signup-options{margin-bottom:var(--spacing-sm);display:flex;gap:var(--spacing-md);flex-wrap:wrap;}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);color:#d5dbdb;font-size:0.9rem;cursor:pointer;}.checkbox-label input[type="checkbox"]{display:none;}.checkmark{width:18px;height:18px;border:2px solid #7f8c8d;border-radius:var(--border-radius-sm);position:relative;transition:all var(--transition);}.checkbox-label input[type="checkbox"]:checked+.checkmark{background:var(--primary-color);border-color:var(--primary-color);}.checkbox-label input[type="checkbox"]:checked+.checkmark::after{content:'✓';position:absolute;top:-2px;left:2px;color:#fff;font-size:14px;font-weight:bold;}.signup-disclaimer{text-align:center;}.signup-disclaimer p{font-size:0.8rem;color:#95a5a6;margin-bottom:var(--spacing-xs);}.signup-disclaimer a{color:#95a5a6;text-decoration:none;font-weight:500;}.signup-disclaimer a:hover{color:#ecf0f1;text-decoration:underline;}.form-message{text-align:center;margin-top:var(--spacing-sm);padding:var(--spacing-xs);font-weight:500;font-size:0.9rem;color:#d5dbdb;}.footer-content{max-width:var(--max-width);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);padding:var(--spacing-xl) var(--spacing-lg);}.footer-column{display:flex;flex-direction:column;gap:var(--spacing-lg);}.footer-section h3{color:#fff;margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg);}.footer-section p{color:#d5dbdb;margin-bottom:var(--spacing-xs);}.footer-section a{color:#d5dbdb;text-decoration:none;}.map-section iframe{border-radius:var(--border-radius);margin-top:var(--spacing-sm);}.footer-bottom{background:#1a252f;padding:var(--spacing-sm);}.footer-bottom-content{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);padding:0 var(--spacing-lg);}.footer-bottom p{color:#95a5a6;margin:0;font-size:0.9rem;}.footer-nav{display:flex;gap:var(--spacing-md);list-style:none;}.footer-nav a{color:#95a5a6;text-decoration:none;font-size:0.9rem;transition:color var(--transition);}.footer-nav a:hover{color:#fff;}@media (max-width:768px){.nav{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm);}.nav-menu{gap:var(--spacing-sm);}.nav-brand{flex-direction:column;text-align:center;gap:var(--spacing-xs);}.church-name{font-size:1.1rem;}.logo{width:50px;height:50px;}.hero{margin-left:calc(-1 * var(--spacing-sm));margin-right:calc(-1 * var(--spacing-sm));}.hero img{width:140px;height:140px;margin-bottom:0.75rem;}.hero h1{font-size:var(--font-size-h2);}.main-content{padding:var(--spacing-lg) var(--spacing-sm);}.footer-content{grid-template-columns:1fr;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-sm);}.footer-column{gap:var(--spacing-md);}.footer-bottom-content{flex-direction:column;text-align:center;padding:0 var(--spacing-sm);}.footer-nav{justify-content:center;}.signup-fields{grid-template-columns:1fr;}.signup-fields .btn-signup{width:100%;}}