.hero-vignette{background:radial-gradient(ellipse at center, transparent 50%, color-mix(in srgb, var(--foreground) 30%, transparent) 100%), linear-gradient(to top, color-mix(in srgb, var(--foreground) 35%, transparent) 0%, transparent 40%)}:root{--hero-fade:2s;--hero-kb-duration:12s}.hero-slide{opacity:0;position:absolute;inset:0}.hero-slide[data-state=active]{opacity:1;z-index:2;transition:opacity var(--hero-fade) var(--ease-slow)}.hero-slide[data-state=leaving]{opacity:1;z-index:1}.hero-slide[data-first]{transition:none}.hero-kb{transform:var(--kb-from);position:absolute;inset:0}.hero-kb[data-run]{animation:heroKenBurns var(--hero-kb-duration) linear forwards}@keyframes heroKenBurns{0%{transform:var(--kb-from)}to{transform:var(--kb-to)}}.hero-caption{opacity:0;transition:opacity .6s var(--ease-slow), transform 0s linear .6s;transform:translateY(12px)}.hero-caption[data-visible]{opacity:1;transition:opacity 1.2s var(--ease-slow), transform 1.2s var(--ease-slow);transform:none}.hero-caption[data-first]{transition:none}.hero-progress{background:#ffffff59;width:56px;height:1px;display:block;overflow:hidden}.hero-progress-fill{transform-origin:0;background:#fff;height:100%;display:block;transform:scaleX(0)}.hero-progress-fill[data-run]{animation:linear forwards hero-progress}@keyframes hero-progress{to{transform:scaleX(1)}}html:not(.js) .hero-progress{display:none}@media (prefers-reduced-motion:reduce){.hero-slide,.hero-slide[data-state],.hero-caption,.hero-caption[data-visible]{transition:none}.hero-kb,.hero-kb[data-run]{animation:none;transform:none}.hero-progress-fill[data-run]{animation:none}}.aperture{background:var(--foreground);color:var(--background)}.aperture-stage{padding-block:var(--section-space-md);flex-direction:column;gap:40px;display:flex}.aperture-grid{grid-template-columns:minmax(0,1fr);align-items:center;gap:48px;display:grid}.aperture-text{flex-direction:column;gap:24px;display:flex}.aperture-link{align-self:flex-start;margin-top:8px}.aperture-window{aspect-ratio:4/5;background:color-mix(in srgb, var(--background) 6%, transparent);width:100%;max-width:520px;position:relative;overflow:hidden}.aperture-shutter,.aperture-hint{display:none}@media (min-width:1024px){.aperture-grid{grid-template-columns:minmax(0,1fr) 520px;gap:80px}}@supports (animation-timeline:view()){.aperture{animation:linear both aperture-progress;animation-timeline:view();animation-range:contain}}@keyframes aperture-progress{0%{--p:0}to{--p:1}}@media (min-width:1024px) and (prefers-reduced-motion:no-preference){html.js .aperture{--g:min(1, calc(var(--p) / .55));height:200svh}html.js .aperture-stage{box-sizing:border-box;justify-content:center;height:100svh;padding-block:96px 56px;position:sticky;top:0}html.js .aperture-text{opacity:calc((var(--p) - .5) * 4)}html.js .aperture-text:focus-within{opacity:1}html.js .aperture-shutter{background:var(--foreground);width:calc(50% - 60px);display:block;position:absolute;top:0;bottom:0}html.js .aperture-shutter-l{transform:translateX(calc(var(--g) * -100%));left:0}html.js .aperture-shutter-r{transform:translateX(calc(var(--g) * 100%));right:0}html.js .aperture-hint{font-size:var(--type-label-size);white-space:nowrap;line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--muted-foreground-inverse);opacity:calc(1 - var(--g) * 3);display:block;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}html.js .aperture-stage{position:sticky}}@property --p{syntax:"<number>";inherits:true;initial-value:0}.exhibition{padding-block:var(--section-space-md)}.exhibition-room+.exhibition-room{margin-top:var(--section-space-md)}.exhibition-stage{flex-direction:column;align-items:center;gap:24px;display:flex}.exhibition-head{align-self:stretch;margin-bottom:24px}.exhibition-skip{font-size:var(--type-label-size);white-space:nowrap;line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--muted-foreground);border-bottom:1px solid var(--border);align-self:flex-end;margin-right:24px;padding-bottom:4px;display:none}.exhibition-print{aspect-ratio:4/5;width:min(360px,72vw);box-shadow:0 1px 2px color-mix(in srgb, var(--foreground) 8%, transparent), 0 12px 32px color-mix(in srgb, var(--foreground) 10%, transparent);background:var(--secondary);position:relative}.exhibition-photo{position:absolute;inset:0;overflow:hidden}.exhibition-wall,.exhibition-frame,.exhibition-plate,.exhibition-bar{display:none}.exhibition-label{text-align:center;flex-direction:column;align-items:center;gap:6px;max-width:320px;padding-inline:24px;display:flex}@media (min-width:768px){.exhibition-skip{margin-right:64px}}@media (min-width:1024px) and (prefers-reduced-motion:no-preference){.exhibition{padding-block:var(--section-space-md) 0}.exhibition-room{--g:min(1, calc(var(--p) / .6));height:200svh;position:relative}@supports (animation-timeline:view()){.exhibition-room{animation:linear both exhibition-room;animation-timeline:view();animation-range:contain}}.exhibition-room+.exhibition-room{margin-top:0}.exhibition-stage{background:var(--background);height:100svh;display:block;position:sticky;top:0;overflow:hidden}.exhibition-head{z-index:4;opacity:calc(1 - var(--g) * 2);margin:0;position:absolute;top:96px;left:0;right:0}.exhibition-skip{z-index:6;background:var(--background);color:var(--foreground);margin-right:64px;padding:6px 10px 4px;display:block;position:absolute;top:104px;right:0}.exhibition-skip:not(:focus-visible){clip-path:inset(50%);border:0;width:1px;height:1px;margin:0;padding:0;overflow:hidden}.exhibition-print{aspect-ratio:auto;width:auto;box-shadow:none;background:0 0;position:absolute;inset:0}.exhibition-photo{transform:scale(calc(.5 + .5 * var(--g)));transform-origin:50%}.exhibition-wall{z-index:1;background:var(--background);display:block;position:absolute}.exhibition-wall-l,.exhibition-wall-r{width:calc(50% - 20svh);top:0;bottom:0}.exhibition-wall-l{transform:translateX(calc(var(--g) * -100%));left:0}.exhibition-wall-r{transform:translateX(calc(var(--g) * 100%));right:0}.exhibition-wall-t,.exhibition-wall-b{height:25svh;left:0;right:0}.exhibition-wall-t{transform:translateY(calc(var(--g) * -100%));top:0}.exhibition-wall-b{transform:translateY(calc(var(--g) * 100%));bottom:0}.exhibition-frame{z-index:2;width:40svh;height:50svh;box-shadow:0 1px 2px color-mix(in srgb, var(--foreground) 8%, transparent), 0 12px 32px color-mix(in srgb, var(--foreground) 10%, transparent);opacity:calc(1 - var(--g) * 4);pointer-events:none;display:block;position:absolute;top:25svh;left:calc(50% - 20svh)}.exhibition-label{z-index:5;text-align:left;max-width:240px;opacity:calc(1 - var(--g) * 2.5);align-items:flex-start;padding:0;position:absolute;bottom:25svh}.exhibition-room[data-side=right] .exhibition-label{left:calc(50% + 20svh + 48px)}.exhibition-room[data-side=left] .exhibition-label{text-align:right;align-items:flex-end;right:calc(50% + 20svh + 48px)}.exhibition-label:focus-within{opacity:1}.exhibition-count{display:none}.exhibition-plate{z-index:4;background:var(--background);width:380px;opacity:calc((var(--p) - .6) * 5);flex-direction:column;gap:10px;padding:28px 32px;display:flex;position:absolute;bottom:56px;left:64px}.exhibition-bar{z-index:3;opacity:calc(1 - var(--g) * 3);align-items:center;gap:24px;display:flex;position:absolute;bottom:56px;left:0;right:0}.exhibition-line{background:var(--border);flex:1;height:1px;overflow:hidden}.exhibition-line-fill{background:var(--foreground);transform-origin:0;height:100%;transform:scaleX(calc((var(--i) + var(--p)) / var(--n)));display:block}}@keyframes exhibition-room{0%{--p:0}to{--p:1}}.turntable{--sleeve:228px;--disc:210px;--out:.53;--turntable-slide:1.2s;grid-template-columns:minmax(0,1fr);row-gap:48px;display:grid}.turntable-text{flex-direction:column;gap:24px;max-width:400px;display:flex}.turntable-heading{font-size:var(--type-display-l);text-wrap:balance;line-height:1.05}.turntable-note{font-size:var(--type-body-l);text-wrap:pretty;line-height:1.6}.turntable-stage{flex-direction:column;gap:28px;min-width:0;display:flex}.record{--inside:calc((var(--sleeve) - var(--disc)) / 2);--x:0px;width:var(--sleeve);height:var(--sleeve);position:relative}.record[data-arrived]{--x:calc(var(--inside) + var(--disc) * .25)}.record[data-playing]{--x:calc(var(--inside) + var(--disc) * var(--out))}.record-sleeve{z-index:1;padding:calc(var(--sleeve) * .079);background:var(--secondary);box-shadow:0 1px 2px color-mix(in srgb, var(--foreground) 6%, transparent), 0 18px 40px color-mix(in srgb, var(--foreground) 10%, transparent);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.record-sleeve-top,.record-sleeve-genres{font-size:var(--type-label-size);line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--muted-foreground-panel)}.record-sleeve-top{white-space:nowrap;justify-content:space-between;gap:12px;display:flex}.record-sleeve-genres{white-space:pre-line}.record-sleeve-title{font-family:var(--font-editorial);font-size:calc(var(--sleeve) * .129);white-space:pre-line;color:var(--foreground);flex-direction:column;gap:10px;line-height:1.02;display:flex}.record-sleeve-rule{background:var(--accent);width:40px;height:1px}.record-disc{left:var(--inside);top:var(--inside);width:var(--disc);aspect-ratio:1;box-shadow:0 10px 28px color-mix(in srgb, var(--foreground) 14%, transparent);transform:translateX(var(--x));transition:transform var(--turntable-slide) var(--ease-slow);border-radius:50%;position:absolute}.record[data-settling]:not([data-playing]) .record-disc{transition-delay:.7s}.record-spin{background-color:var(--foreground);background-image:repeating-radial-gradient(circle at center, color-mix(in srgb, var(--background) 7%, transparent) 0 1px, transparent 1px 4px);box-shadow:inset 0 0 0 5px var(--foreground);animation:record-turn var(--dur-record-turn) linear infinite;border-radius:50%;animation-play-state:paused;position:absolute;inset:0}.record[data-playing] .record-spin{animation-play-state:running}@keyframes record-turn{to{transform:rotate(1turn)}}.record-label{background:var(--background);border-radius:50%;place-items:center;display:grid;position:absolute;inset:32%}.record-label:after{content:"";aspect-ratio:1;background:var(--foreground);border-radius:50%;width:6%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.record-crest{background-color:currentColor;display:block;-webkit-mask:url(/images/hos-logo.svg) 50%/contain no-repeat;mask:url(/images/hos-logo.svg) 50%/contain no-repeat}.record-label-crest{aspect-ratio:1;width:78%;color:var(--foreground)}@media (min-width:640px){.turntable{--sleeve:300px;--disc:270px;--out:.56}}@media (min-width:1024px){.turntable{--sleeve:380px;--disc:340px;grid-template-columns:400px minmax(0,1fr);align-items:center;column-gap:96px}.turntable-text{max-width:none}}@media (prefers-reduced-motion:reduce){.record-disc{transition:none}.record-spin{animation:none}}.record-player:focus{outline:none}.record-player{background:var(--secondary);border-radius:12px;position:relative;overflow:hidden}.record-player-placeholder{font-size:var(--type-label-size);white-space:nowrap;line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking);text-transform:uppercase;color:var(--muted-foreground-panel);position:absolute;top:20px;left:20px}.record-player-mount{visibility:hidden;position:absolute;inset:0}.record-player-mount[data-ready]{visibility:visible}.record-player-mount iframe,.record-player-frame{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.practice{--practice-flex-dur:.9s;--practice-cap-gap:14px;--practice-cap-line:30px;flex-direction:column;display:flex}.practice-sign{flex-direction:column;margin-top:18px;display:flex}.practice-logo{width:150px;height:auto;display:block}.practice-line{max-width:560px;font-size:var(--type-statement);margin-top:24px;line-height:1.35}.practice-business{max-width:420px;font-size:var(--type-body);margin-top:14px;line-height:1.6}.practice-work{margin-top:28px}.practice-action{margin-top:30px}.practice-panels{gap:8px;height:400px;display:flex}.practice-panel{min-width:0;color:var(--foreground);transition:flex-grow var(--practice-flex-dur) var(--ease-slow);flex-direction:column;flex:1 1 0;display:flex;position:relative}.practice-photo{background:var(--secondary);flex:1;display:block;position:relative;overflow:hidden}.practice-photo-zoom{transition:transform var(--practice-flex-dur) var(--ease-slow);position:absolute;inset:0}.practice-cap,.practice-shown{white-space:nowrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.practice-client{font-family:var(--font-editorial);font-size:var(--type-display-s);line-height:var(--practice-cap-line);text-overflow:clip;overflow:hidden}.practice-service{color:var(--muted-foreground);flex:none}.practice-shown{margin-top:var(--practice-cap-gap)}@media (max-width:1023.98px){.practice-panel{flex-grow:.5}.practice-panel[data-on],.practice-panels:not([data-active]) .practice-panel:first-child,.practice-panels[data-count="1"] .practice-panel{flex-grow:2.4}.practice-panel .practice-cap{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (min-width:1024px){.practice{--practice-block:1144px;padding-inline:max(4rem, calc((100% - var(--practice-block)) / 2));grid-template:"label work"".work"1fr"sign work""action work"/380px minmax(0,620px);column-gap:144px;display:grid}.practice[data-panels="0"]{grid-template:"label""sign""action"/minmax(0,560px)}.practice-label{grid-area:label}.practice-sign{grid-area:sign;margin-top:28px}.practice-logo{width:200px}.practice-line{font-size:var(--type-statement);margin-top:26px}.practice-action{grid-area:action;margin-top:26px}.practice:not([data-panels="0"]) .practice-action{padding-bottom:calc(var(--practice-cap-gap) + var(--practice-cap-line))}.practice-work{grid-area:work;margin-top:0}.practice-panels{gap:12px;height:clamp(440px,41.875vw,536px)}.practice-cap{margin-top:var(--practice-cap-gap);overflow:hidden}.practice-cap .practice-client{flex:none}.practice-cap .practice-service{opacity:0;min-width:0;transition:opacity var(--dur-page) var(--ease-slow);flex:0 auto;overflow:hidden}.practice-panel[data-on] .practice-service{opacity:1}.practice-panels[data-active] .practice-panel{flex-grow:.55}.practice-panels[data-active] .practice-panel[data-on]{flex-grow:1.9}.practice-panel[data-on] .practice-photo-zoom{transform:scale(1.03)}.practice-shown{display:none}}@media (prefers-reduced-motion:reduce){.practice-panel,.practice-photo-zoom,.practice-cap .practice-service{transition:none}.practice-panel[data-on] .practice-photo-zoom{transform:none}}.filmstrip-viewport{scrollbar-width:none}.filmstrip-viewport::-webkit-scrollbar{display:none}
