@font-face{

    font-family:"Söhne Mono Buch";

    src:url("fonts/soehne-mono-buch.woff2") format("woff2");

    font-style:normal;

    font-weight:400;

    font-display:swap;

}

@font-face{

    font-family:"Noi Grotesk Light";

    src:url("fonts/NoiGrotesk-Light.woff2") format("woff2");

    font-style:normal;

    font-weight:300;

    font-display:swap;

}

@font-face{

    font-family:"Söhne Mono Extraleicht";

    src:url("fonts/soehne-mono-extraleicht.woff2") format("woff2");

    font-style:normal;

    font-weight:200;

    font-display:swap;

}

:root{

    --color-text:#3c3c3c;

    --type-display:clamp(4rem,5vw,6rem);

    --type-section:clamp(2.5rem,3.2vw,4rem);

    --type-information:1.4rem;

    --type-body:1rem;

    --page-margin:150px;

}

html,
body{

    background:#f0f0ed;

}

body{

    --conversation-bar-height:104px;

    margin:0;

    color:var(--color-text);

    font-family:"Söhne Mono Buch",monospace;

}

button,
input,
select{

    font-family:inherit;

}

.hero{

    position:relative;

    display:grid;

    grid-template-rows:var(--conversation-bar-height) minmax(0,1fr) 28px;

    height:100vh;

    height:100dvh;

}

.arrival-screen{

    display:none;

}

.arrival-identity-title img{

    display:block;

    width:100%;

    height:auto;

}

.arrival-identity-content{

    position:absolute;

    inset:0;

    z-index:2;

    display:grid;

    grid-template-columns:minmax(0,1fr);

    grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);

    box-sizing:border-box;

    pointer-events:none;

}

.arrival-identity-language{

    pointer-events:auto;

}

.arrival-identity-language button{

    appearance:none;

    border:0;

    padding:0;

    margin:0;

    background:none;

    color:inherit;

    font:inherit;

    font-family:"Söhne Mono Extraleicht",monospace;

    font-weight:200;

    font-synthesis:none;

    cursor:pointer;

}

.arrival-identity-language button[aria-pressed="true"]{

    font-family:"Söhne Mono Buch",monospace;

    font-weight:400;

}

.arrival-identity-language button:focus-visible{

    outline:1px solid currentColor;

    outline-offset:4px;

}

@keyframes identity-blob-breathe{

    0%{

        transform:translate(-7px,0) scale(0.975);

    }

    28%{

        transform:translate(2px,-6px) scale(0.992);

    }

    53%{

        transform:translate(8px,2px) scale(1.008);

    }

    78%{

        transform:translate(0,6px) scale(1.025);

    }

    100%{

        transform:translate(-7px,0) scale(0.975);

    }

}

@media (min-width:768px){

    .curtain-sticky-stage{

        height:200vh;

        height:200dvh;

    }

    .curtain-sticky-stage > .hero{

        position:sticky;

        top:0;

    }

    .arrival-screen{

        display:flex;

        box-sizing:border-box;

        width:100%;

        height:100vh;

        height:100dvh;

        align-items:center;

        justify-content:center;

        overflow:hidden;

        background:#f0f0ed;

    }

    .arrival-screen-identity{

        position:relative;

        display:block;

        color:var(--color-text);

    }

    .arrival-identity-content{

        padding-inline:var(--page-margin);

    }

    .arrival-identity-blob{

        position:absolute;

        top:var(--blob-center-y,49vh);

        left:var(--blob-center-x,50vw);

        z-index:0;

        width:clamp(360px,42vw,720px);

        aspect-ratio:1;

        pointer-events:none;

        transform:translate3d(
            -50%,
            calc(-50% + var(--blob-scroll-separation,0px)),
            0
        );

        transform-origin:center;

    }

    .arrival-identity-blob-pose{

        width:100%;

        height:100%;

        transform:rotate(var(--blob-rotation,0deg))
            skewX(var(--blob-skew-x,0deg))
            scale(var(--blob-scale-x,1),var(--blob-scale-y,1));

        transform-origin:center;

    }

    .arrival-identity-blob img{

        display:block;

        width:100%;

        height:100%;

        animation:identity-blob-breathe 10s
            cubic-bezier(0.45,0,0.55,1) infinite;

        transform-origin:center;

    }

    .arrival-identity-language,
    .arrival-identity-dates,
    .arrival-identity-venue{

        position:absolute;

        z-index:1;

        margin:0;

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

        white-space:nowrap;

    }

    .arrival-identity-language{

        top:31.2px;

        left:40px;

        display:flex;

        gap:1ch;

    }

    .arrival-identity-title{

        position:relative;

        z-index:1;

        grid-row:2;

        align-self:center;

        justify-self:center;

        display:flex;

        align-items:center;

        height:3.84em;

        width:8.28em;

        margin:0;

        font-size:var(--type-display);

    }

    .arrival-identity-dates{

        position:relative;

        grid-row:1;

        align-self:center;

        justify-self:center;

        width:100%;

        text-align:center;

        white-space:normal;

    }

    .arrival-identity-venue{

        position:relative;

        grid-row:3;

        align-self:center;

        justify-self:center;

        width:100%;

        text-align:center;

        white-space:normal;

    }

}

