.language-picker{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.language-picker span{opacity:.7}
.language-picker select{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:inherit;padding:9px 28px 9px 10px;text-transform:none;letter-spacing:0;outline:0}
.theme-luminous .language-picker select,.theme-gothic .language-picker select,.theme-archaic .language-picker select,.theme-time_light .language-picker select{border-color:rgba(70,45,31,.25);background:rgba(255,255,255,.45)}
.pagination{display:flex;justify-content:center;gap:10px;margin-top:34px;flex-wrap:wrap}
.pagination a{min-width:42px;height:42px;padding:0 12px;display:grid;place-items:center;border:1px solid var(--line);color:inherit;background:rgba(255,255,255,.12)}
.pagination a.active,.pagination a:hover{background:var(--gold);color:#241317;border-color:var(--gold)}
@media(max-width:850px){.site-header nav.open .language-picker{align-items:flex-start;flex-direction:column}.language-picker select{width:100%}}
.cv-section{background:var(--paper)}
.cv-layout{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.cv-block{background:rgba(255,255,255,.62);border:1px solid var(--line);padding:clamp(22px,3vw,34px)}
.cv-block h3{font:500 30px var(--serif);margin:0 0 18px;color:var(--wine)}
.cv-item{border-top:1px solid var(--line);padding:18px 0}
.cv-item:first-of-type{border-top:0}
.cv-item time{display:block;color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:5px}
.cv-item h4{font:500 24px var(--serif);margin:0 0 6px}
.cv-item p{margin:0;color:inherit}
.cv-meta{opacity:.75;font-size:13px;margin-bottom:8px!important}
.cv-empty{opacity:.65;font-style:italic}
.consent{display:flex!important;align-items:flex-start;gap:10px;text-transform:none!important;letter-spacing:normal!important;font-size:13px!important;line-height:1.45}
.consent input{width:auto!important;margin-top:3px}
.legal{background:var(--cream)}
.legal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.legal-grid article{background:rgba(255,255,255,.65);border:1px solid var(--line);padding:24px}
.legal-grid h3{font:500 25px var(--serif);margin:0 0 10px;color:var(--wine)}
.legal-grid label{display:flex;gap:9px;align-items:flex-start}
.legal-grid input[disabled]{filter:grayscale(1);opacity:.65}
.cookie-banner{position:fixed;z-index:100;left:22px;right:22px;bottom:22px;display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fffaf2;color:#271b16;border:1px solid rgba(0,0,0,.14);box-shadow:0 18px 80px rgba(0,0,0,.22);padding:20px 24px}
.cookie-banner p{margin:6px 0 10px;max-width:900px}
.cookie-banner label{margin-right:18px}
.cookie-banner .disabled{color:#777}
@media(max-width:850px){.cv-layout,.legal-grid{grid-template-columns:1fr}.cookie-banner{flex-direction:column;align-items:flex-start}}
.payment-hero{min-height:64vh}
.payment-section{background:var(--paper)}
.donation-section{background:var(--cream)}
.payment-form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;background:rgba(255,255,255,.68);border:1px solid var(--line);padding:clamp(22px,4vw,42px);box-shadow:0 24px 80px rgba(67,38,22,.08)}
.payment-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:inherit}
.payment-form input,.payment-form textarea{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.75);padding:13px 14px;color:inherit;font:500 15px Inter,system-ui,sans-serif;outline:0}
.payment-form input:focus,.payment-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(199,161,91,.18)}
.payment-form .wide{grid-column:1/-1}
.method-grid,.amount-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.amount-grid{grid-template-columns:repeat(3,1fr)}
.method-grid label,.amount-grid label{display:block;cursor:pointer;text-transform:none;letter-spacing:0;font-size:14px}
.method-grid input,.amount-grid input{position:absolute;opacity:0;width:1px;height:1px}
.method-grid span,.amount-grid span{display:flex;min-height:58px;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line);background:rgba(255,255,255,.55);padding:12px;color:inherit}
.method-grid input:checked+span,.amount-grid input:checked+span{border-color:var(--gold);background:var(--gold);color:#241317;box-shadow:0 12px 35px rgba(160,106,35,.18)}
.payment-form .button{grid-column:1/-1;justify-self:start}
.payment-form .consent{grid-column:1/-1}
.payments-admin .message summary b{font-size:16px}
@media(max-width:850px){.payment-form,.method-grid,.amount-grid{grid-template-columns:1fr}.payment-form .button{width:100%;justify-content:center}}
.discography-section{background:var(--paper)}
.discography-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.discography-card{display:grid;grid-template-columns:150px 1fr;gap:22px;background:rgba(255,255,255,.66);border:1px solid var(--line);padding:22px;box-shadow:0 18px 55px rgba(60,35,20,.08)}
.discography-card:not(:has(img)){grid-template-columns:1fr}
.discography-card img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--line)}
.discography-card span,.discography-card small{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--gold)}
.discography-card h3{font:500 32px/1 var(--serif);margin:8px 0;color:var(--wine)}
.discography-card p{margin:0 0 12px;color:inherit}
.disc-subtitle{opacity:.72;font-style:italic}
.discography-card audio{width:100%;margin:10px 0}
.discography-card .button{margin-top:16px}
.easter-note{border:1px dashed var(--gold);background:rgba(255,255,255,.5);padding:18px 22px;margin:-35px 0 38px;max-width:780px}
.easter-note strong{font:600 22px var(--serif);color:var(--wine)}
.easter-note p{margin:4px 0 0}
.secret-egg{position:fixed;left:var(--egg-x);top:var(--egg-y);z-index:90;color:rgba(197,160,106,.42);font-size:18px;line-height:1;text-shadow:0 0 12px rgba(255,255,255,.35);transition:.2s}
.secret-egg:hover{transform:scale(1.9) rotate(18deg);color:var(--gold)}
.full-prize-player{width:min(680px,100%);margin:22px 0;background:#fff}
.legal,.legal-grid,.legal-grid *{font-family:"Noto Serif","Cormorant Garamond",Georgia,serif}
.legal-grid p,.legal-grid h3,.legal-grid label,.cookie-banner,.cookie-banner *,.payment-form,.payment-form *,.contact-form,.contact-form *{font-family:"Noto Serif","Cormorant Garamond",Georgia,serif}
.legal .eyebrow,.legal-grid input,.cookie-banner button,.payment-form input,.payment-form textarea,.payment-form button,.contact-form input,.contact-form textarea,.contact-form button{font-family:Inter,"Noto Sans",system-ui,sans-serif}
.theme-gothic-oldfont .legal,.theme-gothic-oldfont .legal-grid,.theme-gothic-oldfont .legal-grid *,.theme-gothic-oldfont .cookie-banner,.theme-gothic-oldfont .cookie-banner *{font-family:"Noto Serif","Cormorant Garamond",Georgia,serif!important}
:lang(zh){font-family:"Noto Sans SC",Inter,system-ui,sans-serif}
:lang(zh) h1,:lang(zh) h2,:lang(zh) h3,:lang(zh) .brand strong{font-family:"Noto Sans SC","Noto Serif",serif}
@media(max-width:850px){.discography-grid,.discography-card{grid-template-columns:1fr}.easter-note{margin-top:0}}

/* Responsive hardening: frontend-ul trebuie sa ramana lizibil pe desktop, tableta si mobil. */
html,body{max-width:100%;overflow-x:hidden}
img,iframe,video,audio{max-width:100%}
input,select,textarea,button{max-width:100%;min-width:0}
.site-header,.section,.hero,footer{min-width:0}
.site-header nav a,.button,.text-link,.brand strong,.event-card h3,.discography-card h3,.cv-item h4{overflow-wrap:anywhere}
.section-heading,.hero-actions,.contact-links,footer,.row{min-width:0}
.cf-turnstile{max-width:100%;overflow:hidden}

@media(max-width:1180px){
  .site-header{padding-inline:clamp(18px,3vw,42px)}
  .site-header nav{gap:18px;font-size:11px}
  .section{padding-inline:clamp(20px,5vw,72px)}
  .hero{padding-inline:clamp(20px,6vw,82px)}
  .cv-layout,.legal-grid{grid-template-columns:1fr 1fr}
  .discography-grid{grid-template-columns:1fr}
  .method-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:850px){
  .site-header{position:fixed;left:0;right:0;width:auto;background:rgba(33,9,14,.94);backdrop-filter:blur(12px)}
  .menu-button{display:inline-flex!important;align-items:center;justify-content:center;position:fixed!important;right:14px!important;top:22px!important;transform:none!important;z-index:120;margin-left:auto;flex:0 0 auto;max-width:44vw;padding:9px 12px;border:1px solid currentColor;border-radius:999px;background:rgba(255,255,255,.14);color:inherit;white-space:nowrap;visibility:visible!important;opacity:1!important}
  .theme-luminous .menu-button,.theme-gothic .menu-button,.theme-archaic .menu-button,.theme-time_light .menu-button{color:var(--wine);background:rgba(255,255,255,.58)}
  .site-header nav.open{max-height:calc(100vh - 75px);overflow-y:auto}
  .site-header nav.open a,.site-header nav.open .language-picker{width:100%}
  .hero{height:auto;min-height:640px;padding-bottom:58px}
  .hero-copy{max-width:100%}
  .hero .role{font-size:clamp(21px,5vw,28px)}
  .hero blockquote{box-sizing:border-box;width:100%;max-width:100%;overflow-wrap:break-word}
  .hero-orbit{display:none}
  .section{padding-block:clamp(62px,12vw,96px)}
  h2{font-size:clamp(42px,13vw,72px)}
  .section-heading{margin-bottom:42px}
  .event-card{gap:18px}
  .gallery{margin-top:38px}
  .legal-grid,.cv-layout,.payment-form,.method-grid,.amount-grid,.discography-grid,.discography-card{grid-template-columns:1fr}
  .cookie-banner{left:12px;right:12px;bottom:12px;max-height:72vh;overflow:auto;padding:16px}
  .theme-gothic .hero:before,.theme-archaic .hero:before,.theme-time_light .hero:before{opacity:.22;inset:100px -30% 70px 24%}
  body.theme-gothic:before,body.theme-gothic:after,body.theme-archaic:before,body.theme-archaic:after{display:none}
}

@media(max-width:640px){
  body{font-size:14px;line-height:1.58}
  .site-header{height:68px;padding-inline:16px}
  .menu-button{top:18px!important;padding:8px 10px;font-size:10px}
  .site-header nav{top:68px;padding:18px}
  .brand{gap:10px}
  .brand span{width:36px;height:36px}
  .menu-button{font-size:11px}
  .hero{min-height:560px;padding:102px 18px 44px}
  .hero-copy{margin-top:22px;width:100%;max-width:calc(100vw - 36px);min-width:0}
  .hero h1{width:100%;max-width:calc(100vw - 36px);font-size:clamp(44px,15vw,66px);line-height:.88;letter-spacing:-.04em;white-space:normal;overflow-wrap:break-word;word-break:normal}
  .theme-gothic-oldfont .hero h1{max-width:7.4ch;font-size:clamp(42px,14vw,58px)}
  .hero blockquote{font-size:clamp(19px,5.8vw,24px)}
  .hero-actions,.contact-links{align-items:stretch;width:100%}
  .button{width:100%;justify-content:center;gap:14px;text-align:center;padding:14px 16px}
  .text-link{display:inline-flex;justify-content:center;text-align:center}
  .stage-art{inset:68px -58% 0 4%;opacity:.38}
  .scroll-note{display:none}
  .section{padding:58px 18px}
  .about-copy>p{font-size:20px}
  .composer-list li{grid-template-columns:38px 1fr 22px;gap:10px;font-size:24px}
  .event-card{grid-template-columns:1fr;padding:28px 0}
  .event-card time{display:flex;align-items:baseline;gap:10px}
  .event-card time b{font-size:40px}
  .video-grid,.gallery,.contact,.about,.repertoire{grid-template-columns:1fr}
  .gallery{gap:16px}
  .gallery img{aspect-ratio:4/4.7}
  .contact-form,.payment-form{gap:16px}
  .payment-form{padding:18px}
  .method-grid span,.amount-grid span{min-height:50px}
  .discography-card{padding:18px;gap:16px}
  .discography-card h3{font-size:27px}
  .discography-card .button{width:100%}
  .legal-grid article,.cv-block{padding:18px}
  .cookie-banner form{width:100%;display:grid;gap:10px}
  .cookie-banner button{width:100%}
  footer{padding:26px 18px}
}

@media(max-width:420px){
  .hero h1{font-size:clamp(42px,18vw,62px)}
  h2{font-size:clamp(36px,14vw,54px)}
  .eyebrow{letter-spacing:.2em}
  .composer-list li{font-size:21px}
  .event-card h3{font-size:28px}
  .video-card h3,.legal-grid h3,.cv-block h3{font-size:24px}
  .payment-form label,.contact-form label{font-size:10px}
}
