/* Binoki interaction contract, review 04. Uses approved revision 03 foundations. */
:root{--ui-duration:160ms;--ui-ease:ease-out;--ui-control-radius:var(--binoki-radius-control);--ui-control-height:var(--binoki-size-touch-min);--ui-control-x:var(--binoki-spacing-24);--ui-control-y:var(--binoki-spacing-10);--ui-control-gap:var(--binoki-spacing-8)}
.button{--button-bg:var(--binoki-material-selected);--button-fg:var(--fg);--button-hover:color-mix(in srgb,var(--fg) 16%,transparent);--button-pressed:color-mix(in srgb,var(--fg) 24%,transparent);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-control-gap);min-height:var(--ui-control-height);max-width:100%;padding:var(--ui-control-y) var(--ui-control-x);border:0;border-radius:var(--ui-control-radius);background:var(--button-bg);color:var(--button-fg);font:var(--binoki-weight-medium) var(--binoki-size-body)/var(--binoki-line-body) var(--binoki-family-latin),var(--binoki-family-tc),sans-serif;text-align:center;text-decoration:none;cursor:pointer;vertical-align:middle;transition:background-color var(--ui-duration) var(--ui-ease),box-shadow var(--ui-duration) var(--ui-ease);box-shadow:none}
.button--primary{--button-bg:var(--binoki-brand-red);--button-fg:var(--binoki-brand-white);--button-hover:color-mix(in srgb,var(--binoki-brand-red) 92%,var(--binoki-brand-white));--button-pressed:color-mix(in srgb,var(--binoki-brand-red) 88%,var(--binoki-brand-ink));box-shadow:none}
.button--quiet{--button-bg:transparent;box-shadow:none}
.button--compact{padding-inline:var(--binoki-spacing-12)}
.button--icon{width:var(--ui-control-height);height:var(--ui-control-height);padding:0;flex-shrink:0}
.button .icon{width:var(--binoki-size-icon-small);height:var(--binoki-size-icon-small)}
.button--icon .icon{width:var(--binoki-size-icon-medium);height:var(--binoki-size-icon-medium)}
@media(hover:hover) and (pointer:fine){.button:not([data-preview-state]):not(:disabled):not([aria-disabled=true]):hover{background:var(--button-hover)}}
.button[data-preview-state=hover]{background:var(--button-hover)}
.button:not([data-preview-state]):not(:disabled):not([aria-disabled=true]):active,.button[data-preview-state=pressed]{background:var(--button-pressed);box-shadow:none}
.button:disabled,.button[aria-disabled=true]{cursor:default}
.button:disabled{opacity:.45}
.button--progress::before{content:"";display:block;flex:0 0 16px;width:16px;height:16px;pointer-events:none}
.button--progress::after{content:"";display:block;flex:0 0 16px;width:16px;height:16px;box-sizing:border-box;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;visibility:hidden}
.button--progress[aria-busy=true]::after{visibility:visible;animation:ui-spin .8s linear infinite}
.button--icon[aria-busy=true]>.icon{visibility:hidden}
.button--icon[aria-busy=true]::after{content:"";position:absolute;inset:14px;box-sizing:border-box;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ui-spin .8s linear infinite}
@keyframes ui-spin{to{transform:rotate(360deg)}}
.text-link{text-decoration:none;font-weight:600;border-radius:var(--binoki-radius-action);background:var(--binoki-material-selected);box-decoration-break:clone;-webkit-box-decoration-break:clone}
.text-link:hover{background:color-mix(in srgb,var(--fg) 16%,transparent)}
.frosted-card{position:relative;isolation:isolate;width:var(--binoki-size-card-max);max-width:100%;padding:var(--binoki-spacing-24);border-radius:var(--radius);background:var(--surface);color:var(--fg);border:0;box-shadow:0 var(--binoki-material-shadow-y) var(--binoki-material-shadow-radius) var(--binoki-material-shadow-color);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur))}
/* Full-width inset action: card radius 24 - inset 12 = radius 12, without border. */
.frosted-card>.card-action{--inset:var(--binoki-spacing-12);--outset:calc(var(--binoki-spacing-24) - var(--inset));--ui-control-radius:max(0px,calc(var(--radius) - var(--inset)));display:flex;max-width:none;width:calc(100% + 2 * var(--outset));margin:var(--binoki-spacing-16) calc(-1 * var(--outset)) calc(-1 * var(--outset))}
a.frosted-card{display:block;transition:background-color var(--ui-duration) var(--ui-ease);cursor:pointer}
a.frosted-card:hover{background:var(--binoki-material-fallback)}
a:focus-visible,button:focus-visible,.button[data-preview-state=focus]{outline:none!important;background:var(--binoki-brand-ink)!important;color:var(--binoki-brand-white)!important;box-shadow:none!important}
dialog.frosted-card{position:fixed;background:var(--binoki-material-fallback);max-width:calc(100% - 2 * var(--binoki-spacing-24));max-height:calc(100dvh - 2 * var(--binoki-spacing-24))}
@supports not(backdrop-filter:blur(1px)){.frosted-card{background:var(--binoki-material-fallback)}}
@media(prefers-reduced-transparency:reduce){.frosted-card{background:var(--binoki-material-fallback);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.button,a.frosted-card{transition:none}.button[aria-busy=true]::after{animation:none}html{scroll-behavior:auto!important}}

@media(forced-colors:active){.button,.frosted-card{border:1px solid ButtonText}.frosted-card>.card-action{--outset:calc(var(--binoki-spacing-24) + 1px - var(--inset))}a:focus-visible,button:focus-visible,.button[data-preview-state=focus]{outline:2px solid Highlight!important;outline-offset:2px}.button--progress[aria-busy=true]::after,.button--icon[aria-busy=true]::after{border-color:ButtonText;border-right-color:transparent}}

/* Single-action editorial cards: one hit target, one visual response. */
.feature-card{position:relative;isolation:isolate;overflow:visible;display:block;min-height:480px;border:0;border-radius:24px;background:var(--binoki-brand-ink);color:white;text-decoration:none}
.feature-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:-2}
.feature-card::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(20,26,20,.86),rgba(20,26,20,.3) 55%,rgba(20,26,20,.15));z-index:-1;pointer-events:none}
.feature-copy{padding:32px 32px 96px}.feature-copy .meta{margin-bottom:16px}.feature-copy h3{font-size:32px;line-height:1.3;font-weight:600;margin:0 0 16px}.feature-copy>p:not(.meta){font-size:16px;line-height:26px;max-width:28em}
.card-trigger{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:pointer;transition:background-color 160ms ease-out}
.card-symbol{position:absolute;bottom:20px;right:20px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font:500 26px/1 sans-serif;background:var(--binoki-brand-paper);color:var(--binoki-brand-ink);pointer-events:none}
@media(hover:hover) and (pointer:fine){.card-trigger:hover{background:rgba(255,255,255,.08)}a.feature-card:hover::before{background:rgba(33,31,27,.04)}}
.card-trigger:active{background:rgba(255,255,255,.14)}
.card-trigger:focus-visible,a.feature-card:focus-visible{background:transparent!important;color:inherit!important;outline:2px solid var(--binoki-brand-red)!important;outline-offset:4px;box-shadow:none!important}
.feature-card--editorial{background:rgba(255,255,255,.6);color:var(--binoki-brand-ink);min-height:360px}.feature-card--editorial::before{background:transparent}.card-destination{position:absolute;left:32px;right:20px;bottom:20px;min-height:40px;display:flex;align-items:center;padding-right:56px;font-weight:500}.card-destination .card-symbol{right:0;bottom:0;background:var(--binoki-brand-ink);color:white}
dialog.reading-panel{width:760px;max-width:calc(100% - 48px);max-height:calc(100dvh - 48px);padding:40px;border-radius:24px;overflow:auto;background:var(--binoki-brand-paper)}
.reading-panel .dialog-toolbar{position:sticky;top:0;z-index:1}.reading-panel .dialog-close{background:var(--binoki-brand-ink);color:white}.reading-panel #dialog-title,.reading-panel>h2{font-size:40px;line-height:1.3;margin:12px 0 24px}.reading-panel>p{font-size:16px;line-height:28px}.reading-panel>a.button{margin-top:24px}.project-atmosphere{margin:32px 0}.project-atmosphere img{width:100%;max-height:320px;object-fit:cover;border-radius:16px}.project-atmosphere figcaption{margin-top:8px}
@media(max-width:600px){.feature-card{min-height:440px}.feature-copy{padding:24px 24px 88px}.feature-copy h3{font-size:28px}.card-destination{left:24px}dialog.reading-panel{padding:24px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px)}.reading-panel #dialog-title,.reading-panel>h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.card-trigger{transition:none}}
@media(forced-colors:active){.feature-card{background:Canvas;color:CanvasText;border:1px solid CanvasText}.feature-card::before,.feature-image{display:none}.card-symbol{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}.card-trigger:focus-visible,a.feature-card:focus-visible{outline-color:Highlight!important}}

