/**
 * 부찌대학 B2B — Design Tokens
 * 부대옥(budaeok) 톤 — Dark Red · Cream · Gold · Yellow
 */

:root {
    /* Brand palette — 부대옥(budaeok) 톤 */
    --bok-red: #820808;
    --bok-red-deep: #5c0606;
    --bok-yellow: #ffe400;
    --bok-gold: #f0bb1d;
    --bok-cream: #f9ece3;
    --bok-dark: #232323;

    --buzzi-ivory: var(--bok-cream);
    --buzzi-ivory-dark: #efe6d8;
    --buzzi-charcoal: var(--bok-dark);
    --buzzi-charcoal-soft: #4a4541;
    --buzzi-burgundy: var(--bok-red);
    --buzzi-burgundy-dark: var(--bok-red-deep);
    --buzzi-burgundy-light: #a31010;
    --buzzi-gold: var(--bok-gold);
    --buzzi-gold-light: var(--bok-yellow);
    --buzzi-beige: #e8dfd0;
    --buzzi-cream: var(--bok-cream);
    --buzzi-gray: #666666;
    --buzzi-gray-light: #d9d2c8;
    --buzzi-white: #ffffff;

    /* Restics template variable overrides */
    --ul-primary: var(--bok-red);
    --ul-secondary: var(--bok-gold);
    --ul-c3: var(--bok-cream);
    --ul-c4: var(--bok-cream);
    --ul-c5: var(--buzzi-burgundy-light);
    --ul-black: var(--bok-dark);
    --ul-gray: var(--buzzi-gray);
    --ul-gray2: var(--buzzi-gray-light);
    --ul-gradient: linear-gradient(
        135deg,
        var(--bok-red) 0%,
        var(--bok-red-deep) 100%
    );

    /* Typography — 현대적 산세리프 (신뢰감 유지, 가벼운 인상) */
    --font-primary: "Pretendard", "Noto Sans KR", "Roboto", sans-serif;
    --font-display: "Pretendard", "Noto Sans KR", sans-serif;
}

body,
.buzzi-hero-cinema__headline,
.bok-head__title,
.bok-reason__title {
    font-family: var(--font-primary);
}

.buzzi-hero-cinema__headline,
.bok-head__title,
.bok-reason__title,
.buzzi-sec-head__title {
    font-weight: 600;
    letter-spacing: -0.03em;
}

/* Base */
html {
    scroll-behavior: smooth;
}

body {
    color: var(--buzzi-charcoal);
}

main {
    background-color: var(--buzzi-ivory);
}

/* 본문 링크만 차콜 — 푸터·헤더는 각 섹션 규칙 사용 */
main a:not(.ul-btn):not(.ul-btn--2):not([class*="buzzi-hero-cinema__cta"]):not([class*="bok-faq-aside__link"]):not([class*="bok-btn"]):not([class*="brand-visit__tel"]):not([class*="brand-visit__btn"]):not([class*="brand-ceo__play"]):not([class*="brand-stats__more"]):not([class*="sis-cta__btn"]):not([class*="sis-text-link"]):not([class*="sis-case__row"]):not([class*="sis-service__card"]):not([class*="sis-menu-card"]):not([class*="sis-menu-sec__cta"]):not([class*="sis-parallax__cta"]):not([class*="sis-parallax__field"]):not([class*="ts-cta__btn"]):not([class*="ts-text-link"]):not([class*="sp-cta__btn"]):not([class*="sp-text-link"]):not([class*="fq-cta__btn"]):not([class*="buzzi-heritage__place-btn"]) {
    color: var(--buzzi-charcoal);
}

main a:not(.ul-btn):not(.ul-btn--2):not([class*="buzzi-hero-cinema__cta"]):not([class*="bok-faq-aside__link"]):not([class*="bok-btn"]):not([class*="brand-visit__tel"]):not([class*="brand-visit__btn"]):not([class*="brand-ceo__play"]):not([class*="brand-stats__more"]):not([class*="sis-cta__btn"]):not([class*="sis-text-link"]):not([class*="sis-case__row"]):not([class*="sis-service__card"]):not([class*="sis-menu-card"]):not([class*="sis-menu-sec__cta"]):not([class*="sis-parallax__cta"]):not([class*="sis-parallax__field"]):not([class*="ts-cta__btn"]):not([class*="ts-text-link"]):not([class*="sp-cta__btn"]):not([class*="sp-text-link"]):not([class*="fq-cta__btn"]):not([class*="buzzi-heritage__place-btn"]):hover {
    color: var(--buzzi-burgundy);
}

