.project_hero_tit_line{display:inline-flex;align-items:center;gap:25px;}
.project_hero_badge{display:inline-flex;flex-shrink:0;width:70px;height:50px;border-radius:234px;background:var(--color-accent-red);font-family:'Inter',sans-serif;font-weight:800;font-size:30px;letter-spacing:-0.02em;color:var(--color-white);justify-content:center;align-items:center;}
/* major project */
.major_project_section{overflow:hidden;width:100%;padding:80px 0 0;}
.major_project_inner{max-width:1920px;margin:0 auto;padding:0 30px;}

/* major project head */
.major_project_head{display:flex;width:100%;margin-bottom:40px;align-items:center;gap:20px;}
.major_project_head_tit{flex-shrink:0;font-family:'Inter',sans-serif;font-weight:800;font-size:24px;line-height:90%;letter-spacing:-0.04em;color:var(--color-text-dark);}

/* major project head line */
.major_project_head_line{overflow:hidden;position:relative;width:215px;height:1px;background:var(--color-border);flex-shrink:0;}
.major_project_head_line_fill{position:absolute;top:0;left:0;width:0%;height:100%;background:#000000;transition:width var(--transition-base);font-size: 0; text-indent: -99999px;color: transparent;}

/* major project swiper */
.major_project_swiper_wrap{position:relative;width:100%;}
.major_project_swiper.swiper{overflow:visible;width:100%;}
.major_project_swiper .swiper-wrapper{align-items:stretch;}
.major_project_card.swiper-slide{width:min(880px,84vw);height:auto;flex-shrink:0;}
.major_project_card{display:flex;width:100%;flex-direction:column;}

/* major project card media */
.major_project_card_media{display:flex;overflow:hidden;position:relative;width:100%;height:460px;border-radius:2px;background:var(--color-surface);justify-content:center;align-items:center;}
.major_project_card_media img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow);}
.major_project_card_media::after{content:'';display:block;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(17,17,17,0.1);pointer-events:none;}
.major_project_card_arrow{display:flex;overflow:hidden;position:absolute;right:0;bottom:0;z-index:1;width:95px;height:95px;transition:transform var(--transition-base),background-color var(--transition-base);justify-content:center;align-items:center;}
.major_project_card_arrow img{width:100%;height:100%;object-fit:cover;}
.major_project_card:hover .major_project_card_media img{transform:scale(1.05);}

/* major project card body */
.major_project_card_body{display:flex;width:100%;height:195px;padding:30px;border-radius:2px;background:var(--color-white);align-items:flex-start;gap:35px;}
.major_project_card_text{display:flex;flex:1;min-width:0;flex-direction:column;gap:20px;}