@media (max-width:767px){

    body{

        --conversation-bar-height:75px;

    }

    html{

        scroll-snap-type:y proximity;

    }

    .arrival-screen-identity{

        scroll-snap-align:none;

    }

    .curtain-sticky-stage{

        scroll-snap-align:start;

        scroll-snap-stop:always;

    }

    .curtain-sticky-stage,
    .curtain-sticky-stage > .hero{

        height:100vh;

        height:100dvh;

    }

    .arrival-screen-identity{

        position:relative;

        display:block;

        width:100%;

        height:100vh;

        height:100dvh;

        box-sizing:border-box;

        overflow:hidden;

        background:#f0f0ed;

        color:var(--color-text);

    }

    .arrival-identity-content{

        padding-inline:24px;

    }

    .arrival-identity-language,
    .arrival-identity-dates,
    .arrival-identity-venue{

        position:absolute;

        z-index:2;

        margin:0;

        color:var(--color-text);

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

        white-space:nowrap;

    }

    .arrival-identity-language{

        top:24px;

        left:24px;

        display:flex;

        gap:1ch;

    }

    .arrival-identity-dates{

        position:relative;

        grid-row:1;

        align-self:center;

        justify-self:center;

        width:calc(100vw - 48px);

        min-width:0;

        text-align:center;

        white-space:normal;

    }

    .arrival-identity-title{

        position:absolute;

        z-index:2;

        top:50%;

        left:50%;

        display:flex;

        align-items:center;

        height:3.84em;

        margin:0;

        width:calc(100vw - 48px);

        transform:translate(-50%,-50%);

        color:var(--color-text);

        font-size:calc((100vw - 48px) / 8.28);

    }

    .arrival-identity-venue{

        position:relative;

        grid-row:3;

        align-self:center;

        justify-self:center;

        width:calc(100vw - 48px);

        min-width:0;

        text-align:center;

        white-space:normal;

    }

    .arrival-identity-blob{

        position:absolute;

        top:var(--blob-center-y,54vh);

        left:var(--blob-center-x,72vw);

        z-index:1;

        width:96vw;

        aspect-ratio:1;

        pointer-events:none;

        transform:translate3d(
            -50%,
            calc(-50% + var(--blob-scroll-separation,0px)),
            0
        );

    }

    .arrival-identity-blob-pose,
    .arrival-identity-blob img{

        display:block;

        width:100%;

        height:100%;

    }

    .arrival-identity-blob-pose{

        transform:rotate(var(--blob-rotation,0deg))
            skewX(var(--blob-skew-x,0deg))
            scale(var(--blob-scale-x,1),var(--blob-scale-y,1));

        transform-origin:center;

    }

    .arrival-identity-blob img{

        animation:identity-blob-breathe 10s
            cubic-bezier(0.45,0,0.55,1) infinite;

        transform-origin:center;

    }

}

