/* 南雍治道 · A seven-chapter case exhibition. Scoped to the homepage. */
.ex-title-phrase{display:inline-block}
.cover-page{overflow-x:clip}.cover-page::before{display:none}.cover-progress{display:none}
.cover-footer{align-items:center}.ex-scroll-cue{display:flex;align-items:center;gap:20px;min-height:44px;color:#e4e8e8;font-family:var(--sans);font-size:13px;letter-spacing:.1em}.ex-scroll-cue b{font-size:24px;font-weight:400}.cover-index small{color:#aeb7bc}.cover-footer>span:first-child{color:#aeb7bc}
.ex-nav{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:32px;padding:0 4vw;height:72px;background:#f6f3ebf5;backdrop-filter:blur(16px);color:#182f3c;border-bottom:1px solid #213e4924}
.ex-nav-brand{display:flex;align-items:center;gap:10px;flex:none;min-height:44px;font:19px var(--serif);font-weight:700;white-space:nowrap}.ex-nav-brand img{border-radius:5px}.ex-nav-links{display:flex;justify-content:flex-end;flex:1;gap:clamp(12px,2.1vw,38px);overflow-x:auto;scrollbar-width:thin}.ex-nav-links a{position:relative;display:flex;align-items:center;gap:7px;min-height:71px;white-space:nowrap;font-size:13px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.ex-nav-links a>span{font:10px var(--mono);color:#7a7266}.ex-nav-links a:hover,.ex-nav-links a[aria-current]{color:#9f491d;border-bottom-color:#b5683b}
.ex-intro{padding:58px 6vw;display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:32px;align-items:center;background:#f6f3eb;color:#18303e;border-bottom:1px solid #213e4924}.ex-intro p{margin:0;font:clamp(25px,2.6vw,40px)/1.5 var(--serif)}.ex-intro em{font-style:normal;color:#9c572f}.ex-intro-note{font-size:13px;color:#626b6b;line-height:1.9}
.ex-section{--ex-accent:#a2552b;--ex-muted:#5d696b;--ex-line:#17313d29;position:relative;padding:42px max(6vw,24px) 92px;scroll-margin-top:72px;isolation:isolate;color:#18303e}.ex-paper{background:#f6f3eb}.ex-navy{--ex-accent:#e5b77b;--ex-muted:#b2c1c9;--ex-line:#b5c5ca40;background:#102a3d;color:#f8f4e9}.ex-section-meta{display:flex;justify-content:space-between;gap:20px;padding-bottom:24px;margin-bottom:64px;border-bottom:1px solid var(--ex-line);font:11px/1.7 var(--mono);letter-spacing:.1em;color:var(--ex-muted)}.ex-section-meta>span:last-child{font-family:var(--sans);letter-spacing:.12em}
.ex-eyebrow{display:block;margin:0 0 22px;font:11px/1.7 var(--mono);letter-spacing:.15em;color:var(--ex-accent,#9c572f)}.ex-copy>.ex-eyebrow,.ex-heading-row .ex-eyebrow{font-family:var(--sans);font-size:14px;letter-spacing:.23em}.ex-section h2{font:500 clamp(36px,4.4vw,70px)/1.24 var(--serif);letter-spacing:-.025em;margin:0 0 28px;text-wrap:balance}.ex-section h2 em{font-style:normal;color:var(--ex-accent)}.ex-lead{max-width:31em;font:20px/1.8 var(--serif);margin:0 0 20px}.ex-description{color:var(--ex-muted);font-size:16px;line-height:1.95;max-width:35em;margin:0 0 28px}.ex-split{display:grid;grid-template-columns:1fr 1.25fr;gap:7vw;align-items:center}.ex-copy{max-width:620px}.ex-button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;min-height:56px;margin-top:16px;padding:13px 23px;background:#183341;color:#fffaf0;font-size:15px;border:1px solid #183341;transition:background .2s,color .2s,transform .2s}.ex-button>span{font-size:24px;line-height:1;transition:transform .2s}.ex-button:hover{background:#a2552b;border-color:#a2552b;transform:translateY(-2px)}.ex-button:hover>span{transform:translate(2px,-2px)}.ex-button-light{background:#f4eddf;color:#142f40;border-color:#f4eddf}.ex-button-light:hover{background:#e5b77b;color:#102a3d}.ex-button-gold{background:#e5b77b;color:#172c35;border-color:#e5b77b}.ex-button-gold:hover{background:#f1cc9d;color:#172c35}
.ex-tags{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 12px}.ex-tags>span{border:1px solid var(--ex-line);padding:5px 12px;font-size:12px;color:var(--ex-muted)}.ex-preview{display:block;overflow:hidden;border:1px solid var(--ex-line);background:#e6e9e6}.ex-preview img{width:100%;height:auto;transition:transform .7s var(--ease)}.ex-preview:hover img{transform:scale(1.025)}.ex-caption{display:flex;justify-content:space-between;gap:16px;margin-top:16px;color:var(--ex-muted);font-size:11px;letter-spacing:.06em}.ex-case-art{position:relative;padding-top:60px}.ex-watermark{position:absolute;right:-10px;top:-90px;font:210px/1 Georgia,serif;color:#1f3b490c;z-index:-1}.ex-case-preview{box-shadow:20px 24px 0 #e8e2d5,0 18px 40px #132b3912;margin-bottom:42px;transform:rotate(-2deg)}.ex-case-preview:hover{transform:rotate(0);transition:transform .3s}.ex-case-line{display:flex;align-items:center;gap:20px;margin-top:44px;font:18px var(--serif);color:#576968}.ex-case-line i{height:1px;flex:1;background:#a2552b55}.ex-case-line span:last-child{color:#9c572f}
.ex-heading-row{display:flex;justify-content:space-between;align-items:flex-end;gap:7vw;margin-bottom:40px}.ex-heading-row h2{margin-bottom:0}.ex-heading-row>.ex-description{flex:0 1 360px;margin:0}.ex-portfolio-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:6vw;align-items:center}.ex-portfolio-figure{margin:0}.ex-portfolio-figure .ex-preview{box-shadow:0 28px 55px #020e1740}.ex-index-list{list-style:none;margin:0;padding:0}.ex-index-list li{display:flex;gap:20px;border-top:1px solid var(--ex-line);padding:23px 0}.ex-index-list li>span{font:12px var(--mono);color:var(--ex-accent);padding-top:6px}.ex-index-list h3{margin:0 0 8px;font:25px var(--serif)}.ex-index-list p{margin:0;color:var(--ex-muted);font-size:14px}.ex-portfolio-aside .ex-button{width:100%}
.ex-film{--ex-accent:#e5b77b;--ex-muted:#b7c1c5;--ex-line:#bac9cc3b;background:#081b27;color:#f8f4e9;padding-bottom:55px}.ex-film h2{font-size:clamp(34px,3.8vw,60px)}.ex-cinema{display:block;position:relative;overflow:hidden;aspect-ratio:2.32;background:#102a3d}.ex-cinema>img{width:100%;height:100%;object-fit:cover;filter:brightness(.72);transition:transform 1s var(--ease),filter .5s}.ex-cinema:hover>img{transform:scale(1.025);filter:brightness(.9)}.ex-cinema-shade{position:absolute;inset:0;background:linear-gradient(90deg,#041019e8,transparent 85%),linear-gradient(0deg,#041019c9,transparent 80%)}.ex-cinema-copy{position:absolute;bottom:10%;left:5%;display:flex;flex-direction:column;gap:20px}.ex-cinema-copy>.ex-eyebrow{margin:0;color:#e4b77e}.ex-cinema-copy strong{font:clamp(28px,3.4vw,52px)/1.35 var(--serif)}.ex-cinema-copy>span:last-child{font-size:14px}.ex-cinema-copy b{margin-left:25px;font-weight:400}.ex-play{position:absolute;right:22%;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:88px;height:88px;border:1px solid #ffffffa6;border-radius:50%;background:#ffffff12;backdrop-filter:blur(5px);transition:background .2s}.ex-play svg{width:35px;fill:#fff}.ex-cinema:hover .ex-play{background:#e5b77b55}.ex-cinema-corner{position:absolute;right:28px;bottom:25px;font:11px var(--mono);letter-spacing:.12em}
.ex-studio .ex-section-meta{margin-bottom:60px}.ex-research-sheet{background:#fffdf7;padding:32px 38px;border:1px solid #c9c2b5;box-shadow:14px 16px 0 #e6e0d4;transform:rotate(1deg)}.ex-sheet-label{display:flex;justify-content:space-between;padding-bottom:25px;border-bottom:1px solid #18303e33;color:#8a5734;font:11px var(--mono);letter-spacing:.1em}.ex-workflow{list-style:none;padding:0;margin:12px 0 20px}.ex-workflow li{display:flex;align-items:center;gap:25px;padding:20px 0;border-bottom:1px solid #18303e22}.ex-workflow li>span{font:13px var(--mono);color:#8a5734}.ex-workflow h3{margin:0 0 8px;font:24px var(--serif)}.ex-workflow p{margin:0;font-size:13px;color:#68706b}.ex-workflow b{margin-left:auto;font-weight:400;color:#9c572f}.ex-sheet-result{background:#153240;color:#fff8e9;padding:24px}.ex-sheet-result>span{font-size:11px;letter-spacing:.15em;color:#dabb8f}.ex-sheet-result strong{display:block;font:24px/1.5 var(--serif);margin:8px 0}.ex-sheet-result p{margin:0;font-size:12px;color:#c0ccd0}.ex-studio-note{display:flex;gap:40px;border-top:1px solid var(--ex-line);padding-top:24px;margin-top:65px;font-size:13px;color:var(--ex-muted)}.ex-studio-note>span{color:#9c572f;flex:none}.ex-studio-note p{margin:0}
.ex-sage{--ex-accent:#326658;background:#e6ece7;--ex-muted:#526660}.ex-model-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:38px;padding:22px;background:#f3f6f0;border:1px solid #234a3b33;box-shadow:0 20px 50px #243d3010}.ex-model-preview{border:0;align-self:center}.ex-model-rail{padding:15px 12px;display:flex;flex-direction:column}.ex-model-rail>.ex-eyebrow{margin-bottom:5px;font-size:10px}.ex-model-rail>div{position:relative;padding:20px 0 20px 30px;border-bottom:1px solid var(--ex-line)}.ex-model-rail>div>span{position:absolute;left:0;top:23px;font:10px var(--mono);color:#657f74}.ex-model-rail h3{font:23px var(--serif);margin:0 0 8px}.ex-model-rail p{font-size:12px;color:#53665e;margin:0}.ex-model-rail .ex-button{padding:12px 16px;gap:16px;background:#285948;border-color:#285948;margin-top:auto}.ex-model-rail .ex-button:hover{background:#183e31}
.ex-game{--ex-accent:#e5b77b;--ex-muted:#c4cac7;--ex-line:#ccbc993d;background:#152a2c;color:#f9f3e7}.ex-game-layout{gap:5vw;grid-template-columns:1fr 1.25fr}.ex-game-figure{margin:0}.ex-game-figure .ex-preview{border:6px solid #ffffff0f;box-shadow:0 25px 60px #0415174d}.ex-game-path{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:64px 0 0;border-top:1px solid var(--ex-line)}.ex-game-path li{padding:30px 30px 0 0}.ex-game-path li+li{padding-left:35px;border-left:1px solid var(--ex-line)}.ex-game-path span{font:10px var(--mono);letter-spacing:.13em;color:#d8b27b}.ex-game-path h3{font:25px var(--serif);margin:18px 0 12px}.ex-game-path p{font-size:14px;color:var(--ex-muted);margin:0}
.ex-assistant-mark{display:flex;gap:15px;align-items:center;margin-bottom:30px;font-size:14px;color:#916339}.ex-assistant-mark img{background:#fffbf3;border:1px solid #d7cdbc;padding:6px;border-radius:8px;width:50px;height:50px}.ex-question-sheet{padding:34px 40px;background:#ebe5d8;border-top:3px solid #a17e48}.ex-question-sheet .ex-eyebrow{color:#7a5c33;font-family:var(--sans)}.ex-question-sheet ol{list-style:none;padding:0;margin:0}.ex-question-sheet li{display:grid;grid-template-columns:85px 1fr;gap:20px;padding:24px 0;border-top:1px solid #213c4326}.ex-question-sheet li>span{font-size:11px;color:#766043;padding-top:6px;letter-spacing:.07em}.ex-question-sheet li>p{font:22px/1.6 var(--serif);margin:0}.ex-text-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #213c4338;min-height:56px;font-size:13px;color:#805321}.ex-assistant-bottom{display:grid;grid-template-columns:1fr 1.25fr;gap:7vw;align-items:center;padding-top:50px;margin-top:60px;border-top:1px solid var(--ex-line)}.ex-assistant-bottom>span{font:25px/1.6 var(--serif);color:#7d725e}.ex-assistant-preview{display:block;max-width:620px;max-height:250px;overflow:hidden;border:1px solid #c9c2b5;box-shadow:0 10px 25px #243d3010}.ex-assistant-preview img{width:100%;height:auto}
.ex-footer{padding:60px 6vw 25px;background:#091e2b;color:#f5efe1;display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:30px}.ex-footer-brand{display:flex;gap:16px;align-items:center}.ex-footer-brand img{padding:6px;background:#f5efe1;border-radius:8px}.ex-footer-brand strong{display:block;font:26px var(--serif);letter-spacing:.1em}.ex-footer-brand span{display:block;margin-top:10px;font-size:11px;color:#b7c3ca}.ex-footer p{font:24px/1.6 var(--serif);margin:0;color:#cfb38d}.ex-footer>a{display:flex;align-items:center;gap:30px;min-height:48px;font-size:13px;border-bottom:1px solid #ffffff44}.ex-footer>a>span{font-size:24px}.ex-footer-line{grid-column:1/-1;border-top:1px solid #ffffff26;display:flex;justify-content:space-between;padding-top:20px;margin-top:35px;font:10px var(--mono);letter-spacing:.1em;color:#a4b2b8}
.ex-appear{opacity:1;transform:none;transition:opacity .75s ease,transform .75s var(--ease)}.ex-motion .ex-appear:not(.ex-seen){opacity:0;transform:translateY(24px)}
@media(min-width:1600px){.ex-section{padding-inline:max(6vw,calc((100vw - 1540px)/2))}}
@media(max-width:1180px){.ex-nav{gap:18px;padding-inline:24px}.ex-nav-brand>span{display:none}.ex-nav-links{justify-content:flex-start;gap:25px}.ex-section{padding-bottom:70px}.ex-section-meta{margin-bottom:45px}.ex-split{gap:5vw}.ex-intro{grid-template-columns:1fr 2fr}.ex-intro-note{display:none}.ex-section h2{font-size:44px}.ex-model-layout{grid-template-columns:minmax(0,1fr) 220px;gap:15px;padding:15px}.ex-model-rail>div{padding-top:16px;padding-bottom:16px}.ex-model-rail .ex-button{font-size:13px}.ex-model-rail h3{font-size:20px}.cover-footer{position:relative;margin-top:24px}.ex-game-layout{grid-template-columns:1fr 1.15fr}.ex-question-sheet{padding:28px}.ex-question-sheet li{grid-template-columns:70px 1fr;gap:15px}.ex-question-sheet li>p{font-size:20px}}
@media(max-width:800px){.ex-nav{height:60px;padding-inline:18px;gap:14px}.ex-nav-links a{min-height:59px;font-size:12px}.ex-nav-brand img{width:25px;height:25px}.ex-nav-links{gap:24px}.ex-section{scroll-margin-top:60px;padding:28px 24px 64px}.ex-section-meta{font-size:9px;letter-spacing:.04em;margin-bottom:38px;padding-bottom:18px}.ex-section-meta>span:last-child{font-size:10px;letter-spacing:0}.ex-intro{display:block;padding:32px 24px}.ex-intro .ex-eyebrow{margin-bottom:10px;font-size:9px}.ex-intro p{font-size:28px}.ex-split,.ex-portfolio-layout,.ex-game-layout,.ex-assistant-bottom{grid-template-columns:1fr;gap:35px}.ex-section h2{font-size:clamp(36px,6vw,50px);margin-bottom:24px}.ex-copy{max-width:none}.ex-lead{font-size:20px}.ex-description{font-size:16px;max-width:38em;margin-bottom:20px}.ex-heading-row{display:block;margin-bottom:32px}.ex-heading-row>.ex-description{margin-top:25px;max-width:38em}.ex-case-art{padding-top:10px}.ex-watermark{display:none}.ex-case-preview{transform:none;box-shadow:10px 12px 0 #e8e2d5;margin-bottom:30px}.ex-case-line{margin-top:28px;font-size:16px}.ex-caption{font-size:10px}.ex-portfolio-layout{gap:28px}.ex-index-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ex-index-list li{gap:10px;padding:18px 0}.ex-index-list h3{font-size:20px}.ex-index-list p{font-size:12px}.ex-index-list li>span{font-size:10px}.ex-portfolio-aside .ex-button{width:auto}.ex-cinema{aspect-ratio:1.65}.ex-cinema-copy strong{font-size:30px}.ex-cinema-copy{gap:14px;bottom:12%}.ex-cinema-copy>.ex-eyebrow{font-size:8px}.ex-play{width:62px;height:62px;right:16%}.ex-play svg{width:27px}.ex-cinema-corner{font-size:9px;right:16px;bottom:16px}.ex-cinema-copy>span:last-child{font-size:12px}.ex-research-sheet{transform:none;padding:27px 30px;box-shadow:8px 9px 0 #e6e0d4}.ex-studio-note{margin-top:40px;gap:20px}.ex-model-layout{grid-template-columns:1fr;padding:12px;gap:0}.ex-model-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:0 16px;padding:15px 10px 8px}.ex-model-rail>.ex-eyebrow{grid-column:1/-1}.ex-model-rail>div{padding:16px 0}.ex-model-rail>div>span{position:static}.ex-model-rail h3{margin-top:8px;font-size:19px}.ex-model-rail p{font-size:11px}.ex-model-rail .ex-button{grid-column:1/-1;justify-self:start;margin-top:20px}.ex-game-path{margin-top:35px}.ex-game-path li{padding:23px 16px 0 0}.ex-game-path li+li{padding-left:18px}.ex-game-path h3{font-size:22px}.ex-game-path p{font-size:12px}.ex-game-path span{font-size:8px;letter-spacing:.04em}.ex-question-sheet li{grid-template-columns:90px 1fr}.ex-question-sheet li>p{font-size:24px}.ex-assistant-bottom{margin-top:36px;padding-top:30px;gap:24px}.ex-assistant-bottom>span{font-size:22px}.ex-assistant-preview{max-width:none;max-height:300px}.ex-footer{padding:40px 24px 22px;grid-template-columns:1fr auto;gap:25px}.ex-footer p{grid-column:1/-1;grid-row:2;font-size:23px}.ex-footer-line{margin-top:12px}.ex-footer-brand span{font-size:9px}.ex-footer-brand strong{font-size:22px}}
@media(max-width:480px){.ex-section{padding-inline:20px}.ex-nav{padding-inline:14px}.ex-section-meta>span:last-child{max-width:90px;text-align:right;line-height:1.8}.ex-section-meta{align-items:center}.ex-section h2{font-size:38px}.ex-section h2 em{display:inline}.ex-section .ex-heading-row h2{font-size:36px}.ex-eyebrow{margin-bottom:17px}.ex-copy>.ex-eyebrow,.ex-heading-row .ex-eyebrow{font-size:13px}.ex-button{min-height:54px;padding-inline:20px;margin-top:10px}.ex-caption{gap:15px;line-height:1.7}.ex-caption>span:last-child{text-align:right}.ex-index-list{display:block}.ex-index-list li{padding:17px 0;gap:18px}.ex-index-list h3{font-size:22px}.ex-index-list p{font-size:14px}.ex-cinema{aspect-ratio:1.1}.ex-cinema-copy{left:7%;bottom:12%;gap:16px}.ex-cinema-copy strong{font-size:29px}.ex-play{right:7%;top:28%;width:54px;height:54px}.ex-cinema-corner{display:none}.ex-cinema-shade{background:linear-gradient(0deg,#041019eb,transparent 100%)}.ex-research-sheet{padding:23px 20px}.ex-sheet-label{font-size:9px}.ex-workflow{margin-top:10px}.ex-workflow li{gap:17px}.ex-workflow h3{font-size:22px}.ex-workflow p{font-size:12px}.ex-sheet-result strong{font-size:22px}.ex-studio-note{display:block;font-size:12px}.ex-studio-note>span{display:block;margin-bottom:12px}.ex-model-rail{gap:0 12px;padding-inline:4px}.ex-model-rail h3{font-size:18px}.ex-model-rail p{font-size:10px}.ex-game-path{display:block}.ex-game-path li,.ex-game-path li+li{border-left:0;border-bottom:1px solid var(--ex-line);padding:23px 0}.ex-game-path span{font-size:10px}.ex-game-path h3{margin:10px 0}.ex-game-path p{font-size:14px}.ex-question-sheet{padding:24px}.ex-question-sheet li{grid-template-columns:1fr;gap:10px;padding:20px 0}.ex-question-sheet li>p{font-size:23px}.ex-assistant-bottom>span{font-size:21px}.ex-assistant-preview{max-height:210px}.ex-footer{padding-inline:20px}.ex-footer-brand span{max-width:160px;line-height:1.7}.ex-footer>a{gap:14px;font-size:11px}.ex-footer-line{font-size:8px;gap:15px}.cover-footer .ex-scroll-cue{margin-left:auto;font-size:12px}.cover-footer>span:first-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.ex-appear,.ex-preview img,.ex-button,.ex-button>span,.ex-cinema>img,.ex-case-preview{transition:none!important;transform:none!important}.ex-motion .ex-appear:not(.ex-seen){opacity:1;transform:none}}
