/* RC / photographic destinations, studio objects and unambiguous controls. */
:root { --rc-surface:#fff; --rc-soft:#f1f3ef; --rc-warm:#fff4b9; --rc-depth:0 12px 35px -17px #292e283d,0 2px 7px #292e2806; }
.rc-icon { display:block; flex:0 0 auto; width:22px; height:22px; pointer-events:none; }
/* Buttons stay sober; their icon describes the action, never a direction. */
:is(.site-page,.page-knowledge,.page-home) .rc-icon-action { display:inline-flex; align-items:center; gap:11px; }
:is(.site-page,.page-knowledge,.page-home) .rc-button.rc-icon-action { gap:12px; min-height:48px; }
:is(.site-page,.page-knowledge,.page-home) .rc-button.rc-icon-action .rc-icon { width:21px; height:21px; }
.theme-light.page-knowledge .knowledge-related { display:block; margin:85px 0; }
.theme-light.page-knowledge .knowledge-related .section-heading { margin-bottom:30px; }
.theme-light.page-knowledge .knowledge-related h2 { font-size:clamp(30px,3.2vw,44px); }
.theme-light.page-knowledge .related-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.theme-light.page-knowledge .related-links>a { display:flex; flex-direction:column; gap:0; padding:7px; border:1px solid #dfe2db; border-radius:15px; background:#fff; color:#181818; box-shadow:var(--rc-depth); overflow:hidden; transition:box-shadow .25s,border-color .25s; min-width:0; }
.theme-light.page-knowledge .related-links>a::after { content:none; }
.theme-light.page-knowledge .related-links>a:hover { background:#fff; border-color:#d4bb44; box-shadow:0 18px 40px -16px #292e2840; }
.rc-card-media { position:relative; height:155px; flex:0 0 auto; overflow:hidden; border-radius:10px; }
.rc-media-photo { background:#eceee8; }
.rc-media-photo img { width:100%; height:100%; object-fit:cover; object-position:center 30%; transition:transform .65s; }
.rc-card-emblem { display:grid; place-items:center; width:43px; height:43px; border-radius:12px; background:#fff; color:#181818; box-shadow:0 4px 14px #18181824; }
.rc-media-photo .rc-card-emblem { position:absolute; bottom:12px; left:12px; }
.rc-destination-copy { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:19px 13px 15px; }
.theme-light.page-knowledge .rc-destination-title { font:500 21px/1.25 'Bricolage Grotesque',Manrope,sans-serif; color:#181818; letter-spacing:-.025em; }
.rc-card-open { display:inline-flex; align-items:center; width:max-content; max-width:100%; margin-top:22px; padding:9px 15px; border:1px solid #dedfd8; border-radius:6px; font:600 13px/1.45 Manrope,sans-serif; background:#f6f7f3; color:#252822; }
.rc-destination-copy .rc-card-open { margin-top:auto; }
.rc-destination-title { margin-bottom:22px; }
.related-links a:hover .rc-card-open,.guide-card:hover .guide-read,.rest-story-pair a:hover .rc-card-open { background:#f5c400; border-color:#f5c400; }
/* A tangible studio token: layered acrylic square, gentle perspective, cast shadow. */
.rc-media-object { display:grid; place-items:center; isolation:isolate; background:radial-gradient(ellipse at 35% 10%,#fffdf2,transparent 65%),linear-gradient(140deg,#f5edc3,#e9e7db); }
.rc-media-object::before { content:''; position:absolute; width:180px; height:180px; border:1px solid #bcb8a329; border-radius:50%; transform:translate(70px,55px); box-shadow:0 0 0 24px #ffffff20,0 0 0 48px #ffffff20; z-index:-1; }
.rc-media-object .rc-card-emblem { width:80px; height:80px; border-radius:20px; position:relative; z-index:1; transform:rotate(-9deg); background:linear-gradient(145deg,#fff,#f4f4ec); border:1px solid #fff; box-shadow:inset 0 1px 1px #fff,3px 5px 1px #d7d3bc,9px 20px 20px -13px #5a513d63; }
.rc-media-object .rc-card-emblem .rc-icon { width:37px; height:37px; color:#393b32; }
.rc-object-back { position:absolute; width:80px; height:80px; border-radius:20px; background:linear-gradient(135deg,#ffe459,#f5c400); transform:translate(19px,-3px) rotate(12deg); box-shadow:0 12px 20px -13px #61501d70; }
.rc-object-headphones { background:radial-gradient(ellipse at 25% 20%,#fff,transparent 70%),#e4e9e1; }
.rc-object-sliders { background:radial-gradient(ellipse at 20% 20%,#fff,transparent 70%),#e2e4dd; }
/* Indices are a compact control panel, rather than a ruled text list. */
.theme-light.page-knowledge .reading-index { border:1px solid #e0e3dc; border-radius:14px; background:#f4f5f1; padding:19px 12px 12px; box-shadow:0 10px 30px -21px #222b2250; }
.theme-light.page-knowledge .reading-index .index-heading,.theme-light.page-knowledge .reading-index>.micro { padding:0 10px; font:600 15px/1.5 Manrope,sans-serif; color:#393c35; text-transform:none; letter-spacing:0; margin-bottom:15px; }
.theme-light.page-knowledge .reading-index nav { gap:7px; }
.theme-light.page-knowledge .reading-index nav>a { display:flex; align-items:center; gap:11px; padding:12px; background:#fff; color:#393c35; border:1px solid #e4e7df; border-radius:8px; font-size:13px; line-height:1.6; transition:background .2s,border-color .2s; }
.theme-light.page-knowledge .reading-index nav>a .rc-icon { width:18px; height:18px; color:#757967; }
.theme-light.page-knowledge .reading-index nav>a:hover,.theme-light.page-knowledge .reading-index nav>a.is-current { background:#fff4b9; border-color:#e1cc6a; color:#181818; }
.theme-light.page-knowledge .index-back { font-size:13px; padding:10px; margin-top:10px; border-radius:8px; background:#fff; border:1px solid #e0e3dc; }
.theme-light.page-knowledge .reading-content .reading-section>h2 { display:flex; align-items:flex-start; gap:15px; }
.rc-section-icon { display:grid; place-items:center; flex:0 0 auto; width:42px; height:42px; border-radius:12px; background:linear-gradient(140deg,#fff5b8,#f5d84f); border:1px solid #f1df8b; box-shadow:0 5px 12px -6px #6d5c2160,inset 0 1px #fff9; }
.rc-section-icon .rc-icon { width:22px; height:22px; }
.theme-light.page-profile .reading-content .reading-section { padding:30px; background:#f5f6f2; border:1px solid #e5e7df; border-radius:14px; margin-bottom:25px; }
.theme-light.page-profile .reading-content .reading-section:nth-child(even) { background:#fff; box-shadow:var(--rc-depth); }
/* FAQs have explicit opening controls and independent surfaces. */
.theme-light.page-knowledge .knowledge-faq { border:0; padding:36px; background:#f1f3ee; border-radius:18px; align-items:start; }
.theme-light.page-knowledge .knowledge-faq .faq-items { display:grid; gap:10px; }
.theme-light.page-knowledge .knowledge-faq details { background:#fff; border:1px solid #e1e5da; border-radius:10px; box-shadow:0 5px 15px -10px #26352045; overflow:hidden; }
.theme-light.page-knowledge .knowledge-faq summary { display:flex; justify-content:space-between; align-items:center; gap:22px; padding:20px 21px; cursor:pointer; color:#292d25; }
.theme-light.page-knowledge .knowledge-faq summary::-webkit-details-marker { display:none; }
.theme-light.page-knowledge .knowledge-faq summary::after { content:'+'; position:static; flex:0 0 31px; display:grid; place-items:center; width:31px; height:31px; line-height:1; font:400 24px/1 Manrope,sans-serif; border:1px solid #e4d47d; background:#fff5ba; color:#4a452a; border-radius:50%; transform:none; }
.theme-light.page-knowledge .knowledge-faq details[open] { border-color:#d4c269; }
.theme-light.page-knowledge .knowledge-faq details[open] summary::after { content:'−'; transform:none; background:#f5c400; border-color:#f5c400; }
.theme-light.page-knowledge .knowledge-faq details>p { padding:0 21px 23px; margin:0; }
.theme-light.page-knowledge .knowledge-faq summary:hover { background:#fffdf0; }
/* Source links retain their names and become press/document buttons. */
.theme-light.page-knowledge .knowledge-sources ul { display:grid; grid-template-columns:1fr 1fr; gap:12px; list-style:none; padding:0; }
.theme-light.page-knowledge .knowledge-sources li { padding:0; border:0; }
.theme-light.page-knowledge .knowledge-sources li>a { display:flex; height:100%; padding:18px; background:#f4f5f1; border:1px solid #e1e4da; border-radius:10px; color:#33382d; line-height:1.65; gap:16px; }
.theme-light.page-knowledge .knowledge-sources li>a:hover { background:#fff5c9; border-color:#e1cc6a; }
.theme-light.page-knowledge .knowledge-sources li>a .rc-icon { color:#6b705c; }
:is(.theme-light.page-knowledge,.site-page) :is(.press-story-links>a,.story-feature-copy>a:not(.rc-button),.contact-branches address>a,.article-back,.cta-phone,.location-contact) { display:inline-flex; align-items:center; gap:10px; background:#fff; border:1px solid #dfe2d8; border-radius:7px; padding:11px 15px; color:#262a22; font-size:14px; line-height:1.5; }
:is(.theme-light.page-knowledge,.site-page) :is(.press-story-links>a,.story-feature-copy>a:not(.rc-button),.contact-branches address>a,.article-back,.cta-phone,.location-contact):hover { background:#fff6c9; border-color:#ddc657; }
.theme-light.page-knowledge .press-story-links { gap:12px; }
/* Percorsi / event selectors have a leading instrument pictogram. */
.theme-light.page-knowledge .service-jumps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:0; padding:15px; gap:10px; background:#f1f3ed; border-radius:14px; }
.theme-light.page-knowledge .service-jumps>a { display:flex; flex-direction:column; align-items:flex-start; gap:16px; min-width:0; padding:20px 15px; border-radius:9px; border:1px solid #e1e4da; box-shadow:0 5px 12px -9px #293c2a45; color:#252a20; line-height:1.5; white-space:normal; }
.theme-light.page-knowledge .service-jumps>a .rc-icon { width:26px; height:26px; color:#7b703e; }
.theme-light.page-knowledge .service-jumps>a:hover { background:#fff6c6; border-color:#ddc657; color:#181818; }
.site-page.page-storie .stories-jumps>a { display:inline-flex; align-items:center; gap:10px; background:#f5f6f2; border-color:#e0e4d9; border-radius:8px; }
.site-page.page-storie .stories-jumps>a:hover { background:#fff1a8; color:#181818; }
.theme-light.page-knowledge .guide-filters button { display:inline-flex; align-items:center; gap:9px; background:#f4f5f0; border:1px solid #dfe3d6; border-radius:8px; cursor:pointer; }
.theme-light.page-knowledge .guide-filters button .rc-icon { width:18px; height:18px; }
.theme-light.page-knowledge .guide-card { display:flex; flex-direction:column; padding:8px; border-radius:17px; background:#fff; box-shadow:var(--rc-depth); transition:box-shadow .25s,border-color .25s; }
.theme-light.page-knowledge .guide-card[hidden] { display:none; }
.theme-light.page-knowledge .guide-card>.rc-card-media { height:185px; }
.theme-light.page-knowledge .guide-card-copy { flex:1; padding:24px; display:flex; flex-direction:column; align-items:flex-start; }
.theme-light.page-knowledge .guide-card:hover { background:#fff; border-color:#d4bb44; }
.theme-light.page-knowledge .guide-read { display:inline-flex; margin-top:25px; padding:10px 16px; border:1px solid #dfe2d8; border-radius:6px; background:#f4f5f1; font-size:14px; font-weight:600; }
/* Small sculptural mixing console: one studio detail per contact band. */
.rc-console-art { display:flex; align-items:stretch; gap:19px; width:172px; height:100px; padding:17px 23px; margin:30px 0 5px 5px; border-radius:14px; transform:perspective(600px) rotateX(20deg) rotateY(-12deg) rotateZ(-7deg); background:linear-gradient(150deg,#fff9df,#f4e9af); border:1px solid #fff8dc; box-shadow:3px 5px 0 #c3a12b,9px 17px 23px -10px #80641166,inset 0 1px 0 #fff; }
.rc-console-art>i { position:relative; flex:1; min-width:6px; border-radius:8px; background:linear-gradient(90deg,#3a3c32,#57584b 45%,#33352c); box-shadow:inset 1px 1px 2px #0005; }
.rc-console-art>i>span { position:absolute; width:24px; height:16px; left:50%; top:var(--fader); transform:translateX(-50%); background:linear-gradient(#fff,#eeeee3 45%,#d3d5c9); border:1px solid #fff; border-radius:4px; box-shadow:1px 4px 5px #18181840; }
.rc-console-art>i>span::after { content:''; position:absolute; top:6px; left:4px; right:4px; height:2px; background:#868b75; }
.theme-light.page-knowledge .knowledge-cta,.site-page .site-contact-band { border-radius:18px; overflow:hidden; box-shadow:0 20px 45px -28px #8d751e66; }
.theme-light.page-knowledge .knowledge-cta { align-items:center; background:radial-gradient(ellipse at 20% 20%,#ffe354,transparent 65%),#f5c400; }
.theme-light.page-knowledge .knowledge-cta .cta-action { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.theme-light.page-knowledge .knowledge-cta .cta-action>p { flex-basis:100%; margin:0 0 12px; }
.theme-light.page-knowledge .knowledge-cta .cta-action>.rc-button { margin:0; }
.theme-light.page-knowledge .knowledge-cta .cta-phone { margin:0; background:#fff6c6; }
.theme-light.page-knowledge .location-card { position:relative; isolation:isolate; border-radius:19px; overflow:visible; background:linear-gradient(130deg,#ffe16a,#f5c400); box-shadow:0 25px 50px -27px #75611c66; }
.theme-light.page-knowledge .location-card::before { content:''; position:absolute; inset:14px -9px -10px 15px; z-index:-1; border:1px solid #e2ca6a; border-radius:19px; background:#fff5c5; transform:rotate(3deg); }
.theme-light.page-knowledge .location-card .location-contact { margin-top:12px; background:#fff6c6; }
.theme-light.page-knowledge .location-card .location-contact .rc-icon { width:18px; height:18px; }
.site-page .contact-large-phone { display:flex; width:max-content; max-width:100%; gap:16px; padding:16px 20px; border-radius:12px; background:#fff4b9; border:1px solid #f2dc82; color:#181818; }
.site-page .contact-address-email { display:flex; width:max-content; max-width:100%; padding:12px 0; gap:10px; text-decoration:underline; text-decoration-color:#c9cdc2; text-underline-offset:5px; }
.site-page .contact-address-email .rc-icon { width:20px; height:20px; }
.site-page .contact-branches { padding-top:0; border:0; gap:15px; }
.site-page .contact-branches address { padding:23px; border:1px solid #e1e4da; border-radius:14px; background:#f5f6f1; }
.site-page .contact-branches address h3 { font-size:26px; }
.site-page .contact-branches address>a { margin-top:19px; font-size:13px; }
.site-page .contact-form-box { border:1px solid #e0e4d8; border-radius:17px; box-shadow:var(--rc-depth); }
.site-page .school-founder>figure,.site-page .school-cover { border-radius:12px; box-shadow:0 18px 45px -28px #252d2855; }
.site-page .school-founder img,.site-page .school-cover img { border-radius:12px; }
.site-page .school-staff-member { background:#f5f6f2; padding:8px 8px 23px; border:1px solid #e7e9e1; border-radius:14px; }
.site-page .school-staff-member img { border-radius:9px; }
.site-page .school-staff-member :is(h3,p) { margin-left:15px; margin-right:15px; }
.site-page.page-storie .story-feature { border:1px solid #e4e6de; border-radius:15px; box-shadow:var(--rc-depth); overflow:hidden; }
.theme-light.page-knowledge :is(.studio-composition img,.service-image,.profile-frame img,.press-cover,.press-image,.audition-photo img) { border-radius:12px; box-shadow:0 20px 45px -27px #30362b55; }
/* Home opening is deliberately excluded from every selector in this file. */
.page-home .home-rest .rest-inline-link { display:inline-flex; width:auto; padding:12px 17px; border:1px solid #dfe2d8; border-radius:7px; background:#f4f5f0; }
.page-home .home-rest .rest-story-pair>a { display:block; padding:9px 9px 25px; background:#fff; border:1px solid #e1e4da; border-radius:15px; box-shadow:var(--rc-depth); }
.page-home .home-rest .rest-story-pair>a img { border-radius:9px; }
.page-home .home-rest .rest-story-pair>a :is(h3,p,.rc-card-open) { margin-left:19px; margin-right:19px; }
.page-home .home-rest .rest-story-pair>a:hover h3 { text-decoration:none; }
.page-home .home-rest .rest-location-grid article { padding:30px; border:1px solid #fff4; background:#ffffffb3; border-radius:14px; box-shadow:0 15px 25px -25px #6f591c77; }
.page-home .home-rest .rest-location-grid article { min-width:0; }
.page-home .home-rest .rc-button { max-width:100%; white-space:normal; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .related-links>a:hover .rc-media-photo img { transform:scale(1.04); }
 .rc-media-object .rc-card-emblem { transition:transform .5s cubic-bezier(.2,.7,.3,1); }
 :is(.related-links>a,.guide-card):hover .rc-media-object .rc-card-emblem { transform:rotate(1deg); }
}
@media(max-width:1100px) {
 .theme-light.page-knowledge .related-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .theme-light.page-knowledge .service-jumps { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .theme-light.page-knowledge .rc-destination-title { font-size:24px; }
}
@media(max-width:760px) {
 .theme-light.page-knowledge .knowledge-related { margin:50px 0; }
 .theme-light.page-knowledge .related-links { gap:15px; }
 .rc-card-media { height:140px; }
 .theme-light.page-knowledge .rc-destination-title { font-size:22px; }
 .theme-light.page-knowledge .reading-index { padding:18px 12px 12px; }
 .theme-light.page-knowledge .reading-index nav { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
 .theme-light.page-knowledge .reading-index nav>a { padding:11px; font-size:13px; }
 .theme-light.page-knowledge .reading-content .reading-section>h2 { gap:12px; }
 .rc-section-icon { width:35px; height:35px; border-radius:9px; }
 .rc-section-icon .rc-icon { width:20px; height:20px; }
 .theme-light.page-profile .reading-content .reading-section { padding:23px; }
 .theme-light.page-knowledge .knowledge-faq { padding:23px; border-radius:14px; gap:23px; }
 .theme-light.page-knowledge .knowledge-faq summary { font-size:15px; padding:17px; gap:15px; }
 .theme-light.page-knowledge .knowledge-faq details>p { padding:0 17px 20px; }
 .theme-light.page-knowledge .knowledge-sources ul { grid-template-columns:1fr; }
 .theme-light.page-knowledge .service-jumps { grid-template-columns:repeat(2,minmax(0,1fr)); padding:10px; }
 .theme-light.page-knowledge .service-jumps>a { font-size:14px; padding:17px; gap:13px; }
 .theme-light.page-knowledge .guide-card-copy { padding:22px 17px; }
 .theme-light.page-knowledge .guide-card>.rc-card-media { height:160px; }
 .rc-console-art { width:140px; height:85px; gap:15px; padding:14px 20px; margin:23px 0 8px 5px; }
 .theme-light.page-knowledge .knowledge-cta { padding:27px; }
 .site-page .contact-large-phone { padding:15px; font-size:24px; gap:11px; }
 .site-page .contact-large-phone .rc-icon { width:20px; height:20px; }
 .site-page .contact-address-email { font-size:14px; }
 .page-home .home-rest .rest-location-grid article { padding:25px; }
}
@media(max-width:460px) {
 .theme-light.page-knowledge .reading-content .reading-section>h2 { display:block; }
 .theme-light.page-knowledge .reading-content .rc-section-icon { margin-bottom:15px; }
 .theme-light.page-knowledge .related-links { grid-template-columns:1fr; }
 .theme-light.page-knowledge .related-links>a { display:grid; grid-template-columns:100px minmax(0,1fr); align-items:stretch; gap:0; }
 .theme-light.page-knowledge .related-links .rc-card-media { height:100%; min-height:150px; }
 .theme-light.page-knowledge .related-links .rc-card-emblem { width:54px; height:54px; border-radius:13px; }
 .theme-light.page-knowledge .related-links .rc-media-photo .rc-card-emblem { width:33px; height:33px; border-radius:9px; bottom:9px; left:9px; }
 .theme-light.page-knowledge .related-links .rc-card-emblem .rc-icon { width:24px; height:24px; }
 .theme-light.page-knowledge .related-links .rc-object-back { width:54px; height:54px; border-radius:13px; transform:translate(9px,-2px) rotate(12deg); }
 .theme-light.page-knowledge .rc-destination-copy { padding:14px 12px; }
 .theme-light.page-knowledge .rc-destination-title { font-size:20px; }
 .rc-card-open { font-size:12px; padding:8px 11px; }
 .theme-light.page-knowledge .reading-index nav { grid-template-columns:1fr; }
 .theme-light.page-knowledge .knowledge-faq { padding:18px; }
 .theme-light.page-knowledge .knowledge-faq h2 { font-size:28px; }
 .theme-light.page-knowledge .knowledge-faq summary { padding:16px 13px; gap:9px; }
 .theme-light.page-knowledge .knowledge-faq summary::after { flex-basis:28px; width:28px; height:28px; }
 .theme-light.page-knowledge .service-jumps>a { padding:15px 10px; font-size:13px; }
 .site-page .contact-address-email { font-size:12px; gap:7px; }
 .site-page .contact-large-phone { font-size:21px; }
}
@media(prefers-reduced-motion:reduce) {
 .rc-media-photo img,.rc-media-object .rc-card-emblem { transition:none!important; transform:none; }
}
/* Compact ending shared by the home, interiors and utility pages. Locations
   belong in the page content, rather than being repeated in every footer. */
.rc-footer { padding:28px clamp(24px,5vw,84px) 16px; background:#f3f5ef; color:#181818; border-top:1px solid #e5e8de; font:400 14px/1.6 Manrope,sans-serif; }
.rc-footer * { box-sizing:border-box; }
.rc-footer a { color:inherit; text-decoration:none; }
.rc-footer-inner { max-width:1400px; margin:0 auto; }
.rc-footer-row { display:flex; justify-content:space-between; align-items:center; gap:30px; padding-bottom:20px; }
.rc-footer-logo { display:block; flex:0 0 auto; width:136px; }
.rc-footer-logo img { display:block; width:100%; height:auto; }
.rc-footer-nav { display:flex; flex-wrap:wrap; align-items:center; gap:8px 25px; }
.rc-footer-nav>a { display:inline-flex; align-items:center; min-height:40px; }
.rc-footer-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px 25px; padding-top:14px; border-top:1px solid #dfe3d8; color:#606659; font-size:12px; }
.rc-footer-meta>a:last-child { margin-left:auto; }
.rc-footer a:hover { text-decoration:underline; text-decoration-color:#d3af26; text-underline-offset:5px; }
.rc-footer a:focus-visible { outline:2px solid #181818; outline-offset:5px; }
.theme-light.page-knowledge .knowledge-body { padding-bottom:45px; }
.site-page .site-main { padding-bottom:45px; }
.theme-light.page-knowledge .knowledge-cta { padding:30px 36px; margin-bottom:0; }
.theme-light.page-knowledge .knowledge-cta>div:first-child { display:flex; align-items:center; gap:25px; }
.theme-light.page-knowledge .knowledge-cta h2 { font-size:clamp(29px,2.8vw,39px); }
.theme-light.page-knowledge .knowledge-cta .rc-console-art { flex:0 0 auto; width:116px; height:78px; gap:13px; padding:13px 17px; margin:0; }
@media(max-width:760px) {
 .rc-footer { padding-top:24px; }
 .rc-footer-row { align-items:flex-start; gap:16px 25px; }
 .rc-footer-logo { width:120px; }
 .rc-footer-nav { gap:0 19px; justify-content:flex-end; }
 .rc-footer-meta { gap:8px 18px; }
 .theme-light.page-knowledge .knowledge-cta { padding:25px; }
 .theme-light.page-knowledge .knowledge-cta>div:first-child { justify-content:space-between; gap:18px; }
}
@media(max-width:460px) {
 .rc-footer-row { flex-direction:column; gap:15px; padding-bottom:14px; }
 .rc-footer-nav { justify-content:flex-start; gap:0 21px; }
 .rc-footer-meta { font-size:11px; gap:8px 16px; }
 .rc-footer-meta>a:last-child { margin-left:0; }
 .theme-light.page-knowledge .knowledge-cta>div:first-child { display:block; }
 .theme-light.page-knowledge .knowledge-cta .rc-console-art { margin-top:22px; }
}

/* The same card language now carries the main content, not only discovery. */
:root { --rc-card-radius:20px; --rc-card-border:#dfe3d8; --rc-card-shadow:0 22px 48px -25px #30382c4d,0 3px 9px #30382c07; }
.rc-tool-object { display:inline-grid; place-items:center; position:relative; width:76px; height:76px; flex:0 0 auto; isolation:isolate; transform:perspective(400px) rotateX(8deg) rotateY(-8deg) rotateZ(-8deg); pointer-events:none; }
.rc-tool-object::before { content:''; position:absolute; inset:0; border-radius:20px; background:linear-gradient(135deg,#ffe981,#f5c400); transform:translate(10px,3px) rotate(14deg); box-shadow:0 7px 14px -9px #75601e65; }
.rc-tool-face { position:relative; display:grid; place-items:center; width:100%; height:100%; border:1px solid #ffffff; border-radius:20px; color:#34392d; background:linear-gradient(145deg,#fff,#f4f5ee); box-shadow:inset 0 1px 0 #fff,2px 4px 1px #dbdecd,7px 17px 17px -10px #343b2a4d; }
.rc-tool-face>.rc-icon { width:34px; height:34px; }
.rc-tool-small { width:49px; height:49px; }
.rc-tool-small .rc-tool-face,.rc-tool-small::before { border-radius:13px; }
.rc-tool-small::before { transform:translate(6px,1px) rotate(14deg); }
.rc-tool-small .rc-icon { width:24px; height:24px; }
.rc-photo-card { position:relative; }
.rc-photo-card>.rc-tool-object { position:absolute; right:26px; bottom:26px; z-index:2; }
/* Home: one large story card, a studio composition, then event/venue cards. */
.page-home .home-rest .rest-feature { position:relative; isolation:isolate; display:block; padding-top:85px; padding-bottom:85px; }
.page-home .home-rest .rest-feature::before { content:''; position:absolute; z-index:-1; top:10%; right:5%; bottom:5%; left:20%; background:radial-gradient(ellipse at 80% 25%,#f5c40024,transparent 65%); filter:blur(35px); pointer-events:none; }
.page-home .rc-feature-card { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:0; padding:10px; background:#fff; border:1px solid var(--rc-card-border); border-radius:24px; box-shadow:var(--rc-card-shadow); }
.page-home .rc-feature-card .rest-feature-image { position:relative; overflow:hidden; border-radius:15px; }
.page-home .rc-feature-card .rest-feature-image img { height:100%; min-height:460px; aspect-ratio:1.18; border-radius:15px; transform:scale(1.12); }
.page-home .rc-feature-card .rest-feature-copy { padding:35px clamp(25px,3vw,50px); }
.page-home .rc-feature-card .rest-feature-copy h2 { font-size:clamp(40px,4.2vw,64px); }
.page-home .rc-feature-card .rest-feature-copy p { margin:25px 0; }
.page-home .rc-feature-card .rest-inline-link { display:flex; width:max-content; max-width:100%; margin-top:12px; }
.page-home .home-rest .rest-school { position:relative; padding-top:80px; padding-bottom:80px; gap:45px; background:linear-gradient(135deg,#f0f3ec,#f7f8f3); }
.page-home .home-rest .rest-school>* { min-width:0; }
.page-home .home-rest .rest-school-copy { position:relative; z-index:2; padding:38px; border:1px solid #e0e4d8; border-radius:var(--rc-card-radius); background:#fff; box-shadow:var(--rc-card-shadow); }
.page-home .home-rest .rest-school-copy h2 { font-size:clamp(39px,3.7vw,56px); }
.page-home .home-rest .rest-school>figure { padding:9px; background:#fff; border:1px solid #e1e5d9; border-radius:20px; box-shadow:var(--rc-card-shadow); isolation:isolate; }
.page-home .home-rest .rest-school>figure::before { content:''; position:absolute; inset:12px 4px -8px 14px; z-index:-1; border-radius:20px; transform:rotate(2deg); background:#f7df6a; }
.page-home .home-rest .rest-school img { border-radius:12px; }
.page-home .home-rest .rest-story-pair { gap:40px; }
.page-home .home-rest .rest-story-pair>a { border-radius:20px; box-shadow:var(--rc-card-shadow); }
.rc-story-media { position:relative; }
.rc-story-media>.rc-tool-object { position:absolute; right:25px; bottom:25px; }
.page-home .home-rest .rest-story-pair img { border-radius:12px; }
.page-home .home-rest .rest-location-grid article { position:relative; padding:30px; background:#fffdf3; border:1px solid #fff; border-radius:18px; box-shadow:0 17px 28px -22px #6e581c69; }
/* Chi siamo: founders and staff are photographs set into physical cards. */
.site-page .school-cover { position:relative; padding:9px; border:1px solid #e0e4d8; border-radius:22px; background:#fff; box-shadow:var(--rc-card-shadow); }
.site-page .school-cover img { border-radius:14px; }
.site-page .school-cover>.rc-tool-object { width:92px; height:92px; right:35px; bottom:35px; }
.site-page .school-founder-grid { gap:32px; }
.site-page .school-founder { display:flex; flex-direction:column; min-width:0; padding:9px; border:1px solid var(--rc-card-border); border-radius:20px; background:#fff; box-shadow:var(--rc-card-shadow); }
.site-page .school-founder>figure { position:relative; box-shadow:none; }
.site-page .school-founder img { height:clamp(320px,30vw,440px); border-radius:12px; }
.site-page .school-founder>div { display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:28px 25px 24px; }
.site-page .school-founder>div>p:last-of-type { margin-bottom:25px; }
.site-page .school-founder .rc-button { margin-top:auto; }
.site-page .school-founder .person-role { color:#665c31; font-size:18px; }
.site-page .school-staff { border:0; padding-top:45px; }
.site-page .school-staff-grid { gap:30px; }
.site-page .school-staff-member { min-width:0; background:#fff; border:1px solid var(--rc-card-border); border-radius:18px; padding:8px 8px 24px; box-shadow:var(--rc-card-shadow); }
.rc-person-media { position:relative; }
.rc-person-media>.rc-tool-object { position:absolute; right:20px; bottom:20px; }
.site-page .school-staff-member img { border-radius:11px; }
.site-page .school-experience { padding:10px; gap:40px; border:1px solid var(--rc-card-border); border-radius:22px; background:#f6f7f2; box-shadow:var(--rc-card-shadow); margin:25px 0 65px; }
.site-page .school-experience>div { padding:25px; }
.site-page .school-experience>figure { position:relative; }
.site-page .school-experience img { border-radius:14px; }
/* Percorsi: the same layered tools in the selector, larger photo/text cards. */
.theme-light.page-knowledge .service-jumps { gap:12px; padding:13px; border:1px solid #e6e9df; background:#f2f4ed; border-radius:20px; }
.theme-light.page-knowledge .service-jumps>a { padding:23px 20px 19px; border-radius:12px; gap:22px; box-shadow:0 9px 17px -14px #293c2a55; }
.theme-light.page-knowledge .service-jumps>a .rc-tool-object { margin:0 0 0 3px; }
.theme-light.page-knowledge .service-jumps>a .rc-tool-face .rc-icon { width:24px; height:24px; color:#34392d; }
.theme-light.page-knowledge .service-panel,.theme-light.page-knowledge .service-panel:nth-of-type(even) { gap:0; padding:10px; margin:0 0 35px; border:1px solid var(--rc-card-border); border-radius:22px; background:#fff; box-shadow:var(--rc-card-shadow); align-items:stretch; }
.theme-light.page-knowledge .service-panel>* { min-width:0; }
.theme-light.page-knowledge .service-panel:nth-of-type(even) { background:#f6f7f2; }
.theme-light.page-knowledge .service-panel .service-image { position:relative; overflow:visible; border-radius:14px; box-shadow:none; }
.theme-light.page-knowledge .service-panel .service-image img { width:100%; height:100%; min-height:390px; aspect-ratio:1.25; object-fit:cover; border-radius:14px; }
.theme-light.page-knowledge .service-panel .service-image>.rc-tool-object { position:absolute; right:25px; bottom:25px; }
.theme-light.page-knowledge .service-panel .service-copy { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:36px clamp(24px,3vw,47px); }
.theme-light.page-knowledge .service-panel .service-copy h2 { margin-bottom:22px; }
.theme-light.page-knowledge .service-copy .rc-service-link { margin-top:26px; white-space:normal; max-width:100%; }
/* Stories remain event articles. Only actual actions get interactive states. */
.site-page.page-storie .stories-experience { background:radial-gradient(ellipse at 80% 8%,#fff1a94d,transparent 30%),#f3f5ef; }
.site-page.page-storie .stories-feed { gap:32px; }
.site-page.page-storie .story-feature { padding:9px; border:1px solid #dfe3d7; border-radius:22px; box-shadow:var(--rc-card-shadow); overflow:visible; }
.site-page.page-storie .story-feature-image { position:relative; overflow:visible; border-radius:14px; }
.site-page.page-storie .story-feature-image img { border-radius:14px; }
.site-page.page-storie .story-feature-image>.rc-tool-object { position:absolute; right:25px; bottom:25px; }
.site-page.page-storie .story-feature-copy { padding:27px 23px 26px; }
.site-page.page-storie .story-feature:first-child .story-feature-copy { padding:36px; }
.site-page.page-storie .story-feature-copy h2 em { background:linear-gradient(transparent 80%,#f5c40070 80% 96%,transparent 96%); }
.site-page.page-storie .story-feature-copy>a { margin-top:24px; }
.site-page.page-storie .story-feature--cta { background:linear-gradient(125deg,#ffe46c,#f5c400); border-color:#efd174; }
/* The photo frames in profiles, press and auditions share the inset finish. */
.theme-light.page-knowledge :is(.studio-composition,.profile-frame,.press-cover,.audition-photo) { position:relative; padding:9px; border:1px solid #e0e5d7; border-radius:21px; background:#fff; box-shadow:var(--rc-card-shadow); }
.theme-light.page-knowledge :is(.studio-composition,.profile-frame,.press-cover,.audition-photo)>img { border-radius:13px; box-shadow:none; }
.theme-light.page-knowledge .profile-frame::before { inset:18px -6px -8px 20px; border:0; border-radius:20px; background:#f5df7c; transform:rotate(2deg); }
.theme-light.page-knowledge .press-cover { overflow:visible; }
.theme-light.page-knowledge .press-cover img { width:100%; }
.theme-light.page-knowledge .press-cover figcaption { padding:15px 13px 10px; }
.theme-light.page-knowledge .audition-photo figcaption { padding:16px 13px 8px; }
.theme-light.page-knowledge .audition-photo>.rc-tool-object { bottom:85px; }
.theme-light.page-knowledge .press-cover>.rc-tool-object { bottom:85px; }
.theme-light.page-knowledge .press-story { padding:10px; gap:0; margin-bottom:32px; background:#fff; border:1px solid var(--rc-card-border); border-radius:20px; box-shadow:var(--rc-card-shadow); }
.theme-light.page-knowledge .press-story-copy { padding:30px; }
.theme-light.page-knowledge .press-image { position:relative; overflow:visible; box-shadow:none; }
.theme-light.page-knowledge .press-image img { border-radius:12px; }
.theme-light.page-knowledge .press-image>.rc-tool-object { right:22px; bottom:22px; }
.site-page .contact-form-box { position:relative; background:#f4f6ef; box-shadow:var(--rc-card-shadow); }
.site-page .contact-form-box>.rc-tool-object { position:absolute; top:29px; right:29px; }
.site-page .contact-form-box>h2 { padding-right:70px; }
@media(max-width:1000px) {
 .page-home .rc-feature-card .rest-feature-image img { min-height:420px; }
 .page-home .rc-feature-card .rest-feature-copy { padding:25px; }
 .page-home .home-rest .rest-school { gap:30px; }
 .page-home .home-rest .rest-school-copy { padding:28px; }
 .site-page .school-founder-grid { gap:24px; }
 .site-page .school-founder>div { padding:25px 20px; }
 .theme-light.page-knowledge .service-panel .service-copy { padding:28px; }
}
@media(max-width:760px) {
 .rc-tool-object { width:60px; height:60px; }
 .rc-tool-face,.rc-tool-object::before { border-radius:16px; }
 .rc-tool-face>.rc-icon { width:28px; height:28px; }
 .rc-tool-small { width:45px; height:45px; }
 .rc-tool-small .rc-tool-face,.rc-tool-small::before { border-radius:12px; }
 .rc-tool-small .rc-icon { width:23px; height:23px; }
 .rc-photo-card>.rc-tool-object,.rc-story-media>.rc-tool-object { right:22px; bottom:22px; }
 .page-home .home-rest .rest-feature { padding-top:55px; padding-bottom:55px; }
 .page-home .rc-feature-card { grid-template-columns:1fr; padding:8px; border-radius:20px; }
 .page-home .rc-feature-card .rest-feature-image img { min-height:0; aspect-ratio:1.2; height:auto; }
 .page-home .rc-feature-card .rest-feature-copy { padding:29px 20px 25px; }
 .page-home .rc-feature-card .rest-feature-copy h2 { font-size:clamp(39px,7.5vw,54px); }
 .page-home .home-rest .rest-school { padding-top:55px; padding-bottom:55px; gap:30px; }
 .page-home .home-rest .rest-school-copy { width:100%; max-width:100%; padding:27px; }
 .page-home .home-rest .rest-school>figure { padding:8px; }
 .page-home .home-rest .rest-story-pair { gap:30px; }
 .site-page .school-cover>.rc-tool-object { width:64px; height:64px; right:25px; bottom:25px; }
 .site-page .school-founder>div { padding:25px 18px 20px; }
 .site-page .school-founder .person-role { font-size:17px; }
 .site-page .school-founder .rc-button { white-space:normal; max-width:100%; }
 .site-page .school-staff-grid { gap:24px; }
 .site-page .school-experience { gap:0; padding:8px; margin-bottom:45px; }
 .site-page .school-experience>div { padding:25px 18px 30px; }
 .theme-light.page-knowledge .service-jumps { gap:10px; padding:10px; }
 .theme-light.page-knowledge .service-jumps>a { padding:18px 14px; font-size:14px; }
 .theme-light.page-knowledge .service-panel,.theme-light.page-knowledge .service-panel:nth-of-type(even) { padding:8px; gap:0; border-radius:20px; margin-bottom:27px; }
 .theme-light.page-knowledge .service-panel .service-image img { min-height:0; height:auto; aspect-ratio:1.3; }
 .theme-light.page-knowledge .service-panel .service-copy { padding:27px 20px; }
 .theme-light.page-knowledge .service-panel .service-copy h2 { font-size:31px; }
 .theme-light.page-knowledge .service-panel .service-image>.rc-tool-object { right:22px; bottom:22px; }
 .site-page.page-storie .story-feature { padding:8px; border-radius:20px; }
 .site-page.page-storie .story-feature-copy,.site-page.page-storie .story-feature:first-child .story-feature-copy { padding:26px 19px; }
 .site-page.page-storie .story-feature-copy h2 { font-size:clamp(29px,6vw,37px); }
 .site-page.page-storie .story-feature--cta .story-feature-copy { padding:26px 20px; }
 .theme-light.page-knowledge .press-story-copy { padding:27px 20px; }
 .site-page .contact-form-box>.rc-tool-object { top:24px; right:25px; }
}
@media(max-width:460px) {
 .page-home .rc-feature-card .rest-feature-copy { padding:26px 15px 22px; }
 .page-home .home-rest .rest-school-copy { padding:25px; }
 .page-home .home-rest .rest-school-copy h2 { font-size:37px; }
 .theme-light.page-knowledge .service-jumps>a { padding:18px 12px; font-size:13px; }
 .site-page .school-staff-member :is(h3,p) { margin-left:13px; margin-right:13px; }
 .theme-light.page-knowledge .service-panel .service-copy { padding:25px 16px; }
 .theme-light.page-knowledge .service-panel .service-copy h2 { font-size:29px; }
 .theme-light.page-knowledge .press-cover>.rc-tool-object,.theme-light.page-knowledge .audition-photo>.rc-tool-object { bottom:85px; }
}
