/* An authored work archive: programme posters remain the project index. */
:root{--paper:#e7ede7;--soft:#a7b5ab}
.portfolio-masthead{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:24px 0 34px;margin-bottom:30px;border-bottom:1px solid #c5d7cb26}
.portfolio-masthead .eyebrow{font-size:9px;letter-spacing:.22em;margin:0 0 13px;color:#a5baad}
.portfolio-name{font-size:clamp(46px,7.3vw,94px);letter-spacing:-.075em;font-weight:600;line-height:1;margin:0;color:var(--paper)}
.portfolio-name>span{display:inline-block;font-size:.4em;vertical-align:top;line-height:1.3;margin-left:12px;color:#b8d7bf;font-weight:400}
.portfolio-statement{margin:0 0 4px;font-size:12px;line-height:1.9;color:var(--soft);word-break:keep-all;max-width:300px}
.studio-hero{height:480px;min-height:0;padding:38px 40px 90px;border-radius:16px}
.hero-copy h1{font-size:clamp(32px,4vw,50px);max-width:620px}.hero-description{max-width:540px;font-size:12px;line-height:1.9}
.hero-copy .eyebrow{margin-bottom:17px}.hero-control{left:40px;right:32px}
.section-heading{margin-top:60px;margin-bottom:28px}.section-heading h2{font-size:27px}.section-heading .eyebrow{letter-spacing:.19em}
.project-grid{gap:40px 26px}.project-card{border-radius:0;align-self:start}
.poster{border-radius:12px}.project-caption{display:block;padding:18px 1px 0}
.project-caption-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#7e9787;font-size:8px;letter-spacing:.1em;margin-bottom:9px}
.project-caption strong{display:block;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:-.035em;color:#e1e8e2;word-break:keep-all}
.project-scope{display:block;color:#92a398;font-size:10px;line-height:1.8;margin-top:6px;word-break:keep-all}
.project-card:hover .project-caption strong{color:#cfecd6}.poster-title{font-size:clamp(27px,2.8vw,39px)!important}.title-0{font-size:clamp(23px,2.6vw,35px)!important}
.about-top{padding:48px 0 65px;border-bottom:1px solid #b7d3bf24}.about-top h1{font-size:clamp(36px,4.2vw,57px)}
.maker-art{border-radius:14px;background:radial-gradient(ellipse at 90% 10%,#37584055,transparent 70%),#19201c;box-shadow:inset 0 0 60px #0c100f55}
.toolbox-section{padding:55px 0 20px}.toolbox-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}
.toolbox-heading .eyebrow{font-size:9px;margin-bottom:10px;color:#90b59c}
.toolbox-heading h2{font-size:30px;letter-spacing:-.055em;font-weight:500;margin:0;color:var(--paper)}
.toolbox-heading>p{font-size:12px;line-height:1.9;color:#93a69b;margin:0}
.toolbox-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.toolbox-group{padding:28px;border:1px solid #bed5c316;border-radius:14px;background:linear-gradient(140deg,#d6e9db07,transparent 75%);position:relative;overflow:hidden;transition:border-color .4s,background .4s}
.toolbox-group:hover{border-color:#b7d7c03d;background-color:#c6e1cf03}
.toolbox-label{position:relative;margin-bottom:25px;padding-bottom:19px;border-bottom:1px solid #d1e4d60f}
.toolbox-number{position:absolute;right:0;top:0;color:#52715c;font-size:12px;font-variant-numeric:tabular-nums}
.toolbox-label p{font-size:9px;letter-spacing:.18em;color:#8cae96;margin:0 0 7px}.toolbox-label h3{font-size:19px;font-weight:500;margin:0;letter-spacing:-.04em;color:#d7e4da}
.tool-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 14px}
.tool-item{display:flex;flex-direction:column;align-items:flex-start;gap:13px;min-width:0;color:#bdcfc3;font-size:10px;line-height:1.5;transition:color .35s}
.tool-item:hover{color:#edf8f0}.tool-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:12px;background:#e4eae4;box-shadow:inset 0 0 0 1px #c7d9cc0b;transition:transform .5s cubic-bezier(.16,1,.3,1),box-shadow .5s}
.tool-icon img{width:38px;height:38px;object-fit:contain;display:block;filter:drop-shadow(0 4px 6px #0003)}
.tool-item:hover .tool-icon{transform:translateY(-5px) rotate(-4deg);box-shadow:0 12px 24px #0003,inset 0 0 0 1px #c7d9cc20}
.tool-icon-mastercam{position:relative;overflow:hidden;background:white}
.tool-icon-mastercam img{position:absolute;width:265px;height:auto;max-width:none;left:-10px;top:-3px;filter:none}
@media(max-width:900px){
 .portfolio-masthead{gap:25px}.portfolio-statement{font-size:11px;max-width:260px}.toolbox-group{padding:24px}.tool-list{gap:21px 10px}
}
@media(max-width:700px){
 .portfolio-masthead{display:block;padding:20px 0 25px;margin-bottom:22px}.portfolio-name{font-size:59px}.portfolio-masthead .eyebrow{font-size:7px;margin-bottom:11px;letter-spacing:.15em}
 .portfolio-statement{font-size:11px;line-height:1.85;margin-top:19px;max-width:none}
 .studio-hero{height:470px;padding:24px 23px 78px;border-radius:15px}.hero-copy h1{font-size:32px}.hero-description{font-size:11px}.hero-control{left:23px;right:19px;bottom:18px}
 .section-heading{margin-top:39px;margin-bottom:22px}.section-heading h2{font-size:24px}.project-grid{gap:27px 13px}.poster{border-radius:10px}
 .project-caption{padding-top:12px}.project-caption-meta{font-size:7px;letter-spacing:.02em;gap:5px;margin-bottom:7px}.project-caption-meta>span:first-child{font-size:0}.project-caption-meta>span:first-child:before{content:'특수제작';font-size:7px}.project-card:has(.poster-unreleased) .project-caption-meta>span:first-child:before{content:'공개 예정'}
 .project-caption strong{font-size:12px;line-height:1.5}.project-scope{font-size:9px;line-height:1.7;margin-top:5px}
 .poster-title{font-size:clamp(22px,5.5vw,32px)!important}.title-0{font-size:clamp(18px,4.8vw,27px)!important}
 .about-top{padding:27px 0 35px;gap:25px}.about-top h1{font-size:36px}.about-name{margin-top:24px}.maker-art{height:220px}
 .toolbox-section{padding-top:35px}.toolbox-heading{display:block;margin-bottom:25px}.toolbox-heading h2{font-size:27px}.toolbox-heading>p{margin-top:15px;font-size:11px}
 .toolbox-groups{grid-template-columns:1fr;gap:14px}.toolbox-group{padding:23px}.toolbox-label{margin-bottom:20px;padding-bottom:16px}.toolbox-label h3{font-size:18px}
 .tool-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}.tool-item{font-size:10px;gap:10px}
}
@media(max-width:360px){.portfolio-name{font-size:51px}.portfolio-statement{font-size:10px}.hero-copy h1{font-size:29px}.toolbox-group{padding:19px}.tool-list{gap:20px 8px}.tool-item{font-size:9px}.toolbox-heading h2{font-size:24px}.project-caption strong{font-size:11px}}

