/* Homepage: keep the portrait, headline, and project links in separate layout rows. */
.hero-v2{min-height:0;padding:0;overflow:hidden}
.hero-v2 .hero-stage{min-height:0;padding-top:104px;padding-bottom:64px}
.hero-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);align-items:start;min-height:470px;padding-left:190px;position:relative}
.hero-v2 .hero-copy{width:auto;margin-left:0;padding:18px 0 0;min-width:0}
.hero-v2 .hello{margin:0;font-size:19px;color:#263653}
.hero-v2 h1.hero-classic{font-size:clamp(54px,4.2vw,75px);line-height:1.12;letter-spacing:-.085em;margin:28px 0 0}
.hero-v2 h1.hero-classic .classic-two{padding-left:20px}
.hero-v2 h1.hero-classic .classic-three{padding-left:45px}
.hero-v2 .hero-desc{max-width:580px;margin:26px 0 0;font-size:16px;line-height:1.75}
.hero-v2 .portrait-stage{position:relative;right:auto;top:auto;width:100%;height:470px;align-self:end;z-index:2}
.hero-v2 .portrait-halo{inset:9% -2% 10%;border:0;border-radius:0;background:radial-gradient(ellipse at 50% 57%,#b8c9edb8 0%,#dce5f68a 43%,transparent 72%);box-shadow:none;transform:none}
.hero-v2 .portrait-halo:after{content:none}
.hero-v2 .portrait{object-position:center bottom}
.portrait-tags{position:absolute;inset:0;pointer-events:none}
.portrait-tag{position:absolute;display:block;padding:10px 15px;border:1px solid #afc0df;border-radius:9px;background:#f9fbffed;color:#29406d;box-shadow:0 9px 22px #5b75a921;font-size:14px;font-weight:780;line-height:1.25;white-space:nowrap;letter-spacing:-.02em}
.portrait-tags.is-orbiting .portrait-tag{left:50%;top:50%;right:auto;bottom:auto;will-change:transform}
.tag-opportunity{left:-12%;top:12%}
.tag-judgment{right:-8%;top:24%;background:#4564aa;color:#fff;border-color:#4564aa;box-shadow:0 11px 25px #4b67a654}
.tag-research{left:-19%;top:43%}
.tag-prototype{right:-8%;top:56%}
.tag-evaluation{left:-15%;bottom:12%}
.hero-v2 .hero-projects{position:relative;right:auto;left:auto;bottom:auto;width:auto;max-width:none;margin:0 0 0 190px;z-index:5}
.hero-projects-prompt{display:flex;align-items:center;gap:12px;margin:0 0 17px;color:#2d477f;font-size:16px;font-weight:700;letter-spacing:-.02em}
.hero-projects-prompt span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#3e5fab;color:#fff;font-size:22px;line-height:1}
.hero-v2 .hero-project-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:none}
.hero-v2 .hero-project{display:grid;grid-template-columns:minmax(0,1fr) 46%;align-items:stretch;gap:0;height:188px;padding:8px;border:1px solid #dbe4f2;border-radius:22px;transform:none;box-shadow:0 8px 22px #52689c16;background:#fbfcff;color:#1a2a4d;isolation:isolate}
.hero-v2 .hero-project.museum-project{transform:none;background:#fffaf7;border-color:#eadfd8;color:#352b2a}
.hero-v2 .hero-project:hover,.hero-v2 .hero-project.museum-project:hover{transform:translateY(-3px);box-shadow:0 14px 27px #52689c24}
.hero-v2 .hero-project:focus-visible{outline:3px solid #345fbe;outline-offset:4px}
.hero-project-content{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:14px 11px 13px 15px}
.hero-v2 .hero-project-no{font-size:11px;line-height:1.2;letter-spacing:.08em;font-weight:700;color:#476198}
.hero-v2 .museum-project .hero-project-no{color:#8f625d}
.hero-v2 .hero-project-name{position:static;display:block;margin:13px 0 0;font-size:clamp(19px,1.3vw,23px);font-weight:700;line-height:1.2;letter-spacing:-.035em;white-space:normal}
.hero-project-keywords{display:block;margin-top:6px;font-size:13px;line-height:1.35;font-weight:600;color:#526d99}
.museum-project .hero-project-keywords{color:#856e68}
.hero-project-action{display:inline-flex;align-items:center;gap:7px;margin-top:auto;border-bottom:1px solid currentColor;padding-bottom:3px;font-size:12px;font-weight:700;line-height:1.2}
.hero-project-action span{font-size:18px;transition:transform .2s}
.hero-project:hover .hero-project-action span{transform:translate(3px,-3px)}
.hero-project-media{position:relative;display:block;min-width:0;height:100%;overflow:hidden;border-radius:15px;background:#dbe5f2}
.museum-project .hero-project-media{background:#e7d1c5}
.hero-v2 .hero-project img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:42% 12%;opacity:1;border-radius:0;transform:none;box-shadow:none}
.hero-v2 .museum-project img{object-position:25% 50%;transform:none}
@media(max-width:1100px){
  .hero-v2 .hero-stage{padding-top:155px}
  .hero-main{padding-left:0;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);min-height:470px}
  .hero-v2 .hero-projects{margin-left:0}
  .hero-v2 h1.hero-classic{font-size:clamp(50px,5.8vw,68px)}
  .hero-v2 .portrait-stage{height:470px}
  .tag-opportunity,.tag-research,.tag-evaluation{left:-3%}
  .tag-judgment,.tag-prototype{right:-2%}
  .portrait-tag{font-size:12px;padding:8px 10px}
}
@media(max-width:760px){
  .hero-v2 .hero-stage{padding-top:170px;padding-bottom:50px}
  .hero-main{display:flex;flex-direction:column;align-items:stretch;min-height:0}
  .hero-v2 .hero-copy{padding:0}
  .hero-v2 .hello{font-size:17px}
  .hero-v2 h1.hero-classic{font-size:clamp(46px,8.5vw,64px);margin-top:18px}
  .hero-v2 .hero-desc{margin-top:18px;font-size:15px}
  .hero-v2 .portrait-stage{align-self:stretch;width:100%;height:auto;margin-top:8px}
  .hero-v2 .portrait{display:block;width:min(72%,450px);height:330px;margin-left:auto}
  .hero-v2 .portrait-halo{inset:8px 0 auto auto;width:min(72%,450px);height:310px}
  .portrait-tags{position:relative;inset:auto;display:flex;flex-wrap:wrap;gap:8px;margin-top:-10px;padding-bottom:14px}
  .portrait-tag,.tag-opportunity,.tag-judgment,.tag-research,.tag-prototype,.tag-evaluation{position:static;white-space:normal;font-size:12px;padding:8px 10px}
  .hero-projects-prompt{font-size:15px}
  .hero-v2 .hero-project{height:178px;grid-template-columns:minmax(0,1fr) 42%}
  .hero-project-content{padding:17px 12px 15px 16px}
  .hero-v2 .hero-project-name{margin-top:13px;font-size:19px}
  .hero-project-keywords{font-size:13px}
  .hero-project-action{font-size:12px}
}
@media(max-width:570px){
  .hero-v2 .hero-stage{padding-top:170px}
  .hero-v2 h1.hero-classic{font-size:clamp(39px,10.1vw,54px);line-height:1.14}
  .hero-v2 h1.hero-classic .classic-two{padding-left:10px}
  .hero-v2 h1.hero-classic .classic-three{padding-left:22px}
  .hero-v2 .hero-desc{font-size:14px;max-width:100%}
  .hero-v2 .portrait-stage{width:100%;height:auto;margin-top:0}
  .hero-v2 .portrait{width:78%;height:280px}
  .hero-v2 .portrait-halo{width:78%;height:260px}
  .hero-projects-prompt{font-size:14px;margin-bottom:15px}
  .hero-v2 .hero-project-links{grid-template-columns:1fr;gap:12px}
  .hero-v2 .hero-project{height:172px;grid-template-columns:minmax(0,1fr) 42%}
  .hero-v2 .hero-project-name{font-size:20px}
  .hero-project-keywords{font-size:13px}
  .hero-project-action{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.hero-project-action span{transition:none}}