/* Buttons */
.ul-btn {
    background-color: var(--buzzi-burgundy);
    border-color: var(--buzzi-burgundy);
}

.ul-btn:hover {
    background-color: var(--buzzi-burgundy-dark);
    border-color: var(--buzzi-burgundy-dark);
}

.ul-btn--secondary,
.ul-btn.ul-btn--2 {
    background-color: transparent;
    color: var(--buzzi-burgundy);
    border-color: var(--buzzi-burgundy);
}

.ul-btn--secondary:hover,
.ul-btn.ul-btn--2:hover {
    background-color: var(--buzzi-burgundy);
    color: var(--buzzi-white);
}

/* Section backgrounds */
.ul-section-spacing:not(.ul-booking):not(.ul-booking-2),
.ul-inner-contact-container {
    background-color: var(--buzzi-ivory);
}

.ul-breadcrumb {
    background: linear-gradient(rgba(92, 6, 6, 0.78), rgba(130, 8, 8, 0.88)),
        url("../img/home/hero.jpg") no-repeat center center / cover;
}

.ul-breadcrumb::before {
    display: none;
}

.ul-breadcrumb-title,
.ul-breadcrumb-nav a,
.ul-breadcrumb-nav .current-page,
.ul-breadcrumb-nav .separator {
    color: var(--buzzi-white);
}

.ul-breadcrumb-nav a:hover {
    color: var(--buzzi-gold-light);
}

.ul-footer {
    background-color: var(--bok-red) !important;
}

.buzzi-footer .ul-footer-about-txt,
.buzzi-footer .ul-footer-widget-links > *,
.buzzi-footer .ul-footer-widget-links a,
.buzzi-footer .ul-footer-widget-links span {
    color: rgba(255, 255, 255, 0.88);
}

.buzzi-footer .ul-footer-widget-links > *:hover,
.buzzi-footer .ul-footer-widget-links a:hover {
    color: var(--bok-yellow);
}

.ul-footer .ul-footer-widget-title {
    color: var(--bok-yellow);
}

.buzzi-footer .ul-footer-socials a {
    border-color: rgba(255, 228, 0, 0.35);
    color: rgba(255, 255, 255, 0.9);
}

.buzzi-footer .ul-footer-socials a:hover {
    background-color: var(--bok-yellow);
    border-color: var(--bok-yellow);
    color: var(--bok-red);
}

/* Cards & highlights */
.ul-section-sub-title,
.ul-section-sub-title--2 {
    color: var(--buzzi-burgundy);
}

/* 다크 배경 폼 안에서는 서브타이틀 흰색 (전역 버건디 덮어쓰기) */
.buzzi-home-consult .ul-section-sub-title,
.ul-booking-form-wrapper .ul-section-sub-title {
    color: #ffffff;
}

.buzzi-home-consult .ul-section-sub-title i,
.ul-booking-form-wrapper .ul-section-sub-title i {
    color: var(--buzzi-gold-light);
}

/* Forms */
.ul-inner-contact-form input,
.ul-inner-contact-form textarea,
.ul-inner-contact-form select,
.ul-booking-form input,
.ul-booking-form textarea,
.ul-booking-form select,
.ul-booking-2-form input,
.ul-booking-2-form textarea,
.ul-booking-2-form select {
    border-color: var(--buzzi-gray-light);
    color: var(--buzzi-charcoal);
}

.ul-inner-contact-form input:focus,
.ul-inner-contact-form textarea:focus,
.ul-booking-form input:focus,
.ul-booking-form textarea:focus,
.ul-booking-2-form input:focus,
.ul-booking-2-form textarea:focus {
    border-color: var(--buzzi-burgundy);
}

/* FAQ accordion */
.ul-faq-item.active .ul-faq-item-title,
.ul-faq-item-title:hover {
    color: var(--buzzi-burgundy);
}

/* Preloader */
.preloader .loader {
    border-top-color: var(--buzzi-burgundy);
}

/* Gold accent utility */
.buzzi-accent-gold {
    color: var(--buzzi-gold);
}

