*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#faf8f5;--color-text:#2c2420;--color-text-light:#6b5e54;--color-primary:#8b6914;--color-primary-dark:#6d5310;--color-primary-light:#c4a24e;--color-accent:#4a3728;--color-white:#fff;--color-card-bg:#fff;--color-border:#e0d6cc;--color-success:#2e7d32;--color-error:#c62828;--font-serif:Georgia, "Times New Roman", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:var(--font-sans);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;line-height:1.7}.nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;background:#2c2420f2;justify-content:space-between;align-items:center;height:70px;padding:0 2rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{font-family:var(--font-serif);color:var(--color-primary-light);letter-spacing:.5px;font-size:1.3rem;font-weight:700;text-decoration:none}.nav-links{gap:2rem;list-style:none;display:flex}.nav-links a{color:var(--color-white);letter-spacing:.5px;text-transform:uppercase;font-size:.9rem;text-decoration:none;transition:color .3s}.nav-links a:hover{color:var(--color-primary-light)}.nav-toggle{cursor:pointer;background:0 0;border:none;padding:.5rem;display:none}.nav-toggle span{background:var(--color-white);width:24px;height:2px;margin:6px 0;transition:transform .3s,opacity .3s;display:block}.hero{justify-content:center;align-items:center;height:85vh;min-height:500px;display:flex;position:relative;overflow:hidden}.hero-image{filter:brightness(.4);background-image:url(/clavier_piano.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-content{text-align:center;color:var(--color-white);max-width:700px;padding:2rem;position:relative}.hero-content h1{font-family:var(--font-serif);text-shadow:0 2px 10px #0000004d;margin-bottom:1rem;font-size:3.2rem;line-height:1.2}.hero-content p{opacity:.9;margin-bottom:2rem;font-size:1.2rem}.hero-cta{background:var(--color-primary);color:var(--color-white);letter-spacing:.5px;padding:.9rem 2.5rem;font-size:1rem;text-decoration:none;transition:background .3s;display:inline-block}.hero-cta:hover{background:var(--color-primary-dark)}.section{max-width:1100px;margin:0 auto;padding:5rem 2rem}.section-alt{background:var(--color-white)}.section-alt .section{padding:5rem 2rem}.section-title{font-family:var(--font-serif);color:var(--color-accent);text-align:center;margin-bottom:1rem;font-size:2.2rem}.section-subtitle{text-align:center;color:var(--color-text-light);max-width:600px;margin:0 auto 3rem;font-size:1.05rem}.presentation-text{max-width:750px;color:var(--color-text-light);margin:0 auto;font-size:1.05rem}.presentation-text p{margin-bottom:1.2rem}.courses-grid{grid-template-columns:repeat(3,1fr);gap:2.5rem;display:grid}.course-card{background:var(--color-card-bg);border:1px solid var(--color-border);padding:2.5rem;transition:box-shadow .3s}.course-card:hover{box-shadow:0 8px 30px #00000014}.course-card h3{font-family:var(--font-serif);color:var(--color-primary);margin-bottom:1rem;font-size:1.5rem}.course-card ul{padding:0;list-style:none}.course-card li{color:var(--color-text-light);padding:.5rem 0 .5rem 1.5rem;position:relative}.course-card li:before{content:"–";color:var(--color-primary-light);position:absolute;left:0}.contact-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--color-text);margin-bottom:.4rem;font-size:.9rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--color-border);background:var(--color-white);width:100%;font-family:var(--font-sans);color:var(--color-text);padding:.75rem 1rem;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none}.form-group textarea{resize:vertical;min-height:140px}.honeypot{opacity:0;width:0;height:0;position:absolute;left:-9999px;overflow:hidden}.form-submit{background:var(--color-primary);width:100%;color:var(--color-white);font-size:1rem;font-family:var(--font-sans);cursor:pointer;letter-spacing:.5px;border:none;padding:.9rem;transition:background .3s;display:block}.form-submit:hover{background:var(--color-primary-dark)}.form-submit:disabled{background:var(--color-text-light);cursor:not-allowed}.form-message{text-align:center;margin-top:1rem;padding:1rem;font-size:.95rem}.form-message.success{color:var(--color-success);background:#e8f5e9;border:1px solid #a5d6a7}.form-message.error{color:var(--color-error);background:#ffebee;border:1px solid #ef9a9a}.footer{background:var(--color-accent);color:#ffffffb3;text-align:center;padding:2.5rem 2rem;font-size:.9rem}.footer a{color:var(--color-primary-light);text-decoration:none}.footer a:hover{text-decoration:underline}.cookie-banner{color:var(--color-white);z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2c2420f7;justify-content:center;align-items:center;gap:1.5rem;padding:1.2rem 2rem;display:flex;position:fixed;bottom:0;left:0;right:0}.cookie-text{margin:0;font-size:.92rem;line-height:1.5}.cookie-buttons{flex-shrink:0;gap:.75rem;display:flex}.cookie-btn{font-family:var(--font-sans);cursor:pointer;letter-spacing:.3px;border:none;padding:.5rem 1.4rem;font-size:.88rem;transition:background .3s}.cookie-btn-accept{background:var(--color-primary);color:var(--color-white)}.cookie-btn-accept:hover{background:var(--color-primary-dark)}.cookie-btn-refuse{color:var(--color-white);background:0 0;border:1px solid #fff6}.cookie-btn-refuse:hover{border-color:var(--color-white)}@media (max-width:768px){.nav-links{background:#2c2420fa;flex-direction:column;gap:1rem;padding:1.5rem 2rem;display:none;position:absolute;top:70px;left:0;right:0}.nav-links.open{display:flex}.nav-toggle{display:block}.hero-content h1{font-size:2.2rem}.hero-content p{font-size:1rem}.courses-grid{grid-template-columns:1fr}.section,.section-alt .section{padding:3rem 1.2rem}.section-title{font-size:1.8rem}.cookie-banner{text-align:center;flex-direction:column;gap:1rem;padding:1rem 1.2rem}}
