.com3 img{
    width: 300px;
}

/* ==================== 하단 고정 푸터 (gnb_v206 스타일) ==================== */
.footer {
    height: 66px;
    border-top: 1px solid #c9c9c9;
    color: #707070;
    background-color: #fff;
}

.footer.fixed-bottom {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
}

.footer .container {
    height: 100%;
}

.footer .nav {
    display: flex;
    justify-content: space-between;
    height: 100%;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer .nav li {
    flex: 1;
    text-align: center;
}

.footer a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 100%;
    font-size: 0.625rem;
    text-align: center;
    color: #707070;
    text-decoration: none;
}

.footer a.active {
    font-family: 'appleEB';
    font-size: 0.625rem;
    color: #E30051;
}

.footer a .icon-nav + span {
    display: block;
    margin-top: 4px;
}

.footer a.active .icon-nav {
    background-color: #E30051;
}

/* ==================== 아이콘 공통 ==================== */
.icon {
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    border: 0;
    vertical-align: middle;
    outline: none;
    background: none;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: #707070;
    -webkit-mask-position: center center !important;
    mask-position: center center !important;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    transition: all 0.3s ease;
}

.icon-nav {
    width: 27px;
    height: 24px;
}

/* ==================== 개별 아이콘 ==================== */
.icon-home {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28.3' height='21' viewBox='0 0 56.692 42.335'%3E%3Cg transform='translate(1.68 5.744)'%3E%3Ccircle cx='16.257' cy='16.257' r='16.257' fill='%236d92ff' opacity='0.5' transform='translate(-1.68 .378)'/%3E%3Cg%3E%3Cg%3E%3Cpath fill='%233d55dc' d='M14.044 39.739v-6.473a3 3 0 0 1 3.014-2.992h6.084a3.025 3.025 0 0 1 2.131.876 2.981 2.981 0 0 1 .883 2.115v6.472a2.568 2.568 0 0 0 .754 1.835 2.606 2.606 0 0 0 1.843.762H32.9a7.324 7.324 0 0 0 5.172-2.115 7.217 7.217 0 0 0 2.144-5.129V16.652a5.234 5.234 0 0 0-1.9-4.026L24.2 1.431a6.556 6.556 0 0 0-8.358.151L2.047 12.626A5.237 5.237 0 0 0 0 16.652v18.42a7.289 7.289 0 0 0 7.316 7.263h4.056a2.606 2.606 0 0 0 2.616-2.578z' transform='translate(14.793 -5.744)'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28.3' height='21' viewBox='0 0 56.692 42.335'%3E%3Cg transform='translate(1.68 5.744)'%3E%3Ccircle cx='16.257' cy='16.257' r='16.257' fill='%236d92ff' opacity='0.5' transform='translate(-1.68 .378)'/%3E%3Cg%3E%3Cg%3E%3Cpath fill='%233d55dc' d='M14.044 39.739v-6.473a3 3 0 0 1 3.014-2.992h6.084a3.025 3.025 0 0 1 2.131.876 2.981 2.981 0 0 1 .883 2.115v6.472a2.568 2.568 0 0 0 .754 1.835 2.606 2.606 0 0 0 1.843.762H32.9a7.324 7.324 0 0 0 5.172-2.115 7.217 7.217 0 0 0 2.144-5.129V16.652a5.234 5.234 0 0 0-1.9-4.026L24.2 1.431a6.556 6.556 0 0 0-8.358.151L2.047 12.626A5.237 5.237 0 0 0 0 16.652v18.42a7.289 7.289 0 0 0 7.316 7.263h4.056a2.606 2.606 0 0 0 2.616-2.578z' transform='translate(14.793 -5.744)'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.icon-my-reserve {
    background-image: url("/nm/common/may/images/menu_booking.png");
    background-color: transparent;
}

.icon-wish {
    width: 24px;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='19' viewBox='0 0 42.121 39.491'%3E%3Cg%3E%3Cpath fill='none' stroke='gray' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='4px' d='M18.542 35.13A69.607 69.607 0 0 1 6.486 25.9a23.539 23.539 0 0 1-5.739-8.987C-1.407 10.331 1.109 2.8 8.151.566a12.14 12.14 0 0 1 10.862 1.8 12.158 12.158 0 0 1 10.862-1.8c7.042 2.23 9.576 9.765 7.422 16.347a23.539 23.539 0 0 1-5.739 8.987A69.607 69.607 0 0 1 19.5 35.13l-.471.288z' transform='translate(2.04 2.074)'/%3E%3C/g%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='19' viewBox='0 0 42.121 39.491'%3E%3Cg%3E%3Cpath fill='none' stroke='gray' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='4px' d='M18.542 35.13A69.607 69.607 0 0 1 6.486 25.9a23.539 23.539 0 0 1-5.739-8.987C-1.407 10.331 1.109 2.8 8.151.566a12.14 12.14 0 0 1 10.862 1.8 12.158 12.158 0 0 1 10.862-1.8c7.042 2.23 9.576 9.765 7.422 16.347a23.539 23.539 0 0 1-5.739 8.987A69.607 69.607 0 0 1 19.5 35.13l-.471.288z' transform='translate(2.04 2.074)'/%3E%3C/g%3E%3C/svg%3E");
}

.icon-mypage {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.8' height='20.7' viewBox='0 0 37.718 41.496'%3E%3Cg%3E%3Cg%3E%3Cpath fill='gray' fill-rule='evenodd' d='M27.837 21.22a11.315 11.315 0 1 0-13.956 0A18.859 18.859 0 0 0 2 38.721v1.886a1.886 1.886 0 0 0 3.772 0v-1.886a15.087 15.087 0 0 1 30.175 0v1.886a1.886 1.886 0 0 0 3.772 0v-1.886a18.859 18.859 0 0 0-11.881-17.5zm-14.522-8.9a7.544 7.544 0 1 1 7.544 7.544 7.544 7.544 0 0 1-7.544-7.546z' transform='translate(-2 -.997) translate(2 .997) translate(-2 -.997)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.8' height='20.7' viewBox='0 0 37.718 41.496'%3E%3Cg%3E%3Cg%3E%3Cpath fill='gray' fill-rule='evenodd' d='M27.837 21.22a11.315 11.315 0 1 0-13.956 0A18.859 18.859 0 0 0 2 38.721v1.886a1.886 1.886 0 0 0 3.772 0v-1.886a15.087 15.087 0 0 1 30.175 0v1.886a1.886 1.886 0 0 0 3.772 0v-1.886a18.859 18.859 0 0 0-11.881-17.5zm-14.522-8.9a7.544 7.544 0 1 1 7.544 7.544 7.544 7.544 0 0 1-7.544-7.546z' transform='translate(-2 -.997) translate(2 .997) translate(-2 -.997)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* ==================== 모달 (custom-popup) ==================== */
.custom-popup .modal-dialog {
    margin: auto;
    display: flex;
    align-items: center;
    min-height: 100vh;
    max-width: 320px;
}
.custom-popup .modal-dialog .modal-content {
    width: 100%;
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
}
.custom-popup .modal-header {
    position: relative;
    justify-content: center;
    padding: 28px 20px 0;
    border-bottom: none;
    background: #fff;
}
.custom-popup .modal-header::before {
    content: '';
    display: block;
    width: 48px;
    height: 48px;
    background: #fff0f4;
    border-radius: 50%;
    margin: 0 auto 12px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e81057'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 28px;
}
.custom-popup .modal-header .modal-title {
    font-size: 1.0625rem;
    font-weight: 700;
    color: #1a1a1a;
    text-align: center;
    width: 100%;
}
.custom-popup .modal-header .icon-popup-close {
    position: absolute;
    right: 14px;
    top: 14px;
}
.custom-popup .modal-body {
    color: #666;
    font-size: 0.875rem;
    line-height: 1.6;
    padding: 10px 24px 24px;
    text-align: center;
    background: #fff;
}
.custom-popup .custom-popup-footer {
    display: flex;
    padding: 0 20px 24px;
    background: #fff;
    border-top: none;
}
.custom-popup .custom-popup-footer .btn-save {
    background: linear-gradient(135deg, #e81057, #ff4080);
    color: #fff;
    margin: 0;
    width: 50%;
    font-size: 0.9375rem;
    font-weight: 600;
    height: 48px;
    border-radius: 10px;
    border: none;
    letter-spacing: -0.3px;
    transition: opacity 0.2s;
}
.custom-popup .custom-popup-footer .btn-save:hover {
    opacity: 0.88;
}
.custom-popup .custom-popup-footer .btn-save.full {
    width: 100%;
}

.icon-popup-close {
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    background-color: #aaa;
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46.556' height='46.556' viewBox='0 0 46.556 46.556'%3E%3Cg opacity='0.6'%3E%3Cpath fill='none' d='M0 0h46.556v46.556H0z'/%3E%3Cpath fill='%23575757' d='M32.158 7.735L29.423 5 18.579 15.844 7.735 5 5 7.735l10.844 10.844L5 29.423l2.735 2.735 10.844-10.844 10.844 10.844 2.735-2.735-10.844-10.844z' transform='translate(4.699 4.699)'/%3E%3C/g%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='46.556' height='46.556' viewBox='0 0 46.556 46.556'%3E%3Cg opacity='0.6'%3E%3Cpath fill='none' d='M0 0h46.556v46.556H0z'/%3E%3Cpath fill='%23575757' d='M32.158 7.735L29.423 5 18.579 15.844 7.735 5 5 7.735l10.844 10.844L5 29.423l2.735 2.735 10.844-10.844 10.844 10.844 2.735-2.735-10.844-10.844z' transform='translate(4.699 4.699)'/%3E%3C/g%3E%3C/svg%3E");
    cursor: pointer;
    vertical-align: middle;
}

/* ==================== 하단 사업자 정보 래퍼 ==================== */
.footer-copy-sns {
    background-color: #f5f5f5;
    border-top: 1px solid #e4e4e4;
    padding: 16px 16px 0;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

.footer-copy-sns .sns_ul {
    display: flex;
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-copy-sns .sns_ul li a img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.footer-copy-wrap {
    background-color: #f5f5f5;
}

.footer-copy {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 16px calc(65px + 20px); /* 상단 20px + 하단 고정 푸터 65px + 20px */
    box-sizing: border-box;
}

.footer-copy b {
    display: inline-block;
    margin-bottom: 6px;
    font-size: 0.8125rem;
    font-weight: 700;
    color: #444;
}

.footer-copy small {
    font-size: 0.7rem;
    font-weight: 400;
    color: #888;
}

.footer-copy p {
    margin-bottom: 2px;
    font-size: 0.6875rem;
    color: #999;
    line-height: 1.7;
}

.footer-copy .com2 {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #e0e0e0;
}

.footer-copy .com2_2 {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer-copy .com2_2 li {
    position: relative;
    padding-right: 10px;
    margin-right: 10px;
}

.footer-copy .com2_2 li::after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 9px;
    background-color: #d0d0d0;
}

.footer-copy .com2_2 li:last-child {
    padding-right: 0;
    margin-right: 0;
}

.footer-copy .com2_2 li:last-child::after {
    display: none;
}

.footer-copy .com2_2 li p {
    margin: 0;
    font-size: 0.625rem;
    color: #888;
    cursor: pointer;
    transition: color 0.15s;
}

.footer-copy .com2_2 li p:hover {
    color: #FF1661;
}

/* ==================== 약관 팝업 ==================== */
.air-lay-pop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 99999;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.air-lay-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 48px;
    line-height: 48px;
    background-color: #fff;
    text-align: center;
    border-bottom: 1px solid #e8e8e8;
    z-index: 100000;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

.air-lay-header h3 {
    display: inline-block;
    font-size: 0.9375rem;
    font-weight: 700;
    color: #333;
    margin: 0;
}

.air-back-btn {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    font-size: 0.8125rem;
    color: #666;
    cursor: pointer;
}

.air-back-btn:hover {
    color: #333;
}

.air-lay-body {
    padding-top: 48px;
    height: 100%;
    box-sizing: border-box;
}

.icon-kakao-chat {
    width: 24px;
    background-image: url("data:image/svg+xml,%3Csvg id='ico_kakao' xmlns='http://www.w3.org/2000/svg' width='57' height='57' viewBox='0 0 57 57'%3E%3Ccircle id='타원_571' data-name='타원 571' cx='28.5' cy='28.5' r='28.5' fill='%233b1e1e'/%3E%3Cg id='그룹_11132' data-name='그룹 11132' transform='translate(-104.021 -390.844)'%3E%3Cg id='그룹_9490' data-name='그룹 9490' transform='translate(116.021 402.925)'%3E%3Cpath id='패스_3940' data-name='패스 3940' d='M126.732,435.763h0a8.408,8.408,0,0,1-2.391-.32l-2.349-.749,1.489-1.965a8.332,8.332,0,0,0,1.378-2.749c-5.417-2.44-8.838-7.3-8.838-12.731,0-7.9,7.326-14.324,16.33-14.324s16.33,6.425,16.33,14.324c0,7.182-5.931,13.146-13.931,14.169A9.672,9.672,0,0,1,126.732,435.763Zm5.619-29.351c-7.082,0-12.843,4.861-12.843,10.837,0,4.39,3.111,8.319,7.925,10.008l1.332.468-.18,1.4a12.019,12.019,0,0,1-.805,3.06,6.626,6.626,0,0,0,4.492-3.333l.463-.746.876-.072c6.6-.544,11.584-5.18,11.584-10.783C145.195,411.273,139.434,406.412,132.351,406.412Z' transform='translate(-116.021 -402.925)' fill='%23fae100'/%3E%3Cg id='그룹_9489' data-name='그룹 9489' transform='translate(8.757 13.023)'%3E%3Cpath id='패스_3941' data-name='패스 3941' d='M133.2,425.15a1.683,1.683,0,1,0-1.684,1.683A1.684,1.684,0,0,0,133.2,425.15Z' transform='translate(-129.833 -423.467)' fill='%23fae100'/%3E%3Cpath id='패스_3942' data-name='패스 3942' d='M142.49,425.15a1.683,1.683,0,1,0-1.683,1.683A1.684,1.684,0,0,0,142.49,425.15Z' transform='translate(-133.234 -423.467)' fill='%23fae100'/%3E%3Cpath id='패스_3943' data-name='패스 3943' d='M151.782,425.15a1.683,1.683,0,1,0-1.684,1.683A1.684,1.684,0,0,0,151.782,425.15Z' transform='translate(-136.635 -423.467)' fill='%23fae100'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
    background-color: transparent;
}
