.fb-page{max-width:1120px;margin:40px auto;padding:24px;color:#182a37}.fb-hero{text-align:center;padding:50px 20px;background:#f5eee2;border-radius:20px}.fb-hero h1{font-size:38px;line-height:1.3;margin:18px 0}.fb-hero em{color:#8b623d;font-style:normal}.fb-hero p{line-height:1.7}.fb-notice{padding:20px;text-align:center}.fb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.fb-product{border:1px solid #ddd;padding:18px;border-radius:12px}.fb-product img{width:100%;aspect-ratio:1;object-fit:cover}.fb-product h2{font-size:17px;line-height:1.4;margin:15px 0}.fb-product p{margin:12px 0}.fb-product button,.fb-cart button,#fb-options button{padding:12px 20px;min-height:44px;border:1px solid #8b623d;background:#8b623d;color:white;border-radius:8px;cursor:pointer}.fb-product a{display:block;padding-top:12px;font-size:13px}.fb-terms{margin:40px 0;line-height:1.8}.fb-terms ul{padding-left:20px;list-style:disc}.fb-terms h2{font-size:22px;margin-bottom:15px}#fb-options{width:calc(100% - 32px);max-width:520px;padding:24px;border:0;border-radius:14px;max-height:85vh;overflow:auto}#fb-options::backdrop{background:#0008}#fb-options label{display:block;margin:18px 0}#fb-options select,#fb-options input{padding:10px;border:1px solid #ccc;border-radius:5px;max-width:100%;min-height:44px}#fb-options select{display:block;width:100%;margin-top:8px}#fb-options h2{font-size:22px}#fb-error{color:#b11;margin:12px 0}.fb-cart{padding:24px;border:1px solid #cfb38e;border-radius:12px;margin:24px 0}.fb-cart article{padding:16px 0;border-bottom:1px solid #ddd}.fb-badge{display:inline-block;padding:3px 8px;border:1px solid #4685b6;color:#286a9e;font-size:12px;border-radius:4px}.fb-banner{position:fixed;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:40;width:calc(100% - 24px);max-width:560px;border:1px solid #cbb494;border-radius:16px;background:#fcf2df;box-shadow:0 3px 18px #0002;display:flex;align-items:center;gap:16px;padding:15px 20px;box-sizing:border-box}.fb-banner strong{font-size:30px;color:#8b623d}.fb-banner a{margin-left:auto;background:#8b623d;color:white;border-radius:20px;padding:10px 15px;white-space:nowrap}.fb-banner[hidden]{display:none}.fb-active .s4-float-btns,.fb-active #app-dl-layer{display:none!important}body.fb-active{padding-bottom:110px}@media(max-width:767px){.fb-page{margin:15px auto;padding:16px}.fb-hero{padding:35px 16px}.fb-hero h1{font-size:27px}.fb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fb-product{padding:12px}.fb-product h2{font-size:14px}.fb-product button{width:100%;padding:12px 3px}.fb-banner{gap:10px;padding:12px}.fb-banner strong{font-size:26px}.fb-banner span{font-size:13px}}

/* PC 배너는 모바일 하단 내비게이션 여백을 사용하지 않는다. 모바일 규칙은 유지한다. */
@media(min-width:768px){.fb-banner{bottom:20px}body.fb-active{padding-bottom:0}}
.fb-product .fb-detail{display:block;width:100%;margin-top:12px;background:white;color:#8b623d}
#fb-detail-dialog{margin:auto;width:calc(100% - 32px);max-width:900px;height:85vh;max-height:85vh;padding:0;border:0;border-radius:14px;overflow:hidden;box-sizing:border-box}
#fb-detail-dialog::backdrop{background:#0008}#fb-detail-dialog header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #ddd;gap:16px}#fb-detail-title{font-size:18px;line-height:1.4;margin:0}#fb-detail-close{flex-shrink:0;background:#222;color:white;padding:10px 16px;border:0;border-radius:6px;cursor:pointer}#fb-detail-message{padding:16px 20px}#fb-detail-message[hidden]{display:none}/* 상세 모달은 헤더를 고정하고 본문만 스크롤한다. 공통 img 규칙의 축소/잘림을 막는다. */
#fb-detail-dialog[open]{display:flex;flex-direction:column}#fb-detail-dialog header{flex-shrink:0}
#fb-detail-content{flex:1;min-height:0;width:100%;overflow:auto;overscroll-behavior:contain;padding:16px;box-sizing:border-box;overflow-wrap:anywhere}
#fb-detail-content[hidden]{display:none}#fb-detail-content img{display:block;max-width:100%!important;height:auto!important;aspect-ratio:auto;object-fit:contain;margin:0 auto}#fb-detail-content table{max-width:100%;width:100%;table-layout:fixed}#fb-detail-content p{margin:0}

/* 상품 상세 조회 중에는 본문 중앙에 브랜드 색상의 회전 로딩을 표시한다. */
#fb-detail-loading{flex:1;display:flex;align-items:center;justify-content:center;min-height:160px}#fb-detail-loading[hidden]{display:none}
.fb-loading-spinner{width:38px;height:38px;border:3px solid #eee4d7;border-top-color:#8b623d;border-radius:50%;animation:fb-loading-spin .8s linear infinite}
@keyframes fb-loading-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.fb-loading-spinner{animation:none}}

/* 카트 진입 헤더와 첫구매 영역 사이에 여백을 확보하고 공통 옵션을 색상보다 먼저 읽게 한다. */
.cart-lists-page>.fb-cart{margin-top:24px}
.fb-cart-shared{padding:16px;margin:4px 0 16px;background:#f7f4ed;border-radius:8px;border:1px solid #eee6d7}
.fb-cart-shared-label{display:block;color:#8a795e;font-size:11px;margin-bottom:12px}
.fb-cart-shared dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}
.fb-cart-shared dl>div+div{border-left:1px solid #e6ddcd;padding-left:18px}
.fb-cart-shared dt{font-size:12px;color:#7b7569;margin-bottom:6px}
.fb-cart-shared dd{margin:0;color:#304431;font-size:23px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
.fb-cart-shared dd small{font-size:13px;font-weight:500;margin-left:4px}
.fb-cart-leg strong{font-size:14px;color:#535d4d;font-weight:500}
@media(max-width:767px){.cart-lists-page>.fb-cart{margin-top:20px}.fb-cart-shared{padding:14px}.fb-cart-shared dd{font-size:22px}}

/* 첫구매 행사 전체 비주얼: 기존 숨바의 크림/브라운과 충분한 클릭 영역을 통일한다. */
.fb-page{max-width:1200px;margin:32px auto 64px;padding:0 24px;color:#26332d;box-sizing:border-box}
.fb-eyebrow{display:block;font-size:11px;letter-spacing:2px;font-weight:700;color:#856546}
.fb-hero{display:grid;grid-template-columns:1fr 1.08fr;text-align:left;padding:0;overflow:hidden;border-radius:24px;background:#f3eadb;border:1px solid #e9dec9;min-height:490px}
.fb-hero-copy{padding:58px 48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.fb-hero .fb-hero-kicker{font-size:14px;color:#71604d;margin:20px 0 0}.fb-hero h1{font-size:52px;letter-spacing:-2.5px;line-height:1.15;margin:14px 0 20px;color:#23352c;font-weight:750}.fb-hero h1 em{color:#936b40}
.fb-hero .fb-hero-description{font-size:16px;color:#6a6256;line-height:1.8;margin:0 0 26px}.fb-hero-cta{display:flex;align-items:center;gap:36px;min-height:52px;padding:0 25px;border-radius:8px;background:#273e31;color:white;font-size:15px;font-weight:700;text-decoration:none}.fb-hero-cta:hover{background:#355541}.fb-hero .fb-hero-limit{font-size:12px;color:#766b5c;margin:16px 0 0}
.fb-hero-visual{position:relative;margin:0;min-width:0}.fb-hero-visual img{width:100%;height:100%;object-fit:cover;display:block}.fb-hero-visual figcaption{position:absolute;bottom:24px;left:24px;right:24px;padding:13px;border:1px solid #ffffff80;background:#ffffffb8;border-radius:9px;text-align:center;font-size:13px;color:#5f513e;backdrop-filter:blur(8px)}
.fb-benefits{display:grid;grid-template-columns:repeat(3,1fr);padding:28px 0;margin:0 0 8px;border-bottom:1px solid #e8e3db;gap:24px}.fb-benefits>div{padding:0 22px;position:relative}.fb-benefits>div+div{border-left:1px solid #e6ded3}.fb-benefits span{font-size:12px;font-weight:700;color:#a58a67;display:block;margin-bottom:9px}.fb-benefits strong{font-size:16px;color:#26382e;display:block}.fb-benefits p{font-size:13px;color:#7b756c;margin-top:8px}
.fb-notice{padding:16px;margin:20px 0 38px;border-radius:8px;background:#f7f5f0;color:#766d60;font-size:12px;line-height:1.6}.fb-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 24px;scroll-margin-top:140px}.fb-section-heading h2{font-size:27px;letter-spacing:-1px;margin-top:10px}.fb-section-heading p{font-size:13px;color:#817b72}
.fb-grid{gap:24px}.fb-product{padding:0;overflow:hidden;border-color:#e8e3dc;border-radius:14px;background:white;box-shadow:0 2px 10px #38291804}.fb-product-image{position:relative;background:#f5f3ee}.fb-product-image img{display:block;object-fit:contain}.fb-product-tag{position:absolute;top:14px;left:14px;padding:6px 10px;border-radius:5px;background:#fffdf5ed;color:#816440;font-size:11px;font-weight:700}.fb-product-body{padding:20px}.fb-product h2{font-size:16px;line-height:1.55;min-height:50px;margin:0 0 14px;letter-spacing:-.3px}.fb-product p{font-size:12px;color:#8a8277;margin:0 0 18px}.fb-product p strong{font-size:22px;color:#273a2e;margin-right:5px}.fb-product .fb-select{width:100%;border-color:#293f31;background:#293f31;border-radius:7px;min-height:48px;font-weight:700;font-size:14px}.fb-product .fb-select:disabled{background:#eeeae2;border-color:#eeeae2;color:#968c7a;cursor:default}.fb-product .fb-detail{border-color:#e4ded4;color:#736958;min-height:44px;padding:10px;margin-top:8px;font-size:12px;background:white}
.fb-terms{padding:28px;border-radius:12px;background:#f7f5f1;color:#797063;font-size:13px}.fb-terms h2{font-size:18px;color:#3a4439}.fb-terms li+li{margin-top:6px}
.fb-banner{max-width:720px;gap:18px;padding:12px 16px 12px 12px;background:#fffcf5;border:1px solid #decdb0;border-radius:18px;box-shadow:0 8px 32px #49351e2b}.fb-banner-image{width:84px;height:76px;object-fit:cover;border-radius:11px;flex-shrink:0}.fb-banner-copy{min-width:0}.fb-banner-copy>span{display:block;font-size:12px;color:#94794f;margin-bottom:6px}.fb-banner-copy p{font-size:18px;font-weight:700;letter-spacing:-.4px;color:#273a2e;line-height:1.3;margin:0}.fb-banner-copy strong{font-size:28px;color:#94673b;margin-left:5px;white-space:nowrap}.fb-banner .fb-banner-cta{display:flex;align-items:center;justify-content:center;gap:16px;min-width:120px;min-height:54px;box-sizing:border-box;padding:12px 20px;background:#344b38;border-radius:10px;font-size:16px;font-weight:700;color:white}.fb-banner .fb-banner-cta:hover{background:#45664a}.fb-banner-cta:focus-visible,.fb-hero-cta:focus-visible{outline:3px solid #cda36c;outline-offset:3px}
/* 카트는 부모 레이아웃의 여백을 중복 추가하지 않고 섹션 헤더와 각 세트를 나눈다. */
.fb-cart{margin:0 0 28px;padding:24px;border:1px solid #dfd3bd;background:#fffcf6;border-radius:16px;box-sizing:border-box;clear:both;color:#354235}.fb-cart-heading{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #e9dfce}.fb-cart-heading img{width:72px;height:72px;object-fit:cover;border-radius:10px;flex-shrink:0}.fb-cart-heading h2{font-size:22px;letter-spacing:-.6px;margin:7px 0}.fb-cart-heading p{font-size:13px;color:#8a7e6a}.fb-cart-separate{margin-left:auto;white-space:nowrap;padding:7px 10px;border-radius:5px;background:#f1e9da;color:#857254;font-size:11px}.fb-cart-notice{font-size:12px;color:#8d806a;padding:16px 0}.fb-cart .fb-cart-card{padding:20px;margin:0 0 12px;border:1px solid #e9e3d7;background:white;border-radius:10px}.fb-cart-title{display:flex;align-items:flex-start;gap:10px;font-size:15px;font-weight:700;line-height:1.6;margin-bottom:14px}.fb-cart-title input{width:20px;height:20px;flex-shrink:0;margin-top:2px;accent-color:#38533d}.fb-cart-leg{font-size:13px;color:#736b5e;line-height:1.6;margin:6px 0 6px 30px}.fb-cart-leg span{display:inline-block;min-width:55px;margin-right:8px;padding:2px 6px;background:#f6f2ea;border-radius:4px;font-size:11px;color:#8a7250}.fb-cart-price{margin:16px 0 12px 30px;font-size:12px;color:#8a8070}.fb-cart-price strong{font-size:20px;margin-left:10px;color:#2c3b2e}.fb-cart-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end}.fb-cart-actions a,.fb-cart-actions .fb-delete-set{min-height:40px;padding:10px 14px;border:1px solid #e6ded0;background:white;color:#746a5b;border-radius:6px;box-sizing:border-box;font-size:12px}.fb-cart-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.fb-cart-footer p{font-size:12px;color:#8a7e69}.fb-cart #fb-cart-checkout{background:#304b37;border-color:#304b37;min-height:52px;border-radius:8px;font-size:15px;font-weight:700;padding:14px 24px}.fb-cart #fb-cart-checkout span{margin-left:18px}
@media(max-width:767px){.fb-page{padding:0 16px;margin:18px auto 40px}.fb-hero{grid-template-columns:1fr;border-radius:18px;min-height:0}.fb-hero-copy{padding:30px 26px 28px}.fb-hero h1{font-size:38px;letter-spacing:-1.5px;margin-bottom:16px}.fb-hero .fb-hero-kicker{margin-top:15px;font-size:12px}.fb-hero .fb-hero-description{font-size:14px;margin-bottom:20px}.fb-hero-visual{height:230px}.fb-hero-visual figcaption{bottom:16px;left:16px;right:16px;font-size:12px;padding:10px}.fb-benefits{gap:10px;padding:20px 0}.fb-benefits>div{padding:0 8px}.fb-benefits strong{font-size:12px;line-height:1.5}.fb-benefits p{font-size:10px;line-height:1.6}.fb-notice{font-size:11px;margin:16px 0 26px;padding:12px}.fb-section-heading{display:block;margin-bottom:18px}.fb-section-heading h2{font-size:21px}.fb-section-heading p{margin-top:10px;font-size:12px}.fb-grid{gap:12px}.fb-product-body{padding:12px}.fb-product h2{font-size:13px;min-height:60px;margin-bottom:10px}.fb-product p{font-size:10px;line-height:1.6;min-height:34px;margin-bottom:12px}.fb-product p strong{font-size:17px}.fb-product-tag{top:9px;left:9px;font-size:9px;padding:5px 7px}.fb-product .fb-select{font-size:12px;min-height:44px}.fb-product .fb-detail{font-size:11px;min-height:40px}.fb-terms{padding:20px;font-size:12px}
.fb-banner{gap:10px;padding:10px;border-radius:14px}.fb-banner-image{width:60px;height:66px;border-radius:8px}.fb-banner-copy>span{font-size:10px;margin-bottom:4px}.fb-banner-copy p{font-size:13px}.fb-banner-copy strong{display:block;font-size:24px;margin:2px 0 0}.fb-banner .fb-banner-cta{min-width:90px;min-height:50px;padding:10px 12px;gap:6px;font-size:13px;border-radius:8px}
.fb-cart{padding:16px;margin-top:0;border-radius:12px}.fb-cart-heading{gap:12px;flex-wrap:wrap;padding-bottom:16px}.fb-cart-heading img{width:56px;height:56px}.fb-cart-heading h2{font-size:18px}.fb-cart-heading p{font-size:12px}.fb-cart-separate{margin-left:68px;margin-top:-3px}.fb-cart .fb-cart-card{padding:16px}.fb-cart-title{font-size:13px}.fb-cart-leg{font-size:12px;margin-left:0}.fb-cart-price{margin-left:0}.fb-cart-actions a,.fb-cart-actions .fb-delete-set{min-height:44px}.fb-cart-footer{display:block}.fb-cart-footer p{margin-bottom:12px}.fb-cart #fb-cart-checkout{width:100%;font-size:14px}}

/* 모바일 첫구매 섹션의 간격은 부모 padding으로 확보한다. 공통 cart-lists-page padding:0 규칙보다 우선한다. */
@media(max-width:767px){
    .contents .content.cart-lists-page.has-firstbuy{padding-top:24px}
    .cart-lists-page.has-firstbuy>.fb-cart{margin-top:0}
}

/* 무상 교환 전용: 선택 카드와 신청 버튼을 구매/장바구니 스타일과 분리한다. */
.fb-exchange-page{max-width:760px}.fb-exchange-heading h1{font-size:26px;font-weight:700;line-height:1.4}.fb-exchange-heading p{margin-top:8px;font-size:13px;color:#777;overflow-wrap:anywhere}
.fb-exchange-item{padding:22px;margin:16px 0;border:1px solid #e3e0da;border-radius:12px;background:#fff;transition:border-color .15s,background .15s,box-shadow .15s}
.fb-exchange-item.is-selectable{cursor:pointer}.fb-exchange-item.is-selected{border-color:#345441;background:#f3f8f3;box-shadow:inset 0 0 0 1px #345441}.fb-exchange-item.is-unavailable{background:#f7f7f5}
.fb-exchange-item-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.fb-exchange-item h2{font-size:14px;font-weight:700;line-height:1.5}.fb-exchange-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap;font-size:12px;color:#365440}.fb-exchange-toggle input{width:20px;height:20px;accent-color:#345441}.fb-exchange-unavailable{font-size:11px;color:#888;white-space:nowrap}
.fb-exchange-product{margin-top:12px;font-size:14px;line-height:1.6}.fb-exchange-current{margin-top:5px;color:#777;font-size:12px;line-height:1.6}.fb-exchange-size{display:block;margin-top:18px;font-size:12px;font-weight:600;color:#345441}.fb-exchange-size select{display:block;width:100%;min-height:46px;box-sizing:border-box;border:1px solid #ccd6cc;border-radius:7px;padding:10px 12px;margin-top:7px;background:#fff;color:#222;font-size:14px}.fb-exchange-size select:disabled{background:#eee;color:#999;border-color:#e0e0e0}.fb-exchange-item-help,.fb-exchange-empty{margin-top:15px;font-size:12px;line-height:1.7;color:#888;word-break:keep-all}
.fb-exchange-footer{padding:18px 0 24px}.fb-exchange-footer #fb-exchange-count{font-size:13px;color:#345441;margin-bottom:12px}.fb-exchange-footer #fb-exchange-error{font-size:12px;line-height:1.6;color:#b33728;margin-bottom:12px}.fb-exchange-page .fb-exchange-submit{display:block;width:100%;min-height:52px;box-sizing:border-box;padding:14px 16px;border:0;border-radius:9px;background:#304f39;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.fb-exchange-page .fb-exchange-submit:disabled{background:#e5e7e3;color:#8a9086;cursor:default}.fb-exchange-toggle input:focus-visible,.fb-exchange-size select:focus-visible,.fb-exchange-submit:focus-visible{outline:2px solid #345441;outline-offset:3px}
@media(max-width:767px){.fb-exchange-page{padding:0 18px;margin-top:24px}.fb-exchange-heading h1{font-size:22px}.fb-exchange-item{padding:18px}.fb-exchange-page .fb-notice{margin-bottom:22px;font-size:12px;text-align:left}.fb-exchange-page .fb-exchange-submit{min-height:50px;font-size:14px}}

/* 행사 계절 탭: 모바일에서도 다섯 항목을 한 줄에 표시하고 선택 상태를 구분한다. */
.fb-season-tabs{display:flex;gap:8px;margin:0 0 24px}.fb-season-tab{flex:1;min-height:44px;padding:10px 12px;border:1px solid #e2ded5;border-radius:8px;background:#fff;color:#777;font-size:14px;cursor:pointer}.fb-season-tab.is-active{background:#304f39;border-color:#304f39;color:#fff;font-weight:700}.fb-season-tab:focus-visible{outline:2px solid #304f39;outline-offset:3px}.fb-product[hidden],.fb-season-empty[hidden]{display:none}.fb-season-empty{text-align:center;padding:40px 16px;background:#f7f5f0;border-radius:10px;color:#777;font-size:14px;line-height:1.6}
@media(max-width:767px){.fb-season-tabs{gap:6px;margin-bottom:18px}.fb-season-tab{padding:10px 4px;font-size:13px}}

/* 1+1 옵션 모달: 공통 옵션/개별 색상/선택 요약과 하단 행동을 분리한다. */
#fb-options{padding:0;width:calc(100% - 28px);max-width:520px;max-height:90dvh;border-radius:18px;overflow:auto;color:#26362c}#fb-option-form{margin:0}#fb-options [hidden]{display:none!important}
#fb-options .fb-options-header{position:relative;padding:24px 54px 20px 24px;border-bottom:1px solid #eee8df}#fb-options .fb-options-header>span{font-size:11px;color:#8b7458}#fb-options h2{margin:8px 0 0;font-size:19px;font-weight:700;line-height:1.5;word-break:keep-all}#fb-options #fb-options-dismiss{position:absolute;top:18px;right:14px;width:36px;min-height:36px;padding:0;border:0;background:transparent;color:#777;font-size:28px}
#fb-options .fb-options-body{padding:20px 24px}#fb-options .fb-option-section+section{margin-top:24px;padding-top:22px;border-top:1px solid #eee8df}#fb-options h3{margin:0;font-size:14px;font-weight:700}#fb-options .fb-option-help{font-size:12px;color:#888;line-height:1.6;margin:6px 0 16px}#fb-options label{font-size:12px;font-weight:500;line-height:1.5;margin:14px 0 0}#fb-options select{font-size:14px;min-height:46px;border:1px solid #deded8;border-radius:8px;padding:10px 12px;box-sizing:border-box;margin-top:7px;background-color:#fff;color:#222}#fb-options .fb-color-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}#fb-options .fb-color-pair label{margin:0;min-width:0}
#fb-options .fb-length-input{display:flex;align-items:center;gap:8px;border:1px solid #deded8;border-radius:8px;padding:0 12px;margin-top:7px}#fb-options .fb-length-input input{border:0;width:100%;min-width:0;padding:12px 0;font-size:14px;box-sizing:border-box}#fb-options .fb-length-input span{color:#888;font-size:13px}#fb-options .fb-option-hem{font-size:12px;color:#888;margin-top:12px}#fb-options .fb-option-hem span{padding:2px 5px;background:#efefeb;border-radius:4px;font-size:10px}
#fb-options .fb-option-review{margin-top:24px;background:#f6f5ef;padding:16px;border-radius:10px}#fb-options #fb-option-price{font-size:16px;font-weight:700;line-height:1.5;margin:0 0 12px}#fb-options #fb-summary{display:grid;grid-template-columns:auto 1fr;gap:7px 16px;font-size:12px;line-height:1.6;margin:0}#fb-options #fb-summary dt{color:#8c887f}#fb-options #fb-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}#fb-options #fb-error{font-size:12px;line-height:1.6;margin:12px 0 0}#fb-options #fb-error:empty{display:none}
#fb-options .fb-options-actions{position:sticky;bottom:0;background:#fff;display:grid;grid-template-columns:76px 1fr;gap:12px;padding:16px 24px;border-top:1px solid #eee8df}#fb-options .fb-options-actions button{min-height:48px;padding:12px 8px;border-radius:8px;font-size:14px;font-weight:600}#fb-options #fb-close{border:1px solid #ddd;background:#fff;color:#777}#fb-options .fb-options-actions [type=submit]{background:#304f39;border-color:#304f39;color:white}
@media(max-width:767px){#fb-options .fb-options-header{padding:20px 48px 18px 20px}#fb-options h2{font-size:17px}#fb-options .fb-options-body{padding:18px 20px}#fb-options .fb-options-actions{padding:14px 20px;gap:10px}#fb-options .fb-color-pair{gap:10px}}

/* 플로팅 혜택 배너: 투명 바지 이미지를 넓게 노출하고 큰 카피/CTA로 빠르게 읽히게 한다. */
.fb-banner{display:grid;grid-template-columns:190px minmax(0,1fr) 164px;gap:22px;width:calc(100% - 40px);max-width:900px;min-height:146px;padding:12px 24px 12px 0;border:2px solid #fffbef;border-radius:28px;background:linear-gradient(105deg,#fff9eb 5%,#fff2d9 70%,#f6e7ce);box-shadow:0 8px 30px #51371d30;overflow:hidden}
.fb-banner-visual{position:relative;align-self:stretch;min-width:0}.fb-banner .fb-banner-image{position:absolute;bottom:-16px;left:6px;width:190px;height:155px;object-fit:contain;border-radius:0;max-width:none;filter:drop-shadow(0 3px 4px #38271924)}.fb-banner-plus{position:absolute;left:90px;top:50%;transform:translateY(-35%);display:grid;place-items:center;width:37px;height:37px;border:2px solid #fff5e3;border-radius:50%;background:#765132;color:white;font-size:30px!important;font-weight:600;line-height:1}
.fb-banner-copy>.fb-banner-eyebrow{display:inline-block;font-size:16px;font-weight:700;color:#25313b;line-height:1.4;margin:0 0 8px;white-space:nowrap;text-decoration:underline;text-decoration-color:#efcc89;text-decoration-thickness:4px;text-underline-offset:4px}.fb-banner-headline{display:flex;align-items:center;gap:20px}.fb-banner .fb-banner-headline strong{display:block;margin:0;color:#82542f;font-size:66px;line-height:1;font-weight:800;letter-spacing:-3px}.fb-banner .fb-banner-headline p{font-size:28px;font-weight:800;line-height:1.13;color:#232925;letter-spacing:-1px;margin:0;white-space:nowrap}
.fb-banner .fb-banner-cta{margin:0;width:100%;min-width:0;min-height:60px;gap:10px;padding:14px 16px;border:1px solid #fcf5e7;border-radius:32px;background:linear-gradient(110deg,#90633d,#654224);box-shadow:0 3px 10px #82553020;color:#fff;font-size:20px;line-height:1.2;white-space:nowrap}.fb-banner .fb-banner-cta span{font-size:30px;line-height:1}.fb-banner .fb-banner-cta:hover{background:#6d482c}
@media(max-width:767px){.fb-banner{grid-template-columns:96px minmax(0,1fr) 88px;gap:6px;width:calc(100% - 20px);min-height:108px;padding:12px 10px 12px 0;border-radius:20px}.fb-banner .fb-banner-image{left:0;bottom:-12px;width:100px;height:106px}.fb-banner-plus{left:44px;width:24px;height:24px;border-width:1px;font-size:21px!important}.fb-banner-copy>.fb-banner-eyebrow{font-size:10px;margin:0 0 8px;text-decoration-thickness:3px;text-underline-offset:3px}.fb-banner-headline{gap:8px}.fb-banner .fb-banner-headline strong{font-size:35px;letter-spacing:-1.8px}.fb-banner .fb-banner-headline p{font-size:17px;line-height:1.15;letter-spacing:-.6px}.fb-banner .fb-banner-cta{min-height:48px;padding:10px 8px;font-size:13px;gap:4px}.fb-banner .fb-banner-cta span{font-size:23px}}
@media(max-width:359px){.fb-banner{grid-template-columns:78px minmax(0,1fr) 76px;gap:5px}.fb-banner .fb-banner-image{width:86px;height:100px;left:-4px}.fb-banner-plus{left:33px}.fb-banner .fb-banner-headline strong{font-size:29px}.fb-banner .fb-banner-headline p{font-size:15px}.fb-banner-headline{gap:5px}.fb-banner-copy>.fb-banner-eyebrow{font-size:9px}.fb-banner .fb-banner-cta{font-size:12px}}

/* 모바일 배너를 낮추고 바지 이미지와 큰 회원 안내 사이에 여백을 확보한다. PC 배치는 유지한다. */
@media(max-width:767px){.fb-banner{grid-template-columns:84px minmax(0,1fr) 80px;gap:12px;min-height:90px;padding:8px 10px 8px 0}.fb-banner .fb-banner-image{width:84px;height:92px;left:4px;bottom:-8px}.fb-banner-plus{left:40px;width:22px;height:22px;font-size:19px!important}.fb-banner-copy>.fb-banner-eyebrow{font-size:12px;white-space:normal;line-height:1.4;margin-bottom:6px}.fb-banner .fb-banner-headline strong{font-size:33px}.fb-banner .fb-banner-headline p{font-size:16px}.fb-banner .fb-banner-cta{min-height:46px;padding:10px 6px;font-size:12px}}
@media(max-width:359px){.fb-banner{grid-template-columns:70px minmax(0,1fr) 74px;gap:9px;padding-right:8px}.fb-banner .fb-banner-image{width:72px;height:86px;left:2px}.fb-banner-plus{left:33px}.fb-banner-copy>.fb-banner-eyebrow{font-size:11px}.fb-banner .fb-banner-headline strong{font-size:29px}.fb-banner .fb-banner-headline p{font-size:15px}}

/* 행사 배너 전체를 하나의 링크로 제공하고, 상품 썸네일은 정사각 영역을 채운다. 공통 혜택 태그는 카드에서 숨긴다. */
.fb-banner{color:inherit;text-decoration:none;cursor:pointer}.fb-banner:focus-visible{outline:3px solid #cda36c;outline-offset:4px}
.fb-product-image img{object-fit:cover}
.fb-product-tag{display:none!important}

/* 오류 토스트는 모달 최상위 레이어에서도 화면 정중앙에 표시한다. 기존 인라인 안내는 유지한다. */
#fb-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2147483647;width:max-content;max-width:calc(100vw - 40px);box-sizing:border-box;padding:15px 20px;border-radius:12px;background:#26382df5;color:#fff;font-size:14px;font-weight:500;line-height:1.6;box-shadow:0 5px 24px #0003;white-space:normal;word-break:keep-all;text-align:center;pointer-events:none}#fb-toast[hidden]{display:none!important}

/* 이용 완료/중단 안내: 공통 자격은 유지하고 상태·이동 버튼을 하나의 카드로 정돈한다. */
.fb-denied-page{max-width:640px;margin:54px auto 64px;padding:0 24px;box-sizing:border-box}.fb-denied-card{padding:48px 44px 30px;border:1px solid #e9e3d8;border-radius:24px;background:linear-gradient(150deg,#fffcf6,#fff 68%);text-align:center;box-shadow:0 8px 30px #49351e08;color:#263b2d}.fb-denied-symbol{position:relative;width:84px;height:84px;border-radius:50%;background:#eaf1e9;color:#36563d;margin:0 auto 25px;display:grid;place-items:center}.fb-denied-symbol svg{width:55px;height:55px}.fb-denied-symbol span{position:absolute;bottom:-6px;right:-12px;background:#fff3dd;border:2px solid #fff;border-radius:20px;padding:5px 11px;font-size:14px;font-weight:800;color:#93673b}.fb-denied-status{font-size:12px;font-weight:600;letter-spacing:.6px;color:#8e704e;margin:0 0 12px}.fb-denied-card h1{font-size:32px;font-weight:700;letter-spacing:-1px;line-height:1.4;margin:0}.fb-denied-description{font-size:14px;line-height:1.85;color:#7a7a70;margin:18px 0 30px;word-break:keep-all}.fb-denied-actions{display:grid;gap:10px;max-width:360px;margin:0 auto}.fb-denied-actions a{display:flex;align-items:center;justify-content:center;gap:18px;min-height:52px;padding:12px 16px;border-radius:10px;box-sizing:border-box;font-size:15px;font-weight:600;text-decoration:none}.fb-denied-primary{background:#304b37;color:#fff;border:1px solid #304b37}.fb-denied-primary:hover{background:#3e6046}.fb-denied-secondary{background:#fff;border:1px solid #e2e1d9;color:#656b60}.fb-denied-actions a:focus-visible{outline:3px solid #aa8960;outline-offset:3px}.fb-denied-footnote{font-size:10px;letter-spacing:1px;color:#a49c8e;border-top:1px solid #eee9e0;padding-top:22px;margin:28px 0 0}
@media(max-width:767px){.fb-denied-page{margin:30px auto 38px;padding:0 20px}.fb-denied-card{padding:34px 22px 24px;border-radius:20px}.fb-denied-card h1{font-size:26px;letter-spacing:-.8px}.fb-denied-description{font-size:12px;margin:16px 0 26px;line-height:1.85}.fb-denied-symbol{width:76px;height:76px;margin-bottom:26px}.fb-denied-symbol svg{width:50px;height:50px}.fb-denied-actions a{font-size:14px;min-height:50px}.fb-denied-footnote{margin-top:24px;padding-top:20px}}

/* 공통 a:link/visited/hover/active의 색상 상속보다 우선해 어두운 주 버튼의 글자·화살표를 흰색으로 유지한다. */
.fb-denied-actions a.fb-denied-primary,.fb-denied-actions a.fb-denied-primary:link,.fb-denied-actions a.fb-denied-primary:visited,.fb-denied-actions a.fb-denied-primary:hover,.fb-denied-actions a.fb-denied-primary:active,.fb-denied-actions a.fb-denied-primary:focus{color:#fff}
.fb-denied-actions a.fb-denied-primary span{color:inherit}

/* 무상 교환: 세트의 두 색상과 공통 선택값을 분리해 표시한다. */
.fb-exchange-pair-count{display:inline-block;margin-left:6px;color:#7d857c;font-size:11px;font-weight:400}
.fb-exchange-colors{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:14px;padding:12px 14px;background:#f5f5f1;border-radius:8px}
.fb-exchange-colors p{display:flex;gap:10px;align-items:center;font-size:13px}.fb-exchange-colors p span{color:#83867d;font-size:11px}.fb-exchange-colors strong{font-weight:600}
.fb-exchange-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:4px}.fb-exchange-options .fb-exchange-size{font-size:13px}
.fb-exchange-custom{display:block;margin-top:10px}.fb-exchange-custom[hidden]{display:none!important}.fb-exchange-custom>span{display:block;font-size:12px;color:#666;margin-bottom:6px}
.fb-exchange-custom>div{display:flex;align-items:center;border:1px solid #ccd6cc;border-radius:7px;background:#fff;padding-right:12px;overflow:hidden}
.fb-exchange-custom input{width:100%;min-width:0;min-height:46px;box-sizing:border-box;padding:10px 12px;border:0;background:transparent;font-size:14px}.fb-exchange-custom div>span{font-size:13px;color:#777}
.fb-exchange-option-help,.fb-exchange-no-length{font-size:12px;line-height:1.6;color:#777;margin-top:14px}.fb-exchange-no-length{align-self:center}
@media(max-width:767px){.fb-exchange-options{grid-template-columns:1fr;gap:0}.fb-exchange-pair-count{display:block;margin:2px 0 0}.fb-exchange-colors{gap:8px 18px}.fb-exchange-current{font-size:13px}.fb-exchange-footer{padding-bottom:30px}}

/* 맞춤 반품 제한은 옵션 선택 시점과 주문목록에서 읽을 수 있게 안내한다. */
.fb-tailored-notice{margin:0 0 16px;padding:13px 14px;border-radius:8px;background:#fff4e6;border:1px solid #ead8bf;line-height:1.65;font-size:12px;color:#754b29}.fb-tailored-notice strong{display:block;font-weight:600}.fb-tailored-notice span{display:block;margin-top:5px;color:#74695b;font-size:11px}

/* /shop/firstbuy 전용 글자 크기: 작은 안내/상품 버튼을 키우되 다른 카트·플로팅 배너에는 적용하지 않는다. */
#firstbuy-page .fb-eyebrow{font-size:14px;letter-spacing:1.4px}
#firstbuy-page .fb-hero-kicker{font-size:16px}#firstbuy-page .fb-hero-description{font-size:17px}
#firstbuy-page .fb-hero-limit,#firstbuy-page .fb-hero-visual figcaption{font-size:15px}
#firstbuy-page .fb-benefits span{font-size:14px}#firstbuy-page .fb-benefits strong{font-size:18px;line-height:1.5}#firstbuy-page .fb-benefits p{font-size:15px;line-height:1.65}
#firstbuy-page .fb-notice,#firstbuy-page .fb-section-heading p,#firstbuy-page .fb-season-empty{font-size:15px;line-height:1.7}
#firstbuy-page .fb-season-tab{font-size:16px;min-height:48px}
#firstbuy-page .fb-product h2{font-size:18px;line-height:1.55;min-height:56px}#firstbuy-page .fb-product p{font-size:15px;line-height:1.6}
#firstbuy-page .fb-product .fb-select,#firstbuy-page .fb-product .fb-detail{font-size:16px;min-height:48px}
#firstbuy-page .fb-terms{font-size:15px;line-height:1.85}#firstbuy-page .fb-terms li+li{margin-top:10px}
#fb-options .fb-options-header>span{font-size:14px}#fb-options h3,#fb-options label{font-size:15px}
#fb-options .fb-option-help,#fb-options .fb-option-hem,#fb-options .fb-option-hem span,#fb-options #fb-summary,#fb-options #fb-error{font-size:14px;line-height:1.7}
#fb-options select,#fb-options .fb-length-input input{font-size:16px;min-height:48px}
#fb-options .fb-length-input span{font-size:15px}#fb-options .fb-options-actions button{font-size:16px;min-height:50px}
#fb-options #fb-length-wrap{margin-top:22px}
#fb-options .fb-tailored-choice{border:0;padding:0;margin:0;min-width:0}
#fb-options .fb-tailored-choice legend{font-size:15px;font-weight:600;margin-bottom:12px}
#fb-options .fb-tailored-choice>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#fb-options .fb-tailored-choice label{display:flex;align-items:center;justify-content:center;gap:9px;margin:0;padding:13px 8px;border:1px solid #dddcd4;border-radius:8px;background:#fff;cursor:pointer;box-sizing:border-box}
#fb-options .fb-tailored-choice label:has(input:checked){border-color:#345441;background:#f0f6ef;color:#304f39;font-weight:700}
#fb-options .fb-tailored-choice input{width:20px;height:20px;min-height:0;padding:0;margin:0;accent-color:#345441;flex-shrink:0}
#fb-options .fb-tailored-notice{margin:18px 0 22px;padding:14px;font-size:14px;line-height:1.7}
#fb-options .fb-tailored-notice span{font-size:14px;margin-top:8px}
#fb-options #fb-tailored-none{margin:16px 0 22px}
#fb-options #fb-length-select:disabled{background:#f1f1ee;color:#9a9b94;cursor:not-allowed}
#fb-detail-dialog #fb-detail-close,#fb-detail-dialog #fb-detail-message,#fb-detail-dialog .fb-detail-content{font-size:15px}
@media(max-width:767px){
    #firstbuy-page .fb-hero-kicker{font-size:15px}#firstbuy-page .fb-hero-description{font-size:16px}
    #firstbuy-page .fb-benefits{gap:8px}#firstbuy-page .fb-benefits>div{padding:0 7px}
    #firstbuy-page .fb-benefits strong{font-size:15px;word-break:keep-all}#firstbuy-page .fb-benefits p{font-size:14px;word-break:keep-all}
    #firstbuy-page .fb-product h2{font-size:15px;min-height:72px}#firstbuy-page .fb-product p{font-size:14px;min-height:48px}
    #firstbuy-page .fb-product p strong{font-size:20px}#firstbuy-page .fb-product .fb-select,#firstbuy-page .fb-product .fb-detail{font-size:15px}
    #firstbuy-page .fb-season-tab{font-size:15px;padding:10px 4px}#firstbuy-page .fb-terms{padding:20px 18px;font-size:15px}
    #fb-options h2{font-size:19px}#fb-options .fb-color-pair{grid-template-columns:1fr;gap:16px}
}

/* 전역 폼 초기화에서 숨긴 legend/라디오를 맞춤 선택 안에서는 정상 표시한다. */
#fb-options .fb-tailored-choice legend{position:static;width:auto;height:auto;overflow:visible;clip:auto;clip-path:none;white-space:normal}
#fb-options .fb-tailored-choice input[type=radio]{appearance:auto!important;-webkit-appearance:radio!important;border:0;background:none!important;border-radius:50%;opacity:1;position:static}
#fb-options .fb-tailored-notice{word-break:keep-all}

#fb-options .fb-tailored-choice legend{text-indent:0;line-height:1.5;width:100%;height:auto;max-height:none;color:#26362c}

/* 행사 상단 CTA는 공통 링크 색상 상속보다 우선해 글자와 화살표를 흰색으로 유지한다. */
#firstbuy-page a.fb-hero-cta,#firstbuy-page a.fb-hero-cta:link,#firstbuy-page a.fb-hero-cta:visited,#firstbuy-page a.fb-hero-cta:hover,#firstbuy-page a.fb-hero-cta:active,#firstbuy-page a.fb-hero-cta:focus{color:#fff}
#firstbuy-page a.fb-hero-cta span{color:inherit}

/* 색상 선택 전 공통 사이즈는 잠금 상태를 명확하게 표시한다. */
#fb-options #fb-common select:disabled{background:#f1f1ee;color:#8a8d86;cursor:not-allowed}

/* 미결제 주문 복귀: 오류 모달과 행사 페이지에서 같은 기존 결제 확인 행동을 제공한다. */
#fb-toast a.fb-pending-link,#fb-toast a.fb-pending-link:visited{display:block;margin-top:12px;padding:12px 16px;background:#fff;color:#173c2d;border-radius:8px;text-align:center;font-weight:700;text-decoration:none;}
#fb-error a.fb-pending-link{display:block;margin-top:10px;font-weight:700;text-decoration:underline;}
.fb-pending-guide{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;margin-bottom:24px;border:1px solid #d5e1d8;border-radius:14px;background:#f2f7f3;font-size:15px;}.fb-pending-guide strong{font-size:18px;}.fb-pending-guide p{margin:8px 0 0;line-height:1.5;}.fb-pending-guide a,.fb-pending-guide a:visited{display:block;padding:14px 20px;border-radius:9px;background:#254d38;color:#fff;font-weight:700;white-space:nowrap;}
@media(max-width:767px){.fb-pending-guide{display:block;padding:18px;}.fb-pending-guide a{margin-top:16px;text-align:center;}}

.fb-denied-card .fb-pending-guide{display:block;text-align:left;}.fb-denied-card .fb-pending-guide a{margin-top:14px;text-align:center;}