.major_project_card_tit{overflow:hidden;font-family:'Pretendard',sans-serif;font-weight:700;font-size:24px;line-height:1.2;letter-spacing:-0.04em;color:var(--color-text-dark);white-space:nowrap;text-overflow:ellipsis;}
.major_project_card_desc{display:-webkit-box;overflow:hidden;height:48px;font-family:'Pretendard',sans-serif;font-weight:600;font-size:16px;line-height:1.5;letter-spacing:-0.03em;color:#67635F;word-break:keep-all;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;}
.major_project_card_tags{display:flex;overflow:hidden;flex-wrap:nowrap;gap:5px 10px;}
.major_project_card_tags li{overflow:hidden;font-family:'Pretendard',sans-serif;font-weight:600;font-size:13px;line-height:1.4;letter-spacing:-0.01em;color:#AFABA2;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;}


/* all project */
.all_project_section{width:100%;padding:60px 0 160px;}
.all_project_inner{/*max-width:1920px;*/margin:0 auto;padding:0 30px;}

/* all project head */
.all_project_head{display:flex;width:100%;margin-bottom:20px;padding-bottom:30px;border-bottom:2px solid #333;justify-content:space-between;align-items:flex-end;}
.all_project_head_tit{font-family:'Inter',sans-serif;font-weight:800;font-size:24px;line-height:90%;letter-spacing:-0.04em;color:var(--color-text-dark);}
.all_project_head_count{margin-left:5px;}


/* all project grid */
.all_project_grid{display:grid;width:100%;margin-bottom:60px;grid-template-columns:repeat(4,1fr);gap:20px;}
.all_project_grid[hidden]{display:none;}
.all_project_card{position: relative;cursor:pointer;}
.all_project_card_link{display:flex;width:100%;flex-direction:column;}
.all_project_card_thumb{display:flex;overflow:hidden;position:relative;width:100%;aspect-ratio:5/3.5;border-radius:2px;background:var(--color-surface);justify-content:center;align-items:center;}
.all_project_card_thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow);}
.all_project_card:hover .all_project_card_thumb img{transform:scale(1.05);}

/* all project card text */
.all_project_card_text{display:flex;height:110px;padding:20px 90px 0 10px;flex-direction:column;justify-content:space-between;}
.all_project_card_tit{display: -webkit-box;max-width: 100%;overflow: hidden;font-family: 'Pretendard', sans-serif; font-weight: 700;font-size: 22px; line-height: 1.2;letter-spacing: -0.02em; color: var(--color-text-dark);}
.all_project_card_sub{display:flex;overflow:hidden;flex-wrap:wrap;align-items:center;gap:5px;}
.all_project_card_sub li{overflow:hidden;font-family:'Pretendard',sans-serif;font-weight:600;font-size:13px;line-height:1.2;letter-spacing:-0.03em;color:#AFABA2;white-space:nowrap;text-overflow:ellipsis;}
.all_project_card_sub li:not(:last-child)::after{content:'';display:inline-block;width:3px;height:3px;margin-left:5px;border-radius:50%;background:#D9D9D9;vertical-align:middle;}

/* insight card */
.insight_grid.all_project_grid{grid-template-columns:repeat(3,1fr);}
.insight_card_link{display:flex;width:100%;flex-direction:column;}
.insight_card_thumb{display:flex;overflow:hidden;position:relative;width:100%;aspect-ratio:3/2;border-radius:2px;background:var(--color-surface);justify-content:center;align-items:center;}
.insight_card_thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow);}
.insight_card:hover .insight_card_thumb img{transform:scale(1.05);}
.insight_card_text{display:flex;width:100%;padding:20px 50px 30px 10px;flex-direction:column;gap:10px;}
.insight_card_tit{display:-webkit-box;overflow:hidden;font-family:Pretendard;font-weight:700;font-size:22px;font-style:normal;line-height:135%;letter-spacing:-0.88px;color:#222;word-break:keep-all;overflow-wrap:break-word;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;}
.insight_card_meta{display:flex;align-items:center;gap:15px;}
.insight_card_category{font-family:Inter;font-weight:600;font-size:14px;font-style:normal;line-height:135%;letter-spacing:-0.7px;color:#67635F;}
.insight_card_date{font-family:Pretendard;font-weight:600;font-size:14px;font-style:normal;line-height:140%;letter-spacing:-0.02em;color:var(--color-text-muted);}

/* all project pagination — Insight 등 다른 목록 페이지에서 여전히 사용하므로 유지 (all project 탭의 nav만 HTML에서 제거) */
.all_project_pagination{display:flex;width:100%;justify-content:center;align-items:center;gap:15px;}
.all_project_pagination[hidden]{display:none;}
.all_project_page_btn{display:flex;width:52px;height:50px;border:1px solid #CCCCCC;border-radius:4px;font-family:'Inter',sans-serif;font-weight:500;font-size:16px;letter-spacing:-0.01em;color:#444444;transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base);justify-content:center;align-items:center;cursor:pointer;}
.all_project_page_btn[hidden]{display:none;}
.all_project_page_btn:hover{background:var(--color-border);}
.all_project_page_btn.is_active{border-color:transparent;background:var(--color-accent-red);color:var(--color-white);}
.all_project_page_btn.is_active:hover{background:var(--color-accent-red);}
.all_project_page_ellipsis{display:flex;width:30px;height:50px;font-family:'Inter',sans-serif;font-weight:600;font-size:18px;letter-spacing:-0.01em;color:#444444;justify-content:center;align-items:center;}
/* 이전/다음 화살표 — 활성(누를 수 있음)은 배경 진하게+아이콘 선명, 비활성은 배경 연하게+아이콘 흐리게 */
.all_project_page_arrow{display:flex;width:52px;height:50px;border-radius:4px;background:#DAD7CF;transition:background-color var(--transition-base),opacity var(--transition-base);justify-content:center;align-items:center;cursor:pointer;}
.all_project_page_arrow:hover{background:#CDC9BF;}
.all_project_page_arrow[disabled]{background:#EBE9E3;cursor:default;pointer-events:none;}
.all_project_page_arrow[disabled] img{opacity:0.3;}
.all_project_page_prev img{transform:rotate(180deg);}
.sub_hero_inner{position:static;}
.sub_hero_mascot { position: absolute; top:auto; bottom:0;right: 150px;width: 516px;height: 406px;}

.all_project_card_text{position:relative;}
.all_project_solution_icon{position:absolute;right:0;bottom:0;width:85px;height:85px;object-fit:contain;pointer-events:none;}
.project_icon {position: absolute;width: 6.2vw; height: 6.2vw; right: 0;bottom: 3.813vw;}
.project_icon img { width: 100%; height: 100%;object-fit: cover;}
.awards_icon {position: absolute;width: 28px;height: 28px; right: 8px; top: 15%;}
.awards_icon img { width: 100%; height: 100%; object-fit: cover;}
.all_project_page_arrow img { opacity: 1;}
/* PC 비율 축소 (1025px~1920px) — 1920 디자인 기준 px를 vw로 변환해 레이아웃 재배치 없이 비율만 축소한다. 계산식: vw = px / 1920 * 100 */
@media screen and (min-width:1025px) and (max-width:1920px){
  .project_hero_tit_line{gap:1.3021vw;}
  .project_hero_badge{width:3.6458vw;height:2.6042vw;border-radius:12.1875vw;font-size:1.5625vw;}
  .major_project_section{padding:4.1667vw 0 0;}
  .major_project_inner{padding:0 1.5625vw;}
  .major_project_head{margin-bottom:2.0833vw;gap:1.0417vw;}
  .major_project_head_tit{font-size:1.25vw;}
  .major_project_head_line{width:11.1979vw;}
  .major_project_card_media{height:23.9583vw;border-radius:0.1042vw;}
  .major_project_card_arrow{width:4.9479vw;height:4.9479vw;}
  .major_project_card_body{height:10.1563vw;padding:1.5625vw;border-radius:0.1042vw;gap:1.8229vw;}
  .major_project_card_text{gap:1.0417vw;}
  .major_project_card_tit{font-size:1.25vw;}
  .major_project_card_desc{height:2.5vw;font-size:0.8333vw;}
  .major_project_card_tags{gap:0.2604vw 0.5208vw;}
  .major_project_card_tags li{font-size:0.6771vw;}
  .all_project_section{padding:3.125vw 0 8.3333vw;}
  .all_project_inner{padding:0 1.5625vw;}
  .all_project_head{margin-bottom:1.0417vw;padding-bottom:1.5625vw;}
  .all_project_head_tit{font-size:1.25vw;}
  .all_project_head_count{margin-left:0.2604vw;}
  .all_project_grid{margin-bottom:3.125vw;gap:1.0417vw;}
  .all_project_card_thumb{border-radius:0.1042vw;}
  .all_project_card_text{height:7.0313vw;padding:1.0417vw 4.6875vw 1.5625vw 0.5208vw;}
  .all_project_card_tit{font-size:1.1458vw;}
  .all_project_card_sub{gap:0.2604vw;}
  .all_project_card_sub li{font-size:0.6771vw;}
  .all_project_card_sub li:not(:last-child)::after{width:0.1563vw;height:0.1563vw;margin-left:0.2604vw;}
  .insight_card_thumb{border-radius:0.1042vw;}
  .insight_card_text{padding:1.0417vw 2.6042vw 1.5625vw 0.5208vw;gap:0.5208vw;}
  .insight_card_tit{font-size:1.1458vw;}
  .insight_card_meta{gap:0.7813vw;}
  .insight_card_category{font-size:0.7292vw;}
  .insight_card_date{font-size:0.7292vw;}
  .all_project_pagination{gap:0.7813vw;}
  .all_project_page_btn{width:2.7083vw;height:2.6042vw;border-radius:0.2083vw;font-size:0.8333vw;}
  .all_project_page_ellipsis{width:1.5625vw;height:2.6042vw;font-size:0.9375vw;}
  .all_project_page_arrow{width:2.7083vw;height:2.6042vw;border-radius:0.2083vw;}
  .sub_hero_mascot{right:7.9vw;width:27.2vw;height:21.3vw;}
}
@media only screen and (max-width:1024px){
    .all_project_inner{padding:0 15px;}
    .all_project_head{padding-bottom:13px;}
    .all_project_head_tit{font-size:20px;width:100%;}
    .all_project_grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
    .all_project_card_tit{font-size:20px;}
    .all_project_card_sub li{font-size:12px;}
    .project_icon { position: absolute; width: 10.2vw;  height:10.2vw; right: 0; bottom: 10.813vw;}
    .all_project_card_text { height: auto;}
.all_project_card_tit { font-size: 18px;height: 54px;}
.all_project_card_text { padding-right: 20px;}
    
}
@media only screen and (max-width:768px){
    .all_project_head{flex-direction: column-reverse;}
	.all_project_grid{gap:10px;}
    .all_project_grid{grid-template-columns:1fr;gap:20px;}
    .project_icon { position: absolute;width: 25.2vw;height: 25.2vw;right: 0;bottom: 21.813vw;}
    
}