@charset "utf-8";

/* index2.asp 전용 메인 스타일 */
.renewal-main{overflow:hidden; color:#172838; background:#ffffff;}
.renewal-main .renewal-container{width:100%; max-width:1480px; margin:0 auto; padding:0 40px;}
.renewal-main .renewal-section{scroll-margin-top:80px;}
.renewal-main .renewal-eyebrow{display:inline-flex; align-items:center; gap:12px; color:#296a9d; font-size:12px; font-weight:700; letter-spacing:2.4px; line-height:1.4;}
.renewal-main .renewal-eyebrow:before{content:""; width:22px; height:1px; background:currentColor;}
.renewal-main .renewal-eyebrow-light{color:#b8d9ec;}
.renewal-main .renewal-text-link{display:inline-flex; align-items:center; justify-content:space-between; gap:26px; padding:12px 0 10px; border-bottom:1px solid #315e7d; color:#173e5c; font-size:14px; font-weight:600; white-space:nowrap; transition:gap .25s ease, color .25s ease;}
.renewal-main .renewal-text-link:hover{gap:36px; color:#2f87af;}
.renewal-main .renewal-text-link span{font-size:19px; font-weight:400; line-height:1;}
.renewal-main a:focus-visible{outline:2px solid #56b4dd; outline-offset:4px;}

/* 메인 영상 */
.renewal-main .renewal-hero{height:900px; min-height:680px; max-height:1100px; height:100vh; height:100svh; position:relative; isolation:isolate; overflow:hidden; background:#102638; color:#ffffff;}
.renewal-main .renewal-hero-video{position:absolute; z-index:0; top:50%; left:50%; width:100%; height:100%; min-width:100%; min-height:100%; transform:translate(-50%,-50%); object-fit:cover;}
.renewal-main .renewal-hero-shade{position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(4,21,34,.61) 0%,rgba(6,27,41,.32) 50%,rgba(6,24,37,.08) 100%),linear-gradient(0deg,rgba(5,22,36,.57) 0%,transparent 26%,rgba(5,20,32,.12) 100%);}
.renewal-main .renewal-hero-content{height:100%; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding-top:105px; padding-bottom:155px; position:relative; z-index:2;}
.renewal-main .renewal-hero-lead{margin-top:32px; font-size:clamp(22px,2vw,30px); font-weight:400; letter-spacing:-1px; line-height:1.4;}
.renewal-main .renewal-hero h2{margin-top:3px; color:#ffffff; font-size:clamp(40px,calc(7.3vw - 30px),84px); font-weight:700; letter-spacing:-7px; line-height:1.13;}
.renewal-main .renewal-hero-description{margin-top:26px; color:#e2ecf1; font-size:clamp(17px,1.4vw,21px); font-weight:400; letter-spacing:-.8px; line-height:1.6;}
.renewal-main .renewal-outline-link{display:inline-flex; align-items:center; justify-content:space-between; gap:55px; min-width:226px; margin-top:47px; padding:15px 21px; border:1px solid rgba(255,255,255,.72); color:#ffffff; font-size:14px; font-weight:500; transition:background .25s ease, color .25s ease;}
.renewal-main .renewal-outline-link span{font-size:19px; line-height:1;}
.renewal-main .renewal-outline-link:hover{background:#ffffff; color:#16384e;}
.renewal-main .renewal-hero-bottom{position:absolute; z-index:2; left:0; bottom:0; width:100%; border-top:1px solid rgba(255,255,255,.23);}
.renewal-main .renewal-hero-bottom-inner{display:flex; align-items:stretch; justify-content:space-between; min-height:94px;}
.renewal-main .renewal-scroll-cue{display:flex; align-items:center; gap:20px; color:#c4d4df; font-size:10px; font-weight:600; letter-spacing:2px; white-space:nowrap;}
.renewal-main .renewal-scroll-cue i{display:block; width:1px; height:38px; background:linear-gradient(to bottom,#ffffff,transparent);}
.renewal-main .renewal-hero-nav{display:flex; align-items:stretch;}
.renewal-main .renewal-hero-nav a{display:flex; align-items:center; gap:16px; min-width:205px; padding:0 26px; border-left:1px solid rgba(255,255,255,.2); color:#ffffff; font-size:14px; font-weight:500; transition:background .25s ease;}
.renewal-main .renewal-hero-nav a:hover{background:rgba(255,255,255,.12);}
.renewal-main .renewal-hero-nav a span{color:#9fc5d9; font-size:11px; letter-spacing:1px;}

/* 소개와 섹션 공통 */
.renewal-main .renewal-intro{padding:138px 0 142px;}
.renewal-main .renewal-intro-grid{display:grid; grid-template-columns:1.25fr .75fr; gap:90px; align-items:end;}
.renewal-main .renewal-intro h2{margin-top:27px; color:#142b3e; font-size:clamp(38px,4vw,60px); font-weight:600; letter-spacing:-3px; line-height:1.32;}
.renewal-main .renewal-intro h2 em{color:#2877a3; font-style:normal;}
.renewal-main .renewal-intro-copy{padding:0 0 5px 44px; border-left:1px solid #cfdae1;}
.renewal-main .renewal-intro-copy p{max-width:480px; color:#5a6a75; font-size:17px; line-height:1.9; word-break:keep-all;}
.renewal-main .renewal-intro-copy .renewal-text-link{margin-top:26px;}
.renewal-main .renewal-service{padding:126px 0 140px;}
.renewal-main .renewal-section-heading{display:flex; align-items:end; justify-content:space-between; gap:36px; margin-bottom:54px;}
.renewal-main .renewal-section-heading p{margin-top:22px; color:#647586; font-size:18px; letter-spacing:-.5px;}
.renewal-main .renewal-section-heading h2{margin-top:5px; color:#162b3c; font-size:clamp(40px,4vw,62px); font-weight:600; letter-spacing:-3px; line-height:1.3;}
.renewal-main .renewal-section-heading .renewal-text-link{margin-bottom:9px;}

/* 위탁 시험 서비스 */
.renewal-main .renewal-cro{background:#f3f7f9;}
.renewal-main .renewal-card-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px;}
.renewal-main .renewal-service-card{display:grid; grid-template-columns:43% minmax(0,1fr); min-height:315px; overflow:hidden; background:#ffffff; border:1px solid #e2eaee; transition:box-shadow .3s ease, transform .3s ease;}
.renewal-main .renewal-service-card:hover{transform:translateY(-5px); box-shadow:0 24px 48px rgba(17,48,67,.11);}
.renewal-main .renewal-card-image{display:block; overflow:hidden; background:#d9e5eb;}
.renewal-main .renewal-card-image img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.renewal-main .renewal-service-card:hover .renewal-card-image img{transform:scale(1.04);}
.renewal-main .renewal-card-body{display:flex; flex-direction:column; align-items:flex-start; padding:30px 32px;}
.renewal-main .renewal-card-number{color:#4f98bc; font-size:11px; font-weight:700; letter-spacing:2px;}
.renewal-main .renewal-card-body h3{margin-top:14px; color:#19364a; font-size:25px; font-weight:600; letter-spacing:-1px; line-height:1.3;}
.renewal-main .renewal-card-body h3 small{display:block; margin-top:6px; color:#70808a; font-size:13px; font-weight:500; letter-spacing:-.4px;}
.renewal-main .renewal-card-body p{margin-top:16px; color:#64737d; font-size:13px; line-height:1.65; word-break:keep-all;}
.renewal-main .renewal-card-body p+p{margin-top:8px;}
.renewal-main .renewal-card-link{display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:auto; padding-top:18px; color:#1c628b; font-size:13px; font-weight:600;}
.renewal-main .renewal-card-link span{font-size:18px; font-weight:400;}

/* 병리서비스 */
.renewal-main .renewal-pathology{position:relative; background:#122a3a url("../images/main/bg_banner02_03.jpg") no-repeat center center; background-size:cover;}
.renewal-main .renewal-pathology:before{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,31,45,.97),rgba(13,36,51,.89));}
.renewal-main .renewal-pathology>.renewal-container{position:relative;}
.renewal-main .renewal-pathology .renewal-section-heading p{color:#bed0db;}
.renewal-main .renewal-pathology .renewal-section-heading h2{color:#ffffff;}
.renewal-main .renewal-pathology .renewal-text-link{border-color:#a5c6d7; color:#e5f1f6;}
.renewal-main .renewal-pathology-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px;}
.renewal-main .renewal-pathology-card{display:flex; flex-direction:column; min-height:545px; overflow:hidden; background:#ffffff;}
.renewal-main .renewal-pathology-image{display:block; height:245px; overflow:hidden; background:#d7e2e7;}
.renewal-main .renewal-pathology-image img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.renewal-main .renewal-pathology-card:hover img{transform:scale(1.04);}
.renewal-main .renewal-pathology-body{display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:30px 33px 32px;}
.renewal-main .renewal-pathology-body>span{color:#367fa8; font-size:11px; font-weight:700; letter-spacing:1.3px;}
.renewal-main .renewal-pathology-body h3{margin-top:14px; color:#17384e; font-size:23px; font-weight:600; letter-spacing:-.8px; line-height:1.3;}
.renewal-main .renewal-pathology-body p{margin-top:16px; color:#5f707c; font-size:14px; line-height:1.72; word-break:keep-all;}
.renewal-main .renewal-pathology-body>a{display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:auto; padding-top:20px; color:#1c628b; font-size:13px; font-weight:600;}
.renewal-main .renewal-pathology-body>a span{font-size:18px; font-weight:400;}

/* 위탁서비스 */
.renewal-main .renewal-rental{background:#ffffff;}
.renewal-main .renewal-rental-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px;}
.renewal-main .renewal-rental-card{display:block; position:relative; height:350px; overflow:hidden; background:#243d4a; color:#ffffff;}
.renewal-main .renewal-rental-card:after{content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(4,23,37,.86),rgba(7,32,48,.14) 65%); transition:background .3s ease;}
.renewal-main .renewal-rental-card>img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.renewal-main .renewal-rental-card:hover>img{transform:scale(1.045);}
.renewal-main .renewal-rental-content{display:flex; flex-direction:column; align-items:flex-start; position:absolute; z-index:1; left:36px; right:36px; bottom:32px; color:#ffffff;}
.renewal-main .renewal-rental-content small{color:#b8d9e8; font-size:11px; font-weight:700; letter-spacing:2px;}
.renewal-main .renewal-rental-content strong{margin-top:10px; color:#ffffff; font-size:27px; font-weight:600; letter-spacing:-1px; line-height:1.35;}
.renewal-main .renewal-rental-content>span{display:flex; align-items:center; justify-content:space-between; width:100%; margin-top:18px; padding-top:14px; border-top:1px solid rgba(255,255,255,.4); color:#e7f1f5; font-size:13px;}
.renewal-main .renewal-rental-content i{font-size:19px; font-style:normal; line-height:1;}

/* 시험문의 */
.renewal-main .renewal-inquiry{padding:122px 0 134px; background:#e7f0f4;}
.renewal-main .renewal-inquiry .renewal-eyebrow-light{color:#397fa4;}
.renewal-main .renewal-inquiry .renewal-section-heading p{margin:0 0 12px; color:#5d7483; font-size:16px;}
.renewal-main .renewal-inquiry-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px;}
.renewal-main .renewal-inquiry-card{display:flex; flex-direction:column; overflow:hidden; background:#ffffff; transition:transform .3s ease,box-shadow .3s ease;}
.renewal-main .renewal-inquiry-card:hover{transform:translateY(-5px); box-shadow:0 25px 45px rgba(16,52,70,.13);}
.renewal-main .renewal-inquiry-card>img{width:100%; height:230px; object-fit:cover;}
.renewal-main .renewal-inquiry-card>span{display:flex; flex-direction:column; min-height:175px; padding:25px 28px;}
.renewal-main .renewal-inquiry-card small{color:#3c83a8; font-size:11px; font-weight:700; letter-spacing:1.6px;}
.renewal-main .renewal-inquiry-card strong{margin-top:8px; color:#18384d; font-size:22px; font-weight:600; letter-spacing:-.8px;}
.renewal-main .renewal-inquiry-card em{display:flex; justify-content:space-between; align-items:center; margin-top:auto; color:#41687f; font-size:13px; font-weight:600; font-style:normal;}
.renewal-main .renewal-inquiry-card i{font-size:18px; font-weight:400; font-style:normal;}

/* 상담문의 */
.renewal-main .renewal-contact{padding:128px 0 135px; background:#132d40 url("../images/main/bg_banner04_02.jpg") no-repeat center center; background-size:cover; position:relative; color:#ffffff;}
.renewal-main .renewal-contact:before{content:""; position:absolute; inset:0; background:rgba(11,31,44,.88);}
.renewal-main .renewal-contact-grid{display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:9%; position:relative;}
.renewal-main .renewal-contact h2{margin-top:22px; color:#ffffff; font-size:clamp(40px,4vw,60px); font-weight:600; letter-spacing:-2.5px;}
.renewal-main .renewal-contact-lead>p{margin-top:28px; color:#d9e7ed; font-size:25px; font-weight:400; letter-spacing:-1px; line-height:1.55;}
.renewal-main .renewal-contact-list{border-top:1px solid rgba(255,255,255,.45);}
.renewal-main .renewal-contact-list>div{display:grid; grid-template-columns:130px 1fr; gap:20px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.2);}
.renewal-main .renewal-contact-list dt{color:#9fc4d7; font-size:13px; font-weight:600;}
.renewal-main .renewal-contact-list dd,.renewal-main .renewal-contact-list a{color:#ffffff; font-size:15px; line-height:1.6;}
.renewal-main .renewal-contact-address{white-space:nowrap;}
.renewal-main .renewal-contact-list a:hover{text-decoration:underline;}

/* 네트워크 */
.renewal-main .renewal-network{padding:112px 0 125px; background:#ffffff;}
.renewal-main .renewal-network .renewal-section-heading{margin-bottom:38px;}
.renewal-main .renewal-network h2{font-size:clamp(35px,3.6vw,53px); letter-spacing:-2px;}
.renewal-main .renewal-network-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px;}
.renewal-main .renewal-network-grid li{border:1px solid #dce5e9; transition:border-color .25s ease,box-shadow .25s ease;}
.renewal-main .renewal-network-grid li:hover{border-color:#6fa6c3; box-shadow:0 15px 35px rgba(22,58,79,.08);}
.renewal-main .renewal-network-grid a{display:flex; flex-direction:column; align-items:flex-start; min-height:195px; padding:25px 25px 21px; position:relative;}
.renewal-main .renewal-network-grid img{width:100%; max-width:240px; height:80px; object-fit:contain; object-position:left center; margin:0;}
.renewal-main .renewal-network-grid strong{margin-top:auto; color:#294357; font-size:16px; font-weight:500; letter-spacing:-.6px;}
.renewal-main .renewal-network-grid a>span{position:absolute; right:24px; bottom:19px; color:#367c9f; font-size:19px;}

/* 스크롤 모션: 스크립트 사용 가능할 때만 적용 */
.renewal-main.renewal-js .renewal-reveal{opacity:0; transform:translateY(24px); transition:opacity .7s ease,transform .7s ease;}
.renewal-main.renewal-js .renewal-reveal.is-visible{opacity:1; transform:translateY(0);}

@media screen and (max-width:1200px){
	.renewal-main .renewal-container{padding:0 32px;}
	.renewal-main .renewal-scroll-cue{display:none;}
	.renewal-main .renewal-hero-nav{width:100%;}
	.renewal-main .renewal-hero-nav a{flex:1; min-width:0; justify-content:center;}
	.renewal-main .renewal-intro-grid{gap:45px;}
	.renewal-main .renewal-service-card{grid-template-columns:1fr;}
	.renewal-main .renewal-card-image{height:245px;}
	.renewal-main .renewal-card-body{min-height:275px;}
	.renewal-main .renewal-pathology-card{min-height:570px;}
	.renewal-main .renewal-pathology-body{padding:27px;}
}

@media screen and (max-width:900px){
	.renewal-main .renewal-intro,.renewal-main .renewal-service,.renewal-main .renewal-inquiry,.renewal-main .renewal-contact,.renewal-main .renewal-network{padding-top:95px; padding-bottom:100px;}
	.renewal-main .renewal-intro-grid{grid-template-columns:1fr; gap:35px;}
	.renewal-main .renewal-intro-copy{padding-left:25px;}
	.renewal-main .renewal-pathology-grid{grid-template-columns:1fr;}
	.renewal-main .renewal-pathology-card{display:grid; grid-template-columns:42% 1fr; min-height:275px;}
	.renewal-main .renewal-pathology-image{height:100%;}
	.renewal-main .renewal-inquiry-card>img{height:180px;}
	.renewal-main .renewal-inquiry-card>span{min-height:170px; padding:22px;}
	.renewal-main .renewal-inquiry-card strong{font-size:18px;}
	.renewal-main .renewal-contact-grid{grid-template-columns:1fr; gap:45px;}
	.renewal-main .renewal-network-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media screen and (max-width:640px){
	.renewal-main .renewal-container{padding:0 22px;}
	.renewal-main .renewal-hero{min-height:610px; max-height:none;}
	.renewal-main .renewal-hero-shade{background:linear-gradient(90deg,rgba(4,21,34,.63),rgba(5,23,36,.32)),linear-gradient(0deg,rgba(4,20,33,.50),transparent 36%);}
	.renewal-main .renewal-hero-content{padding-top:76px; padding-bottom:90px;}
	.renewal-main .renewal-hero-lead{margin-top:25px; font-size:20px;}
	.renewal-main .renewal-hero h2{margin-top:9px; font-size:clamp(24px,calc(12vw - 30px),44px); letter-spacing:-4px;}
	.renewal-main .renewal-hero-description{margin-top:21px; max-width:310px; font-size:16px; word-break:keep-all;}
	.renewal-main .renewal-outline-link{margin-top:37px;}
	.renewal-main .renewal-hero-bottom-inner{padding:0; min-height:66px;}
	.renewal-main .renewal-hero-nav a{gap:4px; flex-direction:column; padding:10px 3px; border-left:0; border-right:1px solid rgba(255,255,255,.2); font-size:11px; text-align:center;}
	.renewal-main .renewal-hero-nav a:last-child{border-right:0;}
	.renewal-main .renewal-intro,.renewal-main .renewal-service,.renewal-main .renewal-inquiry,.renewal-main .renewal-contact,.renewal-main .renewal-network{padding-top:73px; padding-bottom:78px;}
	.renewal-main .renewal-intro h2{margin-top:22px; font-size:37px; letter-spacing:-2px;}
	.renewal-main .renewal-intro-copy p{font-size:15px;}
	.renewal-main .renewal-section-heading{display:block; margin-bottom:32px;}
	.renewal-main .renewal-section-heading p{margin-top:16px; font-size:15px;}
	.renewal-main .renewal-section-heading h2{font-size:40px; letter-spacing:-2px;}
	.renewal-main .renewal-section-heading .renewal-text-link{margin-top:16px; margin-bottom:0;}
	.renewal-main .renewal-card-grid,.renewal-main .renewal-rental-grid,.renewal-main .renewal-inquiry-grid{grid-template-columns:1fr; gap:17px;}
	.renewal-main .renewal-service-card{min-height:0;}
	.renewal-main .renewal-card-image{height:220px;}
	.renewal-main .renewal-card-body{min-height:0; padding:25px;}
	.renewal-main .renewal-card-body h3{font-size:24px;}
	.renewal-main .renewal-card-link{margin-top:18px;}
	.renewal-main .renewal-pathology-card{display:flex; min-height:0;}
	.renewal-main .renewal-pathology-image{height:205px;}
	.renewal-main .renewal-pathology-body{min-height:225px; padding:25px;}
	.renewal-main .renewal-pathology-body>a{margin-top:18px;}
	.renewal-main .renewal-rental-card{height:280px;}
	.renewal-main .renewal-rental-content{left:25px; right:25px; bottom:24px;}
	.renewal-main .renewal-rental-content strong{font-size:24px;}
	.renewal-main .renewal-inquiry .renewal-section-heading p{margin-top:12px; font-size:14px;}
	.renewal-main .renewal-inquiry-card>img{height:200px;}
	.renewal-main .renewal-inquiry-card>span{min-height:145px;}
	.renewal-main .renewal-inquiry-card strong{font-size:22px;}
	.renewal-main .renewal-contact-grid{grid-template-columns:1fr; gap:40px;}
	.renewal-main .renewal-contact-address{white-space:normal;}
	.renewal-main .renewal-contact-lead>p{margin-top:16px; font-size:20px;}
	.renewal-main .renewal-contact-list>div{grid-template-columns:90px 1fr; gap:12px;}
	.renewal-main .renewal-contact-list dd,.renewal-main .renewal-contact-list a{font-size:14px;}
	.renewal-main .renewal-network h2{font-size:33px; letter-spacing:-1.5px;}
	.renewal-main .renewal-network-grid{gap:10px;}
	.renewal-main .renewal-network-grid a{min-height:155px; padding:16px;}
	.renewal-main .renewal-network-grid img{height:60px;}
	.renewal-main .renewal-network-grid strong{max-width:120px; font-size:13px;}
	.renewal-main .renewal-network-grid a>span{right:14px; bottom:12px; font-size:16px;}
}

@media (prefers-reduced-motion:reduce){
	.renewal-main *, .renewal-main *:before, .renewal-main *:after{scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important;}
	.renewal-main.renewal-js .renewal-reveal{opacity:1; transform:none;}
}
