@charset "utf-8";
.site-header .head-btns .cart-btn {display: flex !important;}

/* book common */
.section-tit-wrap {display: flex; flex-direction: column; row-gap: 20px; align-items: center;}
.section-tit-wrap h3 {font-family:'ZiKuXingQiuFeiYangTi','YeogiOttaeJalnanGothic' !important;}
.section-tit-wrap p {font-size: 17px; color: #2B251E;}
.section-tit-wrap .square-btn {font-size: 13px;}
.book-section h3,.book-banner-section .book-banner-text h3,.book-view-section .book-view-info h2,.book-detail-content h3,.book-review-wrap h3,.book-qa-wrap h3,.order-form-section h3,.cart-total-wrap h3,.guest-order-list-wrap h3,.book-consult-banner .txt-wrap h3 {word-break:keep-all;}
.book-section h3,.book-section h3 strong,.book-hero-section .book-hero-text h2,.book-hero-section .book-hero-text h2 strong,.book-banner-section .book-banner-text h3,.book-banner-section .book-banner-text h3 strong,.book-sub-tit h2,.book-consult-banner .txt-wrap h3 {font-family:'YeogiOttaeJalnanGothic';}
.book-section h3 {font-size:42px; line-height:135%; color:#1A1919;}
.book-section h3 strong,.book-hero-section .book-hero-text h2 strong,.book-banner-section .book-banner-text h3 strong {color:#FD9F4B;}
.book-standard-section .book-standard-list li i,.book-recommend-list li .ico-wrap {flex-shrink: 0; width:50px; height:50px; border-radius:8px; display:flex; align-items:center; justify-content:center; background:#FFB900; background:linear-gradient(180deg, rgba(255, 185, 0, 1) 0%, rgba(242, 153, 74, 1) 100%);}
.book-standard-section .book-standard-list li i img,.book-recommend-list li .ico-wrap img {max-width:80%; max-height:80%; object-fit:contain;}
.book-hero-section .book-hero-label img,.shop-hero-section .shop-hero-label img,.shop-hero-section .shop-hero-img img,.shop-thumb img,.order-product-card .thumb img,.guest-order-list .order-book .thumb img {display:block; height:auto;}
.shop-hero-section .shop-hero-img,.shop-thumb,.order-product-card .thumb,.cart-check,.cart-delete,.student-book-modal .student-book-icon,.book-recommend-list li .ico-wrap {display:flex; align-items:center; justify-content:center;}
.order-product-card .txt strong,.order-product-card .product-price span,.order-product-card .product-price strong,.book-benefit-section li strong,.book-benefit-section li span,.book-recommend-list strong,.book-recommend-list span,.guest-order-list .order-book .txt strong {display:block;}
.order-product-card .txt strong,.shop-info strong,.book-info-list dt,.review-list strong,.guest-order-list .order-book .txt strong {font-weight:600; color:#404040;}
.order-product-card .txt p,.shop-info p,.book-info-list dd,.book-intro-txt,.book-qa-list .qa-answer,.guest-order-list .order-book .txt p {color:#525252;}
.order-price-box dl,.book-view-section .book-view-delivery,.book-view-section .book-view-qty,.book-view-section .book-view-total,.book-view-section .book-view-btns,.book-section-head,.review-sort,.review-summary li,.review-list .score-wrap,.review-list button,.guest-order-help,.guest-order-help ul,.input-row,.custom-chk label {display:flex; align-items:center;}
.order-price-box dl,.book-view-section .book-view-qty,.book-view-section .book-view-total,.cart-head {justify-content:space-between;}
.order-price-box .total,.cart-total-box .order-price-box .total {margin-top:30px; padding-top:30px; border-top:1px solid #E5E5E5;}
input {width:100%;}
input[type="checkbox"] {width:20px; height:20px; margin:2px;}

/* book hero */
.book-hero-section {position:relative; overflow:hidden; height: calc(100vh - 112px); max-height: 840px;}
.book-hero-section .inner {position:relative; z-index:2; height:100%; display:flex; align-items:center;}
.book-hero-section .book-hero-bg {position:absolute; inset:0; background-repeat:no-repeat; background-size:cover; background-position:center center; animation:bookHeroBgMove 2s ease-out forwards;}
@keyframes bookHeroBgMove {
0% {background-position:center center;}
100% {background-position:center bottom;}
}
.book-hero-section .book-hero-text {padding-top:30px;}
.book-hero-section .book-hero-label {display:block; width:70px; margin-bottom:24px;}
.book-hero-section .book-hero-label img {width:100%; height:auto; display:block;}
.book-hero-section .book-hero-text h2 {font-family:'YeogiOttaeJalnanGothic'; font-size:64px; line-height:130%; color:#fff; word-break:keep-all;}
.book-hero-section .book-hero-text h2 strong {font-family:'YeogiOttaeJalnanGothic'; color:#FD9F4B;}
.book-hero-section .book-hero-text p {margin-top:24px; font-size:36px; font-weight:500; line-height:150%; color:#fff; word-break:keep-all;}
.book-hero-section .book-hero-text .desc {margin-top:60px; font-size:32px; font-weight:500; line-height:150%; color:#fff;}

/* jiphyunbook hero */
.jiphyunstory-hero-section .book-hero-bg {background-image: url('/img/sub/book/jiphyunstory-hero.webp');}

/* book intro */
.book-intro-section {padding-block:80px 120px;}
.book-intro-section .inner {display:grid; grid-template-columns:1fr 1fr; align-items:center; gap: clamp(30px, 5vw, 80px);}
.book-intro-section .book-intro-img {overflow:hidden; height: auto;}
.book-intro-section .book-intro-img img {width:100%; height: 460px; border-radius: 20px; display:block; object-fit:cover;}
.book-intro-section .book-intro-text h3 {font-size:40px;}
.book-intro-section .book-intro-text p {margin-top:45px; font-size:18px; font-weight:400; line-height:170%; color:#404040; word-break:keep-all;}

/* book standard */
.book-standard-section {padding-block:120px 140px; background-color:#FDFCFA; text-align:center;}
.book-standard-section .book-standard-list {display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; width: 100%; margin:70px auto 0;}
.book-standard-section .book-standard-list li {min-height:250px; padding:32px 24px; border-radius:6px; background-color:#fff; box-shadow:0 2px 12px 2px #3D2E2210;}
.book-standard-section .book-standard-list li i {width:50px; height:50px; margin-inline:auto; border-radius:8px; display:flex; align-items:center; justify-content:center; background: #FFB900; background: linear-gradient(180deg, rgba(255, 185, 0, 1) 0%, rgba(242, 153, 74, 1) 100%);}
.book-standard-section .book-standard-list li i img {max-width: 80%; max-height: 80%; object-fit:contain;}
.book-standard-section .book-standard-list li strong {display:block; margin-top:22px; font-size:20px; font-weight:700; color:#262626;}
.book-standard-section .book-standard-list li p {margin-top:12px; font-size:20px; font-weight:400; line-height:160%; color:#666; word-break:keep-all;}

/* book banner */
.book-banner-section {padding-block:100px 140px;}
.book-banner-section .book-banner-box {overflow:hidden; min-height: 695px; border-radius:20px; display:flex; align-items:flex-end; background-image: url('/img/sub/book/jiphyunstory-banner.webp'); background-repeat:no-repeat; background-size:cover; background-position:center;}
.book-banner-section .book-banner-text {padding:60px 90px;}
.book-banner-section .book-banner-text h3 {font-family:'YeogiOttaeJalnanGothic'; font-size:42px; line-height:140%; color:#fff; word-break:keep-all;}
.book-banner-section .book-banner-text h3 strong {font-family:'YeogiOttaeJalnanGothic'; color:#FD9F4B;}
.book-banner-section .book-banner-btn {width: fit-content; height:50px; margin-top:33px; font-size: 13px; font-weight: 700;}

/* shop hero */
.shop-hero-section {position:relative; overflow:hidden;}
.shop-hero-section .shop-hero-swiper {position:relative; min-height: 800px; max-height: 860px; height: calc(100vh - 111px);}
.shop-hero-section .swiper-slide {overflow:hidden;}
.shop-hero-section .swiper-slide .inner {height:100%; display:grid; grid-template-columns:1fr 0.95fr; align-items:center; gap:80px;}
.shop-hero-section .shop-hero-text {position:relative; z-index:2;}
.shop-hero-section .shop-hero-label {display:block; width:77px; margin-bottom:30px;}
.shop-hero-section .shop-hero-label img {display:block; width:100%; height:auto;}
.shop-hero-section .shop-hero-text .eyebrow {font-size: clamp(16px, 2vw, 20px); font-weight:600; line-height:150%; color:#fff;}
.shop-hero-section .shop-hero-text h2 {margin-top:16px; font-family:'YeogiOttaeJalnanGothic'; font-size: clamp(32px, 4vw, 64px); line-height:140%; color:#fff; word-break:keep-all;}
.shop-hero-section .shop-hero-text .desc {margin-top:32px; font-size: clamp(16px, 2vw, 20px); font-weight:400; line-height:150%; color:#fff; word-break:keep-all;}
.shop-hero-section .shop-hero-btn {color: #FD9F4B; margin-top: 70px; background-color: #fff; font-size: 18px; font-weight: 600; line-height: 150%; padding: 12px 24px; border-radius: 8px;}
.shop-hero-section .swiper-slide.slide01 {background: linear-gradient(90deg,#F2994A 0%,#FFB900 100%);}
.shop-hero-section .swiper-slide.slide02 {background: linear-gradient(90deg,#31476B 0%,#0F1B2D 100%);}
.shop-hero-section .swiper-slide.slide02 .shop-hero-btn {color: #31476B;}
.shop-hero-section .swiper-slide.slide02 .shop-hero-btn svg path {stroke: #31476B;}
.shop-hero-section .shop-hero-img {display:flex; align-items:center; justify-content:center;}
.shop-hero-section .shop-hero-img img {max-width:520px; width:100%; height:100%; object-fit: contain;}
.shop-hero-section .shop-hero-arrow {position:absolute; top:50%; z-index:5; width:30px; height:30px; border:0; background:none; transform:translateY(-50%) rotate(45deg);}
.shop-hero-section .shop-hero-prev {left:5vw; border-left:3px solid rgba(255,255,255,.9); border-bottom:3px solid rgba(255,255,255,.9);}
.shop-hero-section .shop-hero-next {right:5vw; border-right:3px solid rgba(255,255,255,.9); border-top:3px solid rgba(255,255,255,.9);}
.shop-hero-section .shop-hero-pagination {position:absolute; left:0; right:0; bottom:58px; z-index:5; display:flex; align-items:center; justify-content:center; gap:18px;}
.shop-hero-section .shop-hero-pagination .swiper-pagination-bullet {width:14px; height:14px; margin:0; border-radius:50%; background-color:rgba(255,255,255,.45); opacity:1;}
.shop-hero-section .shop-hero-pagination .swiper-pagination-bullet-active {background-color:#fff;}
.shop-hero-section .shop-hero-stats {position:relative; display:flex; gap:36px; margin-top:36px; padding-top:36px;}
.shop-hero-section .shop-hero-stats::before {content:''; position:absolute; top:0; left:0; width:100%; max-width: 615px; height:1px; background:#FAFAFA33;}
.shop-hero-section .shop-hero-stats li {display: flex; flex-direction: column; align-items: center;}
.shop-hero-section .shop-hero-stats li strong {padding-block: 7px; display:block;  line-height:120%; font-size:28px; font-weight:900; letter-spacing: -0.5px; color: #FAFAFA;}
.shop-hero-section .shop-hero-stats li strong .count-num {font-size:28px; font-weight:900; letter-spacing: -0.5px;}
.shop-hero-section .shop-hero-stats li p {padding-block: 3px; font-size: 13px; font-weight: 400; color:#F5F5F5;}
/* shop list */
.shop-list-section {padding-block:90px 110px;}
.shop-list-section .shop-list-head {display:flex; align-items:flex-end; justify-content:space-between; gap:30px;}
.shop-list-section .shop-list-head h3 {font-size:32px; line-height: 1.2;}
.shop-list-section .shop-list-head p {margin-top:12px; font-size:18px; color:#4A5568;}
.shop-list-section .shop-type-tab {display:flex; gap:14px;}
.shop-list-section .shop-type-tab button {transition: border 0.3s ease; height:48px; padding:0 20px; border:1px solid #E5E5E5; border-radius:8px; display:flex; align-items:center; gap:10px; background-color:#fff; font-size:15px; font-weight:600; color:#0D1B2E;}
.shop-list-section .shop-type-tab button:hover {border-color: #0D1B2E;}
.shop-list-section .shop-type-tab button svg path {fill: #0D1B2E;}
.shop-list-section .shop-type-tab button.active {background-color:#0D1B2E; border-color:#0D1B2E; color:#fff;}
.shop-list-section .shop-type-tab button.active svg path {fill: #fff;}
.shop-list-section .shop-filter-wrap {display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top: 60px;}
.shop-list-section .shop-search {flex: 1; height:48px; padding:0 30px 0 72px; background-image:url('../img/sub/book/search-ico.svg'); background-repeat: no-repeat; background-position: 30px center; border:1px solid #E1E4EA; border-radius:8px; display:flex; align-items:center; gap:12px; background-color:#fff;}
.shop-list-section .shop-filter-right {flex-shrink: 0; display:flex; align-items:center; gap:12px;}
.shop-list-section .shop-filter-right .custom-select {width: 132px;}
.shop-list-section .shop-filter-right .custom-select:nth-child(2) {width: 161px;}
.shop-list-section .shop-filter-right .custom-select::after {width: 24px; height: 24px; background: url(../img/sub/book/select-arrow.svg) no-repeat;}
.shop-list-section .shop-sort-list {height:48px; display:flex; border:1px solid #E1E4EA; border-radius:8px; overflow:hidden;}
.shop-list-section .shop-sort-list li + li {border-left:1px solid #E1E4EA;}
.shop-list-section .shop-sort-list button {white-space: nowrap; height:100%; padding:0 20px; border:0; background-color:#fff; font-size: 16px; font-weight: 400; color:#404040;}
.shop-list-section .shop-sort-list button.active {background-color:#0D1B2E; color:#fff;}
.shop-list-section .shop-card-list {display:grid; grid-template-columns:repeat(4, 1fr); gap: 60px 24px; margin-top: 40px;}
.shop-list-section .shop-card-list li {position:relative; overflow:hidden; border:1px solid #E5E5E5; border-radius: 10px; background-color:#fff;}
.shop-list-section .shop-card-list li.is-hidden {display: none;}
.shop-list-section .shop-card-list li.student .shop-info em {position: relative; filter: blur(6px);}
.shop-list-section .shop-badge {position:absolute; top:12px; right:12px; z-index:2; height:25px; padding: 4px 10px; border-radius: 99px; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; color:#fff;}
.shop-list-section .shop-badge.best {background: linear-gradient(90deg,#F2994A 0%,#FFB900 100%);;}
.shop-list-section .shop-badge.soldout {background-color:#C6C6C6;}
.shop-list-section .shop-badge.new {background-color:#0D1B2E;}
.shop-list-section .shop-thumb {height:210px; display:flex; align-items:center; justify-content:center; background-color:#F6F6F6;}
.shop-list-section .shop-thumb img {max-width:92px; width:38%; height:auto; display:block; filter:drop-shadow(0 12px 12px rgba(0,0,0,.18));}
.shop-list-section .shop-info {padding: 20px 22px 0;}
.shop-list-section .shop-info span {display:block; font-size:14px; font-weight:500; color:#FD9F4B;}
.shop-list-section .shop-info strong {display:block; margin-top: 8px; font-size:18px; font-weight: 700; color:#404040; word-break:keep-all;}
.shop-list-section .shop-info p {margin-top:8px; font-size:14px; font-weight:400; color:#525252; word-break:keep-all;}
.shop-list-section .shop-info em {display:block; margin-top:12px; font-style:normal; font-size:20px; line-height: 1.7; font-weight:800; color:#262626;}
.shop-list-section .shop-card-btns {display:flex; gap:8px; padding: 18px 22px 20px;}
.shop-list-section .shop-card-btns .square-btn {flex: 1; padding-block: 12px; font-size: 14px; font-weight: 600;}
.shop-list-section .shop-card-btns .detail-btn {border:1px solid #E5E5E5; background-color:#fff; color:#0D1B2E;}
.shop-list-section .shop-card-btns .buy-btn {border:1px solid #0D1B2E; background-color:#0D1B2E; color:#fff;}
.shop-list-section .shop-card-btns .buy-btn.disabled {border-color:#D4D4D4; background-color:#D4D4D4; color:#fff; cursor:not-allowed;}

/* shop system */
.shop-system-section {padding-block:100px 120px; background-color:#FDFCFA;}
.shop-system-section .shop-system-title h3 {font-size:38px;}
.shop-system-section .shop-system-title p {margin-top:24px; font-size:16px; font-weight:400; line-height:160%; color:#404040;}
.shop-system-section .shop-system-list {display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; margin-top:42px;}
.shop-system-section .shop-system-list li {min-height:150px; padding:30px; border-radius:10px; background-color:#fff; box-shadow:0 2px 12px 2px #3D2E2208;}
.shop-system-section .shop-system-list li strong {display:block; font-size:18px; font-weight:800; color:#1A1919;}
.shop-system-section .shop-system-list li p {margin-top:14px; font-size:14px; font-weight:400; line-height:160%; color:#555; word-break:keep-all;}
.shop-system-section .shop-system-list li span {display:inline-flex; margin-top:20px; padding:6px 12px; border-radius:4px; background-color:#F8F8F8; font-size:12px; font-weight:600; color:#555;}

.student-book-modal {max-width: 410px;}
.student-book-modal .student-book-icon {display:flex; align-items:center; justify-content:center; width:64px; height:64px; margin:0 auto 30px; border-radius:18px; background:#EEF1F8;}
.student-book-modal .student-book-text h4 {text-align: center; font-size: 20px; font-weight: 600; color:#0B1F45;}
.student-book-modal .student-book-text p {text-align: center; margin-top: 10px; font-size: 15px; font-weight:500; color:#6B7BA0;}
.student-book-modal .student-book-text p strong {color:#0B1F45;}
.student-book-modal .student-book-text p br.mo {display: none;}
.student-book-modal .student-book-guide {display:flex; flex-direction:column; row-gap: 10px; margin-top: 30px; padding: 14px 18px; border-radius: 12px; background:#F5F7FB; text-align:left;}
.student-book-modal .student-book-guide li {word-break: keep-all; position:relative; padding-left:13px; font-size: 15px; color:#7A8BAD;}
.student-book-modal .student-book-guide li::before {content:""; position:absolute; top: 50%; left:0; transform: translateY(-50%); width:5px; height:5px; border-radius:50%; background:#8FA0C8;}
.student-book-modal .student-book-btns {display: flex; column-gap: 10px; margin-top:30px;}
.student-book-modal .student-book-btns > * {flex: 1; font-size: 14px; font-weight: 400; padding-block: 14px;}
.student-book-modal .student-book-close {border:1px solid #D5DAEA; color:#5A6782; background:#fff;}
.student-book-modal .student-book-login {color:#fff; background:#0B1F45;}

/* 별점 */
.star-wrap {display: flex; align-items: center; column-gap: 8px;}
.star-wrap.small {column-gap: 6px;}
.svg-star-wrap {position:relative; display:inline-block; line-height:0;}
.svg-star-wrap .star-base,
.svg-star-wrap .star-fill {display:flex; gap:4px;}
.svg-star-wrap .star-base svg path {fill:#E5E5E5;}
.svg-star-wrap .star-fill {overflow:hidden; position:absolute; left:0; top:0; width:var(--rate); white-space:nowrap;}
.svg-star-wrap .star-fill svg {flex:0 0 auto;}
.svg-star-wrap .star-fill svg path {fill:#FFCC00;}

.book-view-section {padding:60px 0 52px;}
.book-view-section .inner {max-width: 1260px;}
.book-view-section .book-view-top {display: flex; align-items:center; gap: 100px; margin:0 auto;}
.book-view-section .book-view-thumb {width: 40%; max-width: 490px; height: auto; aspect-ratio: 490/600; display:flex; align-items:center; justify-content:center; background:#F5F5F5; border-radius:8px;}
.book-view-section .book-view-thumb > img {width: 282px;}
.book-view-section .book-view-thumb {overflow: visible;}

.book-view-section .book-3d-wrap {width:min(58%, 282px); perspective:1800px; cursor:pointer; user-select:none;}
.book-view-section .book-3d {--book-depth:45px; position:relative; width:100%; margin:0 auto; transform-style:preserve-3d; transition:transform .5s ease !important;}
.book-view-section .book-3d-wrap:not(.is-flipped).is-intro .book-3d {animation: bookSideIntro 1.4s ease both;}
@keyframes bookSideIntro {0% {transform:rotate3d(0,1,0,0deg);} 35% {transform:rotate3d(0,1,0,40deg);} 70% {transform:rotate3d(0,1,0,40deg);} 100% {transform:rotate3d(0,1,0,0deg);}}
.book-view-section .book-3d-wrap:hover:not(.is-flipped) .book-3d {transform:rotate3d(0,1,0,40deg) !important;}
.book-view-section .book-3d-wrap.is-flipped .book-3d {transform:rotate3d(0,1,0,180deg);}
/* .book-view-section .book-3d-wrap.is-flipped:hover .book-3d {transform:rotate3d(0,1,0,140deg) !important;} */
.book-view-section .book-3d-front {position:relative; z-index:3; transform:translate3d(0,0,var(--book-depth)); box-shadow:12px 18px 20px rgba(0,0,0,.16); backface-visibility:hidden;}
.book-view-section .book-3d-side {position:absolute; left:0; top:0; bottom:0; z-index:2; width:var(--book-depth); height:100%; overflow:hidden; background:#fff; transform-origin:left center; transform:rotate3d(0,1,0,-90deg);}
.book-view-section .book-3d-side::after {content:''; position:absolute; inset:0; background:rgba(0,0,0,.075); pointer-events:none;}
.book-view-section .book-3d-back {position:absolute; inset:0; z-index:1; overflow:hidden; background:#fff; transform:rotate3d(0,1,0,-180deg); box-shadow:-10px 20px 15px rgba(0,0,0,.2); backface-visibility:hidden;}
.book-view-section .book-3d-front img,.book-view-section .book-3d-back img {display:block; width:100%; height:auto;}
.book-view-section .book-3d-side img {display:block; width:100%; height:100%; object-fit:cover;}

.book-view-section .book-view-info {position:relative; min-width: 474px;}
.book-view-section .book-view-info .label {padding: 4px 10px;}
.book-view-section .book-view-info h2 {margin-top:9px; font-size:clamp(20px, 3vw, 32px); font-weight:600; color:#404040;}
.book-view-section .book-view-info > p {margin-top:9px; font-size:clamp(14px, 2vw, 20px); color:#525252;}
.book-view-section .book-view-price {display:block; margin-top:28px; padding-bottom:39px; border-bottom:1px solid #E5E5E5; font-size:clamp(24px, 3vw, 32px); font-weight:700; color:#0A0A0A;}
.book-view-section .book-view-delivery {display:flex; gap:40px; padding:36px 0; border-bottom:1px solid #E5E5E5;}
.book-view-section .book-view-delivery dt {font-size:clamp(14px, 1.6vw, 16px); font-weight:500; color:#262626;}
.book-view-section .book-view-delivery dd {font-size:clamp(14px, 1.6vw, 16px); color:#404040; letter-spacing: -0.01em;}
.book-view-section .book-view-qty {display:flex; align-items:center; justify-content:space-between; padding:36px 0; border-bottom:1px solid #737373;}
.book-view-section .book-view-qty > span {font-size:clamp(14px, 1.6vw, 16px); font-weight:500; color:#262626;}
.book-view-section .book-view-total {display:flex; align-items:center; justify-content:space-between; padding:36px 0 60px;}
.book-view-section .book-view-total span {font-size:clamp(14px, 1.6vw, 16px); font-weight:500; color:#262626;}
.book-view-section .book-view-total strong {font-size:clamp(18px, 2.2vw, 24px); font-weight:700; color:#000;}
.book-view-section .book-view-btns {display:flex; gap:14px;}
.book-view-section .book-view-btns .square-btn {flex:1; border-radius:4px; font-size:clamp(14px, 1.8vw, 18px); font-weight:700; padding-block:14px;}
.book-view-section .book-view-btns .cart-btn {border:1px solid #404040; background:#fff; color:#000;}
.book-view-section .book-view-btns .buy-btn {border:1px solid #404040; background:#404040; color:#fff;}

.book-benefit-section {background:#F5F5F5; padding-block: 40px;}
.book-benefit-section .inner {max-width: 1260px;}
.book-benefit-section ul {display:grid; grid-template-columns:repeat(4, 1fr); margin:0 auto;}
.book-benefit-section li {display: flex; align-items: center; column-gap: 16px;}
.book-benefit-section li strong {display:block; font-size:16px; font-weight:500; line-height: 1.5; color:#000;}
.book-benefit-section li span {display:block; font-size:16px; line-height: 1.5; color:#666;}

.book-detail-section {padding:48px 0 120px;}
.book-detail-tab-wrapper {position:sticky; top:111px; z-index:10;border-bottom:1px solid #E5E5E5; background:#fff;}
.book-detail-tabs {display:flex; gap: 60px;}
.book-detail-tabs a {transition: color 0.3s; position:relative; padding: 15px 10px; font-size:18px; font-weight: 500; color:#737373;}
.book-detail-tabs a:hover,
.book-detail-tabs a.active {color:#262626;}
.book-detail-tabs a::after {transition: width 0.3s; content:""; position:absolute; left:0; right:0; bottom:-1px; width: 0; height:2px; background:#404040;}
.book-detail-tabs a.active::after {width: 100%;}
.book-detail-content {padding-top: 60px; display: flex; flex-direction: column; row-gap: 100px;}
.book-detail-content h3,.book-review-wrap h3,.book-qa-wrap h3 {font-size:24px; font-weight:600; color:#262626;}
.book-info-list {margin-top: 40px;}
.book-info-list div {display:flex; gap:40px;}
.book-info-list div + div {margin-top: 12px;}
.book-info-list dt {width: 50px; font-size:18px; font-weight: 500; color:#404040;}
.book-info-list dd {font-size:18px; color:#525252;}
.book-intro-txt {margin-top:20px; font-size:18px; line-height:1.5; color:#404040;}
.book-recommend-list {display:grid; grid-template-columns:repeat(3, 1fr); gap: 24px; margin-top: 20px;}
.book-recommend-list li {padding: 40px 48px; border:1px solid #E5E5E5; border-radius:8px; display: flex; align-items: center; column-gap: 20px;}
.book-recommend-list li .ico-wrap {width:50px; height:50px; border-radius:8px; display:flex; align-items:center; justify-content:center; background: #FFB900; background: linear-gradient(180deg, rgba(255, 185, 0, 1) 0%, rgba(242, 153, 74, 1) 100%);}
.book-recommend-list li .ico-wrap img {max-width: 80%; max-height: 80%; object-fit:contain;}
.book-recommend-list strong {display:block; font-size:16px; font-weight:600; color:#404040;}
.book-recommend-list span {display:block; margin-top:4px; font-size:16px; color:#525252;}

.book-review-wrap {padding-top:76px;}
.book-section-head {display:flex; align-items: flex-end; justify-content: space-between;}
.review-sort {display:flex; gap:16px; align-items: center;}
.review-sort button {border:0; background:none; font-size:16px; color:#525252;}
.review-sort button.active {font-weight:600; color:#FD9F4B;}
.review-sort .line {width: 2px; height: 18px; background-color: #E5E5E5;}
.review-summary {display:grid; grid-template-columns: 170px 1fr; align-items:center; gap:80px; margin-top:20px; padding: 50px 100px; background:#FAFAFA;}
.review-summary .review-score {display: flex; flex-direction: column; align-items: center; row-gap: 24px;}
.review-score strong {font-size:48px; font-weight: 500; color:#000;}
.review-score small {font-size: 20px; font-weight: 500;}
.review-score p {font-size: 16px; color:#000;}
.review-summary li {display: flex; gap: 16px; align-items:center; font-size:16px; color:#000;}
.review-summary li + li {margin-top: 20px;}
.review-summary span {min-width: 40px; font-size: 16px;}
.review-summary em {height: 10px; flex: 1; max-width: 300px; background:#EAEAEA; border-radius:99px; overflow:hidden;}
.review-summary i {display:block; height:100%; background:#404040; border-radius: 99px;}
/* .review-list li {display:grid; grid-template-columns:150px 1fr 45px 75px 55px; gap: 100px; align-items: center; padding: 40px 105px; border-bottom:1px solid #E5E5E5;}
.review-list .score-wrap {display: flex; align-items: center; column-gap: 10px;}
.review-list .score-wrap i {font-size: 18px; font-weight: 600; color: #000;}
.review-list strong {display:block; font-size:18px; font-weight:600; color:#000;}
.review-list p {margin-top:8px; font-size:16px; line-height:1.5; color:#000;}
.review-list em,
.review-list time,
.review-list button {text-align: center; font-style:normal; border:0; background:none; font-size:18px; line-height: 1.5; color:#404040;}
.review-list button {display: flex; align-items: center; column-gap: 10px;} */
.review-list li {display:grid; grid-template-columns:150px 1fr auto; gap:clamp(24px, 5vw, 80px); align-items:center; padding:40px 105px; border-bottom:1px solid #E5E5E5;}
.review-list .score-wrap {display:flex; align-items:center; column-gap:10px;}
.review-list .score-wrap i {font-size:18px; font-weight:600; color:#000;}
.review-list .review-content {min-width:0;}
.review-list .review-content strong {display:block; font-size:18px; font-weight:600; color:#000;}
.review-list .review-content p {margin-top:8px; font-size:16px; line-height:1.5; color:#000;}
.review-list .review-info {display:flex; align-items:center; column-gap:clamp(20px, 3vw, 40px); white-space:nowrap;}
.review-list .review-info em,
.review-list .review-info time,
.review-list .review-info button {text-align:center; font-style:normal; border:0; background:none; font-size:18px; line-height:1.5; color:#404040;}
.review-list .review-info button {display:flex; align-items:center; column-gap:10px;}

.book-qa-wrap {padding-top: 100px;}
.book-qa-list {margin-top: 40px; border-top:1px solid #E5E5E5;}
.book-qa-list li,
.book-qa-list li.active button {border-bottom:1px solid #E5E5E5;}
.book-qa-list button {word-break: keep-all; display: flex; align-items: center; transition: color 0.3s ease; position:relative; width:100%; padding: 27px; padding-right: 30px !important; border:0; background:#fff; text-align:left; font-size: 18px; font-weight: 500; color:#404040;}
.book-qa-list li:not(.active) button:hover {color: #FFB900;}
.book-qa-list button::after {transition: transform 0.3s ease; content:""; position:absolute; right:0; top:50%; transform:translateY(-50%); width: 44px; height: 44px; background-size: contain; background-image: url(../img/qa-arrow.svg); background-repeat: no-repeat; background-position: center center;}
.book-qa-list li.active button::after {transform: translateY(-50%) rotate(180deg);}
.book-qa-list span {display:inline-block; margin-right: 27px; font-weight:500; color:#262626;}
.book-qa-list .qa-answer {display:none; padding: 27px; background:#FAFAFA;}
.book-qa-list .qa-answer p {word-break: keep-all; display: flex; font-size:18px; line-height:1.5; color:#525252;}
.book-qa-wrap .more-btn {display:block; padding: 20px 60px; margin: 40px auto 0; border:1px solid #737373; border-radius: 8px; background:#fff; font-size:16px; font-weight: 500; color:#000;}

/* 주문결제,장바구니,비회원주문내역 공통 */
.book-sub-tit {margin-bottom: 60px;}
.book-sub-tit h2 {font-family:'YeogiOttaeJalnanGothic'; font-size:clamp(24px, 3vw, 36px); line-height:1.4; color:#111;}
.book-sub-tit p {word-break: keep-all; font-size:clamp(16px, 1.5vw, 18px); font-weight:500; color:#555; margin-top:10px;}

.input-list {row-gap: 20px;}
.input-wrap {flex-direction: row; column-gap: 80px;}
.input-wrap label {min-width: 100px;}
.input-wrap .input-list {flex: 1;}
.input-row {display:flex; align-items:center; gap:8px;}
.input-row button {height: 50px; flex-shrink: 0; min-width: 160px; font-size: 18px; font-weight: 500;}
input {width:100%;}

/* order */
.order-section {padding: 90px 0 280px;}
.order-section .inner {max-width: 748px;}
.order-wrap {width:100%;}
.order-form {display:flex; flex-direction:column; row-gap:120px;}
.order-form-section h3 {padding-bottom:30px; margin-bottom: 30px; border-bottom:1px solid #E5E5E5; font-size: 24px; font-weight: 500; color:#000;}
.order-product-card {display:flex; align-items:center; justify-content:space-between; gap:30px;}
.order-product-card .product-info {display:flex; align-items:center; gap:28px;}
.order-product-card .thumb {flex-shrink:0; width: 150px; height: auto; aspect-ratio: 150 /210; display:flex; align-items:center; justify-content:center; background:#F5F5F5;}
.order-product-card .thumb img {width:94px; height:auto; display:block;}
.order-product-card .txt strong {display:block; font-size: 18px; font-weight: 600; color:#404040;}
.order-product-card .txt p {margin-top: 10px; font-size: 16px; color:#525252;}
.order-product-card .txt b {display:block; margin-top: 20px; font-size:18px; font-weight:500; color:#404040;}
.order-product-card .product-price {flex-shrink:0; min-width:90px; align-items: center; row-gap: 14px;}
.order-product-card .product-price span {display:block; font-size:16px; color:#525252;}
.order-product-card .product-price strong {display:block; font-size:20px; font-weight:600; color:#262626;}
.order-email-row input {min-width:0;}
.order-email-row .email-at {flex-shrink:0; font-size:14px; color:#737373;}
.order-email-row .custom-select {flex-shrink:0; min-width:120px;}
.payment-radio {display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; padding-top:20px;}
.payment-radio .custom-radio label {display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; color:#404040;}
.payment-radio .custom-radio label em {font-style:normal;}
.order-price-box dl {display:flex; align-items:center; justify-content:space-between;}
.order-price-box dl + dl {margin-top: 20px;}
.order-price-box dt {font-size:18px; font-weight:400; color:#404040;}
.order-price-box dd {font-size:18px; font-weight:500; color:#262626;}
.order-price-box .total {margin-top: 30px; padding-top: 30px; border-top:1px solid #E5E5E5;}
.order-price-box .total dt {font-size:18px; font-weight: 600; color:#262626;}
.order-price-box .total dd {font-size:24px; font-weight: 600; color:#171717;}
.order-submit-wrap {display:flex; justify-content:center;}
.order-submit-btn {max-width: 234px; background:#FD9F4B; font-size:18px; color:#fff;}

/* cart 공통 input 수정 */
.custom-chk label{column-gap:12px;}
.custom-chk label span {width: 20px; height: 20px; margin: 2px; border-color: #E5E5E5;}
.custom-chk em {font-size: 18px; font-weight: 600; color: #262626;}
input[type="checkbox"] {width: 20px; height: 20px; margin: 2px;}

/* cart */
.cart-section {padding:90px 0 180px;}
.cart-form {width:100%;}
.cart-head {display:flex; align-items:center; justify-content:space-between; padding-bottom:30px; border-bottom:1px solid #E5E5E5;}
.cart-select-delete {border:0; background:none; font-size:16px; font-weight:500; color:#404040;}

.cart-list {border-bottom:1px solid #E5E5E5;}
.cart-item {display:grid; grid-template-columns:28px 1fr; align-items:center; column-gap: 40px; padding-block: 30px; border-bottom:1px solid #E5E5E5;}
.cart-item:last-child {border-bottom:0;}
.cart-check {display:flex; align-items:center; justify-content:center;}
.cart-item .order-product-card {width:100%; display:grid; grid-template-columns:1fr 130px 110px 34px; align-items:center; column-gap:54px;}
.cart-item .order-product-card .product-info {gap:40px;}
.cart-item .order-product-card .thumb {width: 150px; aspect-ratio: 150/210;}
.cart-item .order-product-card .thumb img {width:94px;}
.cart-product-price {font-size: 20px; font-weight: 600; color:#262626; text-align:center;}

.cart-delete {width:30px; height:30px; border:0; display: flex; align-items: center; justify-content: center;}
.cart-total-wrap {margin-top:60px;}
.cart-total-wrap h3 {margin-bottom: 30px; font-size:24px; font-weight:500; color:#000;}
.cart-total-box {padding: 40px; border-radius: 10px; background:#F5F5F5;}
.cart-total-box .order-price-box .total {margin-top: 30px; padding-top: 30px;}
.cart-btn-wrap {display: flex; gap: 26px; margin-top: 60px;}
.cart-btn-wrap .square-btn {flex: 1; height:80px; border-radius:10px; font-size:18px; font-weight:500;}
.cart-more-btn {border:1px solid #0B1F45; background:#fff; color:#0B1F45;}
.cart-buy-btn {border:1px solid #0B1F45; background:#0B1F45; color:#fff;}

/* guest order */
.guest-order-section {padding:90px 0 120px;}
.guest-order-section .inner {max-width:1266px;}
.guest-order-search {margin-top:80px;}
.guest-order-row {display:grid; grid-template-columns:1fr 1fr 234px; align-items:end; gap:16px;}
.guest-order-row .input-wrap {flex-direction: column; row-gap:10px;}
.guest-order-row .input-wrap label {font-size:18px; line-height: 1.5; font-weight:600; color:#111;}
.guest-order-row .input-wrap input {height:50px;}
.guest-order-submit {width: 100%; height:50px; background:#FD9F4B; font-size:18px; font-weight: 500; color:#fff;}
.guest-order-guide {margin-top: 20px; font-size: 16px; color:#737373;}
.guest-order-list-wrap {margin-top:80px;}
.guest-order-list-wrap h3 {margin-bottom: 30px; font-size:24px; font-weight:500; color:#111;}
.guest-order-table {border-top:1px solid #D4D4D4;}
.guest-order-thead {display:grid; grid-template-columns:210px 1fr 160px 160px 150px; align-items:center; border-bottom:1px solid #E5E5E5;}
.guest-order-thead span {text-align:center; font-size:18px; line-height: 1.4; color:#404040; padding-block: 20px;}
.guest-order-list li {padding-block:20px; display:grid; grid-template-columns:210px 1fr 470px; align-items:center; min-height:94px; border-bottom:1px solid #E5E5E5;}
.guest-order-list .order-info {display:grid; grid-template-columns:160px 160px 150px; align-items:center;}
.guest-order-list li > div:not(.order-book) {text-align:center; font-size:18px; line-height:1.4;}
.guest-order-list .order-info > div {text-align:center; font-size:18px; line-height:1.4;}
.guest-order-list .order-no {font-weight:600; color:#404040;}
.guest-order-list .order-date {color: #404040;}
.guest-order-list .order-price {font-weight: 600; color: #404040;}
.guest-order-list .order-status {font-weight: 600; color: #FD9F4B;}
.guest-order-list .order-book {padding-inline: 20px; display:flex; align-items:center; gap:20px;}
.guest-order-list .order-book .thumb {flex-shrink:0; width: 60px; height: 84px; display:flex; align-items:center; justify-content:center; background:#F5F5F5;}
.guest-order-list .order-book .thumb img {width:40px; height:auto; display:block;}
.guest-order-list .order-book .txt strong {display:block; font-size:18px; font-weight:600; color:#404040;}
.guest-order-list .order-book .txt p {margin-top:6px; font-size:16px; color:#525252;}

.guest-order-help {display:flex; align-items:center; gap: 24px; margin-top: 100px; padding: 40px 130px; border-radius: 10px; background:#F5F5F5;}
.guest-order-help img {width: 44px; height: 44px;}
.guest-order-help strong {display:block; font-size:20px; line-height: 1.4; font-weight:600; color:#404040;}
.guest-order-help ul {display: flex; align-items: center;}
.guest-order-help li {font-size: 18px; color: #404040;}
.guest-order-help li + li {padding-left: 8px; margin-left: 8px; position: relative;}
.guest-order-help li + li::before {content: ''; display: block; width: 1px; height: 16px; background-color: #A3A3A3; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.book-consult-banner {min-height:230px; padding:42px 0; display:flex; align-items:center; background:url('/img/sub/book/consult-banner.webp') no-repeat center/cover;}
.book-consult-banner .txt-wrap h3 {font-family:'YeogiOttaeJalnanGothic'; font-size:38px; line-height:1.25; color:#fff;}
.book-consult-banner .txt-wrap p {margin-top:12px; font-size:16px; color:#fff;}
.book-consult-banner .consult-btn {display:inline-flex; align-items:center; justify-content:center; margin-top:20px; padding:9px 18px; border-radius:4px; background:#fff; font-size:14px; font-weight:700; color:#262626;}

/* 교재미리보기 */
/* .book-view-section .book-view-thumb {position:relative; flex-direction:column; gap:24px;}
.book-preview-btn {position: absolute; bottom: 5%; left: 50%; transform: translateX(-50%);}

.book-preview-modal {display:none; position:fixed; inset:0; z-index:9999;}
.book-preview-modal.active {display:block;}
.book-preview-dim {position:absolute; inset:0; background:rgba(0,0,0,.55);}
.book-preview-box {position:fixed; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index:1; width:min(92vw, 1440px); max-height:90vh; padding:24px; border-radius:12px; background:#fff;}
.book-preview-head {display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; column-gap: 12px}
.book-preview-head strong {font-size:22px; font-weight:700; color:#262626; word-break: keep-all;}
.book-preview-close {flex-shrink: 0;}
.book-prebiew-container {display: flex; column-gap: 24px;}
.book-prebiew-container .book-info {height: 100%; display: flex; flex-direction: column; row-gap: 12px;}
.book-prebiew-container .book-info strong {color: #404040; font-size: 16px; font-weight: 500;}
.book-prebiew-container .book-info p {color: #525252; word-break: keep-all; font-size: 14px;}
.book-prebiew-container .book-info span.price {padding-top: 8px; font-size: 22px; font-weight: 800;}
.book-prebiew-container .book-info .book-preview-count,
.book-prebiew-container .book-info .book-preview-count span {font-size: 15px; font-weight: 600; color:#525252;}
.book-prebiew-container .book-info .btn-wrap {column-gap: 8px;}
.book-prebiew-container .book-info .btn-wrap .square-btn {font-size: 14px; border-radius: 5px;}
.book-prebiew-container .book-info .btn-wrap .square-btn.cart-btn {border: 1px solid #404040; background: #fff; color: #000;}
.book-prebiew-container .book-info .btn-wrap .square-btn.buy-btn {border: 1px solid #404040; background: #404040; color: #fff;}
.book-preview-viewer {padding-right: 24px; border-right: 1px solid #E5E5E5; width: calc(100% - 240px); position:relative; display:flex; align-items:center; justify-content:center; gap:20px;}
.book-preview-swiper {width:100%; max-height:75vh; overflow:hidden;}
.book-preview-swiper .swiper-wrapper {align-items:center;}
.book-preview-swiper .swiper-slide {display:flex; align-items:center; justify-content:center;}
.book-preview-swiper .swiper-slide img {display:block; max-width:100%; max-height:75vh; object-fit:contain;}
.book-preview-swiper .swiper-slide:nth-child(odd) {justify-content:flex-end;}
.book-preview-swiper .swiper-slide:nth-child(even) {justify-content:flex-start;}
.book-preview-arrow {flex-shrink:0; width:42px; height:42px;}
.book-preview-arrow.swiper-button-disabled {opacity:.35; cursor:not-allowed;} */

/* jiphyunbook */
.jiphyunbook-hero-section {padding-left:clamp(55px, 8vw, 100px);}
.jiphyunbook-hero-section .book-hero-bg {background-image:url('/img/sub/book/jiphyunbook-hero.webp'); background-position: left center !important;}
.jiphyunbook-hero-section .book-hero-text h2 {font-family: 'ZiKuXingQiuFeiYangTi','JeongseonArirangHon'; font-size: 120px; color: #1F1B16;}
.jiphyunbook-hero-section .book-hero-text p {color: #2B251E; font-size: 24px;}
.jiphyunbook-hero-section .book-hero-text .desc {color: #5C4B36; font-size: 16px;}
.jiphyunbook-intro-section {background-image: url('/img/sub/book/jiphyunbook-intro.webp'); background-repeat: no-repeat; background-position: center; background-size: cover; margin-top: 40px;}
.jiphyunbook-intro-section .inner {display: block; max-width: 600px; margin: 0 auto;}
.jiphyunbook-intro-section h3 {text-align: center;}
.jiphyunbook-intro-section .txt-box {margin-top: 60px; padding: 26px 60px; background-image:url('/img/sub/book/jiphyunbook-txt-box.webp'); background-repeat: no-repeat; background-position: center; background-size: cover; border-left: 2px solid #1F1B16;}
.jiphyunbook-intro-section .txt-box strong {display: flex; align-items: center; column-gap: 10px; font-size: 24px; font-weight: 600; color: #1F1B16;}
.jiphyunbook-intro-section .txt-box p {margin-top: 20px; font-size: 16px; color: #464646;}
.jiphyunbook-standard-section .section-tit-wrap {text-align:center;}
.jiphyunbook-standard-section .section-tit-wrap .book-banner-btn {margin:28px auto 0;}
.jiphyunbook-swiper-wrap {position:relative; margin-top: 80px; padding:0 52px;}
.jiphyunbook-swiper {overflow:hidden;}
.jiphyunbook-book-card {display:block; text-align:center;}
.jiphyunbook-book-card:hover .thumb img {box-shadow: 0 1px 10px 2px #ADADAD4D;}
.jiphyunbook-book-card .thumb {display:flex; align-items:flex-end; justify-content:center; height:260px; margin-bottom:17px;}
.jiphyunbook-book-card .thumb img {transition: box-shadow 0.2s; display:block; max-width:100%; max-height:100%; object-fit:contain;}
.jiphyunbook-book-card strong {display:block; margin-bottom:17px; font-size:17px; font-weight:600; color:#4B3424;}
.jiphyunbook-book-card p {margin-bottom:17px; font-size:13.5px; color:#2B251E; word-break: keep-all;}
.jiphyunbook-book-card em {display:block; font-size: 20px; font-style:normal; font-weight:600; color:#2B251E;}
.jiphyunbook-swiper-btn {transition: box-shadow 0.3s; position:absolute; top:50%; z-index:2; width:40px; height:40px; border:1px solid #D7D7D7; border-radius:50%; background:#fff; font-size:25px; line-height:34px; color:#616161; transform:translateY(-50%);}
.jiphyunbook-swiper-btn:hover {box-shadow: 0 0 0 5px #ADADAD4D;}
.jiphyunbook-prev {left:0;}
.jiphyunbook-next {right:0;}
.jiphyunbook-pagination {display:flex; align-items:center; justify-content:center; gap:10px; margin-top:30px;}
.jiphyunbook-pagination .swiper-pagination-bullet {flex-shrink: 0; width:8px; height:8px; margin:0 !important; background:#BABABA; opacity:1;}
.jiphyunbook-pagination .swiper-pagination-bullet-active {background:#2461E9;}
.jiphyunbook-banner-section {margin-bottom: 40px; background-image:url('/img/sub/book/jiphyunbook-banner.webp');}
.jiphyunbook-banner-section .book-banner-text {row-gap: 20px; padding: 0; display: flex; flex-direction: column; align-items: center; text-align: center;}
.jiphyunbook-banner-section .book-banner-text h3 {color: #1F1B16; font-size: 38px;}
.jiphyunbook-banner-section .book-banner-text p {color: #272525; font-weight: 500;}
.jiphyunbook-banner-section .book-banner-btn {margin-top: 0;}
/* responsive */
@media screen and (max-width: 1800px) {
    .shop-hero-section .shop-hero-arrow {display: none;}
    .book-view-section .book-view-top {gap: clamp(40px, 7vw, 100px);}
    .book-view-section .book-view-info {min-width: unset;}
    .book-view-section .book-view-thumb,
    .book-view-section .book-view-info {width: calc(50% - 18px);}
    .review-summary,
    .review-list li {padding: 30px 50px; gap: 40px;}
    .review-summary .review-score {row-gap: 16px;}
    .review-summary li + li {margin-top: 14px;}
    .book-recommend-list li {padding: 32px 40px;}
}

@media screen and (max-width:1280px) {
    .book-hero-section .book-hero-text h2 {font-size:clamp(38px, 5vw, 64px);}
    .book-section h3 {font-size:clamp(28px, 3.7vw, 38px);}
    .book-intro-section .inner {gap:clamp(40px, 6.25vw, 80px);}
    .book-intro-section .book-intro-text h3 {font-size:clamp(30px, 3.13vw, 40px);}
    .book-intro-section .book-intro-text p {font-size:clamp(16px, 1.41vw, 18px);}
    .book-recommend-list li {padding: 16px 20px; column-gap: 12px;}
    .book-banner-section .book-banner-text h3 {font-size:clamp(30px, 3.28vw, 42px);}
    .book-view-section .book-view-price {margin-top:22px; padding-bottom:28px;}
    .book-view-section .book-view-delivery {gap:24px; padding:26px 0;}
    .book-view-section .book-view-qty {padding:26px 0;}
    .book-detail-tab-wrapper {top: 104px;}
    .shop-hero-section .shop-hero-swiper {height: calc(100vh - 104px); min-height: 700px;}
    .shop-hero-section .shop-hero-text {display: flex; flex-direction: column; justify-content: center; row-gap: 30px; height: 90%;}
    .shop-hero-section .shop-hero-label {margin-bottom: 0;}
    .shop-hero-section .shop-hero-text h2,
    .shop-hero-section .shop-hero-text .desc,
    .shop-hero-section .shop-hero-btn,
    .shop-hero-section .shop-hero-stats {margin-top: 0;}
    .shop-hero-section .swiper-slide .inner {gap:50px;}
    .book-section h3 {font-size:clamp(28px,2.97vw,38px);}
    .shop-list-section .shop-card-list {gap:28px 18px;}
    .shop-system-section .shop-system-list li {padding:24px;}
}

@media screen and (max-width:1024px) {
    .book-hero-section {height:600px;}
    .book-intro-section {padding-block:100px;}
    .book-intro-section .inner {grid-template-columns:1fr; gap:50px;}
    .book-intro-section .book-intro-img img {height:320px;}
    .book-intro-section .book-intro-text p {margin-top:30px;}
    .book-standard-section {padding-block:100px;}
    .book-standard-section .book-standard-list {grid-template-columns:repeat(2, 1fr);}
    .book-banner-section {padding-block:90px 110px;}
    .book-banner-section .book-banner-text {padding:50px;}
    .shop-hero-section .swiper-slide .inner {grid-template-columns:1fr 0.65fr; gap:30px;}
    .shop-hero-section .shop-hero-stats {display: none;}
    .shop-hero-section .shop-hero-img img {max-width:330px;}
    .shop-list-section {padding-block:80px 90px;}
    .shop-list-section .shop-list-head {align-items:flex-start; flex-direction:column;}
    .shop-list-section .shop-filter-wrap {flex-wrap: wrap;}
    .shop-list-section .shop-search,
    .shop-list-section .shop-filter-right {width: 100%;}
    .shop-list-section .shop-filter-right {justify-content: flex-end;}
    .shop-list-section .shop-card-list {grid-template-columns:repeat(2, 1fr);}
    .shop-system-section {padding-block:90px;}
    .shop-system-section .shop-system-list {grid-template-columns:repeat(2, 1fr);}
    .shop-hero-section .shop-hero-swiper {height: calc(100vh - 104px); min-height: 500px;}
    .shop-hero-section .shop-hero-text {row-gap: 20px;}
    .book-view-section .book-view-top {flex-direction:column; align-items:stretch; gap:36px;}
    .book-view-section .book-view-thumb,
    .book-view-section .book-view-info {width:100%;}
    .book-view-section .book-view-thumb {margin: 0 auto;}
    .book-benefit-section ul {grid-template-columns:repeat(2, 1fr); gap: 24px;}
    .book-info-list {margin-top: 20px;}
    .book-recommend-list {grid-template-columns:1fr; row-gap: 16px;}
    .review-summary {padding: 24px 32px; gap: 30px;}
    .review-list li {grid-template-columns: 1fr; gap: 18px; padding:32px;}
    .review-list .review-info {grid-column:1 / -1; justify-content:flex-end;}
    .book-qa-list button::after  {width: 36px; height: 36px;}
    .cart-section {padding:70px 0 120px;}
    .cart-item .order-product-card {grid-template-columns:1fr 100px 90px 30px; column-gap:24px;}
    .cart-item .order-product-card .product-info {gap:24px;}
    .cart-item .order-product-card .thumb {width:100px;}
    .guest-order-row {grid-template-columns:1fr 1fr;}
    .guest-order-submit {grid-column:1/3;}
    .guest-order-thead {display:none;}
    .guest-order-list li {grid-template-columns:1fr; gap:18px; padding:32px 0;}
    .guest-order-list li > div {padding:0 20px;}
    .guest-order-list li > div:not(.order-book) {text-align:left;}
    .guest-order-list .order-book {padding:0 20px;}
    .guest-order-list .order-info {display:flex; align-items:flex-start; gap:clamp(20px, 3vw, 40px); padding:0 20px; justify-content: flex-end;}
    .guest-order-list .order-info > div {text-align:left; font-size:18px; line-height:1.4;}
    .guest-order-help {padding:28px 40px;}

    /* 교재미리보기 */
    /* .book-prebiew-container {}
    .book-prebiew-container .book-info {z-index: 10; position: absolute; height: fit-content; right: 20px; bottom: 20px;}
    .book-prebiew-container .book-info .txt-wrap,
    .book-prebiew-container .book-info .btn-wrap {display: none;}
    .book-preview-viewer {width: 100%; padding-right: 0; border-right: 0;}
    .book-preview-swiper,.book-preview-swiper .swiper-slide img {max-height: 70vh;}
    .book-prebiew-container .book-info .book-preview-count {padding: 8px 14px; border-radius: 999px; background: rgba(0, 0, 0, .45); font-size: 14px; font-weight: 500; color: #fff; line-height: 1;}
    .book-prebiew-container .book-info .book-preview-count span {font-size: 14px; font-weight: 500; color: #fff; line-height: 1;} */
    
    /* juphyunbook */
    .juphyunbook-process-list {grid-template-columns:repeat(2,1fr);}
}

@media screen and (max-width:768px) {
    .book-hero-section {height:calc(100vh - 81px - 99px); min-height:500px;}
    .book-hero-section .book-hero-label {width:56px;}
    .book-hero-section .book-hero-text p {font-size:18px;}
    .book-hero-section .book-hero-text .desc {margin-top:28px; font-size:16px;}
    .book-intro-section {padding-block:80px;}
    .book-intro-section .book-intro-img img {height:260px;}
    .book-intro-section .book-intro-text p br {display:none;}
    .book-standard-section {padding-block:80px;}
    .book-standard-section .book-standard-list {grid-template-columns:1fr; margin-top:40px;}
    .book-banner-section {padding-block:80px;}
    .book-banner-section .book-banner-box {min-height:500px; position: relative;}
    .book-banner-section .book-banner-box::before {content: '';position: absolute; inset: 0; background: rgba(0,0,0,0.25);}
    .book-banner-section .book-banner-box > * {position: relative; z-index: 1;}
    .book-banner-section .book-banner-text {padding:40px 28px;}
    .shop-hero-section .shop-hero-swiper {height: calc(100vh - 81px);}
    .shop-hero-section .swiper-slide {padding-block: 50px 70px;}
    .shop-hero-section .shop-hero-text {row-gap: 16px;}
    .shop-hero-section .shop-hero-text .desc br {display:none;}
    .shop-list-section .shop-type-tab {width:100%;}
    .shop-list-section .shop-type-tab button {flex:1; justify-content:center;}
    .shop-list-section .shop-filter-wrap {position: relative; margin-top: 100px; flex-wrap: unset;}
    .shop-list-section .shop-search {max-width: calc(100% - 305px - 12px); padding: 0 16px 0 calc(16px + 24px + 10px); background-position: 16px center;}
    .shop-list-section .shop-filter-right {width: auto;}
    .shop-list-section .shop-sort-list {position: absolute; bottom: calc(100% + 12px); right: 0;}
    .shop-system-section .shop-system-list {grid-template-columns:1fr;}
    .book-view-section {padding:40px 0;}
    .book-view-section .book-view-thumb > img {max-width: 80%;}
    .book-view-section .book-3d-wrap {width: min(70%, 282px);} 
    .book-view-section .book-view-total {padding:26px 0 36px;}
    .book-view-section .book-view-btns {gap:10px;}
    .book-view-section .book-view-btns .square-btn {padding-block:12px;}
    .book-benefit-section {padding-block: 10px;}
    .book-benefit-section ul {grid-template-columns:1fr; gap: 0;}
    .book-benefit-section li {padding-block:20px;}
    .book-detail-tab-wrapper {top: 81px;}
    .book-detail-tabs {gap:24px;}
    .book-detail-tabs a {white-space:nowrap; font-size: 16px; padding-block: 12px;}
    .book-detail-content {padding-top: 40px; row-gap: 70px;}
    .book-detail-content h3, .book-review-wrap h3, .book-qa-wrap h3 {font-size: 20px;}
    .book-info-list {margin-top: 14px;}
    .book-info-list dt,
    .book-info-list dd {font-size: 16px;}
    .book-recommend-list {margin-top: 14px; gap: 14px;}
    .book-intro-txt {margin-top: 14px; font-size: 16px;}
    .book-review-wrap {padding-top:56px;}
    .review-summary ,
    .review-list li {padding: 28px 20px;}
    .review-summary {display: flex; flex-direction: column; row-gap: 20px; align-items: center;}
    .review-summary ul {width: 100%;}
    .review-list .review-content strong {font-size: 16px;}
    .review-list .review-content p {font-size: 14px;}
    .review-list .review-info em, .review-list .review-info time, .review-list .review-info button {font-size: 16px;}
    .review-list .review-info button svg {width: 20px; height: 20px;}
    .book-qa-list button,
    .book-qa-list .qa-answer {padding: 20px; font-size: 16px;}
    .book-qa-list button::after {width: 30px; height: 30px;}
    .book-qa-list .qa-answer p {font-size: 16px;}
    .book-qa-wrap .more-btn {padding: 16px 30px;}
    .book-qa-list span,
    .book-qa-list span {margin-right: 22px;}
    .order-section {padding:50px 0 80px;}
    .order-page-title {margin-bottom:40px; font-size:28px;}
    .order-form {row-gap:56px;}
    .order-product-card {align-items:flex-start; flex-direction:column;}
    .order-product-card .product-price {width:100%; display:flex; justify-content:space-between;}
    .order-form-section .input-wrap {flex-direction: column;}
    .order-form-section .address-row + input,
    .order-form-section .address-row + input + input {grid-column:auto;}
    .payment-radio {grid-template-columns:repeat(2, 1fr); gap: 16px;}
    .cart-section {padding:50px 0 80px;}
    .cart-item {grid-template-columns:24px 1fr; column-gap:16px; align-items:flex-start;}
    .cart-item .order-product-card {position:relative; display:flex; align-items:flex-start; flex-direction: unset; flex-wrap: wrap; row-gap:18px; padding-right:34px;}
    .cart-item .order-product-card .product-info {width: 100%; gap:18px;}
    .cart-item .order-product-card .thumb {width:88px; height:118px;}
    .cart-item .order-product-card .thumb img {width:52px;}
    .cart-product-price {text-align:left;}
    .cart-qty {justify-content:flex-start;}
    .cart-delete {position:absolute; top:0; right:0;}
    .guest-order-section {padding:50px 0 80px;}
    .guest-order-row {grid-template-columns:1fr;}
    .guest-order-submit {grid-column:auto; font-size: 16px;}
    .guest-order-list-wrap {margin-top:56px;}
    .guest-order-list li {padding:28px 0;}
    .guest-order-list .order-info > div {font-size: 16px;}
    .guest-order-help {flex-direction: column; align-items: flex-start; gap: 16px; padding:24px; margin-top:50px;}
    .guest-order-help ul {margin-top: 10px; flex-direction: column; row-gap: 4px; align-items: flex-start;}
    .guest-order-help li + li {padding-left: 0; margin-left: 0;}
    .guest-order-help li + li::before {display: none;}
    .book-consult-banner .txt-wrap h3 {font-size:30px;}

    /* 교재미리보기 */
    /* .book-preview-box {width:94vw; padding:18px;}
    .book-preview-viewer {gap:10px;}
    .book-preview-arrow {width:34px; height:34px;}
    .book-preview-head strong {font-size:18px;}
    .book-preview-swiper .swiper-slide:nth-child(odd),
    .book-preview-swiper .swiper-slide:nth-child(even) {justify-content:center;} */

    /* juphyunbook */
    .juphyunbook-hero-label {min-width:auto; height:42px; padding:0 18px; font-size:20px;}
    .jiphyunbook-intro-section .book-intro-text p br {display: inline-block;}
    .jiphyunbook-swiper-wrap {margin-top:40px; padding:0 42px;}
    .jiphyunbook-book-card .thumb {height:190px;}
    .jiphyunbook-book-card strong {font-size:16px;}
    .jiphyunbook-intro-section .txt-box {padding: 24px 40px;}
    .jiphyunbook-intro-section .txt-box strong {font-size: 22px;}
    .section-tit-wrap p {max-width: 310px; word-break: keep-all;}
}

@media screen and (max-width: 600px) {
    .shop-hero-section .swiper-slide {padding-block: 30px 50px;}
    .shop-hero-section .swiper-slide .inner {display: flex; flex-direction: column; justify-content: center;}
    .shop-hero-section .shop-hero-text {width: 100%; height: fit-content;}
    .shop-hero-section .shop-hero-text .desc {font-size:15px;}
    .shop-hero-section .shop-hero-img {display: none;}
    .shop-list-section .shop-card-list {grid-template-columns:1fr;}
}

@media screen and (max-width:500px) {
    .book-hero-section {height:calc(100vh - 81px - 136px); min-height:430px;}
    .book-hero-section .book-hero-text p {margin-top:20px; font-size:16px;}
    .book-hero-section .book-hero-text .desc {font-size:14px;}
    .book-intro-section .book-intro-img img {height:220px;}
    .book-standard-section .book-standard-list li {padding:28px 20px;}
    .book-banner-section .book-banner-box {border-radius:8px;}
    .book-banner-section .book-banner-text h3 {font-size:26px;}
    .shop-list-section .shop-thumb {height:210px;}
    .shop-list-section .shop-list-head h3 {font-size:28px;}
    .shop-system-section .shop-system-title h3 {font-size:30px;}
    .book-view-section .book-view-price {margin-top:18px; padding-bottom:24px;}
    .book-view-section .book-view-delivery {gap:16px; padding:22px 0;}
    .book-view-section .book-view-qty {padding:22px 0;}
    .book-view-section .book-view-total {padding:22px 0 30px;}
    .book-view-section .book-3d-wrap {width: min(76%, 240px);}
    .order-product-card .product-info {gap:18px;}
    .order-product-card .thumb {width:88px; height:118px;}
    .order-product-card .thumb img {width:52px;}
    .order-email-row {flex-wrap:wrap;}
    .order-email-row input {flex:1 1 calc(50% - 15px);}
    .order-email-row .custom-select {width:100%;}
    .order-form-section .address-row {grid-template-columns:1fr 96px;}
    .payment-radio {grid-template-columns:1fr; gap: 8px;}
    .order-submit-btn {width:100%;}
    .cart-head {align-items:flex-start;}
    .cart-all-check label {column-gap: 6px;}
    .cart-all-check em {font-size:16px;}
    .cart-item .order-product-card .txt strong {font-size:15px;}
    .cart-item .order-product-card .txt p {font-size:13px;}
    .cart-total-box {padding:24px 20px;}
    .cart-btn-wrap .square-btn {height: 60px;}
    .guest-order-list .order-book {align-items:flex-start;}
    .guest-order-help {flex-direction:column; gap:14px;}
    .book-consult-banner {min-height:220px;}
    .book-consult-banner .txt-wrap h3 {font-size:26px;}
    .book-consult-banner .txt-wrap p {font-size:14px;}
    .guest-order-help strong {font-size: 18px;}
    .guest-order-help li {font-size: 16px;}
    .guest-order-list .order-book .txt strong {font-size: 16px;}
    .guest-order-list .order-book .txt p {font-size: 14px;}
    .guest-order-list li > div:not(.order-book) {font-size: 14px;}

    /* 교재미리보기 */
    /* .book-preview-arrow {position: absolute; top: 50%; transform: translateY(-50%); z-index: 10;}
    .book-preview-arrow.preview-next {right: 10px;}
    .book-preview-arrow.preview-prev {left: 10px;} */

}

@media screen and (max-width: 480px) {
    .student-book-modal .student-book-text p br.mo {display: inline-block;}
    .review-summary, .review-list li {padding: 24px 16px;}
    .book-qa-list button, .book-qa-list .qa-answer {padding: 16px;}
    .book-qa-list span,
    .book-qa-list span {margin-right: 16px;}
    .guest-order-guide {font-size: 14px; margin-right: 16px;}
    .guest-order-row .input-wrap label {font-size: 16px;}
    .guest-order-list li {padding:24px 0;}
    .guest-order-list li > div {padding: 0 16px;}
    .shop-list-section .shop-filter-wrap {flex-direction: column; height: 113px; margin-top: 20px; margin-bottom: 80px;}
    .shop-list-section .shop-search {max-width: unset; height: 48px !important;}
    .shop-list-section .shop-filter-right {width: 100%;}
    .shop-list-section .shop-sort-list {bottom: unset; top: calc(100% + 12px);}
    .shop-list-section .shop-type-tab button {padding-inline: 12px; font-size: 14px;}

    .site-footer {padding-bottom: 100px;}
    .book-view-section .book-view-btns {position: fixed; bottom: 0; left: 0; width: 100%; padding: 10px; background-color: #fff; z-index: 999; border-radius: 10px 10px 0 0; box-shadow: 0 1px 10px 2px #ADADAD4D;}

    /* 교재미리보기 */
    /* .book-preview-head strong {font-size: 16px;}
    .book-preview-head .icon-btn {width: 34px; height: 34px; border-radius: 8px;} */

    /* juphyunbook */
    .jiphyunbook-swiper-wrap {padding:0 34px;}
    .jiphyunbook-swiper-btn {width:32px; height:32px; font-size:22px; line-height:28px;}
    .jiphyunbook-book-card .thumb {height:180px;}
    .jiphyunbook-intro-section .txt-box {padding: 20px 32px;}
    .jiphyunbook-intro-section .txt-box strong {font-size: 20px;}
}

@media screen and (max-width: 375px) {
    .cart-item {display: flex; flex-direction: column; row-gap: 16px;}
    .cart-item .order-product-card {padding-right: 0; padding-bottom: 46px;}
    .cart-item .cart-product-price {position: absolute; bottom: 0; right: 0;}
    .cart-item .cart-delete {top: unset; bottom: calc(100% + 16px);}
    .cart-item .cart-qty {max-width: unset; width: 100%;}
    .cart-total-box .order-price-box .total {flex-direction: column; row-gap: 8px; margin-top: 16px; padding-top: 16px;}
    .cart-btn-wrap {margin-top: 40px; flex-direction: column; row-gap: 16px;}
    .cart-btn-wrap .square-btn {height: fit-content; width: 100%;}
    .guest-order-list li > div:not(.order-book) {flex-direction: column; align-items: flex-start; row-gap: 0; font-size: 14px;}
    .guest-order-list .order-info > div {font-size: 14px;}
    .guest-order-list .order-info,
    .guest-order-list .order-book,
    .guest-order-list li > div {padding: 0;}
    .shop-list-section .shop-type-tab button {flex-direction: column;}
    .book-detail-tabs {gap: 0; width: 100%;}
    .book-detail-tabs a {width: calc(100% / 3); padding-inline: 0; text-align: center; display: flex; align-items: center; justify-content: center; font-size: 14px;}

    .book-view-section .book-view-delivery,
    .book-view-section .book-view-qty,
    .book-view-section .book-view-total {display: flex; gap: 12px; padding: 16px 0;}
    .book-view-section .book-view-delivery dt,
    .book-view-section .book-view-qty > span,
    .book-view-section .book-view-total span {width: 78px; flex-shrink: 0;}
    .book-view-section .book-view-qty .qty-control {max-width: calc(100% - 90px);}
    .book-view-section .book-view-qty .qty-control input {margin-right: 0;}

    .jiphyunbook-swiper-wrap {padding: 0;}
}