/* ══ 메인(front-page) 고유 스타일 — hero / 대표포폴 / 가로스크롤 ══ */

/* ── HERO 1-1: 드릴 GIF + VACODE 타이포 (2단) ── */
.hero{position:relative;min-height:100vh;overflow:hidden;display:flex;align-items:center;background:#fff;padding:110px 56px 70px}
.hero-media{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1;opacity:0;animation:heroFade 1.3s ease .1s forwards}
.hero-media img{width:min(62vw,920px);height:auto;max-height:86vh;object-fit:contain;display:block}
.hero-copy{position:relative;z-index:2;margin-left:auto;opacity:0;animation:heroUp 1.1s cubic-bezier(.16,1,.3,1) .28s forwards}
.brand{font-family:var(--serif);font-weight:400;font-size:6vw;line-height:.9;letter-spacing:-.02em;color:var(--ink)}
.tagline{font-family:var(--sans);font-size:.8vw;letter-spacing:.2em;text-transform:uppercase;color:#8a8272;margin-top:22px;margin-left:10px}
@keyframes heroFade{to{opacity:1}}
@keyframes heroUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

/* ── 1-2 대표 포트폴리오 ── */
.pf{background:var(--cream);padding:150px 80px 130px;perspective:1600px}
.pf-head{margin:0 0 34px}
.pf-head .eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--green)}
.pf-head h2{font-family:var(--serif);font-size:54px;font-weight:400;letter-spacing:-.02em;margin-top:12px;color:var(--ink)}
.pf-list{width:100%}
.pf-item{display:grid;grid-template-columns:.75fr 1fr;gap:90px;padding:70px 0;border-top:1px solid var(--line);
   align-items:stretch;transform-style:preserve-3d}
.pf-item:last-child{border-bottom:1px solid var(--line)}
.pf-text{display:flex;flex-direction:column;justify-content:space-between;padding:10px 0}
.pf-en{font-family:var(--serif);font-size:17px;color:#A29B8D;letter-spacing:.01em}
.pf-ko{font-family:var(--kr);font-size:46px;font-weight:600;letter-spacing:-.01em;margin-top:16px;color:var(--ink)}
.pf-more{align-self:flex-start;font-family:var(--serif);font-size:24px;color:#A29B8D;letter-spacing:.01em;
   text-decoration:none;position:relative;margin-top:40px}
.pf-more::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .45s cubic-bezier(.2,.7,.2,1)}
.pf-more:hover::after{width:100%}
.pf-img{overflow:hidden}
.pf-img img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:2/1;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.pf-item:hover .pf-img img{transform:scale(1.05)}

/* ── 1-3 일반 포트폴리오 (가로 스크롤, desktop) ── */
.hs{height:100vh;overflow:hidden;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:60px}
.hs-head{padding:0 100px}
.hs-head .eyebrow{font-family:var(--sans);font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--green)}
.hs-head h2{font-family:var(--serif);font-size:52px;font-weight:400;color:var(--ink);margin-top:10px;letter-spacing:-.02em}
.hs-track{display:flex;gap:140px;padding:0 100px;will-change:transform}
.hs-card{flex:0 0 auto;width:680px;text-decoration:none;display:block}
.hs-card .im{aspect-ratio:3/2;overflow:hidden;background:#efe9e0}
.hs-card .im img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.hs-card:hover .im img{transform:scale(1.05)}
.hs-card .tt{font-family:var(--kr);font-size:27px;font-weight:600;color:var(--ink);margin-top:28px;display:inline-block;position:relative}
.hs-card .tt::after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--ink);transition:width .5s cubic-bezier(.2,.7,.2,1)}
.hs-card:hover .tt::after{width:100%}
.hs-card .ss{font-family:var(--sans);font-size:14px;color:#9a9284;margin-top:9px;letter-spacing:.03em}

/* ── 히어로 중간 창(태블릿~작은 노트북): 세로 스택으로 전환 → 이미지·텍스트 겹침 원천 방지 ── */
@media(max-width:1024px){
  .hero{position:static;flex-direction:column;justify-content:center;gap:22px;padding:120px 40px 70px;text-align:center}
  .hero-media{position:static;justify-content:center;padding-left:0;width:74%;max-width:560px}
  .hero-media img{width:100%;max-height:46vh}
  .hero-copy{position:static;margin-left:0;max-width:none}
  .brand{font-size:9vw}
  .tagline{margin-left:0;font-size:1.2vw}
}

/* ── 메인 고유 모바일 ── */
@media(max-width:768px){
  .hero{position:static;flex-direction:column;justify-content:center;gap:14px;padding:110px 22px 60px;text-align:center;min-height:100vh;background:#fff}
  .hero-media{position:static;inset:auto;width:98%;max-width:680px}
  .hero-media img{max-height:66vh}
  .hero-copy{position:static;margin-left:0}
  .brand{font-size:16vw}
  .tagline{font-size:2.13vw;letter-spacing:.2em;margin-top:16px;margin-left:0}
  .pf{padding:80px 22px}
  .pf-head h2{font-size:34px}
  .pf-item{grid-template-columns:1fr;gap:22px;padding:46px 0}
  .pf-text{padding:0}
  .pf-en{font-size:14px}
  .pf-ko{font-size:30px;margin-top:10px}
  .pf-more{margin-top:22px;font-size:19px}
  .pf-img img{aspect-ratio:16/10}
  /* 1-3 모바일: 가로스크롤 해제 → 세로 나열 */
  .hs{height:auto;display:block;padding:80px 22px}
  .hs-head{padding:0 0 30px}
  .hs-head h2{font-size:32px}
  .hs-track{flex-direction:column;gap:36px;padding:0;transform:none!important}
  .hs-card{width:100%}
  .hs-card .tt{font-size:22px}
}