.buzzi-bg-burgundy {
    background-color: var(--buzzi-burgundy);
    color: var(--buzzi-white);
}

.buzzi-bg-ivory {
    background-color: var(--buzzi-ivory);
}

.buzzi-bg-charcoal {
    background-color: var(--buzzi-charcoal);
    color: var(--buzzi-white);
}

/* ── Step 3: Header / Footer / Mobile bar (budaeok tone) ── */

.buzzi-header .header-top-bg-wrapper {
    background-color: var(--bok-cream);
}

.buzzi-header .ul-header-top {
    background-color: var(--bok-red);
    color: #fff;
}

.buzzi-header .ul-header-contact-info,
.buzzi-header .ul-header-socials .socials-title,
.buzzi-header .ul-header-socials a,
.buzzi-header .ul-header-top a {
    color: #fff;
}

.buzzi-header .ul-header-contact-info i.colored,
.buzzi-header .flaticon-location-pin.colored,
.buzzi-header .flaticon-phone-call.colored {
    color: var(--bok-yellow) !important;
}

.buzzi-header .ul-header-top a:hover,
.buzzi-header .ul-header-socials a:hover {
    color: var(--bok-yellow);
}

.buzzi-header-nav a {
    color: var(--bok-dark);
    font-weight: 500;
    letter-spacing: -0.02em;
    font-size: clamp(15px, 0.98vw, 18px);
}

.buzzi-header-nav a:hover {
    color: var(--bok-red);
}

.buzzi-header-nav a.active {
    color: var(--bok-red);
    font-weight: 700;
}

.buzzi-header .ul-header-actions .ul-btn {
    background: var(--bok-red);
    border-color: var(--bok-red);
    border-radius: 999px;
    font-weight: 700;
}

.buzzi-header .ul-header-actions .ul-btn:hover {
    background: var(--bok-red-deep);
    border-color: var(--bok-red-deep);
    color: #fff;
}

.buzzi-header .ul-header-sidebar-opener {
    color: var(--bok-red);
}

.buzzi-footer .ul-footer-widget-title::before,
.buzzi-footer .ul-footer-widget-title::after {
    background: var(--bok-gold);
}

.buzzi-footer-info a {
    color: var(--bok-yellow);
}

.buzzi-footer-info a:hover {
    color: #fff;
}

.ul-sidebar {
    background: var(--bok-red-deep);
    color: #fff;
}

.ul-sidebar .ul-sidebar-closer,
.ul-sidebar .ul-sidebar-closer i {
    color: #fff;
}

.ul-sidebar .ul-sidebar-closer:hover,
.ul-sidebar .ul-sidebar-closer:hover i {
    color: var(--bok-yellow);
}

.ul-sidebar .ul-sidebar-header {
    border-bottom-color: rgba(255, 255, 255, 0.22);
}

.ul-sidebar .ul-header-nav a,
.ul-sidebar .buzzi-header-nav a {
    color: #fff !important;
}

.ul-sidebar .ul-header-nav a:hover,
.ul-sidebar .buzzi-header-nav a:hover,
.ul-sidebar .ul-header-nav a.active,
.ul-sidebar .buzzi-header-nav a.active {
    color: var(--bok-yellow) !important;
}

.ul-sidebar .ul-header-nav > * {
    border-bottom-color: rgba(255, 255, 255, 0.18);
}

.ul-sidebar-footer-title {
    color: #fff !important;
}

.ul-sidebar-footer-social a {
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.35) !important;
}

.ul-sidebar-footer-social a:hover {
    color: var(--bok-red-deep) !important;
    background: var(--bok-yellow);
    border-color: var(--bok-yellow) !important;
}

.buzzi-header .ul-header-bottom-wrapper.ul-header-container {
    /* 히어로 본문과 같은 좌측 라인에 로고를 맞춤 */
    max-width: 1560px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(20px, 5vw, 72px);
    padding-right: clamp(20px, 5vw, 72px);
    box-sizing: border-box;
    gap: clamp(16px, 2vw, 40px);
}

.buzzi-header .logo-container {
    overflow: visible;
    display: flex;
    align-items: center;
    /* scale 커진 로고가 옆 메뉴를 가리지 않도록 여유 */
    padding-right: clamp(28px, 3.2vw, 56px);
    flex: 0 0 auto;
}

