@font-face{font-family:PortfolioSans;src:url('/assets/portfolio-sans-fa6265955f.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f6f5f0;--white:#fffefa;--ink:#172f2e;--muted:#596765;--line:#d4dbd4;--green:#173d3a;--accent:#2458db;--pale:#eaf0dc;--lime:#d8ec9e;--pad:clamp(22px,4.8vw,76px);--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:108px}body{margin:0;background:var(--paper);color:var(--ink);font-family:PortfolioSans,Arial,sans-serif;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;text-wrap:balance}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.wrap{width:min(calc(100% - var(--pad)*2),var(--max));margin-inline:auto}.skip{position:fixed;top:10px;left:10px;transform:translateY(-180%);background:var(--white);padding:14px;z-index:100}.skip:focus{transform:none}.eyebrow{font-size:11px;letter-spacing:.12em;font-weight:550;line-height:1.7}.dot{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:7px}
.header{position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}.brand{display:flex;gap:16px;align-items:center;font-size:16px;font-weight:650;flex-shrink:0}.brand-mark{font-family:Arial,sans-serif;font-size:27px;letter-spacing:-3px;font-weight:700;line-height:1}.brand-mark span{color:var(--accent);font-size:37px}.brand small{display:block;font-size:10px;color:var(--muted);font-weight:450;letter-spacing:.1em;margin-top:2px}.nav nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav a:hover{color:var(--accent)}.nav .nav-resume{padding:11px 18px;border:1px solid var(--ink);border-radius:3px}.nav-resume:hover{background:var(--ink);color:var(--white)!important}.nav-resume span{margin-left:15px}
.hero{padding:35px 0 0}.hero-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:37px}.availability{font-size:11px;color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.hero h1{font-size:clamp(42px,4.1vw,62px);font-weight:650;line-height:1.25;letter-spacing:-.045em;margin-bottom:24px}.hero h1 em{font-style:normal;color:var(--accent)}.hero-copy{font-size:16px;color:var(--muted);line-height:1.95}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:46px;padding:12px 18px;border:1px solid var(--line);border-radius:3px;font-size:13px;font-weight:550;transition:background .2s,color .2s,border-color .2s}.button.primary{background:var(--green);color:var(--white);border-color:var(--green)}.button:hover{background:var(--accent);border-color:var(--accent);color:white}.hero-scope{display:flex;flex-wrap:wrap;gap:10px;margin-top:31px;font-size:11px;color:var(--muted)}.hero-scope span+span:before{content:' / ';margin-right:10px;color:#818d87}.hero-showcase{position:relative;display:block;background:#ede7dd;border:1px solid #ddd8cd;border-radius:5px;box-shadow:0 12px 32px #233e3810;transition:transform .3s}.hero-showcase:hover{transform:translateY(-4px)}.showcase-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.08em;padding:15px 19px;color:#636b64;border-bottom:1px solid #d9d3c6}.hero-showcase>img{width:100%;aspect-ratio:1.58;object-fit:cover;object-position:center}.showcase-bottom{padding:18px 19px 21px;display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #d9d3c6}.showcase-bottom strong{font-family:Georgia,serif;font-size:17px;letter-spacing:.08em;font-weight:400}.showcase-bottom>span{font-size:10px;color:#59635d}.showcase-note{position:absolute;right:20px;bottom:78px;background:var(--pale);padding:10px 14px;font-size:10px;border:1px solid #c8d5bd;box-shadow:0 3px 8px #172f2e08}.showcase-note b{margin-left:18px}.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:43px;border-block:1px solid var(--line)}.proof-strip>a{padding:27px 29px 25px;transition:background .2s}.proof-strip>a:first-child{padding-left:0}.proof-strip>a+a{border-left:1px solid var(--line)}.proof-strip>a:last-child{padding-right:0}.proof-label{display:block;font-size:11px;color:var(--muted)}.proof-strip strong{display:block;font-family:Arial,PortfolioSans,sans-serif;font-weight:500;font-size:clamp(32px,3.4vw,49px);line-height:1.25;letter-spacing:-.025em;margin:11px 0 10px;font-variant-numeric:tabular-nums}.proof-strip strong small{font-family:PortfolioSans,sans-serif;font-size:13px;font-weight:450;letter-spacing:0;margin-left:8px}.proof-strip p{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;gap:8px;line-height:1.6}.proof-strip p span{color:var(--accent);font-size:15px}.proof-strip a:hover strong{color:var(--accent)}
.section{padding-block:85px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:32px}.section-head h2{font-size:clamp(28px,3vw,43px);line-height:1.35;letter-spacing:-.035em;margin-top:12px}.section-head>p{font-size:13px;line-height:1.9;color:var(--muted);max-width:400px}.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:30px;min-height:54px}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters button{padding:10px 15px;background:transparent;border:1px solid transparent;border-radius:3px;color:var(--muted);font-size:12px;min-height:40px}.filters button span{margin-left:9px;font-size:10px}.filters button[aria-pressed=true]{background:var(--green);color:var(--white);border-color:var(--green)}.filters button:hover{border-color:var(--ink)}.work-count{font-size:11px;white-space:nowrap;color:var(--muted)}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 32px}.project-card{min-width:0}.project-visual{display:block;position:relative;overflow:hidden;border-radius:5px}.project-open{position:absolute;bottom:18px;right:18px;display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:var(--white);color:var(--ink);transition:background .2s,color .2s,transform .2s}.project-visual:hover .project-open{background:var(--accent);color:white;transform:rotate(45deg)}.project-meta{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted);margin:19px 0 11px}.project-card h3{font-size:25px;letter-spacing:-.025em;line-height:1.5;margin-bottom:12px}.project-card h3 a{display:flex;align-items:center;justify-content:space-between;gap:15px}.project-card h3 span{font-size:20px;color:var(--accent)}.project-card>p{font-size:15px;line-height:1.9;color:var(--muted)}.project-result{font-size:13px;font-weight:550;color:var(--green);margin-top:19px;padding-top:16px;border-top:1px solid var(--line);line-height:1.8}.text-link{display:inline-flex;font-size:11px;gap:15px;line-height:1.8;border-bottom:1px solid #879692;padding-block:10px 2px;margin-top:3px}.text-link:hover{color:var(--accent);border-color:var(--accent)}
.art{aspect-ratio:1.6;position:relative;overflow:hidden}.art-image{background:#e8e5da}.art-image>img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.project-visual:hover .art-image>img{transform:scale(1.025)}.art-tag{position:absolute;left:18px;top:18px;padding:7px 10px;background:var(--white);font-size:10px;border-radius:2px;color:var(--ink)}.art-label{position:absolute;inset:21px 24px auto;display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:.08em;z-index:2}.art-label span{letter-spacing:0}.art-foot{position:absolute;bottom:19px;left:24px;right:24px;font-size:11px;display:flex;align-items:center;gap:18px;line-height:1.7}.art-dongjin{background:#dde8e8}.art-dongjin .art-foot{color:#456361}.phone-pair{display:flex;justify-content:center;gap:27px;position:absolute;top:58px;bottom:50px;left:20px;right:20px}.phone-pair img{height:100%;width:auto;max-width:43%;object-fit:contain;border-radius:13px;border:5px solid #253c43;box-shadow:9px 9px 0 #b9d0d0;background:#fff}.phone-pair img:nth-child(2){transform:translateY(16px)}.art-team{background:var(--green);color:var(--white)}.art-team .art-label,.art-team .art-foot{color:#c7d7d0}.team-chart{position:absolute;top:61px;left:15%;right:15%;display:grid;justify-items:center;font-size:11px}.chart-root{border:1px solid #859c91;padding:10px 24px;border-radius:3px}.chart-branches{display:flex;width:100%;justify-content:space-between;margin-top:23px;position:relative}.chart-branches:before{content:'';position:absolute;border-top:1px solid #6c8b7f;top:-12px;left:16%;right:16%}.chart-branches:after{content:'';height:12px;border-left:1px solid #6c8b7f;position:absolute;left:50%;top:-23px}.chart-branches span{position:relative;padding:8px 13px;border:1px solid #6c8b7f;border-radius:3px}.chart-branches span:before{content:'';height:12px;border-left:1px solid #6c8b7f;position:absolute;left:50%;top:-13px}.team-art-stats{position:absolute;left:15%;right:15%;bottom:56px;display:flex;justify-content:space-between;gap:20px}.team-art-stats strong{display:block;font-family:Arial,sans-serif;font-weight:400;color:var(--lime);font-size:38px;line-height:1.3}.team-art-stats small{font-size:13px}.team-art-stats div>span{font-size:10px;color:#c7d7d0}.art-custom{background:#e9eadc}.custom-diagram{position:absolute;inset:66px 28px 90px;display:flex;align-items:center;justify-content:center;gap:30px}.custom-symbol{font-size:100px;line-height:1;font-family:Arial,sans-serif;color:#546749}.custom-diagram strong{font-size:30px;font-weight:500;display:block;letter-spacing:.06em}.custom-diagram div>span{font-size:11px;color:#626d54;display:block;margin-top:9px}.custom-types{display:flex;gap:10px;position:absolute;bottom:66px;left:0;right:0;justify-content:center}.custom-types span{border:1px solid #bfc6ab;padding:7px 12px;border-radius:3px;font-size:11px}.art-custom .art-foot{justify-content:space-between;border-top:1px solid #cbd1bc;padding-top:12px;bottom:13px}.art-custom .art-foot strong{font-family:Arial,sans-serif;font-weight:400;font-size:18px;margin-right:45px}.art-hackathon-film{background:#081320}.art-hackathon-film>img{object-fit:contain}.art-hope>img{object-position:center}
.approach{background:var(--green);color:var(--white);padding-block:70px}.approach .eyebrow{color:#bed0c4}.approach .section-head>p{color:#bfcec4}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:43px}.capability-grid article{padding-top:24px;border-top:1px solid #537068}.capability-no{color:var(--lime);font-family:Arial,sans-serif;font-size:14px}.capability-grid h3{font-size:21px;line-height:1.5;margin:20px 0 15px}.capability-grid p{font-size:14px;line-height:2;color:#ccd7ce}.capability-grid a{display:inline-block;color:var(--lime);font-size:11px;margin-top:24px;padding-bottom:5px;border-bottom:1px solid #6b856e}.capability-grid a:hover{color:white}.tool-note{display:grid;grid-template-columns:130px 1fr 1fr;gap:30px;border-top:1px solid #537068;margin-top:45px;padding-top:25px;align-items:start;font-size:12px;line-height:1.9;color:#bfcec4}.tool-note>span{font-size:10px}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:80px}.about-grid h2{font-size:56px;letter-spacing:.02em;margin-top:18px}.about-en{font-size:12px;letter-spacing:.2em;color:var(--muted)}.about-lead{font-size:30px;line-height:1.6;font-weight:500;letter-spacing:-.025em}.about-copy{color:var(--muted);font-size:15px;line-height:2;margin-top:22px;max-width:660px}.about-facts{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.about-facts span,.about-facts strong,.about-facts small{display:block}.about-facts span{font-size:10px;color:var(--muted);margin-bottom:9px}.about-facts strong{font-size:13px;font-weight:500;margin-bottom:6px}.about-facts small{font-size:11px;color:var(--muted);line-height:1.8}.resume-section{padding-bottom:84px}.resume-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:4px;overflow:hidden}.resume-card{padding:25px 22px 20px;display:flex;flex-direction:column;justify-content:space-between;gap:30px;background:var(--white);transition:background .2s}.resume-card+.resume-card{border-left:1px solid var(--line)}.resume-card:first-child{background:var(--pale)}.resume-card:hover{background:#e1e9d8}.resume-type{font-size:10px;color:var(--muted)}.resume-card h3{font-size:19px;margin:14px 0 11px}.resume-card p{font-size:12px;line-height:1.9;color:var(--muted)}.resume-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px}.resume-bottom>span{font-size:24px;color:var(--green)}
footer{background:#e5e9df;padding:60px 0 25px}footer h2{font-size:clamp(32px,3.7vw,53px);line-height:1.35;font-weight:550;margin-top:15px;letter-spacing:-.025em}.contact-top{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-links{display:grid;gap:15px;font-family:Arial,PortfolioSans,sans-serif;font-size:20px}.contact-links p{font-family:PortfolioSans,sans-serif;font-size:11px;color:var(--muted);margin-bottom:3px}.contact-links a{border-bottom:1px solid #b7c5b9;padding-bottom:5px}.contact-links a:hover{color:var(--accent)}.footer-meta{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);border-top:1px solid #bdcabc;padding-top:24px;margin-top:56px}
/* Cases share the same evidence-led hierarchy. */
.case-hero{padding:35px 0 40px}.back-link{font-size:12px;color:var(--muted);display:inline-block;margin-bottom:44px}.back-link:hover{color:var(--accent)}.case-kicker{display:flex;align-items:center;justify-content:space-between;gap:20px}.case-state{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:7px 11px;border-radius:2px}.case-hero h1{font-size:clamp(38px,5vw,69px);line-height:1.3;letter-spacing:-.045em;margin:17px 0 21px}.case-lead{font-size:clamp(18px,1.85vw,25px);line-height:1.8;max-width:940px;color:var(--muted)}.case-info{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px;border-top:1px solid var(--line);margin:31px 0 0;padding-top:24px}.case-info dt{font-size:10px;color:var(--muted);margin-bottom:8px}.case-info dd{font-size:13px;line-height:1.9;margin:0}.case-hero .actions:empty{display:none}.case-visual{border-radius:5px;overflow:hidden}.case-visual .art{aspect-ratio:2.1;max-height:620px}.case-visual .art-image img{object-fit:cover}.case-visual .art-hackathon-film img{object-fit:contain}.case-visual .art-goose img{object-position:center}.case-visual .art-label{inset:27px 34px auto;font-size:12px}.case-visual .art-foot{left:34px;right:34px;bottom:23px;font-size:13px}.case-visual .phone-pair{top:66px;bottom:65px;gap:70px}.case-visual .phone-pair img{border-width:7px;border-radius:21px;box-shadow:15px 15px 0 #b9d0d0}.case-visual .team-chart{font-size:16px;top:17%;left:25%;right:25%}.case-visual .chart-root{padding:14px 34px}.case-visual .chart-branches{margin-top:35px}.case-visual .chart-branches:before{top:-18px}.case-visual .chart-branches:after{top:-35px;height:18px}.case-visual .chart-branches span:before{top:-18px;height:18px}.case-visual .team-art-stats{left:25%;right:25%;bottom:17%}.case-visual .team-art-stats strong{font-size:65px}.case-visual .team-art-stats small{font-size:21px}.case-visual .team-art-stats div>span{font-size:14px}.case-visual .custom-diagram{inset:16% 0 29%;gap:60px}.case-visual .custom-symbol{font-size:170px}.case-visual .custom-diagram strong{font-size:51px}.case-visual .custom-diagram div>span{font-size:17px}.case-visual .custom-types{bottom:21%;gap:22px}.case-visual .custom-types span{font-size:15px;padding:10px 20px}.case-visual .art-custom .art-foot{padding-top:20px;bottom:20px}.case-visual .art-custom .art-foot strong{font-size:27px;margin:0}.caption{font-size:11px;line-height:1.9;color:var(--muted);margin-top:12px}.caption a{text-decoration:underline;text-underline-offset:3px}.case-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:31px;border-block:1px solid var(--line)}.case-metrics>div{padding:24px 28px}.case-metrics>div:first-child{padding-left:0}.case-metrics>div+div{border-left:1px solid var(--line)}.case-metrics strong{display:block;font-size:27px;line-height:1.5;font-weight:550}.case-metrics span{display:block;font-size:12px;line-height:1.8;color:var(--muted);margin-top:6px}.case-body{display:grid;grid-template-columns:195px minmax(0,1fr);gap:65px;padding-top:62px}.case-sidebar{position:sticky;top:118px;align-self:start}.case-sidebar>p{font-size:10px;letter-spacing:.06em;margin-bottom:19px;color:var(--muted)}.case-toc{display:grid;gap:17px;font-size:12px;border-left:1px solid var(--line);padding-left:16px}.case-toc a{line-height:1.7;color:var(--muted);display:flex;gap:11px}.case-toc a span{font-family:Arial,sans-serif;font-size:10px;padding-top:2px}.case-toc a[aria-current],.case-toc a:hover{color:var(--accent)}.sidebar-contact{display:inline-block;font-size:11px;margin-top:30px;border-bottom:1px solid var(--line);padding-bottom:5px}.case-section{padding-bottom:62px;scroll-margin-top:112px}.case-section>.eyebrow{color:var(--accent)}.case-section h2{font-size:31px;line-height:1.5;margin:12px 0 23px;letter-spacing:-.025em}.case-section>p{font-size:16px;line-height:2;color:var(--muted);margin:15px 0}.case-section>p strong{font-weight:550;color:var(--ink)}.case-section h3{font-size:19px;line-height:1.65}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}.decision{padding:25px;background:var(--white);border:1px solid var(--line);border-radius:3px}.decision p{font-size:14px;line-height:1.95;color:var(--muted);margin-top:17px}.decision .label{display:block;font-size:10px;color:var(--accent);margin-bottom:7px}.deliveries{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;margin-block:24px}.delivery{padding:20px 0;border-top:1px solid var(--line);font-size:14px;line-height:1.8}.delivery b{display:block;font-weight:550;margin-bottom:7px}.delivery span{font-size:14px;color:var(--muted)}.flow{background:var(--green);color:var(--white);padding:30px;border-radius:4px;margin:24px 0}.flow-top{font-size:10px;color:#bbced0;margin-bottom:24px}.flow-chain{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.flow-chain b{font-size:13px;font-weight:450;border:1px solid #738d84;padding:12px;border-radius:3px}.flow-chain i{font-style:normal;color:var(--lime)}.flow p{color:#cbd8cf;font-size:13px;line-height:1.9;margin-top:23px}.quote{border-left:3px solid var(--accent);padding-left:23px;font-size:22px!important;line-height:1.8!important;color:var(--ink)!important;margin-block:27px!important}.notice{padding:17px 20px;border-left:2px solid #aebcae;background:#eceee5;font-size:12px!important;line-height:1.9!important}.image-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.image-pair img{width:100%;object-fit:cover;border-radius:3px}.image-pair figure{margin:0}.image-pair figcaption{font-size:10px;color:var(--muted);line-height:1.8;margin-top:8px}.case-cover{border-radius:3px;overflow:hidden;margin-block:25px}.case-cover img{width:100%}.video-box{background:#e3ddcf;overflow:hidden;border-radius:4px;margin-top:24px}.video-box video{width:100%;display:block;aspect-ratio:2546/1306;object-fit:contain}.chapters{display:flex;flex-wrap:wrap;gap:10px;margin-top:13px}.chapters button{font-size:11px;min-height:40px;padding:10px 14px;background:transparent;border:1px solid var(--line);border-radius:3px;color:var(--ink)}.chapters button:hover,.chapters button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:var(--white)}.status-message{min-height:1.5em;font-size:12px!important;color:var(--accent)!important;margin:8px 0!important}.bars{border:1px solid var(--line);padding:25px;margin-top:24px;background:var(--white);border-radius:4px}.bar-label{display:flex;justify-content:space-between;gap:15px;font-size:13px;margin-bottom:15px}.bar-track{height:25px;background:#dbe4da;overflow:hidden;border-radius:2px}.bar-fill{height:100%;width:86.2069%;background:var(--green)}.bars p{font-size:12px;color:var(--muted);line-height:1.9;margin-top:14px}.inline-link{border-bottom:1px solid var(--muted);padding-bottom:3px}.inline-link:hover{color:var(--accent)}.case-next{padding:40px 0 60px;border-top:1px solid var(--line)}.case-next>a{display:flex;align-items:center;justify-content:space-between;gap:20px}.case-next h2{font-size:29px;line-height:1.5;margin:11px 0 8px}.case-next div>p:last-child{font-size:12px;color:var(--muted);line-height:1.8}.case-next>a>span{font-size:42px;color:var(--accent)}.not-found{min-height:65vh;padding-block:100px}.not-found h1{font-size:60px;margin:20px 0}.not-found>p{margin-bottom:30px}
@media(max-width:1100px){.hero-grid{gap:30px}.hero h1{font-size:46px}.nav nav{gap:23px}.proof-strip>a{padding-inline:22px}.proof-strip strong{font-size:36px}.proof-strip strong small{font-size:11px}.art{aspect-ratio:1.45}.art-label{font-size:9px;inset:17px 18px auto}.art-foot{left:18px;right:18px;font-size:10px}.team-chart{top:53px;left:10%;right:10%}.team-art-stats{left:10%;right:10%;bottom:47px}.team-art-stats strong{font-size:34px}.chart-branches span{padding:8px 10px}.custom-diagram{gap:20px}.custom-diagram strong{font-size:27px}.custom-symbol{font-size:83px}.resume-card{padding-inline:17px}.resume-card h3{font-size:16px}.case-body{grid-template-columns:165px minmax(0,1fr);gap:35px}.case-visual .team-art-stats strong{font-size:50px}.case-visual .team-chart{left:22%;right:22%}.case-visual .team-art-stats{left:22%;right:22%}.case-visual .custom-symbol{font-size:130px}.case-visual .custom-diagram strong{font-size:40px}.case-visual .custom-types{bottom:23%}}
@media(max-width:760px){html{scroll-padding-top:90px}.nav{min-height:72px;gap:16px}.brand{gap:11px;font-size:14px}.brand-mark{font-size:24px}.brand-mark span{font-size:31px}.brand small{font-size:9px}.nav nav{gap:18px;font-size:11px}.nav nav .optional{display:none}.nav .nav-resume{padding:9px 11px}.nav-resume span{margin-left:7px}.hero{padding-top:25px}.hero-intro{align-items:flex-start;margin-bottom:30px;gap:15px}.hero-intro .eyebrow{font-size:10px}.availability{font-size:9px;max-width:112px;text-align:right;line-height:1.8}.hero-grid{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(34px,8.9vw,55px);line-height:1.28;margin-bottom:21px}.hero-copy{font-size:15px;line-height:1.95}.desktop-break{display:none}.actions{gap:10px;margin-top:24px}.button{font-size:12px;padding:12px 15px;gap:20px}.hero-scope{margin-top:22px;font-size:10px;gap:8px}.hero-scope span+span:before{margin-right:8px}.hero-showcase{max-width:550px;width:100%;margin:auto}.showcase-top{padding:12px 14px;font-size:8px}.showcase-bottom{padding:14px}.showcase-bottom strong{font-size:14px}.showcase-bottom>span{font-size:9px}.showcase-note{right:14px;bottom:63px;font-size:9px}.proof-strip{grid-template-columns:1fr;margin-top:32px}.proof-strip>a,.proof-strip>a:first-child,.proof-strip>a:last-child{padding:20px 0;display:grid;grid-template-columns:1fr 1.3fr;column-gap:12px;align-items:center}.proof-strip>a+a{border-left:0;border-top:1px solid var(--line)}.proof-label{font-size:10px}.proof-strip strong{font-size:29px;grid-column:2;grid-row:1 / 3;margin:0;text-align:right}.proof-strip strong small{font-size:11px;margin-left:4px}.proof-strip p{font-size:10px;margin-top:7px;line-height:1.8;grid-column:1}.proof-strip p span{display:none}.section{padding-block:55px}.section-head{display:block;margin-bottom:25px}.section-head h2{font-size:32px;margin-top:9px}.section-head>p{margin-top:18px;font-size:13px}.section-head>p br{display:none}.work-toolbar{display:block;padding-bottom:17px;margin-bottom:24px}.work-count{display:block;margin-top:12px;font-size:10px}.filters{gap:6px}.filters button{font-size:10px;min-height:36px;padding:8px 10px}.filters button span{margin-left:4px}.work-grid{grid-template-columns:1fr;gap:37px}.project-card h3{font-size:23px;margin-bottom:11px}.project-card>p{font-size:15px}.project-meta{font-size:9px;margin-top:16px}.project-result{font-size:12px;margin-top:16px;padding-top:13px}.text-link{font-size:10px}.art{aspect-ratio:1.4}.art-label{font-size:8px;inset:17px 18px auto}.art-foot{font-size:9px;left:18px;right:18px;bottom:15px}.phone-pair{top:46px;bottom:44px;gap:20px}.phone-pair img{border-width:4px;border-radius:11px;box-shadow:7px 7px 0 #b9d0d0}.phone-pair img:nth-child(2){transform:translateY(10px)}.art-tag{font-size:9px;top:15px;left:15px}.team-chart{top:49px;font-size:9px}.chart-root{padding:8px 18px}.chart-branches{margin-top:23px}.chart-branches span{padding:6px 9px}.team-art-stats{bottom:43px}.team-art-stats strong{font-size:30px}.team-art-stats small{font-size:11px}.team-art-stats div>span{font-size:9px}.custom-diagram{inset:48px 18px 79px;gap:18px}.custom-symbol{font-size:75px}.custom-diagram strong{font-size:25px}.custom-diagram div>span{font-size:10px}.custom-types{bottom:56px;gap:8px}.custom-types span{font-size:10px;padding:6px 9px}.art-custom .art-foot{bottom:12px;padding-top:10px}.art-custom .art-foot strong{font-size:16px}.approach{padding-block:48px}.capability-grid{grid-template-columns:1fr;gap:28px;margin-top:33px}.capability-grid article{position:relative;padding:23px 0 0 38px}.capability-no{position:absolute;left:0;top:28px;font-size:12px}.capability-grid h3{font-size:21px;margin:0 0 13px}.capability-grid p{font-size:14px}.capability-grid a{margin-top:15px;font-size:10px}.tool-note{grid-template-columns:1fr;gap:15px;margin-top:33px;font-size:11px}.tool-note p br{display:none}.about-grid{grid-template-columns:1fr;gap:27px}.about-grid h2{font-size:42px;margin-top:13px}.about-en{font-size:10px}.about-lead{font-size:26px}.about-copy{font-size:15px}.about-facts{gap:22px}.about-facts strong{font-size:12px;line-height:1.8}.about-facts small{font-size:10px}.resume-section{padding-bottom:55px}.resume-grid{grid-template-columns:1fr 1fr}.resume-card{padding:20px 17px 17px;gap:21px}.resume-card:nth-child(3){border-left:0}.resume-card:nth-child(n+3){border-top:1px solid var(--line)}.resume-card h3{font-size:17px;line-height:1.6}.resume-card p{font-size:11px}.resume-type{font-size:9px}.resume-bottom{font-size:9px}footer{padding:42px 0 24px}.contact-top{display:block}.contact-links{font-size:18px;margin-top:30px;gap:13px}.contact-links a{width:fit-content}.contact-links p{font-size:10px}.footer-meta{margin-top:35px;line-height:1.8;font-size:9px}.case-hero{padding:27px 0 29px}.back-link{margin-bottom:33px;font-size:11px}.case-kicker{gap:12px}.case-kicker .eyebrow{font-size:9px}.case-state{font-size:9px;padding:6px 8px}.case-hero h1{font-size:clamp(33px,8.9vw,48px);line-height:1.4;margin:15px 0 17px;overflow-wrap:anywhere}.case-lead{font-size:18px;line-height:1.85}.case-info{grid-template-columns:1fr 1fr;gap:22px 19px;padding-top:23px;margin-top:27px}.case-info dt{font-size:9px}.case-info dd{font-size:12px;line-height:1.9}.case-visual .art{aspect-ratio:1.4}.case-visual .art-label{inset:17px 18px auto;font-size:8px}.case-visual .art-foot{font-size:9px;left:18px;right:18px;bottom:15px}.case-visual .phone-pair{top:46px;bottom:44px;gap:20px}.case-visual .phone-pair img{border-width:4px;border-radius:11px;box-shadow:7px 7px 0 #b9d0d0}.case-visual .team-chart{top:49px;left:10%;right:10%;font-size:9px}.case-visual .chart-root{padding:8px 18px}.case-visual .chart-branches{margin-top:23px}.case-visual .chart-branches:before{top:-12px}.case-visual .chart-branches:after{height:12px;top:-23px}.case-visual .chart-branches span:before{height:12px;top:-13px}.case-visual .team-art-stats{bottom:43px;left:10%;right:10%}.case-visual .team-art-stats strong{font-size:30px}.case-visual .team-art-stats small{font-size:11px}.case-visual .team-art-stats div>span{font-size:9px}.case-visual .custom-diagram{inset:48px 18px 79px;gap:18px}.case-visual .custom-symbol{font-size:75px}.case-visual .custom-diagram strong{font-size:25px}.case-visual .custom-diagram div>span{font-size:10px}.case-visual .custom-types{bottom:56px;gap:8px}.case-visual .custom-types span{font-size:10px;padding:6px 9px}.case-visual .art-custom .art-foot{bottom:12px;padding-top:10px}.case-visual .art-custom .art-foot strong{font-size:16px}.caption{font-size:10px;line-height:1.9;margin-top:10px}.case-metrics{grid-template-columns:1fr;margin-top:23px}.case-metrics>div,.case-metrics>div:first-child{display:grid;grid-template-columns:1fr 1.4fr;gap:15px;padding:17px 0;align-items:center}.case-metrics>div+div{border-left:0;border-top:1px solid var(--line)}.case-metrics strong{font-size:24px}.case-metrics span{font-size:11px;margin:0;line-height:1.9;text-align:right}.case-body{grid-template-columns:1fr;gap:30px;padding-top:29px}.case-sidebar{position:static}.case-sidebar>p{display:none}.case-toc{display:flex;flex-wrap:wrap;border-left:0;border-bottom:1px solid var(--line);padding:0 0 20px;gap:13px 20px;font-size:11px}.case-toc a{gap:6px}.sidebar-contact{display:none}.case-section{padding-bottom:39px;scroll-margin-top:94px}.case-section h2{font-size:26px;line-height:1.6;margin:10px 0 20px}.case-section>p{font-size:15px;line-height:2}.case-section>.eyebrow{font-size:10px}.decision-grid{grid-template-columns:1fr;gap:16px}.decision{padding:22px}.decision p{font-size:14px}.deliveries{grid-template-columns:1fr}.delivery span{font-size:14px}.flow{padding:23px}.flow-chain{gap:9px}.flow-chain b{font-size:12px;padding:10px}.flow p{font-size:12px}.quote{font-size:19px!important;padding-left:18px}.image-pair{grid-template-columns:1fr}.chapters{gap:7px}.chapters button{font-size:10px;padding:8px 11px}.bars{padding:20px}.bar-label{font-size:11px}.bars p{font-size:11px}.case-next{padding:29px 0 40px}.case-next h2{font-size:24px}.case-next>a>span{font-size:30px}.case-next div>p:last-child{font-size:11px}.not-found h1{font-size:42px}}
@media(max-width:370px){:root{--pad:18px}.nav nav{gap:10px}.brand small{font-size:8px}.hero h1{font-size:32px}.proof-strip strong{font-size:26px}.proof-strip strong small{font-size:9px}.proof-label{font-size:9px}.proof-strip p{font-size:9px}.custom-symbol{font-size:65px}.custom-diagram strong{font-size:22px}.team-chart{top:44px}.team-art-stats{bottom:38px}.art-label{font-size:7px}.art-foot{font-size:8px}.team-art-stats strong{font-size:26px}.case-visual .custom-diagram strong{font-size:22px}.case-visual .custom-symbol{font-size:65px}.case-visual .team-chart{top:44px}.case-visual .team-art-stats{bottom:38px}.case-visual .team-art-stats strong{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Capability evidence replaces generic process claims. */
.anchor-alias{display:block;position:relative;top:-100px;visibility:hidden}.capability-no{font-family:PortfolioSans,sans-serif;font-size:11px;letter-spacing:.04em}.capability-grid h3{font-size:22px;margin:17px 0 22px}.capability-metric{display:flex;align-items:center;gap:16px;margin:0 0 23px;min-height:74px}.capability-metric strong{font-family:Arial,PortfolioSans,sans-serif;font-size:62px;line-height:1.15;font-weight:400;letter-spacing:-.035em;color:var(--lime);white-space:nowrap}.capability-metric strong small{font-size:32px;letter-spacing:0}.capability-metric>span{font-size:11px;line-height:1.9;color:#d2dfd5}.capability-detail{font-size:11px;line-height:1.9;color:#e1e9de;border-top:1px solid #537068;padding-top:16px;margin-top:22px}.capability-grid a{margin-top:17px}.case-section>p.caption{font-size:11px;line-height:1.9}.capability-grid article{display:flex;flex-direction:column}.capability-grid article>p{flex:1}.capability-grid a{align-self:flex-start}
@media(max-width:1100px){.capability-grid{gap:24px}.capability-grid h3{font-size:19px}.capability-metric{gap:12px}.capability-metric strong{font-size:47px}.capability-metric>span{font-size:10px}}
@media(max-width:760px){.capability-grid article{padding:22px 0 0}.capability-no{position:static;font-size:10px}.capability-grid h3{font-size:23px;margin:14px 0 18px}.capability-metric{gap:20px;min-height:67px;margin-bottom:18px}.capability-metric strong{font-size:58px}.capability-metric>span{font-size:12px}.capability-detail{font-size:11px;padding-top:15px;margin-top:19px}.capability-grid p{font-size:15px}.capability-grid a{font-size:11px;margin-top:15px}.case-section>p.caption{font-size:10px}}

.case-hero .title-group{display:inline-block;white-space:nowrap}.case-hero h1 .title-group+.title-group{margin-left:.12em}

/* Current Dongjin preview captures; crop only the page frame, never redraw UI. */
.mini-screen{position:relative;overflow:hidden;aspect-ratio:750/1428;background:#fff;border-radius:10px;border:3px solid #253c43;box-shadow:8px 8px 0 #b9d0d0;flex-shrink:0}
.mini-screen img{position:absolute;top:-.140056%;left:-120.933333%;width:341.333333%;height:100.840336%;max-width:none!important;object-fit:fill!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
.phone-pair .mini-screen{height:100%;width:auto;max-width:43%}.phone-pair .mini-screen:nth-child(2){transform:translateY(12px)}
.screen-gallery{padding:64px 0 44px;border-bottom:1px solid var(--line);scroll-margin-top:110px}.screen-gallery .section-head h2{font-size:34px}.screen-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.screen-grid figure{margin:0;min-width:0}.screen-source{display:block;background:#e8eeee;padding:25px 28px 30px;border-radius:4px}.screen-source .mini-screen{width:100%;max-width:300px;margin:auto;border-color:#456361;box-shadow:6px 6px 0 #c5d8d5}.screen-source:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.screen-grid figcaption{padding-top:24px}.screen-grid figcaption .eyebrow{font-size:10px}.screen-grid h3{font-size:22px;margin:12px 0}.screen-grid figcaption p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}.screen-grid figcaption .text-link{margin-top:14px}
@media(max-width:760px){.phone-pair .mini-screen{border-width:3px;border-radius:9px;box-shadow:5px 5px 0 #b9d0d0}.screen-gallery{padding:35px 0 28px}.screen-gallery .section-head h2{font-size:27px}.screen-grid{grid-template-columns:1fr;gap:32px}.screen-source{padding:22px 32px 28px}.screen-source .mini-screen{max-width:300px}.screen-grid figcaption{padding-top:18px}.screen-grid h3{font-size:23px;margin:10px 0}.screen-grid figcaption p{font-size:15px}.case-hero h1 .title-group+.title-group{margin-left:0}}

/* Tools are demonstrated through work; capabilities are demonstrated through evidence. */
.tools-section{padding-top:10px;padding-bottom:82px;scroll-margin-top:112px}
.tool-table{border-top:1px solid var(--ink)}
.tool-row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr) minmax(0,.8fr);gap:40px;padding:35px 0;border-bottom:1px solid var(--line);align-items:start}
.tool-identity{display:flex;gap:24px;min-width:0}.tool-index{font-family:Arial,sans-serif;font-size:13px;color:var(--accent);padding-top:3px}.tool-kind{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:16px}.tool-names{display:grid;gap:8px;font-size:24px;font-weight:550;letter-spacing:-.035em;line-height:1.35}.tool-use h3{font-size:21px;line-height:1.5;margin:0 0 12px}.tool-use>p{font-size:15px;line-height:1.95;color:var(--muted)}.tool-tasks{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:19px 0 0}.tool-tasks li{font-size:11px;line-height:1.7;padding:4px 9px;border:1px solid var(--line);border-radius:2px;color:var(--green)}
.tool-output{border-left:2px solid #b7c8b5;padding-left:22px;min-width:0}.tool-output .eyebrow{font-size:10px}.tool-output h4{font-size:15px;line-height:1.7;margin:12px 0 8px;font-weight:550}.tool-output p{font-size:12px;line-height:1.9;color:var(--muted)}.tool-output .text-link{font-size:12px;margin-top:15px;min-height:36px}
.capability-grid .capability-tasks{flex:none;font-size:11px;line-height:1.9;color:#c7d7cd;margin:12px 0 0}.capability-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:flex-start;margin-top:18px}.capability-grid .capability-links a{margin:0;min-height:36px;display:inline-flex;align-items:center;font-size:12px;line-height:1.8}.capability-grid h3{font-size:23px;line-height:1.5}.capability-grid>article>p:not(.capability-tasks){font-size:15px;line-height:1.95}.capability-detail{font-size:12px;line-height:1.9}.capability-metric>span{font-size:12px}.approach{scroll-margin-top:95px}
footer h2{font-size:34px;margin-top:12px}.contact-note{font-size:14px;color:var(--muted);line-height:1.9;margin-top:14px}.contact-downloads{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:22px}.contact-downloads a{display:inline-flex;align-items:center;gap:18px;min-height:40px;font-size:13px;border-bottom:1px solid #879692}.contact-downloads a:hover{color:var(--accent)}footer .footer-meta{margin-top:40px}
@media(max-width:1100px){.tool-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr) minmax(0,.8fr);gap:26px}.tool-identity{gap:14px}.tool-names{font-size:21px}.tool-output{padding-left:18px}.capability-grid h3{font-size:20px}}
@media(max-width:900px) and (min-width:761px){.tool-row{grid-template-columns:210px 1fr}.tool-output{grid-column:2}.capability-grid{grid-template-columns:1fr;gap:35px}.capability-grid article{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.capability-no,.capability-grid h3{grid-column:1}.capability-metric{grid-column:1;grid-row:3/6;margin:0}.capability-grid>article>p:not(.capability-tasks){grid-column:2;grid-row:1/4}.capability-detail,.capability-tasks,.capability-links{grid-column:2}.capability-detail{margin-top:0}}
@media(max-width:760px){.tools-section{padding-top:0;padding-bottom:48px;scroll-margin-top:90px}.tools-section .section-head{margin-bottom:24px}.tool-row{grid-template-columns:1fr;gap:21px;padding:28px 0 31px}.tool-identity{gap:16px;align-items:flex-start}.tool-kind{margin-bottom:9px;font-size:11px}.tool-names{display:flex;flex-wrap:wrap;gap:7px 18px;font-size:22px}.tool-index{padding-top:2px}.tool-use h3{font-size:21px;line-height:1.6;margin-bottom:9px}.tool-use>p{font-size:15px}.tool-tasks{margin-top:15px}.tool-output{border-left:2px solid #b7c8b5;padding-left:17px;margin-top:1px}.tool-output h4{font-size:16px;margin-top:8px}.tool-output p{font-size:13px}.tool-output .text-link{margin-top:7px}.capability-grid h3{font-size:24px;line-height:1.5}.capability-grid .capability-tasks{font-size:11px}.capability-detail{font-size:12px}.capability-links{gap:6px 18px;margin-top:15px}.capability-grid .capability-links a{min-height:42px;font-size:13px}.approach{scroll-margin-top:82px}footer h2{font-size:29px}.contact-note{font-size:14px}.contact-downloads{gap:12px 24px;margin-top:18px}.contact-downloads a{font-size:13px}.contact-links{margin-top:28px}}

/* Capability names lead; identifiers and status remain supporting information. */
.project-meta{font-size:12px;line-height:1.8;margin:22px 0 12px;gap:14px;flex-wrap:wrap}.project-meta>span:first-child{font-variant-numeric:tabular-nums}
.project-card h3.project-skill{font-size:26px;line-height:1.5;font-weight:650;letter-spacing:-.02em;margin:0 0 10px;color:var(--green);text-wrap:wrap}.project-card h3.project-skill a{align-items:flex-start;gap:16px}.project-card h3.project-skill span{flex-shrink:0;font-size:24px;line-height:1.6}
.project-card>p.project-name{font-size:19px;font-weight:550;line-height:1.7;color:var(--ink);margin:0 0 14px}.project-name a:hover{color:var(--accent)}.project-card>p.project-summary{font-size:16px;line-height:1.9}.project-result{font-size:15px;line-height:1.9;font-weight:600;margin-top:21px}.project-card>.text-link{font-size:13px;min-height:40px;margin-top:13px;align-items:center}
.section-head>p{font-size:16px;line-height:1.9;max-width:430px}.proof-label{font-size:14px;line-height:1.8;font-weight:550}.proof-strip p{font-size:13px;line-height:1.8}.hero-copy{font-size:17px}.hero-scope{font-size:13px}
.capability-grid .capability-no{font-size:12px;font-weight:450;color:#c7d7cd;line-height:1.7}.capability-grid h3.capability-title{font-size:26px;line-height:1.5;font-weight:650;margin:16px 0 12px;color:var(--white);text-wrap:wrap}.capability-focus{font-size:16px;line-height:1.8;font-weight:500;color:#d2dfd5;margin-bottom:23px;min-height:58px}.capability-grid>article>p:not(.capability-tasks){font-size:16px;line-height:1.95}.capability-metric>span{font-size:14px;line-height:1.8}.capability-detail{font-size:14px;line-height:1.9}.capability-grid .capability-tasks{font-size:13px;line-height:1.9}.capability-grid .capability-links a{font-size:14px;min-height:44px}
.tool-kind{font-size:14px;font-weight:600;color:var(--green);margin-bottom:14px}.tool-use h3{font-size:23px;font-weight:650}.tool-use>p{font-size:16px}.tool-tasks li{font-size:13px}.tool-output .eyebrow{font-size:12px;letter-spacing:.04em}.tool-output h4{font-size:18px;font-weight:600}.tool-output p{font-size:14px}.tool-output .text-link{font-size:14px;min-height:44px}
.case-category{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}.case-number{font-family:Arial,sans-serif;font-size:12px;color:var(--muted);white-space:nowrap}.case-category>p{font-size:22px;font-weight:650;line-height:1.6;color:var(--green)}.case-kicker{align-items:flex-start}.case-state{font-size:12px;line-height:1.8;flex-shrink:0}.case-info dt{font-size:13px}.case-info dd{font-size:16px;line-height:1.85}.case-section>p.case-section-label{display:flex;gap:14px;align-items:baseline;font-size:16px;font-weight:600;line-height:1.7;color:var(--green);margin:0}.case-section-label>span{font-family:Arial,sans-serif;font-size:12px;font-weight:400;color:var(--muted)}.case-toc{font-size:14px}.case-section>p{font-size:16px}.screen-grid figcaption .eyebrow{font-size:12px}.screen-grid figcaption p{font-size:16px}.screen-grid figcaption .text-link{font-size:13px;min-height:40px}.case-metrics span{font-size:14px;line-height:1.8}
.about-copy{font-size:16px;line-height:1.95}.about-facts span{font-size:13px}.about-facts strong{font-size:16px}.about-facts small{font-size:13px}
@media(max-width:1100px){.project-card h3.project-skill{font-size:24px}.capability-grid h3.capability-title{font-size:23px}.case-category>p{font-size:20px}}
@media(max-width:900px) and (min-width:761px){.capability-focus{grid-column:1;grid-row:3;margin-bottom:20px;min-height:0}.capability-metric{grid-row:4/8}.capability-grid>article>p:not(.capability-tasks){grid-row:1/5}.capability-detail{grid-row:5}.capability-tasks{grid-row:6}.capability-links{grid-row:7}}
@media(max-width:760px){.project-meta{font-size:12px;margin:18px 0 11px;gap:8px 14px}.project-card h3.project-skill{font-size:23px;line-height:1.55;margin-bottom:10px}.project-card h3.project-skill span{font-size:22px}.project-card>p.project-name{font-size:18px;font-weight:550;line-height:1.75;margin-bottom:13px}.project-card>p.project-summary{font-size:16px}.project-result{font-size:15px;line-height:1.85;margin-top:18px}.project-card>.text-link{font-size:14px;min-height:44px}.section-head>p{font-size:16px;line-height:1.9}.proof-label{font-size:13px;line-height:1.8}.proof-strip p{font-size:12px;line-height:1.8}.hero-copy{font-size:16px}.hero-scope{font-size:12px}.capability-grid h3.capability-title{font-size:25px;line-height:1.5;margin:13px 0 12px}.capability-focus{font-size:16px;min-height:0;margin-bottom:21px}.capability-metric>span{font-size:14px}.tool-kind{font-size:14px;margin-bottom:10px}.tool-use h3{font-size:23px;line-height:1.5}.tool-use>p{font-size:16px}.tool-tasks li{font-size:12px}.tool-output h4{font-size:18px}.tool-output p{font-size:14px}.tool-output .text-link{font-size:14px}.case-kicker{display:block}.case-category{gap:7px 16px;display:block}.case-category>p{font-size:22px;line-height:1.6;margin-top:9px}.case-state{display:inline-block;font-size:12px;margin-top:12px}.case-info{gap:21px 16px}.case-info dt{font-size:13px}.case-info dd{font-size:15px}.case-section>p.case-section-label{font-size:16px}.case-section h2{font-size:27px;line-height:1.55}.case-toc{font-size:14px;line-height:1.8}.case-section>p{font-size:16px}.case-metrics span{font-size:13px}.about-facts strong{font-size:15px}.about-facts small{font-size:12px}}

/* Case reasoning and delivery descriptions are body copy, not captions. */
.decision p,.delivery span,.flow p,.bars p{font-size:16px;line-height:1.95}.flow-chain b{font-size:16px;line-height:1.7}.delivery b{font-size:17px;line-height:1.7}.bar-label{font-size:14px;line-height:1.8}

/* Selected work: four complementary examples, with the full collection a click away. */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--motion-fast:220ms;--motion-soft:550ms}
.hero-showcase{box-shadow:none;transition:transform var(--motion-soft) var(--ease-out)}
.hero h1{letter-spacing:-.035em}.hero-copy{max-width:37em}
.project-visual{border-radius:8px;background:#e8e5da;isolation:isolate}
.project-card{contain:style}.work-grid{gap:56px 36px;align-items:start}
.project-card h3.project-skill{font-size:25px;line-height:1.5;letter-spacing:-.015em}
.project-card>p.project-summary{max-width:36em;line-height:1.85}
.project-card>p.project-name{margin-bottom:12px}
.project-result{padding-top:15px;margin-top:19px;border-color:#c8d3ca}
.project-meta{margin-top:21px;color:#61726c}.project-meta>span:last-child{color:#405a51}
.project-open{width:42px;height:42px;bottom:20px;right:20px;transition:transform var(--motion-fast) var(--ease-out),background var(--motion-fast),color var(--motion-fast)}
.project-visual:hover .project-open{transform:translate(2px,-2px)}
.art-image>img{transition:transform 700ms var(--ease-out)}
.project-visual:hover .art-image>img{transform:scale(1.02)}
.project-skill a>span,.button>span,.text-link>span{transition:transform var(--motion-fast) var(--ease-out)}
.project-skill a:hover>span,.button:hover>span,.text-link:hover>span{transform:translate(2px,-2px)}
.filters{gap:6px}.filters button{font-size:13px;min-height:44px;border-radius:4px;padding:11px 15px;transition:background var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}
.filters button span{font-size:11px;font-variant-numeric:tabular-nums}
.work-count{font-size:12px;line-height:1.8;white-space:normal;text-align:right}
.work-toolbar{padding-bottom:22px;margin-bottom:32px}
.art-chibifu{background:#0b1b25}.art-chibifu>img{object-position:center}
.art-chibifu .art-tag{background:#f4f0e6;color:#243835}
.case-visual .art-chibifu{aspect-ratio:1.6}

/* Native mini-program captures keep their original proportions. */
.art-linshen{background:#dce5da;color:#29493d}
.art-linshen .art-label{font-size:10px;inset:20px 24px auto;font-weight:550}
.reading-phones{position:absolute;inset:54px 24px 46px;display:flex;align-items:center;justify-content:center;gap:26px}
.reading-phone{height:100%;aspect-ratio:720/1516;border:4px solid #213e32;border-radius:16px;overflow:hidden;background:#f6f6f1;box-shadow:6px 7px 0 #b4c7b6}
.reading-phone>img{width:100%;height:100%;object-fit:contain}
.reading-phone:nth-child(2){transform:translateY(9px)}
.art-linshen .art-foot{font-size:11px;bottom:14px;justify-content:center;gap:12px;left:16px;right:16px}
.case-visual .reading-phones{inset:60px 35px 60px;gap:54px}
.case-visual .reading-phone{border-width:6px;border-radius:22px}
.case-visual .art-linshen .art-foot{font-size:14px;bottom:20px}
.case-gallery{display:grid;grid-template-columns:1fr;gap:27px;margin:28px 0 0}
.case-gallery figure,.phone-gallery figure{margin:0;min-width:0}
.case-gallery img{width:100%;border-radius:6px}
.case-gallery figcaption{font-size:14px;line-height:1.9;color:var(--muted);margin-top:11px}
.phone-gallery{display:grid;grid-template-columns:1fr 1fr;gap:27px;margin:28px 0 0}
.phone-gallery figure>div{padding:25px;background:#e5ebe0;border-radius:6px}
.phone-gallery img{width:100%;border:3px solid #385246;border-radius:14px}
.phone-gallery figcaption{font-size:15px;line-height:1.85;color:var(--muted);margin-top:18px}
.phone-gallery strong{display:block;color:var(--green);font-size:17px;margin-bottom:8px}
.reading-demo{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:38px;align-items:center}
.portrait-video{max-width:330px;min-width:0;border:1px solid #b5c4b4;border-radius:12px;padding:9px;background:#e5ebe0}
.portrait-video video{display:block;width:100%;aspect-ratio:640/1348;border-radius:6px;background:#142d20}
.reading-route ol{list-style:none;counter-reset:step;padding:0;margin:24px 0 18px}
.reading-route li{counter-increment:step;border-top:1px solid var(--line);padding:17px 0 17px 34px;position:relative}
.reading-route li::before{content:'0' counter(step);position:absolute;left:0;top:21px;font-family:Arial,sans-serif;color:#536c5f;font-size:12px}
.reading-route strong{display:block;font-size:20px;font-weight:600;line-height:1.6;margin-bottom:6px}
.reading-route li p{font-size:16px;line-height:1.85;color:var(--muted)}
.reading-route .caption{font-size:13px;color:var(--muted);line-height:1.8}
.case-section .decision-grid{margin-block:26px}.case-section .flow+p{margin-top:24px}
.case-section .decision h3{font-size:21px;line-height:1.6;margin-bottom:12px}
.case-hero h1 .title-group{max-width:100%;white-space:normal}
.portrait-video{position:relative}.video-start{position:absolute;inset:9px;border:0;border-radius:6px;background:transparent;color:white;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px}.video-start>span{width:64px;height:64px;display:grid;place-items:center;background:var(--green);border:1px solid #e1e9de;border-radius:50%;font-size:22px;padding-left:3px;transition:transform var(--motion-fast) var(--ease-out),background var(--motion-fast)}.video-start>strong{font-size:13px;background:var(--green);padding:8px 13px;font-weight:500}.video-start:hover>span{background:var(--accent);transform:scale(1.06)}.case-hero h1 br+.title-group{margin-left:0}

@media(hover:none){.hero-showcase:hover,.project-visual:hover .art-image>img,.project-visual:hover .project-open{transform:none}}
@media(max-width:1100px){.work-toolbar{align-items:flex-start}.filters{max-width:100%}.filters button{padding-inline:11px}.project-card h3.project-skill{font-size:24px}.reading-phones{gap:18px;inset:46px 18px 40px}.reading-demo{gap:26px}}
@media(max-width:760px){
 .section{padding-block:58px}.tools-section{padding-top:6px}.section-head h2{font-size:30px}.section-head>p{font-size:15px;line-height:1.8}.work-toolbar{display:block;margin-bottom:25px;padding-bottom:18px}.filters{gap:7px}.filters button{font-size:13px;padding:10px 12px;min-height:44px}.work-count{text-align:left;margin-top:13px;display:block;font-size:12px}.work-grid{gap:40px}.project-card h3.project-skill{font-size:23px}.project-card>p.project-summary{font-size:16px}.project-meta{margin-top:17px}.project-open{width:39px;height:39px;bottom:15px;right:15px}.project-result{margin-top:16px}.project-card .art-chibifu{aspect-ratio:1.3}.project-card .art-chibifu>img{object-fit:cover;object-position:50% 48%}.art-tag{font-size:10px;padding:6px 8px;top:12px;left:12px}.art-linshen{aspect-ratio:1.3}.art-linshen .art-label{inset:15px 17px auto;font-size:9px}.reading-phones{inset:42px 17px 42px;gap:21px}.reading-phone{border-width:3px;border-radius:10px;box-shadow:4px 5px 0 #b4c7b6}.art-linshen .art-foot{font-size:10px;gap:8px}.case-visual .art-linshen{aspect-ratio:1.02}.case-visual .reading-phones{inset:43px 15px 44px;gap:20px}.case-visual .reading-phone{border-width:3px;border-radius:12px}.case-visual .art-linshen .art-foot{font-size:10px;bottom:14px}.case-visual .art-chibifu{aspect-ratio:1.3}.case-gallery{gap:20px;margin-top:22px}.case-gallery figcaption{font-size:13px}.reading-demo{grid-template-columns:1fr;gap:27px}.portrait-video{width:min(100%,300px);margin:auto}.reading-route ol{margin-top:18px}.reading-route strong{font-size:20px}.reading-route li{padding-block:15px}.reading-route li::before{top:19px}.phone-gallery{gap:21px;grid-template-columns:1fr}.phone-gallery figure>div{padding:22px 38px}.phone-gallery img{max-width:290px;margin:auto}.phone-gallery figcaption{font-size:15px}.phone-gallery strong{font-size:17px}.case-section .decision h3{font-size:21px}
}
