:root{--bg:#111111;--paper:#ffffff;--muted:#b9b9bc;--violet:#6e3aff;--violet-text:#b79aff;--line:#393a3d;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--violet-text);outline-offset:6px}header{height:100px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;padding:0 5vw;margin:auto;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:38px;letter-spacing:-2px;line-height:1}.wordmark span{display:block;font:10px Arial;letter-spacing:5px;margin-top:8px;text-align:center}nav{display:flex;gap:38px;font-size:15px}nav a:hover,.text-link:hover{color:var(--violet-text)}.nav-cta{border:1px solid #777;border-radius:40px;padding:9px 22px;font-size:15px}.skip{position:absolute;left:10px;top:-100px;padding:10px;background:var(--violet-text);color:var(--bg);z-index:9}.skip:focus{top:10px}.hero{padding:48px 5vw 50px;max-width:1440px;margin:auto;min-height:690px}.hero-top{display:flex;justify-content:space-between;gap:24px}.eyebrow,.edition,.section-label,.event-tag{font-size:13px;letter-spacing:2px;font-weight:600}.edition{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(54px,7.7vw,115px);line-height:1.03;font-weight:500;letter-spacing:-.055em;margin:48px 0 38px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;color:var(--violet-text)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.hero-bottom p{margin:0;color:var(--muted);font-size:18px;line-height:1.5}.button{border:0;display:inline-flex;align-items:center;justify-content:center;padding:18px 28px;border-radius:50px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px);background:#5925e6}.violet{background:var(--violet);color:var(--paper)}.scroll-note{font-size:12px;letter-spacing:2px;color:var(--muted);writing-mode:vertical-rl;white-space:nowrap}.ribbon{background:var(--violet);color:var(--paper);padding:24px 5vw;display:flex;justify-content:space-around;align-items:center;gap:18px;font-size:clamp(16px,2vw,27px);font-weight:600;letter-spacing:-.04em}.ribbon i{font-style:normal}.section{max-width:1440px;margin:auto;padding:110px 5vw;display:grid;grid-template-columns:1fr 2.2fr;gap:60px;border-bottom:1px solid var(--line)}.section-label{padding-top:12px;color:var(--muted)}h2{font-size:clamp(42px,5vw,74px);font-weight:500;line-height:1.1;letter-spacing:-.045em;margin-bottom:30px}.large{font-size:clamp(20px,2vw,27px);line-height:1.5;max-width:760px}.intro p:not(.large),.music p:not(.large),.inquiry p:not(.large){color:var(--muted)}.numbers{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;margin-top:45px;gap:20px}.numbers strong{display:block;font-family:Georgia,serif;font-size:72px;line-height:1.1;font-weight:400}.numbers span{display:block;font-size:14px;color:var(--muted);margin-top:12px}.genres{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:50px 0}.genres article{border-top:1px solid var(--line);padding-top:20px}.genres article>span{color:var(--violet-text);font-size:13px}.genres h3{font-family:Georgia,serif;font-size:32px;font-weight:400;margin:20px 0 12px;line-height:1.2}.genres p{font-size:16px}.song-list{margin-top:50px}.song-list .eyebrow{margin-bottom:24px}details{border-bottom:1px solid var(--line)}details:first-of-type{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;font-size:18px}summary::-webkit-details-marker{display:none}summary span:last-child{font-size:24px;font-weight:400;color:var(--violet-text)}details[open] summary span:last-child{transform:rotate(45deg)}details p{margin:0 0 25px;max-width:650px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:38px 0 24px}.tabs button{border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--paper);padding:11px 22px;cursor:pointer;font-size:16px}.tabs button[aria-selected=true]{background:var(--paper);color:var(--bg);border-color:var(--paper)}.event-panel{padding:40px;background:#222428;border-left:3px solid var(--violet-text)}.event-tag{color:var(--violet-text);font-size:12px}.event-panel h3{font-size:clamp(26px,3vw,39px);font-weight:400;letter-spacing:-.035em;line-height:1.2;margin:22px 0}.event-panel p{color:var(--muted);max-width:650px}.event-chips{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.event-chips span{font-size:14px;border:1px solid #505257;padding:5px 12px;border-radius:20px}.text-link{display:inline-block;border-bottom:1px solid var(--violet-text);padding-bottom:4px}.quote{padding:110px 5vw;text-align:center;border-bottom:1px solid var(--line);background:#171719}.quote>p{color:var(--muted);font-size:20px}.quote h2{font-size:clamp(38px,5vw,72px)}.quote>span{font-size:12px;letter-spacing:4px}form{margin-top:42px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;font-weight:600;margin-bottom:22px}input,select,textarea{display:block;width:100%;border:1px solid #505257;background:#222428;color:var(--paper);padding:14px 16px;border-radius:4px;margin-top:9px;font-size:16px;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#aaa;font-weight:400}#copy-status{min-height:25px;margin:14px 0 0;font-size:14px}#copy-fallback[hidden]{display:none}.faq{margin-top:48px}.faq summary{font-size:16px}.faq p{font-size:16px}footer{max-width:1440px;padding:55px 5vw;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p{font-size:14px;color:var(--muted);margin:0}footer>a:last-child{font-size:14px;color:var(--muted)}@media(max-width:800px){header{height:85px;padding:0 6vw}nav{gap:20px}nav a:first-child{display:none}.nav-cta{display:none}.hero{padding:35px 6vw 44px;min-height:auto}.hero-top .edition{display:none}h1{margin-top:45px}.hero-bottom{flex-wrap:wrap;align-items:center}.scroll-note{display:none}.hero-bottom p{font-size:16px}.ribbon{gap:12px;flex-wrap:wrap;padding:20px 6vw}.ribbon span{font-size:15px}.ribbon i:last-of-type,.ribbon span:last-child{display:none}.section{grid-template-columns:1fr;gap:26px;padding:65px 6vw}.section-label{padding:0}h2{font-size:46px}.genres{gap:20px}.genres h3{font-size:26px}.event-panel{padding:28px}.quote{padding:70px 6vw}footer{padding:40px 6vw;flex-wrap:wrap}}@media(max-width:480px){h1{font-size:clamp(44px,11.5vw,58px)}.hero-bottom{display:block}.hero-bottom .button{margin-top:28px}.genres{grid-template-columns:1fr;margin-top:30px;gap:16px}.genres h3{margin:10px 0;font-size:30px}.genres p{margin-bottom:6px}.genres article>span{float:right}.numbers strong{font-size:55px}.numbers span{font-size:13px}.form-grid{grid-template-columns:1fr;gap:0}.event-panel h3{font-size:28px}.tabs{gap:7px}.tabs button{padding:10px 15px}.quote h2{font-size:37px}footer p{display:none}h2{font-size:42px}nav{font-size:14px;gap:15px}.wordmark{font-size:32px}}@media(prefers-reduced-motion:no-preference){.hero h1{animation:arrive .8s ease-out both}.hero-bottom{animation:arrive .8s .15s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.tracklist{list-style:none;margin:40px 0 28px;padding:0;border-top:1px solid var(--line)}.tracklist li{display:grid;grid-template-columns:40px 1fr;gap:16px;align-items:baseline;border-bottom:1px solid var(--line);padding:19px 0;font-size:clamp(18px,2vw,25px);letter-spacing:-.02em}.song-number{font-size:13px;letter-spacing:1px;color:var(--violet-text)}.repertoire-note{color:var(--muted);font-size:16px;max-width:650px}.tabs button[aria-selected=true]{background:var(--violet);color:var(--paper);border-color:var(--violet)}@media(max-width:480px){.tracklist li{grid-template-columns:28px 1fr;gap:12px;font-size:19px}}

.repertoire-nav{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 44px}.repertoire-nav a{border:1px solid var(--line);border-radius:24px;padding:9px 16px;font-size:14px;transition:background .2s,border-color .2s}.repertoire-nav a:hover{background:var(--violet);border-color:var(--violet)}.repertoire-group{margin:0 0 42px;scroll-margin-top:35px}.repertoire-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.repertoire-heading h3{font-size:clamp(26px,3vw,36px);line-height:1.2;letter-spacing:-.035em;font-weight:400;margin:0;color:var(--violet-text)}.repertoire-heading>span{font-size:13px;white-space:nowrap;color:var(--muted)}.repertoire-group .tracklist{margin:18px 0 0}.repertoire-group .tracklist li{padding:15px 0;font-size:clamp(18px,1.8vw,23px)}

.brand-logo{display:block;flex-shrink:0;width:100px;height:100px}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain}.team{margin-top:55px;padding-top:35px;border-top:1px solid var(--line)}.team>h3{font-size:24px;font-weight:400;margin-bottom:24px}.team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.team figure{margin:0;min-width:0}.team figure img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:4px}.team figcaption{padding-top:12px;font-size:14px;line-height:1.4}.team figcaption strong{display:block;font-weight:500}.team figcaption span{display:block;color:var(--muted);margin-top:5px;font-size:13px}.pianist{padding:20px 0 0;margin:20px 0 0;border-top:1px solid var(--line);font-size:17px}.pianist span{font-size:12px;letter-spacing:2px;margin-right:15px;color:var(--violet-text)}.social-section{max-width:1440px;margin:auto;padding:85px 5vw;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.social-section .eyebrow{color:var(--muted)}.social-section h2{margin-top:20px;font-size:clamp(40px,4vw,58px)}.social-section p{color:var(--muted);margin:0}.social-links{display:flex;flex-direction:column;gap:0}.social-links a{display:flex;align-items:baseline;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:23px 0}.social-links a:first-child{border-top:1px solid var(--line)}.social-links a:hover span{color:var(--violet-text)}.social-links span{font-size:26px}.social-links small{font-size:14px;color:var(--muted)}.contact-links{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin:30px 0}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--muted)}@media(max-width:800px){.brand-logo{width:82px;height:82px}.social-section{grid-template-columns:1fr;gap:30px;padding:65px 6vw}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 16px}}@media(max-width:480px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-links a{flex-wrap:wrap}.social-links span{font-size:24px}.contact-links{gap:20px}.contact-links .text-link{font-size:16px}footer .brand-logo{width:100px;height:100px}}