@media (max-width:767px){

    body[data-show-mobile-snap-boxes] .arrival-screen-identity,
    body[data-show-mobile-snap-boxes] .curtain-sticky-stage,
    body[data-show-mobile-snap-boxes] .exhibition-information{

        position:relative;

    }

    body[data-show-mobile-snap-boxes] .arrival-screen-identity::after,
    body[data-show-mobile-snap-boxes] .curtain-sticky-stage::after,
    body[data-show-mobile-snap-boxes] .exhibition-information::after{

        position:absolute;

        inset:0;

        z-index:90;

        pointer-events:none;

        content:"";

    }

    body[data-show-mobile-snap-boxes] .arrival-screen-identity::before,
    body[data-show-mobile-snap-boxes] .curtain-sticky-stage::before,
    body[data-show-mobile-snap-boxes] .exhibition-information::before{

        position:absolute;

        top:0;

        left:0;

        z-index:91;

        padding:3px 6px;

        pointer-events:none;

        color:#111111;

        background:rgba(255,255,255,0.88);

        font:10px/1.2 monospace;

    }

    body[data-show-mobile-snap-boxes] .arrival-screen-identity::after{

        background:rgba(255,80,80,0.16);

        box-shadow:inset 0 3px #d00000,inset 0 -3px #d00000;

    }

    body[data-show-mobile-snap-boxes] .arrival-screen-identity::before{

        content:"SCREEN 1 · 100dvh · NO SNAP";

    }

    body[data-show-mobile-snap-boxes] .curtain-sticky-stage::after{

        background:rgba(60,120,255,0.16);

        box-shadow:inset 0 3px #004fc4,inset 0 -3px #004fc4;

    }

    body[data-show-mobile-snap-boxes] .curtain-sticky-stage::before{

        content:"SCREEN 2 · 100dvh · SNAP START";

    }

    body[data-show-mobile-snap-boxes] .exhibition-information::after{

        background:rgba(40,190,90,0.12);

        box-shadow:inset 0 3px #00852c;

    }

    body[data-show-mobile-snap-boxes] .exhibition-information::before{

        content:"EDITORIAL CONTENT START";

    }

}

.curtain-index-label{

    display:none;

    color:var(--color-text);

}

@media (max-width:767px){

    #conversationBar > .curtain-index-label{

        display:block;

        min-width:0;

        flex:1 1 auto;

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

        pointer-events:none;

    }

    #conversationBar > .conversation-bar-text{

        display:none;

    }

    #conversationBar > .conversation-menu-trigger{

        position:absolute;

        top:50%;

        left:18px;

        z-index:2;

        display:block;

        width:5ch;

        height:1.2em;

        transform:translateY(-50%);

        opacity:0;

        color:var(--color-text);

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

    }

    #conversationBar.is-menu-open > .conversation-menu-trigger{

        right:18px;

        left:auto;

        width:auto;

        opacity:1;

    }

    .conversation-title-line{

        animation:none !important;

    }

}

@media (min-width:768px){

    html{

        scroll-snap-type:y proximity;

    }

    .arrival-screen,
    .curtain-sticky-stage{

        scroll-snap-align:start;

        scroll-snap-stop:normal;

    }

    .arrival-screen-identity{

        scroll-snap-stop:always;

    }

    #conversationBar > .curtain-index-label{

        display:block;

        min-width:0;

        flex:1 1 auto;

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

        pointer-events:none;

        transform:translateY(12px);

    }

    #conversationBar > .conversation-bar-text{

        display:none;

    }

    #conversationBar > .conversation-menu-trigger{

        position:absolute;

        top:50%;

        left:40px;

        z-index:2;

        display:block;

        width:5ch;

        height:1.2em;

        transform:translateY(calc(-50% + 12px));

        opacity:0;

        color:var(--color-text);

        font:400 var(--type-information)/1.2 "Söhne Mono Buch",monospace;

    }

    #conversationBar.is-menu-open > .conversation-menu-trigger{

        right:calc(100% - var(--index-content-width) + 40px);

        left:auto;

        width:auto;

        opacity:1;

    }

}

.curtain-presentation[data-entrance-active]{

    pointer-events:none;

    will-change:transform;

}

.hero > .container{

    min-height:0;

    overflow-x:clip;

}

.exhibition-information{

    background:#f0f0ed;

    color:var(--color-text);

}

