@font-face{font-family:RoomSans;src:local("Avenir Next"),local("Avenir"),local("Helvetica Neue");font-display:swap}
:root{color-scheme:light;--ink:#282d29;--muted:#696e66;--paper:#f7f6f2;--line:#242e241b;--accent:#9b502c;--scene:#e7e5e0;--panel-width:0px;font-family:RoomSans,"PingFang SC","Microsoft YaHei",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--scene);color:var(--ink);overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.42}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,#viewer:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{border:0}a{color:inherit}.skip-link{position:fixed;z-index:100;top:-80px;left:24px;background:var(--paper);padding:14px 22px}.skip-link:focus{top:16px}
.masthead{position:fixed;z-index:10;inset:30px 34px auto;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.masthead>*{pointer-events:auto}.wordmark{display:flex;align-items:center;gap:13px;text-decoration:none}.monogram{font:500 44px/1 Georgia,serif;letter-spacing:-6px;transform:translateY(-2px)}.monogram>span{color:var(--accent);padding-right:5px}.wordmark strong{display:block;font-size:15px;font-weight:600;letter-spacing:.17em;line-height:1.5}.wordmark-sub{display:block;font-size:12px;letter-spacing:.18em;color:var(--muted);line-height:1.6}.music-button{display:flex;align-items:center;gap:12px;padding:10px 16px 10px 10px;border:1px solid #383c3029;border-radius:50px;background:#f8f7f2d9;box-shadow:0 4px 20px #22291d06}.mini-record{display:block;width:34px;height:34px;border-radius:50%;background:repeating-radial-gradient(circle at center,#292d29 0 2px,#41433b 2.6px 3px);position:relative}.mini-record:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#c48c63;border:3px solid #e9c9a1}.music-copy{text-align:left;display:grid;gap:3px}.music-copy>span{font-size:12px;letter-spacing:.03em}.music-copy small{font-size:12px;color:var(--muted)}.music-button>svg{margin-left:9px}.music-button.is-playing .mini-record{animation:record-spin 5s linear infinite}@keyframes record-spin{to{transform:rotate(1turn)}}
.brand-lockup{display:block;width:220px;height:auto;max-width:38vw;transition:filter .25s ease,opacity .2s ease}.wordmark:hover .brand-lockup{opacity:.72}.wordmark:focus-visible{border-radius:2px}
#viewer{position:fixed;inset:0 var(--panel-width) 0 0;outline-offset:-4px;overflow:hidden}#room-canvas{display:block;width:100%;height:100%;touch-action:none;opacity:0;transition:opacity .45s ease}#viewer.is-ready #room-canvas{opacity:1}#room-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.82;filter:saturate(.78);transition:opacity .45s ease;pointer-events:none}#viewer.is-ready #room-poster{opacity:0}.load-error{position:absolute;inset:40% auto auto 50%;transform:translateX(-50%);min-width:290px;max-width:85vw;padding:26px;background:var(--paper);box-shadow:0 12px 60px #0002;text-align:center;border-radius:10px}.load-error p{margin:0 0 8px;font-size:20px}.load-error span{display:block;font-size:14px;color:var(--muted);line-height:1.6}.text-button{background:var(--ink);color:var(--paper);padding:11px 20px;border-radius:24px;font-size:14px;margin-top:18px}
.place-caption{position:fixed;z-index:3;left:34px;bottom:35px;max-width:340px;pointer-events:none}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--muted)}h1{font-weight:500;font-size:24px;letter-spacing:.02em;margin:10px 0 8px;line-height:1.25}.place-caption p{font-size:13px;line-height:1.7;margin:0;color:var(--muted)}.room-navigation{position:fixed;z-index:6;left:calc((100% - var(--panel-width))/2);bottom:32px;transform:translateX(-50%);display:flex;align-items:center;padding:6px;gap:3px;border:1px solid #40432e18;border-radius:20px;background:#fbfaf6ed;box-shadow:0 7px 32px #25341b0e}.room-navigation button{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;padding:10px 17px;border-radius:14px;min-width:62px;font-size:12px;line-height:1.25;transition:background .18s,color .18s}.room-navigation button:hover{background:#e6e5dd}.room-navigation button[aria-pressed=true]{background:var(--ink);color:var(--paper)}svg{display:block}.room-navigation svg,.icon-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.nav-divider{width:1px;height:30px;background:var(--line);margin:0 4px}.view-tools{position:fixed;z-index:6;right:calc(34px + var(--panel-width));bottom:39px;display:flex;gap:7px}.icon-button{display:grid;place-items:center;border:1px solid #41483120;width:40px;height:40px;border-radius:50%;background:#fbfaf6d9}.icon-button:hover{background:var(--paper)}.help-panel{position:fixed;z-index:12;right:34px;bottom:97px;padding:23px;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 40px #0001;border-radius:14px;max-width:calc(100vw - 36px)}.help-panel h2{font-size:17px;font-weight:500;margin:0 0 15px}.help-panel p{font-size:13px;margin:12px 0 0;color:var(--muted)}kbd{font:inherit;color:var(--ink);display:inline-block;background:#ebece5;padding:3px 7px;border-radius:4px;min-width:47px;text-align:center;margin-right:7px}.notice{position:fixed;z-index:30;left:50%;bottom:134px;transform:translateX(-50%);border-radius:50px;background:var(--ink);color:var(--paper);padding:13px 21px;font-size:14px;text-align:center;max-width:90vw}.noscript-message{position:fixed;top:35%;left:10%;right:10%;background:var(--paper);padding:24px;text-align:center;z-index:30}
/* A translucent hint follows the pointer without covering the room at rest. */
.object-tooltip{position:absolute;left:0;top:0;pointer-events:none;z-index:4;display:flex;align-items:center;gap:12px;padding:9px 13px;border:1px solid #ffffff66;border-radius:9px;background:rgba(247,246,242,.66);color:#28312b;box-shadow:0 3px 14px #25301f0a;max-width:calc(100% - 20px);white-space:nowrap;font-size:.875rem;line-height:1.4;transition:opacity .12s ease-out}
#hover-action{font-size:.75rem;color:#50594d;padding-left:11px;border-left:1px solid #28312b26}
@media(hover:none){.object-tooltip{display:none!important}}

[hidden]{display:none!important}@media(min-width:1440px){.masthead{inset:38px 46px auto}.place-caption{left:46px;bottom:42px}.room-navigation{bottom:40px}.view-tools{right:46px;bottom:47px}}@media(max-width:1100px){.place-caption{bottom:135px;max-width:300px}.place-caption h1{font-size:21px}.place-caption p{font-size:12px}.view-tools{bottom:48px;right:20px}.room-navigation button{padding-inline:14px}}@media(max-width:640px){.masthead{inset:20px 20px auto}.monogram{font-size:37px}.wordmark{gap:10px}.wordmark strong{font-size:13px;letter-spacing:.13em}.wordmark-sub{font-size:11px}.music-button{padding:7px;gap:0}.music-copy,.music-button>svg{display:none}.mini-record{width:31px;height:31px}.mini-record:after{inset:10.5px}.place-caption{left:22px;bottom:calc(133px + env(safe-area-inset-bottom));max-width:calc(100% - 44px)}.eyebrow{font-size:10px}.place-caption h1{font-size:20px;margin-top:8px}.place-caption p{font-size:12px}.room-navigation{bottom:calc(24px + env(safe-area-inset-bottom));border-radius:18px;gap:0;padding:5px}.room-navigation button{padding:9px 13px;min-width:52px;font-size:11px;gap:5px}.room-navigation svg{width:20px;height:20px}.nav-divider{margin:0 3px}.view-tools{right:19px;bottom:calc(146px + env(safe-area-inset-bottom));gap:5px}.view-tools #reset-view{display:none}.icon-button{width:34px;height:34px}.help-panel{bottom:200px;right:18px}.place-caption p{max-width:calc(100% - 36px)}.notice{bottom:220px}.object-tooltip{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}}

/* Object stories remain beside the live room, with the same navigation available. */
.music-copy>span,.place-caption p,.room-navigation button,.help-panel p{font-size:14px}
.icon-button{width:44px;height:44px}
.place-caption{bottom:162px;max-width:min(460px,calc(100vw - var(--panel-width) - 80px))}
.place-caption h1{font-size:24px}
.zone-items{position:fixed;z-index:5;left:34px;bottom:116px;display:flex;gap:7px;max-width:calc(100vw - var(--panel-width) - 68px);overflow-x:auto;padding:4px 3px 7px;scrollbar-width:thin;scrollbar-color:#8886 transparent}
.zone-items button{flex:none;padding:10px 14px;min-height:42px;border-radius:24px;font-size:14px;background:#faf9f2ed;border:1px solid #353c2926;white-space:nowrap;transition:background .18s,color .18s}
.zone-items button:hover{background:#fff}.zone-items button[aria-expanded=true]{background:var(--accent);color:white;border-color:var(--accent)}
.zone-items:focus-within{overflow-x:auto;flex-wrap:nowrap}
.view-tools{right:calc(34px + var(--panel-width))}.help-panel{right:calc(34px + var(--panel-width))}
body.has-details{--panel-width:400px}
.has-details .place-caption{display:none}
.details-panel{position:fixed;z-index:8;inset:0 0 0 auto;width:var(--panel-width);background:var(--paper);border-left:1px solid #55583c1c;display:flex;flex-direction:column;padding-top:91px;box-shadow:-12px 0 60px #262b1806;animation:panel-enter .22s ease-out}
@keyframes panel-enter{from{transform:translateX(30px);opacity:0}to{transform:translateX(0);opacity:1}}
.detail-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 27px 16px;flex:none}
.detail-top .eyebrow{font-size:13px;letter-spacing:.1em}.detail-top .icon-button{width:38px;height:38px;background:transparent;border-color:var(--line)}
.detail-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(30px,env(safe-area-inset-bottom));scrollbar-width:thin;scrollbar-color:#aaa6 transparent}
.detail-image-wrap{margin:0 27px 27px;background:#e6e2d9;border-radius:3px;overflow:hidden}
.detail-image-wrap img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.detail-image-wrap.is-poster{background:#dedbd3}.detail-image-wrap.is-poster img{height:300px;aspect-ratio:auto;object-fit:contain;padding:16px}
.detail-copy{padding:0 29px}.detail-copy>.eyebrow{font-size:11px;letter-spacing:.1em}
.detail-copy h2{font-size:26px;font-weight:500;line-height:1.4;letter-spacing:-.03em;margin:10px 0 20px;outline:none}
.detail-copy>p{font-size:16px;line-height:1.9;margin:0;color:#596052}
.detail-facts{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none;margin:22px 0 28px}.detail-facts li{font-size:12px;padding:6px 10px;background:#eaece4;border-radius:4px;color:#5b6254}
.detail-copy>p.detail-hint{font-size:13px;line-height:1.7;color:#737966;margin-top:30px}
.back-button{display:flex;align-items:center;gap:8px;min-height:44px;background:none;font-size:14px;padding:8px 0;border-bottom:1px solid #55583c32;margin-top:15px}.back-button>span{font-size:22px}
.record-player{padding:20px 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.track-heading{display:flex;align-items:center;gap:12px}.track-heading h3{font-size:16px;font-weight:500;margin:0 0 5px}.track-heading p{font-size:12px;color:var(--muted);margin:0}
.track-message{font-size:14px;line-height:1.65;color:var(--muted);margin:16px 0}.player-controls{display:flex;align-items:center;gap:19px}.player-controls .text-button{margin:0;min-height:44px;white-space:nowrap}.player-controls .text-button:disabled{opacity:1;background:#e2e3db;color:#6c7166}
.volume-label{display:grid;gap:6px;flex:1;font-size:12px;color:var(--muted)}.volume-label input{width:100%;accent-color:var(--accent);height:24px;margin:0}.track-time{display:flex;align-items:center;gap:9px;margin-top:18px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted)}.track-time progress{width:100%;height:3px;accent-color:var(--accent)}
@media(min-width:1440px){.zone-items{left:46px;bottom:125px}.place-caption{bottom:175px;left:46px}.view-tools{right:calc(46px + var(--panel-width))}.help-panel{right:calc(46px + var(--panel-width))}}
@media(max-width:1100px){body.has-details{--panel-width:350px}.has-details .view-tools{bottom:128px}.details-panel{padding-top:87px}.detail-top{padding-inline:22px}.detail-copy{padding-inline:24px}.detail-image-wrap{margin-inline:24px}.room-navigation button{padding-inline:12px}.place-caption{bottom:169px}.zone-items{bottom:116px}.has-details .zone-items{max-width:calc(100vw - var(--panel-width) - 120px)}}
@media(max-width:760px){
  body.has-details{--panel-width:0px;--sheet-height:46dvh}.details-panel{inset:auto 0 0;width:100%;height:var(--sheet-height);padding-top:0;border-left:0;border-top:1px solid var(--line);border-radius:20px 20px 0 0;animation:sheet-enter .22s ease-out}
  @keyframes sheet-enter{from{transform:translateY(25px);opacity:0}to{transform:translateY(0);opacity:1}}
  .has-details #viewer{bottom:var(--sheet-height)}.has-details .room-navigation{bottom:calc(var(--sheet-height) + 10px)}.has-details .view-tools,.has-details .zone-items{display:none}
  .detail-top{padding:10px 20px 7px}.detail-top .icon-button{width:36px;height:36px}.detail-scroll{display:block}.detail-image-wrap{display:none}.detail-copy{padding:5px 23px 0}.detail-copy h2{font-size:23px;margin:7px 0 12px}.detail-copy>p{font-size:15px;line-height:1.8}.detail-facts{margin:15px 0}.detail-copy>p.detail-hint{margin-top:20px}.record-player{padding:15px 0}.back-button{margin-top:7px}
}

@media(max-width:640px){
  .place-caption{left:22px;bottom:calc(173px + env(safe-area-inset-bottom));max-width:calc(100% - 44px)}.place-caption h1{font-size:21px}.place-caption p{font-size:14px}.zone-items{left:19px;right:19px;bottom:calc(115px + env(safe-area-inset-bottom));max-width:calc(100vw - 38px);gap:6px}.zone-items button{font-size:14px;padding:9px 12px}
  .room-navigation button{font-size:13px;min-width:51px;padding:10px 12px}.view-tools{right:18px;bottom:calc(217px + env(safe-area-inset-bottom))}.help-panel{right:18px;bottom:270px}.icon-button{width:40px;height:40px}.notice{bottom:270px}.wordmark-sub{font-size:12px}
}
@media(max-width:370px){.room-navigation button{padding-inline:9px;min-width:48px}.masthead{inset-inline:15px}.wordmark strong{font-size:12px}.place-caption h1{font-size:20px}}
@media(max-height:520px) and (orientation:landscape){body.has-details{--panel-width:330px}.details-panel{inset:0 0 0 auto;width:330px;height:100%;padding-top:0;border-radius:0}.has-details #viewer{right:330px;bottom:0}.has-details .room-navigation{left:calc((100% - 330px)/2);bottom:12px}.has-details .music-button{visibility:hidden}.place-caption{display:none}.zone-items{bottom:105px}.masthead{top:12px}.details-panel .detail-image-wrap{display:none}.detail-top{padding-top:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.wordmark{gap:0}.wordmark .brand-lockup{width:220px}.wordmark-sub{display:none}body[data-time=night] .brand-lockup{filter:invert(1)}
@media(max-width:640px){.wordmark .brand-lockup{width:174px;max-width:56vw}}
@media(max-width:370px){.wordmark .brand-lockup{width:154px}}
/* The record corner uses the existing quiet paper palette; the scene stays live. */
body.has-vinyl{--panel-width:370px}
.has-vinyl .place-caption,.has-vinyl .zone-items{display:none}
#vinyl-studio{position:fixed;z-index:11;inset:0 0 0 auto;width:370px;background:#f7f6f2f5;border-left:1px solid var(--line);display:flex;flex-direction:column;padding-top:106px}
.vinyl-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 24px 22px}
.vinyl-top .eyebrow{font-size:.75rem}.vinyl-top h2{font-size:1.35rem;font-weight:500;line-height:1.45;margin:8px 0 0;outline:none}.vinyl-top>.icon-button{flex-shrink:0;font-size:1.5rem}
.vinyl-scroll{overflow:auto;min-height:0;padding:0 24px 30px;overscroll-behavior:contain}
.vinyl-albums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vinyl-album{padding:0;background:none;text-align:left;border-radius:3px}
.vinyl-album img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:2px;box-shadow:0 3px 10px #252d2320}
.vinyl-album strong{display:block;font-size:.9rem;font-weight:600;margin-top:9px;line-height:1.5}
.vinyl-album span{display:block;font-size:.75rem;line-height:1.5;color:var(--muted)}
.vinyl-album[aria-pressed=true] img{outline:2px solid var(--accent);outline-offset:4px}.vinyl-album[aria-pressed=true] strong{color:var(--accent)}
.vinyl-instruction{font-size:.9rem;line-height:1.8;margin:23px 0 14px;min-height:3.6em;color:#515849}
.vinyl-actions{display:flex;flex-wrap:wrap;gap:9px}.vinyl-actions .text-button{margin:0;min-height:44px;padding:10px 16px}
.vinyl-secondary{background:transparent;padding:10px 3px;min-height:44px;font-size:.875rem;text-decoration:underline;text-underline-offset:5px}
.vinyl-now{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.vinyl-now>span{font-size:.8125rem;color:var(--muted);line-height:1.6}.vinyl-now>strong{display:block;font-size:1rem;font-weight:500;margin-top:10px;line-height:1.65}.vinyl-now p{font-size:.8125rem;line-height:1.75;color:var(--muted);margin:10px 0 18px}
.vinyl-progress{display:flex;align-items:center;gap:10px;font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.vinyl-progress>span{margin-right:auto;white-space:nowrap}.vinyl-progress input{width:90px;min-height:32px;accent-color:var(--accent)}
#vinyl-progress{width:100%;height:3px;display:block;margin:12px 0 24px;accent-color:var(--accent)}
#vinyl-studio details{border-top:1px solid var(--line);padding:15px 0}#vinyl-studio summary{cursor:pointer;font-size:.875rem;line-height:1.7;min-height:32px}#vinyl-studio summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}#vinyl-track-count{font-size:.75rem;color:var(--muted);margin-left:7px}
#vinyl-tracks{margin:12px 0 0;padding-left:25px;font-size:.8125rem;font-variant-numeric:tabular-nums}#vinyl-tracks li{padding-left:6px;color:var(--muted)}#vinyl-tracks button{background:none;text-align:left;line-height:1.5;font-size:.875rem;padding:9px 0;width:100%;min-height:40px}#vinyl-tracks li[data-current]{color:var(--accent);font-weight:600}
.vinyl-source p{font-size:.8125rem;color:var(--muted);line-height:1.8}.vinyl-source a{display:block;font-size:.875rem;padding:8px 0;text-underline-offset:4px}.vinyl-source a:not([href]){display:none}.vinyl-file-label{display:block;margin-top:18px;font-size:.875rem;line-height:1.8}.vinyl-file-label input{display:block;margin-top:9px;width:100%;font:inherit;font-size:.75rem}#vinyl-file-mapping{font-size:.8125rem;line-height:1.7;overflow-wrap:anywhere}#vinyl-file-mapping ol{padding-left:23px}
.has-vinyl .view-tools{right:calc(34px + var(--panel-width))}.has-vinyl .help-panel{right:calc(34px + var(--panel-width))}
@media(max-width:900px){body.has-vinyl{--panel-width:330px}#vinyl-studio{width:330px}.vinyl-scroll{padding-inline:19px}.vinyl-top{padding-inline:19px}.has-vinyl .view-tools{display:none}}
@media(max-width:760px){body.has-vinyl{--panel-width:0px;--vinyl-height:47dvh}#vinyl-studio{inset:auto 0 0;width:100%;height:var(--vinyl-height);padding-top:0;border-left:0;border-top:1px solid var(--line);border-radius:18px 18px 0 0}.vinyl-top{padding:12px 20px 10px}.vinyl-top h2{font-size:1.125rem;margin-top:3px}.vinyl-top .eyebrow{display:none}.vinyl-albums{max-width:340px;gap:16px}.vinyl-album img{max-width:88px}.vinyl-album strong{margin-top:5px}.vinyl-scroll{padding:5px 20px 25px}.vinyl-instruction{margin:14px 0 12px;min-height:0}.has-vinyl #viewer{bottom:var(--vinyl-height)}.has-vinyl .room-navigation{bottom:calc(var(--vinyl-height) + 8px)}.has-vinyl .music-copy{max-width:115px}.music-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:210px}.vinyl-now{margin-top:20px}.has-vinyl .notice{bottom:calc(var(--vinyl-height) + 98px)}}
@media(max-height:520px) and (orientation:landscape){body.has-vinyl{--panel-width:330px}#vinyl-studio{inset:0 0 0 auto;width:330px;height:100%;padding-top:8px;border-radius:0}.has-vinyl #viewer{bottom:0;right:330px}.has-vinyl .room-navigation{bottom:12px}.has-vinyl .music-button{visibility:hidden}}
.apple-connect{padding:0 0 20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.apple-connect .text-button{margin:0;min-height:44px}.apple-connect p{font-size:.875rem;line-height:1.75;color:var(--muted);margin:12px 0 0}.apple-connect .vinyl-secondary{margin-left:12px}

/* The live page only appears after the camera reaches the iMac display. */
.has-computer .masthead,.has-computer .place-caption,.has-computer .zone-items,
.has-computer .room-navigation,.has-computer .view-tools,.has-computer #notice{visibility:hidden}
#computer-mode{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--ink);overflow:hidden}
#computer-mode::backdrop{background:transparent}
.computer-toolbar{position:absolute;z-index:3;inset:max(18px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) auto max(20px,env(safe-area-inset-left));display:flex;justify-content:space-between;pointer-events:none;transition:opacity 140ms ease-out}
.computer-toolbar button,.computer-toolbar a{display:grid;place-items:center;pointer-events:auto;width:44px;height:44px;padding:12px;border:1px solid #403e3020;border-radius:50%;background:#f4f1e8eb;color:#45473f;box-shadow:0 3px 14px #302d2110;text-decoration:none;transition:transform 140ms ease-out}
.computer-toolbar button:hover,.computer-toolbar a:hover{transform:translateY(-2px)}
.computer-toolbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.computer-surface{position:absolute;top:0;left:0;width:1440px;height:900px;transform-origin:0 0;overflow:hidden;background:transparent;opacity:0;pointer-events:none;transition:opacity 180ms ease-out}
.computer-surface.is-visible{opacity:1;pointer-events:auto}
.computer-surface[inert]{pointer-events:none}
#computer-frame{display:block;width:100%;height:100%;border:0;background:transparent;color-scheme:normal}
#computer-mode[data-phase=closing] .computer-toolbar{opacity:0;pointer-events:none}
#computer-mode[data-phase=closing] .computer-toolbar>*{pointer-events:none}
.computer-status{position:absolute;z-index:3;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;padding:10px 16px;max-width:calc(100% - 32px);width:max-content;border:1px solid var(--line);border-radius:24px;background:#f4f1e8f2}
.computer-status p{margin:0;font-size:.8125rem;line-height:1.6}.computer-status button{min-height:36px;padding:6px 10px;background:transparent;text-decoration:underline;text-underline-offset:3px;font-size:.8125rem}
@media(max-width:640px) and (orientation:portrait){.computer-surface{left:12px!important;top:76px!important;width:calc(100% - 24px);height:calc(100% - 92px - env(safe-area-inset-bottom))!important;transform:none!important;border:1px solid var(--line);border-radius:12px}}
@media(prefers-reduced-motion:reduce){.computer-surface,.computer-toolbar,.computer-toolbar button,.computer-toolbar a{transition:none}}

/* Quiet object interactions: one contextual panel, no permanent room labels. */
body.has-life{--panel-width:370px}.has-life .place-caption,.has-life .zone-items{display:none}
.life-panel{position:fixed;z-index:11;inset:0 0 0 auto;width:370px;display:flex;flex-direction:column;background:var(--paper);border-left:1px solid var(--line);padding-top:106px}
.life-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 24px 22px}.life-top .eyebrow{font-size:.75rem}.life-top h2{font-size:1.5rem;font-weight:500;line-height:1.45;margin:9px 0 0;outline:none}.life-top .icon-button{font-size:1.5rem;flex:none}
.life-scroll{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding:0 24px 16px;scrollbar-width:thin}.life-scroll p{font-size:1rem;line-height:1.85;margin:0 0 20px;white-space:pre-line}.life-scroll h3{font-size:1.05rem;font-weight:500;line-height:1.6;margin:24px 0 12px}.life-scroll .life-small{font-size:.875rem;line-height:1.75;color:var(--muted);margin-top:18px}.life-scroll .life-empty{font-size:.9375rem;color:var(--muted);padding:14px 0;line-height:1.85}
.life-actions{display:flex;flex-wrap:wrap;gap:8px}.life-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line);padding:10px 15px;border-radius:24px;background:#eeeee6;font-size:.875rem;line-height:1.4;text-decoration:none}.life-action:hover{background:#e1e4d9}.life-action[aria-pressed=true]{background:var(--ink);color:var(--paper)}.life-action:disabled{opacity:.5}.life-bottom{margin-top:auto;padding:8px 24px max(24px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.life-bottom .back-button{margin:0;min-height:44px}
.life-scroll details{border-top:1px solid var(--line);padding:16px 0}.life-scroll summary{font-size:1rem;line-height:1.65;cursor:pointer;min-height:34px}.life-scroll summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.life-scroll details>p{margin:16px 0 0}.life-scroll a{font-size:.9375rem;text-underline-offset:4px}.life-scroll figure{margin:16px 0}.life-photos img{display:block;width:100%;height:auto;border-radius:4px}.life-photos figcaption{font-size:.875rem;color:var(--muted);line-height:1.65;margin-top:8px}
.reading-page{padding:22px 20px 15px;background:#eee7d7;border-radius:2px;box-shadow:3px 3px 0 #ded7c7;margin:0 0 22px}.reading-page h3{margin-top:14px}.reading-page p{min-height:5em;line-height:2}
.desk-note-paper{background:#f0e7c9;padding:26px 24px 32px;border-radius:2px;box-shadow:2px 4px 12px #4e452317;animation:note-open .35s ease-out}.desk-note-paper p{font-family:KaiTi,"STKaiti",serif;font-size:1.15rem;line-height:2}.desk-note-paper .eyebrow{font-size:.75rem;letter-spacing:.09em}.desk-note-paper h3{margin-top:25px}.desk-note-paper small{font-size:.8125rem;color:var(--muted)}@keyframes note-open{from{opacity:0;transform:translateY(14px) rotate(-3deg)}to{opacity:1;transform:none}}
.light-menu{position:fixed;z-index:30;right:calc(34px + var(--panel-width));bottom:101px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 8px 30px #0001;max-width:calc(100vw - 30px)}.light-menu>p{margin:0 0 14px;font-size:.9375rem}.light-menu .life-actions{flex-wrap:nowrap}.light-menu .life-action{padding-inline:16px}
body[data-time=night] .wordmark,body[data-time=night] .place-caption h1{color:#f1eee5}body[data-time=night] .place-caption p,body[data-time=night] .place-caption .eyebrow,body[data-time=night] .wordmark-sub{color:#cbd1da}
.memory-board{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.memory-board button{aspect-ratio:1;min-height:52px;background:#e4e6dc;border:1px solid var(--line);border-radius:8px;font-size:1rem}.memory-board button:disabled{background:#d4ddc9;color:#34492a;opacity:1}.life-scroll #memory-status{font-size:.875rem;margin:13px 0}
#room-photo{max-width:min(880px,calc(100vw - 32px));width:880px;max-height:calc(100dvh - 36px);border:1px solid var(--line);padding:24px;background:var(--paper);color:var(--ink);border-radius:16px;overflow:auto}#room-photo::backdrop{background:#121811aa}.photo-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.photo-top h2{font-size:1.25rem;font-weight:500;margin:0}.photo-top .icon-button{font-size:1.5rem;flex:none}#photo-image{display:block;width:100%;max-height:60dvh;object-fit:contain;background:var(--scene);border-radius:6px}#photo-status{font-size:.9375rem;line-height:1.6}.shutter-flash{position:fixed;z-index:100;inset:0;background:white;pointer-events:none;opacity:0}
@media(max-width:900px){body.has-life{--panel-width:330px}.life-panel{width:330px}.life-top{padding-inline:20px}.life-scroll{padding-inline:20px}.life-bottom{padding-inline:20px}}
@media(max-width:760px){body.has-life{--panel-width:0px;--life-height:45dvh}.life-panel{inset:auto 0 0;width:100%;height:var(--life-height);padding-top:0;border-left:0;border-top:1px solid var(--line);border-radius:18px 18px 0 0}.life-top{padding:12px 20px 9px}.life-top .eyebrow{display:none}.life-top h2{font-size:1.2rem;margin:0}.life-scroll{padding:5px 20px 12px}.life-bottom{padding:8px 20px max(9px,env(safe-area-inset-bottom))}.has-life #viewer{bottom:var(--life-height)}.has-life .room-navigation{bottom:calc(var(--life-height) + 8px)}.has-life .view-tools{display:none}.life-scroll p{font-size:.9375rem}.reading-page{padding:16px 20px}.desk-note-paper{padding:18px 22px}.light-menu{right:16px;bottom:calc(264px + env(safe-area-inset-bottom))}.memory-board{max-width:340px}.has-life .notice{bottom:calc(var(--life-height) + 104px)}}
@media(max-height:520px) and (orientation:landscape){body.has-life{--panel-width:330px}.life-panel{inset:0 0 0 auto;width:330px;height:100%;padding-top:10px;border-radius:0}.has-life #viewer{right:330px;bottom:0}.has-life .room-navigation{bottom:12px}.has-life .music-button{visibility:hidden}}
@media(prefers-reduced-motion:reduce){.desk-note-paper{animation:none}.shutter-flash{display:none!important}}

/* Reading and object inspection: an unobstructed model with anchored controls. */
body.has-life{--panel-width:310px}.life-panel{width:310px;padding-top:100px}.life-top{padding:0 22px 18px}.life-top h2{font-size:1.25rem}.life-scroll{padding-inline:22px}.life-bottom{padding-inline:22px}
.library-list{display:grid;gap:5px}.library-entry{display:grid;grid-template-columns:30px 1fr 18px;gap:12px;align-items:center;width:100%;padding:10px 0;text-align:left;background:transparent;border-bottom:1px solid var(--line)}.library-entry:hover{background:#e9e8df}.library-entry strong{display:block;font-size:.9375rem;font-weight:500}.library-entry small{display:block;font-size:.75rem;line-height:1.55;color:var(--muted);margin-top:4px}.library-spine{height:54px;border-radius:2px 4px 4px 2px;background:var(--book-color);color:#f5ecd6;display:grid;place-items:center;font:12px Georgia,serif;box-shadow:inset 3px 0 #ffffff18}.life-scroll .library-intro{font-size:.875rem;line-height:1.8;margin-bottom:12px}
body.has-inspect{--panel-width:0px}.has-inspect #viewer{inset:0}.has-inspect .masthead,.has-inspect .music-button,.has-inspect .room-navigation,.has-inspect .view-tools,.has-inspect .place-caption,.has-inspect .zone-items,.has-inspect #object-tooltip{display:none}
.life-panel.is-inspect{inset:0;width:100%;height:100%;padding:0;border:0;border-radius:0;background:none;pointer-events:none;animation:none}
.is-inspect .life-top{position:absolute;top:30px;left:38px;right:38px;align-items:flex-start;padding:0;pointer-events:none}.is-inspect .life-top h2{font:500 1.5rem/1.4 Georgia,'Songti SC',serif;margin-top:8px}.is-inspect .life-top .icon-button{pointer-events:auto;background:#f8f7f0d9;border:1px solid #30382f22}
.is-inspect .life-bottom{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 40px);display:flex;align-items:center;gap:16px;padding:10px 14px;border:1px solid #ffffffb0;border-radius:16px;background:#f8f7f0ed;box-shadow:0 10px 32px #252d2410;pointer-events:auto}
.is-inspect .life-bottom .back-button{font-size:.8125rem;white-space:nowrap;border-left:1px solid var(--line);padding-left:16px;color:#595f54}.reading-toolbar,.car-toolbar{display:flex;align-items:center;justify-content:center;gap:8px}.is-inspect .life-action{border:0;background:transparent;padding:9px 13px;white-space:nowrap;font-size:.875rem}.is-inspect .life-action:hover{background:#e5e7dd}.is-inspect .life-action[aria-pressed=true]{background:var(--ink)}.is-inspect .life-action[aria-disabled=true]{opacity:.4;cursor:default}#reading-number{font:13px/1.4 Georgia,serif;min-width:64px;text-align:center;font-variant-numeric:tabular-nums;color:#666c60}
.is-inspect .life-scroll{position:absolute;right:24px;top:115px;bottom:120px;width:300px;padding:0;pointer-events:auto;display:none;overflow:auto;overscroll-behavior:contain;background:#f8f7f0f7;border:1px solid #ffffffa0;border-radius:12px;box-shadow:0 12px 30px #272e2510}.is-inspect.shows-copy .life-scroll{display:block}.is-inspect #reading-spread article{padding:24px;border-bottom:1px solid var(--line)}.is-inspect #reading-spread h3{font-size:1.125rem;margin:16px 0}.is-inspect #reading-spread p{font-size:1rem;line-height:1.9;margin-bottom:14px}.is-inspect #reading-spread small{display:block;color:#626759;line-height:1.8;font-size:.8125rem}.is-inspect #reading-spread a{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-size:.8125rem}.is-inspect #car-copy{padding:24px}.is-inspect #car-copy p{margin:0;font-size:.9375rem}
@media(max-width:760px){
  body.has-life{--panel-width:0px}.life-panel{width:100%;padding-top:0}.life-top{padding:12px 20px 9px}.life-bottom{padding:8px 20px max(9px,env(safe-area-inset-bottom))}.library-entry{padding:7px 0}.library-spine{height:44px}.is-library{height:52dvh}.has-life:has(.is-library:not([hidden])) #viewer{bottom:52dvh}
  .has-inspect #viewer{inset:0 0 140px}.is-inspect .life-top{top:max(20px,env(safe-area-inset-top));left:20px;right:20px}.is-inspect .life-top h2{font-size:1.25rem}.is-inspect .life-top .eyebrow{display:block;font-size:.6875rem}
  .is-inspect .life-bottom{bottom:0;left:0;transform:none;width:100%;max-width:none;border-radius:16px 16px 0 0;flex-direction:column;gap:4px;padding:9px 12px max(9px,env(safe-area-inset-bottom))}.is-inspect .life-bottom .back-button{border:0;padding:0;min-height:38px}.reading-toolbar,.car-toolbar{gap:3px;flex-wrap:wrap}.reading-toolbar{display:grid;grid-template-columns:1fr 72px 1fr}.reading-toolbar [data-life-action=reading-copy]{grid-column:1/3}.reading-toolbar [data-life-action=library]{grid-column:3}.is-inspect .life-action{min-height:42px;padding:8px 11px;font-size:.8125rem}.car-toolbar{max-width:380px}.is-inspect .life-scroll{inset:47% 10px 150px;width:auto;border-radius:12px}.is-inspect #reading-spread article{padding:20px}.is-inspect #reading-spread p{font-size:1rem}.has-inspect:has(.shows-copy) #viewer{bottom:53%}.is-inspect.shows-copy .life-scroll{top:47%;bottom:150px}.has-inspect .notice{bottom:165px}
}
@media(max-height:520px) and (orientation:landscape){.is-inspect .life-top{top:12px;left:20px;right:20px}.is-inspect .life-top h2{font-size:1.125rem;margin:3px 0}.is-inspect .life-bottom{bottom:8px;padding:5px 10px}.is-inspect .life-scroll{top:70px;bottom:80px}.has-inspect #viewer{inset:0}.is-inspect .life-top .eyebrow{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){.life-panel{animation:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(min-width:761px){.has-inspect:has(.shows-copy) #viewer{right:324px}}

/* The yellow bike: one shared 3D stage, with an optional rider journal. */
.is-bike .life-top h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.4rem,2.3vw,2.15rem);font-weight:700;letter-spacing:-.045em;line-height:1.15}
.is-bike .life-top .eyebrow{font-size:.65rem;letter-spacing:.16em;color:#6d6b56}
.is-bike .life-top>div::after{content:"";display:block;width:64px;height:4px;margin-top:14px;background:#ecd527}
.is-bike .life-bottom{gap:10px;padding:12px 18px;border-radius:22px;max-width:calc(100% - 32px)}
.bike-toolbar{display:grid;gap:5px}.bike-toolbar p{margin:0 0 5px;color:#777666;text-align:center;font-size:.75rem;line-height:1.6;max-width:540px}
.bike-part-buttons,.bike-view-buttons{display:flex;justify-content:center;gap:4px;flex-wrap:wrap}
.is-bike .life-action{padding:8px 11px;min-height:38px;border-radius:9px;font-size:.78rem}
.is-bike .life-action[aria-pressed=true]{background:#ead532;color:#292b22}.is-bike .life-action:hover{background:#e9e7d8;color:#292b22}
.bike-view-buttons .life-action{min-width:36px;min-height:34px;padding:6px 8px;color:#646758}
.bike-view-buttons [data-life-action=tour-copy]{border-left:1px solid #272b201b;border-radius:0;padding-left:14px;margin-left:4px}
.is-bike .life-scroll{top:98px;bottom:155px;width:310px;right:22px;border-radius:14px;background:#f7f7efeF;scrollbar-width:thin}
.cycling-story figure{margin:0}.cycling-story img{display:block;width:100%;height:auto}.cycling-poster img{aspect-ratio:1.35;object-fit:cover;object-position:57% 45%}
.cycling-poster figcaption{padding:22px;background:#e3d032;color:#232820}.cycling-poster figcaption>span{font:9px/1.5 Arial,sans-serif;letter-spacing:.15em}.cycling-poster strong{display:block;margin:13px 0;font:800 42px/.93 Arial,Helvetica,sans-serif;letter-spacing:-.055em}.cycling-poster strong span{color:#fff9dc}.cycling-poster small{font-size:12px}
.cycling-story section{padding:24px 22px;border-bottom:1px solid #23282014}.cycling-story h3{margin:10px 0 12px;font-size:19px;font-weight:600}.cycling-story p{font-size:13px;line-height:1.9;margin:0 0 8px;color:#626654}.cycling-kicker{font:10px/1.6 Arial,sans-serif;letter-spacing:.09em;color:#7c7d6b}.cycling-story .cycling-source{display:inline-block;min-height:32px;align-content:center;font-size:10px;color:#626750;text-decoration:underline;text-underline-offset:3px}
.cycling-timeline{padding:0;list-style:none;margin:22px 0 0}.cycling-timeline li{display:grid;grid-template-columns:38px 1fr;gap:10px;padding-bottom:22px}.cycling-timeline time{font:700 12px/1.5 Arial,sans-serif;color:#9a8a19}.cycling-timeline h4{font-size:13px;line-height:1.7;margin:0 0 6px;font-weight:600}.cycling-timeline p{font-size:12px}.cycling-date{font-size:10px;color:#818574}
.cycling-bike-photo{background:#e4e0d4}.cycling-bike-photo figcaption{padding:19px 22px 24px;display:grid;gap:9px;color:#555d4d}.cycling-bike-photo figcaption>span{font:10px Arial,sans-serif;letter-spacing:.16em}.cycling-bike-photo strong{font:600 28px Georgia,'Songti SC',serif}.cycling-bike-photo small{font-size:12px}
.cycling-specs{margin:16px 0 12px}.cycling-specs>div{padding:9px 0;display:grid;grid-template-columns:38px 1fr;gap:8px;border-bottom:1px solid #272b2011;font-size:11px;line-height:1.6}.cycling-specs dt{color:#8b8d7e}.cycling-specs dd{margin:0;color:#414735}.cycling-story .cycling-credits{font-size:10px;margin-top:16px;color:#929582}
.is-bike button:focus-visible{outline:2px solid #9a8717;outline-offset:3px}
@media(min-width:761px){.has-inspect:has(.is-bike) #viewer{bottom:130px}.has-inspect:has(.is-bike.shows-copy) #viewer{right:346px}.is-bike.shows-copy .life-bottom{left:calc((100% - 346px)/2);max-width:calc(100% - 374px)}.is-bike .life-bottom{flex-direction:column}.is-bike .life-bottom .back-button{border:0;padding:3px 0;min-height:25px}.is-bike.shows-copy .life-top{right:370px}}
@media(max-width:760px){.is-bike .life-bottom{bottom:0;left:0;width:100%;max-width:none;border-radius:19px 19px 0 0;gap:3px;padding:10px 8px max(9px,env(safe-area-inset-bottom))}.is-bike .life-top{left:20px;right:20px;top:20px}.is-bike .life-action{min-height:34px;padding:6px 8px;font-size:11px}.bike-toolbar{gap:2px}.bike-toolbar p{font-size:10px;margin-bottom:3px}.is-bike .life-bottom .back-button{font-size:11px;min-height:26px}.has-inspect:has(.is-bike) #viewer{bottom:163px}.has-inspect:has(.is-bike.shows-copy) #viewer{bottom:55%}.is-bike.shows-copy .life-scroll{inset:45% 10px 167px;width:auto}.is-bike .life-scroll{width:auto}.cycling-poster{display:grid;grid-template-columns:1fr 1fr}.cycling-poster img{height:100%;object-fit:cover}.cycling-poster figcaption{padding:18px}.cycling-poster strong{font-size:30px}.cycling-poster figcaption>span{font-size:8px}.cycling-story section{padding:22px}}

@media(max-width:760px){body.has-life:has(.is-library:not([hidden])){--life-height:52dvh}}

/* Leave space for the view tools beside longer editorial headings. */
@media(max-width:760px){.place-caption h1{max-width:calc(100vw - 130px);text-wrap:balance}}

@media(max-width:760px){.view-tools{bottom:calc(22px + env(safe-area-inset-bottom))}.help-panel,.light-menu,.notice{bottom:calc(82px + env(safe-area-inset-bottom))}}

/* A single return action appears only while exploring a room area. */
.room-back{position:fixed;z-index:10;left:34px;bottom:39px;display:flex;align-items:center;gap:10px;min-height:44px;padding:11px 17px;border:1px solid #383c3029;border-radius:24px;background:#f8f7f2e8;color:var(--ink);font-size:14px;box-shadow:0 3px 16px #22291d08}
.room-back:hover{background:var(--paper)}
.has-details .room-back,.has-life .room-back,.has-vinyl .room-back,.has-computer .room-back,.has-inspect .room-back{display:none}
@media(min-width:1440px){.room-back{left:46px;bottom:47px}}
@media(max-width:760px){.room-back{left:20px;bottom:calc(22px + env(safe-area-inset-bottom));padding:11px 15px}}

/* A subdued backdrop keeps the SF-26's white livery comfortable to view. */
body.has-inspect:has(.life-panel.is-car){background:#07080a}
.life-panel.is-inspect.is-car{--ink:#f0eee8;--paper:#14171b;--muted:#b5b8bd;--line:#ffffff1b;--accent:#e66f68;color:var(--ink)}
.is-car .life-top .icon-button{background:#14171bf2;border-color:var(--line);color:var(--ink)}
.is-car .life-top .icon-button:hover{background:#2b3035}
.is-car .life-bottom,.is-car .life-scroll{background:#14171bf5;border-color:var(--line);box-shadow:0 10px 32px #0002}
.is-car .life-bottom .back-button{color:#d3d7d5;border-color:var(--line)}
.is-car .life-action:hover{background:#2b3035}
.is-car .life-action[aria-pressed=true]{background:#e4e1d8;color:#293033}

/* Ferrari's team story sits beside the model on the same subdued surface. */
.is-car .life-top h2{font-family:Arial,Helvetica,sans-serif;font-size:clamp(1.4rem,2.3vw,2.15rem);font-weight:700;line-height:1.15;text-wrap:balance}
.is-car .life-top .eyebrow{color:var(--muted)}
.is-car .life-top>div{min-width:0}
.is-car .life-top .icon-button{flex-shrink:0}
.is-car .life-bottom{flex-direction:column;gap:5px;max-width:calc(100% - 40px)}
.is-car #inspect-controls{min-width:0;max-width:100%}
.is-car .car-toolbar{flex-wrap:wrap;max-width:100%;gap:4px}
.is-car .life-action{min-height:40px;padding:8px 11px;border-radius:8px;font-size:.8125rem}
.is-car .life-bottom .back-button{border:0;padding:3px 0;min-height:30px}
.is-car .life-scroll{top:100px;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));width:340px;border-radius:14px;scrollbar-width:thin;scrollbar-color:#858d8e transparent}
.is-inspect.is-car #car-copy{padding:0}
.is-car #car-copy figure{margin:0}
.is-car #car-copy .car-poster img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;object-position:center}
.is-car #car-copy .car-poster figcaption{padding:24px 22px;background:#101317;border-top:3px solid var(--accent)}
.is-car #car-copy .car-poster figcaption>span{font:11px/1.5 Arial,Helvetica,sans-serif;color:var(--muted)}
.is-car #car-copy .car-poster strong{display:block;margin:12px 0;font:700 34px/1.03 Arial,Helvetica,sans-serif;text-wrap:balance}
.is-car #car-copy .car-poster small{display:block;font-size:12px;line-height:1.7;color:var(--muted)}
.is-car #car-copy section{padding:24px 22px;border-bottom:1px solid var(--line)}
.is-car #car-copy section:last-child{border-bottom:0}
.is-car #car-copy .car-kicker{font:11px/1.6 Arial,Helvetica,sans-serif;color:var(--accent)}
.is-car #car-copy h3{margin:10px 0 12px;font-size:19px;font-weight:600;line-height:1.5;text-wrap:balance}
.is-car #car-copy p{margin:0 0 10px;font-size:13px;line-height:1.9;color:var(--muted);text-wrap:pretty}
.is-car #car-copy p:last-child{margin-bottom:0}
.is-car #car-copy .car-source{display:inline-flex;align-items:center;min-height:36px;font-size:11px;line-height:1.6;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.is-car #car-copy .car-source:hover{color:var(--ink)}
.is-car #car-copy .car-statistics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.is-car #car-copy .car-statistics>div{display:flex;flex-direction:column;gap:7px;min-width:0;padding-top:12px;border-top:1px solid var(--line)}
.is-car #car-copy .car-statistics dt{font-size:11px;line-height:1.6;color:var(--muted)}
.is-car #car-copy .car-statistics dd{order:-1;margin:0;font:700 28px/1.15 Arial,Helvetica,sans-serif;font-variant-numeric:tabular-nums;color:var(--ink)}
.is-car #car-copy .car-timeline{padding:0;list-style:none;margin:22px 0 0}
.is-car #car-copy .car-timeline li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding-bottom:23px}
.is-car #car-copy .car-timeline li:last-child{padding-bottom:0}
.is-car #car-copy .car-timeline time{font:700 12px/1.8 Arial,Helvetica,sans-serif;font-variant-numeric:tabular-nums;color:var(--accent)}
.is-car #car-copy .car-timeline h4{margin:0 0 6px;font-size:13px;font-weight:600;line-height:1.8;text-wrap:balance}
.is-car #car-copy .car-timeline p{font-size:12px}
.is-car #car-copy .car-specs{margin:18px 0 12px}
.is-car #car-copy .car-specs>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.7}
.is-car #car-copy .car-specs dt{color:var(--muted)}
.is-car #car-copy .car-specs dd{margin:0;font-variant-numeric:tabular-nums;color:var(--ink)}
.is-car #car-copy p.car-credits{font-size:11px;line-height:1.8}
.is-car #car-copy .car-detail-section{background:#101317}
.is-car #car-copy #car-description{min-height:3.8em}
.is-car :is(button,a):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(min-width:761px){
  .has-inspect:has(.is-car) #viewer{bottom:140px}
  .has-inspect:has(.is-car.shows-copy) #viewer{right:390px}
  .is-car.shows-copy .life-top{right:414px}
  .is-car.shows-copy .life-bottom{left:calc((100% - 390px)/2);max-width:calc(100% - 430px)}
}
@media(max-width:760px){
  body.has-inspect:has(.is-car){--car-controls-height:calc(158px + env(safe-area-inset-bottom))}
  .is-car .life-top{top:max(20px,env(safe-area-inset-top));left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right))}
  .is-car .life-top h2{font-size:1.5rem}
  .is-car .life-bottom{bottom:0;left:0;width:100%;height:var(--car-controls-height);max-width:none;justify-content:center;gap:4px;padding:9px max(10px,env(safe-area-inset-right)) max(9px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));border-radius:16px 16px 0 0}
  .is-car .car-toolbar{max-width:380px;gap:3px}
  .is-car .life-action{min-height:40px;padding:7px 10px;font-size:12px}
  .is-car .life-bottom .back-button{min-height:30px;font-size:12px}
  .has-inspect:has(.is-car) #viewer{inset:0 0 var(--car-controls-height)}
  .has-inspect:has(.is-car.shows-copy) #viewer{bottom:57%}
  .is-car .life-scroll,.is-car.shows-copy .life-scroll{inset:43% max(10px,env(safe-area-inset-right)) var(--car-controls-height) max(10px,env(safe-area-inset-left));width:auto}
  .is-car #car-copy .car-poster{display:grid;grid-template-columns:1fr 1fr}
  .is-car #car-copy .car-poster img{height:100%;aspect-ratio:auto;object-fit:cover}
  .is-car #car-copy .car-poster figcaption{padding:18px 16px;border-top:0;border-left:3px solid var(--accent)}
  .is-car #car-copy .car-poster figcaption>span{font-size:10px}
  .is-car #car-copy .car-poster strong{font-size:28px}
  .is-car #car-copy .car-poster small{font-size:11px}
  .is-car #car-copy section{padding:22px}
}

/* Compact portfolio label inspired by the supplied rounded identity card. */
.wordmark{display:block;min-width:146px;padding:9px 14px 8px;border:1px solid #373b3524;border-radius:14px;background:#e3e6e4e8;color:#171b19;box-shadow:0 3px 14px #1820180c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}
.wordmark:hover{transform:translateY(-1px);background:#eceeecf2;box-shadow:0 5px 18px #18201814}
.wordmark:focus-visible{border-radius:14px}
.brand-card{display:grid;gap:3px;white-space:nowrap}
.brand-card strong{font-family:Georgia,"Times New Roman","Songti SC",serif;font-size:14px;font-weight:700;letter-spacing:-.015em;line-height:1.05;text-transform:none}
.brand-card small{font-size:9px;font-weight:500;letter-spacing:.015em;line-height:1.15;color:#606863}
body[data-time=night] .wordmark{background:#e3e4e0e8;color:#171b19;border-color:#ffffff2b}
body[data-time=night] .brand-card small{color:#5f6762}
@media(max-width:640px){.wordmark{min-width:139px;padding:8px 12px 7px;border-radius:13px}.brand-card strong{font-size:13px}.brand-card small{font-size:8.5px}}