.buzzi-logo {
    /* 레이아웃 높이는 헤더 바 안에 유지, scale로만 크게 보이게 */
    max-height: clamp(80px, 5vw, 96px);
    max-width: clamp(280px, 26vw, 480px);
    width: auto;
    height: auto;
    transform: scale(1.38);
    transform-origin: left center;
}

/* 서브페이지 등 — 라이트(흰) 로고는 기본 숨김, 홈 오버레이에서만 표시 */
.buzzi-header .buzzi-logo--light {
    display: none !important;
}

.buzzi-header .buzzi-logo--dark {
    display: block;
}

.buzzi-header .ul-header-nav-wrapper {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: center;
    overflow: visible;
}

.buzzi-header .ul-header-nav-wrapper .to-go-to-sidebar-in-mobile {
    display: flex;
    justify-content: center;
    width: 100%;
}

.buzzi-header .buzzi-header-nav {
    gap: clamp(24px, 2.5vw, 48px);
    flex-wrap: nowrap;
    justify-content: center;
}

.buzzi-header .ul-header-actions {
    flex: 0 0 auto;
}

.buzzi-header .ul-header-contact-infos {
    gap: 1.25rem;
}

.buzzi-header-nav a.active::after {
    opacity: 1;
}

.buzzi-footer-info span {
    display: block;
    line-height: 1.7;
}

/* Mobile sticky consultation bar */
.buzzi-mobile-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    background: var(--buzzi-white);
    border-top: 1px solid var(--buzzi-gray-light);
    box-shadow: 0 -4px 20px rgba(42, 40, 38, 0.12);
}

.buzzi-mobile-bar__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 0.75rem 1rem;
    font-size: 0.95rem;
    font-weight: 600;
    text-align: center;
    color: var(--buzzi-charcoal);
    background: var(--buzzi-white);
    border: none;
}

.buzzi-mobile-bar__btn--primary {
    background: var(--bok-red);
    color: #fff;
}

.buzzi-mobile-bar__btn--primary:hover {
    background: var(--bok-red-deep);
    color: #fff;
}

body.has-buzzi-mobile-bar {
    padding-bottom: 56px;
}

.buzzi-form-notice {
    font-size: 0.875rem;
    color: var(--buzzi-gray);
    margin-bottom: 0;
}

.buzzi-form-section-label {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--buzzi-charcoal);
    margin: 0.25rem 0 0;
}

.buzzi-form-section-label--on-dark {
    color: rgba(255, 255, 255, 0.92);
    margin: 8px 0 4px;
}

/* 도입상담 — 기존 섹션 유지, 입력폼만 메인과 같은 구조 */
.buzzi-consult-form--light .form-group {
    width: 100%;
    margin-bottom: 0;
}

.buzzi-consult-form--light label {
    color: var(--buzzi-charcoal) !important;
    font-size: 14px;
    font-weight: 600;
    display: block;
    margin-bottom: 8px;
}

.buzzi-consult-form--light input,
.buzzi-consult-form--light select,
.buzzi-consult-form--light textarea {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
    background-color: #f3f4f7 !important;
    border: none !important;
    min-height: 52px;
    height: 52px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    padding: 0 16px !important;
    color: var(--buzzi-charcoal) !important;
}

.buzzi-consult-form--light textarea {
    min-height: 120px !important;
    height: auto !important;
    padding: 14px 16px !important;
    resize: vertical;
}

.buzzi-consult-form--light select {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%234a4541' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 L6 6.5 L11 1.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 40px !important;
}

.buzzi-consult-form--light .ul-btn {
    width: 100%;
    justify-content: center;
    min-height: 52px;
}

.ul-booking-form.buzzi-consult-form--light .ul-checkout-agreement-wrapper label .txt {
    color: #1a1512 !important;
}

.ul-booking-form.buzzi-consult-form--light .ul-checkout-agreement-wrapper label .txt::before {
    background-color: rgba(130, 8, 8, 0.08) !important;
    border: 1.5px solid #1a1512 !important;
}

.ul-booking-form.buzzi-consult-form--light .ul-checkout-agreement-wrapper label .txt::after {
    background-color: #820808 !important;
}

.buzzi-consult-form--light .buzzi-consult-store-fields[hidden] {
    display: none !important;
}

.buzzi-consult-inline .ul-inner-contact-form-title {
    margin-bottom: 10px;
}