.editorial-section{

    --type-section:2.5rem;

    --type-body:1.2rem;

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    gap:32px;

    padding:clamp(96px,14vh,180px) max(40px,var(--page-margin));

}

.editorial-title,
.visit-information h2{

    margin:0;

    color:var(--color-text);

    letter-spacing:0;

}

.editorial-title{

    font:400 var(--type-section)/0.98 "Söhne Mono Buch",monospace;

}

.editorial-side{

    display:contents;

}

.visit-information h2{

    font:400 var(--type-section)/0.98 "Söhne Mono Buch",monospace;

}

.editorial-title-line{

    display:block;

    white-space:nowrap;

}

.editorial-title strong{

    font-family:"Söhne Mono Buch",monospace;

    font-weight:400;

}

.editorial-body{

    width:min(50vw,56rem);

    max-width:100%;

    color:var(--color-text);

    font:300 var(--type-body)/1.45 "Noi Grotesk Light",sans-serif;

}

.editorial-body p{

    margin:0;

}

.editorial-body p + p{

    margin-top:0.8em;

}

.editorial-body strong{

    font-weight:700;

}

.editorial-actions{

    display:flex;

    flex-wrap:wrap;

    gap:16px;

}

.information-pill{

    min-height:48px;

    box-sizing:border-box;

    padding:10px 24px;

    border:0;

    border-radius:999px;

    background:#ffffff;

    color:var(--color-text);

    font:400 0.85rem/1 "Söhne Mono Buch",monospace;

    cursor:pointer;

}

.press-release-link{

    display:inline-flex;

    align-items:center;

    gap:8px;

    text-decoration:none;

}

.press-release-arrow{

    display:inline-block;

    transition:transform 160ms ease;

}

.press-release-link:hover .press-release-arrow,
.press-release-link:focus-visible .press-release-arrow{

    transform:translate(2px,-2px);

}

.press-release-link:focus-visible{

    outline:2px solid currentColor;

    outline-offset:4px;

}

@media (prefers-reduced-motion:reduce){

    .press-release-link .press-release-arrow{

        transition:none;

        transform:none;

    }

}

.visit-information{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:clamp(64px,10vw,180px);

    padding:clamp(80px,10vh,140px) max(40px,var(--page-margin));

    background:#ffffff;

}

.visit-information-block{

    text-align:center;

}

.visit-information-block p{

    margin:32px 0 0;

    color:var(--color-text);

    font:400 var(--type-information)/1.5 "Söhne Mono Buch",monospace;

}

.exhibition-footer{

    display:grid;

    grid-template-columns:minmax(0,1fr) minmax(280px,auto);

    gap:48px;

    align-items:end;

    padding:clamp(80px,10vh,140px) max(40px,var(--page-margin));

    background:#f0f0ed;

}

.exhibition-footer-logos{

    grid-column:1 / -1;

    display:grid;

    grid-template-columns:minmax(0,290px) minmax(0,375px);

    justify-content:space-between;

    align-items:end;

    gap:48px;

}

.exhibition-footer-logos img{

    display:block;

    width:100%;

    height:auto;

}

.exhibition-footer > .exhibition-contact{

    grid-column:2;

}

.exhibition-contact{

    margin:0;

    color:var(--color-text);

    font:normal 300 var(--type-body)/1.45 "Noi Grotesk Light",sans-serif;

    text-align:right;

}

.exhibition-contact a{

    color:inherit;

    text-decoration:none;

}

.exhibition-visit-action{

    grid-column:2;

    justify-self:end;

}

@media (min-width:768px){

    :root{

        --type-body:1.5rem;

    }

    .exhibition-footer > .exhibition-contact{

        grid-column:1 / -1;

        text-align:left;

    }

    .exhibition-visit-action{

        grid-column:1 / -1;

        justify-self:start;

    }

    .editorial-section{

        display:grid;

        grid-template-columns:minmax(0,1fr) minmax(0,1fr);

        grid-template-areas:"body side";

        column-gap:clamp(64px,8vw,160px);

    }

    .editorial-side{

        grid-area:side;

        position:sticky;

        top:clamp(96px,14vh,180px);

        align-self:start;

        display:flex;

        flex-direction:column;

        align-items:flex-end;

        gap:32px;

        justify-self:end;

    }

    .editorial-title{

        text-align:right;

    }

    .editorial-body{

        grid-area:body;

        width:100%;

    }

    .editorial-actions{

        flex-direction:column;

        align-items:flex-end;

        justify-content:flex-end;

    }

}

