@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;900&display=swap');
:root{--bg:#f5f5f0;--ink:#191a18;--muted:#666861;--line:#d6d7cf;--accent:#cdf477;--pad:5vw}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,'Noto Sans TC',sans-serif;font-size:16px;line-height:1.65}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #769e32;outline-offset:5px}button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25}button{border:0}button:disabled{opacity:.5}a,button{touch-action:manipulation}.skip{position:fixed;top:-100px;left:20px;background:var(--accent);padding:12px;z-index:99}.skip:focus{top:10px}.header{height:100px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:38px;font-weight:900;letter-spacing:-2.8px;display:inline-flex;align-items:center;gap:13px;line-height:1}.brand span{font-size:13px;letter-spacing:.08em;font-weight:500;writing-mode:vertical-rl;line-height:1.2}.header nav{display:flex;align-items:center;gap:40px;font-size:14px}.header small{display:block;font-size:12px;letter-spacing:.08em}.inquiry-link{padding:12px 0 12px 25px;border-left:1px solid var(--line)}.inquiry-link span{margin-left:35px}.menu-toggle{display:none}.eyebrow{font-size:12px;letter-spacing:.11em;font-weight:500;line-height:1.55}.hero-heading{padding:45px var(--pad) 30px}.hero h1{font-family:Arial,sans-serif;font-size:clamp(70px,10.1vw,164px);line-height:.94;font-weight:700;letter-spacing:-.075em;margin:24px 0 28px}.second-line{display:flex;align-items:center;gap:.18em}.hero i{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}.frame-symbol{font-size:.58em;font-weight:400;margin-left:auto;line-height:1}.hero-caption{display:flex;justify-content:space-between;align-items:flex-end}.hero-caption p{font-size:18px;line-height:1.65}.hero-caption p span{font-size:14px;color:var(--muted)}.hero-caption a{font-size:14px}.hero-caption a span{margin-left:40px}.hero-visual{height:560px;position:relative;margin:0 20px;overflow:hidden;background:#253330;color:white}.hero-photo,.hero-space{position:absolute;inset:0;transition:opacity .8s,transform 1.5s}.hero-photo{object-position:center 55%;filter:brightness(.68)}.hero-space{opacity:0;filter:brightness(.55)}[data-mode="space"]>.hero-space{opacity:1;transform:scale(1.035)}[data-mode="space"]>.hero-photo{opacity:0}.hero-visual:after{content:'';position:absolute;inset:35px;border:1px solid #ffffff4d;pointer-events:none}.viewfinder{position:absolute;inset:50px;display:flex;justify-content:space-between;font:12px monospace;letter-spacing:.05em}.cross{position:absolute;left:50%;top:40%;font-size:30px;font-weight:100}.hero-overlay{position:absolute;bottom:70px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:flex-end;z-index:1}.hero-overlay h2{font-size:30px;margin-top:10px;font-weight:500}.mode-switch{display:flex;border:1px solid #ffffff70;padding:4px;background:#17191740}.mode-switch button{background:transparent;color:white;font-size:12px;letter-spacing:.08em;padding:12px 20px}.mode-switch button[aria-pressed="true"]{background:var(--accent);color:var(--ink)}.hero-note{position:absolute;bottom:13px;right:36px;font-size:12px}.section{padding:110px var(--pad)}.intro{display:grid;grid-template-columns:1fr 1.4fr;gap:50px}.intro h2{font-size:clamp(26px,3vw,46px);font-weight:500;line-height:1.55;letter-spacing:-.035em}.intro p:not(.eyebrow){margin-top:26px;max-width:650px;color:var(--muted);line-height:1.95}.works{padding-top:35px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{font-size:32px;font-weight:500;margin-top:12px}.filters{display:flex;gap:24px}.filters button{padding:10px 0;background:none;border-bottom:1px solid transparent;white-space:nowrap;font-size:14px;color:var(--muted)}.filters button[aria-pressed="true"]{color:var(--ink);border-color:var(--ink)}.filters small{font-size:12px;margin-left:4px}.work-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:75px 45px;align-items:start}.work-1{margin-top:130px}.work-2{grid-column:1/-1;width:72%;margin-left:18%}.work-image{height:390px;position:relative;overflow:hidden;background:#ddd}.work-1 .work-image{height:310px}.work-2 .work-image{height:440px}.work-image img{transition:transform .7s}.work:hover img{transform:scale(1.035)}.work-open{position:absolute;bottom:18px;right:20px;font-size:28px;background:var(--bg);width:48px;height:48px;display:grid;place-items:center}.image-note{position:absolute;bottom:16px;left:20px;color:white;font-size:12px;background:#171717b0;padding:3px 8px}.work-info{display:flex;justify-content:space-between;margin:20px 0 10px;gap:16px}.work h3{font-size:26px;font-weight:500}.work p{font-size:13px;color:var(--muted);margin-top:8px}.space-story{display:grid;grid-template-columns:1.2fr 1fr;background:#20231f;color:var(--bg);min-height:690px}.space-story-image{position:relative;overflow:hidden}.space-story-image img{filter:brightness(.7);position:absolute}.spatial-target{position:absolute;inset:25%;border:1px solid #ffffff80;display:grid;place-items:center;font-size:45px;font-weight:100}.space-story-copy{padding:90px 65px}.space-story h2{font-size:42px;line-height:1.4;font-weight:500;margin:30px 0}.space-story p{color:#b5bab0;font-size:16px;line-height:1.9}.text-link{display:inline-flex;justify-content:space-between;gap:55px;align-items:center;padding:15px 0;border-bottom:1px solid currentColor;margin-top:25px;font-size:16px}.space-index{display:grid;gap:10px;border-top:1px solid #565b50;padding-top:25px;margin-top:45px;font-size:14px;color:#c7ccbf}.capabilities>h2{font-size:42px;font-weight:500;margin:20px 0 65px;line-height:1.4}.capabilities details{border-top:1px solid var(--line)}.capabilities details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.capabilities summary{display:flex;align-items:center;gap:55px;padding:32px 0}.capabilities summary>span{font-size:14px}.capabilities h3{font-size:clamp(24px,3vw,44px);font-weight:500;letter-spacing:-.035em}.details-plus{margin-left:auto}.capabilities details[open] .details-plus{transform:rotate(45deg)}.service-content{padding:0 0 40px 76px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.service-content p{color:var(--muted)}.service-content ul{padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 28px;list-style:none;font-size:14px}.service-content li{border-bottom:1px solid var(--line);padding-bottom:6px}footer{background:var(--accent);padding:65px var(--pad) 25px}.footer-top>a{display:block;font-size:clamp(45px,6vw,88px);line-height:1.25;letter-spacing:-.045em;padding:25px 0 65px;position:relative}.footer-top>a span{position:absolute;right:0;bottom:60px;font-size:90px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:30px;border-top:1px solid #a4c85c;font-size:14px}.footer-bottom small{font-size:12px}.credits{font-size:12px;margin-top:25px;color:#424d2f}.credits p{max-width:900px;padding-top:10px}.credits a{text-decoration:underline}.case-title{padding-top:55px;padding-bottom:50px}.back{font-size:14px}.case-kicker{display:flex;justify-content:space-between;margin:50px 0 18px}.case h1{font-size:clamp(40px,6vw,90px);font-weight:500;letter-spacing:-.04em}.case-title>p{margin-top:20px;font-size:14px;letter-spacing:.1em}.case-cover{height:65vh;min-height:350px;position:relative;margin:0 20px}.case-intro{display:grid;grid-template-columns:1fr 1.4fr;gap:70px}.case-intro h2{font-size:28px;font-weight:500;margin:15px 0 25px}.case-intro p{color:var(--muted);margin-bottom:20px;line-height:1.95}.case-intro dl{display:grid;grid-template-columns:55px 1fr;font-size:14px;gap:12px;margin-top:35px}.case-intro dd{margin:0}.case-intro dt{color:var(--muted)}.muted{font-size:14px;color:var(--muted)}.media-section{padding-top:0}.film-placeholder{height:540px;position:relative;background:#161616;overflow:hidden}.film-placeholder img{filter:brightness(.38)}.film-placeholder>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:white;text-align:center;padding:20px}.play-outline{font-size:50px;line-height:1.5}.film-placeholder h3{font-size:24px;font-weight:400;margin:20px 0 10px}.film-placeholder p{font-size:14px}.case-end{padding-top:0}.case-end h2{font-size:36px;font-weight:500;margin:20px 0}.case-end p{color:var(--muted)}.embed-holder{aspect-ratio:16/9;background:#222}.embed-holder iframe{width:100%;height:100%;border:0}.tour{background:#222;color:white}.tour-viewport{height:550px;position:relative;overflow:hidden}.tour-viewport img{filter:brightness(.65);transition:transform .7s,object-position .7s}.tour-label{position:absolute;bottom:35px;left:35px;background:#191a18c9;padding:18px 25px;max-width:80%;pointer-events:none}.tour-label h3{font-size:27px;margin:10px 0}.tour-label p{font-size:14px}.hotspot{position:absolute;left:60%;top:38%;background:var(--accent);width:46px;height:46px;border-radius:50%;font-size:25px;color:#191a18}.tour-toolbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;gap:20px}.tour-toolbar button{padding:12px;background:none;color:white;font-size:14px}.tour-toolbar button[aria-pressed="true"]{color:var(--accent);border-bottom:1px solid var(--accent)}.tour-toolbar label{display:flex;gap:12px;align-items:center;font-size:14px}.tour-toolbar input{width:100px;accent-color:var(--accent)}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:9vw;min-height:80vh;padding-top:80px}.inquiry h1{font-size:clamp(36px,4vw,60px);font-weight:500;line-height:1.4;letter-spacing:-.03em;margin:28px 0}.inquiry-heading>p{color:var(--muted);line-height:1.9}.prototype-notice{font-size:12px;margin-top:40px;max-width:320px}.form-progress{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:40px;font-size:14px;color:var(--muted)}.form-progress .active{color:var(--ink);font-weight:bold}fieldset{border:0;margin:0;padding:0}legend{font-size:24px;padding:0;margin-bottom:25px;line-height:1.4}form label{display:block;font-size:14px;margin-bottom:22px}.choice{display:flex;align-items:center;gap:16px;padding:26px 22px;border:1px solid var(--line);cursor:pointer}.choice:has(input:checked){background:var(--accent);border-color:#a6c95f}.choice input{width:18px;height:18px;accent-color:var(--ink);margin:0}.choice strong{display:block;font-size:19px;margin-bottom:5px}.choice span span{font-size:14px}.choice b{margin-left:auto;font-size:26px;font-weight:400}input:not([type=radio]):not([type=range]),textarea,select{width:100%;display:block;background:transparent;border:0;border-bottom:1px solid #a6aaa0;border-radius:0;padding:12px 0;color:var(--ink);margin-top:6px;min-width:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-actions{display:flex;justify-content:space-between;gap:20px;margin-top:32px}.solid-button{background:var(--ink);color:white;padding:16px 25px;display:flex;justify-content:space-between;gap:60px;font-size:14px}.solid-button:hover{background:#3a4031}#previous{background:none;padding:12px 0}#next{margin-left:auto}#inquiry-success h2{font-size:36px;font-weight:500;margin:25px 0}#inquiry-success p{margin-bottom:20px}#inquiry-success .solid-button{margin-top:35px}[hidden]{display:none!important}body.menu-open{overflow:hidden}
@media(min-width:1600px){:root{--pad:max(5vw,calc((100vw - 1500px)/2))}.hero-visual{max-height:700px;height:44vw}}
@media(max-width:1000px){.header nav{gap:24px}.hero-visual{height:460px}.section{padding:75px var(--pad)}.works{padding-top:25px}.work-image{height:300px}.work-1 .work-image{height:250px}.work-2 .work-image{height:340px}.work-grid{gap:50px 25px}.space-story-copy{padding:60px 35px}.space-story h2{font-size:34px}.space-story{min-height:600px}.intro{grid-template-columns:1fr 1.6fr;gap:30px}.inquiry{gap:5vw}.case-intro{gap:40px}.media-section{padding-top:0}}
@media(max-width:700px){:root{--pad:6vw}.header{height:78px}.brand{font-size:33px}.brand span{font-size:12px}.menu-toggle{display:flex;align-items:center;gap:20px;background:none;font-size:14px;padding:10px 0}.menu-toggle span{font-size:24px}.header nav{display:none;position:fixed;top:78px;inset-inline:0;bottom:0;background:var(--bg);z-index:20;padding:50px var(--pad);align-items:stretch;justify-content:flex-start;flex-direction:column;gap:35px;font-size:24px}.header nav.open{display:flex}.header small{font-size:12px;margin-top:10px}.inquiry-link{border-left:0;border-top:1px solid var(--line);padding:30px 0}.hero-heading{padding-top:32px;padding-bottom:25px}.hero h1{font-size:clamp(56px,12vw,90px);margin:26px 0;line-height:1;letter-spacing:-.07em}.frame-symbol{font-size:.65em}.hero-caption{align-items:flex-start;gap:25px}.hero-caption p{font-size:16px}.hero-caption p span{font-size:12px;display:block;max-width:230px;margin-top:5px}.hero-caption a{font-size:0}.hero-caption a span{font-size:24px;margin:0}.hero-visual{height:460px;margin:0 10px}.hero-visual:after{inset:20px}.viewfinder{inset:32px;font-size:10px}.coordinate{display:none}.hero-overlay{bottom:48px;left:32px;right:32px;display:block}.hero-overlay h2{font-size:26px}.mode-switch{margin-top:24px;width:max-content}.mode-switch button{padding:10px 16px}.hero-note{font-size:10px;right:22px;bottom:7px}.intro{display:block}.intro>.eyebrow{display:block;margin-bottom:30px}.intro h2{font-size:26px}.intro p:not(.eyebrow){font-size:16px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:27px}.filters{margin-top:20px}.work-grid{display:block}.work{display:block;margin:0 0 42px;width:100%}.work-image,.work-1 .work-image,.work-2 .work-image{height:290px}.work-1 .work-image{height:240px}.work h3{font-size:24px}.work-info .eyebrow{font-size:10px;letter-spacing:.06em}.space-story{display:flex;flex-direction:column}.space-story-image{height:360px}.space-story-copy{padding:48px var(--pad)}.space-story h2{font-size:34px}.space-index{margin-top:35px}.capabilities>h2{font-size:32px;margin-bottom:40px}.capabilities summary{gap:20px;padding:24px 0}.capabilities h3{font-size:25px}.service-content{padding-left:0;display:block}.service-content ul{margin-top:20px}.footer-top>a{font-size:42px;padding-bottom:50px}.footer-top>a span{font-size:55px;bottom:50px}.footer-bottom{flex-wrap:wrap;align-items:flex-start}.footer-bottom>span{width:100%;font-size:12px}.footer-bottom p{font-size:12px}.case-title{padding-top:35px;padding-bottom:35px}.case-kicker{margin-top:35px}.case h1{font-size:39px}.case-cover{margin:0 10px;height:400px}.case-intro{display:block}.case-intro>div+div{margin-top:45px}.case-intro h2{font-size:26px}.film-placeholder{height:350px}.case-end h2{font-size:29px}.case-end p{font-size:14px}.tour-viewport{height:450px}.tour-toolbar{align-items:stretch;flex-direction:column;gap:10px;padding:10px 16px}.tour-toolbar>div{display:flex;justify-content:space-between}.tour-toolbar label{padding:10px}.tour-label{left:18px;bottom:20px;padding:15px;max-width:90%}.tour-label h3{font-size:24px}.inquiry{display:block;padding-top:45px}.inquiry h1{font-size:36px}.prototype-notice{margin-top:20px;max-width:none}.inquiry form,#inquiry-success{margin-top:50px}.form-row{grid-template-columns:1fr;gap:0}.choice{padding:22px 16px}.choice strong{font-size:17px}.form-progress{margin-bottom:30px}.media-section{padding-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}html:not(.motion-enabled) *,html:not(.motion-enabled) *:before,html:not(.motion-enabled) *:after{animation:none!important;transition:none!important}}

/* Motion system / optical depth, capture frame, spatial scan. */
.scroll-rail{position:fixed;inset:0 0 auto;height:3px;z-index:50;pointer-events:none;background:transparent}
.scroll-rail-fill{display:block;width:100%;height:100%;background:#88ad3b;transform-origin:left;transform:scaleX(var(--reading-progress,0))}
.motion-enabled .motion-reveal{opacity:.12;translate:0 34px;transition:opacity .85s cubic-bezier(.2,.65,.25,1),translate .85s cubic-bezier(.2,.65,.25,1);transition-delay:var(--reveal-delay,0ms)}
.motion-enabled .motion-reveal.is-revealed,.motion-enabled .motion-reveal:focus-within{opacity:1;translate:0 0}
.motion-enabled .hero h1 .second-line{translate:var(--title-travel,0px) 0}
.motion-enabled .frame-symbol{rotate:var(--symbol-turn,0deg);transform-origin:center}
.motion-enabled .hero-photo,.motion-enabled .hero-space,.motion-enabled .work-image img,.motion-enabled .space-story-image img,.motion-enabled .case-cover img{translate:0 var(--media-y,0px);scale:1.12}
.motion-enabled .motion-in-view>img{will-change:translate}
.case-cover{overflow:hidden}
.motion-enabled .hero-visual:after{transform:scale(var(--frame-scale,1));border-color:#ffffff70}
.motion-enabled .spatial-target{rotate:var(--frame-turn,0deg);scale:var(--frame-scale,1);border:0;background:linear-gradient(#cdf477,#cdf477) top left/30px 1px no-repeat,linear-gradient(#cdf477,#cdf477) top left/1px 30px no-repeat,linear-gradient(#cdf477,#cdf477) top right/30px 1px no-repeat,linear-gradient(#cdf477,#cdf477) top right/1px 30px no-repeat,linear-gradient(#cdf477,#cdf477) bottom left/30px 1px no-repeat,linear-gradient(#cdf477,#cdf477) bottom left/1px 30px no-repeat,linear-gradient(#cdf477,#cdf477) bottom right/30px 1px no-repeat,linear-gradient(#cdf477,#cdf477) bottom right/1px 30px no-repeat;color:#cdf477}
.motion-enabled .space-story-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,#cdf47799,transparent) 0 var(--scan-y,50%)/100% 1px no-repeat;opacity:.75}
.motion-enabled .space-story-image:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#ffffff0d 1px,transparent 1px),linear-gradient(#ffffff0d 1px,transparent 1px);background-size:12.5% 12.5%;mask-image:linear-gradient(transparent,#000 45%,transparent);opacity:.65}
.motion-enabled .work-image:after{content:'';position:absolute;inset:0;border:1px solid #ffffff75;pointer-events:none;clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.2,.65,.25,1) .1s}
.motion-enabled .is-revealed .work-image:after{clip-path:inset(0)}
.text-link span,.work-open,.inquiry-link span{transition:transform .3s ease,background .3s ease}
.text-link:hover span,.inquiry-link:hover span{transform:translate(3px,-3px)}
.work:hover .work-open{background:var(--accent);transform:translate(3px,-3px)}
@media(max-width:700px){.motion-enabled .motion-reveal{translate:0 18px;transition-duration:.6s}.motion-enabled .motion-reveal.is-revealed,.motion-enabled .motion-reveal:focus-within{translate:0 0}.motion-enabled .space-story-image:before{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.motion-toggle{position:fixed;right:20px;bottom:18px;z-index:30;background:#191a18;color:#f5f5f0;border:1px solid #73786b;padding:9px 12px;font-size:12px;letter-spacing:.04em;box-shadow:0 2px 12px #00000012}
.motion-toggle[aria-pressed="true"]{border-color:#a4c85c;color:#cdf477}
@media(max-width:700px){.motion-toggle{right:12px;bottom:12px;font-size:12px}}

/* Real project media and direct studio contact. */
.footer-contact{display:flex;flex-wrap:wrap;gap:12px 30px;padding-top:28px;font-size:14px}
.footer-contact a,.inquiry-contact a{text-decoration:underline;text-underline-offset:5px}
.inquiry-contact{display:flex;flex-direction:column;gap:10px;margin-top:28px;font-size:16px}
.media-fallback{display:inline-block;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}
.related-projects{display:flex;flex-direction:column;gap:18px;margin-top:55px;padding-top:30px;border-top:1px solid var(--line)}
.related-projects a{font-size:22px}
.work-0 .work-image,.work-1 .work-image{height:auto;aspect-ratio:16/9}
.work-2 .work-image img,.hero-space,.space-story-image img{object-fit:cover}
@media(max-width:700px){.footer-contact{flex-direction:column}.related-projects a{font-size:19px}.hero-note{max-width:90%;font-size:10px}}
.viewer-preview{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;background:#20231f;color:var(--bg);min-height:380px}
.viewer-preview>img{aspect-ratio:1;max-height:550px;object-fit:contain}
.viewer-preview>div{padding:40px}.viewer-preview h3{font-size:28px;font-weight:500;line-height:1.5}.viewer-preview p{font-size:16px;color:#bec3b7;margin-top:20px;line-height:1.8}
@media(max-width:700px){.viewer-preview{grid-template-columns:1fr}.viewer-preview>div{padding:30px}.viewer-preview h3{font-size:24px}}

/* Studio + editorial / shared typography, separate reading rhythm. */
.studio-teaser{display:grid;grid-template-columns:1fr 1.25fr;gap:8vw;border-top:1px solid var(--line);background:#e9ece3}
.studio-year strong{display:block;font:400 clamp(88px,12vw,175px)/1.1 Georgia,serif;letter-spacing:-.06em;margin-top:25px}.studio-year strong span{display:block;font:400 80px/.8 Arial,sans-serif}
.studio-teaser h2{font-size:clamp(27px,3.2vw,46px);font-weight:500;line-height:1.5;margin:22px 0}.studio-teaser p{font-size:16px;line-height:1.95;color:#51564b}.studio-teaser .studio-clients{font-size:14px;margin-top:22px}
.knowledge-teaser .section-heading,.article-related .section-heading{align-items:center}.knowledge-teaser .text-link,.article-related .section-heading .text-link{margin-top:0}
.insight-row{display:grid;grid-template-columns:70px minmax(0,1fr) 40px;align-items:start;gap:30px;padding:34px 0;border-top:1px solid var(--line);transition:border-color .3s ease}.insight-row:last-child{border-bottom:1px solid var(--line)}
.insight-number{font:400 40px/1 Georgia,serif;color:#747a6a}.insight-row h2,.insight-row h3{font-size:clamp(23px,2.3vw,34px);font-weight:500;margin:12px 0;line-height:1.45;letter-spacing:-.035em}.insight-row p{max-width:720px;font-size:16px;line-height:1.85;color:var(--muted)}.insight-arrow{font-size:30px;justify-self:end;transition:transform .3s}.insight-row:hover{border-top-color:#718642}.insight-row:hover .insight-arrow{transform:translate(4px,-4px)}.insight-row:hover h2,.insight-row:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:7px}
.editorial-heading{padding-top:65px;padding-bottom:60px}.editorial-heading h1{font-size:clamp(48px,7vw,108px);font-weight:500;letter-spacing:-.065em;line-height:1.2;margin:32px 0 45px}.editorial-heading h1 i{font-style:normal;color:#64774a}.studio-opening,.notes-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:35px}.studio-opening p{font-size:18px}.notes-intro p{font-size:18px;line-height:1.9}.studio-opening .eyebrow,.notes-intro .eyebrow{white-space:nowrap}
.studio-manifesto{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;background:#20231f;color:var(--bg)}.studio-manifesto h2{font-size:clamp(30px,3.4vw,49px);font-weight:500;line-height:1.5;margin-bottom:30px}.studio-manifesto p{font-size:18px;line-height:2;color:#c6cbbf;margin-top:20px;max-width:740px}
.studio-services .section-heading h2,.partner-section h2,.studio-method>h2,.notes-cta h2{font-size:clamp(30px,3.8vw,52px);font-weight:500;line-height:1.4}.practice-row{display:grid;grid-template-columns:45px 1fr 1.2fr;gap:35px;border-top:1px solid var(--line);padding:42px 0}.practice-row:last-child{border-bottom:1px solid var(--line)}.practice-index{font:400 25px Georgia,serif}.practice-row h3{font-size:27px;font-weight:500;line-height:1.5;margin-top:14px}.practice-row p{font-size:16px;color:var(--muted);line-height:1.95}.practice-row ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px 24px;padding:0;margin-top:20px;font-size:14px}.practice-row li{border-bottom:1px solid var(--line);padding-bottom:5px}.practice-row .text-link{margin-top:10px;font-size:14px}
.partner-section{background:#20231f;color:var(--bg)}.partner-section .section-heading{margin-bottom:50px}.partner-section .section-heading>p{font-size:14px;color:#c6cbbf}.partner-row{border-top:1px solid #535a4a;padding:35px 0;display:grid;grid-template-columns:1fr 2fr;gap:40px}.partner-row h3{font-size:20px;font-weight:500;margin-bottom:8px}.partner-row .eyebrow{color:#b4bda7}.partner-row ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:20px 36px;align-items:center}.partner-row li{font-size:clamp(20px,2.2vw,31px);font-weight:500;letter-spacing:-.035em}
.studio-method>h2{margin:20px 0 45px}.method-list{display:grid;gap:0}.method-list article{display:grid;grid-template-columns:45px 1fr 1.2fr;gap:35px;padding:28px 0;border-top:1px solid var(--line)}.method-list h3{font-size:23px;font-weight:500;line-height:1.5}.method-list p{font-size:16px;line-height:1.9;color:var(--muted)}
.notes-index{padding-top:20px}.notes-index .insight-row{padding:40px 0}.notes-cta{background:#e9ece3}.notes-cta h2{margin-top:20px}
.article-heading{padding-top:45px;padding-bottom:40px;border-bottom:1px solid var(--line)}.article-kicker{display:flex;justify-content:space-between;gap:25px;margin-top:48px}.article-heading h1{max-width:1050px;font-size:clamp(34px,4.9vw,70px);font-weight:500;line-height:1.4;letter-spacing:-.055em;margin:23px 0}.article-deck{max-width:780px;font-size:18px;line-height:1.9;color:var(--muted)}.article-byline{display:flex;flex-wrap:wrap;gap:12px 26px;font-size:14px;margin-top:35px;color:#646b5a}
.article-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:7vw;justify-content:space-between;padding-top:70px;padding-bottom:60px}.article-toc nav{position:sticky;top:35px}.article-toc ol{list-style:none;padding:0;margin:22px 0}.article-toc li{border-top:1px solid var(--line)}.article-toc a{display:block;padding:13px 0;font-size:14px;line-height:1.7;color:#59614d}.article-toc a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.article-body{min-width:0}.article-intro{font-size:22px;line-height:1.95;padding-bottom:40px;border-bottom:1px solid var(--line)}.article-section{padding-top:48px;scroll-margin-top:35px}.article-section h2{font-size:28px;font-weight:500;line-height:1.5;margin-bottom:22px}.article-section p,.article-section li{font-size:17px;line-height:2;color:#444a3d}.article-section p+p{margin-top:20px}.article-section ul{padding-left:24px;margin-top:22px}.article-section .article-source{font-size:13px;margin-top:20px;color:#626b56}.article-source a{text-decoration:underline;text-underline-offset:4px}.article-takeaway{background:#e9eddf;border-left:3px solid #89a94b;padding:30px;margin-top:55px}.article-takeaway>p{font-size:20px;line-height:1.9;margin-top:16px}.article-takeaway .text-link{font-size:16px}.article-related{padding-top:45px;border-top:1px solid var(--line)}
.comparison-wrap{overflow-x:auto;max-width:100%;margin-top:25px}.comparison-wrap table{width:100%;min-width:540px;border-collapse:collapse;font-size:14px;text-align:left}.comparison-wrap caption{text-align:left;font-size:14px;padding-bottom:14px}.comparison-wrap th,.comparison-wrap td{padding:16px 12px;border-bottom:1px solid var(--line);line-height:1.8;vertical-align:top}.comparison-wrap thead{background:#e9eddf}.comparison-wrap tbody th{font-weight:500;min-width:115px}
@media(max-width:1000px){.header nav{gap:23px}.inquiry-link{padding-left:20px}.inquiry-link span{margin-left:15px}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:35px}.practice-row,.method-list article{grid-template-columns:32px 1fr 1.3fr;gap:22px}.practice-row h3{font-size:24px}.studio-manifesto{gap:35px}.studio-opening,.notes-intro{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:700px){.header nav.open{gap:24px;overflow-y:auto}.inquiry-link{padding-left:0}.studio-teaser{grid-template-columns:1fr;gap:35px}.studio-year strong{font-size:90px;display:flex;gap:18px;align-items:baseline;margin-top:12px}.studio-year strong span{font-size:55px}.studio-teaser h2{font-size:29px;margin-top:15px}.insight-row{grid-template-columns:32px minmax(0,1fr) 20px;gap:14px;padding:26px 0}.insight-number{font-size:26px}.insight-arrow{font-size:23px}.insight-row h2,.insight-row h3{font-size:23px;margin:10px 0;line-height:1.5}.insight-row .eyebrow{font-size:12px;letter-spacing:.03em}.insight-row p{font-size:16px;line-height:1.85}.knowledge-teaser .section-heading .text-link,.article-related .section-heading .text-link{margin-top:20px}.editorial-heading{padding-top:40px;padding-bottom:40px}.editorial-heading h1{font-size:clamp(42px,13vw,54px);margin:25px 0 30px}.studio-opening p,.notes-intro p{font-size:16px}.studio-manifesto{grid-template-columns:1fr;gap:25px}.studio-manifesto h2{font-size:31px}.studio-manifesto p{font-size:17px}.practice-row{grid-template-columns:30px minmax(0,1fr);gap:12px 18px;padding:30px 0}.practice-row>div:last-child{grid-column:2}.practice-row h3{font-size:24px}.partner-row{grid-template-columns:1fr;gap:25px}.partner-row ul{gap:18px 24px}.partner-row li{font-size:23px}.method-list article{grid-template-columns:28px minmax(0,1fr);gap:12px 18px}.method-list p{grid-column:2}.method-list h3{font-size:23px}.article-kicker{margin-top:32px}.article-heading h1{font-size:35px;line-height:1.5}.article-deck{font-size:16px}.article-byline{gap:10px 18px;font-size:13px}.article-layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.article-toc nav{position:static}.article-toc ol{margin-bottom:0}.article-toc a{font-size:14px;padding:10px 0}.article-intro{font-size:20px}.article-section{padding-top:35px}.article-section h2{font-size:25px}.article-section p,.article-section li{font-size:17px}.article-takeaway{padding:23px}.article-takeaway>p{font-size:18px}.article-related{padding-top:40px}}

.header nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}

/* Live spatial projects and responsive Realsee viewers. */
.space-project-links{gap:0}
.space-project-links>.eyebrow{color:#b5bab0;margin-bottom:12px}
.space-project-links a{display:grid;grid-template-columns:24px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #565b50;line-height:1.65;transition:color .2s}
.space-project-links a:hover{color:var(--accent)}
.space-link-number{font:12px monospace;color:#b5bab0}
.tour-instructions{color:var(--muted);font-size:14px;margin:0 0 22px;line-height:1.8}
.tour-embed{aspect-ratio:auto;height:min(78svh,800px);min-height:540px}
.tour-embed iframe{display:block}
.case-explore{margin-top:24px}
@media(max-width:700px){.tour-embed{height:72svh;min-height:480px}.space-project-links a{font-size:14px}.tour-instructions{font-size:13px}}

.tour-embed{position:relative;overflow:hidden;background:#20231f}
.tour-poster{position:absolute;inset:0;filter:brightness(.5);pointer-events:none}
.tour-embed iframe{position:relative;z-index:1;background:transparent}
.tour-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;text-align:center;padding:24px;color:#fff;background:#15171566}
.tour-loading p{font-size:20px;line-height:1.7;max-width:460px;margin:16px auto 22px}
.tour-loading-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.tour-loading a,.tour-loading button{display:inline-block;padding:12px 18px;font-size:14px;background:var(--accent);color:var(--ink)}
.tour-loading button{background:var(--bg)}
@media(max-width:700px){.tour-loading p{font-size:18px}}

/* Select a space beside the live viewer, without leaving the homepage. */
.space-showcase{grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:42px;padding:48px var(--pad);align-items:center;min-height:0}
.space-showcase .space-story-copy{grid-column:2;grid-row:1;padding:0;min-width:0}
.space-showcase .space-story-copy h2{font-size:clamp(30px,3.2vw,42px);margin:22px 0}
.space-showcase .space-story-copy>p{font-size:15px}
.space-preview-column{grid-column:1;grid-row:1;min-width:0}
.space-preview-heading{padding:0 0 22px}
.space-preview-heading>.eyebrow{display:flex;justify-content:space-between;color:#bdc4b6;font-size:10px}
.space-preview-heading h3{font-size:21px;font-weight:500;line-height:1.5;margin-top:9px;min-height:32px}
.space-showcase .tour-embed{height:clamp(460px,49vw,630px);min-height:0;border:1px solid #51584a}
.space-preview-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}
.space-preview-footer p{font-size:12px}
.space-preview-footer .text-link{font-size:13px;gap:18px;margin:0;padding:9px 0;flex-shrink:0;color:var(--accent)}
.space-choices{margin-top:35px;border-top:1px solid #565b50}
.space-choice{display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;min-height:69px;padding:16px 12px;background:transparent;color:#d7dccf;border-bottom:1px solid #565b50;text-align:left;font-size:15px;line-height:1.65;transition:background .2s,color .2s}
.space-choice:hover{background:#ffffff08;color:#fff}
.space-choice[aria-pressed="true"]{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.space-choice[aria-pressed="true"] .space-link-number{color:#4a5933}
.space-choice-arrow{opacity:0;translate:5px 0;transition:opacity .2s,translate .2s}
.space-choice[aria-pressed="true"] .space-choice-arrow{opacity:1;translate:0 0}
.space-choice:focus-visible{outline:2px solid var(--accent);outline-offset:4px;position:relative;z-index:1}
.space-showcase .space-story-copy>.space-choice-hint{font-size:12px;color:#aab29f;margin-top:17px}
@media(max-width:1000px) and (min-width:851px){.space-showcase{gap:26px;grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr)}.space-choice{font-size:14px;padding-inline:8px}}
@media(max-width:850px){
  .space-showcase{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding:40px var(--pad)}
  .space-showcase .space-story-copy{grid-column:1;grid-row:1}
  .space-preview-column{grid-column:1;grid-row:2}
  .space-showcase .space-story-copy h2{font-size:31px;margin:15px 0}
  .space-showcase .space-story-copy>p{font-size:14px}
  .space-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:0;margin-top:23px}
  .space-choice{grid-template-columns:18px minmax(0,1fr);gap:7px;border:1px solid #565b50;min-height:88px;padding:11px 9px;font-size:13px}
  .space-choice-arrow{display:none}
  .space-preview-heading h3{font-size:19px}
  .space-showcase .tour-embed{height:62svh;min-height:380px;max-height:580px}
  .space-preview-footer{align-items:flex-start;padding-top:13px;gap:12px}
  .space-preview-footer p{font-size:11px;max-width:190px;padding-top:9px}
  .space-preview-footer .text-link{font-size:12px;gap:12px}
}
@media(prefers-reduced-motion:reduce){.space-choice,.space-choice-arrow{transition:none}}

/* Film room: one inline player, five latest works beside it. */
.film-showcase{scroll-margin-top:28px}
.film-showcase .section-heading{align-items:flex-end;margin-bottom:45px}
.film-channel{font-size:13px;gap:22px;margin:0;white-space:nowrap}
.film-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,1fr);gap:40px;align-items:start}
.film-preview,.film-selection{min-width:0;scroll-margin-top:24px}
.film-preview-heading{min-height:78px;padding-bottom:20px}
.film-preview-heading>.eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;color:#646b59}
.film-preview-heading [data-film-number]{margin-left:auto;font-variant-numeric:tabular-nums}
.film-status-dot{width:6px;height:6px;border-radius:50%;background:#758c43;box-shadow:0 0 0 3px #758c4319}
.film-preview-heading h3{font-size:22px;font-weight:500;line-height:1.5;letter-spacing:-.035em;margin-top:10px;min-height:33px}
.film-player{position:relative;overflow:hidden;width:100%;min-width:0;aspect-ratio:16/9;background:#151715;border:1px solid #34382d}
.film-player iframe{position:relative;z-index:1;display:block;background:transparent}
.film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.film-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;text-align:center;padding:20px;background:#11190dcc;color:#fff}
.film-loading p{font-size:18px;line-height:1.7;margin:14px 0 20px}
.film-loading-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.film-loading a,.film-loading button{padding:10px 15px;background:var(--accent);color:var(--ink);font-size:12px}
.film-preview-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);min-height:65px}
.film-preview-footer p{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:12px}
.film-preview-footer .text-link{font-size:14px;margin:0;padding:10px 0;gap:26px;flex-shrink:0}
.film-external{display:inline-block;margin-top:16px;color:var(--muted);font-size:12px;text-underline-offset:4px}
.film-external:hover{text-decoration:underline}
.film-selection-heading{min-height:78px;padding-bottom:20px}
.film-selection-heading .eyebrow{font-size:10px;color:#646b59}
.film-selection-heading p{font-size:17px;margin-top:12px}
.film-choices{border-top:1px solid var(--line)}
.film-choice{display:grid;grid-template-columns:18px 72px minmax(0,1fr) 14px;gap:12px;align-items:center;width:100%;min-height:87px;border-bottom:1px solid var(--line);padding:14px 10px;background:transparent;color:var(--ink);text-align:left;transition:background .22s,color .22s}
.film-choice-number{font:11px monospace;color:#727767}
.film-choice-cover{width:72px;height:45px;object-fit:cover;filter:saturate(.7);transition:filter .22s}
.film-choice-copy{min-width:0}
.film-choice-copy strong{display:block;font-size:14px;font-weight:500;line-height:1.6}
.film-choice-copy small{display:flex;justify-content:space-between;flex-wrap:wrap;gap:3px;font-size:10px;color:#717965;margin-top:5px}
.film-choice:hover{background:#e8ecdF}
.film-choice[aria-pressed="true"]{background:var(--accent);border-color:#a3b783}
.film-choice[aria-pressed="true"] .film-choice-cover,.film-choice:hover .film-choice-cover{filter:none}
.film-choice[aria-pressed="true"] .film-choice-copy small{color:#4d5c38}
.film-choice-arrow{opacity:0;translate:4px 0;transition:opacity .22s,translate .22s}
.film-choice[aria-pressed="true"] .film-choice-arrow{opacity:1;translate:0 0}
.film-choice:focus-visible{outline:2px solid #536832;outline-offset:3px;position:relative;z-index:1}
.film-choice-hint{font-size:12px;color:var(--muted);margin-top:16px;line-height:1.8}
@media(max-width:1100px) and (min-width:851px){.film-layout{grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:28px}.film-choice{grid-template-columns:17px 60px minmax(0,1fr) 12px;gap:9px}.film-choice-cover{width:60px;height:40px}}
@media(max-width:850px){
  .film-layout{grid-template-columns:minmax(0,1fr);gap:28px}
  .film-showcase .section-heading{margin-bottom:30px}
  .film-selection-heading{min-height:0;padding-bottom:17px}
  .film-selection-heading p{margin-top:8px}
  .film-preview-heading{min-height:0;padding-bottom:18px}
  .film-preview-heading h3{font-size:20px}
  .film-choice{grid-template-columns:20px 88px minmax(0,1fr) 18px;gap:13px;min-height:84px}
  .film-choice-cover{width:88px;height:50px}
  .film-choice-copy strong{font-size:15px}
}
@media(max-width:700px){.film-channel{margin-top:18px;font-size:12px}.film-player{min-height:200px}.film-preview-footer p{font-size:12px;gap:9px}.film-preview-footer .text-link{font-size:13px;gap:16px}.film-choice{grid-template-columns:17px 62px minmax(0,1fr) 14px;gap:10px;padding-inline:8px}.film-choice-cover{width:62px;height:43px}.film-choice-copy strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.film-choice,.film-choice-cover,.film-choice-arrow{transition:none}}

.film-extra-actions{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:16px}.film-extra-actions .film-external{margin:0}.film-refresh{background:transparent;color:var(--muted);font-size:12px;padding:8px 0}.film-refresh:hover{text-decoration:underline;text-underline-offset:4px}
.legacy-links{display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:28px}.legacy-links a{font-size:16px;border-bottom:1px solid var(--line);padding:14px 0}.legacy-links a:hover{border-color:var(--ink)}
.legacy-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 32px;padding-top:0}.legacy-video img{width:100%;aspect-ratio:16/9;object-fit:cover}.legacy-video h2{font-size:21px;line-height:1.6;font-weight:500;margin-top:20px}.legacy-video .text-link{font-size:14px;margin-top:15px}.legacy-unavailable{aspect-ratio:16/9;background:#e6e9df;display:grid;place-items:center;color:var(--muted)}.legacy-photo img{display:block;width:100%;height:auto}.legacy-photo{align-self:start}
#email-brief{display:flex;justify-content:space-between;gap:20px;margin:26px 0 10px}#inquiry-success #download{background:transparent;padding:12px 0;text-align:left}
@media(max-width:700px){.legacy-gallery{grid-template-columns:minmax(0,1fr);gap:35px}.legacy-video h2{font-size:19px}.legacy-links{gap:10px 24px}.legacy-links a{font-size:14px}}