/* 상담 폼 — 개인정보 동의와 입력 필드 사이 여백 */
.buzzi-consult-form .ul-checkout-agreement-wrapper,
.ul-inner-contact-form .ul-checkout-agreement-wrapper {
    margin-top: clamp(16px, 1.5vw, 28px);
}

.buzzi-consult-form__grid > [class*="col-"] {
    min-width: 0;
}

.buzzi-consult-form.ul-inner-contact-form input,
.buzzi-consult-form.ul-inner-contact-form textarea,
.buzzi-consult-form .select-wrapper,
.buzzi-consult-form .ss-main {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

.buzzi-consult-form .select-wrapper {
    display: block;
}

.buzzi-consult-form .select-wrapper .ss-main {
    width: 100% !important;
    min-height: 52px;
    height: 52px;
    display: flex !important;
    align-items: center;
    border-radius: 10px;
    padding-inline: 16px;
}

.buzzi-consult-form.ul-inner-contact-form input {
    min-height: 52px;
    height: 52px;
    border-radius: 10px;
    padding-inline: 16px;
}

.buzzi-consult-form.ul-inner-contact-form textarea {
    min-height: 120px;
    border-radius: 10px;
    padding: 14px 16px;
    resize: vertical;
}

.buzzi-consult-form .buzzi-form-notice {
    margin: 12px 0 16px;
}

.buzzi-consult-form .submit-btn {
    width: 100%;
    min-height: 52px;
    border-radius: 10px;
    font-weight: 700;
}

.buzzi-consult-form .buzzi-consult-store-fields[hidden] {
    display: none !important;
}

/* SlimSelect — ul-booking-form은 네이티브 select 사용 (아래 .ul-booking-form select 참고) */
.ul-inner-contact-form .select-wrapper,
.ul-inner-contact-form .ss-main {
    width: 100%;
    display: block;
}

.ul-inner-contact-form .select-wrapper .ss-main {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

/* ul-booking-form — 템플릿과 동일한 입력·셀렉트 박스 크기 */
.ul-booking-form .form-group {
    width: 100%;
}

.ul-booking-form input,
.ul-booking-form select,
.ul-booking-form .ss-main,
.ul-booking-form textarea {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
    background-color: #f3f4f7 !important;
    border: none !important;
    height: clamp(45px, 2.94vw, 56px) !important;
    border-radius: 10px !important;
    font-size: clamp(11px, 0.74vw, 14px) !important;
    padding: 0 clamp(12px, 1.05vw, 20px) !important;
    color: var(--buzzi-charcoal) !important;
}

.ul-booking-form select {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%234a4541' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5 L6 6.5 L11 1.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right clamp(12px, 1.05vw, 20px) center;
    padding-right: clamp(36px, 2.5vw, 44px) !important;
}

.ul-booking-form select:focus {
    outline: none;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.35);
}

/* ul-booking 섹션 — buzzikf.com 히어로 배경 (cdn.imweb.me/thumbnail/20251027/1960160b63c29.jpg) */
section.ul-booking.buzzi-home-consult {
    background-color: #1a1a1a;
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 43.47%, rgba(130, 8, 8, 0.35) 85%),
        url("../img/booking-bg.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
}

section.ul-booking.buzzi-home-consult::before {
    display: none;
}

/* 제목 한 줄 (폼 너비는 템플릿 col-md-7 유지) */
.buzzi-home-consult .ul-booking-form-wrapper .ul-section-title {
    margin-bottom: clamp(12px, 1.2vw, 20px);
    white-space: nowrap;
    font-size: clamp(18px, 1.55vw, 30px);
    line-height: 1.3;
}

@media (max-width: 767px) {
    .buzzi-home-consult .ul-booking-form-wrapper .ul-section-title {
        white-space: normal;
        font-size: clamp(20px, 5vw, 26px);
    }
}

/* 드롭다운 옵션 여백 (SlimSelect option 클래스: ss-option ul-option) */
.ss-content.ss-open-below,
.ss-content.ss-open-above {
    height: auto !important;
    max-height: 280px;
    border-radius: 10px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    z-index: 10050;
}

.ss-content .ss-list {
    padding: 6px 0;
}

.ss-content .ss-list .ss-option,
.ss-content .ss-list .ul-option {
    display: flex !important;
    align-items: center;
    padding: 12px 18px !important;
    line-height: 1.45 !important;
    min-height: 44px;
    box-sizing: border-box;
}

.ss-content .ss-list .ss-option:hover,
.ss-content .ss-list .ss-option:not(.ss-disabled).ss-selected,
.ss-content .ss-list .ul-option:hover,
.ss-content .ss-list .ul-option:not(.ss-disabled).ss-selected {
    background-color: var(--buzzi-burgundy) !important;
    color: var(--buzzi-white) !important;
}

/* 드롭다운 화살표 — 호버 시 사라짐 방지 */
.ul-booking-form .ss-main .ss-arrow,
.buzzi-consult-form .ss-main .ss-arrow,
.buzzi-visit-form .ss-main .ss-arrow {
    flex: 0 0 12px;
    opacity: 1 !important;
    visibility: visible !important;
}

.ul-booking-form .ss-main .ss-arrow svg,
.buzzi-consult-form .ss-main .ss-arrow svg,
.buzzi-visit-form .ss-main .ss-arrow svg {
    display: block !important;
    width: 12px;
    height: 12px;
    opacity: 1 !important;
    visibility: visible !important;
}

.ul-booking-form .ss-main .ss-arrow path,
.buzzi-consult-form .ss-main .ss-arrow path,
.buzzi-visit-form .ss-main .ss-arrow path {
    stroke: #4a4541 !important;
    opacity: 1 !important;
}

/* ul-booking 다크 폼 — 서브타이틀·링크 가독성 */
.buzzi-home-consult .ul-booking-form-wrapper .ul-section-sub-title {
    color: #ffffff !important;
}

.buzzi-home-consult .ul-booking-form-wrapper .ul-section-sub-title i {
    color: var(--buzzi-gold-light) !important;
}

.ul-booking-form-wrapper .buzzi-form-notice--on-dark {
    color: rgba(255, 255, 255, 0.92) !important;
}

.ul-booking-form-wrapper .buzzi-form-notice--on-dark a {
    color: #ffffff !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ul-booking-form-wrapper .buzzi-form-notice--on-dark a:hover {
    color: var(--buzzi-gold-light) !important;
}

.ul-booking-form .ul-checkout-agreement-wrapper label .txt {
    color: var(--buzzi-white);
}

/* 개인정보 동의 체크 — 다크 배경에서 흰색 */
.ul-booking-form .ul-checkout-agreement-wrapper label .txt::before {
    background-color: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.55);
}