@media (min-width:768px) and (max-width:1119px){

    .editorial-section{

        display:flex;

    }

    .editorial-side{

        display:contents;

    }

    .editorial-title,
    .editorial-actions{

        align-self:flex-end;

    }

    .editorial-actions{

        order:1;

    }

}

@media (min-width:1120px){

    .editorial-section{

        --type-section:clamp(2.88rem,3.2vw,4rem);

        --type-body:1.5rem;

    }

}

@media (max-width:767px){

    :root{

        --type-body:1.2rem;

    }

    .editorial-section,
    .visit-information,
    .exhibition-footer{

        padding:64px 24px;

    }

    .editorial-body{

        width:100%;

    }

    .editorial-title,
    .editorial-actions{

        align-self:flex-end;

        text-align:right;

    }

    .editorial-actions{

        order:3;

        justify-content:flex-end;

    }

    .editorial-title{

        order:1;

    }

    #presentation-heading{

        font-size:min(var(--type-section),calc((100vw - 48px) / 7.2));

    }

    .editorial-body{

        order:2;

    }

    .visit-information h2{

        font-size:clamp(2rem,10vw,3rem);

    }

    .visit-information,
    .exhibition-footer{

        grid-template-columns:1fr;

    }

    .exhibition-footer-logos{

        grid-template-columns:minmax(0,1fr);

    }

    .exhibition-footer-logos img{

        max-width:375px;

    }

    .exhibition-footer-logos img:first-child{

        max-width:290px;

    }

    .exhibition-footer > .exhibition-contact{

        grid-column:1;

    }

    .exhibition-contact{

        text-align:left;

    }

    .exhibition-visit-action{

        grid-column:1;

        justify-self:start;

    }

}

.debug-panel[hidden],
#semanticNavigation[hidden]{

    display:none !important;

}

.debug-panel{

    position:fixed;

    right:max(12px,env(safe-area-inset-right));

    bottom:max(12px,env(safe-area-inset-bottom));

    z-index:100;

    width:300px;

    max-width:calc(100vw - 24px);

    max-height:min(620px,calc(100vh - 24px));

    overflow:auto;

    box-sizing:border-box;

    padding:34px 12px 12px;

    border:1px solid rgba(0,0,0,0.22);

    background:#ffffff;

    color:#000000;

    font:13px/1.3 "Söhne Mono Buch",monospace;

    box-shadow:0 2px 12px rgba(0,0,0,0.08);

    overscroll-behavior:contain;

}

.debug-panel-close{

    position:absolute;

    top:6px;

    right:8px;

    width:28px;

    height:28px;

    padding:0;

    border:0;

    background:transparent;

    color:inherit;

    font:22px/1 "Söhne Mono Buch",monospace;

    cursor:pointer;

}

.debug-reopen{

    position:fixed;

    right:max(12px,env(safe-area-inset-right));

    bottom:max(12px,env(safe-area-inset-bottom));

    z-index:100;

    min-width:64px;

    min-height:32px;

    padding:7px 10px;

    border:1px solid #000000;

    background:#000000;

    color:#ffffff;

    font:400 12px/1 "Söhne Mono Buch",monospace;

    cursor:pointer;

    pointer-events:auto;

}

.debug-reopen[hidden]{

    display:none;

}

.conversation-bar{

    position:relative;

    z-index:20;

    display:flex;

    height:var(--conversation-bar-height);

    box-sizing:border-box;

    align-items:center;

    justify-content:space-between;

    gap:16px;

    width:100%;

    padding:20px 18px;

    background:#f0f0ed;

    color:#000000;

    font:200 32px/1.05 "Söhne Mono Extraleicht",monospace;

}

