.project_wrap main p span.red { color:#B11246; }
.project_wrap main .text_box p { margin-top:20px; }
.project_wrap main .text_box .hashtag { margin-top:0; font-size:30px; color:#B11246; }
.project_wrap main .text_box .sub_text { font-size:23px; line-height:30px; color:#707070; }
.project_wrap main .text_box .sub_title { font-size:40px; line-height:47px; font-weight:300; }
.project_wrap main .text_box .sub_title span { font-weight:700; }

/* main_img */
.project_wrap main .main_img .inner_wrap { display:flex; }
.project_wrap main .main_img { background:#F8F8F8; }
.project_wrap main .main_img img { width:500px; }
.project_wrap main .main_img .text_box { width:calc(100% - 500px); text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.project_wrap main .main_img .text_box .title { font-size:48px; line-height:55px; }
.project_wrap main .main_img .text_box .title span { font-weight:700; }

/* content1 */
.project_wrap main .content1 .inner_wrap { display:flex; }
.project_wrap main .content1 .text_box { width:calc(100% - 618px); text-align:left; display:flex; flex-direction:column; justify-content:center; }
.project_wrap main .content1 .text_box .title { font-size:50px; line-height:55px; font-weight:700; }

/* content2 */
.project_wrap main .content2 ul { display:flex; justify-content:space-between; }
.project_wrap main .content2 ul li { position:relative; }
.project_wrap main .content2 ul li .text_box { position:absolute; top:50%; left:50px; transform:translateY(-50%); }
.project_wrap main .content2 ul li .text_box p:first-child { font-size:18px; color:#B11246; }
.project_wrap main .content2 ul li .text_box .sub_text { font-size:18px; line-height:22px; }

/* content3 - 의료장비 카탈로그 스타일 (여백 추가) */
.project_wrap main .content3 {
    padding: 40px 0;
}
.project_wrap main .content3 .inner_wrap > p { 
    font-size: 34px; 
    text-align: center;
    margin-bottom: 10px;
    margin-left: 0;
}
.project_wrap main .content3 .inner_wrap > p span { 
    font-weight: 700; 
    color: #B11246;
}
.project_wrap main .content3 .equipment-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px; /* 카드 간 간격 */
    margin-top: 40px;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}
.project_wrap main .content3 .equipment-card {
    background-color: white;
    display: flex;
    flex-direction: column;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid #ccc;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    overflow: hidden;
    border-radius: 8px; /* 모서리 둥글게 */
}
.project_wrap main .content3 .equipment-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}
.project_wrap main .content3 .equipment-image {
    width: 100%;
    height: 292px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8f9fa;
    border-bottom: 1px solid #eee;
}
.project_wrap main .content3 .equipment-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    
}
.project_wrap main .content3 .equipment-info {
    padding: 20px 15px;
    text-align: center;
    background-color: #cccccc;
    color: white;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 120px;
}
.project_wrap main .content3 .equipment-name {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #cc3333;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.project_wrap main .content3 .equipment-desc {
    font-size: 19px;
    color: #222;
    margin-bottom: 12px;
    opacity: 0.9;
    line-height: 1.4;
}
.project_wrap main .content3 .equipment-price {
    font-size: 23px;
    font-weight: 700;
    color: #222;
}
.project_wrap main .content3 .equipment-price span {
    font-size: 14px;
    font-weight: 500;
    margin-left: 2px;
}
.project_wrap main .content3 ul {
    display: none;
}

/* content4 */
.project_wrap main .content4 { padding-bottom:150px; }
.project_wrap main .content4 .inner_wrap > p { font-size:34px; text-align:center; }
.project_wrap main .content4 .inner_wrap > p span { font-weight:45px; font-weight:700; }
.project_wrap main .content4 .inner_wrap > p span.red { font-weight:34px; }
.project_wrap main .content4 ul { margin-top:80px; }
.project_wrap main .content4 ul li { display:flex; align-items:flex-end; }
.project_wrap main .content4 ul li:not(.first) { margin-top:100px; }
.project_wrap main .content4 ul li img { width:750px; }
.project_wrap main .content4 ul li .text_box { width:calc(100% - 750px); }
.project_wrap main .content4 ul li .text_box p:first-child { font-size:34px; line-height:45px; }
.project_wrap main .content4 ul li .text_box p:last-child { margin-top:30px; font-size:20px; line-height:30px; }
.project_wrap main .content4 ul li .text_box p span { font-weight:700; }
.project_wrap main .content4 ul li.red_box .text_box p { color:#B11246; }
.project_wrap main .content4 ul li.red_box .text_box p span { color:#B11246; }

.mt20 { margin-top: 20px !important; }
.height_292 { height: 292.844px !important; background: #9EAAB9 !important;}

/* 반응형 디자인 */
@media only screen and (max-width: 1280px) {
    .project_wrap main .content3 .equipment-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        padding: 12px;
    }
}

@media only screen and (max-width: 768px) {
    .project_wrap main .text_box p { margin-top:10px; }
    .project_wrap main .text_box .hashtag { font-size:12px; }
    .project_wrap main .text_box .sub_text { font-size:10px; line-height:15px; }
    .project_wrap main .text_box .sub_title { font-size:12px; line-height:15px; }
    
    /* main_img */
    .project_wrap main .main_img .inner_wrap { width:100%; align-items:center; }
    .project_wrap main .main_img img { width:50%; }
    .project_wrap main .main_img .text_box { width:50%; }
    .project_wrap main .main_img .text_box .title { margin-top:5px; font-size:18px; line-height:22px; }
    
    /* content1 */
    .project_wrap main .content1 .inner_wrap { width:100%; align-items:center; }
    .project_wrap main .content1 img { width:50%; }
    .project_wrap main .content1 .text_box { width:50%; padding-left:5%; }
    .project_wrap main .content1 .text_box .title { margin-top:5px; font-size:18px; line-height:22px; }
    
    /* content2 */
    .project_wrap main .content2 .inner_wrap > p { font-size:14px; text-align:center; }
    .project_wrap main .content2 .inner_wrap > p span { font-weight:700; }
    .project_wrap main .content2 ul { margin-top:30px; flex-wrap:wrap; }
    .project_wrap main .content2 ul li img { width:100%; }
    .project_wrap main .content2 ul li .text_box { left:20px; }
    .project_wrap main .content2 ul li .text_box p:first-child { font-size:12px; }
    .project_wrap main .content2 ul li .text_box .sub_title { font-size:20px; line-height:24px; }
    .project_wrap main .content2 ul li .text_box .sub_text { font-size:12px; line-height:15px; }
    .project_wrap main .content2 ul li:last-child { margin-top:10px; }
    
    /* content3 */
    .project_wrap main .content3 .equipment-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        padding: 10px;
    }
    
    .project_wrap main .content3 .equipment-image {
        height: 200px;
    }
    
    .project_wrap main .content3 .inner_wrap > p {
        font-size: 20px;
    }
    
    /* content4 */
    .project_wrap main .content4 { padding-bottom:50px; }
    .project_wrap main .content4 .inner_wrap { width:100%; }
    .project_wrap main .content4 .inner_wrap > p { font-size:14px; }
    .project_wrap main .content4 ul li:not(.first) { margin-top:30px; }
    .project_wrap main .content4 ul li img { width:50%; }
    .project_wrap main .content4 ul li .text_box { width:50%; padding-left:5%; }
    .project_wrap main .content4 ul li .text_box p { word-break:keep-all; }
    .project_wrap main .content4 ul li .text_box p:first-child { margin-top:0; font-size:14px; line-height:17px; }
    .project_wrap main .content4 ul li .text_box p:last-child { margin-top:10px; font-size:10px; line-height:14px; }
}

@media only screen and (max-width: 480px) {
    .project_wrap main .content3 .equipment-grid {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 8px;
    }
    
    .project_wrap main .content3 .equipment-image {
        height: 250px;
    }
}