.ul-booking-form .ul-checkout-agreement-wrapper label .txt::after {
    background-color: #ffffff !important;
}

.ul-booking-form .ul-checkout-agreement-wrapper label input:checked ~ .txt::after {
    opacity: 1 !important;
}

/* 방문 예약 섹션 — 샵인샵과 동일 네이버 지도 배경 */
.ul-booking-2 {
    background-color: #1a1a1a;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.62)),
        url("../img/home/anam-map.png");
    background-position: center, 58% center;
    background-size: cover, cover;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, fixed;
}

@media (max-width: 991px) {
    .ul-booking-2 {
        background-attachment: scroll, scroll;
        background-position: center, center;
    }
}

/* 방문 안내 패널 (어두운 배경) */
.ul-booking-2-opening-time .ul-section-sub-title {
    color: var(--buzzi-white);
}

.ul-booking-2-opening-time .ul-section-sub-title i {
    color: var(--buzzi-gold-light);
}

.ul-booking-2-opening-time .buzzi-form-notice {
    color: rgba(255, 255, 255, 0.85);
}

@media (min-width: 992px) {
    body.has-buzzi-mobile-bar {
        padding-bottom: 0;
    }
}

/* Footer bottom copyright bar */
.buzzi-footer-bottom {
    background-color: var(--bok-red-deep);
    color: #fff;
}

.buzzi-footer-bottom .copyright-txt,
.buzzi-footer-bottom .ul-footer-bottom-nav a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.buzzi-footer-bottom .ul-footer-bottom-nav a:hover {
    color: var(--bok-yellow) !important;
    -webkit-text-fill-color: var(--bok-yellow) !important;
}

.buzzi-footer-bottom .buzzi-admin-entry {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    text-decoration: none;
    cursor: pointer;
}

.buzzi-footer-bottom .buzzi-admin-entry:hover {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-decoration: underline;
    text-underline-offset: 3px;
}
