/* A visible invitation; project imagery keeps the character. */
.ts-presets{gap:12px;align-items:center;margin-bottom:12px}
.ts-presets button[data-ts-preset]{display:inline-flex;align-items:center;gap:11px;padding:13px 17px;background:transparent;color:inherit;border-color:currentColor;font-weight:500;min-height:47px}
.ts-presets button[data-ts-preset] i{width:10px;height:10px;display:block;border:1.5px solid currentColor;border-radius:50%;background:transparent;flex:0 0 auto;transition:background .25s,box-shadow .25s}
.ts-presets button[data-ts-preset][aria-pressed=true]{background:transparent;color:inherit;box-shadow:inset 0 -2px currentColor}
.ts-presets button[data-ts-preset][aria-pressed=true] i{background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 15%,transparent)}
.ts-presets button[data-ts-preset]:hover{background:color-mix(in srgb,currentColor 8%,transparent)}
.ts-presets #ts-replay{font-size:11px;border:0;border-bottom:1px solid currentColor;margin-left:auto;padding:8px 0;min-height:36px}
.ts-guide-status{font-size:12px;line-height:1.7;margin:0 0 22px;min-height:1.7em}
.ts-guiding .ts-stage{outline:1px solid currentColor;outline-offset:5px}
.ts-stage-foot #ts-tour[aria-pressed=true]{font-weight:700;border-bottom-width:2px}
.ts-presets button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.lab[data-lab=harvest] .lab-canvas{background:#f8f2df}
.fruit-back-fields[hidden]{display:none}
.lab[data-lab=harvest] .lab-panel h3{font-family:'Noto Sans SC',sans-serif;font-size:17px;font-weight:600}
.lab[data-lab=tilt] .lab-canvas{background:#f4ede3;cursor:default}
.ex-end-index{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:12px;margin-top:35px;padding-top:25px;border-top:1px solid color-mix(in srgb,currentColor 25%,transparent)}
.ex-end-index a{display:flex;flex-direction:column;gap:9px;min-width:0;font-size:14px;opacity:.8;padding:6px;border:1px solid transparent;transition:opacity .2s,border-color .2s}
.ex-end-index a[aria-current=page]{border-color:currentColor;opacity:1}
.ex-end-index a:hover{opacity:1;border-color:currentColor}
.ex-end-index a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.ex-index-thumb{height:70px;width:100%;display:flex;align-items:center;justify-content:center;background:var(--thumb-bg);overflow:hidden}
.ex-index-thumb img{width:100%;height:100%;object-fit:contain}
.ex-end-index .ex-index-name{font-size:13px;line-height:1.5;display:flex;align-items:baseline;gap:6px;overflow-wrap:anywhere}
.ex-index-name small{font-size:10px;opacity:.65;flex:0 0 auto}
.ex-index-thumb b{font:800 20px/.9 Archivo,sans-serif;letter-spacing:-.06em;color:white;text-align:center}
.opening-caption .opening-name{font-size:27px;font-weight:600;line-height:1.3;letter-spacing:-.03em}
.opening-name span{display:block;font:400 16px/1.5 Archivo,sans-serif;letter-spacing:0;margin-top:4px}
.home>.about .about-heading{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:38px;padding:0;margin-bottom:45px}
.profile-portrait{margin:0;transform:rotate(-2deg);width:160px}
.profile-portrait img{display:block;width:160px;height:200px;object-fit:cover;object-position:50% 30%}
.home>.about .about-heading h2{font-size:clamp(45px,4.6vw,68px);line-height:1.08;font-weight:650;letter-spacing:-.04em}
.about-heading h2 span{font:400 .62em/1.4 Archivo,sans-serif;letter-spacing:-.025em}
.about-identity p{font-size:13px;line-height:1.8;margin-top:16px}
.home>.about .about-content{display:block}
.home>.about .about-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 8%}
.home>.about .about-copy .lead{grid-row:span 2;font-size:25px;margin:0;max-width:23em}
.home>.about .about-copy dl{margin:0}
.home>.about .architecture-entry{display:grid;grid-template-columns:128px minmax(0,1fr) 30px;align-items:center;gap:22px;background:#e6e8ed;border:1px solid #b2b8c6;color:#153dda;padding:17px 21px;margin-top:38px;transition:background .2s}
.architecture-entry img{width:128px;height:90px;object-fit:contain;background:white}
.architecture-entry strong{display:block;font-size:21px;font-weight:550;line-height:1.4}
.architecture-entry small{display:block;font:400 13px/1.5 Archivo,sans-serif;margin-top:9px}
.architecture-entry>b{font-size:30px;font-weight:400}
.architecture-entry:hover{background:#dce2f4}
.architecture-entry:focus-visible{outline:3px solid #153dda;outline-offset:4px}
@media(min-width:1500px){.ex-index-thumb{height:86px}.ex-end-index .ex-index-name{font-size:14px}}
@media(max-width:1050px){.ex-end-index{grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.ex-index-thumb{height:82px}}
@media(max-width:759px){
 .ts-presets{display:grid;grid-template-columns:1fr;gap:8px}.ts-presets button[data-ts-preset]{justify-content:flex-start;padding:12px 14px;font-size:13px;min-height:44px}.ts-presets #ts-replay{justify-self:end;margin:4px 0 0;font-size:11px}.ts-guide-status{font-size:11px;margin-bottom:20px;max-width:30em;min-height:3.4em}
 .ts-stage-head{font-size:10px;line-height:1.6}.ts-stage-foot button{font-size:11px;min-height:30px}.ts-stage-foot>span:first-child{max-width:100%;flex-basis:100%}.ts-stage-foot{gap:6px 18px;justify-content:flex-start}.ts-canvas{height:330px;padding-top:25px;padding-bottom:35px}.ts-stage{min-height:330px}
 .lab[data-lab=tilt] .lab-canvas{aspect-ratio:660/900;width:100%}
 .ex-end-index{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 8px;margin-top:26px;padding-top:24px}.ex-end-index a{padding:4px;gap:8px}.ex-index-thumb{height:68px}.ex-end-index .ex-index-name{font-size:12px;gap:5px}.ex-index-name small{font-size:9px}
 .opening-caption{top:94px;display:block}.opening-caption .opening-name{display:block;font-size:22px}.opening-name span{font-size:14px;margin-top:3px}.opening-caption p:last-child{margin-top:10px;font-size:10px;max-width:24em}
 .home>.about .about-heading{grid-template-columns:112px minmax(0,1fr);gap:20px;margin-bottom:30px}.profile-portrait,.profile-portrait img{width:112px}.profile-portrait img{height:142px}.home>.about .about-heading h2{font-size:38px}.about-identity p{font-size:11px;margin-top:12px}
 .home>.about .about-copy{display:block}.home>.about .about-copy .lead{font-size:21px;margin:0 0 22px}.home>.about .about-copy dl{margin:20px 0 0}
 .home>.about .architecture-entry{grid-template-columns:78px minmax(0,1fr) 20px;gap:13px;margin-top:25px;padding:14px}.architecture-entry img{width:78px;height:76px}.architecture-entry strong{font-size:16px}.architecture-entry small{font-size:11px;margin-top:6px}.architecture-entry>b{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.ts-presets button i,.ex-end-index a,.architecture-entry{transition:none}}

.ts-section .section-head h2{max-width:11em}.ts-section .section-head h2 span{display:inline-block;white-space:nowrap}