.conversation-bar-text{

    position:relative;

    display:block;

    height:1.08em;

    min-width:0;

    flex:1 1 auto;

    overflow:hidden;

    color:inherit;

    text-overflow:ellipsis;

    white-space:nowrap;

}

.conversation-title-line{

    position:absolute;

    inset:0;

    overflow:hidden;

    text-overflow:ellipsis;

    white-space:nowrap;

}

.conversation-title-line.is-outgoing{

    animation:conversation-title-out 200ms cubic-bezier(0.22,1,0.36,1) both;

}

.conversation-title-line.is-incoming{

    animation:conversation-title-in 200ms cubic-bezier(0.22,1,0.36,1) both;

}

@keyframes conversation-title-out{

    from{transform:translateY(0);}

    to{transform:translateY(-10px);opacity:0;}

}

@keyframes conversation-title-in{

    from{transform:translateY(10px);opacity:0;}

    to{transform:translateY(0);opacity:1;}

}

.conversation-menu-trigger{

    flex:0 0 52px;

    width:52px;

    height:52px;

    padding:0;

    border:0;

    background:transparent;

    color:inherit;

    font:200 32px/1 "Söhne Mono Extraleicht",monospace;

    cursor:pointer;

}

.conversation-project-list{

    position:absolute;

    top:100%;

    right:0;

    z-index:1;

    width:100%;

    max-height:calc(100vh - var(--conversation-bar-height));

    max-height:calc(100dvh - var(--conversation-bar-height));

    overflow:auto;

    box-sizing:border-box;

    padding:8px 0 max(24px,env(safe-area-inset-bottom));

    background:#f0f0ed;

    color:#000000;

    border-top:1px solid rgba(0,0,0,0.08);

}

.conversation-project-list[hidden]{

    display:none;

}

.conversation-project-list ul{

    margin:0;

    padding:0;

    list-style:none;

}

.conversation-project-list button{

    position:relative;

    display:grid;

    grid-template-columns:minmax(0,1fr) auto;

    gap:20px;

    align-items:baseline;

    width:100%;

    min-height:64px;

    padding:16px 20px;

    border:0;

    background:transparent;

    color:inherit;

    font:200 18px/1.25 "Söhne Mono Extraleicht",monospace;

    text-align:left;

    cursor:pointer;

}

.conversation-project-title{

    overflow:hidden;

    text-overflow:ellipsis;

    white-space:nowrap;

}

    .conversation-project-year{

    font-variant-numeric:tabular-nums;

}

.conversation-project-list button[aria-current="true"]::before{

    position:absolute;

    left:7px;

    content:"•";

}

.conversation-project-list button:hover,
.conversation-project-list button:focus-visible{

    background:rgba(0,0,0,0.055);

    outline:0;

}

@media (min-width:768px){

    body{

        --conversation-bar-height:96px;

    }

    .conversation-project-title{

        text-transform:uppercase;

    }

    .conversation-bar{

        --index-content-width:min(620px,100%);

        padding:28px 40px;

        color:var(--color-text);

        font-size:44px;

    }

    .conversation-menu-trigger{

        flex-basis:56px;

        width:56px;

        height:56px;

        font-size:36px;

    }

    .conversation-project-list{

        width:var(--index-content-width);

        right:auto;

        left:0;

        padding-top:12px;

        color:var(--color-text);

        border-top:0;

    }

    .conversation-project-list button{

        min-height:56px;

        padding:10px 32px 10px 40px;

        font:200 var(--type-information)/1.2 "Söhne Mono Extraleicht",monospace;

    }

    .conversation-project-list button:hover,
    .conversation-project-list button[aria-current="true"]{

        font-family:"Söhne Mono Buch",monospace;

        font-weight:400;

    }

    .conversation-project-list button:hover{

        background:transparent;

    }

    .conversation-project-list button[aria-current="true"]::before{

        content:none;

    }

}

@media (max-width:767px){

    .conversation-project-title{

        text-transform:uppercase;

    }

    .conversation-project-list{

        border-top:0;

    }

    .conversation-project-list button{

        min-height:52px;

        padding:8px 24px;

        font:200 var(--type-information)/1.2
            "Söhne Mono Extraleicht",monospace;

    }

    .conversation-project-list button:hover,
    .conversation-project-list button:focus-visible,
    .conversation-project-list button[aria-current="true"]{

        background:transparent;

        font-family:"Söhne Mono Buch",monospace;

        font-weight:400;

    }

    .conversation-project-list button[aria-current="true"]::before{

        content:none;

    }

}

