:root{--primary-color: #1a1a1a;--secondary-color: #666;--text-color: #1a1a1a;--accent-color: #d4822a;--hpbc-green: #4a5d3a;--hpbc-cream: #f4f1e8;--bg-color: #ffffff;--secondary-bg: #f8f9fa;--light-gray: #f4f1e8;--border-color: #d4c5a9;--max-width: 1200px;--font-size-base: 1rem;--font-size-lg: 1.1rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2.5rem;--font-size-4xl: 3rem;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-padding-top:80px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;color:var(--primary-color);background-color:var(--bg-color);font-size:var(--font-size-base)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-lg)}nav{background:var(--bg-color);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1000;box-shadow:0 2px 4px #0000000d}.nav-container{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-lg)}.logo{font-size:var(--font-size-2xl);font-weight:700;text-decoration:none;color:var(--hpbc-green)}.nav-menu{display:flex;list-style:none;gap:var(--spacing-lg)}.nav-menu a{text-decoration:none;color:var(--hpbc-green);transition:color .3s;font-weight:500}.nav-menu a:hover{color:var(--accent-color)}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-xs)}.mobile-menu-toggle span{display:block;width:25px;height:3px;background:var(--primary-color);margin:5px 0;transition:.3s}.hero{padding:var(--spacing-lg) 0;text-align:center;background:linear-gradient(135deg,var(--light-gray) 0%,var(--bg-color) 100%)}.hero-title{display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.main-logo{height:300px;width:auto;object-fit:contain}.hero-subtitle{font-size:var(--font-size-xl);color:var(--secondary-color);margin-bottom:var(--spacing-lg)}.hero-description{max-width:700px;margin:0 auto var(--spacing-xl);color:var(--secondary-color);line-height:1.8}.video-section{padding:var(--spacing-2xl) 0;background:var(--bg-color)}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:900px;margin:0 auto;border-radius:var(--radius-md);box-shadow:0 4px 20px #0000001a}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:var(--radius-md)}.video-error{padding:var(--spacing-xl);text-align:center;background:var(--light-gray);border-radius:var(--radius-md);color:var(--secondary-color)}.section-header{text-align:center;margin-bottom:var(--spacing-xl)}.section-header h2{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-sm);font-weight:800}.section-header p{color:var(--secondary-color);font-size:var(--font-size-lg)}p a,.section-header a{color:var(--hpbc-green);text-decoration:none;font-weight:600;transition:color .3s}p a:hover,.section-header a:hover{color:var(--accent-color);text-decoration:underline}.upcoming-artists{padding:var(--spacing-2xl) 0;background:var(--light-gray)}.artists-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.no-upcoming{text-align:center;color:var(--secondary-color);font-style:italic;margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:var(--bg-color);border-radius:var(--radius-md);border:2px dashed var(--border-color)}.artist-card{background:var(--bg-color);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:0 2px 10px #0000000d;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column;height:100%}.artist-card:hover{transform:translateY(-5px);box-shadow:0 4px 20px #0000001a}.artist-image{width:100%;height:200px;object-fit:cover;border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);background:var(--light-gray)}.artist-date{color:var(--accent-color);font-weight:600;margin-bottom:var(--spacing-xs)}.artist-name{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-sm);font-weight:700}.artist-bio{color:var(--secondary-color);line-height:1.7;flex-grow:1;margin-bottom:var(--spacing-sm)}.artist-social{margin-top:auto;padding-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0}.artist-social a{color:var(--hpbc-green);text-decoration:none;font-weight:600;font-size:.9rem;margin-right:var(--spacing-sm);transition:color .3s}.artist-social a:hover{color:var(--accent-color)}.archive{padding:var(--spacing-2xl) 0;background:var(--light-gray)}.archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.archive-card{background:var(--bg-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 10px #0000000d;transition:transform .3s,box-shadow .3s}.archive-card:hover{transform:translateY(-5px);box-shadow:0 4px 20px #0000001a}.archive-image-container{position:relative;overflow:hidden}.archive-image{width:100%;height:200px;object-fit:cover;transition:transform .3s}.video-link{display:block;position:relative;text-decoration:none}.play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:#4a5d3ae6;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;opacity:0;transition:opacity .3s}.video-link:hover .play-overlay{opacity:1}.video-link:hover .archive-image{transform:scale(1.05)}.archive-content{padding:var(--spacing-md)}.archive-date{color:var(--accent-color);font-weight:600;margin-bottom:var(--spacing-xs);font-size:.9rem}.archive-name{font-size:var(--font-size-xl);margin-bottom:.75rem;font-weight:700;color:var(--primary-color)}.archive-section{margin-bottom:var(--spacing-md)}.archive-section h4{color:var(--primary-color);font-size:var(--font-size-base);margin-bottom:var(--spacing-xs);font-weight:600}.songs-list{list-style:none;padding:0;margin:0 0 var(--spacing-sm) 0}.songs-list li{padding:.25rem 0;color:var(--secondary-color);font-size:.9rem;position:relative;padding-left:var(--spacing-sm)}.songs-list li:before{content:"♪";position:absolute;left:0;color:var(--accent-color)}.archive-sessionNotes{color:var(--secondary-color);line-height:1.6;font-size:.9rem;font-style:italic}.archive-actions{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.watch-button{background:var(--hpbc-green);color:#fff;text-decoration:none;padding:.75rem var(--spacing-md);border-radius:6px;font-weight:600;font-size:.9rem;transition:all .3s;display:inline-block}.watch-button:hover{background:var(--accent-color);transform:translateY(-2px)}.archive-error{text-align:center;color:var(--secondary-color);font-style:italic;padding:var(--spacing-lg)}.contact{padding:4rem 0;background-color:var(--bg-color)}.contact-form,.standalone-newsletter-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-color)}.form-group input,.form-group textarea,.newsletter-form input{width:100%;padding:1rem;border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus,.newsletter-form input:focus{outline:none;border-color:var(--hpbc-green)}.form-group textarea{min-height:120px;resize:vertical}.submit-btn,.newsletter-signup-btn,.newsletter-submit{background-color:var(--hpbc-green);color:#fff;padding:1rem 2rem;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.submit-btn:hover,.newsletter-signup-btn:hover,.newsletter-submit:hover{background-color:#8bb88b;transform:translateY(-2px)}.submit-btn:disabled,.newsletter-signup-btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.checkbox-group{display:flex;align-items:flex-start;gap:.75rem}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-weight:400;line-height:1.4;margin-bottom:0}.checkbox-label input[type=checkbox]{width:auto;margin:0;padding:0}.checkbox-label input[type=checkbox]{appearance:none;width:20px;height:20px;border:2px solid #ddd;border-radius:4px;background-color:#fff;cursor:pointer;position:relative;flex-shrink:0;margin-top:2px}.checkbox-label input[type=checkbox]:checked{background-color:var(--hpbc-green);border-color:var(--hpbc-green)}.checkbox-label input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.checkbox-label input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #9dc19d4d}.newsletter-section{padding:4rem 0;background-color:var(--bg-color)}.newsletter-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.newsletter-text h2{font-size:2.5rem;margin-bottom:1rem;color:var(--text-color)}.newsletter-text p{font-size:1.2rem;margin-bottom:1.5rem;color:var(--text-color)}.newsletter-benefits{list-style:none;padding:0}.newsletter-benefits li{padding:.5rem 0;font-size:1.1rem;color:var(--text-color)}.newsletter-form-container{padding:2rem}.standalone-newsletter-form h3{margin-bottom:1.5rem;color:var(--text-color);text-align:center}.standalone-newsletter-form .form-group{margin-bottom:1rem}.newsletter-disclaimer{font-size:.9rem;text-align:center;color:var(--secondary-color);margin:0;margin-bottom:1rem;padding:.75rem 1rem}.newsletter-error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:6px;margin:1rem 0;font-size:.9rem;text-align:center}.newsletter-success{text-align:center;padding:1rem 0}.newsletter-success h3{color:var(--text-color);margin-bottom:1rem}.newsletter-success .success-animation{font-size:4rem;margin:1.5rem 0;animation:successPulse 1.5s ease-in-out}.links{padding:var(--spacing-2xl) 0;background:var(--bg-color)}.links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.link-card{text-align:center;padding:var(--spacing-lg);background:var(--light-gray);border-radius:var(--radius-md);transition:transform .3s;display:flex;flex-direction:column;height:100%;align-items:center}.link-card:hover{transform:translateY(-5px)}.link-card img{max-width:120px;height:120px;margin-bottom:var(--spacing-md);border-radius:var(--radius-sm);flex-grow:1;object-fit:cover;object-position:center top}.link-card img[src*=dkscapture-logo]{object-position:center 20%}.link-card img[src*=evanjmartin-logo]{object-position:center 25%}.link-card img[src*=book-club-logo],.link-card img[src*=regcords-logo]{height:auto;max-height:120px;object-fit:contain}.link-card a{text-decoration:none;color:var(--hpbc-green);font-weight:600;font-size:var(--font-size-lg);transition:color .3s;margin-bottom:var(--spacing-xs);flex-shrink:0}.link-card a:hover{color:var(--accent-color)}.link-card p{margin-top:0;color:var(--secondary-color);font-size:.9rem;flex-shrink:0}footer{background:var(--hpbc-green);color:#fff;padding:var(--spacing-lg) 0;text-align:center}footer a{color:#fff;transition:opacity .3s}footer a:hover{opacity:.7}.social-links{margin-bottom:var(--spacing-sm)}.social-links a{color:#fff;text-decoration:none;margin:0 var(--spacing-sm);transition:opacity .3s}.social-links a:hover{opacity:.7}.modal{display:none;position:fixed;z-index:10000;left:0;top:0;width:100%;height:100%;background-color:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal.show{display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease-out}.modal-content{background:var(--bg-color);border-radius:var(--radius-lg);box-shadow:0 10px 30px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative;animation:slideIn .3s ease-out}.modal-header{position:relative;padding:var(--spacing-sm) var(--spacing-sm) 0}.close-modal{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:none;border:none;font-size:2rem;cursor:pointer;color:var(--secondary-color);transition:color .3s;z-index:1}.close-modal:hover{color:var(--primary-color)}.modal-body{padding:var(--spacing-lg);text-align:center}.modal-body h3{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-sm);color:var(--hpbc-green);font-weight:700}.modal-body p{color:var(--secondary-color);margin-bottom:var(--spacing-lg);line-height:1.6}.newsletter-form,.newsletter-form .form-group{margin-bottom:var(--spacing-sm)}.modal-footer-text{font-size:.9rem;color:var(--secondary-color);margin-bottom:0}.modal-error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:6px;margin:1rem 0;font-size:.9rem;text-align:center}.success-animation{font-size:3rem;color:var(--hpbc-green);text-align:center;margin:1.5rem 0;animation:successPulse 1.5s ease-in-out}@keyframes successPulse{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){:root{--font-size-3xl: 1.75rem;--font-size-4xl: 2rem;--spacing-lg: 1rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem}.container{padding:0 var(--spacing-sm)}.nav-container{padding:var(--spacing-sm)}.nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-color);flex-direction:column;padding:var(--spacing-sm);border-bottom:1px solid var(--border-color);box-shadow:0 4px 6px #0000001a}.nav-menu.active{display:flex}.mobile-menu-toggle{display:block}.hero-title{gap:var(--spacing-sm)}.main-logo{height:200px}.hero-subtitle{font-size:var(--font-size-base)}.artists-grid,.links-grid{grid-template-columns:1fr}.modal-content{width:95%;margin:var(--spacing-sm)}.modal-body{padding:var(--spacing-md)}.modal-body h3{font-size:var(--font-size-2xl)}.newsletter-content{grid-template-columns:1fr;gap:2rem;text-align:center}.newsletter-text h2{font-size:2rem}.newsletter-text p{font-size:1.1rem}.newsletter-benefits{text-align:left;max-width:300px;margin:0 auto}.newsletter-form-container{padding:1.5rem}}
