@charset "utf-8";

.brand-nav {max-width:469px; margin:0 auto 15px; text-align:center;}
.brand-nav ul {display:table; table-layout:fixed; width:100%;}
.brand-nav ul li {display:table-cell; vertical-align:top; border:1px solid #061f3a; border-left:0;}
.brand-nav ul li:first-child {border-left:1px solid #061f3a;}
.brand-nav ul li a {display:block; color:#000; font-size:16px; font-weight:500; line-height:48px; letter-spacing:-.03em;}
.brand-nav ul li.active {background:#061f3a;}
.brand-nav ul li.active a {color:#fff;}

.telecom-nav {max-width:469px; margin:0 auto 35px;}
.telecom-nav ul {display:table; table-layout:fixed; width:100%;}
.telecom-nav ul li {display:table-cell; vertical-align:top; border:1px solid #061f3a; border-left:0;}
.telecom-nav ul li:first-child {border-left:1px solid #061f3a;}
.telecom-nav ul li a {display:block; height:48px; overflow:hidden; text-indent:-999em; background-position:50% 50%; background-repeat:no-repeat;}
.telecom-nav ul li .skt {background-image:url("../images/sub/nav_skt.png");}
.telecom-nav ul li .kt {background-image:url("../images/sub/nav_kt.png");}
.telecom-nav ul li .lgt {background-image:url("../images/sub/nav_lgt.png");}
.telecom-nav ul li .samsung {background-image:url("../images/sub/brand_samsung.png");}
.telecom-nav ul li .apple {background-image:url("../images/sub/brand_apple.png");}
.telecom-nav ul li .lg {background-image:url("../images/sub/brand_lg.png");}
.telecom-nav ul li.active {background:#061f3a}
.telecom-nav ul li.active .skt {background-image:url("../images/sub/nav_skt_on.png");}
.telecom-nav ul li.active .kt {background-image:url("../images/sub/nav_kt_on.png");}
.telecom-nav ul li.active .lgt {background-image:url("../images/sub/nav_lgt_on.png");}
.telecom-nav ul li.active .samsung {background-image:url("../images/sub/brand_samsung_on.png");}
.telecom-nav ul li.active .apple {background-image:url("../images/sub/brand_apple_on.png");}
.telecom-nav ul li.active .lg {background-image:url("../images/sub/brand_lg_on.png");}

.goods-sort {margin-bottom:30px; padding-bottom:10px; border-bottom:1px solid #000; color:#555; font-weight:300; font-size:14px; line-height:1.5em;}
.goods-sort:after {content:""; display:block; clear:both;}
.goods-sort .total {float:left; padding-left:20px; background:url("../images/sub/sort_icon.png") 0 5px no-repeat;}
.goods-sort .sort {float:right;}
.goods-sort .sort ul li {float:left; padding:0 8px 0 9px; position:relative;}
.goods-sort .sort ul li:before {content:""; position:absolute; top:50%; left:0; margin-top:-6px; width:1px; height:12px; background:#d6d6d6;}
.goods-sort .sort ul li:first-child {padding-left:0;}
.goods-sort .sort ul li:first-child::before {display:none;}
.goods-sort .sort ul li:last-child {padding-right:0;}
.goods-sort .sort ul li a:hover {text-decoration:underline;}

.goods-list ul {margin:0 -12px;}
.goods-list ul:after {content:""; display:block; clear:both;}
.goods-list ul li {float:left; width:25%; padding:0 12px; margin-bottom:70px; text-align:center;}
.goods-list ul li:nth-child(4n+1) {clear:left;}
.goods-list ul li a {display:block;}
.goods-list .thumb {max-width:186px; margin:0 auto 10px;}
.goods-list .thumb .img {position:relative; padding-bottom:100%; overflow:hidden;}
.goods-list .thumb img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain;}
.goods-list .telecom {font-size:12px; font-weight:700; line-height:1.3em; letter-spacing:0;}
.goods-list .telecom.skt {color:#3617ce;}
.goods-list .telecom.kt {color:#000;}
.goods-list .telecom.lgt {color:#e2249d;}
.goods-list .tit {color:#000; font-size:22px; font-weight:500; line-height:1.3em; letter-spacing:-.03em; margin-bottom:5px;}
.goods-list .monthly {font-size:14px; color:#888; font-weight:300; line-height:1.3em; margin-bottom:4px;}
.goods-list .price {font-size:18px; color:#888; font-weight:300; line-height:1.3em; margin-bottom:10px;}
.goods-list .price strong {color:#000; font-size:22px;}
.goods-list .txt {font-size:13px; color:#888; font-weight:300; line-height:1.3em; margin-bottom:17px;}

/* 상품 목록 카드 스타일 (간소화 버전) */
.goods-list .product-card {position:relative; border:1px solid #e5e5e5; border-radius:8px; padding:15px; background:#fff; text-align:left; transition:box-shadow 0.2s;}
.goods-list a:hover .product-card {box-shadow:0 4px 12px rgba(0,0,0,0.1);}

/* 배지 */
.goods-list .card-badges {margin-bottom:10px;}
.goods-list .badge {display:inline-block; padding:3px 8px; font-size:11px; font-weight:500; border-radius:3px; margin-right:4px;}
.goods-list .badge-5g {background:#e8f4fd; color:#0066cc; border:1px solid #0066cc;}
.goods-list .badge-sale {background:#fff0e6; color:#ff6b00; border:1px solid #ff6b00;}

/* 썸네일 */
.goods-list .product-card .thumb {max-width:160px; margin:0 auto 15px;}

/* 카드 정보 영역 */
.goods-list .card-info {text-align:left;}
.goods-list .card-info .telecom {font-size:12px; font-weight:600; margin-bottom:4px;}
.goods-list .card-info .tit {font-size:18px; font-weight:600; color:#000; margin-bottom:6px; line-height:1.3em;}
.goods-list .card-info .yogum-basis {font-size:12px; color:#888; margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid #eee;}

/* 가격 섹션 */
.goods-list .price-section {padding-bottom:10px; border-bottom:1px solid #eee; margin-bottom:10px;}
.goods-list .price-row {display:flex; justify-content:space-between; align-items:center; margin-bottom:5px; font-size:13px; line-height:1.4em;}
.goods-list .price-row:last-child {margin-bottom:0;}
.goods-list .price-row dt {color:#666;}
.goods-list .price-row dd {color:#666;}
.goods-list .price-row.discount dt {color:#6b5ce7;}
.goods-list .price-row.discount dd {color:#6b5ce7;}
.goods-list .price-row.halbu {margin-top:6px; padding-top:6px; border-top:1px dashed #ddd;}
.goods-list .price-row.halbu dt {font-weight:500; color:#666; font-size:13px;}
.goods-list .price-row.halbu dd {font-weight:600; color:#ff3b3b; font-size:13px;}

/* 월 납부 섹션 */
.goods-list .monthly-section {padding-bottom:10px; border-bottom:1px solid #eee; margin-bottom:10px;}

/* 총액 섹션 */
.goods-list .total-section .price-row.total dt {font-size:14px; font-weight:600; color:#000;}
.goods-list .total-section .price-row.total dd {font-size:14px; color:#000;}
.goods-list .total-section .price-row.total dd strong {font-size:20px; font-weight:700; color:#000;}
.goods-list .bt {display:inline-block; padding:0 17px; border:1px solid #bababa; border-radius:8px; color:#000; font-size:14px; font-weight:300; line-height:31px; transition:.2s;}
.goods-list a:hover .bt {background:#000; border-color:#000; color:#fff;}

/* 상세 */
.goods-summary {margin-bottom:45px; margin-top:10px; position:relative;}
.goods-summary:after {content:""; display:block; clear:both;}

.goods-photo {float:left; width:28%;}

/*.goods-photo .photo {position:relative; border:1px solid #ddd; padding:14px;}  25.10.21 update */
.goods-photo .photo {position:relative;  padding:14px;}
.goods-photo .photo .items {display:none;}
.goods-photo .photo .slick-slider {display:block !important;}
.goods-photo .photo .img {position:relative; height:0; padding-bottom:100%;}
.goods-photo .photo .img img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain;}
.goods-photo .bnrs .bnr {margin-top:15px;}
.goods-photo .bnrs .bnr:first-child {margin-top:25px;}

/* 타이틀 영역 */
.goods2-tit {margin-top: 10px; margin-bottom: 10px;}

/* 옵션선택 */
.goods-options {float:left; width:40%; padding:0 14px;}

.options-wrap {position:relative; border:1px solid #ddd; border-bottom:0;}

.option-title {background:#fff; padding:8px 20px; border-bottom:1px solid #888; color:#000;}
.option-title p {font-size:16px; line-height:1.3em; margin-bottom:7px; margin-top:4px;}
.option-title p img {margin-right:7px;}
.option-title p .bar {display:inline-block; margin:0 6px; width:1px; height:12px; background:#b5b5b5;}
.option-title h3 {font-size:24px; line-height:1.3em;}

.option-group {display:table; table-layout:fixed; width:100%; padding:15px 13px; border-bottom:1px solid #eee; line-height:1.3em;}
.option-group .opt-tit {display:table-cell; vertical-align:top; width:90px; color:#000; font-size:16px; padding-top:17px; letter-spacing:-.05em;} /*pc버전 타이틀크기*/
.option-group .opt-tit.block {display:block; width:auto; margin-bottom:12px; font-size: 18px; font-weight:700; color:#111; letter-spacing:-.03em;}
.option-group .opt-cnt {display:table-cell; vertical-align:top;}
.option-group .opt-cnt.block {display:block;}
.option-group .select {height:42px; line-height:40px; padding:0 12px; color:#999; border:1px solid #c4c4c4; border-radius:4px; background:#fff url('/images/bbs/select2.png') right 15px center no-repeat; -webkit-appearance:none; -moz-appearance:none; appearance:none;}
.option-group .select::-ms-expand {display:none;} 

.option-agency {margin:0 -2px; max-width:264px; text-align:center;}
.option-agency:after {content:""; display:block; clear:both;}
.option-agency .col {float:left; width:25%; padding:0 2px;}

.option-giga {margin:-2px; text-align:center;}
.option-giga:after {content:""; display:block; clear:both;}
.option-giga .col {float:left; padding:2px;}
.option-group .option-giga .col label > p { padding-left: 5px; }

.select-agency {display:block; position:relative; background:#fff;}
.select-agency input {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-agency label {display:table; width:100%; height:34px; border:1px solid #c3c3c3; border-radius:4px; color:#555; font-size:16px; line-height:32px; letter-spacing:-.03em; cursor:pointer; overflow:hidden; background-position:50% 50%; background-repeat:no-repeat;}
.select-agency.skt label {background-image:url("../images/shop/telecom_skt_off.png"); text-indent:-999em;}
.select-agency.kt label {background-image:url("../images/shop/telecom_kt_off.png"); text-indent:-999em;}
.select-agency.lgt label {background-image:url("../images/shop/telecom_lgt_off.png"); text-indent:-999em;}
.select-agency input:checked + label {border-color:#3617ce; color:#3617ce;}
.select-agency.skt input:checked + label {background-image:url("../images/shop/telecom_skt.png");}
.select-agency.kt input:checked + label {background-image:url("../images/shop/telecom_kt.png");}
.select-agency.lgt input:checked + label {background-image:url("../images/shop/telecom_lgt.png");}

/* update 25.10.22
.select-giga {display:block; min-width:80px; position:relative; background:#fff;}
.select-giga input {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-giga label {display:table; width:100%; height:34px; padding:0 10px; border:1px solid #c3c3c3; border-radius:4px; cursor:pointer;}
.select-giga .cell {display:table-cell; vertical-align:middle;}
.select-giga .tit {display:block; color:#555; font-size:16px; line-height:1.4em; margin:2px 0;}
.select-giga .txt {display:block; font-family:'Pretendard',sans-serif; color:#999; font-size:11px; line-height:1.4em; letter-spacing:-.03em; margin:2px 0;}
.select-giga input:checked + label {border-color:#3617ce;}
.select-giga input:checked + label .tit {color:#3617ce;}
*/
.select-giga {display:block; min-width:80px; position:relative; background:#fff;}
.select-giga input {}
.select-giga label {display:flex; align-items:center; width:100%; height:44px; padding:5px 10px; border:1px solid #c3c3c3; border-radius:4px; cursor:pointer;}
.select-giga .cell {display:flex; align-items:center;}
.select-giga .tit { display: block;  color:#b3b3b3;  font-size: 16px;  line-height: 1.7rem;  margin: auto 7px;}
.select-giga .txt {display:block; font-family:'Pretendard',sans-serif; color:#999; font-size:11px; line-height:1.4em; letter-spacing:-.03em; margin:2px 0;}
.select-giga input[type="radio"] {    appearance: none;  border: max(2px, 0.1em) solid gray;  border-radius: 50%;  width: 1.25em; height: 1.25em;  margin: 0 6px 0 4px !important; vertical-align: middle;}
.select-giga input:checked { border: 0.4em solid #3617ce;}
.select-giga input:checked + label {border-color:#3617ce;}
.select-giga input:checked + label .tit {color:#3617ce;}

/* 가입유형 선택 박스 (안내문구 포함) 크기 조정 */
.select-giga label p { margin: 0; padding: 4px 0 0 0; }
/* 가입유형 선택 박스만 크기 조정 (안내문구가 있는 박스) */
.option-group .opt-tit[data-step="2"] + .option-giga .select-giga label,
.option-group .opt-tit.block[data-step="2"] ~ .option-giga .select-giga label { height: auto; min-height: 60px; padding: 10px 12px; }

.select-giga input:checked + span {color:#555;font-weight:600}

.select-color {margin:0 -5px; text-align:center;}
.select-color:after {content:""; display:block; clear:both;}
.select-color .color {float:left; position:relative; width:54px; padding:4px 4px;}
.select-color .color label {display:block; width:35px; height:35px; border-radius:100%; margin:0 auto 6px; border:1px solid #c3c3c3; vertical-align:middle; cursor:pointer;}
.select-color .color input[type="radio"] {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-color .color input[type="radio"]:checked + label {position:relative;}
.select-color .color input[type="radio"]:checked + label:after {content:""; position:absolute; top:-5px; right:-5px; bottom:-5px; left:-5px; border:2px solid #3617ce; border-radius:100%;}
.select-color .color .txt {display:block; color:#555; font-size:13px; font-weight:400; line-height:1.4em; letter-spacing:-.03em; word-break:break-all;}

.select-jiwon .option {position:relative; margin-bottom:6px;}
.select-jiwon .option label {display:table; width:100%; height:57px; padding:0 8px; font-size:16px; line-height:1.2em; letter-spacing:-.02em; background:#fff; border:1px solid #c3c3c3; border-radius:4px; cursor:pointer;}
.select-jiwon .option input[type="radio"] {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-jiwon .option .left {display:table-cell; vertical-align:middle;}
.select-jiwon .option .right {display:table-cell; vertical-align:middle; text-align:right;}
.select-jiwon .option .sm {font-size:13px;}
.select-jiwon .option input[type="radio"]:checked + label {border-color:#2356c5; color:#2356c5;}
.select-jiwon .option:last-child {margin-bottom:0;}

.select-discount {text-align:center; margin:0 -4px 15px;}
.select-discount:after {content:""; display:block; clear:both;}
.select-discount .option {float:left; width:50%; padding:0 4px; position:relative;}
.select-discount .option label {font-size:16px; line-height:1.2em; letter-spacing:-.02em; cursor:pointer;}
.select-discount .option input[type="radio"] {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-discount .option .box {padding:8px 2px; border:1px solid #c3c3c3; border-radius:4px; margin-bottom:10px;}
.select-discount .option .sm {font-size:13px;}
.select-discount .option input[type="radio"]:checked + label {color:#3617ce;}
.select-discount .option input[type="radio"]:checked + label .box {border-color:#3617ce;}
/* 25.07.29 chnaged
.select-discount .option input[type="radio"]:checked + label {color:#2356c5;}
.select-discount .option input[type="radio"]:checked + label .box {border-color:#2356c5;}
*/
.select-add-discount {display:flex; align-items:center; color:#555; font-size:14px; line-height:1.5em;}
.select-add-discount .img {width:53px;}
.select-add-discount .txt {flex:1 1 auto;}
.select-add-discount .price {color:#ff3e3e;}

.select-option {margin:-2px; overflow:hidden;}
.select-option:after {content:""; display:block; clear:both;}
.select-option .option {float:left; padding:2px; position:relative;}
.select-option .option label {display:inline-block; height:34px; padding:0 6px; text-align:center; letter-spacing:-.03em; font-size:16px; line-height:32px; color:#555; background:#fff; border:1px solid #c3c3c3; border-radius:4px; cursor:pointer; overflow:hidden;}
.select-option .option input[type="radio"] {position:absolute; top:0; left:0; z-index:-1; width:0; height:0;}
.select-option .option input[type="radio"]:checked + label {border-color:#3617ce; color:#3617ce; font-weight:400;}
.select-option .option .hot {display:inline-block; vertical-align:middle; margin:-.5em 1px 0 0; width:26px; height:26px; color:#fff; font-size:10px; line-height:26px; background:#888; border-radius:100%;}
.select-option .option input[type="radio"]:checked + label .hot {background:#bb050f;}

.select-option.gaip .option label {min-width:90px;}
.select-option.usim .option label {min-width:130px;}
.select-option.yakjung .option label {min-width:90px; height:44px !important; padding:8px 6px !important; line-height:28px !important;}

.icon-help {display:inline-block; vertical-align:middle; margin:-.2em 0 0 3px; cursor:pointer; width:17px; height:17px; text-align:center; font-style:normal; color:#000; font-size:12px; font-weight:500; line-height:15px; letter-spacing:0; background-image:linear-gradient(#ffffff, #ededed); border:1px solid #838383; border-radius:100%;}

.select-tip {position:relative; margin-top:12px; padding-left:36px; color:#555; font-size:15px; line-height:1.5em; letter-spacing:-.03em;}
.select-tip:before {content:"TIP"; position:absolute; top:1px; left:0; width:30px; height:15px; text-align:center; color:#fff; font-size:12px; font-weight:300; letter-spacing:0; line-height:15px; background:#666; border-radius:3px;}
.select-tip strong {font-weight:500;}

.select-plan {position:relative; border:1px solid #2356c5; padding:11px; border-radius:5px;}
.select-plan .select-hidden {display:none;}
.select-plan .tit {color:#333; font-size:16px; line-height:1.3em; margin-bottom:4px; margin-right:60px;}
.select-plan .price {color:#888; font-size:13px; font-weight:300; line-height:1.3em; margin-bottom:10px;}
.select-plan .info {color:#888; font-size:13px; font-weight:300; line-height:1.6em;}
.select-plan .info-opt {position:relative; margin-top:12px; padding-left:42px; color:#555; font-size:12px; line-height:1.4em; letter-spacing:-.03em;}
.select-plan .info-opt:before {content:"TIP"; position:absolute; top:-1px; left:0; width:36px; height:18px; text-align:center; color:#fff; font-size:11px; font-weight:300; letter-spacing:0; line-height:18px; background:#f36c1a; border-radius:3px;}
.select-plan .info-opt strong {font-weight:500;}
.select-plan .choice-btn {position:absolute; top:10px; right:10px; display:inline-block; padding:0 8px; text-align:center; color:#3617ce; font-size:14px; font-weight:300; line-height:24px; background-image:linear-gradient(#ffffff, #ededed); border:1px solid #838383; border-radius:3px;}

.select-add-option {padding:15px; border-bottom:1px solid #ddd;}
.select-add-option a {position:relative; display:block; background:#414143; color:#ffd739; padding:15px 10px; padding-right:45px; font-size:14px; font-weight:500; letter-spacing:-.03em; line-height:1.4em; border-radius:2px;}
.select-add-option a .toggle {content:""; position:absolute; top:50%; right:10px; margin-top:-9px; width:18px; height:18px;}
.select-add-option a .toggle:before {content:""; position:absolute; top:50%; left:0; right:0; margin-top:-1px; height:2px; background:#fff;}
.select-add-option.active {border-bottom:0;}
.select-add-option.active a .toggle:after {content:""; position:absolute; top:0; bottom:0; left:50%; margin-left:-1px; width:2px; background:#fff;}

#addOptions.active {display:block !important;}

.select-card .select-hidden {display:none;}
.select-card .select-input {position:relative; margin-bottom:10px;}
.select-card .select-input .select {overflow:hidden; white-space:nowrap; word-break:break-all; text-overflow:ellipsis; cursor:pointer;}
.select-card .select-input.del {background-image:none;}
.select-card p {font-size:14px; line-height:1.45em; letter-spacing:-.03em; margin-top:10px;}
.select-card p strong {color:#2356c5; font-weight:500;}
.select-card .card-del {position:absolute; top:50%; right:10px; margin-top:-10px; width:20px; height:20px; background:#555; border:0; border-radius:100%; transition:.2s;}
.select-card .card-del:before,
.select-card .card-del:after {content:""; position:absolute; display:block; top:25%; left:50%; width:2px; height:50%; margin-left:-1px; background:#fff; border-radius:2px;}
.select-card .card-del:before {transform:rotate(45deg)}
.select-card .card-del:after {transform:rotate(-45deg)}
.select-card .card-del:hover {background:#cb1a1a;}

.select-etc .checkbox {margin-right:30px;}
.select-etc .info-txt {display:inline-block; vertical-align:middle; margin-top:-.1em; letter-spacing:-.05em;}
.select-etc .family {position:relative; margin-top:12px; padding-left:100px;}
.select-etc .family label {position:absolute; top:9px; left:0; letter-spacing:-.04em;}
.select-etc .family .select {width:100%;}

.select-welfare {font-size:14px; line-height:1.5em; font-weight:300; letter-spacing:-.03em;}

/*요금 설명*/
.yogeum-guide{
    font-size: 0.8rem;
    background: #898989;
    margin: 6px 0;
    padding: 1px;
    border: 1px solid #cecece;
    border-radius: 5px;
}

.yogeum-guide .cont{height:75px;background:#f9f9f9;overflow: hidden;padding: 3px 10px;}

.cont.open{height:auto;}

.yogeum-guide .b-open{
    height: 35px;
    background: #f9f9f9;
    border-top: none;
    border-right: none;
    border-left: none;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border-bottom: 1px solid;
	text-align:center;	
}

.b-open img{	transition: transform .2s;transform-origin: 34% 52%;}

.cont.open + .b-open img{ transform: rotate(180deg);transform-origin:34% 52%;}

/*요금 계산표 25.10.24  */
.yogeum-calc {float:left; width:32%;}
.calc-wrap.fixed {position:fixed; top:10px}
.calc-wrap.fixed-bottom {position:absolute; bottom:0;}
.calc-body {position:relative; padding:13px 10px 13px; border:2px solid #cecece; border-radius: 10px; }background:#fafafa;}
.calc-tit {border-bottom: 2px solid #373737;}
.calc-tit h3{font-size:1.125rem; padding: 6px 0 10px;}
.calc-box{padding: 15px 0;}
.calc-box .t-line{border-top:2px solid #373737;}
.calc-price {margin-bottom:8px;}
.calc-price strong{display: inline-block; vertical-align: top; font-size: 23px; line-height: 23px;color: #ff0000; font-weight: 700;}
.calc-price span{ display: inline-block;    vertical-align: top;    font-size: 17px;    line-height: 26px;    color: #000;    font-weight: 500;}
.calc-price .price{float: right; padding-right: 5px;}
.calc-price em {padding-left: 3px;font-style: normal;font-size: 0.9rem; color:#9b9d9b;}
.calc-info {margin-bottom: 3px; line-height: 1.4;}
.calc-info span:nth-child(1) {color : #666666; font-size: 14px;}
.calc-info .price {float: right; padding-right: 5px; font-size: 14px;}

.calc-sum .t-line{border-top:2px solid #373737;}

/* 강조: 할부원금(단말기금액) 라인 전용 스타일 */
.calc-info.highlight {padding:10px 12px; margin:8px 0; background:rgba(54,23,206,0.06); border:1px solid rgba(54,23,206,0.2); border-radius:8px;}
.calc-info.highlight span:nth-child(1) {font-weight:600; font-size:15px; color:#3617ce !important;}
.calc-info.highlight .price {font-weight:700; font-size:15px; color:#3617ce !important;}
.t-line span:nth-child(1) {padding:0px 10px;}
.calc-sum .calc-price {padding-top: 15px; display: flex; justify-content: space-between; align-items: center;}
.calc-sum .calc-price strong{display: inline-block; vertical-align: top; font-size: 23px; line-height: 23px;color: #ff0000; font-weight: 700;}
.calc-sum .calc-price span{ display: inline-block;    vertical-align: top;    font-size: 21px;    line-height: 23px;    color: #000;    font-weight: 700;}
.calc-sum .calc-price .last-price{padding-top: 0px;    text-align: right; margin-left: auto;}
.calc-sum .calc-price .last-price strong{display: inline-block; vertical-align: top; font-size: 27px; line-height: 23px;color: #ff0000; font-weight: 700;}
.calc-sum .calc-price .last-price span{ display: inline-block;    vertical-align: top;    font-size: 19px;    line-height: 23px;    color: #000;    font-weight: 700;     padding: 5px 2px 0px 2px;}
.calc-sum .calc-etc{padding-top: 0px;  text-align: right; color: #9b9d9b; font-size: 14px;}
.calc-sum .calc-etc span {font-size: 14px;}

/*25.11.06 윺심 css 추가 */
.usim-last-price{text-align:right;}
.usim-last-price strong{display: inline-block; vertical-align: top; font-size: 27px; line-height: 23px;color: #ff0000; font-weight: 700;}

.cline{text-decoration: line-through; color: #999;}

.dot_line {clear: both; border-top: 2px dashed #bbbbbb;  height: 2px;}

/*제휴및 기타할인 25.11.06*/
.jehu-discount{background: #fff;    border: 1px solid #ddd;    padding: 10px 8px;    margin: 6px 0;    font-size: 14px; line-height: 1.4em;}
.jehu-discount dl {padding:3px 0;display:table; width:100%; line-height:1.457em; padding:0 4px 0 7px;}
.jehu-discount dt {display:table-cell; vertical-align:middle; letter-spacing:-.025em;color:#000;}
.jehu-discount dd {display:table-cell; vertical-align:middle; text-align:right;}
.jehu-discount .text-red {color:#ff3e3e;}
.jehu-discount .help-txt {font-size:14px; color:#888; line-height:1.5em; font-weight:300; letter-spacing:-.025em; margin-top:2px;}

.discount-line {display:none;clear: both; border-top: 2px dashed #bbbbbb;  height: 2px;}

.total-discount{margin: 12px 0; font-size: 14px;}
.total-discount dl {padding:3px 0;display:table; width:100%; line-height:1.457em; padding:0 4px 0 7px;}
.total-discount dt {display:table-cell; vertical-align:middle; letter-spacing:-.025em;color:#000;}
.total-discount dd {display:table-cell; vertical-align:middle; text-align:right;}


.jiwon-box { font-size: 0.9rem; margin: 10px 0;  padding: 1px; border: 2px solid #cecece; border-radius: 5px;}
.jiwon-box.active {  border: 2px solid #3617ce; }
.jiwon-box p{margin:0 auto;height:37px;font-size:0.9rem;padding:8px 10px;width:95%;border-bottom: 1px solid #d1d1d1;}
.jiwon-box img{filter: opacity(0.5) drop-shadow(0 0 0 #000000);height: 16px; width: 7px; position: relative; top: 4px;}

.jiwon-box input[type="radio"] {    appearance: none;  border: max(2px, 0.1em) solid gray;  border-radius: 50%;  width: 1.25em; height: 1.25em;  margin: 0.7em 2px !important;}
.jiwon-box input:checked { border: 0.4em solid #3617ce;}

.jiwon-box ul li{margin: 0 15px 15px;}

.jiwon-box .tit{font-weight:500;}
.jiwon-box .desc{font-size: 0.8rem;margin: -6px 0px -6px 23px;font-weight:500;}
.jiwon-box .desc2{font-size: 0.8rem;margin: 13px 0px -6px 23px;line-height: 18px;font-weight:500;}

/* 요금 자동계산기  삭제 또는 변경예정 25.10.24 */
.goods-count {float:left; width:32%;}

.count-wrap {transition:.2s;}
.count-wrap dl {display:table; width:100%; line-height:1.457em; padding:0 4px 0 7px;}
.count-wrap dt {display:table-cell; vertical-align:middle; letter-spacing:-.025em;}
.count-wrap dd {display:table-cell; vertical-align:middle; text-align:right;}

.count-wrap.fixed {position:fixed; top:10px}
.count-wrap.fixed-bottom {position:absolute; bottom:0;}

.count-body {position:relative; padding:13px 10px 13px; border:1px solid #e0cece; border-bottom:1px solid #000; background:#fafafa;}
.count-body dd .price {font-weight:700; line-height:1.1em; color:#000;}

.count-tit {position:relative; padding:6px 0;}
.count-tit h3 {padding-left:26px; color:#ff3e3e; font-size:20px; font-weight:400; line-height:1.3em; letter-spacing:-.04em; background:url("../images/shop/icon_cost.png") 0 3px no-repeat;}
.count-tit .bt-count-detail {position:absolute; bottom:0; right:0; padding:0 8px; font-size:12px; color:#fff; line-height:22px; background:#eace5b; border-radius:4px 4px 0 0;}

.discount-wrap {background:#2c2268; text-align:center; color:#fff; padding:12px;}
.discount-wrap .tt {font-size:20px; line-height:1.3em;}
.discount-wrap .price strong {font-size:28px; line-height:1.4em;}
.discount-wrap .txt {font-size:16px; font-weight:500; line-height:1.4em;}
.discount-wrap + .count-box {margin-top:0; border-top:0;}

.count-box-wrap {overflow:hidden; margin-left:-6px;}
.count-box-wrap .count-box {float:left; width:calc(50% - 6px); margin:0 0 0 6px;}

.count-box {background:#fff; border:1px solid #ddd; padding:10px 8px; margin:6px 0; font-size:14px; line-height:1.4em;}
.count-box .line {border-bottom:1px solid #dedede; margin:8px 0;}
.count-box dl {padding:3px 0;}
.count-box dt {color:#000;}
.count-box .origin {color:#888; font-size:14px; line-height:1.4em;}
.count-box .dc {color:#555; font-size:14px; line-height:1.4em; margin:2px 0 3px;}
.count-box .month {color:#888; font-size:12px; font-weight:300; line-height:1.4em;}
.count-box .dc-price dt,
.count-box .dc-price dd {vertical-align:top;}
.count-box .help-txt {font-size:14px; color:#888; line-height:1.5em; font-weight:300; letter-spacing:-.025em; margin-top:2px;}
.count-box .in-height {min-height:65px}

.count-discount {margin:12px 0; font-size:14px;}
.count-discount .line {border-bottom:1px solid #9b9b9b; margin:8px 0;}
.count-discount .text-red {color:#ff3e3e;}
.count-discount .allbbaem {color:#ff3e3e}
.count-discount strong {font-weight:500;}
.count-discount.hidden {display:none;}

/*.count-foot {padding:16px 19px; border:1px solid #c8c4a9; background:#fff;}*/
.count-foot {padding:16px 19px; }
.count-foot .btns {margin-top:20px;}
.count-foot .btn-pack {display:block; margin:6px 0; width:100%; font-weight:400; border-radius:3px; border:0; position:relative;}
.count-foot .btn-pack:before {content:""; position:absolute; top:-5px; left:-5px; width:10px; height:10px; background:#fff; transform:rotate(45deg);}
.count-foot .btn-pack:after {content:""; position:absolute; bottom:-5px; right:-5px; width:10px; height:10px; background:#fff; transform:rotate(45deg);}
.count-foot .btn-pack.focus3 {background:#3617ce;}
.count-foot .btn-pack.focus2 {background:#ffe70d;}
.count-foot .btns .btn-pack.focus2 { color: #000 !important; }
.count-foot .btn-pack img {vertical-align:middle; margin:-.2em 5px 0 0;}
.count-foot .text-red {color:#3617ce;}

.count-plus {display:flex; align-items:center; color:#555; font-size:14px; line-height:1.5em; margin-bottom:25px;}
.count-plus .img {width:53px;}
.count-plus .txt {flex:1 1 auto; text-align:right;}

.count-total {margin-bottom:25px;}
.count-total dt {color:#000; font-size:18px; line-height:1.3em;}
.count-total dd {color:#000; font-size:20px; line-height:1.3em;}
.count-total .price {color:#ff3600; font-size:30px; font-weight:700; line-height:1.1em;}
.count-total .help-txt {margin-top:5px; text-align:right; color:#888; font-size:12px; line-height:1.5em; letter-spacing:-.02em;}

/* === 모바일 하단 고정바 (리디자인) === */
/* 딤 오버레이 */
.fix-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:99;}
.goods-fix-count {display:none; position:fixed; bottom:0; left:0; width:100%; z-index:100; font-family:'Pretendard',sans-serif;}
.goods-fix-count.active {display:block;}

/* 상세 패널 (풀 바텀시트 — KT 스타일) */
.goods-fix-count .fix-detail-panel {background:#fff; border-radius:16px 16px 0 0; max-height:calc(100vh - 100px); overflow-y:auto; box-shadow:0 -4px 20px rgba(0,0,0,0.15); -webkit-overflow-scrolling:touch; padding-bottom:24px;}
/* 핸들바 + 헤더 */
.goods-fix-count .fix-detail-handle {padding:10px 0 0; text-align:center;}
.goods-fix-count .fix-detail-handle span {display:inline-block; width:36px; height:4px; border-radius:2px; background:#ddd;}
.goods-fix-count .fix-detail-header {display:flex; align-items:center; justify-content:space-between; padding:12px 16px 0;}
.goods-fix-count .fix-detail-header strong {font-size:16px; font-weight:700; color:#111;}
.goods-fix-count .fix-detail-close {display:flex; align-items:center; justify-content:center; width:32px; height:32px; border:0; background:transparent; cursor:pointer; padding:0;}
/* 상품 요약 정보 (KT 스타일) */
.goods-fix-count .fix-product-info {display:flex; align-items:center; gap:14px; padding:16px; margin:8px 12px 0; background:#f7f7f8; border-radius:12px;}
.goods-fix-count .fix-product-thumb {width:72px; height:72px; flex-shrink:0; border-radius:10px; overflow:hidden; background:#fff; padding:4px;}
.goods-fix-count .fix-product-thumb img {width:100%; height:100%; object-fit:contain;}
.goods-fix-count .fix-product-meta {display:flex; flex-direction:column; gap:3px; min-width:0; text-align:left;}
.goods-fix-count .fix-product-name {font-size:15px; font-weight:700; color:#111; line-height:1.4;}
.goods-fix-count .fix-product-color {font-size:13px; color:#555; line-height:1.4;}
.goods-fix-count .fix-product-tags {font-size:12px; color:#888; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.goods-fix-count .fix-detail-inner {padding:16px 16px 12px;}
.goods-fix-count .fix-detail-row {display:flex; justify-content:space-between; align-items:center; padding:5px 0; font-size:13px; color:#555; line-height:1.5;}
.goods-fix-count .fix-detail-row.sub {padding-left:10px; font-size:12px; color:#888;}
.goods-fix-count .fix-detail-row.sub.highlight span {font-weight:600; color:#333;}
.goods-fix-count .fix-detail-row.total {font-size:14px; font-weight:700; color:#111; padding:8px 0;}
.goods-fix-count .fix-price {text-align:right; white-space:nowrap;}
.goods-fix-count .fix-detail-divider {border-top:1px solid #eee; margin:8px 0;}
/* 안내 문구 */
.goods-fix-count .fix-detail-notice {padding:8px 16px 0; font-size:11px; color:#999; line-height:1.4; text-align:left;}

/* 요약 바 */
.goods-fix-count .fix-summary-bar {display:flex; align-items:center; justify-content:space-between; background:#fff; border-top:1px solid #e5e5e5; padding:14px 16px;}
.goods-fix-count .fix-summary-left {display:flex; flex-direction:column; gap:1px; min-width:0; text-align:left;}
.goods-fix-count .fix-summary-label {font-size:14px; color:#555; text-align:left;}
.goods-fix-count .fix-summary-condition {font-size:11px; color:#999; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-align:left;}
.goods-fix-count .fix-summary-price {font-size:20px; font-weight:700; color:#111; flex:1; text-align:right; margin-right:8px;}
.goods-fix-count .fix-summary-price span {font-size:20px;}
.goods-fix-count .fix-toggle {display:flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid #ddd; border-radius:50%; background:#fff; cursor:pointer; transition:transform 0.25s;}
.goods-fix-count .fix-toggle.open {transform:rotate(180deg);}
.goods-fix-count .fix-toggle svg {display:block;}

/* 액션 바 */
.goods-fix-count .fix-action-bar {display:flex; align-items:center; gap:8px; background:#fff; padding:10px 16px 14px; padding-bottom:calc(14px + env(safe-area-inset-bottom));}
.goods-fix-count .fix-btn-kakao {display:flex; align-items:center; justify-content:center; gap:6px; flex:1; height:48px; border:1px solid #ddd; border-radius:12px; background:#fff; font-size:15px; font-weight:600; color:#333; text-decoration:none;}
.goods-fix-count .fix-btn-kakao img {display:block;}
.goods-fix-count .fix-btn-order {flex:1; height:48px; border:0; border-radius:12px; background:#111; color:#fff; font-size:15px; font-weight:600; cursor:pointer; letter-spacing:-0.02em;}

/* 상세 텝메뉴 */
.goods-tab {text-align:center; margin-bottom:45px; border-bottom:1px solid #061f3a;}
.goods-tab ul {max-width:749px; margin:0 auto;}
.goods-tab ul:after {content:""; display:block; clear:both;}
.goods-tab ul li {float:left; width:25%; border:1px solid #061f3a; border-left:0; border-bottom:0;}
.goods-tab ul li:first-child {border-left:1px solid #061f3a;}
.goods-tab ul li a {display:block; color:#585858; font-size:18px; font-weight:300; line-height:48px; letter-spacing:-.03em; white-space:nowrap;}
.goods-tab ul li a:hover {color:#333;}
.goods-tab ul li.active a {color:#fff; background:#061f3a;}

#viewDetail,
#viewGuide,
#viewReview {margin-bottom:70px;}

#viewDetail .board-list {display:block !important;}

/* 쇼핑 테이블 */
.shop-table {margin-bottom:35px;}
.shop-table table {width:100%; border-collapse:collapse; border-spacing:0;}
.shop-table table thead th {height:50px; padding:5px; border-bottom:1px solid #b9bcbe; border-top:2px solid #000; font-size:16px; color:#000; font-weight:500; line-height:1.5em;}
.shop-table table thead tr.bg th {background:#3617ce; color:#fff; border-top-color:#3617ce;}
.shop-table table tbody td {padding:10px 5px; border-bottom:1px solid #b9bcbe; color:#555; font-size:16px; line-height:20px; text-align:center; word-break:break-all;}
.shop-table table tbody td img {vertical-align:middle;}
.shop-table table tbody td.space-left {text-align:left; padding-left:15px;}
.shop-table table tbody td.bt p {margin:1px 0;}
.shop-table table tbody td .prod-info {overflow:hidden;}
.shop-table table tbody td .prod-info .img {float:left;}
.shop-table table tbody td .prod-info .img img {width:80px;}
.shop-table table tbody td .prod-info .info {margin-left:93px; letter-spacing:-.025em;}
.shop-table table tbody td .prod-info .info p {margin-bottom:3px;}
.shop-table table tbody td .telecom {color:#000; font-weight:500;}
.shop-table table tbody td .telecom span:first-child {margin-right:15px;}
.shop-table table tbody td .tit {color:#000; font-weight:500;}
.shop-table table tbody td .date {color:#888;}
.shop-table table tbody td .order-num {display:inline-block; text-decoration:underline; color:#000; margin-top:5px;}
.shop-table table tbody td .price {color:#3617ce; font-weight:700;}

.shop-table-m {display:none;}

.order-form {margin-bottom:50px;}
.order-form table {width:100%; border-collapse:collapse; border-spacing:0; border-top:1px solid #000; border-bottom:1px solid #000;}
.order-form th {padding:12px 28px; height:69px; color:#000; font-size:16px; font-weight:500; line-height:1.5em; text-align:left; background:#f8f8f8; border-bottom:1px solid #b9bcbe;}
.order-form td {padding:12px 16px; color:#555; font-size:16px; line-height:1.5em; border-bottom:1px solid #b9bcbe;}
.order-form td span.txt {display:inline-block; margin-left:18px;}
.order-form td .radiobox {margin:4px 16px 4px 0;}
.order-form td .mvno {display:inline-block;}
.order-form td .btn-pack {background:#555;color:#fff;border-color:#555;}
.order-form table tbody tr:last-child th,
.order-form table tbody tr:last-child td {border-bottom:0;}

/* 주문정보 설명 */
.order-desc {line-height:1.5em; margin-bottom:20px; letter-spacing:-.03em;}
.order-desc ul li {position:relative; padding-left:12px; margin-bottom:2px;}
.order-desc ul li:before {content:"·"; position:absolute; top:0; left:0;}

.order-info {color:#555; font-weight:300; line-height:1.4em; letter-spacing:-.03em; margin:-15px 0 35px;}
.order-info ul li {position:relative; padding-left:12px; margin-bottom:4px;}
.order-info ul li:before {content:"·"; position:absolute; top:0; left:0;}
.order-info .text-red {color:#3617ce; font-weight:700;}

/* 유의사항 */
.shop-guide {color:#555; font-size:16px; font-weight:300; line-height:1.625em; letter-spacing:-.03em;}
.shop-guide h3 {padding-left:32px; margin-bottom:11px; color:#000; font-size:20px; line-height:1.3em; background:url("../images/sub/bullet.png") 5px 7px no-repeat;}
.shop-guide ul li {position:relative; padding-left:16px;}
.shop-guide ul li:before {content:"·"; font-weight:400; position:absolute; top:0; left:0;}
.shop-guide .group {margin-left:30px; margin-bottom:35px;}

/* 월 예상 청구 금액 */
.billing-amount {margin-bottom:45px;}
.billing-amount .wrap {display:table; table-layout:fixed; width:100%; border-top:1px solid #000; border-bottom:1px solid #000;}
.billing-amount .wrap .col {display:table-cell; vertical-align:top; border-left:1px solid #d4d4d4;}
.billing-amount .wrap .col:first-child {border-left:0;}
.billing-amount .wrap .tit {position:relative; height:82px; padding:14px 2px; text-align:center; background:#fffbf6; color:#000; font-size:16px; font-weight:500; line-height:1.5em; letter-spacing:-.025em;}
.billing-amount .wrap .tit strong {font-size:20px; line-height:1.4em;}
.billing-amount .wrap .col:last-child .tit strong {color:#ff4600;}
.billing-amount .wrap .cnt {padding:13px; color:#888; font-size:12px; font-weight:300; line-height:20px; letter-spacing:-.025em;}
.billing-amount .wrap .cnt dl {display:table; width:100%;}
.billing-amount .wrap .cnt dt {display:table-cell; vertical-align:top;}
.billing-amount .wrap .cnt dd {display:table-cell; vertical-align:top; color:#000; text-align:right;}
.billing-amount .wrap .cnt .line {border-bottom:1px solid #d4d4d4; margin:8px 0;}
.billing-amount .wrap .cnt .text-red {color:#ff4600}
.billing-amount .wrap .ico {position:absolute; top:50%; right:0; margin:-19px -19px 0 0; width:39px; height:39px; background:#fff; border:1px solid #000; border-radius:4px; z-index:2;}
.billing-amount .wrap .ico.plus:before {content:""; position:absolute; top:50%; left:11px; right:11px; height:3px; background:#000; margin-top:-2px;}
.billing-amount .wrap .ico.plus:after {content:""; position:absolute; left:50%; top:11px; bottom:11px; width:3px; background:#000; margin-left:-2px;}
.billing-amount .wrap .ico.minus {border-color:#3617ce;}
.billing-amount .wrap .ico.minus:before {content:""; position:absolute; top:50%; left:11px; right:11px; height:3px; background:#3617ce; margin-top:-2px;}
.billing-amount .wrap .ico.equal:before {content:""; position:absolute; top:50%; left:11px; right:11px; height:3px; background:#000; margin-top:-5px;}
.billing-amount .wrap .ico.equal:after {content:""; position:absolute; bottom:50%; left:11px; right:11px; height:3px; background:#000; margin-bottom:-5px;}
.billing-amount .wrap .col-total .cnt {display:none;}
.billing-amount .wrap .tit-sub {display:block; margin-top:8px; font-size:11px; font-weight:300; color:#888; line-height:1.4em;}
.billing-amount .info {margin:10px 0 0 12px; color:#888; font-size:14px; font-weight:300; line-height:1.5em; letter-spacing:-.025em;}
.billing-amount .info h5 {color:#3617ce; font-size:14px; line-height:1.3em; margin-bottom:8px;}
.billing-amount .info ul li {position:relative; padding-left:10px;}
.billing-amount .info ul li:before {content:"·"; position:absolute; top:0; left:0;}

/* 약관동의 */
.order-agree {border-top:1px solid #000; margin-bottom:50px;}
.order-agree dt {position:relative; padding:14px 18px; padding-right:200px; color:#000; line-height:1.5em; letter-spacing:-.025em; border-bottom:1px solid #b9bcbe; cursor:pointer;}
.order-agree dt .radiobox {position:absolute; width:198px; right:0; top:12px;}
.order-agree dt .radiobox .ico {margin-right:13px;}
.order-agree dt.active {background:#f8f8f8;}
.order-agree dd {display:none; padding:14px 18px; line-height:1.5em; border-bottom:1px solid #b9bcbe;}

/* 요금제 선택 팝업 */
.pop-plan {width:100%; max-width:1200px; border:4px solid #e5e5e5; padding:17px;}
.pop-plan-tit {text-align:center; margin-bottom:22px; margin-top:12px;}
.pop-plan-tit h2 {color:#000; font-size:30px; font-weight:500; letter-spacing:-.04em; line-height:1.3em;}
.pop-plan-options {text-align:center; margin-bottom:18px;}
.pop-plan-options .item {display:inline-block; vertical-align:top; min-width:106px; margin:1px 0; background:#2c2268; border-radius:3px; text-align:center; color:#eace5b; font-size:14px; font-weight:300; line-height:34px; letter-spacing:-.03em;}
.pop-plan-options .item:before {content:""; display:inline-block; vertical-align:middle; margin:-.2em 2px 0 0; width:10px; height:10px; background:url("../images/shop/opt_checked.png") 50% 50% no-repeat;}

.select-plan-list {position:relative;}
.select-plan-list .swiper-slide {width:auto;}

.plan-box {position:relative; width:280px; border:1px solid #ccc; padding:3px 16px;}
.plan-box.active:before {content:""; position:absolute; top:-1px; right:-1px; bottom:-1px; left:-1px; border:4px solid #3617ce;}
.plan-box .title {position:relative; text-align:center; padding:18px 0 13px 0; border-bottom:1px solid #dedede;}
.plan-box .title h3 {color:#000; font-size:28px; font-weight:500; letter-spacing:-.04em; line-height:1.3em; margin-bottom:4px;}
.plan-box .title p {color:#888; font-size:14px; font-weight:300; line-height:1.3em;}
.plan-box .cnt-wrap {position:relative; min-height:305px; padding:12px 5px; color:#888; font-size:14px; font-weight:300; line-height:1.42em; letter-spacing:-.015em;}
.plan-box .info-txt {margin-bottom:10px;}
.plan-box .url-link {margin-bottom:17px;}
.plan-box .url-link a {display:inline-block; border-bottom:1px solid #cf112b; color:#cf112b; font-size:12px; font-weight:500; line-height:1.3em;}
.plan-box .info-opt ul li {position:relative; padding-left:11px;}
.plan-box .info-opt ul li:before {content:"·"; position:absolute; top:0; left:0;}
.plan-box .month-price {position:relative; padding:12px 5px; border-bottom:1px solid #dedede;}
.plan-box .month-price dl {display:table; width:100%;}
.plan-box .month-price dt {display:table-cell; vertical-align:middle; color:#888; font-size:14px; font-weight:300; line-height:1.3em; letter-spacing:-.03em;}
.plan-box .month-price dt span {font-size:12px;}
.plan-box .month-price dd {display:table-cell; vertical-align:middle; text-align:right; color:#000; font-size:16px; font-weight:300; line-height:1.3em; letter-spacing:-.03em;}
.plan-box .month-price dd strong {color:#3617ce; font-size:30px; line-height:1em;}
.plan-box .btn {position:relative; text-align:center; padding:20px 0;}
.plan-box .planSelectBtn {display:inline-block; vertical-align:top; text-align:center; min-width:148px; color:#535353; font-size:18px; font-weight:700; line-height:42px; letter-spacing:-.03em; background:#fff; border:1px solid #f37043; border-radius:4px; transition:.2s;} 
.plan-box .planSelectBtn:hover {color:#fff; background:#3617ce; border-color:#3617ce;}

/* 제휴카드 선택 팝업 */
.pop-card {width:100%; max-width:1200px; border:4px solid #e5e5e5; padding:32px 15px;}
.pop-card-tit {text-align:center; margin-bottom:45px;}
.pop-card-tit h2 {color:#000; font-size:30px; font-weight:500; letter-spacing:-.04em; line-height:1.3em; margin-bottom:3px;}
.pop-card-tit p {color:#3617ce; font-size:16px; font-weight:300; letter-spacing:-.04em; line-height:1.4em;}

.select-card-list {position:relative; padding:0 97px;}
.select-card-list .swiper-slide {width:auto;}

.card-box {position:relative; width:308px; border:1px solid #ccc; padding:21px 16px;}
.card-box .image {position:relative; height:145px;}
.card-box .image img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain;}
.card-box .title {text-align:center; padding:9px 0 12px 0; border-bottom:1px solid #dedede;}
.card-box .title h3 {color:#000; font-size:20px; font-weight:500; letter-spacing:-.04em; line-height:1.3em; margin-bottom:5px;}
.card-box .title p {color:#888; font-size:14px; font-weight:300; line-height:1.3em;}
.card-box .price-area {padding:12px 0; color:#888; font-size:14px; font-weight:300; line-height:1.42em; letter-spacing:-.015em; border-bottom:1px solid #dedede;}
.card-box .price-area ul li {display:table; width:100%; cursor:pointer;}
.card-box .price-area ul li:hover {text-decoration:underline;}
.card-box .price-area .txt {display:table-cell; vertical-align:middle;}
.card-box .price-area .price {display:table-cell; vertical-align:middle; text-align:right; font-weight:500; color:#3617ce;}
.card-box .price-area .price strong {font-weight:500;}
.card-box .month-price {position:relative; padding:12px 10px; background:#fafafa;}
.card-box .month-price dl {display:table; width:100%;}
.card-box .month-price dt {display:table-cell; vertical-align:middle; color:#000; font-size:14px; font-weight:300; line-height:1.3em; letter-spacing:-.03em;}
.card-box .month-price dd {display:table-cell; vertical-align:middle; text-align:right; color:#000; font-size:16px; font-weight:300; line-height:1.3em; letter-spacing:-.03em;}
.card-box .month-price dd strong {color:#3617ce; font-size:30px; line-height:1em;}
.card-box .month-price p {color:#000; font-size:12px; font-weight:300; line-height:1.3em; letter-spacing:-.015em; text-align:right; margin-top:8px;}
.card-box .url-link {margin-bottom:5px; text-align:right;}
.card-box .url-link a {display:inline-block; border-bottom:1px solid #cf112b; color:#cf112b; font-size:12px; font-weight:500; line-height:1.3em;}

.select-card-desc {margin-top:22px; text-align:center; color:#888; font-size:14px; font-weight:300; line-height:1.4em; letter-spacing:-.02em;}
.select-card-desc ul {display:inline-block; text-align:left;}
.select-card-desc ul li {padding-left:1.1em; text-indent:-1.1em; margin-bottom:4px;}
.select-card-desc ul li:last-child {margin-bottom:0;}

.swiper-btn {position:absolute; top:50%; margin-top:-50px; width:38px; height:50px; background-color:#bebebe; background-position:50% 50%; background-repeat:no-repeat; border-radius:6px; z-index:50; cursor:pointer;}
.swiper-btn.prev {left:0; background-image:url("../images/shop/slide_prev.png")}
.swiper-btn.next {right:0; background-image:url("../images/shop/slide_next.png")}
.swiper-btn.swiper-button-disabled {opacity:.2;}

.pop-close-lg {position:absolute; top:20px; right:20px; transition:none; width:38px; height:38px; overflow:hidden; text-indent:-999em;}
.pop-close-lg:before,
.pop-close-lg:after {content:""; position:absolute; display:block; top:0; left:50%; width:2px; height:100%; margin-left:-1px; background:#000; border-radius:2px;}
.pop-close-lg:before {transform:rotate(45deg)}
.pop-close-lg:after {transform:rotate(-45deg)}

/* loading */
.count-loading {position:absolute; top:0; left:0; right:0; bottom:0; background:rgba(0,0,0,.6);}
.lds-roller {position:absolute; top:50%; left:50%; width:90px; height:90px; margin:-45px 0 0 -45px;}
.lds-roller div {animation:lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;transform-origin:40px 40px;}
.lds-roller div:after {content:"";display:block;position:absolute;width:7px;height:7px;border-radius:50%;background:#3617ce;margin:-4px 0 0 -4px;}
.lds-roller div:nth-child(1) {animation-delay:-0.036s;}
.lds-roller div:nth-child(1):after {top:63px; left:63px;}
.lds-roller div:nth-child(2) {animation-delay:-0.072s;}
.lds-roller div:nth-child(2):after {top:68px;left:56px;}
.lds-roller div:nth-child(3) {animation-delay:-0.108s;}
.lds-roller div:nth-child(3):after {top:71px;left:48px;}
.lds-roller div:nth-child(4) {animation-delay:-0.144s;}
.lds-roller div:nth-child(4):after {top:72px;left:40px;}
.lds-roller div:nth-child(5) {animation-delay:-0.18s;}
.lds-roller div:nth-child(5):after {top:71px;left:32px;}
.lds-roller div:nth-child(6) {animation-delay:-0.216s;}
.lds-roller div:nth-child(6):after {top:68px;left:24px;}
.lds-roller div:nth-child(7) {animation-delay:-0.252s;}
.lds-roller div:nth-child(7):after {top:63px;left:17px;}
.lds-roller div:nth-child(8) {animation-delay:-0.288s;}
.lds-roller div:nth-child(8):after {top:56px;left:12px;}
@keyframes lds-roller {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*대표이미지 하단 텍스트박스 */
.auto-fold {
  margin-top: 5px; 
  position: relative;
  border: 1px solid #ddd;
  border-radius: 6px;
  background: #f9f9f9;
  padding: 12px 12px 42px;
  overflow: hidden;
}

.auto-fold__content {
  max-height: none;       /* JS에서 제어 */
  overflow: hidden;       /* 접힘 상태에서만 의미 */
  transition: max-height .25s ease;
  line-height: 1.6;
  color: #333;
}

.auto-fold__toggle {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  width: 100%;
  height: 38px;
  border: 0;
  border-top: 1px solid #e5e5e5;
  background: #fff;
  cursor: pointer;
  color: #333;
}

.auto-fold__toggle .arrow {
  
  margin-left: 6px;
  font-size: 11px;
}
.auto-fold__toggle .arrow { display:inline-block; transition: transform .2s; }
.auto-fold[aria-expanded="true"] .auto-fold__toggle .arrow { transform: rotate(180deg); }


/* 안내 텍스트 스타일 */
.auto-fold__content .notice-title {
  margin: 0 0 6px;
  color: #444;
  font-weight: 600;
  letter-spacing: .05em;
  text-align: center;
}

.auto-fold__content .notice-body {
  margin: 0;
  color: #333;
  line-height: 1.6;
  word-break: keep-all;
}

.auto-fold__content .notice-body .hl {
  color: #2356c5; /* 강조 색상 */
  font-weight: 700;
}

.auto-fold__content .notice-body strong {
  color: #cb1a1a; /* ‘없습니다’ 강조 색상 */
  font-weight: 700;
}

/* 숫자 배지: 옵션 타이틀 앞에 검정 네모 + 흰색 숫자 */
.option-group .opt-tit.block[data-step]::before {
  content: attr(data-step);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-right: 6px;
  background: #999;
  color: #fff;
  text-align: center;
  border-radius: 50%;
  font-size: 10px;
  font-weight: 600;
  vertical-align: middle;
  flex-shrink: 0;
}

/* 상품 목록 카드 모바일 반응형 */
@media (max-width: 640px) {
  .goods-list .total-section .price-row.total dt {font-size:12px;}
  .goods-list .total-section .price-row.total dd {font-size:12px;}
  .goods-list .total-section .price-row.total dd strong {font-size:16px;}
}

/* 조건제로 박스 */
.condition-zero-box {margin:10px 0; padding:15px; background:#f8f8fc; border:1px solid #e8e6f2; border-radius:12px;}
.condition-zero-header {display:flex; align-items:center; gap:10px; margin-bottom:15px; padding-bottom:12px; border-bottom:1px solid #e8e6f2;}
.condition-zero-header .badge {display:inline-block; padding:4px 12px; background:linear-gradient(135deg,#7c3aed,#a855f7); color:#fff; font-size:13px; font-weight:600; border-radius:20px;}
.condition-zero-header .desc {color:#666; font-size:14px;}
.condition-zero-list {display:grid; grid-template-columns:1fr; gap:8px;}
.condition-item {display:flex; align-items:center; gap:8px; font-size:14px;}
.condition-item .icon {font-size:16px; width:24px; text-align:center; flex-shrink:0;}
.condition-item .name {color:#555; flex:1;}
.condition-item .check {color:#e74c3c; font-weight:600; font-size:13px;}
@media (max-width: 480px) {
  .condition-zero-list {grid-template-columns:1fr;}
}