@media (prefers-reduced-motion:reduce){

    .conversation-title-line{

        animation:none !important;

    }

}

.performance-overview{

    margin:14px 0 0;

    padding:12px 0 0;

    border:0;

    border-top:1px solid rgba(0,0,0,0.18);

    background:transparent;

    font:11px/1.35 "Söhne Mono Buch",monospace;

    font-variant-numeric:tabular-nums;

}

.performance-overview pre{

    margin:0;

    font:inherit;

    white-space:pre;

}

.performance-overview-header{

    display:flex;

    gap:8px;

    align-items:center;

    justify-content:space-between;

    font-weight:bold;

}

.performance-overview [data-performance-body]{

    margin-top:8px;

}

.source-representation-control{

    display:flex;

    flex-direction:column;

    gap:5px;

    margin-top:8px;

}

.source-representation-control select{

    width:100%;

    font:inherit;

}

.performance-overview-actions{

    display:flex;

    justify-content:flex-end;

    gap:8px;

    margin-top:10px;

}

.performance-overview-actions button{

    margin:0;

    font:inherit;

}

.developer-viewport-control{

    display:flex;

    flex-direction:column;

    align-items:stretch;

    gap:6px;

    margin-top:14px;

    padding-top:12px;

    border-top:1px solid rgba(0,0,0,0.18);

}

.mobile-snap-box-diagnostic{

    margin-top:14px;

    padding-top:12px;

    border-top:1px solid rgba(0,0,0,0.18);

}

.mobile-snap-box-diagnostic label{

    display:flex;

    gap:7px;

    align-items:center;

}

.mobile-snap-box-diagnostic pre{

    margin:10px 0 0;

    overflow-wrap:anywhere;

    white-space:pre-wrap;

    font:10px/1.35 monospace;

}

@media (min-width:768px){

    .mobile-snap-box-diagnostic{

        display:none;

    }

}

.controls{

    display:flex;

    flex-direction:column;

    gap:9px;

    margin-top:0;

}

.debug-control{

    display:flex;

    flex-direction:column;

    gap:4px;

}

.debug-control-inputs{

    display:grid;

    grid-template-columns:minmax(0,1fr) 58px 24px;

    gap:6px;

    align-items:center;

}

.controls input[type="number"]{

    font-variant-numeric:tabular-nums;

    width:58px;

    box-sizing:border-box;

}

.curtain-presentation{

    position:relative;

    width:100%;

    height:100%;

}

.curtain-presentation canvas{

    box-sizing:border-box;

    display:block;

    width:100%;

    height:100%;

    cursor:grab;

    touch-action:pan-y;

}

.curtain-presentation canvas.is-dragging{

    cursor:grabbing;

}

.curtain-pinch-hint{

    display:none;

}

@media (max-width:767px){

    .curtain-pinch-hint{

        position:absolute;

        z-index:30;

        display:flex;

        width:var(--curtain-pinch-hint-size,80px);

        height:var(--curtain-pinch-hint-size,80px);

        box-sizing:border-box;

        align-items:center;

        justify-content:center;

        border-radius:50%;

        background:rgba(255,255,255,0.8);

        pointer-events:none;

    }

    .curtain-pinch-hint[hidden]{

        display:none;

    }

    .curtain-pinch-hint img{

        display:block;

        width:38px;

        height:auto;

    }

    .curtain-pinch-hint.is-visible{

        animation:curtain-pinch-hint-dismiss
            var(--curtain-pinch-hint-duration,1800ms) ease-out forwards;

    }

}

@keyframes curtain-pinch-hint-dismiss{

    0%{

        opacity:0;

        transform:translate(-50%,-50%);

    }

    10%,65%{

        opacity:1;

    }

    100%{

        opacity:0;

        transform:translate(
            -50%,
            calc(-50% - var(--curtain-pinch-hint-drift,40px))
        );

    }

}