/* Product media is shown uncropped, with its original promotional typography. */
.feature-card--product{display:flex;flex-direction:column;min-height:680px;background:#fff;color:var(--binoki-brand-ink);padding-bottom:72px}
.feature-card--product::before{display:none}.feature-card--product .feature-copy{order:0;padding:32px 32px 16px}.feature-card--product .feature-copy h3{font-size:28px}.feature-card--product .feature-image{position:static;order:1;z-index:auto;width:100%;height:420px;object-fit:contain;border-radius:0}.feature-card--product .card-symbol{background:var(--binoki-brand-ink);color:white}.feature-card--product .card-trigger:hover{background:rgba(33,31,27,.025)}.feature-card--product .card-trigger:active{background:rgba(33,31,27,.06)}
.project-media{margin:32px 0}.project-media img{display:block;width:auto;max-width:100%;height:auto;max-height:620px;margin:auto;object-fit:contain;border-radius:0}.project-media figcaption{margin-top:12px;text-align:center}
@media(max-width:600px){.feature-card--product{min-height:620px}.feature-card--product .feature-copy{padding:24px 24px 16px}.feature-card--product .feature-image{height:360px}}
@media(forced-colors:active){.feature-card--product{background:Canvas;color:CanvasText}}

/* Modal backdrop is stronger than the photographic readability scrim. */
dialog::backdrop{background:rgba(33,31,27,.56)}

/* Today editorial treatment: one illustrated story, one disclosure target. */
.feature-card--today{height:540px;min-height:0;display:flex;flex-direction:column;justify-content:flex-end;color:var(--binoki-brand-white);background:var(--binoki-brand-ink)}
.feature-card--today::before{background:linear-gradient(180deg,transparent 25%,rgba(20,26,20,.12) 40%,rgba(20,26,20,.88) 82%)}
.feature-card--today .feature-image{object-position:center 42%}
.feature-card--today .feature-copy{padding:32px 32px 24px}
.feature-card--today .feature-copy .meta{margin-bottom:12px}
.feature-card--today .feature-copy h3{font-size:28px;line-height:1.4;margin:0;letter-spacing:-.025em}
.work-identity{display:flex;align-items:center;min-height:96px;padding:20px 116px 20px 24px;background:rgba(20,26,20,.64);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:0 0 24px 24px}
.work-name{font-weight:600;font-size:16px;line-height:24px}.work-subtitle{font-size:12px;line-height:20px;color:#e4e3dc}
.story-affordance{position:absolute;bottom:26px;right:20px;display:flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:10px 16px;border-radius:12px;background:var(--binoki-brand-paper);color:var(--binoki-brand-ink);font-size:14px;line-height:24px;font-weight:500;pointer-events:none}
.story-affordance>span{font-size:18px}
dialog.today-panel{padding:0;width:760px;backdrop-filter:none;-webkit-backdrop-filter:none}
.today-panel .dialog-toolbar{height:0;margin:0;top:16px;z-index:3;justify-content:flex-end;padding-right:16px}
.today-panel .dialog-close{flex-shrink:0}
.story-hero{position:relative;isolation:isolate;min-height:440px;display:flex;align-items:flex-end;color:var(--binoki-brand-white)}
.story-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.story-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(20,26,20,.86));z-index:-1}
.story-heading{padding:88px 40px 32px}.story-heading #dialog-headline{font-size:36px;line-height:1.4;white-space:pre-line;margin:0;letter-spacing:-.025em}
.story-body{padding:32px 40px 40px}.today-panel #dialog-title{font-size:20px;line-height:28px;margin:0 0 16px}.story-body>p{font-size:16px;line-height:28px}.story-body>.button{margin-top:24px}.story-body>h3{margin-bottom:12px}
@media(max-width:600px){.feature-card--today{height:500px;min-height:0}.feature-card--today .feature-copy{padding:24px}.feature-card--today .feature-copy h3{font-size:26px}.work-identity{padding-left:24px}.story-hero{min-height:360px}.story-heading{padding:80px 24px 24px}.story-heading #dialog-headline{font-size:28px}.story-body{padding:24px}dialog.today-panel{padding:0}}
@media(prefers-reduced-transparency:reduce){.work-identity{background:var(--binoki-brand-ink);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(forced-colors:active){.feature-card--today,.story-hero{background:Canvas;color:CanvasText}.story-hero::before,.story-hero>img{display:none}.work-identity{background:Canvas;backdrop-filter:none}.work-subtitle{color:CanvasText}.story-affordance{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}}

/* Product screenshots keep their original ratio; navigation never auto-plays. */
.project-gallery,.project-press{margin-top:40px;min-width:0}
.gallery-heading,.gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.gallery-heading{margin-bottom:16px}.gallery-heading h3{margin:0}.gallery-footer{margin-top:16px}.gallery-controls{display:flex;gap:8px}
.screenshot-track{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:8px}
.screenshot-track figure{flex:0 0 min(72%,260px);margin:0;scroll-snap-align:start}
.screenshot-track::after{content:"";flex:0 0 max(0px,calc(28% - 16px),calc(100% - 276px))}
.screenshot-track img{width:100%;height:auto;object-fit:contain;background:white}
.screenshot-track:focus-visible{outline:2px solid var(--binoki-brand-red);outline-offset:4px;border-radius:4px}
.project-press ul{display:grid;gap:12px;list-style:none;margin:16px 0 0;padding:0}.press-link{display:block;padding:24px;border-radius:16px;background:rgba(33,31,27,.045);transition:background-color 160ms ease-out}.press-link .press-headline{font-size:18px;line-height:1.6;font-weight:500;margin-top:8px}.press-note{margin-top:8px}
@media(hover:hover) and (pointer:fine){.press-link:hover{background:rgba(33,31,27,.09)}}
@media(max-width:600px){.press-link{padding:20px}.gallery-footer{gap:8px}}
@media(prefers-reduced-motion:reduce){.press-link{transition:none}}
@media(forced-colors:active){.press-link{border:1px solid LinkText}.screenshot-track:focus-visible{outline-color:Highlight}}

.press-media{margin:0 0 16px}.press-media img{display:block;width:100%;height:auto;border-radius:8px;background:white}.press-media figcaption{margin-top:8px}
.press-syndication{display:flex;align-items:center;min-height:44px;padding:10px 24px;margin-top:4px;border-radius:12px;font-size:14px;background:rgba(33,31,27,.045)}
@media(hover:hover) and (pointer:fine){.press-syndication:hover{background:rgba(33,31,27,.09)}}

/* Editorial achievement labels supplied by the creator. */
/* A single compact achievement surface; never a separate control. */
.work-achievements{position:absolute;top:20px;left:20px;max-width:calc(100% - 40px);display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:6px 10px;border-radius:10px;background:var(--binoki-brand-paper);color:var(--binoki-brand-ink);pointer-events:none}
.work-rank,.work-downloads{display:flex;align-items:center;gap:5px;margin:0;padding:0;background:none;font-size:12px;line-height:20px;font-weight:500;white-space:nowrap}
.work-achievements svg,.detail-achievements svg{width:14px;height:14px;flex-shrink:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.detail-achievements{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 24px;color:var(--binoki-brand-ink)}
.detail-achievements[hidden]{display:none}
.detail-achievements p{display:flex;align-items:center;gap:6px;font-size:14px;line-height:24px;margin:0}

/* App identity is shared between the editorial cover and store destination. */
.app-icon{display:block;flex-shrink:0;object-fit:cover;border-radius:22%;background:var(--binoki-brand-paper)}
.work-identity{gap:12px}.work-identity>.app-icon{width:40px;height:40px}.work-identity>div{min-width:0}
.app-store-row{display:flex;align-items:center;gap:16px;margin-bottom:24px}.app-store-row>.app-icon{width:56px;height:56px}.app-store-identity{flex:1;min-width:0}.today-panel .app-store-row #dialog-title{margin:0 0 4px;font-size:20px;line-height:28px}.app-store-action{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.app-get{min-width:80px;border-radius:22px;color:var(--binoki-brand-red);font-weight:600}.app-store-action>.meta{font-size:12px;line-height:20px}
@media(max-width:400px){.app-store-row{gap:12px;flex-wrap:wrap}.app-store-row>.app-icon{width:48px;height:48px}.app-store-identity{flex-basis:calc(100% - 60px)}.app-store-action{flex-direction:row;gap:12px;margin-left:60px}.work-identity{gap:8px}.work-identity>.app-icon{width:32px;height:32px}}

/* Brand work shares the existing editorial card, with a landscape crop. */
.brand-work-card{margin-top:24px;height:400px}
.brand-work-card .feature-image{object-position:center 48%}
.brand-work-card .feature-copy>p:not(.meta){margin-top:8px}
a.feature-card--today.brand-work-card:hover::before{background:linear-gradient(180deg,transparent 25%,rgba(20,26,20,.12) 40%,rgba(20,26,20,.88) 82%)}
@media(hover:hover) and (pointer:fine){.brand-work-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:transparent;transition:background-color 160ms ease-out}.brand-work-card:hover::after{background:rgba(255,255,255,.08)}}
@media(max-width:700px){.brand-work-card{height:400px}.brand-work-card .feature-image{object-position:60% center}}
@media(prefers-reduced-motion:reduce){.brand-work-card::after{transition:none}}

.work-identity>.vtaiwan-icon{padding:4px;border-radius:10px;background:var(--binoki-brand-paper)}

/* Portfolio sections use the same landscape editorial card as vTaiwan. */
.portfolio-bento{padding-bottom:24px}.portfolio-bento .brand-work-card{margin-top:0;height:auto;min-height:440px}.portfolio-bento .feature-copy{padding-top:48px}.portfolio-bento .feature-copy .bento-description{max-width:42em;margin-top:12px;font-size:16px;line-height:28px}.binoki-work-card .feature-image{object-position:center 53%}.writing-work-card .feature-image{object-position:center}

/* Brand detail panels share the app panel's native dialog and motion. */
.brand-detail .story-heading h2{font-size:36px;line-height:1.4;margin:0}.brand-detail .story-body>p+p{margin-top:16px}.brand-mark{margin:32px 0 0;padding:32px;background:var(--binoki-brand-paper);border-radius:16px}.brand-mark img{display:block;width:240px;max-width:100%;height:auto;margin:auto}.brand-mark figcaption{text-align:center;margin-top:20px}
#studio .feature-copy{padding-block:48px 32px}#writing{padding-bottom:96px}
/* Single personal hero with a floating glass navigation. */
.glass-nav{position:absolute;z-index:5;top:24px;left:50%;transform:translateX(-50%);width:calc(100% - 48px);max-width:1040px;min-height:64px;padding:8px 12px 8px 20px;gap:16px;border-radius:999px;background:rgba(246,242,233,.88);color:#211f1b;backdrop-filter:blur(24px) saturate(120%);-webkit-backdrop-filter:blur(24px) saturate(120%);box-shadow:0 8px 32px rgba(20,26,20,.12)}
.glass-nav .brand{font-size:20px;line-height:28px;min-height:44px}.glass-nav .brand img{width:24px;height:32px}
.glass-nav nav{gap:4px}.glass-nav .button{border-radius:999px;min-height:44px;padding:10px 16px;--button-fg:#211f1b;--button-hover:rgba(33,31,27,.09);--button-pressed:rgba(33,31,27,.15)}
.personal-hero{min-height:100svh;background:#333a2f;color:#fff}
.personal-hero:after{background:linear-gradient(180deg,rgba(20,26,20,.1),transparent 45%,rgba(20,26,20,.24))}
.personal-hero .scene-content{min-height:100svh;justify-content:flex-end;padding-top:160px;padding-bottom:48px}
.personal-hero .hero-place{width:440px;max-width:100%;background:#211f1b;color:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
.hero-place h1{font-size:32px;line-height:1.4;margin:0 0 16px;letter-spacing:-.025em}
.hero-place .card-action{--button-bg:#f6f2e9;--button-fg:#211f1b;--button-hover:#e6e2d9;--button-pressed:#d6d2c9}
.personal-hero a:focus-visible,.glass-nav a:focus-visible{outline:2px solid #fff!important;outline-offset:4px;box-shadow:0 0 0 4px #211f1b!important}
@media(max-width:700px){.glass-nav{top:16px;width:calc(100% - 32px);padding:8px 12px;gap:4px;flex-wrap:nowrap}.glass-nav .brand{font-size:16px;gap:4px}.glass-nav .brand img{width:20px;height:28px}.glass-nav .button{padding:10px;font-size:14px}.personal-hero .scene-content{padding-top:128px;padding-bottom:32px}.hero-place h1{font-size:28px}.brand-detail .story-heading h2{font-size:28px}#writing{padding-bottom:64px}}
@media(max-width:360px){.glass-nav{width:calc(100% - 24px);padding-inline:8px}.glass-nav .brand{font-size:14px}.glass-nav nav{gap:0}.glass-nav .button{padding-inline:8px}}
@media(prefers-reduced-transparency:reduce){.glass-nav{background:#f6f2e9;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(forced-colors:active){.glass-nav,.personal-hero .hero-place{background:Canvas;color:CanvasText}.glass-nav{border:1px solid CanvasText}.personal-hero a:focus-visible,.glass-nav a:focus-visible{outline-color:Highlight!important}}
/* Keep the keyboard skip link outside document flow. */
.skip.button{position:fixed;z-index:10}
/* An invitation to enter, revealed once without intercepting scrolling. */
.hero-place h1{font-size:26px;line-height:1.45;margin-bottom:12px}
.hero-place .card-action span{transition:translate 160ms ease-out}
@media(hover:hover){.hero-place .card-action:hover span{translate:3px 0}}
.hero-place .card-action:focus-visible span{translate:3px 0}
.hero-waiting .glass-nav,.hero-waiting .hero-place{opacity:0;pointer-events:none}
.hero-waiting .glass-nav{translate:0 -20px}.hero-waiting .hero-place{translate:0 24px}
.hero-entered .glass-nav,.hero-entered .hero-place{transition:opacity 360ms ease-out,translate 360ms cubic-bezier(.2,.7,.2,1);opacity:1;translate:0 0}
@media(prefers-reduced-motion:reduce){.hero-entered .glass-nav,.hero-entered .hero-place,.hero-place .card-action span{transition:none;translate:none}}

.hero-waiting main>section:not(#home),.hero-waiting main>.outro,.hero-waiting footer{display:none}
.hero-waiting .personal-hero{height:100svh}
.hero-waiting .skip:not(:focus){visibility:hidden}
/* Keep the foreground character clear of the introduction. */
.personal-hero .hero-place{align-self:flex-end}
@media(max-width:600px){.personal-hero .scene-content{justify-content:flex-start}.personal-hero .hero-place{align-self:center}}
/* Align the introduction's center with Bino in the foreground. */
@media(min-width:601px){.personal-hero .hero-place{position:absolute;right:24px;top:75%;transform:translateY(-50%)}}