/* Preserve the original white brand mark while blending its black background into the page. */
.brand-logo img{mix-blend-mode:screen}

.photo-section{max-width:1440px;margin:auto;padding:100px 5vw;border-bottom:1px solid var(--line)}.photo-section>.section-label{margin-bottom:25px}.photo-section>h2{margin-bottom:20px}.photo-section>.large{color:var(--muted);margin-bottom:40px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.gallery-card{margin:0;min-width:0}.gallery-card-0{grid-column:1/-1;max-width:100%;width:100%}.gallery-open{display:block;position:relative;cursor:zoom-in;width:100%;background:transparent;border:0;padding:0;color:var(--paper)}.gallery-open img{display:block;width:100%;height:auto;border-radius:4px}.gallery-card-0 .gallery-open{max-width:1000px;margin:auto}.gallery-card figcaption{font-size:15px;color:var(--muted);padding:12px 0}.gallery-card-0 figcaption{max-width:1000px;margin:auto}.photo-expand{position:absolute;bottom:16px;right:16px;background:#111e;border:1px solid #666;border-radius:25px;padding:8px 15px;font-size:14px}.gallery-open:hover .photo-expand{background:var(--violet)}#photo-dialog{width:min(1100px,95vw);max-width:95vw;max-height:95dvh;padding:20px;background:#171719;color:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:auto}#photo-dialog::backdrop{background:#000d}#photo-dialog figure{margin:16px 0;text-align:center}#photo-full{display:block;margin:auto;width:auto;max-width:100%;height:auto;max-height:70dvh;object-fit:contain}#photo-caption{font-size:15px;color:var(--muted);padding-top:12px}.photo-dialog-top,.photo-dialog-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}.photo-dialog-top>span{font-size:14px;color:var(--muted)}#photo-dialog button{cursor:pointer;background:transparent;color:var(--paper);border:1px solid #666;border-radius:25px;padding:9px 18px;font-size:14px}#photo-dialog button:hover{background:var(--violet)}@media(max-width:800px){.photo-section{padding:65px 6vw}.photo-grid{gap:20px}}@media(max-width:480px){nav a[href="#eventos"]{display:none}.photo-grid{grid-template-columns:1fr}.gallery-card-0{grid-column:auto}.photo-expand{font-size:13px;padding:6px 12px;bottom:12px;right:12px}#photo-dialog{padding:14px}}

.photo-grid.two-photos{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}.two-photos .gallery-card-0{grid-column:auto}.two-photos .gallery-card-0 .gallery-open{max-width:none}.two-photos .gallery-card-0 figcaption{max-width:none}@media(max-width:800px){.photo-grid.two-photos{grid-template-columns:1fr}}

/* Brand atmosphere: existing logo as a quiet watermark, with violet stage light. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 90% 42%,rgba(110,58,255,.19),transparent 61%)}
.hero::before{content:"";position:absolute;z-index:0;pointer-events:none;width:min(1050px,85vw);aspect-ratio:1;right:-80px;top:-90px;background:url("assets/logo_attempo_positivo.png") center/contain no-repeat;mix-blend-mode:screen;opacity:.11;transform:rotate(-8deg)}
.hero>*{position:relative;z-index:1}
.quote{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 50%,rgba(110,58,255,.15),transparent 72%),#171719}
.quote::before{content:"";position:absolute;z-index:0;pointer-events:none;width:min(900px,85vw);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%);background:url("assets/logo_attempo_positivo.png") center/contain no-repeat;mix-blend-mode:screen;opacity:.065}
.quote>*{position:relative;z-index:1}
.repertoire{background:radial-gradient(ellipse at 100% 12%,rgba(110,58,255,.07),transparent 55%)}
.social-section{background:radial-gradient(ellipse at 0% 75%,rgba(110,58,255,.11),transparent 65%)}
@media(max-width:800px){.hero::before{width:780px;max-width:none;right:-270px;top:-40px;opacity:.075;transform:rotate(-8deg)}.hero{background:radial-gradient(ellipse at 100% 40%,rgba(110,58,255,.17),transparent 75%)}.quote::before{width:700px;max-width:none;opacity:.045}}

.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.hero-actions .text-link{font-size:16px}
.video-section{max-width:1440px;margin:auto;padding:90px 5vw;border-bottom:1px solid var(--line)}.video-section>.section-label{margin-bottom:25px}.video-section>.large{color:var(--muted);margin-bottom:36px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.video-card:first-child{grid-column:1/-1;max-width:950px;width:100%;margin:auto}.video-frame{aspect-ratio:16/9;background:#222428;overflow:hidden;border-radius:6px}.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px}.video-caption h3{font-size:22px;font-weight:400;line-height:1.3;margin:0 0 5px}.video-caption span{font-size:14px;color:var(--muted)}.video-caption>a{font-size:14px;color:var(--violet-text);white-space:nowrap;border-bottom:1px solid var(--violet-text)}
.repertoire-group{margin:0;border-top:0;border-bottom:1px solid var(--line)}.repertoire-group:first-of-type{border-top:1px solid var(--line)}.repertoire-group .repertoire-heading{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:22px;padding:24px 0}.repertoire-group .repertoire-heading h3{font-size:clamp(24px,2.8vw,34px);margin:0}.repertoire-group .repertoire-count{font-size:14px;color:var(--muted)}.repertoire-group .repertoire-toggle{font-size:28px;line-height:1;color:var(--violet-text)}.repertoire-group .tracklist{margin:0 0 25px;border-top:0}.repertoire-group .tracklist li{font-size:20px;padding:14px 0}.repertoire-group .tracklist li:last-child{border-bottom:0}.repertoire-note{margin-top:28px}.brief-details{margin:36px 0 0;border-top:1px solid var(--line)}.brief-details>summary{font-size:16px}.brief-details form{margin-top:24px}.email-button{border:1px solid var(--violet-text);background:transparent;color:var(--paper)}.email-button:hover{background:var(--violet)}
@media(max-width:800px){.video-section{padding:65px 6vw}.video-grid{gap:28px}.video-caption{align-items:start;flex-wrap:wrap;gap:8px}.hero-actions{gap:20px}.hero-bottom{align-items:center}.repertoire-group .repertoire-heading{gap:16px}}
@media(max-width:480px){.video-grid{grid-template-columns:1fr}.video-card:first-child{grid-column:auto}.video-caption h3{font-size:21px}.hero-actions{margin-top:28px}.hero-actions .button{margin-top:0}.repertoire-group .repertoire-heading{grid-template-columns:1fr auto auto;gap:12px}.repertoire-group .repertoire-heading h3{font-size:23px}.repertoire-group .tracklist li{font-size:18px}.contact-links .button{width:100%;font-size:15px}nav{gap:12px;font-size:13px}.brand-logo{width:75px;height:75px}}

.hero-bottom .hero-intro{max-width:410px;color:var(--paper);font-size:19px;line-height:1.5}.coverage{display:block;font-size:14px;line-height:1.6;color:var(--muted);margin-top:14px}.inquiry .proposal-note{color:var(--violet-text)!important;font-size:18px;margin:28px 0 0}.proposal-note+.contact-links{margin-top:18px}@media(max-width:800px){.hero-bottom .hero-intro{font-size:18px;max-width:100%}}
