/* Three capabilities, one consistent service composition. */
.company-modules#modulos .module-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.company-modules#modulos .module-card#procedural,.company-modules#modulos .module-card#escena-inmersiva,.company-modules#modulos .module-card#monuments-in-concert{display:flex;flex-direction:column;gap:0;padding:0;margin:0;border:0;background:none;color:inherit}
.company-modules#modulos .service-icon{height:112px;width:100%;padding:0;display:flex;align-items:center;margin:0 0 22px}
.company-modules#modulos .service-icon svg{width:64px;height:64px}
.company-modules#modulos .monuments-service-logo img{width:205px;height:112px;object-fit:cover;mix-blend-mode:screen}
.company-modules#modulos .module-copy{padding:0;flex:1;display:flex;flex-direction:column}
.company-modules#modulos .module-copy h3{font-size:clamp(25px,2.5vw,36px)}
.company-modules#modulos .module-copy>.line-link{margin-top:auto;align-self:flex-start;font-size:14px}
.company-modules#modulos #monuments-in-concert .module-intro{color:#edcc9e;font-size:18px;margin-top:0}
.company-modules#modulos .service-status{font-size:12px!important;color:#edcc9e!important;margin:0 0 18px!important}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* A portrait of La Fenice alongside two complete concert views. */
.film-grid.film-trio,.film-editorial.film-trio{display:grid;grid-template-columns:1fr 1.05fr;gap:32px 42px;align-items:start}
.film-trio>:first-child{grid-row:span 2}
.film-trio img{display:block;width:100%;height:auto;object-fit:contain}
.film-trio .film-photo{height:auto;background:transparent}
.film-trio .film-caption h3{font-size:clamp(25px,2.8vw,39px)}
.film-trio .image-provenance{font-size:12px;line-height:1.6;margin-top:8px}
.repertoire-selection{margin:65px 0;padding:35px 0;border-block:1px solid var(--line)}
.repertoire-selection>h2{font-size:32px;line-height:1.2;margin-bottom:16px}
.repertoire-selection>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:720px;margin-bottom:24px}
.repertoire-selection summary{font-size:17px;cursor:pointer;padding:14px 0;color:var(--blue)}
.repertoire-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:24px 0}
.repertoire-columns h3{font-size:17px;margin-bottom:18px}
.repertoire-columns ul{padding:0;list-style:none}
.repertoire-columns li{font-size:16px;line-height:1.6;margin:12px 0;color:var(--muted)}
@media(max-width:900px){.company-modules#modulos .module-grid{grid-template-columns:1fr;gap:42px}.company-modules#modulos .module-card#procedural,.company-modules#modulos .module-card#escena-inmersiva,.company-modules#modulos .module-card#monuments-in-concert{display:grid;grid-template-columns:100px minmax(0,1fr);gap:28px}.company-modules#modulos .service-icon{height:auto;min-height:70px;align-items:flex-start;margin:0}.company-modules#modulos .monuments-service-logo img{width:100px;height:70px}.company-modules#modulos .module-copy>.line-link{margin-top:8px}}
@media(max-width:700px){.film-grid.film-trio,.film-editorial.film-trio{display:block}.film-trio>article,.film-trio>figure{margin-bottom:36px}.repertoire-columns{grid-template-columns:1fr;gap:24px}.company-modules#modulos .module-card#procedural,.company-modules#modulos .module-card#escena-inmersiva,.company-modules#modulos .module-card#monuments-in-concert{grid-template-columns:1fr;gap:16px}.company-modules#modulos .service-icon svg{width:52px;height:52px}.company-modules#modulos .monuments-service-logo img{width:190px;height:104px}.company-modules#modulos .service-icon{min-height:52px}.company-modules#modulos .module-copy h3{font-size:29px}}
.company-modules#modulos .monuments-project-links{display:grid;gap:10px;margin:0 0 20px;font-size:14px;line-height:1.5}
.company-modules#modulos .monuments-project-links a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#edcc9e66;color:#edcc9e}
.company-modules#modulos .monuments-service-logo img[src$="monuments-white-alpha.png"]{object-fit:contain;mix-blend-mode:normal;filter:none;aspect-ratio:auto}
.monuments-intro{background:#142e46;color:#fff;padding:64px max(6vw,24px) 80px}.monuments-intro .back-link{color:#ddd}.monuments-page-logo{display:block;width:260px;height:auto;margin:42px 0}.monuments-intro h1{font-size:clamp(36px,5vw,72px);max-width:850px;line-height:1.08}.monuments-intro p{max-width:720px;line-height:1.65}.monuments-stories{padding:70px max(6vw,24px)}.monuments-story{display:grid;grid-template-columns:1.5fr 1fr;gap:5vw;align-items:center;margin-bottom:80px}.monuments-story figure{margin:0}.monuments-story img{width:100%;height:auto;display:block}.monuments-story figcaption{font-size:11px;margin-top:10px;line-height:1.5}.monuments-story h2{font-size:clamp(28px,3vw,44px);line-height:1.12}.monuments-story p{line-height:1.65}.monuments-story .line-link{display:inline-block;margin-top:18px}.monuments-contact{padding:0 max(6vw,24px) 80px}@media(max-width:760px){.monuments-story{grid-template-columns:1fr;gap:24px;margin-bottom:56px}.monuments-page-logo{width:210px}.monuments-intro{padding-top:36px}.monuments-stories{padding-top:40px}}
.company-modules#modulos #procedural .service-icon svg{width:88px;height:88px}@media(max-width:700px){.company-modules#modulos #procedural .service-icon svg{width:76px;height:76px}}

/* Four film concerts, balanced across two rows. */
.film-grid.film-quartet,.film-editorial.film-quartet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:38px;align-items:start}
.film-quartet .film-photo{aspect-ratio:16/10;overflow:hidden;background:var(--ink)}
.film-quartet .film-photo img,.film-editorial.film-quartet img{width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;object-position:center}
.film-quartet .film-caption h3{font-size:clamp(25px,2.6vw,38px)}
.production-note{font-size:14px!important;color:var(--muted)}

@media(max-width:700px){.film-grid.film-quartet,.film-editorial.film-quartet{grid-template-columns:1fr;gap:32px}}
.film-quartet img.lalaland-europe{object-position:center 51%}

/* A compact film section, secondary to the live production portfolio. */
.cinema-summary{padding:52px var(--gutter) 62px;border-top:1px solid var(--line)}
.cinema-summary-head{display:flex;align-items:baseline;gap:28px;margin-bottom:30px}
.cinema-summary-head h2{font-size:clamp(30px,3vw,40px);line-height:1.15;margin:0}
.cinema-summary-head p{font-size:16px;color:var(--muted);margin:0}
.cinema-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.cinema-summary-grid article{border-top:1px solid var(--line);padding-top:19px;min-width:0}
.cinema-summary-grid .kicker{font-size:12px;color:var(--muted);margin:0 0 13px}
.cinema-summary-grid h3{font-size:25px;line-height:1.2;margin:0 0 14px}
.cinema-summary-grid p:not(.kicker){font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 17px}
.cinema-summary-grid .line-link{font-size:14px}
@media(max-width:700px){.cinema-summary{padding-top:38px;padding-bottom:42px}.cinema-summary-head{display:block;margin-bottom:26px}.cinema-summary-head p{margin-top:12px}.cinema-summary-grid{grid-template-columns:1fr;gap:26px}.cinema-summary-grid h3{font-size:24px}}
.module-name-link{color:inherit;text-decoration:none}.module-name-link:hover{text-decoration:underline;text-underline-offset:.18em}.module-brand-link:focus-visible,.module-name-link:focus-visible{outline:2px solid currentColor;outline-offset:6px}.module-brand-link:hover{opacity:.8}
.journal-pulse{display:inline-block;color:inherit;text-decoration:none;transform-origin:left center;animation:journal-heartbeat 3.6s ease-in-out infinite}.journal-pulse:hover{animation-play-state:paused}.journal-pulse:focus-visible{outline:2px solid currentColor;outline-offset:8px;animation-play-state:paused}@keyframes journal-heartbeat{0%,35%,100%{transform:scale(1)}12%{transform:scale(1.025)}20%{transform:scale(1)}27%{transform:scale(1.015)}}@media(prefers-reduced-motion:reduce){.journal-pulse{animation:none}}
.home{--ink:#f5f8fb;--muted:#d1dce6;--blue:#b6d2e8;--line:#ffffff30;--soft:#102a3c80;background:#142e46;color:var(--ink);isolation:isolate}
.home>.reel-wrap{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:#142e46}
.home>.reel-wrap video{display:block;width:100%;height:100%;object-fit:cover}
.home>.reel-wrap:after{background:linear-gradient(180deg,rgba(5,18,30,.48),rgba(5,18,30,.62) 65%,rgba(5,18,30,.72))}
.home .opening{background:transparent;isolation:auto}
.home .selection,.home .cinema-summary,.home .point-of-view,.home .regular-collaborators,.home .journal-invite{background:transparent}
.home .company-modules#modulos{background:rgba(9,28,42,.5);border-block:1px solid var(--line)}
.home .contact{background:rgba(9,28,42,.42)}
.home .funding{background:rgba(9,28,42,.58)}
.home>footer,.home>.site-header{background:rgba(9,28,42,.55)}
.home .hero-link:hover{color:#142e46}
.home .language-switch a[aria-current="true"]{color:#fff;border-color:#fff}
.home .work-panorama,.home .editorial-preview,.home .own-production{background:rgba(9,28,42,.42)}
.home .ret-image,.home .film-photo,.home .film-quartet .film-photo,.home .carmina-feature{background:#102a3c}
.home .section-head,.home .opening-copy,.home .point-of-view,.home .journal-invite{text-shadow:0 2px 18px #0005}
.home .reel-caption{position:fixed;bottom:20px;left:auto;right:var(--gutter);z-index:20}
.home .reel-caption>span{display:none}
.home #reel-toggle{background:rgba(20,46,70,.92);border-color:rgba(255,255,255,.65);box-shadow:0 2px 12px #0002}
@media(max-width:700px){.home .reel-caption{bottom:max(14px,env(safe-area-inset-bottom));right:16px}.home>footer{padding-bottom:85px}}
.company-modules#modulos #colaboradores{gap:34px;padding-top:42px}
.company-modules#modulos #colaboradores>div:first-child{grid-column:1/-1}
.company-modules#modulos #colaboradores .collaborators-heading{display:flex;align-items:center;gap:24px;font-size:clamp(18px,1.8vw,24px);font-weight:600;line-height:1.35;letter-spacing:.09em;text-transform:uppercase;color:#e8bb91;margin:0}
.company-modules#modulos #colaboradores .collaborators-heading:after{content:'';flex:1;height:1px;min-width:30px;background:#e8bb9155}
.company-modules#modulos #colaboradores .collaborator-grid{grid-column:1/-1;margin-top:0}
@media(max-width:700px){.company-modules#modulos #colaboradores{gap:28px;padding-top:32px}.company-modules#modulos #colaboradores .collaborators-heading{gap:16px;font-size:17px;letter-spacing:.07em}}
