:root{--primary-color: #374151;--secondary-color: #6b7280;--accent-color: #f3f4f6;--text-color: #1f2937;--muted-color: #6b7280;--background-color: #ffffff;--card-background: #ffffff;--card-border: #e5e7eb;--success-color: #059669;--pink-color: #bb5d7e;--border-radius: 8px;--max-width: 900px}*{box-sizing:border-box}body{background:var(--background-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--text-color);margin:0;padding:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}nav{background:var(--background-color);border-bottom:1px solid var(--card-border);position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000001a}nav .container{display:flex;justify-content:space-between;align-items:center}nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2rem}nav a{text-decoration:none;color:var(--text-color);font-weight:500;transition:color .2s ease}nav a:hover{color:var(--secondary-color)}nav strong{font-size:1.5rem;color:var(--primary-color);font-weight:600}.hero{padding:0;text-align:center;position:relative}.hero-image{width:100%;height:auto}.hero-content{padding:2rem 0 3rem;background:var(--background-color)}.hero h1{font-size:3rem;margin-bottom:1rem;font-weight:300;color:var(--primary-color);letter-spacing:1px}.hero p{font-size:1.2rem;color:var(--muted-color);max-width:500px;margin:0 auto}.product-section{padding:3rem 0;background:var(--accent-color)}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{color:var(--primary-color);font-size:2.5rem;margin-bottom:1rem;font-weight:300;letter-spacing:.5px}.charitable-message{font-size:1.1rem;color:var(--muted-color);font-style:italic;max-width:600px;margin:0 auto;line-height:1.6}.product-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.coming-soon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2rem 0}.product-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:var(--border-radius);padding:2.5rem;text-align:center;transition:all .3s ease;box-shadow:0 4px 6px #0000000d}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:var(--secondary-color)}.product-card h3{color:var(--primary-color);margin-bottom:1rem;font-size:1.5rem;font-weight:600}.product-card .description{margin-bottom:2rem;color:var(--muted-color);line-height:1.7}.product-card .price{font-size:2.5rem;font-weight:300;color:var(--primary-color);margin:1.5rem 0;min-height:3rem;display:flex;align-items:center;justify-content:center}.price.loading{color:var(--muted-color);font-style:italic}.cta-button{background:var(--primary-color);color:#fff;border:none;padding:1rem;border-radius:var(--border-radius);font-weight:500;font-size:1rem;cursor:pointer;transition:all .3s ease;width:100%;text-transform:uppercase;letter-spacing:.5px}.cta-button:hover{background:var(--secondary-color);transform:translateY(-2px)}.cta-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.page-section{padding:3rem 0;text-align:center;background:var(--background-color)}.page-section h2{color:var(--primary-color);font-size:2.5rem;margin-bottom:2rem;font-weight:300}.page-section p{font-size:1.1rem;color:var(--muted-color);max-width:600px;margin:0 auto 2rem;line-height:1.7}.about-content{margin:0;text-align:left;background:var(--background-color);padding:0 2rem}.quote{font-family:Georgia,Times New Roman,Times,serif;font-size:1.4rem;font-style:italic;color:var(--pink-color);text-align:center;padding:2rem;border-left:4px solid var(--secondary-color);background:var(--accent-color);border-radius:var(--border-radius);position:relative}.quote cite{display:block;font-size:1rem;color:var(--muted-color);font-style:normal;margin-top:1rem;font-weight:500}.school-info{margin:3rem 0}.school-info h3{color:var(--primary-color);font-size:1.8rem;margin-bottom:1.5rem;font-weight:600;text-align:center}.school-info p{margin-bottom:1.5rem;line-height:1.8;color:var(--text-color);font-size:1.1rem}.attribution{text-align:center;font-style:italic;color:var(--muted-color);margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--card-border)}.contact-info{background:var(--accent-color);padding:2rem;border-radius:var(--border-radius);margin-top:2rem;text-align:center}.contact-info p{margin-bottom:1rem;color:var(--text-color)}.contact-info a{color:var(--primary-color);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-bottom-color .2s ease}.contact-info a:hover{border-bottom-color:var(--primary-color)}.about-content h2{color:var(--primary-color);margin-top:2rem;margin-bottom:1rem;font-weight:600}.about-content p{margin-bottom:1.5rem;line-height:1.8;color:var(--text-color)}.about-content ul{margin-bottom:1.5rem}.about-content li{margin-bottom:.5rem;color:var(--text-color)}.albums-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:2rem 0}.album-detail-layout{max-width:1000px;margin:0 auto;padding:2rem 0}.album-info-section{display:grid;grid-template-columns:300px 1fr;gap:3rem;margin-bottom:4rem;align-items:start}.album-art img{width:100%;height:auto;border-radius:var(--border-radius);box-shadow:0 8px 24px #00000026}.tracklist{padding-left:1rem}.artist-section{color:var(--pink-color);font-size:1.2rem;font-weight:700;margin:2rem 0 1rem;font-family:Georgia,Times New Roman,Times,serif}.artist-section:first-child{margin-top:0}.track-list{list-style:none;padding:0;margin:0 0 1.5rem}.track-item{margin-bottom:.5rem;color:var(--text-color);font-size:.85rem;line-height:1.3}.track-number{font-weight:600;color:var(--primary-color);margin-right:.5rem}.memorial-note{font-style:italic;color:var(--muted-color);font-size:.9rem;margin-top:1rem}.future-albums{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:4rem 0}.future-album-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:var(--border-radius);padding:1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.future-album-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.future-album-card h3{color:var(--primary-color);margin-bottom:.5rem;font-weight:600}.future-album-card p{margin-bottom:1rem;color:var(--muted-color);font-size:.9rem}.acknowledgements{background:var(--accent-color);padding:2rem;border-radius:var(--border-radius);margin-top:3rem}.acknowledgements h3{color:var(--primary-color);font-size:1.1rem;font-weight:700;margin:0 0 1rem;font-family:Georgia,Times New Roman,Times,serif}.acknowledgements p{color:var(--text-color);margin:0 0 .5rem;line-height:1.5}.acknowledgements h3:not(:first-child){margin-top:2rem}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin:3rem 0}.photo-item{border-radius:var(--border-radius);overflow:hidden;box-shadow:0 4px 8px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.photo-item:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.photo-item img{width:100%;height:200px;object-fit:cover;display:block}.photo-item{cursor:pointer}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000e6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{position:relative;margin:auto;padding:0;width:90%;max-width:800px;top:50%;transform:translateY(-50%);text-align:center}.modal-content img{width:100%;height:auto;max-height:80vh;object-fit:contain;border-radius:var(--border-radius)}.close{position:absolute;top:-40px;right:0;color:#fff;font-size:2rem;font-weight:700;cursor:pointer;z-index:1001;background:#00000080;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease}.close:hover{background:#000c}.modal-caption{color:#fff;padding:1rem;font-size:1.1rem;background:#000000b3;border-radius:0 0 var(--border-radius) var(--border-radius);margin-top:-4px}.album-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:var(--border-radius);padding:1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.album-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.album-card img{width:100%;border-radius:6px;margin-bottom:1rem}.album-card h4{color:var(--primary-color);margin-bottom:.5rem;font-weight:600}footer{background:var(--primary-color);color:#fff;padding:3rem 0 2rem;margin-top:4rem;text-align:center}footer p{margin-bottom:1rem;opacity:.9;color:#fff!important}.stripe-badge{opacity:.8;font-size:.9rem}#checkout-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.checkout-modal{background:#fff;border-radius:var(--border-radius);width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px #0000004d}.checkout-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--card-border);background:var(--accent-color)}.checkout-header h3{margin:0;color:var(--primary-color);font-weight:600}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted-color);padding:.5rem;line-height:1;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{background:var(--accent-color);color:var(--primary-color)}#checkout-container{padding:1.5rem;max-height:calc(90vh - 100px);overflow-y:auto;-webkit-overflow-scrolling:touch}.error{background:#fee2e2;color:#dc2626;padding:1rem;border-radius:var(--border-radius);margin:1rem 0;text-align:center;border:1px solid #fecaca}.success{background:#dcfce7;color:#16a34a;padding:1rem;border-radius:var(--border-radius);margin:1rem 0;text-align:center;border:1px solid #bbf7d0}.artist-info{text-align:center;margin:2rem 0 3rem;line-height:1.4}.artist-name{font-family:Georgia,Times New Roman,Times,serif;font-size:1.8rem;font-weight:400;color:var(--pink-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;line-height:1.2}.artist-description{font-family:Georgia,Times New Roman,Times,serif;font-size:1.1rem;font-style:italic;color:#2d3748;text-transform:capitalize;line-height:1.3;font-weight:400}@media (max-width: 768px){.hero h1{font-size:2.5rem}.hero p{font-size:1.1rem}.container{padding:0 1rem}nav .container{padding:1rem}nav ul{gap:1rem}.product-card{padding:2rem 1.5rem}.checkout-modal{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;border-radius:0;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}#checkout-overlay{padding:0;align-items:stretch}.checkout-header{padding:1rem;padding-top:calc(1rem + env(safe-area-inset-top))}#checkout-container{padding:1rem;max-height:calc(100vh - 80px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.close-btn{font-size:1.8rem;min-width:48px;min-height:48px}.artist-name{font-size:1.5rem}.artist-description{font-size:1rem}.section-header h2{font-size:2rem}.school-info h3{font-size:1.5rem}.about-content{padding:1rem}.album-info-section{grid-template-columns:1fr;gap:2rem;text-align:center}.tracklist{padding-left:0}.future-albums{grid-template-columns:1fr;gap:1rem}.future-album-card{padding:1.5rem}.coming-soon-grid{grid-template-columns:1fr;gap:1rem}.photo-gallery{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.photo-item img{height:150px}.modal-content{width:95%;max-width:none}.close{top:-30px;right:10px;font-size:1.5rem;width:30px;height:30px}.modal-caption{font-size:1rem;padding:.75rem}}.album-art-placeholder{height:150px;background:repeating-linear-gradient(135deg,#e0e0e0,#e0e0e0 20px,#f5f5f5 20px,#f5f5f5 40px);display:flex;align-items:center;justify-content:center;color:#aaa;font-size:1.1rem;border-radius:var(--border-radius);border:1px solid #ccc}.album-art-placeholder.bigger{height:200px}
