:root{color-scheme:light dark;--font-sans:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;--font-serif:"Merriweather","Georgia",serif;--color-bg:rgba(255,255,255,0.92);--color-surface:rgba(255,255,255,0.88);--color-surface-alt:rgba(248,248,248,0.92);--color-text:#1f1f1f;--color-text-muted:#4d4d4d;--color-accent:#b81324;--color-accent-muted:rgba(184,19,36,0.14);--color-border:rgba(0,0,0,0.08);--transition-base:200ms ease;--max-content-width:min(100%,1040px)}*,*::before,*::after{box-sizing:border-box}html,body{min-height:100%}body{margin:0;font-family:var(--font-sans);color:var(--color-text);background-color:#f5f2f0;line-height:1.6;overscroll-behavior-y:none}body::before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 20% 20%,rgba(184,19,36,0.08),transparent 45%),radial-gradient(circle at 80% 75%,rgba(184,19,36,0.06),transparent 60%);z-index:-2}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.background-layer{position:fixed;inset:0;background:url("../img/background.webp") center / cover no-repeat,linear-gradient(180deg,rgba(244,239,235,0.35),rgba(245,240,236,0.9));z-index:-3}.background-layer::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 25% 18%,rgba(255,255,255,0.55),transparent 58%),radial-gradient(circle at 80% 82%,rgba(255,255,255,0.45),transparent 62%),url("../img/background-overlay.svg") center / cover repeat;mix-blend-mode:lighten;opacity:0.7}.no-js .app-header{position:static}.no-js .app-content{display:block !important;padding-top:clamp(1rem,4vw,2.5rem) !important}.noscript-banner{background:var(--color-accent);color:#fff;padding:0.75rem 1rem;text-align:center;font-weight:600}.app-header{position:fixed;top:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding-right:clamp(1rem,4vw,2.5rem);padding-left:clamp(1rem,4vw,2.5rem);background:rgba(255,255,255,0.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}.logo-block{display:flex;flex-direction:column}.logo-link{text-decoration:none;color:inherit;display:inline-flex;align-items:center;gap:0.6rem}.logo-title{display:block;width:60px;height:60px;object-fit:contain}.logo-subtitle{font-size:0.8rem;color:var(--color-text-muted)}.main-nav{display:flex;justify-content:center;gap:0.5rem;flex-wrap:wrap}.nav-link{background:transparent;border:1px solid transparent;border-radius:999px;padding:0.45rem 1.2rem;color:inherit;cursor:pointer;font-size:0.95rem;letter-spacing:0.02em;transition:border-color var(--transition-base),color var(--transition-base),background-color var(--transition-base)}.nav-link:hover,.nav-link:focus-visible{border-color:var(--color-accent);color:var(--color-accent);outline:none}.nav-link.is-active{background:var(--color-accent-muted);border-color:var(--color-accent)}.header-tools{display:flex;gap:0.75rem;align-items:center}.language-switcher{display:inline-flex;border-radius:999px;border:1px solid var(--color-border);overflow:hidden}.lang-option{background:#fff;color:#000;border:none;padding:0.35rem 0.75rem;cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);display:inline-flex;align-items:center;gap:0.4rem;font-size:0.75rem;font-weight:600;text-transform:uppercase}.lang-option.is-active{background:var(--color-accent);color:#fff}.lang-option:focus-visible{outline:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,0.6)}.lang-option:hover:not(.is-active){background:rgba(0,0,0,0.08)}.lang-short{display:inline-block}.lang-full{display:none;font-size:0.72rem;letter-spacing:0.06em}@media (min-width:720px){.lang-full{display:inline-block}}.social-links{display:inline-flex;gap:0.3rem}.social-link{display:inline-flex;width:1.4rem;height:1.4rem;align-items:center;justify-content:center;border:none;background:transparent;transition:transform var(--transition-base),opacity var(--transition-base)}.social-link img{width:100%;height:100%;display:block}.social-link:hover,.social-link:focus-visible{transform:translateY(-1px);opacity:0.85;outline:none}.app-content{margin:0 auto;padding-top:9rem;max-width:var(--max-content-width);width:100%}.view-section{background:var(--color-surface);border:1px solid var(--color-border);border-bottom:none;border-radius:1.5rem 1.5rem 0 0;padding:clamp(1.5rem,4vw,3rem);box-shadow:0 24px 40px rgba(160,150,140,0.28);transition:opacity var(--transition-base),transform var(--transition-base)}.view-section[hidden]{display:none}.view-section.is-active{opacity:1;transform:translateY(0)}.view-hero,.view-header{text-align:center}.eyebrow{font-size:0.85rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--color-accent);margin-bottom:0.75rem}h1,h2,h3{font-family:var(--font-serif);line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.4rem);margin:0 0 1rem}h2{font-size:clamp(1.5rem,3.5vw,2rem);margin-top:2rem;margin-bottom:1rem}p{margin-top:0;margin-bottom:1rem;color:var(--color-text-muted)}.cta-group{display:inline-flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-top:1.5rem}.cta{border-radius:999px;border:1px solid transparent;padding:0.75rem 1.8rem;font-size:0.95rem;letter-spacing:0.05em;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),background var(--transition-base)}.cta.primary{background:var(--color-accent);color:#fff;font-weight:600}.cta.primary:hover,.cta.primary:focus-visible{box-shadow:0 10px 20px rgba(184,19,36,0.25);transform:translateY(-1px);outline:none}.cta.secondary{background:transparent;color:var(--color-accent);border-color:var(--color-accent)}.cta.secondary:hover,.cta.secondary:focus-visible{background:var(--color-accent-muted);outline:none}.feature-grid{display:grid;gap:1.5rem;margin-top:2.5rem}@media (min-width:720px){.feature-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{background:rgba(255,255,255,0.75);border-radius:1rem;padding:1.5rem;border:1px solid rgba(0,0,0,0.06);backdrop-filter:blur(6px);min-height:190px}.split-layout{display:grid;gap:2rem;margin-top:2rem}@media (min-width:860px){.split-layout{grid-template-columns:1fr 1fr;align-items:center}}.split-copy{background:var(--color-surface-alt);border-radius:1rem;padding:1.5rem;border:1px solid rgba(0,0,0,0.05)}.process-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:0.75rem}.process-list li{padding-left:1.4rem;position:relative}.process-list li::before{content:"•";position:absolute;left:0;color:var(--color-accent)}.split-media{margin:0;border-radius:1.25rem;overflow:hidden;border:1px solid rgba(0,0,0,0.08)}.split-media img{width:100%;height:auto;display:block}.split-media figcaption{margin:0;padding:0.85rem 1.1rem;font-size:0.9rem;background:rgba(255,255,255,0.92)}.studio-projects{--project-size:180px;--project-gap:0px;--highlight-offset:0px;--highlight-width:var(--project-size);margin:0 auto;max-width:calc(var(--project-size) * 5);text-align:center;display:flex;flex-direction:column;align-items:center}.studio-projects-title{margin-bottom:1rem}.studio-projects-strip{display:flex;gap:var(--project-gap);overflow-x:auto;scrollbar-width:none;justify-content:center}.studio-projects-strip::-webkit-scrollbar{display:none}.project-thumb{position:relative;flex:0 0 var(--project-size);inline-size:var(--project-size);block-size:var(--project-size);padding:0;border:none;background:transparent;cursor:pointer;border-radius:0.75rem;border:1px solid transparent;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.12);transition:box-shadow var(--transition-base),transform var(--transition-base)}.project-thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0.75rem 0.75rem 0 0}.project-thumb:hover,.project-thumb:focus-visible{box-shadow:inset 0 0 0 1px var(--color-accent);outline:none}.project-thumb.is-active{border-color:var(--color-accent);border-bottom:none;border-radius:0.75rem 0.75rem 0 0;box-shadow:none;outline:none;z-index:1}.studio-projects-info{margin-top:0;inline-size:100%;min-block-size:auto;border:1px solid var(--color-accent);border-radius:0 0 0.75rem 0.75rem;padding:1.1rem;background:var(--color-surface);display:flex;flex-direction:column;gap:0.65rem;transform:none;position:relative}.studio-projects-info::before{content:"";position:absolute;top:-1px;left:calc(50% - var(--highlight-width) / 2 + var(--highlight-offset));width:var(--highlight-width);height:1px;background:var(--color-surface);pointer-events:none;transition:left var(--transition-base),width var(--transition-base)}.studio-projects-info-title{margin:0;font-size:1.05rem}.studio-projects-info-copy{margin:0;font-size:0.95rem;line-height:1.5}@media (max-width:720px){.studio-projects-info{inline-size:100%;transform:none;border-top:1px solid var(--color-accent);border-radius:0.75rem}.studio-projects-info::before{display:none}}.museum-header .eyebrow{font-size:0.85rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:0.6rem}.museum-header h1{margin-bottom:0.75rem}.museum-overview{margin-top:clamp(2rem,5vw,3.5rem);padding:0 clamp(1.5rem,4vw,2.5rem);background:rgba(255,255,255,0.82);border:1px solid rgba(0,0,0,0.08);border-radius:1.25rem}.museum-overview-title{margin:0 0 1rem}.museum-overview-grid{display:grid;gap:1rem}@media (min-width:860px){.museum-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.museum-overview-figure{margin:0;display:flex;flex-direction:column;gap:0.75rem}.museum-overview-figure-media{border-radius:1.25rem;overflow:hidden;border:1px solid rgba(0,0,0,0.08)}.museum-overview-figure-media img{width:100%;height:auto;display:block}.museum-overview-figure figcaption{padding:0 1rem 0.85rem;font-size:0.9rem;background:rgba(255,255,255,0.92);color:var(--color-text-muted);text-align:center}.museum-overview-copy h3{margin:0 0 0.6rem;font-size:1.15rem;color:var(--color-text)}.museum-overview-copy p{margin:0 0 0.85rem;font-size:0.9rem;line-height:1.6}.museum-collections{--thumb-size:180px;--thumb-gap:0;--highlight-offset:0px;--highlight-width:var(--thumb-size);--block-padding:clamp(1.5rem,4vw,2.2rem);width:min(100%,calc(var(--thumb-size) * 5 + var(--block-padding) * 2));display:flex;flex-direction:column;align-items:center;gap:0;border-radius:1.5rem;background:rgba(255,255,255,0.88);box-shadow:0 32px 72px rgba(184,19,36,0.16);border:1px solid rgba(184,19,36,0.08);box-sizing:border-box}.museum-strip-heading{margin:1.5rem 0 0.75rem;font-size:clamp(1.4rem,2.6vw,1.7rem)}.museum-strip{display:flex;gap:var(--thumb-gap);justify-content:center;flex-wrap:nowrap;width:100%;overflow-x:auto;scrollbar-width:none}.museum-strip[role="list"]{list-style:none;padding:0;margin:0}.museum-strip::-webkit-scrollbar{display:none}.museum-thumb{position:relative;flex:0 0 var(--thumb-size);inline-size:var(--thumb-size);block-size:var(--thumb-size);border-radius:1rem;border:1px solid rgba(0,0,0,0.12);padding:0;background:rgba(255,255,255,0.9);cursor:pointer;transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base);overflow:hidden}.museum-thumb + .museum-thumb{margin-left:-1px}.museum-thumb.is-active,.museum-thumb:focus-visible,.museum-thumb:hover{border-color:var(--color-accent);outline:none;box-shadow:inset 0 0 0 1px var(--color-accent)}.museum-strip[data-museum-strip="machines"] .museum-thumb{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.museum-strip[data-museum-strip="machines"] .museum-thumb.is-active{border-bottom:none;border-radius:1rem 1rem 0 0}.museum-strip[data-museum-strip="details"] .museum-thumb{border-top-left-radius:0;border-top-right-radius:0;border-top:none}.museum-strip[data-museum-strip="details"] .museum-thumb.is-active{border-top:none;border-radius:0 0 1rem 1rem}.museum-thumb-media{position:relative;width:100%;height:100%}.museum-thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 720ms ease}.museum-thumb-img--primary{opacity:1;transition-delay:0ms}.museum-thumb-img--secondary{opacity:0;transition-delay:120ms}.museum-thumb.show-secondary .museum-thumb-img--secondary,.museum-thumb.is-active .museum-thumb-img--secondary{opacity:1}.museum-thumb.show-secondary .museum-thumb-img--primary,.museum-thumb.is-active .museum-thumb-img--primary{opacity:0}.museum-info{width:calc(var(--thumb-size) * 5 - 4px);background:rgba(255,255,255,0.9);border:1px solid var(--color-accent);border-radius:0;padding:clamp(1.25rem,4vw,1.75rem);display:flex;flex-direction:column;gap:0.75rem;position:relative;align-self:center;box-sizing:border-box}.museum-info::before,.museum-info::after{content:"";position:absolute;left:calc(50% - (var(--highlight-width) / 2) + var(--highlight-offset));width:var(--highlight-width);height:1px;background:var(--color-surface);pointer-events:none;transition:left var(--transition-base),width var(--transition-base);display:none}.museum-info[data-highlight-edge="top"]::before{top:-1px;display:block}.museum-info[data-highlight-edge="bottom"]::after{bottom:-1px;display:block}.museum-info-title{margin:0;font-size:clamp(1.2rem,2.4vw,1.5rem)}.museum-info-description{margin:0;font-size:1rem;line-height:1.6}.museum-info-facts-title{margin:0.5rem 0 0;font-size:0.85rem;text-transform:uppercase;letter-spacing:0.12em;color:var(--color-text-muted)}.museum-info-facts{list-style:none;margin:0;padding:0;display:grid;gap:0.4rem}.museum-info-facts li{position:relative;padding-left:1.2rem;font-size:0.95rem}.museum-info-facts li::before{content:"\2022";position:absolute;left:0;color:var(--color-accent)}.museum-strip--secondary{opacity:0.95;margin-top:0}@media (max-width:720px){.museum-thumb{flex:0 0 clamp(8rem,60vw,11rem);inline-size:clamp(8rem,60vw,11rem);block-size:clamp(8rem,60vw,11rem)}.museum-info::before,.museum-info::after{display:none}}.info-grid{display:grid;gap:1.5rem;margin-top:2rem}@media (min-width:860px){.info-grid{grid-template-columns:repeat(3,1fr)}}.app-footer{position:relative;background:#fff;border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:1.5rem;border-bottom-right-radius:1.5rem;margin:-1px auto 2.5rem;padding-bottom:2.75rem;max-width:var(--max-content-width);width:100%;color:var(--color-text);box-shadow:0 24px 40px rgba(160,150,140,0.28);border:1px solid var(--color-border);border-top:1px solid var(--color-border)}.footer-inner{display:grid;gap:clamp(1.25rem,4vw,2.5rem);align-items:center}@media (min-width:720px){.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center}}.footer-col{display:flex;flex-direction:column;gap:0.5rem}.footer-col--left{align-items:center;text-align:center}.footer-col--right{align-items:flex-start}.footer-logo{display:flex;justify-content:center;align-items:center;margin-bottom:-1.2rem}.footer-logo img{width:min(100%,clamp(220px,45vw,430px));height:auto}.footer-line{margin:0;color:var(--color-text-muted);font-size:0.95rem;line-height:1.45}.footer-line + .footer-line{margin-top:0.4rem}.footer-title{margin:0;color:var(--color-text-muted);font-size:0.95rem;letter-spacing:0.02em;text-transform:none}.footer-contact-list{margin:0;padding:0;display:grid;gap:0.55rem}.footer-contact-item{display:grid;grid-template-columns:auto 1fr;column-gap:0.65rem;row-gap:0.15rem;font-size:0.95rem}.footer-contact-item dt,.footer-contact-item dd{margin:0}.footer-contact-item dd{color:var(--color-text)}.footer-contact-label{font-size:0.75rem;color:var(--color-text-muted)}.footer-contact-item dd a{color:var(--color-text);text-decoration:none;word-break:break-word}.footer-contact-item dd a:hover,.footer-contact-item dd a:focus-visible{color:var(--color-accent);text-decoration:underline;outline:none}@media (max-width:640px){.footer-contact-item{grid-template-columns:1fr}.footer-contact-label{letter-spacing:0.1em}}.footer-legal{margin:clamp(1rem,3vw,1.6rem) auto 0;text-align:center;color:var(--color-text-muted);font-size:0.92rem;letter-spacing:0.01em}.app-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:0;border-top:1px solid var(--color-accent);box-shadow:0 4px 0 0 rgba(184,19,36,0.15);pointer-events:none}.app-footer::after{content:"";position:absolute;top:-5px;left:50%;width:10px;height:10px;transform:translateX(-50%) rotate(45deg);border:1px solid var(--color-accent);background:#fff;pointer-events:none}.privacy-text{display:grid;gap:1rem;margin-top:1.5rem;color:var(--color-text-muted);text-align:left}@media (max-width:640px){.app-header{grid-template-columns:1fr;gap:0.75rem;text-align:center}.logo-block{align-items:center}.header-tools{justify-content:center}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}