/* Light trial: white space, black type, RC yellow and a defocused real studio.
   Loaded last so the same direction carries through every route. */
:root { color-scheme:light; --light-paper:#fff; --light-ink:#181818; --light-muted:#565956; --light-rule:#d4d6d1; --light-yellow:#f5c400; }
html { background:var(--light-paper); }
body.theme-light { background:var(--light-paper); color:var(--light-ink); }
.theme-light::selection,.theme-light ::selection { background:var(--light-yellow); color:var(--light-ink); }
.theme-light .rc-nav { background:rgba(255,255,255,.82); border-bottom:1px solid #18181812; backdrop-filter:blur(22px); }
.theme-light .rc-nav .nav-links a { color:var(--light-ink); }
.theme-light .rc-nav .nav-links a:hover,.theme-light .rc-nav .nav-links a[aria-current="page"] { color:var(--light-ink); box-shadow:inset 0 -2px var(--light-yellow); }
.theme-light .rc-nav .menu-toggle { border-color:#18181840; }
.theme-light .rc-nav .menu-toggle span { background:var(--light-ink); }
.has-site-ui .theme-light .mobile-menu { background:rgba(255,255,255,.97); backdrop-filter:blur(25px); }
.has-site-ui .theme-light .mobile-menu a { color:var(--light-ink); border-color:var(--light-rule); }
.has-site-ui .theme-light .mobile-menu a[aria-current="page"] { color:var(--light-ink); text-decoration:underline; text-decoration-color:var(--light-yellow); text-underline-offset:8px; }
.theme-light .site-credit,.theme-light .site-resources { color:var(--light-muted); border-color:var(--light-rule); }
.theme-light :is(h1,h2,h3) em { color:inherit; text-decoration:underline; text-decoration-color:var(--light-yellow); text-decoration-thickness:.055em; text-underline-offset:.11em; }
.theme-light a:hover { text-decoration-color:var(--light-yellow); }

/* Event titles stay dark on white; yellow marks the names people recognize. */
.theme-light.page-storie { --stories-cream:var(--light-ink); --stories-black:#fff; }
.theme-light .stories-experience { position:relative; isolation:isolate; background:transparent; }
.theme-light .stories-experience::before { content:''; position:absolute; z-index:-1; inset:0 0 auto; height:700px; background:linear-gradient(180deg,#ffffffa3,#fff),url('../img/studio-piano.webp') center/cover; filter:grayscale(1) blur(28px); opacity:.4; pointer-events:none; }
.theme-light .stories-heading .stories-intro,.theme-light .story-feature-copy p { color:var(--light-muted); }
.theme-light .stories-heading h1 { letter-spacing:-.04em; }
.theme-light .story-feature-copy h2 { letter-spacing:-.035em; }
.theme-light .stories-jumps a { color:var(--light-ink); border-color:var(--light-rule); border-bottom-color:var(--light-yellow); }
.theme-light .stories-jumps a:hover { color:var(--light-ink); background:#f5c40020; border-color:var(--light-yellow); }
.theme-light .story-feature { background:#fff; border-color:var(--light-rule); border-radius:0; }
.theme-light .story-feature-image { background:#eef0ed; }
.theme-light .story-feature-copy>a { color:var(--light-ink); text-decoration:underline; text-decoration-color:var(--light-yellow); text-underline-offset:5px; }
.theme-light .story-feature--cta { background:#fffbe9; border-color:var(--light-yellow); }
.theme-light .story-feature--cta .story-feature-copy>a { color:var(--light-ink); text-decoration:none; }
.theme-light .story-feature--cta .story-feature-copy>a:hover { background:#f5c400b3; }

/* Readable interiors and articles share semantic light tokens. */
.theme-light.page-knowledge { --night:#fff; --paper:var(--light-ink); --plum:#f1f3ef; --muted:var(--light-muted); --line:var(--light-rule); }
.theme-light.page-knowledge .knowledge-header { position:relative; isolation:isolate; }
.theme-light.page-knowledge .knowledge-header::before { content:''; position:absolute; z-index:-1; inset:-20px calc(var(--gutter)*-1) 0; background:linear-gradient(90deg,#ffffffec,#ffffffa8),url('../img/studio-piano.webp') center/cover; filter:grayscale(1) blur(30px); opacity:.25; pointer-events:none; }
.theme-light.page-knowledge .knowledge-footer { background:#f6f7f4; }
.theme-light.page-knowledge h1 { letter-spacing:-.04em; }
.theme-light.page-knowledge :is(.micro,.cover-category,.service-copy .micro) { color:var(--light-muted); }
.theme-light.page-knowledge :is(.text-link,.related-links a,.reading-index nav a,.service-jumps a,.footer-links a):hover { color:var(--light-ink); text-decoration:underline; text-decoration-color:var(--light-yellow); text-underline-offset:4px; }
.theme-light.page-knowledge .reading-index nav a.is-current { color:var(--light-ink); border-bottom-color:var(--light-yellow); }
.theme-light.page-knowledge .page-profile .reading-section:first-child h2 { color:var(--light-ink); }
.theme-light.page-profile .reading-section:first-child h2 { color:var(--light-ink); }
.theme-light.page-knowledge .studio-window-small { box-shadow:0 20px 50px #252a2526; }
.theme-light.page-knowledge :is(.studio-window,.service-image) img { filter:grayscale(1); }
.theme-light.page-knowledge :is(.hero-copy>.micro,.window-label,.studio-caption) { display:none; }
.theme-light.page-knowledge .service-jumps { font:500 14px/1.5 Manrope,sans-serif; letter-spacing:0; text-transform:none; }
.theme-light.page-knowledge .service-image>.micro { color:white; }
.theme-light.page-knowledge .press-cover p { color:white; }
.theme-light.page-knowledge .press-cover .micro { color:var(--light-yellow); }
.theme-light.page-knowledge :is(.topic-studio,.topic-progetto,.topic-ascolto) .guide-cover { background:#f1f3ef; --topic:var(--light-yellow); }
.theme-light.page-knowledge .cover-category { color:var(--light-muted); }
.theme-light.page-knowledge .knowledge-button { color:var(--light-ink); border-radius:3px; }
.theme-light.page-knowledge .knowledge-button:hover { color:var(--light-ink); background:#f5c400b3; }
.theme-light.page-knowledge .cta-disc { opacity:.12; }
.theme-light.page-knowledge .cta-disc span { color:var(--light-ink); }
.theme-light.page-knowledge .legal-document { background:#f6f7f4; color:var(--light-ink); }
.theme-light.page-knowledge .legal-document strong { color:var(--light-ink); }
.theme-light.page-knowledge .audition-background img { filter:grayscale(1) blur(20px); opacity:.45; }
.theme-light.page-knowledge .audition-background::after { background:linear-gradient(90deg,#ffffffee,#ffffff9e 65%,#ffffff4a),linear-gradient(0deg,#fff,transparent 40%); }
.theme-light.page-knowledge .audition-hero { padding-inline:var(--gutter); }
.theme-light.page-knowledge .audition-copy>.micro { display:none; }

/* The about-page scroll scenes use a soft studio backdrop and pale portraits. */
.theme-light.about-page { --cream:var(--light-ink); --muted:var(--light-muted); }
.theme-light.about-page :is(.about-hero,.about-hero-gallery,.about-hero-sticky,.section-dark,.section-paper,.story-scroll,.story-scroll--light,.about-footer) { background:#fff; color:var(--light-ink); }
.theme-light.about-page .about-gallery-slide img { filter:grayscale(1) blur(13px); opacity:.45; }
.theme-light.about-page .about-hero-shade { background:linear-gradient(90deg,#ffffffdb,#ffffff85 68%,#ffffffb8),linear-gradient(0deg,#ffffffd9,transparent 45%); }
.theme-light.about-page .hero-copy { text-shadow:none; }
.theme-light.about-page .about-hero :is(h1,h2,h3) em { color:var(--light-ink); }
.theme-light.about-page .about-hero-content .about-copy-step h1 { letter-spacing:-.045em; line-height:1.04; }
.theme-light.about-page .about-hero-content .about-copy-step>span { display:none; }
.theme-light.about-page .about-hero-content .about-copy-paragraph strong { color:var(--light-ink); text-decoration:underline; text-decoration-color:var(--light-yellow); text-underline-offset:5px; }
.theme-light.about-page :is(.about-hero-lead,.about-copy-support,.about-copy-step>span,.about-person-copy>span,.about-info-panel>p:last-child,.about-timeline-year,.about-timeline-point,.about-timeline-detail p,.about-contact-copy,.story-panel>p:last-child,.proof-stat p,.proof-event p,.footer-bottom) { color:var(--light-muted); }
.theme-light.about-page .about-hero-content .about-copy-paragraph { color:var(--light-ink); text-shadow:none; }
.theme-light.about-page :is(.section-label,.about-hero-content .about-copy-step p,.about-kicker,.hero-index,.about-person-copy p,.about-staff-kicker,.about-info-label,.about-timeline-point.is-active,.about-timeline-point:hover,.about-contact-label,.about-gallery-status,.story-panel-label,.proof-event>span,.about-staff-card p) { color:var(--light-muted); }
.theme-light.about-page :is(.about-person,.about-staff-card) { background:linear-gradient(135deg,#ffffffd9,#ffffff9c); border-color:#18181826; box-shadow:0 20px 60px #18181816; }
.theme-light.about-page .about-staff-card:hover { background:#fffbe9; }
.theme-light.about-page .about-person-photo::after { background:transparent; }
.theme-light.about-page .about-person-photo { background:#f2f3f0; }
.theme-light.about-page .about-timeline-track::before { background:var(--light-rule); }
.theme-light.about-page .about-timeline-point i { background:#fff; border-color:var(--light-rule); }
.theme-light.about-page .about-whatsapp-cta { color:var(--light-ink); }
.theme-light.about-page .about-whatsapp-cta:hover { color:var(--light-ink); background:#f5c40033; }

/* Contacts: dark text and fields over white glass, with a photographic ambient layer. */
.theme-light.page-contatti-minimal { --contact-cream:var(--light-ink); }
.theme-light.page-contatti-minimal main { color:var(--light-ink)!important; background:#fff!important; }
.theme-light.page-contatti-minimal main::before { background:url('../img/studio-piano.webp') center/cover; filter:grayscale(1) blur(28px); opacity:.3; }
.theme-light.page-contatti-minimal main::after { background:linear-gradient(90deg,#ffffffd9,#ffffff75),linear-gradient(0deg,#ffffffb3,transparent); }
.theme-light .contact-minimal::before,.theme-light .contact-ambient { display:none; }
.theme-light :is(.contact-intro,.contact-locations,.contact-check) { color:var(--light-muted); }
.theme-light :is(.contact-locations strong,.contact-locations .contact-phone,.contact-check a) { color:var(--light-ink); }
.theme-light .contact-kicker { display:none; }
.theme-light .contact-minimal-copy h1 { font-size:clamp(54px,6vw,90px); letter-spacing:-.05em; line-height:1.03; }
.theme-light .contact-minimal-panel { background:#ffffffb8; border:1px solid #18181825; border-radius:4px; box-shadow:0 20px 70px #18181812; }
.theme-light .contact-panel-heading span { color:var(--light-ink); font:500 16px/1.4 Manrope,sans-serif!important; letter-spacing:0; text-transform:none; }
.theme-light .contact-panel-heading i { display:none; }
.theme-light .contact-minimal-panel label:not(.contact-check) { color:var(--light-muted); font-size:12px; letter-spacing:0; text-transform:none; }
.theme-light .contact-minimal-panel :is(input:not([type=checkbox]),textarea) { color:var(--light-ink); border-color:#18181840; }
.theme-light .contact-minimal-panel :is(input,textarea)::placeholder { color:#777c77; }
.theme-light :is(.contact-email,.contact-whatsapp,.contact-minimal-panel button) { border-radius:3px; font-size:12px; letter-spacing:0; text-transform:none; }
.theme-light .contact-email { color:var(--light-ink); border-color:#18181840; }
.theme-light .contact-email:hover { color:var(--light-ink); }
.theme-light .contact-minimal-panel button:hover { color:var(--light-ink); background:#f5c40033; }
@media(max-width:760px) {.theme-light .contact-minimal-copy h1 { font-size:clamp(44px,9vw,64px); }.theme-light.page-knowledge .service-jumps { flex-wrap:wrap; font-size:13px; } }

/* Flat, considered actions: clear surfaces, fine neutral borders, no hard shadows. */
.theme-light .rc-button:is(.rc-button--primary,.rc-button--secondary) { display:inline-flex; align-items:center; justify-content:center; gap:0; width:max-content; max-width:100%; min-height:54px; padding:15px 24px; margin-bottom:0; border:1px solid transparent; border-radius:4px; font:600 14px/1.4 Manrope,sans-serif!important; color:var(--light-ink); text-align:center; text-transform:none; letter-spacing:0; text-decoration:none; cursor:pointer; transform:none; transition:background .2s,border-color .2s,color .2s,opacity .2s; }
.theme-light .rc-button.rc-button--primary { background:var(--light-yellow); box-shadow:none; }
.theme-light .rc-button.rc-button--secondary { background:#ffffffdb; border-color:#18181829; box-shadow:none; backdrop-filter:blur(10px); }
.theme-light .rc-button.rc-button--primary:hover { background:#eebd00; border-color:transparent; color:var(--light-ink); transform:none; box-shadow:none; text-decoration:none; }
.theme-light .rc-button.rc-button--secondary:hover { background:#f7f8f5; border-color:#18181842; color:var(--light-ink); transform:none; box-shadow:none; text-decoration:none; }
.theme-light .rc-button:is(.rc-button--primary,.rc-button--secondary):active { transform:none; box-shadow:none; opacity:.82; }
.theme-light .rc-button:focus-visible { outline:2px solid #181818; outline-offset:5px; }
.theme-light .contact-minimal-panel button.rc-button { width:100%; }
.theme-light .rc-nav .nav-links a[href="/contatti"] { min-height:44px; padding:10px 20px; border:1px solid transparent; border-radius:4px; background:var(--light-yellow); color:var(--light-ink); box-shadow:none; }
.theme-light .rc-nav .nav-links a[href="/contatti"]:hover { background:#eebd00; }







/* Profiles read as people and their work, with restrained type and a clear role. */
.theme-light.page-profile .profile-hero .hero-copy h1 { font-size:clamp(48px,6vw,88px); line-height:1.04; letter-spacing:-.035em; margin:0; }
.theme-light.page-profile .profile-role { color:var(--light-ink); font-size:clamp(20px,2vw,27px); font-weight:500; line-height:1.4; margin:20px 0 24px; }
.theme-light.page-profile .hero-copy .knowledge-lead { max-width:480px; }
.theme-light.page-profile .profile-frame { padding:0; }
.theme-light.page-profile .profile-frame::before { display:none; }
.theme-light.page-profile .profile-frame img { height:clamp(380px,39vw,550px); border-radius:4px; }
.theme-light.page-profile .reading-section h2 { font-size:clamp(27px,2.8vw,37px); line-height:1.2; letter-spacing:-.025em; }
.theme-light.page-knowledge .knowledge-cta { background:#f5f6f2; border-color:#18181818; border-radius:4px; }
.theme-light.page-knowledge .knowledge-cta h2 { font-size:clamp(30px,3.5vw,50px); line-height:1.12; letter-spacing:-.03em; }
.theme-light.page-knowledge .knowledge-faq h2,.theme-light.page-knowledge .knowledge-related h2 { font-size:clamp(27px,2.8vw,38px); line-height:1.2; letter-spacing:-.025em; margin-top:0; }
@media(max-width:760px) { .theme-light.page-profile .profile-role { margin:16px 0 22px; }.theme-light.page-profile .profile-frame img { height:400px; }.theme-light.page-profile .profile-hero .hero-copy h1 { font-size:clamp(48px,10vw,72px); } }
