.keyColor { color:#bb2649 }
.gray7 { color:#495057 }
.gray9 { color:#212529 }

.snsAll .container { width: 100%; }
.snsAll .mainTit { font-size: 40px; line-height: 52px; font-weight: 700; }
.snsAll .mainTit2 { font-size: 32px; line-height: 100%; font-weight: 700; }
.snsAll .imgbx img { width: 100%; }
.snsAll .contTxt { margin-top:24px; color:#212529; font-size: 20px; font-weight: 300; line-height: 34px; letter-spacing: -0.4px; }

.snsAll .snsWrap1 { padding:100px 0 100px; position: relative; background: linear-gradient(rgba(255,255,255,0.6), rgba(255,255,255,0.5)), url('/main/img/sns/sns_bg.png'); background-size:cover; }
.snsAll .snsWrap1 .container .contBox1 .imgbx { margin-top:40px }
.snsAll .snsWrap1 .container .contBox1 .imgbx > img { max-width: 389px; margin: 0 auto }
.snsAll .snsWrap2 { position: relative; top:-100px; }
.snsAll .snsWrap2.boardWrap2 .container { padding: 0; }
.snsAll .snsWrap2.boardWrap2 .container .mainTit2 { font-size: 28px; }
.snsAll .snsWrap2 .container .rowBox { background:#fff; border-radius:50px 50px 0 0; padding: 42px 16px; }
.snsAll .snsWrap2 .container .rowBox  .minContainer { justify-content: space-between; align-items: center; width: 100%; max-width: 1164px; margin:0 auto }
.snsAll .snsWrap2 .container .rowBox  .minContainer .snsBxWrap { width: max-content; }
.snsAll .snsWrap2 .container .rowBox  .minContainer .snsBxWrap .snsBxGrp { width: 100% !important; }
.snsAll .snsWrap2 .container .rowBox  .minContainer .snsBxWrap .snsBxGrp > li > a { width: max-content !important; }
.snsAll .snsWrap2 .container2 { gap:120px; width: 100%; max-width: 1162px; margin:80px auto; }
.snsAll .snsWrap2 .container2 .mainTit2 { display: flex; align-items: center; gap:8px; text-align: left; }
.snsAll .snsWrap2 .container2 .contBox1 { gap:40px; }
.snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp { display: flex; flex-wrap:wrap; gap:30px; }
.snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp > li { width: calc(25% - 23px); }
.snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp > li > a.imgbx > img { border-radius:25px }
.snsAll .snsWrap2 .container2 .contBox2 { gap:40px; }
.snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp{ display: flex; flex-wrap:wrap; gap:30px; }
.snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp > li { width: calc(25% - 23px); }
.snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp > li > a.imgbx > img { border-radius:25px }

/* 반응형 */
@media (max-width:1400px){
    .snsAll .container2 { padding:0 16px; }
}
@media (max-width:1200px){
    .snsAll .snsWrap1 { padding: 140px 0 100px; }
    .snsAll .mainTit { font-size: 36px; line-height: 46px; }
}
@media (max-width:1080px){
    .snsAll .mainTit, .snsAll .mainTit2 { font-size: 28px; line-height: 37px; }
    .snsAll .snsWrap1 .container .contBox1 .imgbx > img { max-width: 300px; }
    .snsAll .snsWrap1 { padding:120px 0 100px }
    .snsAll .contTxt { font-size: 16px; line-height: 27px; }
    .snsAll .snsWrap2 .container2 { padding:0 16px; }
    .snsAll .snsWrap2 .container2 { margin:30px auto }
    .snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp { gap:15px }
    .snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp > li{ width: calc(25% - 12px); }
    .snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp { gap:15px }
    .snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp > li { width: calc(25% - 12px); }
    .snsAll .snsWrap2 .container2 { gap:80px }
    .snsAll .snsWrap2.boardWrap2 .container .mainTit2 { font-size: 24px; }
}
@media (max-width:870px){
    .snsAll .mainTit2 { font-size: 26px; }
}
@media (max-width:640px){
    .snsAll .mainTit { font-size: 22px; line-height: 30px; }
    .snsAll .contTxt { margin-top:10px; }
    .snsAll .snsWrap2.boardWrap2 .container .mainTit2 { font-size: 22px; }
    .snsAll .snsWrap2.boardWrap2 .container { padding: 0 !important; }
    .snsAll .snsWrap2 .container .rowBox { padding: 28px 16px; }
    .snsAll .snsWrap2 .container .rowBox .minContainer { flex-direction: column; gap:20px; }
    .snsAll .snsWrap2 .container .rowBox .minContainer .snsBxWrap { width: 100%; gap:10px !important; }
    .snsAll .snsWrap2 .container .rowBox .minContainer .snsBxWrap .snsBxGrp { flex-direction: column; }
    .snsAll .snsWrap2 .container .rowBox .minContainer .snsBxWrap .snsBxGrp > li > a { max-width: 100%; width: 100% !important; }
    .snsAll .snsWrap1 .container .contBox1 .imgbx > img { max-width: 240px; }
    .snsAll .snsWrap1 .container .contBox1 .imgbx { margin-top:24px }
    .snsAll .snsWrap2 .container2 { gap:50px; }
    .snsAll .snsWrap2 .container2 .mainTit2{ font-size: 22px; }
    .snsAll .snsWrap2 .container2 .contBox1, .snsAll .snsWrap2 .container2 .contBox2 { gap:24px }
    .snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp > li,
    .snsAll .snsWrap2 .container2 .contBox2 .instaWrap .instaGrp > li { width: calc(50% - 8px); }
    .snsAll .snsWrap2 .container2 .contBox1 .youtubeWrap .youtubeGrp > li > a.imgbx > img,
    .snsAll .snsWrap2 .container2 .contBox1 .instaWrap .instaGrp > li > a.imgbx > img { border-radius:20px; }
}
/* ============================ 내부링크 클러스터 (sharWrap4) ============================ */
.sharWrap4 { background: #F8F9FA; border-top: 1px solid #eee; padding: 70px 0; }
.sharWrap4 .tonseHead3 { font-size: 32px; line-height: 1.35; }
.sharWrap4 .ilcLabel { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.sharWrap4 .ilcLabel::before { content: ''; display: inline-block; width: 3px; height: 18px; background: #bb2649; border-radius: 2px; flex-shrink: 0; }
.sharWrap4 .ilcLabel span { font-size: 12px; font-weight: 700; color: #bb2649; letter-spacing: 2.5px; text-transform: uppercase; }
.sharWrap4 .ilcGrid { margin-top: 36px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.sharWrap4 .ilcCard { display: flex; flex-direction: column; background: #fff; border: 1px solid #e8e2de; border-radius: 20px; padding: 28px 24px 22px; text-decoration: none; color: #212529; position: relative; overflow: hidden; transition: box-shadow 0.25s ease, transform 0.25s ease, border-color 0.25s ease; }
.sharWrap4 .ilcCard::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: #bb2649; transform: scaleX(0); transform-origin: left; transition: transform 0.3s ease; }
.sharWrap4 .ilcCard:hover { box-shadow: 0 10px 36px rgba(187,38,73,0.10); transform: translateY(-4px); border-color: #d9aab6; }
.sharWrap4 .ilcCard:hover::before { transform: scaleX(1); }
.sharWrap4 .ilcIcon { width: 46px; height: 46px; background: #FFF0F3; border-radius: 14px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 18px; transition: background 0.2s; }
.sharWrap4 .ilcCard:hover .ilcIcon { background: #ffd6de; }
.sharWrap4 .ilcCardTit { font-size: 17px; font-weight: 700; color: #212529; margin: 0 0 8px; letter-spacing: -0.5px; }
.sharWrap4 .ilcCardDesc { font-size: 13px; color: #999; line-height: 1.7; margin: 0; flex: 1; letter-spacing: -0.3px; }
.sharWrap4 .ilcArrow { display: flex; align-items: center; gap: 5px; margin-top: 18px; font-size: 13px; font-weight: 700; color: #bb2649; opacity: 0; transform: translateX(-4px); transition: opacity 0.22s ease, transform 0.22s ease; }
.sharWrap4 .ilcCard:hover .ilcArrow { opacity: 1; transform: translateX(0); }
.sharWrap4 .ilcCard:hover .ilcArrow svg { transform: translateX(3px); }
.sharWrap4 .ilcCardWide { grid-column: span 3; flex-direction: row; align-items: center; gap: 20px; padding: 22px 28px; }
.sharWrap4 .ilcCardWide .ilcIcon { margin-bottom: 0; flex-shrink: 0; }
.sharWrap4 .ilcCardWide .ilcCardBody { flex: 1; }
.sharWrap4 .ilcCardWide .ilcCardBody .ilcCardTit { margin-bottom: 4px; }
.sharWrap4 .ilcCardWide .ilcArrow { opacity: 1; transform: none; flex-shrink: 0; margin-top: 0; border: 1.5px solid #bb2649; border-radius: 30px; padding: 10px 20px; white-space: nowrap; transition: background 0.2s, color 0.2s; }
.sharWrap4 .ilcCardWide:hover .ilcArrow { background: #bb2649; color: #fff; transform: none; }

@media (max-width: 1024px){
    .sharWrap4 .ilcGrid { grid-template-columns: repeat(2, 1fr); }
    .sharWrap4 .ilcCardWide { grid-column: span 2; }
}
@media (max-width: 767px){
    .sharWrap4 { padding: 48px 0; }
    .sharWrap4 .tonseHead3 { font-size: 22px; }
    .sharWrap4 .ilcGrid { grid-template-columns: 1fr; gap: 12px; }
    .sharWrap4 .ilcCardWide { grid-column: span 1; flex-direction: column; align-items: flex-start; }
    .sharWrap4 .ilcCardWide .ilcIcon { margin-bottom: 14px; }
    .sharWrap4 .ilcCardWide .ilcArrow { margin-top: 14px; }
}
