:root{--bg:#0b1220;--text:#eaf1ff;--muted:#b7c4dd;--accent:#e63946;--radius:16px}
body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--text);line-height:1.55;background:radial-gradient(1200px 600px at 30% -10%,rgba(255,255,255,.06),transparent 55%),radial-gradient(900px 500px at 90% 10%,rgba(230,57,70,.08),transparent 60%),var(--bg)}
a{color:inherit}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:rgba(11,18,32,.94);border-bottom:1px solid rgba(255,255,255,.08)}.site-header-inner{max-width:1100px;margin:auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.site-brand img{width:40px;height:40px;border-radius:10px}.site-brand strong,.site-brand small{display:block}.site-brand strong{font-size:14px;line-height:1.2}.site-brand small{font-size:12px;color:var(--muted)}.site-menu{display:flex;gap:8px;align-items:center}.site-menu a{padding:10px 12px;text-decoration:none;font-size:13px;font-weight:700;border-radius:10px;white-space:nowrap}.site-menu a:hover,.site-menu a[aria-current=page]{background:rgba(255,255,255,.08)}.site-menu a:focus-visible,.site-brand:focus-visible{outline:2px solid white;outline-offset:3px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;text-decoration:none;font-weight:700;font-size:13px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:var(--text);line-height:1.55}.btn.primary{background:var(--accent);border:1px solid rgba(0,0,0,.15);box-shadow:0 14px 30px rgba(230,57,70,.28)}.btn.secondary{background:rgba(29,53,87,.55)}.btn:hover{background:rgba(255,255,255,.08)}.btn.primary:hover{background:#ff4d5a}.site-footer{text-align:center;font-size:13px;color:rgba(255,255,255,.6);padding:28px 18px 40px;border-top:1px solid rgba(255,255,255,.06)}.rental-section h2{font-size:32px;line-height:1.2}.calendar-card{background:rgba(15,26,46,.72);border-radius:16px}
@media(max-width:700px){.site-header-inner{padding:10px 14px;gap:8px;flex-wrap:wrap}.site-brand img{width:34px;height:34px}.site-brand strong{font-size:13px}.site-brand small{font-size:11px}.site-menu{width:100%;justify-content:space-between;gap:0;border-top:1px solid rgba(255,255,255,.08);padding-top:5px}.site-menu a{font-size:12px;padding:8px 9px}.rental-section h2{font-size:27px}#contact,#lessons,#why{scroll-margin-top:130px}}

/* A quieter, more compact rhythm for the homepage. */
section{padding:50px 18px}
#why{padding:38px 18px 42px}
#why .container{max-width:1100px!important}
#why .card{padding:0 0 0 22px;border:0;border-left:3px solid rgba(230,57,70,.65);border-radius:0;background:none;box-shadow:none;max-width:850px}
#why .lead{margin-bottom:0;max-width:76ch}
.grid-2{gap:36px;align-items:center}
.grid-2>.card{padding:0;border:0;border-radius:0;background:none;box-shadow:none}
.grid-2 figure .img{display:block;max-height:390px;width:100%;object-fit:contain;background:rgba(255,255,255,.025);box-shadow:none;border-radius:12px}
.grid-2 figcaption{font-size:13px;margin-top:10px;margin-bottom:0}
.features{gap:0 18px;margin-top:20px}
.feature{padding:10px 0;border:0;border-bottom:1px solid rgba(255,255,255,.12);border-radius:0;background:none}
.lessons-section{padding:44px 18px;background:rgba(16,26,43,.55)}
.lessons-layout{gap:36px;margin-top:22px;align-items:center}
.lesson-option{padding:14px 0}.lesson-option:last-child{padding-bottom:0}
.rapsodo-panel{padding:24px;border-radius:12px;box-shadow:none;border-top:1px solid rgba(255,255,255,.14)}
.rapsodo-panel img{margin-bottom:20px;width:156px;padding:12px}
.rapsodo-panel h3{font-size:23px;margin:8px 0 12px}
.cta{padding:48px 18px}.contact-methods{margin:20px 0;gap:18px 48px}
.rental-composer{margin-top:20px}.site-footer{padding:24px 18px}
@media(max-width:700px){
 section{padding:34px 18px}#why{padding:32px 18px}#why .card{padding-left:16px}
 .grid-2{gap:22px}.grid-2 figure .img{max-height:320px}
 .lessons-section{padding:34px 18px}.lessons-layout{gap:22px;margin-top:18px}
 .rapsodo-panel{padding:22px}.rapsodo-panel h3{font-size:22px}
 .features{margin-top:16px}.feature{padding:9px 0}
 .cta{padding:36px 18px}.contact-methods{margin:18px 0}
}
