:root{--ink:#181816;--muted:#74746f;--paper:#f7f5f0;--line:#e4e0d8;--accent:#405846;--gold:#98765e;--white:#fff;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Noto Sans KR',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--ink);background:#fff;font-family:var(--sans);line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #ece9e2}.header-inner{max-width:var(--max);height:78px;margin:auto;padding:0 22px;display:flex;align-items:center;gap:24px}.brand-cluster{display:flex;align-items:center;gap:18px;min-width:0}.brand{display:flex;align-items:center;gap:10px}.brand-logo{width:46px;height:46px;border-radius:12px;object-fit:cover}.brand b{display:block;font-size:20px;letter-spacing:-.03em;white-space:nowrap}.brand small{display:block;font-size:10px;letter-spacing:.08em;color:var(--gold);margin-top:1px}.brand-phone{padding-left:18px;border-left:1px solid var(--line);white-space:nowrap}.brand-phone small{display:block;font-size:10px;color:var(--muted)}.brand-phone strong{font-size:16px}.desktop-nav{display:flex;justify-content:center;gap:24px;flex:1;font-size:13px}.desktop-nav a:hover{color:var(--accent)}.admin-order-link{font-size:12px;font-weight:700;padding:9px 12px;background:#222;color:#fff;border-radius:3px;white-space:nowrap}.mobile-menu-btn,.mobile-nav{display:none}.hero{background:#f7f4ee}.hero-inner{max-width:var(--max);min-height:430px;margin:auto;padding:54px 22px;display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.18em;color:var(--gold);font-weight:700}.hero h1{font:500 clamp(34px,4.5vw,54px)/1.14 var(--serif);letter-spacing:-.04em;margin:14px 0 16px}.hero h1 span{color:var(--accent)}.hero-copy>p{font-size:15px;color:#5f605a;max-width:560px;margin:0}.hero-actions{display:flex;gap:10px;margin-top:26px}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:1px solid var(--ink);font-size:13px;font-weight:700}.btn-primary{background:var(--ink);color:#fff}.btn-secondary{background:#fff}.hero-art{display:grid;place-items:center}.hero-art img{width:min(310px,78%);border-radius:28px;box-shadow:0 24px 60px rgba(30,30,20,.09)}.products-section,.easy-section,.lookup-band,.page-shell{max-width:var(--max);margin:auto;padding:72px 22px}.section-head{margin:10px 0 26px}.section-head h2,.easy-section h2,.lookup-band h2{font:500 clamp(28px,3.5vw,42px)/1.15 var(--serif);letter-spacing:-.035em;margin:0}.section-head p,.muted{color:var(--muted);font-size:14px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.product-image{position:relative;display:block;aspect-ratio:.9;overflow:hidden;background:var(--paper)}.product-image img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;right:8px;bottom:8px;background:rgba(255,255,255,.9);font-size:9px;padding:3px 6px}.product-body{padding:14px 1px}.product-body>small{font-size:9px;letter-spacing:.14em;color:var(--gold)}.product-body h3{font-size:15px;margin:4px 0 7px}.price strong{font-size:16px}.price del{font-size:11px;color:#aaa;margin-right:7px}.text-link{display:inline-block;margin-top:10px;font-size:12px;border-bottom:1px solid #aaa}.center-action{text-align:center;margin-top:28px}.easy-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line)}.easy-steps{display:grid}.easy-steps span{display:flex;gap:18px;padding:15px 0;border-top:1px solid var(--line);font-size:14px}.easy-steps b{color:var(--gold)}.easy-steps .btn-primary{margin-top:16px}.support-search{background:#faf9f6}.support-search .facility-search-section{max-width:var(--max);margin:auto;padding:66px 22px}.search-shell{background:#22231f;color:#fff;padding:24px}.search-tabs{display:flex;gap:8px;margin-bottom:14px}.search-tabs button{border:0;background:transparent;color:#aaa;padding:7px 11px;cursor:pointer}.search-tabs button.active{color:#fff;border-bottom:1px solid #fff}.search-row{display:grid;grid-template-columns:1fr auto}.search-row input{height:54px;border:0;padding:0 15px;min-width:0}.search-row button{border:0;background:#111;color:#fff;padding:0 22px}.region-row{display:flex;gap:8px;margin-top:8px}.region-row select{flex:1;min-width:0;height:42px;background:#2b2c28;color:#fff;border:1px solid #494a45;padding:0 10px}.facility-results{display:grid;gap:7px;margin-top:12px}.facility-result{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#2a2b27;padding:12px}.facility-result small{color:#aaa}.facility-result a{background:#fff;color:#111;padding:8px 10px;font-size:11px}.lookup-band{max-width:none;background:var(--accent);color:#fff;padding-left:max(22px,calc((100vw - var(--max))/2 + 22px));padding-right:max(22px,calc((100vw - var(--max))/2 + 22px));display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}.lookup-band>div>span{font-size:9px;letter-spacing:.18em;color:#ddd0c4}.lookup-band form label{font-size:11px}.lookup-band form>div{display:grid;grid-template-columns:minmax(0,1fr) auto}.lookup-band input{height:50px;border:0;padding:0 14px;min-width:0}.lookup-band button{border:0;background:#dac7b4;padding:0 18px}.page-shell{padding-top:52px}.page-shell.narrow{max-width:820px}.page-title{text-align:center;margin-bottom:36px}.page-title span{font-size:9px;letter-spacing:.18em;color:var(--gold)}.page-title h1{font:500 clamp(32px,4vw,46px)/1.1 var(--serif);margin:8px 0}.page-title p{font-size:14px;color:var(--muted)}.order-form{border-top:1px solid var(--line)}.order-section{display:grid;grid-template-columns:58px 1fr;gap:16px;padding:34px 0;border-bottom:1px solid var(--line)}.order-num{font:italic 18px var(--serif);color:var(--gold)}.order-content h2{font:500 24px var(--serif);margin:0 0 4px}.order-content>p{font-size:13px;color:var(--muted)}.selected-product{display:grid;grid-template-columns:88px 1fr auto auto;align-items:center;gap:15px;margin-top:18px;padding:14px;border:1px solid var(--line);background:#fff}.selected-product>img{width:88px;height:88px;object-fit:cover}.selected-product-info small,.selected-product-info strong,.selected-product-info b{display:block}.selected-product-info small{font-size:10px;color:var(--gold)}.selected-product-info strong{font-size:16px;margin:2px 0}.selected-product label{font-size:11px}.selected-product input{width:62px;height:38px}.change-product{font-size:12px;text-decoration:underline}.ribbon-box,.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.ribbon-box label,.field-grid label,.full-label{font-size:12px;font-weight:700}.ribbon-box input,.ribbon-box select,.field-grid input,.field-grid select,.full-label input,.full-label textarea,.order-content select{width:100%;margin-top:6px;border:1px solid var(--line);background:#fff;min-height:46px;padding:9px 11px}.order-kind-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:20px 0;border:1px solid var(--ink)}.order-kind-tabs button{height:48px;border:0;background:#fff;font-weight:700}.order-kind-tabs button.active{background:var(--ink);color:#fff}.order-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.order-product-card{border:1px solid var(--line);background:#fff;position:relative;overflow:hidden}.order-product-card[hidden]{display:none}.product-choice{position:absolute!important;opacity:0!important;pointer-events:none}.product-select-toggle{width:100%;border:0;background:#fff;padding:0 0 14px;text-align:left;cursor:pointer;position:relative}.product-select-toggle img{width:100%;aspect-ratio:1.05;object-fit:cover;background:var(--paper)}.product-select-toggle strong,.product-select-toggle b{display:block;padding:0 12px}.product-select-toggle strong{font-size:13px;margin-top:10px;min-height:40px}.product-select-toggle b{font-size:14px}.select-badge{position:absolute;right:8px;top:8px;z-index:2;background:#fff;color:#111;border:1px solid #ccc;padding:5px 8px;font-size:10px;font-weight:700}.order-product-card.selected{border:2px solid var(--accent)}.order-product-card.selected .select-badge{background:var(--accent);color:#fff;border-color:var(--accent)}.op-options{display:none;padding:12px;border-top:1px solid var(--line);background:#faf9f6}.order-product-card.selected .op-options{display:grid;gap:10px}.op-options label{font-size:11px;font-weight:700}.op-options input,.op-options select{width:100%;height:40px;margin-top:4px;border:1px solid var(--line);padding:6px}.form-note{font-size:11px!important}.field-grid em,.full-label em{font-style:normal;color:#9f554f}.field-grid small,.full-label small{font-weight:400;color:var(--muted)}.inline-facility-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:14px 0 8px}.inline-facility-search input{min-width:0;height:46px;border:1px solid var(--line);padding:0 11px}.inline-facility-search button{border:0;background:var(--ink);color:#fff;padding:0 18px}.mini-results{display:grid;gap:6px;margin-bottom:12px}.mini-result{border:1px solid var(--line);background:#fff;text-align:left;padding:10px 12px}.mini-result strong,.mini-result small{display:block}.mini-result small{color:var(--muted)}.chosen-place{color:var(--accent)!important}.payment-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.payment-choice label{border:1px solid var(--line);padding:14px;display:flex;gap:9px}.payment-choice strong,.payment-choice small{display:block}.payment-choice small{font-size:11px;color:var(--muted)}.payment-warning{margin:10px 0;padding:9px 11px;background:#f7f2ed;font-size:12px}.order-submit{position:sticky;bottom:0;z-index:20;background:#fff;border:1px solid var(--line);padding:12px 14px;display:flex;justify-content:space-between;align-items:center;margin-top:20px}.order-submit small,.order-submit strong{display:block}.order-submit button{height:48px;border:0;background:var(--ink);color:#fff;padding:0 30px;font-weight:700}.lookup-form{display:grid;grid-template-columns:minmax(0,1fr) auto;max-width:520px;margin:0 auto 28px}.lookup-form input{min-width:0;height:50px;border:1px solid var(--line);padding:0 14px}.lookup-form button{border:0;background:var(--ink);color:#fff;padding:0 18px}.lookup-empty{padding:24px;text-align:center;background:var(--paper)}.lookup-result{border:1px solid var(--line);padding:24px;overflow:hidden}.lookup-head{display:flex;justify-content:space-between;gap:15px}.lookup-head small,.lookup-head strong{display:block}.lookup-head strong{font-size:24px}.lookup-head>span{font-size:12px;background:#eef2ed;padding:7px 9px;align-self:start}.lookup-result h2{font-size:18px;margin:20px 0 4px}.lookup-result>p{font-size:13px;color:var(--muted)}.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:26px 0}.timeline div{text-align:center;position:relative;font-size:11px;color:#aaa}.timeline div:before{content:'';position:absolute;left:-50%;right:50%;top:6px;height:1px;background:#ddd}.timeline div:first-child:before{display:none}.timeline i{width:13px;height:13px;border-radius:50%;background:#ddd;display:block;margin:0 auto 7px;position:relative;z-index:1}.timeline .done i{background:var(--accent)}.timeline .done{color:var(--ink)}.lookup-summary{display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--line)}.lookup-summary span{display:flex;justify-content:space-between;gap:12px;font-size:13px}.complete-card{padding:30px;border:1px solid var(--line);text-align:center}.complete-mark{width:42px;height:42px;margin:auto;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center}.complete-kicker{display:block;font-size:9px;letter-spacing:.18em;color:var(--gold);margin-top:12px}.complete-card h1{font:500 32px var(--serif);margin:10px 0 20px}.order-number-card,.order-summary-card,.complete-pay{border:1px solid var(--line);padding:18px;margin-top:12px;text-align:left}.order-number-card{text-align:center;background:var(--paper)}.order-number-card small,.order-number-card strong,.order-number-card span{display:block}.order-number-card strong{font-size:34px;letter-spacing:.08em}.order-number-card span{font-size:11px;color:var(--muted)}.order-summary-card h2{font-size:16px}.summary-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #eee;font-size:13px}.summary-row.total strong{font-size:17px}.complete-pay p{margin-bottom:0}.complete-actions{display:flex;gap:8px;justify-content:center;margin-top:18px}.site-footer{background:#171815;color:#eee;padding:50px 22px 75px}.footer-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr auto;gap:30px}.footer-inner p{color:#aaa;font-size:13px}.mobile-bottom{display:none}
@media(max-width:900px){.header-inner{height:68px;padding:0 14px;gap:8px}.brand-logo{width:40px;height:40px}.brand b{font-size:17px}.brand small{font-size:8px}.brand-phone{padding-left:10px}.brand-phone small{display:none}.brand-phone strong{font-size:13px}.desktop-nav,.admin-order-link{display:none}.mobile-menu-btn{display:block;margin-left:auto;border:0;background:transparent;font-size:21px}.mobile-nav{display:none;position:absolute;left:0;right:0;top:68px;background:#fff;border-bottom:1px solid var(--line);padding:14px 18px;gap:14px;flex-wrap:wrap}.mobile-nav.open{display:flex}.hero-inner{min-height:auto;padding:38px 18px;grid-template-columns:1fr .72fr;gap:20px}.hero h1{font-size:35px}.hero-art img{width:100%;max-width:220px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.products-section,.easy-section,.page-shell{padding:52px 16px}.easy-section{grid-template-columns:1fr;gap:24px}.lookup-band{grid-template-columns:1fr;gap:22px;padding:44px 16px}.order-section{grid-template-columns:42px 1fr;gap:8px;padding:28px 0}.order-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.selected-product{grid-template-columns:72px 1fr;gap:10px}.selected-product>img{width:72px;height:72px}.selected-product>label,.selected-product>.change-product{grid-column:auto}.ribbon-box,.field-grid{grid-template-columns:1fr}.lookup-result{padding:18px}.footer-inner{grid-template-columns:1fr}.footer-inner>div:nth-child(2){display:flex;flex-wrap:wrap;gap:12px}}
@media(max-width:520px){.header-inner{padding:0 10px}.brand-cluster{gap:8px}.brand-logo{width:36px;height:36px;border-radius:9px}.brand b{font-size:15px}.brand small{font-size:7px}.brand-phone{padding-left:8px}.brand-phone strong{font-size:11px}.hero-inner{grid-template-columns:1fr;padding:32px 16px}.hero-art{display:none}.hero h1{font-size:31px}.hero-copy>p{font-size:14px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.product-body h3{font-size:13px}.product-body p{display:none}.order-section{grid-template-columns:1fr}.order-num{font-size:12px}.order-content h2{font-size:22px}.order-products{grid-template-columns:repeat(2,minmax(0,1fr))}.product-select-toggle strong{font-size:12px;min-height:38px;padding:0 9px}.product-select-toggle b{font-size:13px;padding:0 9px}.selected-product{grid-template-columns:64px 1fr}.selected-product>img{width:64px;height:64px}.selected-product label,.selected-product .change-product{grid-column:1/-1}.payment-choice{grid-template-columns:1fr}.order-submit{margin-left:-8px;margin-right:-8px;padding:10px}.order-submit div{display:none}.order-submit button{width:100%}.lookup-form{grid-template-columns:minmax(0,1fr) auto;width:100%}.lookup-form button{padding:0 12px}.timeline{gap:4px}.timeline div{font-size:9px}.lookup-head{align-items:flex-start}.lookup-summary span{font-size:12px}.complete-card{padding:20px 14px}.complete-card h1{font-size:26px}.complete-actions{display:grid}.site-footer{padding-bottom:90px}.mobile-bottom{display:grid;position:fixed;left:0;right:0;bottom:0;z-index:60;grid-template-columns:1fr 1fr 1fr;background:#fff;border-top:1px solid var(--line)}.mobile-bottom a{padding:12px 4px;text-align:center;font-size:11px}.mobile-bottom a:nth-child(2){background:var(--ink);color:#fff}}

/* v1.3 refinement */
.product-card-premium{border:1px solid #e7e2d9;background:#fff;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.product-card-premium:hover{transform:translateY(-3px);border-color:#cfc5b8;box-shadow:0 16px 34px rgba(35,31,24,.07)}.product-card-premium .product-body{padding:15px}.product-kind-badge{position:absolute;left:8px;top:8px;background:rgba(24,24,22,.88);color:#fff;font-size:9px;letter-spacing:.08em;padding:5px 7px}.product-order-btn{margin-top:13px;border-top:1px solid var(--line);padding-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}.product-order-btn span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:27px;border:1px solid #cbc3b8;color:#665b50}.product-order-btn b{font-size:12px}.support-search .facility-search-section{padding-bottom:62px}.search-state{margin:12px 0 0;color:#c9c9c5;font-size:12px}.order-product-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;align-items:start}.order-product-group{border:1px solid var(--line);background:#faf9f6;padding:14px}.order-product-group-head{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding:2px 2px 12px;margin-bottom:12px}.order-product-group-head span{font-size:8px;letter-spacing:.16em;color:var(--gold)}.order-product-group-head h3{font:500 20px var(--serif);margin:0}.order-product-group .order-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.order-product-card{border-radius:2px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.order-product-card:hover{border-color:#bdb3a6}.order-product-card.selected{border:2px solid var(--accent);box-shadow:0 0 0 3px rgba(64,88,70,.09);transform:translateY(-1px)}.product-select-toggle{padding-bottom:12px}.product-select-toggle img{aspect-ratio:1/1;object-fit:cover}.select-badge{border-radius:999px;padding:5px 9px}.order-product-card.selected .select-badge{box-shadow:0 3px 10px rgba(64,88,70,.22)}.delivery-photo-note,.full-label>small{display:block;margin-top:6px;font-size:10px!important;line-height:1.45;color:var(--muted)!important;font-weight:400!important}.lookup-delivery-note{margin:18px 0 0;padding:11px 12px;background:#f6f4ef;color:#605f59!important;font-size:11px!important}.facility-result strong{font-size:13px}.facility-result small{display:block;margin-top:2px;font-size:10px}.facility-result a{white-space:nowrap}.facility-search-section .section-head h2{font-size:clamp(25px,3vw,34px)}
@media(max-width:900px){.order-product-columns{gap:10px}.order-product-group{padding:10px}.order-product-group .order-products{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.order-product-columns{grid-template-columns:1fr 1fr;gap:8px}.order-product-group{padding:7px}.order-product-group-head{display:block;padding:4px 2px 8px}.order-product-group-head h3{font-size:16px}.order-product-group-head span{font-size:7px}.order-product-group .order-products{grid-template-columns:1fr;gap:7px}.product-select-toggle strong{font-size:11px;min-height:auto;margin-top:7px;padding:0 7px}.product-select-toggle b{font-size:12px;padding:0 7px}.select-badge{top:5px;right:5px;font-size:9px;padding:4px 6px}.op-options{padding:8px}.op-options label{font-size:10px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-card-premium .product-body{padding:10px}.product-order-btn{display:grid;grid-template-columns:auto 1fr}.product-order-btn b{text-align:right;font-size:11px}.facility-result{align-items:flex-start;flex-direction:column}.facility-result a{width:100%;text-align:center}.search-shell{padding:15px}.search-row button{padding:0 14px}}

/* v1.3.2 order UX restore */
.product-select-toggle{display:flex;flex-direction:column;width:100%;border:0;background:#fff;padding:0;cursor:pointer;text-align:left}.product-select-toggle img{width:100%;display:block}.product-select-toggle strong,.product-select-toggle b{display:block;width:100%;box-sizing:border-box}.select-action{display:flex;align-items:center;justify-content:center;margin:9px 8px 10px;min-height:40px;border:2px solid var(--ink);background:var(--ink);color:#fff;font-size:13px;font-weight:800;letter-spacing:.02em}.order-product-card.selected .select-action{background:var(--accent);border-color:var(--accent)}.order-product-card.restricted{opacity:.45}.order-product-card.restricted .product-select-toggle{cursor:not-allowed}.order-product-card.restricted .select-action{background:#777;border-color:#777}.selected-product-options{margin-top:22px;padding:18px;border:1px solid var(--line);background:#faf9f6}.selected-product-options h3{margin:0 0 12px;font:600 18px var(--serif)}.selected-option-panel{display:none;border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.selected-option-panel.show{display:block}.selected-option-panel>strong{display:block;margin-bottom:10px}.wide-field{grid-column:1/-1}.facility-restriction{margin:12px 0;padding:14px 16px;border:2px solid #8b2f2f;background:#fff7f5;color:#6e2424}.facility-restriction strong{font-size:13px}.facility-restriction p{margin:4px 0 0;font-weight:700;line-height:1.55}.form-note{padding:11px 13px;background:#f7f4ec;border-left:3px solid var(--gold);font-weight:600;line-height:1.5}
@media(max-width:640px){.select-action{min-height:42px;margin:8px 6px 8px;font-size:12px}.selected-product-options{padding:13px}.wide-field{grid-column:auto}}

/* v1.3.5 facility selection + time UX */
.facility-result-columns,.mini-result-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.facility-result-group,.mini-result-group{min-width:0}.facility-result-group h3,.mini-result-group h3{margin:0 0 8px;font-size:13px;letter-spacing:-.02em}.facility-result-list{display:grid;gap:7px}.facility-select-btn{background:#111!important;color:#fff!important;border:1px solid #111!important;min-width:72px;text-align:center;font-weight:800;font-size:12px!important;padding:10px 14px!important}.mini-result-group{border:1px solid var(--line);padding:10px;background:#faf9f6}.mini-result-group h3{font-size:15px}.mini-result{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px;padding:10px!important;cursor:pointer}.mini-result-copy{min-width:0;flex:1}.mini-select-label{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:64px;min-height:38px;background:#111;color:#fff;font-size:12px;font-weight:800;padding:0 12px}.chosen-facility{margin:10px 0 12px;border:2px solid #111;background:#fff;padding:13px 15px}.chosen-facility small,.chosen-facility strong,.chosen-facility span{display:block}.chosen-facility small{font-size:10px;color:var(--muted);margin-bottom:2px}.chosen-facility strong{font-size:15px}.chosen-facility span{font-size:11px;color:var(--muted);margin-top:3px}#delivery-time-exact{margin-top:8px}.select-action{background:#111!important;border-color:#111!important;color:#fff!important}.order-product-card.selected .select-action{background:#405846!important;border-color:#405846!important}
@media(max-width:640px){.facility-result-columns,.mini-result-columns{grid-template-columns:1fr}.facility-result-group.funeral,.mini-result-group.funeral{order:1}.facility-result-group.wedding,.mini-result-group.wedding{order:2}.facility-result{flex-direction:row!important;align-items:center!important}.facility-result a{width:auto!important}.mini-result{align-items:center}.mini-select-label{min-width:58px}}

/* v1.3.6 Kinghaim-style typed facility search */
.facility-result-columns.single-column,.mini-result-columns.single-column{grid-template-columns:minmax(0,1fr)!important}
.facility-result-columns.single-column .facility-result-group,.mini-result-columns.single-column .mini-result-group{width:100%;grid-column:1/-1}
.facility-result-columns.single-column .facility-result{width:100%}
@media(min-width:641px){.facility-result-columns.single-column .facility-result-list{grid-template-columns:1fr}.mini-result-columns.single-column{max-width:100%}}

/* v1.3.10 product selection clarity */
.product-kind-badge{display:none!important}
.product-order-btn{display:flex!important;align-items:center!important;justify-content:center!important;margin-top:13px!important;padding:12px 16px!important;min-height:46px!important;background:#111!important;border:1px solid #111!important;color:#fff!important;text-decoration:none!important;font-size:14px!important;font-weight:800!important;line-height:1.25!important;letter-spacing:.01em!important}
.product-order-btn span{display:inline!important;min-width:0!important;height:auto!important;border:0!important;color:#fff!important;padding:0!important}
.product-order-btn b{display:none!important}
.order-product-card{display:flex;align-items:stretch;border:1px solid var(--line);background:#fff;min-height:112px}
.order-product-card .product-select-toggle{display:grid!important;grid-template-columns:96px minmax(0,1fr);grid-template-rows:auto auto 1fr;width:100%;padding:8px!important;column-gap:12px;align-items:center}
.order-product-card .product-select-toggle img{grid-column:1;grid-row:1/4;width:96px!important;height:96px!important;aspect-ratio:1/1!important;object-fit:cover;border-radius:2px}
.order-product-card .product-select-toggle strong{grid-column:2;grid-row:1;margin:0!important;padding:0!important;font-size:13px!important;line-height:1.35;min-height:0!important}
.order-product-card .product-select-toggle b{grid-column:2;grid-row:2;margin-top:5px;padding:0!important;font-size:14px!important}
.order-product-card .select-action{grid-column:2;grid-row:3;width:100%;box-sizing:border-box;margin:8px 0 0!important;min-height:42px!important;padding:10px 16px!important;background:#111!important;border:2px solid #111!important;color:#fff!important;font-size:14px!important;font-weight:800!important;line-height:1.2!important}
.order-product-card.restricted{display:none!important}
@media(max-width:640px){.order-product-group .order-products{grid-template-columns:1fr!important}.order-product-card .product-select-toggle{grid-template-columns:82px minmax(0,1fr);column-gap:10px}.order-product-card .product-select-toggle img{width:82px!important;height:82px!important}.order-product-card .select-action{min-height:40px!important;padding:9px 14px!important;font-size:13px!important}.product-order-btn{min-height:44px!important;padding:11px 14px!important;font-size:13px!important}}

/* v1.3.11 facility type + compact mobile products */
.order-product-card.facility-type-hidden{display:none!important}.order-product-group[hidden]{display:none!important}
@media(max-width:640px){.order-product-columns{display:block!important}.order-product-group{padding:8px!important;margin:0}.order-product-group .order-products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.order-product-card{min-height:0!important}.order-product-card .product-select-toggle{display:block!important;padding:6px!important}.order-product-card .product-select-toggle img{width:100%!important;height:auto!important;aspect-ratio:1/1!important}.order-product-card .product-select-toggle strong{margin-top:6px!important;font-size:11px!important}.order-product-card .product-select-toggle b{margin-top:3px!important;font-size:12px!important}.order-product-card .select-action{margin-top:7px!important;min-height:40px!important;padding:10px 8px!important}.order-product-group-head{margin-bottom:8px!important}}


/* v1.3.12 quick-order 4-column desktop + polished mobile cards */
.order-product-columns{display:block!important;margin-top:18px!important}
.order-product-group{width:100%!important;margin:0 0 18px!important;padding:14px!important}
.order-product-group .order-products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
.order-product-card{min-width:0!important;min-height:0!important;border:1px solid #e5e0d8!important;background:#fff!important}
.order-product-card .product-select-toggle{display:flex!important;flex-direction:column!important;height:100%!important;padding:8px!important;gap:0!important}
.order-product-card .product-select-toggle img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:cover!important;border-radius:2px!important}
.order-product-card .product-select-toggle strong{width:100%!important;margin:9px 0 0!important;padding:0 2px!important;min-height:38px!important;font-size:12px!important;line-height:1.4!important}
.order-product-card .product-select-toggle b{width:100%!important;margin:4px 0 0!important;padding:0 2px!important;font-size:14px!important}
.order-product-card .select-action{width:100%!important;margin:9px 0 0!important;padding:11px 10px!important;min-height:44px!important;font-size:13px!important}
@media(max-width:900px){.order-product-group .order-products{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:640px){
 .order-product-group{padding:8px!important;margin-bottom:12px!important;background:#faf9f6!important}
 .order-product-group .order-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 .order-product-card{border-radius:5px!important;overflow:hidden!important;box-shadow:0 2px 8px rgba(30,26,20,.04)!important}
 .order-product-card .product-select-toggle{padding:7px!important}
 .order-product-card .product-select-toggle img{aspect-ratio:1/1!important;border-radius:3px!important}
 .order-product-card .product-select-toggle strong{margin-top:7px!important;padding:0!important;min-height:34px!important;font-size:11.5px!important;line-height:1.35!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
 .order-product-card .product-select-toggle b{margin-top:3px!important;padding:0!important;font-size:13px!important}
 .order-product-card .select-action{margin-top:7px!important;min-height:42px!important;padding:10px 6px!important;font-size:13px!important;border-radius:2px!important}
 .order-product-group-head{padding:3px 1px 8px!important}
 .order-product-group-head h3{font-size:17px!important}
}


/* v1.3.13 definitive quick-order product layout */
.order-page .product-step .order-content{width:100%;min-width:0;}
.order-page .product-step .order-product-columns{display:block!important;width:100%!important;max-width:none!important;}
.order-page .product-step .order-product-group{display:block;width:100%!important;max-width:none!important;}
.order-page .product-step .order-product-group .order-products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important;gap:12px!important;}
@media (max-width:900px){
  .order-page .product-step .order-product-group .order-products{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media (max-width:640px){
  .order-page .product-step .order-product-group .order-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
}

/* v1.3.14 ribbon direct input */
.ribbon-custom-input{display:block;width:100%;margin-top:8px!important;border:1px solid var(--ink)!important;background:#fff!important;min-height:46px;padding:9px 11px}.ribbon-custom-input[hidden]{display:none!important}

/* v1.3.28 header phone */
.brand-phone strong{font-size:20px;font-weight:800;letter-spacing:-.02em}
@media(max-width:900px){.brand-phone strong{font-size:17px}}
@media(max-width:520px){.brand-phone strong{font-size:15px}.brand-phone{padding-left:9px}}

/* v1.3.29 — fixed logo/header area */
.site-header{
  position:sticky!important;
  top:0!important;
  z-index:9999!important;
  width:100%!important;
  background:#fff!important;
}
.header-inner{background:#fff!important}
body.admin-bar .site-header{top:32px!important}
@media(max-width:782px){
  body.admin-bar .site-header{top:0!important}
}


/* v1.3.31 — fixed full public header while scrolling */
.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:10000!important;
  background:#fff!important;
  box-shadow:0 2px 12px rgba(0,0,0,.07)!important;
}
.site-header .header-inner{
  background:#fff!important;
}
body{
  padding-top:84px!important;
}
body.admin-bar .site-header{
  top:32px!important;
}
body.admin-bar{
  padding-top:116px!important;
}
.mobile-nav{
  z-index:10001!important;
}
@media(max-width:900px){
  body{padding-top:68px!important;}
  body.admin-bar{padding-top:68px!important;}
  body.admin-bar .site-header{top:0!important;}
  .mobile-nav{top:68px!important;}
}


/* v1.3.32 — facility restrictions are advisory only */
#facility-restriction{
  margin:14px 0 18px!important;
  padding:14px 16px!important;
  border:1px solid #d9c89a!important;
  border-left:4px solid #9b7b2f!important;
  border-radius:8px!important;
  background:#fffaf0!important;
  color:#3f3521!important;
}
#facility-restriction strong{display:block!important;font-size:14px!important;margin-bottom:5px!important}
#facility-restriction p{margin:0!important;line-height:1.55!important}
.order-product-card.restricted{display:block!important;opacity:1!important;pointer-events:auto!important}
.facility-type-hidden{display:none!important}

/* v1.3.36 complete business footer */
.footer-complete{display:grid;gap:18px}
.footer-policy{display:flex;gap:0;flex-wrap:wrap}
.footer-policy a{display:inline-flex;align-items:center;color:inherit;text-decoration:none;font-size:13px}
.footer-policy a+a:before{content:"";width:1px;height:11px;background:currentColor;opacity:.25;margin:0 12px}
.footer-business{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;line-height:1.65;opacity:.78}
.footer-business span{white-space:normal}
.footer-business b{font-weight:700;margin-right:5px}
.footer-business a{color:inherit;text-decoration:none}
.footer-notice{font-size:11px!important;opacity:.6;margin:0!important}
@media(max-width:640px){
 .footer-complete{gap:14px}
 .footer-policy{gap:8px 0}
 .footer-business{display:grid;gap:3px;font-size:11px}
}

/* v1.3.40 discreet footer admin access */
.footer-admin-access{margin-top:2px;display:flex;align-items:center;gap:7px;font-size:10px;opacity:.42}
.footer-admin-access a{text-decoration:none;color:inherit}
.footer-admin-access a:hover{opacity:1;text-decoration:underline}
@media(max-width:640px){.footer-admin-access{font-size:11px;padding-top:3px}}

/* Order lookup retention notice */
.lookup-retention-notice{display:inline-block!important;margin:8px 0 0!important;padding:8px 12px!important;border:1px solid var(--line);background:#faf9f6;color:#5f605a!important;font-size:12px!important;font-weight:700!important;line-height:1.45!important}
@media(max-width:520px){.lookup-retention-notice{display:block!important;margin:10px auto 0!important;padding:9px 10px!important;font-size:11px!important}}


/* v1.3.55 — Order form 01~05 premium framed sections */
.order-form .order-section,
form.order-form .order-section,
.order-section{
  position:relative!important;
  border:2px solid #20282d!important;
  border-radius:16px!important;
  background:#fff!important;
  padding:28px 26px!important;
  margin:22px 0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  box-shadow:0 2px 8px rgba(20,28,32,.035)!important;
}

/* Remove the old horizontal divider so each section reads as one card */
.order-form .order-section,
form.order-form .order-section{
  border-top:2px solid #20282d!important;
  border-bottom:2px solid #20282d!important;
}

.order-section .order-num{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:11px!important;
  background:#20282d!important;
  color:#fff!important;
  border:0!important;
  font-size:14px!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1!important;
  margin:0!important;
  box-sizing:border-box!important;
}

.order-section .order-content h2{
  color:#182126!important;
  font-weight:800!important;
}

@media screen and (max-width:782px){
  .order-form .order-section,
  form.order-form .order-section,
  .order-section{
    border:2px solid #20282d!important;
    border-radius:14px!important;
    padding:20px 16px!important;
    margin:16px 0!important;
  }
  .order-section .order-num{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    border-radius:9px!important;
    font-size:13px!important;
  }
}


/* v1.3.59 — 지역 드롭다운 제거. 텍스트 검색/탭/결과 기능은 유지 */
.directory-search .region-selects,
.facility-search .region-selects,
.snf-directory-search .region-selects,
#snf-region-row,
.snf-region-row {
  display:none!important;
}

/* 실제 지역 select 숨김 */
#facility-sido,
#facility-sigungu{display:none!important;}
.snf-search-filters:has(#facility-sido),
.snf-search-filters:has(#facility-sigungu){display:none!important;}

/* v1.3.62 — current DB counts + exact deduped search counts */
.facility-dataset-count,.facility-result-count{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;margin:12px 0;padding:10px 12px;border:1px solid #d8dde0;border-radius:10px;background:#f8f9f9;color:#4a555b;font-size:12px;line-height:1.35;box-sizing:border-box}
.facility-dataset-count strong,.facility-result-count strong{color:#111;font-size:13px;font-weight:800}
.facility-result-group h3 small{margin-left:5px;color:#70787d;font-size:11px;font-weight:700}
@media(max-width:782px){.facility-dataset-count,.facility-result-count{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;padding:10px 11px}.facility-dataset-count strong,.facility-result-count strong{grid-column:1/-1}}

/* v1.3.68 — order facility search removed */
.inline-facility-search,
#order-facility-results,
#facility-restriction,
.mini-results,
.mini-result-columns,
.chosen-facility{display:none!important}

/* v1.3.77 — bulk order sender phrases */
.add-sender-btn{margin-top:10px;border:1px solid #222;border-radius:10px;background:#fff;padding:10px 14px;font-weight:700;cursor:pointer}
.sender-help{display:block;margin-top:7px;opacity:.72}
.extra-sender-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end;margin-top:10px}
.extra-sender-row label{margin:0}
.remove-sender-btn{height:44px;padding:0 12px;border:1px solid #ccc;border-radius:9px;background:#fff;cursor:pointer}

/* v1.3.78 — bulk multi-product order */
.bulk-product-add{margin-top:16px}
.add-product-btn{width:100%;padding:12px 14px;border:1px solid #222;border-radius:10px;background:#fff;font-weight:800;cursor:pointer}
.add-product-picker{margin-top:12px;padding:14px;border:1px solid #e5e5e5;border-radius:12px;background:#fafafa}
.add-product-picker h3{margin:0 0 12px}
.compact-products{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.bulk-added-options{margin-top:18px}

/* v1.3.79 — easier bulk-order UX */
.add-sender-btn{width:100%;min-height:44px}
.extra-sender-row{grid-template-columns:1fr 42px;align-items:end}
.extra-sender-row label span{display:block;margin-bottom:5px;font-weight:700}
.remove-sender-btn{width:42px;padding:0;font-size:22px;line-height:1}

/* v1.3.80 — quick-order sender add controls */
.selected-option-panel .add-sender-btn{margin-top:10px}
.selected-option-panel .sender-help{margin-bottom:4px}

/* v1.3.81 — one unified order form for every entry route */
.selected-product-options .selected-option-panel{margin-top:12px}

/* v1.3.82 — preselected product enters cleanly without reopening the whole catalog */
.compact-selected-product{margin-bottom:12px}
.show-product-picker-btn{width:100%;min-height:44px;padding:11px 14px;border:1px solid #222;border-radius:10px;background:#fff;font-weight:800;cursor:pointer;margin-bottom:12px}
.order-product-picker[hidden]{display:none!important}

/* v1.3.83 — 보내는 분 추가 입력칸을 기본 입력칸과 동일한 전체 폭으로 */
.extra-senders{width:100%}
.extra-sender-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 52px;
  gap:12px;
  width:100%;
  align-items:end;
  margin-top:12px;
}
.extra-sender-row label{
  display:block;
  width:100%;
  min-width:0;
}
.extra-sender-row label input{
  display:block;
  width:100%!important;
  max-width:none!important;
  min-width:0;
  box-sizing:border-box;
}
.extra-sender-row .remove-sender-btn{
  width:52px;
  min-width:52px;
  height:58px;
  margin:0;
}
@media (max-width:640px){
  .extra-sender-row{grid-template-columns:minmax(0,1fr) 46px;gap:8px}
  .extra-sender-row .remove-sender-btn{width:46px;min-width:46px}
}

/* v1.3.84 — 보내는 분 추가 모바일 UX 정리 */
.extra-sender-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 44px;
  gap:8px;
  align-items:center;
  width:100%;
  padding:10px 10px 10px 12px;
  margin-top:10px;
  border:1px solid #d9d9d9;
  border-radius:12px;
  background:#fff;
  box-sizing:border-box;
}
.extra-sender-row label{
  display:block;
  width:100%;
  min-width:0;
  margin:0;
}
.extra-sender-row label span{
  display:block;
  margin:0 0 6px;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
}
.extra-sender-row label input{
  width:100%!important;
  max-width:none!important;
  min-width:0;
  height:44px;
  padding:0 12px;
  border:1px solid #dcdcdc;
  border-radius:9px;
  box-sizing:border-box;
}
.extra-sender-row .remove-sender-btn{
  width:44px;
  min-width:44px;
  height:44px;
  margin:18px 0 0;
  padding:0;
  border:1px solid #d7d7d7;
  border-radius:9px;
  background:#fafafa;
  font-size:18px;
  line-height:1;
  cursor:pointer;
}
.add-sender-btn{
  width:100%;
  min-height:46px;
  margin-top:12px;
  border-radius:11px;
  font-size:15px;
}
.sender-help{
  margin-top:6px;
  font-size:12px;
  line-height:1.4;
}

@media (max-width:640px){
  .extra-sender-row{
    grid-template-columns:1fr;
    gap:8px;
    padding:10px;
  }
  .extra-sender-row .remove-sender-btn{
    width:100%;
    min-width:0;
    height:38px;
    margin:0;
    font-size:14px;
  }
  .extra-sender-row .remove-sender-btn::before{
    content:'삭제';
  }
  .extra-sender-row .remove-sender-btn{
    font-size:0;
  }
  .extra-sender-row .remove-sender-btn::before{
    font-size:13px;
    font-weight:700;
  }
}

/* v1.3.85 — 선택한 상품을 한눈에 보여주는 요약 영역 */
.selected-products-summary{margin:0 0 18px;padding:14px;border:1px solid #d8d8d8;border-radius:14px;background:#fff}
.selected-products-summary-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.selected-products-summary-head strong{font-size:18px}
.selected-products-count{font-size:13px;font-weight:800;color:#666}
.selected-products-empty{margin:0;color:#777;font-size:13px}
.selected-products-list{display:grid;gap:8px}
.selected-summary-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px;border:1px solid #ececec;border-radius:11px;background:#fafafa}
.selected-summary-item img{width:54px;height:54px;object-fit:cover;border-radius:8px}
.selected-summary-copy{min-width:0}
.selected-summary-copy strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.selected-summary-copy span{display:block;margin-top:3px;font-size:12px;color:#666}
.selected-summary-remove{height:38px;padding:0 10px;border:1px solid #d6d6d6;border-radius:8px;background:#fff;font-weight:700;cursor:pointer}
.go-order-write-btn{width:100%;min-height:46px;margin-top:12px;border:0;border-radius:10px;background:#20272b;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:640px){
  .selected-summary-item{grid-template-columns:46px minmax(0,1fr) auto;gap:8px}
  .selected-summary-item img{width:46px;height:46px}
  .selected-summary-remove{padding:0 8px}
}

/* v1.3.86 — 반복 상품 추가 동선 */
.selected-products-summary + .show-product-picker-btn{
  width:100%;
  min-height:48px;
  margin:0 0 14px;
  border:1px solid #20272b;
  border-radius:11px;
  background:#fff;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
}

/* v1.3.87 — 선택 상품 수량 +/- */
.selected-summary-item{
  grid-template-columns:54px minmax(0,1fr) auto auto;
}
.selected-summary-qty{
  display:grid;
  grid-template-columns:34px 34px 34px;
  align-items:center;
  justify-content:center;
  border:1px solid #d9d9d9;
  border-radius:9px;
  overflow:hidden;
  background:#fff;
}
.selected-summary-qty button{
  width:34px;
  height:36px;
  border:0;
  background:#fff;
  font-size:20px;
  cursor:pointer;
}
.selected-summary-qty strong{
  display:flex;
  align-items:center;
  justify-content:center;
  height:36px;
  border-left:1px solid #e4e4e4;
  border-right:1px solid #e4e4e4;
  font-size:14px;
}
@media(max-width:640px){
  .selected-summary-item{
    grid-template-columns:46px minmax(0,1fr) auto;
  }
  .selected-summary-qty{
    grid-column:2/4;
    justify-self:start;
    margin-top:4px;
  }
  .selected-summary-remove{
    grid-column:3;
    grid-row:1;
  }
}

/* v1.3.88 — 달력/시간 선택 + 모바일 필수 입력 강조 */
.selected-summary-titleline{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.selected-summary-titleline strong{
  flex:1 1 auto;
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.selected-summary-titleline b{
  flex:0 0 auto;
  font-size:13px;
  white-space:nowrap;
}
.asap-choice{
  display:flex!important;
  align-items:center;
  gap:10px;
  margin-top:12px!important;
  padding:12px 14px;
  border:1px solid #d9d9d9;
  border-radius:11px;
  background:#fff;
  cursor:pointer;
}
.asap-choice input{
  width:20px!important;
  height:20px!important;
  min-width:20px;
}
.asap-choice span{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.asap-choice small{color:#777}
.asap-choice.is-disabled{
  opacity:.48;
  cursor:not-allowed!important;
  background:#f4f4f2!important;
  border-color:#e1e1dd!important;
}
.asap-choice.is-disabled input{cursor:not-allowed!important}

.order-form label > em{
  display:inline-flex;
  align-items:center;
  gap:3px;
  margin-left:4px;
  padding:2px 6px;
  border-radius:999px;
  background:#20272b;
  color:#fff!important;
  font-size:11px;
  font-style:normal;
  font-weight:800;
  line-height:1.3;
}
.order-form label > em::before{
  content:'✓';
  font-size:10px;
}

@media(max-width:640px){
  .order-form label:has(input[required]),
  .order-form label:has(select[required]){
    padding:10px;
    border:1.5px solid #20272b;
    border-radius:12px;
    background:#fbfbfa;
    box-sizing:border-box;
  }
  .order-form label:has(input[required]) > input,
  .order-form label:has(select[required]) > select{
    margin-top:7px;
    border:1.5px solid #9da5aa!important;
    background:#fff!important;
  }
  .selected-summary-titleline{gap:7px}
  .selected-summary-titleline strong{font-size:14px}
  .selected-summary-titleline b{font-size:13px;font-weight:800}
  .asap-choice{padding:11px 12px}
}

/* v1.3.89 — 선택 상품 옵션 제목/가격 정리 */
.selected-option-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.selected-option-title strong{
  min-width:0;
  font-size:16px;
}
.selected-option-title b{
  flex:0 0 auto;
  font-size:14px;
  white-space:nowrap;
}
@media(max-width:640px){
  .selected-option-title strong{font-size:15px}
  .selected-option-title b{font-size:13px}
}

/* v1.3.90 — 모바일 필수 입력 이중 사각형 제거 */
@media(max-width:640px){
  .order-form label:has(input[required]),
  .order-form label:has(select[required]){
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
  }

  .order-form label:has(input[required]) > input,
  .order-form label:has(select[required]) > select{
    width:100%!important;
    margin-top:7px;
    border:1px solid #c9c9c9!important;
    border-radius:0!important;
    background:#fff!important;
    box-sizing:border-box;
  }

  /* 받는 곳의 필수 항목은 한 줄 제목 + 한 개 입력 박스만 보이도록 */
  .order-section .field-grid > label{
    min-width:0;
  }
}

/* v1.3.52 — facility detail SEO / conversion page */
.facility-detail-page{max-width:1180px;margin:0 auto;padding:34px 22px 80px}
.facility-breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;margin:0 0 18px;color:#7c7b74;font-size:12px;white-space:nowrap;overflow:hidden}
.facility-breadcrumb a:hover{text-decoration:underline}.facility-breadcrumb strong{color:#343b37;overflow:hidden;text-overflow:ellipsis}
.facility-hero-v2{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:28px;align-items:stretch;padding:44px;border:1px solid #e3ded4;border-radius:22px;background:linear-gradient(135deg,#f8f5ee 0%,#fff 72%);box-shadow:0 12px 35px rgba(31,37,33,.05)}
.facility-label-row{display:flex;gap:7px;flex-wrap:wrap}.facility-type-pill,.facility-area-pill{display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:800}.facility-type-pill{background:#203029;color:#fff}.facility-area-pill{background:#eee8dc;color:#735c39}
.facility-hero-v2 h1{margin:17px 0 12px;font-size:clamp(30px,4vw,48px);line-height:1.16;letter-spacing:-.045em}.facility-hero-v2 h1 em{display:block;margin-top:7px;color:#8e6c3d;font-size:.55em;font-style:normal;font-weight:700;letter-spacing:-.03em}.facility-hero-copy>p{max-width:700px;margin:0;color:#62655f;font-size:15px}.facility-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:26px}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 19px;border:1px solid #cfc9bd;background:#fff;font-weight:800}
.facility-quick-card{display:flex;flex-direction:column;justify-content:center;padding:27px;border-radius:17px;background:#203029;color:#fff}.facility-quick-card small{color:#d7bd8a;font-weight:800}.facility-quick-card strong{display:block;margin:8px 0 10px;font-size:22px;line-height:1.3}.facility-quick-card p{margin:0;color:rgba(255,255,255,.78);font-size:13px}.facility-quick-card span{margin-top:22px;padding-top:15px;border-top:1px solid rgba(255,255,255,.13);color:rgba(255,255,255,.6);font-size:11px}
.facility-info-panel,.facility-products-section,.facility-seo-copy{margin-top:52px}.facility-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0 0;border-top:1px solid #dedbd3;border-left:1px solid #dedbd3}.facility-info-grid>div{min-height:105px;padding:18px;border-right:1px solid #dedbd3;border-bottom:1px solid #dedbd3;background:#fff}.facility-info-grid dt{margin-bottom:7px;color:#85837c;font-size:11px;font-weight:800}.facility-info-grid dd{margin:0;color:#262b28;font-size:14px;font-weight:700;word-break:keep-all}.facility-info-grid dd small{display:block;margin-top:5px;color:#888780;font-size:11px;font-weight:400}.facility-info-grid a{text-decoration:underline;text-underline-offset:3px}.facility-data-note{margin:10px 0 0;color:#99968e;font-size:11px}
.facility-restriction-box{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;margin-top:34px;padding:25px 28px;border:1px solid #d9c79e;border-radius:14px;background:#fffaf0}.facility-restriction-box span{color:#8e6c3d;font-size:11px;font-weight:900}.facility-restriction-box h2{margin:6px 0 0;font-size:21px}.facility-restriction-box p{margin:0;color:#554a38}.facility-restriction-box small{grid-column:2;color:#8b7d65}.facility-products-section .section-head{align-items:end}.facility-products-section .text-link{font-size:13px;font-weight:800}.facility-no-products{padding:35px;border:1px dashed #cbc5b9;background:#faf8f3;text-align:center}.facility-no-products p{color:#77736b}
.facility-seo-copy{display:grid;grid-template-columns:1.5fr .5fr;gap:35px;padding:34px;border-radius:18px;background:#f7f5f0}.facility-seo-copy h2{margin:8px 0 15px;font-size:27px}.facility-seo-copy p{color:#65665f;font-size:14px}.facility-seo-copy aside{padding-left:27px;border-left:1px solid #ded8cc}.facility-seo-copy aside strong{font-size:17px}.facility-seo-copy aside p{font-size:12px}.facility-seo-copy aside a{font-size:13px;font-weight:800}
.facility-bottom-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:42px;padding:31px 35px;background:#1d2b25;color:#fff}.facility-bottom-cta small{color:#d8ba80;font-weight:800}.facility-bottom-cta h2{margin:4px 0;font-size:25px}.facility-bottom-cta p{margin:0;color:rgba(255,255,255,.68);font-size:13px}.facility-bottom-cta .btn-primary{background:#fff;color:#1d2b25;white-space:nowrap}.facility-not-found{max-width:900px;margin:auto;padding:80px 22px;text-align:center}
@media(max-width:800px){.facility-detail-page{padding:22px 15px 60px}.facility-hero-v2{grid-template-columns:1fr;padding:26px 20px;border-radius:16px}.facility-quick-card{padding:21px}.facility-info-grid{grid-template-columns:1fr 1fr}.facility-restriction-box{grid-template-columns:1fr;gap:12px}.facility-restriction-box small{grid-column:1}.facility-seo-copy{grid-template-columns:1fr;padding:25px 20px}.facility-seo-copy aside{padding:20px 0 0;border-left:0;border-top:1px solid #ded8cc}.facility-bottom-cta{align-items:flex-start;flex-direction:column;padding:27px 22px}.facility-bottom-cta .btn-primary{width:100%}}
@media(max-width:520px){.facility-hero-v2 h1{font-size:30px}.facility-hero-actions>a{width:100%}.facility-info-grid{grid-template-columns:1fr}.facility-info-grid>div{min-height:0}.facility-products-section{margin-top:38px}.facility-products-section .section-head{display:block}.facility-products-section .text-link{display:inline-block;margin-top:8px}}
\n\n/* v1.3.65 — 배송 날짜 전용 커스텀 달력 / 시간 입력 완전 분리 */
.delivery-calendar{position:relative;margin-top:6px;z-index:8}
.delivery-calendar input[type="hidden"]{display:none!important}
.delivery-date-trigger{
  width:100%;min-height:58px;border:1px solid #d8d4ca;border-radius:14px;
  padding:9px 14px 9px 16px;background:linear-gradient(180deg,#fff 0%,#fbfaf7 100%);
  display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;
  box-shadow:0 5px 16px rgba(28,36,30,.055);cursor:pointer;color:#20231f;
}
.delivery-date-trigger:hover,.delivery-date-trigger:focus-visible{border-color:#839487;box-shadow:0 0 0 3px rgba(64,88,70,.10),0 7px 20px rgba(28,36,30,.07);outline:0}
.delivery-date-trigger-copy{display:grid;gap:1px;min-width:0}.delivery-date-trigger-copy small{font-size:10px;color:#8a8a84;font-weight:700}.delivery-date-trigger-copy strong{font-size:15px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.delivery-calendar-icon{width:36px;height:36px;border-radius:10px;flex:0 0 36px;background:#eef2ed;position:relative;border:1px solid #d6ddd7}
.delivery-calendar-icon:before{content:'';position:absolute;left:9px;right:9px;top:11px;bottom:8px;border:2px solid #405846;border-radius:3px}
.delivery-calendar-icon:after{content:'';position:absolute;left:9px;right:9px;top:15px;border-top:2px solid #405846;box-shadow:4px -7px 0 -3px #405846,13px -7px 0 -3px #405846}
.delivery-calendar-popover{position:absolute;left:0;top:calc(100% + 9px);width:min(350px,calc(100vw - 34px));padding:16px;background:#fff;border:1px solid #ded8cc;border-radius:18px;box-shadow:0 22px 55px rgba(24,31,26,.18);z-index:100}
.delivery-calendar-popover[hidden]{display:none!important}
.delivery-calendar-head{height:38px;display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:7px;margin-bottom:10px}.delivery-calendar-head>strong{text-align:center;font-size:16px;letter-spacing:-.03em}
.delivery-calendar-nav{width:34px;height:34px;border:0;border-radius:10px;background:#f3f1ec;color:#405846;font-size:25px;line-height:1;cursor:pointer}.delivery-calendar-nav:hover:not(:disabled){background:#405846;color:#fff}.delivery-calendar-nav:disabled{opacity:.25;cursor:default}
.delivery-calendar-week,.delivery-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.delivery-calendar-week{margin-bottom:5px}.delivery-calendar-week span{text-align:center;font-size:10px;font-weight:800;color:#95928b;padding:4px 0}.delivery-calendar-week span:first-child{color:#b06b67}
.delivery-calendar-day{aspect-ratio:1;border:0;border-radius:10px;background:transparent;font-size:12px;font-weight:800;color:#343733;cursor:pointer;position:relative}.delivery-calendar-day:hover:not(:disabled){background:#eef2ed;color:#263b30}.delivery-calendar-day.is-today:not(.is-selected):after{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:#98765e;bottom:5px;left:50%;transform:translateX(-50%)}.delivery-calendar-day.is-selected{background:#405846!important;color:#fff!important;box-shadow:0 5px 14px rgba(64,88,70,.26)}.delivery-calendar-day:disabled,.delivery-calendar-day.is-outside{color:#d2d0ca;cursor:default;background:transparent}.delivery-calendar-day.is-empty{visibility:hidden}
.delivery-calendar-foot{margin-top:11px;padding-top:10px;border-top:1px solid #eeeae2;color:#8c8981;font-size:10px;text-align:center}
#delivery-time-clock{min-height:58px!important;border:1px solid #d8d4ca!important;border-radius:14px!important;padding:0 16px!important;font-size:15px;font-weight:700;background:#fff!important;box-shadow:0 5px 16px rgba(28,36,30,.035);-webkit-appearance:none!important;appearance:none!important}
#delivery-time-clock:focus{border-color:#839487!important;box-shadow:0 0 0 3px rgba(64,88,70,.10)!important;outline:0}
#delivery-time-clock::placeholder{font-weight:500;color:#aaa}#delivery-time-clock:disabled{background:#f1f1ee!important;color:#999!important;cursor:not-allowed}
.payhere-badge{display:inline-flex;align-items:center;margin-left:6px;padding:3px 7px;border-radius:999px;background:#405846;color:#fff;font-size:10px;font-weight:900;line-height:1.25;vertical-align:2px;white-space:nowrap}
@media(max-width:520px){.delivery-date-trigger,#delivery-time-clock{min-height:54px!important}.delivery-calendar-popover{position:fixed;left:12px;right:12px;top:50%;transform:translateY(-50%);width:auto;max-width:390px;margin:auto;padding:17px;border-radius:20px}.delivery-calendar-day{font-size:13px}.payhere-badge{display:inline-flex;margin-left:4px;font-size:9px;padding:3px 6px}}


/* v1.3.70 — calendar directly below date + quantity stepper */
.delivery-calendar{position:relative!important;overflow:visible!important}
.delivery-calendar-popover{position:relative!important;left:auto!important;top:auto!important;width:100%!important;max-width:420px!important;margin:10px 0 0!important;box-sizing:border-box!important;z-index:20!important}
.qty-stepper{display:grid;grid-template-columns:46px minmax(64px,90px) 46px;align-items:center;gap:6px;margin-top:7px}
.qty-stepper button{height:46px;border:1px solid #d8d4ca;border-radius:12px;background:#f6f4ef;color:#263b30;font-size:24px;font-weight:800;cursor:pointer}
.qty-stepper input{height:46px!important;text-align:center!important;font-weight:800!important;font-size:16px!important;padding:0 4px!important;margin:0!important;-moz-appearance:textfield}
.qty-stepper input::-webkit-inner-spin-button,.qty-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.selected-summary-copy small{display:block;margin-top:3px;color:#7b7b73;font-size:12px}
.order-live-total{display:block;margin-top:7px;font-size:13px;color:#536057}.order-live-total b{margin-left:6px;color:#263b30;font-size:18px}
@media(max-width:600px){.delivery-calendar-popover{max-width:none!important}.qty-stepper{grid-template-columns:44px 72px 44px}}

/* v1.3.71: 배송시간과 최대한 빠르게 옵션을 같은 줄에 배치 */
.delivery-time-inline{display:flex;align-items:stretch;gap:10px;width:100%;margin-top:6px}
.delivery-time-inline #delivery-time-clock{flex:1 1 auto;min-width:0;margin:0!important}
.delivery-time-inline .asap-choice{flex:0 0 auto;min-width:210px;margin:0!important;padding:9px 12px!important;border-radius:14px;min-height:58px;box-sizing:border-box}
.delivery-time-inline .asap-choice span{justify-content:center}
.delivery-time-inline .asap-choice strong{font-size:14px;line-height:1.2;white-space:nowrap}
.delivery-time-inline .asap-choice small{font-size:11px;line-height:1.25;white-space:nowrap}
@media(max-width:720px){.delivery-time-inline{gap:7px}.delivery-time-inline .asap-choice{min-width:168px;padding:8px 9px!important}.delivery-time-inline .asap-choice input{width:18px!important;height:18px!important;min-width:18px}.delivery-time-inline .asap-choice strong{font-size:13px}.delivery-time-inline .asap-choice small{font-size:10px}}
@media(max-width:430px){.delivery-time-inline{display:grid;grid-template-columns:minmax(0,1fr) 150px}.delivery-time-inline .asap-choice{min-width:0;width:100%;gap:7px}.delivery-time-inline .asap-choice strong{font-size:12px}.delivery-time-inline .asap-choice small{font-size:9px}}

/* v1.3.72 — 달력 가독성/블루 강조 + 날짜·시간 입력 균형 */
.delivery-calendar-day{
  font-size:16px!important;
  font-weight:800!important;
  min-height:42px;
  color:#30343a;
}
.delivery-calendar-day:hover:not(:disabled){background:#edf4ff!important;color:#1f5fae!important}
.delivery-calendar-day.is-today:not(.is-selected){color:#1769c2!important;background:#f4f8ff!important}
.delivery-calendar-day.is-today:not(.is-selected):after{background:#2f7bd8!important;width:5px;height:5px}
.delivery-calendar-day.is-selected{background:#2f73c8!important;color:#fff!important;box-shadow:0 6px 16px rgba(47,115,200,.28)!important}
.delivery-calendar-nav{color:#2f73c8!important;background:#f2f6fc!important}
.delivery-calendar-nav:hover:not(:disabled){background:#2f73c8!important;color:#fff!important}
.delivery-calendar-icon{background:#f2f6fc!important;border-color:#d6e3f4!important}
.delivery-calendar-icon:before{border-color:#2f73c8!important}
.delivery-calendar-icon:after{border-top-color:#2f73c8!important;box-shadow:4px -7px 0 -3px #2f73c8,13px -7px 0 -3px #2f73c8!important}
.delivery-date-trigger:hover,.delivery-date-trigger:focus-visible{border-color:#79a7df!important;box-shadow:0 0 0 3px rgba(47,115,200,.10),0 7px 20px rgba(28,36,30,.07)!important}

/* 배송 희망일과 배송 희망시간의 입력 박스 높이/비율을 동일하게 */
.delivery-date-trigger,#delivery-time-clock{height:58px!important;min-height:58px!important;box-sizing:border-box!important}
.delivery-time-inline{align-items:center!important}
.delivery-time-inline #delivery-time-clock{flex:1 1 0!important;width:auto!important;max-width:none!important}
.delivery-time-inline .asap-choice{height:58px!important;min-height:58px!important;display:flex!important;align-items:center!important}

@media(max-width:720px){
  .delivery-calendar-day{font-size:15px!important;min-height:40px}
  .delivery-date-trigger,#delivery-time-clock,.delivery-time-inline .asap-choice{height:54px!important;min-height:54px!important}
}
@media(max-width:430px){
  .delivery-calendar-day{font-size:15px!important;min-height:38px}
}
\n\n/* v1.3.74 — ribbon one-row layout + delivery controls exact height + calendar close fix */
.ribbon-info-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start!important}
.ribbon-info-row>label{min-width:0!important}

/* 날짜/시간의 실제 입력 컨트롤 자체를 완전히 같은 높이로 고정 */
.order-section .delivery-date-trigger,
.order-section .delivery-time-inline,
.order-section #delivery-time-clock,
.order-section .delivery-time-inline .asap-choice{
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  box-sizing:border-box!important;
}
.order-section .delivery-date-trigger{margin:0!important}
.order-section .delivery-calendar{margin-top:6px!important}
.order-section .delivery-time-inline{margin-top:6px!important;align-items:stretch!important}
.order-section #delivery-time-clock{margin:0!important;padding-top:0!important;padding-bottom:0!important}
.order-section .delivery-time-inline .asap-choice{margin:0!important}

/* hidden 속성은 어떤 반응형 규칙보다 우선해서 반드시 닫히도록 */
#delivery-calendar-popover[hidden]{display:none!important;visibility:hidden!important}
#delivery-calendar-popover:not([hidden]){visibility:visible!important}

@media(max-width:720px){
  .order-section .delivery-date-trigger,
  .order-section .delivery-time-inline,
  .order-section #delivery-time-clock,
  .order-section .delivery-time-inline .asap-choice{
    height:54px!important;min-height:54px!important;max-height:54px!important;
  }
}
@media(max-width:640px){
  .ribbon-info-row{grid-template-columns:1fr!important}
}


.snf-integrated-search-page{max-width:1180px;padding-top:46px;padding-bottom:70px}
.snf-integrated-search-page .facility-search-section{padding:0!important;max-width:none!important}
.snf-integrated-search-page .facility-search-section .section-head{display:none}
@media(max-width:800px){
  .snf-integrated-search-page{padding:28px 15px 60px}
}



/* v1.3.82 KINGHAIM-style integrated search, 사랑나눔플라워 brand */
.sl-search-page{max-width:1180px;margin:0 auto;padding:46px 20px 90px}
.sl-search-hero{text-align:center;padding:34px 24px 28px}
.sl-eyebrow{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.16em;color:#a98245;margin-bottom:8px}
.sl-search-hero h1{font-size:36px;line-height:1.25;margin:0;color:#183b32;letter-spacing:-.04em}
.sl-search-hero>p{margin:12px auto 24px;color:#66736f;font-size:16px}
.sl-search-box{max-width:760px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px}
.sl-search-box input{height:62px;border:2px solid #d9dfdc;border-radius:16px;padding:0 20px;font-size:17px;font-weight:700;outline:none;background:#fff}
.sl-search-box input:focus{border-color:#1f6b58;box-shadow:0 0 0 4px rgba(31,107,88,.09)}
.sl-search-box button{height:62px;border:0;border-radius:16px;background:#183f35;color:#fff;font-size:16px;font-weight:900;cursor:pointer}
.sl-search-stats{margin:18px auto 0;display:flex;justify-content:center;gap:18px;flex-wrap:wrap;color:#596560;font-size:14px}
.sl-search-stats span{background:#f7f5f0;border:1px solid #ebe5d8;padding:8px 12px;border-radius:999px}
.sl-search-stats strong{color:#183f35}
.sl-search-hint{font-size:12px!important;color:#8a928e!important;margin:10px auto 0!important}
.sl-section{margin-top:54px}
.sl-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.sl-section-head h2{margin:0;font-size:27px;color:#1f312c;letter-spacing:-.04em}
.sl-section-head p{margin:0;color:#7a8581;font-size:13px}
.sl-filter-tabs{display:flex;gap:7px}
.sl-filter-tabs button{border:1px solid #dfe4e1;background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;color:#60706a;cursor:pointer}
.sl-filter-tabs button.is-active{background:#183f35;border-color:#183f35;color:#fff}
.sl-result-status{min-height:24px;margin-bottom:10px;color:#66736f;font-size:14px}
.sl-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sl-place-card{display:block;text-decoration:none;color:#182421;background:#fff;border:1px solid #e4e8e6;border-radius:17px;padding:20px;transition:.15s ease}
.sl-place-card:hover{border-color:#c5d2cd;box-shadow:0 9px 26px rgba(20,44,37,.07);transform:translateY(-1px)}
.sl-place-card-top{display:flex;align-items:center;gap:9px;justify-content:space-between}
.sl-place-card-top strong{font-size:17px;letter-spacing:-.02em}
.sl-type{flex:none;font-size:11px;font-weight:900;border-radius:999px;padding:5px 8px;background:#f1f5f3;color:#49645b}
.sl-type.wedding{background:#fff1f4;color:#9b5260}
.sl-place-location{margin-top:9px;font-size:14px;font-weight:800;color:#53625d}
.sl-place-address{margin-top:4px;font-size:13px;color:#89918e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sl-place-go{margin-top:13px;font-size:13px;font-weight:900;color:#176b56}
.sl-more-wrap{text-align:center;margin-top:18px}
.sl-more-btn{min-width:150px;border:1px solid #dce3e0;background:#fff;border-radius:12px;padding:12px 20px;font-weight:900;color:#284b41;cursor:pointer}
.sl-recommended-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sl-rec-card{display:flex;flex-direction:column;text-decoration:none;background:#faf9f5;border:1px solid #ece8df;border-radius:17px;padding:20px;color:#23342f}
.sl-rec-card span{font-size:11px;font-weight:900;color:#aa8044}
.sl-rec-card strong{font-size:16px;margin-top:8px}
.sl-rec-card small{margin-top:6px;color:#7a8581}
.sl-region-group{padding:20px 0;border-top:1px solid #e9ecea}
.sl-region-group h3{margin:0 0 10px;color:#213a33;font-size:18px}
.sl-region-links{display:flex;flex-wrap:wrap;gap:7px}
.sl-region-links button{border:1px solid #e0e5e2;background:#fff;border-radius:9px;padding:8px 10px;color:#586862;cursor:pointer;font-weight:700}
.sl-region-links button:hover{border-color:#aebfb8;color:#183f35}
.sl-region-links b{color:#9a7949}
@media(max-width:760px){
 .sl-search-page{padding:26px 14px 65px}
 .sl-search-hero{padding:20px 0 22px}
 .sl-search-hero h1{font-size:28px}
 .sl-search-hero>p{font-size:14px}
 .sl-search-box{grid-template-columns:minmax(0,1fr) 80px;gap:7px}
 .sl-search-box input,.sl-search-box button{height:54px}
 .sl-search-box input{padding:0 13px;font-size:15px}
 .sl-section{margin-top:40px}
 .sl-section-head{align-items:flex-start;flex-direction:column}
 .sl-section-head h2{font-size:23px}
 .sl-result-grid{grid-template-columns:1fr}
 .sl-recommended-grid{grid-template-columns:1fr 1fr}
 .sl-place-card{padding:17px}
}
@media(max-width:480px){
 .sl-recommended-grid{grid-template-columns:1fr}
 .sl-filter-tabs{width:100%}
 .sl-filter-tabs button{flex:1}
}

/* v1.3.83 integrated-search polish + facility website home icon */
.sl-search-hero{max-width:900px;margin:0 auto}
.sl-search-box{box-shadow:0 10px 34px rgba(26,58,49,.07);border-radius:18px}
.sl-search-stats span{font-weight:700}
.sl-result-grid{gap:14px}
.sl-place-card,.sl-rec-card,.sl-region-item{position:relative;background:#fff;border:1px solid #e5e8e6;border-radius:18px;overflow:hidden}
.sl-place-card{padding:0}
.sl-place-main{display:block;padding:20px 64px 20px 20px;min-height:142px}
.sl-place-card:hover,.sl-rec-card:hover,.sl-region-item:hover{border-color:#c8d4cf;box-shadow:0 10px 28px rgba(20,44,37,.07)}
.sl-site-home{position:absolute;right:14px;top:14px;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:38px;height:38px;padding:0 10px;border:1px solid #dbe2df;border-radius:11px;background:#fff;color:#35564c;font-size:11px;font-weight:900;z-index:2}
.sl-site-home:hover{background:#f5f8f7;border-color:#b8c9c2;color:#183f35}
.sl-site-home svg{width:18px;height:18px;display:block}
.sl-rec-card{padding:0;min-height:126px}
.sl-rec-main{display:flex;flex-direction:column;padding:20px 58px 20px 20px;min-height:126px}
.sl-rec-main span{font-size:11px;font-weight:900;color:#aa8044}
.sl-rec-main strong{font-size:16px;margin-top:8px;color:#23342f}
.sl-rec-main small{margin-top:6px;color:#7a8581}
.sl-region-item{margin-bottom:10px}
.sl-region-main{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 64px 18px 18px}
.sl-region-main>span{min-width:0}
.sl-region-main small{display:block;color:#9a7949;font-weight:800}
.sl-region-main strong{display:block;margin-top:3px;font-size:16px}
.sl-region-main em{display:block;margin-top:4px;font-style:normal;color:#7a8581;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sl-region-main>b{flex:none;color:#176b56;font-size:13px}
.facility-homepage-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:0 14px;border:1px solid #d9e1dd;border-radius:10px;background:#fff;color:#31584c;font-size:13px;font-weight:800}
.facility-homepage-link:hover{background:#f5f8f7;border-color:#b9cbc3}
.facility-homepage-link svg{width:18px;height:18px}
@media(max-width:760px){
 .sl-search-hero h1{font-size:27px}
 .sl-place-main{padding:17px 54px 17px 17px}
 .sl-site-home{right:10px;top:10px;width:36px;min-width:36px;padding:0}
 .sl-site-home span{display:none}
 .sl-rec-main{padding:17px 52px 17px 17px}
 .sl-region-main{padding:16px 52px 16px 16px;align-items:flex-start}
 .sl-region-main>b{display:none}
}

/* v1.3.87: KINGHAIM-style presentation only. Search/data logic remains v1.3.84. */
.sl-search-page{max-width:1180px;margin:0 auto;padding:42px 20px 88px}
.sl-search-hero{
  max-width:920px;margin:0 auto;text-align:center;
  padding:42px 34px 34px;
  background:linear-gradient(180deg,#fbfaf6 0%,#fff 100%);
  border:1px solid #ebe7dd;border-radius:24px;
}
.sl-search-hero .sl-eyebrow{font-size:11px;letter-spacing:.18em;font-weight:900;color:#9a7650}
.sl-search-hero h1{margin:8px 0 10px;font-size:clamp(29px,4vw,40px);line-height:1.2;letter-spacing:-.045em;color:#1f3d34}
.sl-search-hero>p{margin:0 auto 24px;max-width:650px;color:#68736f;font-size:15px}
.sl-search-box{max-width:760px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:8px}
.sl-search-box input{
  height:60px;border:1px solid #d8dfdc;border-radius:14px;
  background:#fff;padding:0 18px;font-size:16px;font-weight:700;
  box-shadow:0 8px 24px rgba(31,61,52,.05);outline:none
}
.sl-search-box input:focus{border-color:#315e51;box-shadow:0 0 0 4px rgba(49,94,81,.08)}
.sl-search-box button{
  height:60px;border:0;border-radius:14px;background:#244d41;color:#fff;
  font-size:15px;font-weight:900;cursor:pointer
}
.sl-search-stats{margin-top:17px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.sl-search-stats span{
  background:#fff;border:1px solid #e7e3d9;border-radius:999px;
  padding:7px 12px;color:#6b746f;font-size:13px;font-weight:700
}
.sl-search-stats strong{color:#234b40}
.sl-search-hint{margin:9px 0 0!important;font-size:12px!important;color:#919894!important}

.sl-section{margin-top:48px}
.sl-section-head{margin-bottom:16px}
.sl-section-head h2{font-size:25px;color:#273e37}
.sl-section-head p{color:#89908d}

/* Do not show the empty SEARCH RESULTS / 0 / 0 block before the user searches. */
.sl-results-section.is-pristine{display:none!important}

/* Result cards: cleaner and easier to scan, without changing data or query behavior. */
.sl-result-grid{gap:12px}
.sl-place-card{
  border:1px solid #e5e8e6;border-radius:16px;background:#fff;
  box-shadow:0 4px 16px rgba(28,51,44,.035)
}
.sl-place-card:hover{border-color:#c7d3ce;box-shadow:0 10px 28px rgba(28,51,44,.075)}
.sl-place-main{padding:18px 58px 18px 18px}
.sl-place-card-top strong{font-size:16px;color:#263a34}
.sl-place-location{font-size:13px}
.sl-place-address{font-size:12px}
.sl-place-go{font-size:12px}

/* Recommendation area: visually light and tidy. */
.sl-recommended-grid{gap:10px}
.sl-rec-card{border:1px solid #e9e7df;border-radius:15px;background:#fcfbf8}
.sl-rec-main{padding:17px 54px 17px 17px;min-height:112px}

/* Region browser: compact, legible chips. */
.sl-region-group{padding:18px 0}
.sl-region-group h3{font-size:17px}
.sl-region-links{gap:7px}
.sl-region-links button{
  border:1px solid #e1e5e3;border-radius:9px;background:#fff;
  padding:8px 10px;font-size:12px
}

@media(max-width:760px){
  .sl-search-page{padding:24px 14px 62px}
  .sl-search-hero{padding:28px 14px 24px;border-radius:18px}
  .sl-search-hero h1{font-size:28px}
  .sl-search-box{grid-template-columns:minmax(0,1fr) 78px;gap:7px}
  .sl-search-box input,.sl-search-box button{height:54px}
  .sl-search-box input{padding:0 13px;font-size:15px}
}

/* v1.3.90 KINGHAIM-style split results */
.sl-results-section{margin-top:44px}
.sl-results-head{margin-bottom:14px}
.sl-results-head h2{margin-top:3px}
.sl-result-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.sl-result-column{border:1px solid #e4e8e6;border-radius:18px;background:#fbfcfb;padding:14px}
.sl-wedding-column{background:#fffafb}
.sl-result-column-title{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 12px;margin-bottom:11px;border-bottom:1px solid #e5e9e7}
.sl-result-column-title h3{margin:0;font-size:18px;letter-spacing:-.03em;color:#24473d}
.sl-wedding-column .sl-result-column-title h3{color:#80515c}
.sl-result-column-title strong{font-size:13px;color:#62706b}
.sl-result-column-title strong span{font-size:16px;color:#234b40}
.sl-wedding-column .sl-result-column-title strong span{color:#8b5662}
.sl-result-stack{display:grid;gap:9px}
.sl-result-stack .sl-place-card{width:100%}
.sl-column-more{text-align:center;margin-top:12px}
.sl-column-more .sl-more-btn{min-width:160px}
.sl-result-status{text-align:center;margin-top:14px;color:#78827e;font-size:13px}
@media(max-width:760px){
  .sl-result-columns{grid-template-columns:1fr;gap:14px}
}

/* v1.3.91 - 통합검색 화면 직각형 정돈 (기능/검색로직 변경 없음) */
.sl-search-page{
  max-width:1180px;
  margin:0 auto;
  padding:38px 20px 86px;
}
.sl-search-hero{
  max-width:100%;
  margin:0;
  padding:34px 28px 30px;
  border:1px solid #e5e7e3;
  border-radius:4px!important;
  background:#fff;
  box-shadow:none!important;
  text-align:center;
}
.sl-search-hero h1{
  margin:7px 0 8px;
  font-size:36px;
  line-height:1.22;
  letter-spacing:-.045em;
  color:#1f3d34;
}
.sl-search-hero>p{
  margin:0 auto 22px;
  max-width:690px;
  color:#69736f;
  font-size:15px;
}
.sl-search-box{
  max-width:780px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) 108px;
  gap:0;
  border:1px solid #cfd6d2;
  border-radius:2px!important;
  overflow:hidden;
  box-shadow:none!important;
  background:#fff;
}
.sl-search-box input{
  height:58px;
  border:0!important;
  border-radius:0!important;
  padding:0 18px;
  font-size:16px;
  font-weight:700;
  outline:none;
  box-shadow:none!important;
}
.sl-search-box input:focus{
  box-shadow:inset 0 0 0 1px #315e51!important;
}
.sl-search-box button{
  height:58px;
  border:0;
  border-left:1px solid #294f44;
  border-radius:0!important;
  background:#234b40;
  color:#fff;
  font-size:15px;
  font-weight:900;
}
.sl-search-stats{
  margin-top:15px;
  display:flex;
  justify-content:center;
  gap:0;
  flex-wrap:wrap;
}
.sl-search-stats span{
  padding:5px 14px;
  border:0!important;
  border-right:1px solid #dddeda!important;
  border-radius:0!important;
  background:transparent!important;
  color:#66716d;
  font-size:13px;
}
.sl-search-stats span:last-child{border-right:0!important}
.sl-search-hint{margin-top:8px!important}

.sl-section{margin-top:46px}
.sl-section-head{
  padding-bottom:10px;
  margin-bottom:14px;
  border-bottom:1px solid #dfe3e0;
}
.sl-section-head h2{
  margin:2px 0 0;
  font-size:25px;
  color:#273e37;
}
.sl-results-section{
  border-top:2px solid #234b40;
  padding-top:18px;
}

.sl-result-columns{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:18px;
  align-items:start;
}
.sl-result-column{
  border:1px solid #dfe4e1;
  border-radius:2px!important;
  background:#fff!important;
  padding:0;
  overflow:hidden;
}
.sl-result-column-title{
  margin:0!important;
  padding:13px 15px!important;
  border-bottom:1px solid #dfe4e1!important;
  background:#f7f8f7;
}
.sl-wedding-column .sl-result-column-title{
  background:#fbf8f8;
}
.sl-result-column-title h3{
  font-size:17px!important;
}
.sl-result-stack{
  gap:0!important;
}
.sl-result-stack .sl-place-card{
  border:0!important;
  border-bottom:1px solid #eceeec!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff;
}
.sl-result-stack .sl-place-card:last-child{
  border-bottom:0!important;
}
.sl-result-stack .sl-place-card:hover{
  background:#f8faf9;
  transform:none!important;
  box-shadow:none!important;
}
.sl-place-main{
  padding:15px 54px 15px 15px!important;
}
.sl-place-card-top strong{
  font-size:15px!important;
}
.sl-type{
  border-radius:2px!important;
  padding:3px 6px!important;
}
.sl-site-home{
  top:12px!important;
  right:12px!important;
  height:32px!important;
  min-width:32px!important;
  border-radius:2px!important;
  padding:0 7px!important;
  box-shadow:none!important;
}
.sl-column-more{
  margin:0!important;
  padding:12px;
  border-top:1px solid #e7eae8;
  background:#fafbfa;
}
.sl-more-btn{
  min-width:148px;
  padding:10px 18px;
  border:1px solid #cfd7d3!important;
  border-radius:2px!important;
  background:#fff!important;
  color:#31584d;
}

.sl-recommended-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.sl-rec-card{
  border:1px solid #e1e5e2!important;
  border-radius:2px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.sl-rec-card:hover{
  background:#f8faf9!important;
  box-shadow:none!important;
  transform:none!important;
}
.sl-rec-main{
  min-height:104px!important;
  padding:15px 48px 15px 15px!important;
}

.sl-region-group{
  padding:16px 0!important;
  border-top:1px solid #e2e5e3!important;
}
.sl-region-group h3{
  font-size:17px!important;
  margin-bottom:9px!important;
}
.sl-region-links{
  gap:5px!important;
}
.sl-region-links button{
  border:1px solid #dfe4e1!important;
  border-radius:2px!important;
  background:#fff!important;
  padding:7px 9px!important;
  font-size:12px!important;
}
.sl-region-links button:hover{
  background:#f5f7f6!important;
  border-color:#bdc9c4!important;
}

@media(max-width:900px){
  .sl-recommended-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .sl-search-page{padding:22px 12px 58px}
  .sl-search-hero{padding:24px 14px 22px}
  .sl-search-hero h1{font-size:27px}
  .sl-search-box{grid-template-columns:minmax(0,1fr) 78px}
  .sl-search-box input,.sl-search-box button{height:52px}
  .sl-result-columns{grid-template-columns:1fr;gap:14px}
}
@media(max-width:480px){
  .sl-recommended-grid{grid-template-columns:1fr!important}
}


/* v1.3.98 - 업종 지정 검색: PC 2열 카드 / 모바일 1열 */
.sl-result-columns.is-funeral-only,
.sl-result-columns.is-wedding-only{
  grid-template-columns:1fr;
}
.sl-result-columns.is-funeral-only .sl-result-column,
.sl-result-columns.is-wedding-only .sl-result-column{
  border:0!important;
  overflow:visible;
}
.sl-result-columns.is-funeral-only .sl-result-column-title,
.sl-result-columns.is-wedding-only .sl-result-column-title{
  border:1px solid #dfe4e1!important;
  margin-bottom:10px!important;
}
.sl-result-columns.is-funeral-only .sl-result-stack,
.sl-result-columns.is-wedding-only .sl-result-stack{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px 18px!important;
}
.sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card,
.sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card{
  border:1px solid #e4e7e5!important;
  border-radius:2px!important;
}
@media(max-width:760px){
  .sl-result-columns.is-funeral-only .sl-result-stack,
  .sl-result-columns.is-wedding-only .sl-result-stack{
    grid-template-columns:1fr;
    gap:8px!important;
  }
}


/* v1.4.00 - 모바일 검색결과 필터: 전체 / 장례식장 / 웨딩홀 */
.sl-mobile-result-filters{display:none}
@media(max-width:760px){
  .sl-mobile-result-filters{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:0 0 12px;
    border:1px solid #dfe4e1;
    border-radius:2px;
    overflow:hidden;
    background:#fff;
  }
  .sl-mobile-result-filters button{
    min-height:44px;
    border:0;
    border-right:1px solid #dfe4e1;
    border-radius:0;
    background:#fff;
    color:#66716d;
    font-size:14px;
    font-weight:800;
  }
  .sl-mobile-result-filters button:last-child{border-right:0}
  .sl-mobile-result-filters button.is-active{
    background:#234b40;
    color:#fff;
  }
  .sl-result-columns,
  .sl-result-columns.is-all,
  .sl-result-columns.is-funeral-only,
  .sl-result-columns.is-wedding-only{
    grid-template-columns:1fr!important;
  }
  .sl-result-stack,
  .sl-result-columns.is-funeral-only .sl-result-stack,
  .sl-result-columns.is-wedding-only .sl-result-stack{
    grid-template-columns:1fr!important;
  }
}


/* v1.4.01 - 검색결과 제목에 업종별 건수 표시 */
.sl-result-head-counts{
  display:inline;
  margin-left:7px;
  font-size:14px;
  line-height:1.5;
  font-weight:700;
  color:#69736f;
  letter-spacing:-.02em;
  white-space:normal;
}
.sl-result-head-counts b{
  font:inherit;
  color:#234b40;
}
@media(max-width:760px){
  .sl-result-head-counts{
    display:block;
    margin:5px 0 0;
    font-size:13px;
  }
}


/* v1.4.03 - 상단 주요 메뉴 프리미엄 직사각 버튼 */
.desktop-nav{
  gap:8px;
  align-items:center;
}
.desktop-nav a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 15px;
  border:1px solid #d9ddd9;
  border-radius:2px;
  background:#fff;
  color:#343a37;
  font-size:12px;
  font-weight:800;
  letter-spacing:-.025em;
  white-space:nowrap;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease;
}
.desktop-nav a:hover{
  border-color:#234b40;
  background:#f7f9f8;
  color:#234b40;
}
.mobile-nav a{
  border-radius:2px;
}


/* v1.4.06 - 하단 주문조회 영역은 v1.4.03 그대로, 조회하기 버튼만 강조 */
.lookup-band button{
  background:#b58a3b;
  color:#fff;
  border:1px solid #9c742e;
  font-weight:900;
  min-width:108px;
  cursor:pointer;
  transition:background-color .18s ease,border-color .18s ease;
}
.lookup-band button:hover{
  background:#8f6828;
  border-color:#8f6828;
}


/* v1.4.07 - 메인 원래 검색영역에 통합검색창 복원 */
.home-facility-search{
  max-width:var(--max);
  margin:auto;
  padding:58px 22px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:48px;
  align-items:end;
}
.home-search-copy h2{
  margin:7px 0 8px;
  font:500 clamp(27px,3vw,38px)/1.15 var(--serif);
  letter-spacing:-.035em;
}
.home-search-copy p{
  margin:0;
  color:var(--muted);
  font-size:13px;
}
.home-facility-search-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) 96px;
  min-height:54px;
  border:1px solid #cfd6d2;
  border-radius:2px;
  background:#fff;
}
.home-facility-search-form input{
  min-width:0;
  height:54px;
  padding:0 17px;
  border:0;
  outline:0;
  background:#fff;
  color:#222;
  font-size:14px;
}
.home-facility-search-form button{
  border:0;
  border-left:1px solid #234b40;
  border-radius:0;
  background:#234b40;
  color:#fff;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}
.home-facility-search-form button:hover{background:#173f35}
@media(max-width:760px){
  .home-facility-search{
    padding:42px 16px;
    grid-template-columns:1fr;
    gap:20px;
  }
  .home-facility-search-form{
    grid-template-columns:minmax(0,1fr) 78px;
  }
  .home-facility-search-form input{
    padding:0 12px;
    font-size:13px;
  }
}


/* v1.4.08 - 페이지 이동 시 좌우 미세 흔들림 방지 */
html{
  scrollbar-gutter:stable;
}
body{
  overflow-x:hidden;
}
@supports not (scrollbar-gutter:stable){
  html{
    overflow-y:scroll;
  }
}

/* v1.4.09 - 통합검색 페이지 진입 시 비동기 영역의 첫 화면 흔들림 방지 */
.sl-search-page .sl-search-stats.is-loading{visibility:hidden}
.sl-search-page .sl-region-section{min-height:260px}
.sl-search-page .sl-regions:empty{min-height:150px}
@media(max-width:760px){
  .sl-search-page .sl-region-section{min-height:320px}
  .sl-search-page .sl-regions:empty{min-height:210px}
}


/* v1.4.10 - 모바일 통합검색 정돈 */
.sl-region-toggle{display:none}
@media(max-width:760px){
.mobile-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px 14px 12px}
.mobile-nav a{min-width:0;padding:9px 3px;border:1px solid #d8dfdb;background:#fff;color:#263a34;font-size:12px;font-weight:800;line-height:1;letter-spacing:-.05em;text-align:center;white-space:nowrap}
.sl-search-page .sl-search-hero h1{font-size:clamp(19px,5.45vw,23px);line-height:1.2;letter-spacing:-.065em;white-space:nowrap}
.sl-search-page .sl-search-hero>p{font-size:13px;line-height:1.5;word-break:keep-all}
.sl-search-page .sl-search-box{border:2px solid #234b40;border-radius:2px;overflow:hidden;box-shadow:0 3px 12px rgba(24,58,49,.09)}
.sl-search-page .sl-search-box input{min-width:0;border:0;font-size:13px;font-weight:600}
.sl-search-page .sl-search-box button{min-width:72px;white-space:nowrap}
.sl-search-page .sl-search-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:0;white-space:nowrap}
.sl-search-page .sl-search-stats span{min-width:0;padding:0 4px;font-size:11.5px;letter-spacing:-.055em;text-align:center}
.sl-search-page .sl-search-stats strong{font-size:14px}
.sl-search-page .sl-region-section,.sl-search-page .sl-regions:empty{min-height:0}
.sl-search-page .sl-regions{display:grid;grid-template-columns:1fr;gap:7px}
.sl-search-page .sl-region-group{padding:0;border:1px solid #dde3df;border-radius:2px;background:#fff;overflow:hidden}
.sl-search-page .sl-region-group>h3{display:none}
.sl-search-page .sl-region-toggle{display:grid;grid-template-columns:1fr auto 22px;align-items:center;width:100%;min-height:48px;padding:0 13px;border:0;background:#fff;color:#203d34;text-align:left;cursor:pointer}
.sl-search-page .sl-region-toggle span{font-size:14px;font-weight:900;white-space:nowrap}
.sl-search-page .sl-region-toggle b{color:#7b8984;font-size:11px;font-weight:700;white-space:nowrap}
.sl-search-page .sl-region-toggle i{font-style:normal;font-size:19px;text-align:right}
.sl-search-page .sl-region-toggle[aria-expanded="true"]{background:#f5f8f6;border-bottom:1px solid #e0e6e2}
.sl-search-page .sl-region-links{padding:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.sl-search-page .sl-region-links[hidden]{display:none!important}
.sl-search-page .sl-region-links button{min-width:0;padding:9px 7px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}


/* v1.4.11 - 모바일 햄버거 메뉴 기본 닫힘 복구 */
@media(max-width:760px){
  .mobile-nav{
    display:none;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:6px;
    padding:10px 14px 12px;
  }
  .mobile-nav.open{
    display:grid;
  }
}


/* v1.4.12 - 시설 상세정보 모바일 2열 */
@media(max-width:520px){
  .facility-info-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .facility-info-grid>div{
    min-width:0;
    min-height:92px;
    padding:15px 14px;
  }
  .facility-info-grid>div:first-child,
  .facility-info-grid>div:nth-child(3){
    grid-column:1 / -1;
  }
  .facility-info-grid dt{
    margin-bottom:6px;
    font-size:10.5px;
  }
  .facility-info-grid dd{
    min-width:0;
    font-size:13px;
    line-height:1.45;
    overflow-wrap:anywhere;
  }
  .facility-info-grid dd small{
    font-size:10.5px;
  }
}


/* v1.4.13 - 시설 상세정보 모바일: 주소만 전체폭, 나머지는 빈칸 없이 자동 2열 */
@media(max-width:520px){
  .facility-info-grid>div:nth-child(3){
    grid-column:auto;
  }
  .facility-info-grid>div:first-child{
    grid-column:1 / -1;
  }
}


/* v1.4.14 - 모바일 배송 달력 가로 밀림/오버플로우 수정 */
@media(max-width:520px){
  .delivery-calendar-popover{
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%);
    width:calc(100vw - 30px)!important;
    max-width:350px;
    box-sizing:border-box;
  }
  .delivery-calendar-week,
  .delivery-calendar-days{
    min-width:0;
    width:100%;
    grid-template-columns:repeat(7,minmax(0,1fr));
  }
  .delivery-calendar-day{
    min-width:0;
    width:100%;
  }
}


/* v1.4.15 — 배송 달력 주말/대한민국 공휴일 색상 */
.delivery-calendar-week span:first-child{color:#d64242!important}
.delivery-calendar-week span:last-child{color:#276bc2!important}
.delivery-calendar-day.is-sunday:not(.is-selected),
.delivery-calendar-day.is-holiday:not(.is-selected){color:#d64242!important}
.delivery-calendar-day.is-saturday:not(.is-selected):not(.is-holiday){color:#276bc2!important}
.delivery-calendar-day.is-outside.is-sunday:not(.is-selected),
.delivery-calendar-day.is-outside.is-holiday:not(.is-selected){color:rgba(214,66,66,.42)!important}
.delivery-calendar-day.is-outside.is-saturday:not(.is-selected):not(.is-holiday){color:rgba(39,107,194,.42)!important}
.delivery-calendar-day.is-selected{color:#fff!important}


/* v1.4.22 — prevent public top header/menu text clipping */
.site-header,.site-header *{box-sizing:border-box}
.header-inner{overflow:visible!important}
.brand-cluster{min-width:0!important;flex:1 1 auto!important;overflow:visible!important}
.brand{min-width:0!important;flex:1 1 auto!important;overflow:visible!important}
.brand>span{min-width:0!important;overflow:visible!important}
.brand b,.brand small,.brand-phone strong{overflow:visible!important;text-overflow:clip!important;white-space:nowrap!important;line-height:1.25!important}
.brand-logo,.brand-phone,.mobile-menu-btn{flex-shrink:0!important}
.mobile-nav{overflow:visible!important}
.mobile-nav a{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.4!important}
@media(max-width:390px){.header-inner{padding-left:8px!important;padding-right:8px!important;gap:6px!important}.brand-cluster{gap:6px!important}.brand-logo{width:34px!important;height:34px!important}.brand b{font-size:14px!important}.brand small{display:none!important}.brand-phone{padding-left:4px!important}.brand-phone strong{font-size:12px!important;letter-spacing:-.2px!important}.mobile-menu-btn{font-size:20px!important;padding:4px!important}}


/* v1.4.25 — site-wide full-width mobile navigation */
@media(max-width:900px){
  .site-header{overflow:visible!important;}
  .site-header .header-inner{position:relative!important;z-index:2!important;}
  .mobile-nav{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:68px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0 14px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    max-height:0!important;
    overflow:hidden!important;
    visibility:hidden!important;
    opacity:0!important;
    transform:translateY(-5px)!important;
    background:#fff!important;
    border:0!important;
    border-top:0 solid #ececec!important;
    border-bottom:1px solid #e8e8e8!important;
    box-shadow:0 12px 24px rgba(0,0,0,.08)!important;
    transition:max-height .24s ease,opacity .18s ease,transform .18s ease,padding .24s ease,border-width .18s ease!important;
    box-sizing:border-box!important;
    z-index:10001!important;
  }
  .mobile-nav.open{
    max-height:340px!important;
    padding-top:8px!important;
    padding-bottom:10px!important;
    visibility:visible!important;
    opacity:1!important;
    transform:translateY(0)!important;
    border-top-width:1px!important;
  }
  .mobile-nav a{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:50px!important;
    padding:0 16px!important;
    margin:0!important;
    border:0!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#1d2327!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:-.025em!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    box-sizing:border-box!important;
  }
  .mobile-nav a:hover,.mobile-nav a:focus{
    background:#f5f6f7!important;
    outline:none!important;
  }
  .mobile-menu-btn{
    position:relative!important;
    flex:0 0 34px!important;
    width:34px!important;
    height:40px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    cursor:pointer!important;
    line-height:1!important;
  }
  .mobile-menu-btn[aria-expanded="true"]{
    font-size:0!important;
  }
  .mobile-menu-btn[aria-expanded="true"]:after{
    content:"×";
    display:block;
    font-size:29px;
    font-weight:300;
    line-height:1;
  }
}
@media(max-width:390px){
  .mobile-nav{padding-left:8px!important;padding-right:8px!important;}
  .mobile-nav a{min-height:48px!important;padding-left:14px!important;font-size:15px!important;}
}


/* v1.4.26 — compact right-aligned mobile navigation */
@media(max-width:900px){
  .mobile-nav{padding-left:16px!important;padding-right:16px!important;}
  .mobile-nav a{
    justify-content:flex-end!important;
    min-height:44px!important;
    padding:0 4px!important;
    font-size:16px!important;
    font-weight:700!important;
    text-align:right!important;
    letter-spacing:-.025em!important;
  }
  .mobile-nav.open{padding-top:8px!important;padding-bottom:12px!important;}
}
@media(max-width:390px){
  .mobile-nav{padding-left:12px!important;padding-right:12px!important;}
  .mobile-nav a{min-height:42px!important;padding-right:2px!important;font-size:16px!important;}
}

/* v1.4.28 — compact floating mobile navigation panel */
@media(max-width:900px){
  .site-header .mobile-nav{
    left:auto!important;
    right:12px!important;
    top:68px!important;
    width:min(248px,calc(100vw - 24px))!important;
    padding:8px 10px 10px!important;
    display:none;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:2px!important;
    background:#fff!important;
    border:1px solid #e6e6e6!important;
    border-radius:12px!important;
    box-shadow:0 10px 28px rgba(0,0,0,.12)!important;
    overflow:hidden!important;
  }
  .site-header .mobile-nav.open{display:flex!important;}
  .site-header .mobile-nav a{
    width:100%!important;
    min-height:44px!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    border-radius:8px!important;
    font-size:16px!important;
    font-weight:700!important;
    line-height:1.3!important;
    text-align:right!important;
    white-space:normal!important;
  }
  .site-header .mobile-nav a:hover,
  .site-header .mobile-nav a:focus{
    background:#f5f6f7!important;
  }
}
@media(max-width:390px){
  .site-header .mobile-nav{
    right:8px!important;
    width:min(238px,calc(100vw - 16px))!important;
  }
  .site-header .mobile-nav a{font-size:15px!important;}
}

/* v1.4.29 — slimmer right-side mobile menu */
@media(max-width:900px){
  .site-header .mobile-nav{
    right:10px!important;
    width:min(188px,calc(100vw - 20px))!important;
    padding:6px 8px 8px!important;
    border-radius:10px!important;
  }
  .site-header .mobile-nav a{
    min-height:42px!important;
    padding:0 8px!important;
    font-size:15px!important;
  }
}
@media(max-width:390px){
  .site-header .mobile-nav{
    right:8px!important;
    width:min(184px,calc(100vw - 16px))!important;
  }
}

/* v1.4.34 — maximize mobile brand/phone text without changing logo size */
@media(max-width:900px){
  .site-header .header-inner{
    gap:6px!important;
    padding-left:10px!important;
    padding-right:8px!important;
  }
  .site-header .brand-cluster{
    gap:6px!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .site-header .brand{
    gap:8px!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }
  .site-header .brand>span{min-width:0!important;}
  .site-header .brand b{
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:-.045em!important;
    white-space:nowrap!important;
  }
  .site-header .brand-phone{
    padding-left:7px!important;
    margin-left:0!important;
    flex:0 0 auto!important;
  }
  .site-header .brand-phone strong{
    font-size:18px!important;
    font-weight:800!important;
    line-height:1.15!important;
    letter-spacing:-.045em!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    flex:0 0 30px!important;
    width:30px!important;
    min-width:30px!important;
    margin-left:0!important;
    padding:0!important;
  }
}
@media(max-width:430px){
  .site-header .brand b,
  .site-header .brand-phone strong{font-size:17px!important;}
  .site-header .brand{gap:7px!important;}
  .site-header .brand-phone{padding-left:6px!important;}
}
@media(max-width:390px){
  .site-header .header-inner{gap:4px!important;padding-left:7px!important;padding-right:5px!important;}
  .site-header .brand-cluster{gap:4px!important;}
  .site-header .brand{gap:6px!important;}
  .site-header .brand b,
  .site-header .brand-phone strong{font-size:16px!important;letter-spacing:-.055em!important;}
  .site-header .brand-phone{padding-left:5px!important;}
  .site-header .mobile-menu-btn{flex-basis:28px!important;width:28px!important;min-width:28px!important;}
}
@media(max-width:350px){
  .site-header .brand b,
  .site-header .brand-phone strong{font-size:15px!important;}
}


/* v1.4.38 — restore facility region accordion + retain header tap-target fix */
@media(max-width:900px){
  .site-header .mobile-menu-btn{
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
    height:44px!important;
    margin-left:9px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:1!important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    position:relative!important;
  }
  .site-header .mobile-menu-btn:before{
    content:"";
    position:absolute;
    left:-5px;
    top:8px;
    bottom:8px;
    width:1px;
    background:#e4e4e4;
  }
}
@media(max-width:430px){
  .site-header .mobile-menu-btn{
    flex-basis:38px!important;
    width:38px!important;
    min-width:38px!important;
    margin-left:7px!important;
  }
  .site-header .brand b,
  .site-header .brand-phone strong{font-size:16.5px!important;}
}
@media(max-width:390px){
  .site-header .mobile-menu-btn{
    flex-basis:36px!important;
    width:36px!important;
    min-width:36px!important;
    margin-left:6px!important;
  }
}


/* v1.4.38 — facility-search region accordion on desktop and mobile */
.sl-search-page .sl-regions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.sl-search-page .sl-region-group{
  padding:0;
  border:1px solid #dde3df;
  border-radius:8px;
  background:#fff;
  overflow:hidden;
  align-self:start;
}
.sl-search-page .sl-region-group>h3{display:none}
.sl-search-page .sl-region-toggle{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto 22px;
  align-items:center;
  width:100%;
  min-height:52px;
  padding:0 14px;
  border:0;
  background:#fff;
  color:#203d34;
  text-align:left;
  cursor:pointer;
}
.sl-search-page .sl-region-toggle span{
  min-width:0;
  font-size:15px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sl-search-page .sl-region-toggle b{
  color:#7b8984;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.sl-search-page .sl-region-toggle i{
  font-style:normal;
  font-size:19px;
  text-align:right;
}
.sl-search-page .sl-region-toggle[aria-expanded="true"]{
  background:#f5f8f6;
  border-bottom:1px solid #e0e6e2;
}
.sl-search-page .sl-region-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  padding:9px;
}
.sl-search-page .sl-region-links[hidden]{display:none!important}
.sl-search-page .sl-region-links button{
  min-width:0;
  padding:9px 7px;
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:1100px){
  .sl-search-page .sl-regions{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .sl-search-page .sl-regions{grid-template-columns:1fr;gap:7px}
  .sl-search-page .sl-region-group{border-radius:2px}
  .sl-search-page .sl-region-toggle{min-height:48px;padding:0 13px}
  .sl-search-page .sl-region-toggle span{font-size:14px}
  .sl-search-page .sl-region-links{padding:8px}
}


/* v1.4.39 — desktop region accordion opens as a full-width horizontal panel */
@media(min-width:761px){
  .sl-search-page .sl-region-group.is-open{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    border:0;
    border-radius:0;
    background:transparent;
    overflow:visible;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-toggle{
    grid-column:1 / 2;
    min-height:52px;
    border:1px solid #dde3df;
    border-radius:8px;
    background:#f5f8f6;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-links{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:7px;
    padding:14px;
    border:1px solid #dde3df;
    border-radius:8px;
    background:#fff;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    min-height:42px;
    padding:9px 8px;
    font-size:13px;
  }
}
@media(min-width:761px) and (max-width:1100px){
  .sl-search-page .sl-region-group.is-open{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sl-search-page .sl-region-group.is-open .sl-region-links{grid-template-columns:repeat(5,minmax(0,1fr))}
}

/* v1.4.40 — larger desktop region typography; keep mobile unchanged */
@media(min-width:1101px){
  .sl-search-page .sl-region-toggle span{
    font-size:20px;
    line-height:1.25;
    letter-spacing:-.02em;
  }
  .sl-search-page .sl-region-toggle b{
    font-size:15px;
    line-height:1.2;
  }
  .sl-search-page .sl-region-toggle i{
    font-size:25px;
    line-height:1;
  }
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    font-size:17px;
    line-height:1.25;
    font-weight:800;
  }
}
@media(min-width:761px) and (max-width:1100px){
  .sl-search-page .sl-region-toggle span{font-size:18px}
  .sl-search-page .sl-region-toggle b{font-size:14px}
  .sl-search-page .sl-region-toggle i{font-size:23px}
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{font-size:16px;font-weight:800}
}

/* v1.4.42 — desktop region typography rebalance */
@media(min-width:1101px){
  .sl-search-page .sl-region-toggle span{font-size:16px!important;line-height:1.25!important;font-weight:800!important}
  .sl-search-page .sl-region-toggle b{font-size:12px!important;line-height:1.2!important}
  .sl-search-page .sl-region-toggle i{font-size:20px!important;line-height:1!important}
  .sl-search-page .sl-region-group.is-open .sl-region-links{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    min-height:44px!important;
    padding:8px 10px!important;
    font-size:16px!important;
    line-height:1.22!important;
    font-weight:800!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:keep-all!important;
  }
}
@media(min-width:761px) and (max-width:1100px){
  .sl-search-page .sl-region-toggle span{font-size:15px!important}
  .sl-search-page .sl-region-toggle b{font-size:11px!important}
  .sl-search-page .sl-region-toggle i{font-size:19px!important}
  .sl-search-page .sl-region-group.is-open .sl-region-links{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    font-size:15px!important;
    font-weight:800!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:keep-all!important;
  }
}

/* v1.4.43 — clear desktop hierarchy: province larger, city/county smaller */
@media(min-width:1101px){
  .sl-search-page .sl-region-toggle span{font-size:18px!important;line-height:1.25!important;font-weight:800!important}
  .sl-search-page .sl-region-toggle b{font-size:12px!important;line-height:1.2!important;font-weight:600!important}
  .sl-search-page .sl-region-toggle i{font-size:19px!important;line-height:1!important}
  .sl-search-page .sl-region-group.is-open .sl-region-links{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:7px!important}
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    min-height:40px!important;
    padding:7px 8px!important;
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:700!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    word-break:keep-all!important;
  }
}
@media(min-width:761px) and (max-width:1100px){
  .sl-search-page .sl-region-toggle span{font-size:17px!important;line-height:1.25!important;font-weight:800!important}
  .sl-search-page .sl-region-toggle b{font-size:11px!important;font-weight:600!important}
  .sl-search-page .sl-region-toggle i{font-size:18px!important}
  .sl-search-page .sl-region-group.is-open .sl-region-links{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}
  .sl-search-page .sl-region-links button,
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    min-height:38px!important;
    padding:7px 8px!important;
    font-size:12.5px!important;
    line-height:1.2!important;
    font-weight:700!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    word-break:keep-all!important;
  }
}

/* v1.4.44 — desktop province labels: slightly smaller and lighter */
@media(min-width:1101px){
  .sl-search-page .sl-region-toggle span{
    font-size:16px!important;
    font-weight:700!important;
    line-height:1.25!important;
    letter-spacing:-.02em!important;
  }
}
@media(min-width:761px) and (max-width:1100px){
  .sl-search-page .sl-region-toggle span{
    font-size:15px!important;
    font-weight:700!important;
    line-height:1.25!important;
  }
}

/* v1.4.58 - 지역검색 placeholder 중간 명암으로 조정 */
#home-facility-q::placeholder,
#sl-search-q::placeholder{
  color:#929a97 !important;
  opacity:1 !important;
  font-weight:400 !important;
}
#home-facility-q::-webkit-input-placeholder,
#sl-search-q::-webkit-input-placeholder{
  color:#929a97 !important;
  font-weight:400 !important;
}
#home-facility-q::-moz-placeholder,
#sl-search-q::-moz-placeholder{
  color:#929a97 !important;
  opacity:1 !important;
  font-weight:400 !important;
}

/* v1.4.77 — 100,000원 이상 상품 정품 금메달 배지 */
.product-image,.product-select-toggle,.product-detail-image{position:relative}
.snf-authentic-medal{position:absolute;z-index:8;left:8px;top:8px;width:52px;height:52px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#ffe36b 0%,#ffc928 52%,#e9a900 100%);border:2px solid #e1a000;box-shadow:0 2px 5px rgba(0,0,0,.16),inset 0 1px 1px rgba(255,255,255,.75);color:#111;line-height:1;pointer-events:none}
.snf-authentic-medal:after{content:'';position:absolute;left:9px;bottom:-9px;width:12px;height:15px;background:#e9a900;clip-path:polygon(0 0,100% 0,50% 100%);z-index:-1;box-shadow:21px 0 0 #e9a900}
.snf-authentic-medal i{font-style:normal;font-size:10px;font-weight:900;margin-bottom:2px}
.snf-authentic-medal b{font-size:16px;font-weight:950;letter-spacing:-1px;color:#080808}
@media(max-width:640px){.snf-authentic-medal{left:6px;top:6px;width:46px;height:46px}.snf-authentic-medal b{font-size:14px}.snf-authentic-medal i{font-size:9px}}


/* v1.4.78 — 주문서 상품 더보기: 정품 배지 내부 글자 중앙 정렬만 수정 */
.order-product-card .product-select-toggle .snf-authentic-medal{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;}
.order-product-card .product-select-toggle .snf-authentic-medal i{display:block!important;width:auto!important;margin:0 0 2px!important;padding:0!important;text-align:center!important;line-height:1!important;}
.order-product-card .product-select-toggle .snf-authentic-medal b{display:block!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;text-align:center!important;line-height:1!important;align-self:center!important;}

/* v1.4.85 customer order lookup detail */
.lookup-detail-card{margin:20px 0;border:1px solid var(--line);background:#faf9f6;padding:16px}.lookup-detail-card h3{margin:0 0 8px;font-size:15px}.lookup-product-detail{padding:8px 0;border-bottom:1px solid #e7e3dc}.lookup-product-detail:last-of-type{margin-bottom:4px}.lookup-detail-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;padding:9px 0;border-bottom:1px solid #ece8e1;font-size:13px;line-height:1.55}.lookup-detail-row:last-child{border-bottom:0}.lookup-detail-row>span{color:var(--muted)}.lookup-detail-row>b{font-weight:700;text-align:right;overflow-wrap:anywhere}.lookup-detail-row>b small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:400}.lookup-product-detail .lookup-detail-row:last-child{border-bottom:0}@media(max-width:520px){.lookup-detail-card{padding:13px}.lookup-detail-row{grid-template-columns:76px minmax(0,1fr);gap:10px;font-size:12px}.lookup-detail-row>b{font-size:12px}}

/* 주문서 선택한 상품 이미지 확대 */
.snf-product-image-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.82)}
.snf-product-image-modal.is-open{display:flex}
.snf-product-image-modal-inner{position:relative;display:flex;align-items:center;justify-content:center;max-width:min(92vw,900px);max-height:92vh}
.snf-product-image-modal img{display:block;width:auto!important;height:auto!important;max-width:92vw!important;max-height:88vh!important;object-fit:contain!important;background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.35)}
.snf-product-image-modal-close{position:absolute;top:-18px;right:-18px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#111;font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 3px 15px rgba(0,0,0,.25);z-index:2}
body.snf-image-modal-open{overflow:hidden}
@media(max-width:640px){.snf-product-image-modal{padding:14px}.snf-product-image-modal-inner{max-width:94vw;max-height:90vh}.snf-product-image-modal img{max-width:94vw!important;max-height:84vh!important}.snf-product-image-modal-close{top:-16px;right:-6px;width:42px;height:42px;font-size:28px}}

/* 1.4.93 확대 가능한 주문 상품 썸네일: 선택한 상품만 */
.selected-summary-item>img{cursor:zoom-in}


/* v1.4.96 — 실제 로드되는 main.css에 적용: 모바일 헤더 정돈 */
@media(max-width:520px){
  .site-header .header-inner{
    height:60px!important;
    padding-left:8px!important;
    padding-right:6px!important;
    gap:4px!important;
  }
  .site-header .brand-cluster{
    gap:4px!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
  .site-header .brand{
    gap:5px!important;
    min-width:0!important;
    flex:1 1 auto!important;
  }
  .site-header .brand-logo{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
  }
  .site-header .brand small{display:none!important;}
  .site-header .brand b{
    font-size:14px!important;
    letter-spacing:-.04em!important;
    white-space:nowrap!important;
  }
  .site-header .brand-phone{
    padding-left:4px!important;
    border-left:0!important;
    margin:0!important;
    flex:0 0 auto!important;
  }
  .site-header .brand-phone strong{
    font-size:13px!important;
    letter-spacing:-.03em!important;
    white-space:nowrap!important;
  }
  .site-header .mobile-menu-btn{
    width:28px!important;
    min-width:28px!important;
    flex:0 0 28px!important;
    margin-left:2px!important;
    padding:2px!important;
  }
  .site-header .mobile-nav{top:60px!important;}
}

/* v1.4.96 — 실제 로드되는 main.css에 적용: 모바일 메인 세로 여백 축소 */
@media(max-width:520px){
  body.home .hero-inner{
    padding-top:24px!important;
    padding-bottom:22px!important;
  }
  body.home .hero-actions{
    margin-top:18px!important;
  }
  body.home .products-section{
    padding-top:30px!important;
  }
}

/* v1.4.96 — 푸터 보조 링크 */
.footer-info-inline{
  margin-left:8px;
  color:#8d918c;
  font-size:10px;
  font-weight:400;
  opacity:.68;
  white-space:nowrap;
}
.footer-info-inline:hover{
  color:#c3c6c1;
  text-decoration:underline;
}
@media(max-width:520px){
  .footer-info-inline{
    display:inline-block;
    margin-left:6px;
    font-size:9px;
  }
}


/* v1.4.99 — 모바일 히어로 확정안
   PC는 그대로, 모바일만 로고 카드 + 플로럴 포인트 + 프리미엄 타이포로 구성
*/
@media(max-width:520px){
  body.home .premium-hero{
    position:relative!important;
    overflow:hidden!important;
    padding:0!important;
    background:
      radial-gradient(circle at 85% 18%, rgba(248,190,194,.22) 0, rgba(248,190,194,0) 28%),
      radial-gradient(circle at 72% 82%, rgba(239,204,183,.22) 0, rgba(239,204,183,0) 30%),
      linear-gradient(145deg,#fbf8f2 0%,#f7f2e9 58%,#f9f1eb 100%)!important;
  }

  /* 얇은 곡선 장식 */
  body.home .premium-hero:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    width:210px!important;
    height:210px!important;
    right:-82px!important;
    top:-88px!important;
    border:1px solid rgba(167,117,76,.20)!important;
    border-radius:50%!important;
    pointer-events:none!important;
  }

  /* 우하단 은은한 꽃잎 느낌 */
  body.home .premium-hero:after{
    content:""!important;
    display:block!important;
    position:absolute!important;
    width:130px!important;
    height:72px!important;
    right:-34px!important;
    bottom:-20px!important;
    border-radius:70% 30% 70% 30%!important;
    background:radial-gradient(ellipse at center, rgba(242,156,166,.24) 0%, rgba(242,156,166,.12) 45%, rgba(242,156,166,0) 72%)!important;
    transform:rotate(-18deg)!important;
    filter:blur(2px)!important;
    pointer-events:none!important;
  }

  body.home .premium-hero .hero-inner{
    position:relative!important;
    z-index:1!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 118px!important;
    grid-template-areas:
      "copy art"
      "actions art"!important;
    column-gap:14px!important;
    row-gap:18px!important;
    align-items:center!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    padding:34px 15px 32px!important;
    box-sizing:border-box!important;
  }

  body.home .premium-hero .hero-copy{
    grid-area:copy!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
  }

  body.home .premium-hero .eyebrow{
    position:relative!important;
    margin:0 0 13px!important;
    padding-left:0!important;
    font-size:9px!important;
    line-height:1.2!important;
    letter-spacing:.19em!important;
    color:#9a6f50!important;
    white-space:nowrap!important;
  }

  body.home .premium-hero h1{
    margin:0!important;
    max-width:100%!important;
    font-size:29px!important;
    line-height:1.12!important;
    letter-spacing:-.055em!important;
    font-weight:500!important;
    word-break:keep-all!important;
  }

  body.home .premium-hero h1 span{
    display:block!important;
    margin-top:3px!important;
    color:#31523e!important;
  }

  body.home .premium-hero .hero-copy>p{
    margin:17px 0 0!important;
    max-width:235px!important;
    font-size:12px!important;
    line-height:1.72!important;
    color:#6d6962!important;
    word-break:keep-all!important;
  }

  /* 실제 brand-logo.png를 쓰는 프리미엄 카드 */
  body.home .premium-hero .hero-art{
    grid-area:art!important;
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:center!important;
    width:118px!important;
    height:118px!important;
    margin:0!important;
    padding:8px!important;
    border:1px solid rgba(104,79,54,.10)!important;
    border-radius:25px!important;
    background:rgba(255,255,255,.83)!important;
    box-shadow:0 18px 36px rgba(82,56,37,.13)!important;
    box-sizing:border-box!important;
    transform:translateY(5px)!important;
  }

  body.home .premium-hero .hero-art:before{
    content:""!important;
    position:absolute!important;
    width:28px!important;
    height:14px!important;
    left:-15px!important;
    bottom:14px!important;
    border-radius:70% 30% 70% 30%!important;
    background:rgba(239,142,157,.28)!important;
    transform:rotate(-28deg)!important;
    filter:blur(.3px)!important;
  }

  body.home .premium-hero .hero-art img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:contain!important;
    border-radius:18px!important;
  }

  body.home .premium-hero .hero-actions{
    grid-area:actions!important;
    display:flex!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
  }

  body.home .premium-hero .hero-actions .btn-primary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:0!important;
    min-height:40px!important;
    height:40px!important;
    padding:0 18px!important;
    border-radius:3px!important;
    background:#121514!important;
    box-shadow:0 7px 18px rgba(18,21,20,.10)!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:-.015em!important;
  }

  body.home .premium-hero .hero-actions .btn-primary span{
    margin-left:4px!important;
    font-size:15px!important;
    font-weight:500!important;
    transform:translateY(-1px)!important;
  }

  body.home .products-section{
    padding-top:26px!important;
  }
}

@media(max-width:380px){
  body.home .premium-hero .hero-inner{
    grid-template-columns:minmax(0,1fr) 104px!important;
    column-gap:10px!important;
    padding:30px 13px 28px!important;
  }
  body.home .premium-hero h1{
    font-size:26px!important;
  }
  body.home .premium-hero .hero-copy>p{
    max-width:220px!important;
    font-size:11px!important;
  }
  body.home .premium-hero .hero-art{
    width:104px!important;
    height:104px!important;
    padding:7px!important;
    border-radius:22px!important;
  }
}


/* v1.5.00 — 모바일 히어로 최종 압축안
   [정품] 화환전문점 1줄 + 이미지 아래 CTA + 세로폭 약 15~20% 축소
   PC 변경 없음
*/
@media(max-width:520px){
  body.home .premium-hero .hero-inner{
    grid-template-columns:minmax(0,1fr) 112px!important;
    grid-template-areas:
      "copy art"
      "copy actions"!important;
    column-gap:12px!important;
    row-gap:7px!important;
    align-items:start!important;
    padding:25px 14px 22px!important;
  }

  body.home .premium-hero .hero-copy{
    align-self:start!important;
  }

  body.home .premium-hero .eyebrow{
    margin-bottom:10px!important;
    font-size:8.5px!important;
    letter-spacing:.17em!important;
  }

  /* 제목 전체를 모바일에서 2단 구성:
     첫 줄 [정품] 화환전문점 / 둘째 줄 사랑나눔플라워 */
  body.home .premium-hero h1{
    font-size:0!important;
    line-height:1!important;
    letter-spacing:0!important;
    margin:0!important;
    white-space:normal!important;
  }

  body.home .premium-hero h1::before{
    content:"[정품] 화환전문점"!important;
    display:block!important;
    white-space:nowrap!important;
    font-size:20px!important;
    line-height:1.18!important;
    letter-spacing:-.055em!important;
    font-weight:500!important;
    color:#181b19!important;
  }

  body.home .premium-hero h1 span{
    display:block!important;
    margin-top:5px!important;
    white-space:nowrap!important;
    font-size:27px!important;
    line-height:1.08!important;
    letter-spacing:-.055em!important;
    font-weight:500!important;
    color:#31523e!important;
  }

  body.home .premium-hero .hero-copy>p{
    margin-top:14px!important;
    max-width:210px!important;
    font-size:11px!important;
    line-height:1.58!important;
  }

  body.home .premium-hero .hero-art{
    grid-area:art!important;
    align-self:end!important;
    width:112px!important;
    height:112px!important;
    padding:7px!important;
    border-radius:23px!important;
    transform:none!important;
    margin-top:24px!important;
  }

  body.home .premium-hero .hero-art img{
    border-radius:17px!important;
  }

  /* CTA를 이미지 바로 아래에 배치 */
  body.home .premium-hero .hero-actions{
    grid-area:actions!important;
    align-self:start!important;
    justify-content:center!important;
    width:112px!important;
    margin:0!important;
  }

  body.home .premium-hero .hero-actions .btn-primary{
    width:112px!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 8px!important;
    border-radius:3px!important;
    font-size:10.5px!important;
    white-space:nowrap!important;
    box-shadow:0 5px 12px rgba(18,21,20,.09)!important;
  }

  body.home .premium-hero .hero-actions .btn-primary span{
    margin-left:3px!important;
    font-size:13px!important;
  }

  body.home .products-section{
    padding-top:24px!important;
  }
}

@media(max-width:380px){
  body.home .premium-hero .hero-inner{
    grid-template-columns:minmax(0,1fr) 102px!important;
    column-gap:9px!important;
    padding:23px 12px 20px!important;
  }
  body.home .premium-hero h1::before{
    font-size:18px!important;
  }
  body.home .premium-hero h1 span{
    font-size:24px!important;
  }
  body.home .premium-hero .hero-copy>p{
    max-width:195px!important;
    font-size:10.5px!important;
  }
  body.home .premium-hero .hero-art{
    width:102px!important;
    height:102px!important;
    margin-top:22px!important;
  }
  body.home .premium-hero .hero-actions{
    width:102px!important;
  }
  body.home .premium-hero .hero-actions .btn-primary{
    width:102px!important;
    font-size:10px!important;
    padding:0 6px!important;
  }
}


/* v1.5.01 — hero-actions 실제 DOM 이동
   데스크톱: 기존처럼 왼쪽 텍스트 아래
   모바일: 오른쪽 로고 이미지 바로 아래
*/
@media(min-width:521px){
  body.home .premium-hero .hero-inner{
    grid-template-columns:minmax(0,1fr) minmax(280px,420px)!important;
    grid-template-areas:
      "copy art"
      "actions art"!important;
  }
  body.home .premium-hero .hero-copy{grid-area:copy!important;}
  body.home .premium-hero .hero-art{grid-area:art!important;}
  body.home .premium-hero .hero-actions{
    grid-area:actions!important;
    justify-self:start!important;
    align-self:start!important;
    margin-top:22px!important;
  }
}

/* 1500 모바일 레이아웃에서 이제 hero-actions가 실제 direct grid child이므로 이 위치가 정상 적용됨 */
@media(max-width:520px){
  body.home .premium-hero .hero-actions{
    grid-area:actions!important;
    display:flex!important;
    width:112px!important;
    justify-content:center!important;
    align-self:start!important;
    margin:0!important;
    padding:0!important;
  }
}
@media(max-width:380px){
  body.home .premium-hero .hero-actions{width:102px!important;}
}


/* v1.5.02 — 승인안: 모바일 좌우 세로 밸런스 미세 조정
   오른쪽 로고+버튼 묶음을 '아주 조금' 위로 올려 좌측 콘텐츠와 시각적 높이를 맞춤.
   PC 변경 없음.
*/
@media(max-width:520px){
  body.home .premium-hero .hero-art{
    margin-top:15px!important; /* 1501/1500의 24px에서 9px 위로 */
  }

  body.home .premium-hero .hero-actions{
    transform:translateY(-1px)!important;
  }
}

@media(max-width:380px){
  body.home .premium-hero .hero-art{
    margin-top:14px!important; /* 좁은 화면도 같은 비율로 미세 상승 */
  }
}


/* v1.5.03 — 모바일 좌우 구조 정렬
   핵심: 오른쪽 이미지+버튼을 hero-side 하나의 묶음으로 만들고
   픽셀 보정 없이 왼쪽 묶음과 수직 중앙 정렬.
*/

/* PC에서는 wrapper가 레이아웃에 개입하지 않아 기존 PC 디자인 유지 */
@media(min-width:521px){
  body.home .premium-hero .hero-side{
    display:contents!important;
  }
}

/* 모바일: 화면폭이 달라도 동일한 정렬 원칙 */
@media(max-width:520px){
  body.home .premium-hero .hero-inner{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) clamp(102px,31vw,118px)!important;
    grid-template-areas:none!important;
    column-gap:clamp(9px,3vw,14px)!important;
    row-gap:0!important;
    align-items:center!important;
    padding:clamp(22px,7vw,28px) 13px clamp(20px,6vw,25px)!important;
  }

  /* 좌측은 하나의 완성된 세로 묶음 */
  body.home .premium-hero .hero-copy{
    grid-column:1!important;
    grid-row:1!important;
    align-self:center!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }

  /* 우측 이미지+버튼 역시 하나의 완성된 세로 묶음 */
  body.home .premium-hero .hero-side{
    grid-column:2!important;
    grid-row:1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:center!important;
    align-self:center!important;
    width:clamp(102px,31vw,118px)!important;
    min-width:0!important;
    gap:7px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  /* 이전 버전의 개별 위치보정 완전 해제 */
  body.home .premium-hero .hero-art{
    grid-area:auto!important;
    align-self:auto!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    margin:0!important;
    padding:7px!important;
    transform:none!important;
    border-radius:clamp(20px,6vw,25px)!important;
  }

  body.home .premium-hero .hero-actions{
    grid-area:auto!important;
    display:block!important;
    align-self:auto!important;
    justify-self:auto!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  body.home .premium-hero .hero-actions .btn-primary{
    width:100%!important;
    height:34px!important;
    min-height:34px!important;
    padding:0 5px!important;
    font-size:clamp(9.7px,2.9vw,10.7px)!important;
    white-space:nowrap!important;
  }

  /* 화면폭에 따라 자연스럽게 비례하도록 clamp 사용 */
  body.home .premium-hero .eyebrow{
    margin:0 0 clamp(8px,2.5vw,10px)!important;
    font-size:clamp(7.8px,2.4vw,8.6px)!important;
    letter-spacing:.16em!important;
    white-space:nowrap!important;
  }

  body.home .premium-hero h1{
    margin:0!important;
    font-size:0!important;
    line-height:1!important;
  }

  body.home .premium-hero h1::before{
    content:"[정품] 화환전문점"!important;
    display:block!important;
    white-space:nowrap!important;
    font-size:clamp(17px,5.3vw,20px)!important;
    line-height:1.18!important;
    letter-spacing:-.055em!important;
    font-weight:500!important;
    color:#181b19!important;
  }

  body.home .premium-hero h1 span{
    display:block!important;
    margin-top:4px!important;
    white-space:nowrap!important;
    font-size:clamp(23px,7.2vw,27px)!important;
    line-height:1.08!important;
    letter-spacing:-.055em!important;
    font-weight:500!important;
    color:#31523e!important;
  }

  body.home .premium-hero .hero-copy>p{
    margin:clamp(11px,3.3vw,14px) 0 0!important;
    max-width:none!important;
    font-size:clamp(10px,3vw,11px)!important;
    line-height:1.58!important;
    word-break:keep-all!important;
  }
}


/* v1.5.04 — 반응형 상단 헤더 최종안
   - 사랑나눔플라워 / 전화번호를 가능한 크게
   - 화면이 좁아질수록 clamp()로 자동 축소
   - 전화 아이콘 추가
   - 전화번호와 햄버거 사이 여유 확보
*/
@media(max-width:720px){
  .site-header .header-inner{
    height:clamp(58px,16vw,68px)!important;
    padding-left:clamp(6px,2.2vw,10px)!important;
    padding-right:clamp(7px,2.2vw,10px)!important;
    gap:clamp(4px,1.5vw,8px)!important;
  }

  .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    gap:clamp(4px,1.4vw,8px)!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }

  .site-header .brand{
    display:flex!important;
    align-items:center!important;
    gap:clamp(5px,1.6vw,8px)!important;
    flex:1 1 auto!important;
    min-width:0!important;
  }

  .site-header .brand-logo{
    width:clamp(34px,10.5vw,44px)!important;
    height:clamp(34px,10.5vw,44px)!important;
    flex:0 0 clamp(34px,10.5vw,44px)!important;
    border-radius:clamp(8px,2.6vw,11px)!important;
  }

  .site-header .brand>span{
    min-width:0!important;
    flex:0 1 auto!important;
  }

  .site-header .brand b{
    display:block!important;
    font-size:clamp(14px,4.7vw,20px)!important;
    font-weight:850!important;
    line-height:1.05!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
  }

  .site-header .brand small{
    display:none!important;
  }

  .site-header .brand-phone{
    display:inline-flex!important;
    align-items:center!important;
    gap:clamp(3px,1vw,6px)!important;
    flex:0 0 auto!important;
    padding-left:0!important;
    margin:0!important;
    border-left:0!important;
    white-space:nowrap!important;
  }

  .site-header .brand-phone:before{
    content:"☎"!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:clamp(17px,5vw,22px)!important;
    height:clamp(17px,5vw,22px)!important;
    flex:0 0 auto!important;
    border-radius:50%!important;
    background:#f51465!important;
    color:#fff!important;
    font-size:clamp(10px,3vw,13px)!important;
    font-weight:800!important;
    line-height:1!important;
  }

  .site-header .brand-phone strong{
    font-size:clamp(13px,4.45vw,19px)!important;
    font-weight:850!important;
    line-height:1.05!important;
    letter-spacing:-.045em!important;
    white-space:nowrap!important;
  }

  .site-header .mobile-menu-btn{
    flex:0 0 clamp(32px,9vw,38px)!important;
    width:clamp(32px,9vw,38px)!important;
    min-width:clamp(32px,9vw,38px)!important;
    height:44px!important;
    margin-left:clamp(7px,2.2vw,11px)!important;
    padding:0!important;
    font-size:clamp(20px,6vw,24px)!important;
  }

  .site-header .mobile-menu-btn:before{
    left:calc(-1 * clamp(5px,1.6vw,8px))!important;
    top:8px!important;
    bottom:8px!important;
  }

  .site-header .mobile-nav{
    top:clamp(58px,16vw,68px)!important;
  }
}

/* 아주 좁은 화면: 브랜드와 전화번호를 동시에 살리되 조금 더 압축 */
@media(max-width:380px){
  .site-header .header-inner{
    padding-left:5px!important;
    padding-right:5px!important;
    gap:3px!important;
  }

  .site-header .brand-cluster{
    gap:3px!important;
  }

  .site-header .brand{
    gap:4px!important;
  }

  .site-header .brand-logo{
    width:32px!important;
    height:32px!important;
    flex-basis:32px!important;
  }

  .site-header .brand b{
    font-size:clamp(13px,4.3vw,15px)!important;
  }

  .site-header .brand-phone{
    gap:3px!important;
  }

  .site-header .brand-phone:before{
    width:16px!important;
    height:16px!important;
    font-size:9px!important;
  }

  .site-header .brand-phone strong{
    font-size:clamp(12px,4vw,14px)!important;
  }

  .site-header .mobile-menu-btn{
    flex-basis:30px!important;
    width:30px!important;
    min-width:30px!important;
    margin-left:7px!important;
    font-size:20px!important;
  }
}


/* v1.5.05 — 모바일 헤더: 최대한 크게 + 겹침 방지
   화면 폭 단계별로 폰트/로고/간격을 줄여 한 줄을 유지합니다.
*/
@media(max-width:720px){
  .site-header .header-inner{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .site-header .brand-cluster{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .site-header .brand{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .site-header .brand>span{
    flex:0 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .site-header .brand b,
  .site-header .brand-phone strong{
    display:block!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  .site-header .brand-phone{
    flex:0 0 auto!important;
    min-width:0!important;
    white-space:nowrap!important;
  }

  .site-header .mobile-menu-btn{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
}

/* 넓은 모바일: 가장 크게 */
@media(min-width:431px) and (max-width:720px){
  .site-header .header-inner{
    height:64px!important;
    padding:0 10px!important;
    gap:7px!important;
  }
  .site-header .brand-cluster{gap:7px!important;}
  .site-header .brand{gap:7px!important;}
  .site-header .brand-logo{
    width:42px!important;height:42px!important;flex:0 0 42px!important;
  }
  .site-header .brand b{
    font-size:20px!important;
    letter-spacing:-.06em!important;
  }
  .site-header .brand-phone{
    gap:5px!important;
  }
  .site-header .brand-phone:before{
    width:21px!important;height:21px!important;font-size:12px!important;
  }
  .site-header .brand-phone strong{
    font-size:18px!important;
    letter-spacing:-.05em!important;
  }
  .site-header .mobile-menu-btn{
    width:36px!important;min-width:36px!important;
    margin-left:9px!important;
    font-size:23px!important;
  }
}

/* 일반 모바일 */
@media(min-width:381px) and (max-width:430px){
  .site-header .header-inner{
    height:62px!important;
    padding:0 8px!important;
    gap:5px!important;
  }
  .site-header .brand-cluster{gap:5px!important;}
  .site-header .brand{gap:5px!important;}
  .site-header .brand-logo{
    width:38px!important;height:38px!important;flex:0 0 38px!important;
  }
  .site-header .brand b{
    font-size:18px!important;
    letter-spacing:-.06em!important;
  }
  .site-header .brand-phone{
    gap:4px!important;
  }
  .site-header .brand-phone:before{
    width:19px!important;height:19px!important;font-size:11px!important;
  }
  .site-header .brand-phone strong{
    font-size:16px!important;
    letter-spacing:-.055em!important;
  }
  .site-header .mobile-menu-btn{
    width:34px!important;min-width:34px!important;
    margin-left:8px!important;
    font-size:22px!important;
  }
}

/* 작은 모바일 */
@media(min-width:351px) and (max-width:380px){
  .site-header .header-inner{
    height:60px!important;
    padding:0 6px!important;
    gap:4px!important;
  }
  .site-header .brand-cluster{gap:4px!important;}
  .site-header .brand{gap:4px!important;}
  .site-header .brand-logo{
    width:34px!important;height:34px!important;flex:0 0 34px!important;
  }
  .site-header .brand b{
    font-size:16.5px!important;
    letter-spacing:-.065em!important;
  }
  .site-header .brand-phone{
    gap:3px!important;
  }
  .site-header .brand-phone:before{
    width:17px!important;height:17px!important;font-size:10px!important;
  }
  .site-header .brand-phone strong{
    font-size:14.5px!important;
    letter-spacing:-.06em!important;
  }
  .site-header .mobile-menu-btn{
    width:31px!important;min-width:31px!important;
    margin-left:7px!important;
    font-size:21px!important;
  }
}

/* 매우 작은 모바일: 겹침 방지 최우선 */
@media(max-width:350px){
  .site-header .header-inner{
    height:58px!important;
    padding:0 5px!important;
    gap:3px!important;
  }
  .site-header .brand-cluster{gap:3px!important;}
  .site-header .brand{gap:3px!important;}
  .site-header .brand-logo{
    width:31px!important;height:31px!important;flex:0 0 31px!important;
  }
  .site-header .brand b{
    font-size:15px!important;
    letter-spacing:-.07em!important;
  }
  .site-header .brand-phone{
    gap:2px!important;
  }
  .site-header .brand-phone:before{
    width:15px!important;height:15px!important;font-size:9px!important;
  }
  .site-header .brand-phone strong{
    font-size:13.5px!important;
    letter-spacing:-.065em!important;
  }
  .site-header .mobile-menu-btn{
    width:28px!important;min-width:28px!important;
    margin-left:6px!important;
    font-size:20px!important;
  }
}


/* v1.5.12 — 모바일 메뉴 아이콘 중복 방지 */
@media(max-width:720px){
  .site-header .mobile-menu-btn[aria-expanded="true"]{
    font-size:0!important;
  }
  .site-header .mobile-menu-btn[aria-expanded="true"]:after{
    content:"×"!important;
    display:block!important;
    font-size:29px!important;
    font-weight:300!important;
    line-height:1!important;
  }
}


/* v1.5.24 — 전체 상품 카드 구분 강화 (PC + 모바일)
   메인/시설 상품목록 + 주문서 상품선택 카드 */
.product-card.product-card-premium{
  border:1.5px solid #2f2f2d!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 3px 10px rgba(0,0,0,.045)!important;
}
.product-card.product-card-premium:hover{
  border-color:#111!important;
  box-shadow:0 8px 20px rgba(0,0,0,.08)!important;
}
.order-product-card{
  border:1.5px solid #2f2f2d!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 3px 10px rgba(0,0,0,.04)!important;
}
@media(max-width:640px){
  .product-card.product-card-premium,
  .order-product-card{
    border-width:1.5px!important;
    border-radius:8px!important;
  }
}


/* v1.5.25 — 상품카드 테두리 안 전체영역 클릭 */
.product-card-premium .product-card-link-v1525{
  display:block!important;
  height:100%!important;
  color:inherit!important;
  text-decoration:none!important;
}
.product-card-premium .product-card-link-v1525:focus{
  outline:none;
}
.product-card-premium .product-card-link-v1525 .product-image{
  display:block!important;
}
.product-card-premium .product-card-link-v1525 .product-order-btn{
  cursor:pointer!important;
}


/* v1.5.27 — 전국 장례식장·웨딩홀 통합검색 색감 통일
   시설 상세페이지의 따뜻한 아이보리 + 딥그린 + 골드 팔레트를 기준으로 맞춤.
   검색/데이터/레이아웃 로직은 변경하지 않음. */
.sl-search-page{
  color:#262b28!important;
}
.sl-search-hero{
  border-color:#e3ded4!important;
  background:linear-gradient(135deg,#f8f5ee 0%,#fff 72%)!important;
}
.sl-search-hero .sl-eyebrow{
  color:#8e6c3d!important;
}
.sl-search-hero h1{
  color:#203029!important;
}
.sl-search-hero>p,
.sl-search-hint,
.sl-section-head p,
.sl-result-status{
  color:#62655f!important;
}
.sl-search-box{
  border-color:#cfc9bd!important;
  background:#fff!important;
}
.sl-search-box input{
  color:#262b28!important;
  background:#fff!important;
}
.sl-search-box input:focus{
  box-shadow:inset 0 0 0 1px #203029!important;
}
.sl-search-box button{
  border-left-color:#203029!important;
  background:#203029!important;
  color:#fff!important;
}
.sl-search-stats span{
  border-right-color:#ded8cc!important;
  color:#6f706a!important;
}
.sl-search-stats strong{
  color:#203029!important;
}

.sl-section-head{
  border-bottom-color:#dedbd3!important;
}
.sl-section-head h2,
.sl-region-group h3{
  color:#262b28!important;
}
.sl-results-section{
  border-top-color:#203029!important;
}

/* 검색결과 박스 */
.sl-result-column{
  border-color:#dedbd3!important;
  background:#fff!important;
}
.sl-result-column-title,
.sl-wedding-column .sl-result-column-title{
  border-bottom-color:#dedbd3!important;
  background:#f8f5ee!important;
}
.sl-result-column-title h3,
.sl-wedding-column .sl-result-column-title h3{
  color:#203029!important;
}
.sl-result-column-title strong{
  color:#62655f!important;
}
.sl-result-column-title strong span,
.sl-wedding-column .sl-result-column-title strong span{
  color:#8e6c3d!important;
}

.sl-result-stack .sl-place-card,
.sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card,
.sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card{
  border-color:#e3ded4!important;
  background:#fff!important;
}
.sl-result-stack .sl-place-card{
  border-bottom-color:#ece7dd!important;
}
.sl-result-stack .sl-place-card:hover,
.sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card:hover,
.sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card:hover{
  background:#faf8f3!important;
}
.sl-place-card-top strong{
  color:#262b28!important;
}
.sl-place-location{
  color:#554f45!important;
}
.sl-place-address{
  color:#8a877f!important;
}
.sl-place-go{
  color:#8e6c3d!important;
}
.sl-site-home{
  border-color:#d8d1c5!important;
  background:#fff!important;
  color:#203029!important;
}
.sl-site-home:hover{
  border-color:#bfb4a3!important;
  background:#f8f5ee!important;
  color:#203029!important;
}
.sl-column-more{
  border-top-color:#e6e0d6!important;
  background:#faf8f3!important;
}
.sl-more-btn{
  border-color:#cfc9bd!important;
  background:#fff!important;
  color:#203029!important;
}

/* 추천 시설 + 지역별 탐색 */
.sl-rec-card{
  border-color:#e3ded4!important;
  background:#faf8f3!important;
}
.sl-rec-card:hover{
  background:#f8f5ee!important;
}
.sl-rec-main span{
  color:#8e6c3d!important;
}
.sl-rec-main strong{
  color:#262b28!important;
}
.sl-rec-main small{
  color:#77736b!important;
}
.sl-region-group{
  border-top-color:#dedbd3!important;
}
.sl-region-links button{
  border-color:#dedbd3!important;
  background:#fff!important;
  color:#554f45!important;
}
.sl-region-links button:hover{
  border-color:#bfb4a3!important;
  background:#f8f5ee!important;
  color:#203029!important;
}
.sl-region-links b{
  color:#8e6c3d!important;
}

/* 상단 필터가 노출되는 경우에도 동일 팔레트 */
.sl-filter-tabs button{
  border-color:#d8d1c5!important;
  background:#fff!important;
  color:#62655f!important;
}
.sl-filter-tabs button.is-active{
  border-color:#203029!important;
  background:#203029!important;
  color:#fff!important;
}


/* v1.5.28 — 통합검색 모바일 전용 색상 통일 보강
   모바일에서 별도로 노출되는 필터/건수/단일컬럼까지 상세페이지 팔레트 강제 적용 */
@media(max-width:760px){
  .sl-search-page{
    color:#262b28!important;
    background:#fff!important;
  }
  .sl-search-hero{
    border-color:#e3ded4!important;
    background:linear-gradient(135deg,#f8f5ee 0%,#fff 72%)!important;
  }
  .sl-search-hero .sl-eyebrow,
  .sl-eyebrow{
    color:#8e6c3d!important;
  }
  .sl-search-hero h1,
  .sl-section-head h2,
  .sl-result-column-title h3,
  .sl-wedding-column .sl-result-column-title h3{
    color:#203029!important;
  }
  .sl-search-box{
    border-color:#cfc9bd!important;
    background:#fff!important;
  }
  .sl-search-box input{
    background:#fff!important;
    color:#262b28!important;
  }
  .sl-search-box button{
    background:#203029!important;
    border-left-color:#203029!important;
    color:#fff!important;
  }
  .sl-search-stats span{
    color:#62655f!important;
    border-right-color:#ded8cc!important;
  }
  .sl-search-stats strong{
    color:#8e6c3d!important;
  }

  .sl-mobile-result-filters{
    border-color:#d8d1c5!important;
    background:#fff!important;
  }
  .sl-mobile-result-filters button{
    border-right-color:#d8d1c5!important;
    background:#fff!important;
    color:#62655f!important;
  }
  .sl-mobile-result-filters button.is-active{
    background:#203029!important;
    color:#fff!important;
  }

  .sl-results-section{
    border-top-color:#203029!important;
  }
  .sl-result-head-counts{
    color:#62655f!important;
  }
  .sl-result-head-counts b{
    color:#8e6c3d!important;
  }
  .sl-result-column,
  .sl-result-columns.is-funeral-only .sl-result-column,
  .sl-result-columns.is-wedding-only .sl-result-column{
    border-color:#dedbd3!important;
    background:#fff!important;
  }
  .sl-result-column-title,
  .sl-wedding-column .sl-result-column-title,
  .sl-result-columns.is-funeral-only .sl-result-column-title,
  .sl-result-columns.is-wedding-only .sl-result-column-title{
    border-color:#dedbd3!important;
    background:#f8f5ee!important;
  }
  .sl-result-stack .sl-place-card,
  .sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card,
  .sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card{
    border-color:#e3ded4!important;
    background:#fff!important;
  }
  .sl-place-card-top strong{color:#262b28!important}
  .sl-place-location{color:#554f45!important}
  .sl-place-address{color:#8a877f!important}
  .sl-place-go{color:#8e6c3d!important}
  .sl-site-home{
    border-color:#d8d1c5!important;
    background:#fff!important;
    color:#203029!important;
  }
  .sl-column-more{
    border-top-color:#e6e0d6!important;
    background:#faf8f3!important;
  }
  .sl-more-btn{
    border-color:#cfc9bd!important;
    background:#fff!important;
    color:#203029!important;
  }

  .sl-region-group{
    border-top-color:#dedbd3!important;
  }
  .sl-region-group h3{color:#262b28!important}
  .sl-region-links button{
    border-color:#dedbd3!important;
    background:#fff!important;
    color:#554f45!important;
  }
  .sl-region-links b{color:#8e6c3d!important}
}


/* v1.5.29 — 전국 장례식장·웨딩홀 통합검색 + 시설 상세페이지
   PC/모바일 전체를 블랙·그레이 무채색 팔레트로 통일.
   기능/검색/레이아웃은 변경하지 않음. */

/* ===== 통합검색 ===== */
.sl-search-page{
  color:#161616!important;
}
.sl-search-hero{
  border-color:#d9d9d9!important;
  background:linear-gradient(135deg,#f7f7f7 0%,#fff 72%)!important;
}
.sl-search-hero .sl-eyebrow,
.sl-eyebrow{
  color:#555!important;
}
.sl-search-hero h1,
.sl-section-head h2,
.sl-region-group h3{
  color:#111!important;
}
.sl-search-hero>p,
.sl-search-hint,
.sl-section-head p,
.sl-result-status,
.sl-result-head-counts{
  color:#666!important;
}
.sl-search-box{
  border-color:#cfcfcf!important;
  background:#fff!important;
}
.sl-search-box input{
  background:#fff!important;
  color:#111!important;
}
.sl-search-box input:focus{
  border-color:#111!important;
  box-shadow:inset 0 0 0 1px #111!important;
}
.sl-search-box button{
  border-left-color:#111!important;
  background:#111!important;
  color:#fff!important;
}
.sl-search-stats span{
  border-right-color:#ddd!important;
  color:#666!important;
}
.sl-search-stats strong,
.sl-result-head-counts b{
  color:#111!important;
}

.sl-section-head{
  border-bottom-color:#ddd!important;
}
.sl-results-section{
  border-top-color:#111!important;
}

/* 모바일 필터 포함 */
.sl-filter-tabs button,
.sl-mobile-result-filters{
  border-color:#d6d6d6!important;
  background:#fff!important;
}
.sl-filter-tabs button,
.sl-mobile-result-filters button{
  color:#555!important;
  background:#fff!important;
}
.sl-mobile-result-filters button{
  border-right-color:#d6d6d6!important;
}
.sl-filter-tabs button.is-active,
.sl-mobile-result-filters button.is-active{
  border-color:#111!important;
  background:#111!important;
  color:#fff!important;
}

/* 결과 컬럼 */
.sl-result-column,
.sl-result-columns.is-funeral-only .sl-result-column,
.sl-result-columns.is-wedding-only .sl-result-column{
  border-color:#d8d8d8!important;
  background:#fff!important;
}
.sl-result-column-title,
.sl-wedding-column .sl-result-column-title,
.sl-result-columns.is-funeral-only .sl-result-column-title,
.sl-result-columns.is-wedding-only .sl-result-column-title{
  border-color:#d8d8d8!important;
  background:#f5f5f5!important;
}
.sl-result-column-title h3,
.sl-wedding-column .sl-result-column-title h3{
  color:#111!important;
}
.sl-result-column-title strong{
  color:#666!important;
}
.sl-result-column-title strong span,
.sl-wedding-column .sl-result-column-title strong span{
  color:#111!important;
}

/* 검색결과 카드 */
.sl-result-stack .sl-place-card,
.sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card,
.sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card{
  border-color:#ddd!important;
  background:#fff!important;
}
.sl-result-stack .sl-place-card{
  border-bottom-color:#e7e7e7!important;
}
.sl-result-stack .sl-place-card:hover,
.sl-result-columns.is-funeral-only .sl-result-stack .sl-place-card:hover,
.sl-result-columns.is-wedding-only .sl-result-stack .sl-place-card:hover{
  background:#f7f7f7!important;
}
.sl-place-card-top strong{
  color:#111!important;
}
.sl-place-location{
  color:#444!important;
}
.sl-place-address{
  color:#888!important;
}
.sl-place-go{
  color:#111!important;
}
.sl-site-home,
.facility-homepage-link{
  border-color:#d4d4d4!important;
  background:#fff!important;
  color:#111!important;
}
.sl-site-home:hover,
.facility-homepage-link:hover{
  border-color:#999!important;
  background:#f5f5f5!important;
  color:#111!important;
}
.sl-column-more{
  border-top-color:#ddd!important;
  background:#f7f7f7!important;
}
.sl-more-btn{
  border-color:#c8c8c8!important;
  background:#fff!important;
  color:#111!important;
}

/* 추천시설 / 지역별 */
.sl-rec-card{
  border-color:#ddd!important;
  background:#f8f8f8!important;
}
.sl-rec-card:hover{
  background:#f3f3f3!important;
}
.sl-rec-main span{
  color:#555!important;
}
.sl-rec-main strong{
  color:#111!important;
}
.sl-rec-main small{
  color:#777!important;
}
.sl-region-group{
  border-top-color:#ddd!important;
}
.sl-region-links button{
  border-color:#ddd!important;
  background:#fff!important;
  color:#444!important;
}
.sl-region-links button:hover{
  border-color:#999!important;
  background:#f5f5f5!important;
  color:#111!important;
}
.sl-region-links b{
  color:#111!important;
}

/* ===== 시설 상세페이지 ===== */
.facility-detail-page{
  color:#161616!important;
}
.facility-breadcrumb{
  color:#777!important;
}
.facility-breadcrumb strong{
  color:#222!important;
}
.facility-hero-v2{
  border-color:#d9d9d9!important;
  background:linear-gradient(135deg,#f7f7f7 0%,#fff 72%)!important;
  box-shadow:0 12px 35px rgba(0,0,0,.035)!important;
}
.facility-type-pill{
  background:#111!important;
  color:#fff!important;
}
.facility-area-pill{
  background:#ececec!important;
  color:#444!important;
}
.facility-hero-v2 h1{
  color:#111!important;
}
.facility-hero-v2 h1 em{
  color:#555!important;
}
.facility-hero-copy>p{
  color:#666!important;
}
.btn-secondary{
  border-color:#cfcfcf!important;
  background:#fff!important;
  color:#111!important;
}
.btn-secondary:hover{
  border-color:#999!important;
  background:#f5f5f5!important;
}

.facility-quick-card{
  background:#111!important;
  color:#fff!important;
}
.facility-quick-card small{
  color:#d0d0d0!important;
}
.facility-quick-card p{
  color:rgba(255,255,255,.75)!important;
}
.facility-quick-card span{
  border-top-color:rgba(255,255,255,.16)!important;
  color:rgba(255,255,255,.62)!important;
}

.facility-info-grid{
  border-top-color:#ddd!important;
  border-left-color:#ddd!important;
}
.facility-info-grid>div{
  border-right-color:#ddd!important;
  border-bottom-color:#ddd!important;
  background:#fff!important;
}
.facility-info-grid dt{
  color:#777!important;
}
.facility-info-grid dd{
  color:#222!important;
}
.facility-info-grid dd small{
  color:#888!important;
}
.facility-data-note{
  color:#999!important;
}

.facility-restriction-box{
  border-color:#d0d0d0!important;
  background:#f7f7f7!important;
}
.facility-restriction-box span{
  color:#555!important;
}
.facility-restriction-box h2{
  color:#111!important;
}
.facility-restriction-box p{
  color:#444!important;
}
.facility-restriction-box small{
  color:#777!important;
}

.facility-no-products{
  border-color:#bbb!important;
  background:#f7f7f7!important;
}
.facility-no-products p{
  color:#666!important;
}

.facility-seo-copy{
  background:#f5f5f5!important;
}
.facility-seo-copy h2{
  color:#111!important;
}
.facility-seo-copy p{
  color:#666!important;
}
.facility-seo-copy aside{
  border-left-color:#d8d8d8!important;
}
.facility-seo-copy aside strong,
.facility-seo-copy aside a{
  color:#111!important;
}

.facility-bottom-cta{
  background:#111!important;
  color:#fff!important;
}
.facility-bottom-cta small{
  color:#d0d0d0!important;
}
.facility-bottom-cta p{
  color:rgba(255,255,255,.68)!important;
}
.facility-bottom-cta .btn-primary{
  background:#fff!important;
  color:#111!important;
}

/* 모바일에서도 동일 무채색 유지 */
@media(max-width:760px){
  .sl-search-page,
  .facility-detail-page{
    color:#161616!important;
  }
  .sl-search-hero,
  .facility-hero-v2{
    border-color:#d9d9d9!important;
    background:linear-gradient(135deg,#f7f7f7 0%,#fff 72%)!important;
  }
  .sl-mobile-result-filters{
    border-color:#d6d6d6!important;
    background:#fff!important;
  }
  .sl-mobile-result-filters button{
    border-right-color:#d6d6d6!important;
    background:#fff!important;
    color:#555!important;
  }
  .sl-mobile-result-filters button.is-active{
    background:#111!important;
    color:#fff!important;
  }
  .sl-result-column-title,
  .sl-wedding-column .sl-result-column-title{
    background:#f5f5f5!important;
  }
}


/* v1.5.30 — 웨딩홀만 웨딩 무드로 분리
   장례식장/전체 통합검색의 블랙·그레이 기본 디자인은 유지.
   웨딩은 화이트·웜핑크/로즈를 포인트로 사용. */

/* 검색결과: 웨딩 전용 탭 */
.sl-mobile-result-filters button[data-filter="wedding"].is-active,
.sl-filter-tabs button[data-filter="wedding"].is-active{
  background:#b56f79!important;
  border-color:#b56f79!important;
  color:#fff!important;
}

/* 웨딩 결과 컬럼 */
.sl-wedding-column{
  border-color:#eadcdf!important;
  background:#fff!important;
}
.sl-wedding-column .sl-result-column-title{
  border-color:#eadcdf!important;
  background:#fbf4f5!important;
}
.sl-wedding-column .sl-result-column-title h3{
  color:#713f47!important;
}
.sl-wedding-column .sl-result-column-title strong{
  color:#76676a!important;
}
.sl-wedding-column .sl-result-column-title strong span{
  color:#a65f69!important;
}
.sl-wedding-column .sl-place-card{
  border-color:#eadfe1!important;
}
.sl-wedding-column .sl-place-card:hover{
  background:#fdf8f9!important;
}
.sl-wedding-column .sl-place-go{
  color:#9b5963!important;
}

/* 웨딩홀 상세: 검정 대형카드 대신 밝고 따뜻한 웨딩 무드 */
.facility-detail-wedding .facility-hero-v2{
  border-color:#eadcdf!important;
  background:linear-gradient(135deg,#fff8f8 0%,#fff 74%)!important;
  box-shadow:0 12px 35px rgba(118,70,79,.045)!important;
}
.facility-detail-wedding .facility-type-pill{
  background:#b56f79!important;
  color:#fff!important;
}
.facility-detail-wedding .facility-area-pill{
  background:#f4e9eb!important;
  color:#79545a!important;
}
.facility-detail-wedding .facility-hero-v2 h1{
  color:#241f20!important;
}
.facility-detail-wedding .facility-hero-v2 h1 em{
  color:#a65f69!important;
}
.facility-detail-wedding .facility-hero-copy>p{
  color:#6d6264!important;
}

/* 배송지 카드도 밝게: 장례 느낌 제거 */
.facility-detail-wedding .facility-quick-card{
  border:1px solid #e7d7da!important;
  background:linear-gradient(145deg,#fffafa 0%,#f8ecee 100%)!important;
  color:#241f20!important;
}
.facility-detail-wedding .facility-quick-card small{
  color:#a65f69!important;
}
.facility-detail-wedding .facility-quick-card strong{
  color:#241f20!important;
}
.facility-detail-wedding .facility-quick-card p{
  color:#665b5d!important;
}
.facility-detail-wedding .facility-quick-card span{
  border-top-color:#e1d2d5!important;
  color:#817476!important;
}

/* 웨딩 상세의 버튼/보조영역 */
.facility-detail-wedding .facility-hero-actions .btn-primary{
  background:#b56f79!important;
  border-color:#b56f79!important;
  color:#fff!important;
}
.facility-detail-wedding .facility-homepage-link{
  border-color:#dfcfd2!important;
  color:#713f47!important;
}
.facility-detail-wedding .facility-homepage-link:hover{
  border-color:#b98c93!important;
  background:#fff7f8!important;
}
.facility-detail-wedding .facility-restriction-box{
  border-color:#e5d5d8!important;
  background:#fff8f8!important;
}
.facility-detail-wedding .facility-restriction-box span{
  color:#a65f69!important;
}
.facility-detail-wedding .facility-seo-copy{
  background:#faf5f6!important;
}
.facility-detail-wedding .facility-bottom-cta{
  background:#342a2c!important;
}
.facility-detail-wedding .facility-bottom-cta small{
  color:#e5bdc3!important;
}

/* 모바일도 같은 웨딩 팔레트 */
@media(max-width:760px){
  .sl-mobile-result-filters button[data-filter="wedding"].is-active{
    background:#b56f79!important;
    color:#fff!important;
  }
  .sl-wedding-column .sl-result-column-title{
    background:#fbf4f5!important;
  }
  .facility-detail-wedding .facility-hero-v2{
    border-color:#eadcdf!important;
    background:linear-gradient(135deg,#fff8f8 0%,#fff 74%)!important;
  }
  .facility-detail-wedding .facility-quick-card{
    background:linear-gradient(145deg,#fffafa 0%,#f8ecee 100%)!important;
    color:#241f20!important;
  }
}


/* v1.5.31 — 웨딩 전체 톤 강화 + 버튼 포함
   장례식장 블랙은 그대로. 웨딩만 딥 로즈/버건디 중심으로 한 단계 진하게. */
:root{
  --snf-wedding-deep:#8f4653;
  --snf-wedding-dark:#6f3440;
  --snf-wedding-mid:#a65c69;
  --snf-wedding-soft:#f3e2e5;
  --snf-wedding-pale:#faf0f2;
}

/* 검색 결과 웨딩 */
.sl-mobile-result-filters button[data-filter="wedding"].is-active,
.sl-filter-tabs button[data-filter="wedding"].is-active{
  background:var(--snf-wedding-deep)!important;
  border-color:var(--snf-wedding-deep)!important;
  color:#fff!important;
}
.sl-wedding-column{
  border-color:#d9bfc4!important;
}
.sl-wedding-column .sl-result-column-title{
  background:var(--snf-wedding-soft)!important;
  border-color:#d9bfc4!important;
}
.sl-wedding-column .sl-result-column-title h3{
  color:var(--snf-wedding-dark)!important;
}
.sl-wedding-column .sl-result-column-title strong span,
.sl-wedding-column .sl-place-go{
  color:var(--snf-wedding-deep)!important;
}
.sl-wedding-column .sl-place-card:hover{
  background:var(--snf-wedding-pale)!important;
}
.sl-wedding-column .sl-more-btn{
  border-color:var(--snf-wedding-deep)!important;
  background:var(--snf-wedding-deep)!important;
  color:#fff!important;
}

/* 웨딩 상세 */
.facility-detail-wedding .facility-hero-v2{
  border-color:#d9bfc4!important;
  background:linear-gradient(135deg,#f6e7ea 0%,#fff 76%)!important;
}
.facility-detail-wedding .facility-type-pill{
  background:var(--snf-wedding-deep)!important;
}
.facility-detail-wedding .facility-area-pill{
  background:#ead5d9!important;
  color:var(--snf-wedding-dark)!important;
}
.facility-detail-wedding .facility-hero-v2 h1 em,
.facility-detail-wedding .facility-quick-card small,
.facility-detail-wedding .facility-restriction-box span{
  color:var(--snf-wedding-deep)!important;
}
.facility-detail-wedding .facility-quick-card{
  border-color:#d6b8be!important;
  background:linear-gradient(145deg,#f5e3e6 0%,#ead2d7 100%)!important;
  color:#241f20!important;
}
.facility-detail-wedding .facility-quick-card span{
  border-top-color:#cfb1b7!important;
  color:#69575b!important;
}

/* 웨딩 상세 모든 주요 액션 버튼 */
.facility-detail-wedding .facility-hero-actions .btn-primary,
.facility-detail-wedding .facility-products-section .btn-primary,
.facility-detail-wedding .facility-bottom-cta .btn-primary{
  border-color:var(--snf-wedding-deep)!important;
  background:var(--snf-wedding-deep)!important;
  color:#fff!important;
}
.facility-detail-wedding .facility-hero-actions .btn-primary:hover,
.facility-detail-wedding .facility-products-section .btn-primary:hover,
.facility-detail-wedding .facility-bottom-cta .btn-primary:hover{
  border-color:var(--snf-wedding-dark)!important;
  background:var(--snf-wedding-dark)!important;
  color:#fff!important;
}
.facility-detail-wedding .facility-homepage-link,
.facility-detail-wedding .btn-secondary{
  border-color:#bc8d96!important;
  background:#fff!important;
  color:var(--snf-wedding-dark)!important;
}
.facility-detail-wedding .facility-homepage-link:hover,
.facility-detail-wedding .btn-secondary:hover{
  border-color:var(--snf-wedding-deep)!important;
  background:var(--snf-wedding-pale)!important;
  color:var(--snf-wedding-dark)!important;
}
.facility-detail-wedding .facility-products-section .text-link,
.facility-detail-wedding .facility-seo-copy aside a{
  color:var(--snf-wedding-deep)!important;
}
.facility-detail-wedding .facility-restriction-box{
  border-color:#d8b9bf!important;
  background:#f8e9ec!important;
}
.facility-detail-wedding .facility-seo-copy{
  background:#f5e7e9!important;
}
.facility-detail-wedding .facility-bottom-cta{
  background:var(--snf-wedding-dark)!important;
}
.facility-detail-wedding .facility-bottom-cta small{
  color:#f0cbd1!important;
}

/* 모바일 동일 */
@media(max-width:760px){
  .sl-mobile-result-filters button[data-filter="wedding"].is-active{
    background:var(--snf-wedding-deep)!important;
    border-color:var(--snf-wedding-deep)!important;
  }
  .sl-wedding-column .sl-result-column-title{
    background:var(--snf-wedding-soft)!important;
  }
  .facility-detail-wedding .facility-hero-v2{
    background:linear-gradient(135deg,#f6e7ea 0%,#fff 76%)!important;
  }
  .facility-detail-wedding .facility-quick-card{
    background:linear-gradient(145deg,#f5e3e6 0%,#ead2d7 100%)!important;
  }
}


/* v1.5.32 — 웨딩 상세 배송지 카드
   '이곳으로 화환 보내기'와 같은 딥 로즈 톤 + 전체 흰색 글자 */
.facility-detail-wedding .facility-quick-card{
  border-color:#8f4653!important;
  background:#8f4653!important;
  color:#fff!important;
  box-shadow:none!important;
}
.facility-detail-wedding .facility-quick-card small,
.facility-detail-wedding .facility-quick-card strong,
.facility-detail-wedding .facility-quick-card p,
.facility-detail-wedding .facility-quick-card span{
  color:#fff!important;
}
.facility-detail-wedding .facility-quick-card span{
  border-top-color:rgba(255,255,255,.25)!important;
}
@media(max-width:760px){
  .facility-detail-wedding .facility-quick-card{
    border-color:#8f4653!important;
    background:#8f4653!important;
    color:#fff!important;
  }
  .facility-detail-wedding .facility-quick-card small,
  .facility-detail-wedding .facility-quick-card strong,
  .facility-detail-wedding .facility-quick-card p,
  .facility-detail-wedding .facility-quick-card span{
    color:#fff!important;
  }
}


/* v1.5.33 — 지역별 찾기 펼침 상태 시인성 강화
   + → −, 선택 카드 강조, 펼침 패널 제목/경계/버튼 강화. */
.sl-search-page .sl-region-group{
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.sl-search-page .sl-region-group.is-open{
  border-color:#111!important;
}
.sl-search-page .sl-region-group.is-open .sl-region-toggle{
  border-color:#111!important;
  background:#f2f2f2!important;
  color:#111!important;
  box-shadow:inset 4px 0 0 #111!important;
}
.sl-search-page .sl-region-group.is-open .sl-region-toggle span{
  color:#111!important;
  font-weight:900!important;
}
.sl-search-page .sl-region-group.is-open .sl-region-toggle b{
  color:#444!important;
}
.sl-search-page .sl-region-group.is-open .sl-region-toggle i{
  color:#111!important;
  font-weight:900!important;
}

.sl-search-page .sl-region-group.is-open .sl-region-links{
  position:relative;
  border:2px solid #222!important;
  background:#f7f7f7!important;
  box-shadow:0 8px 22px rgba(0,0,0,.07)!important;
  padding:58px 16px 16px!important;
}
.sl-search-page .sl-region-links-title{
  display:none;
}
.sl-search-page .sl-region-group.is-open .sl-region-links-title{
  display:flex!important;
  align-items:center;
  position:absolute;
  left:16px;
  right:16px;
  top:13px;
  min-height:32px;
  padding-bottom:10px;
  border-bottom:1px solid #d3d3d3;
  color:#111;
  font-size:15px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.02em;
}
.sl-search-page .sl-region-group.is-open .sl-region-links button{
  min-height:42px!important;
  border:1px solid #c7c7c7!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#222!important;
  font-weight:800!important;
}
.sl-search-page .sl-region-group.is-open .sl-region-links button:hover,
.sl-search-page .sl-region-group.is-open .sl-region-links button:focus{
  border-color:#111!important;
  background:#111!important;
  color:#fff!important;
  outline:none!important;
}

/* PC: 펼친 시·도는 한 줄 전체를 사용하고 패널을 확실히 분리 */
@media(min-width:761px){
  .sl-search-page .sl-region-group.is-open{
    padding-bottom:2px!important;
    margin:3px 0 8px!important;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-toggle{
    box-shadow:inset 4px 0 0 #111,0 3px 10px rgba(0,0,0,.04)!important;
  }
}

/* 모바일: 선택 카드와 펼침 패널을 한 덩어리처럼 보이게 */
@media(max-width:760px){
  .sl-search-page .sl-region-group.is-open{
    border:2px solid #111!important;
    border-radius:8px!important;
    overflow:hidden!important;
    box-shadow:0 7px 20px rgba(0,0,0,.07)!important;
    margin:5px 0 12px!important;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-toggle{
    min-height:56px!important;
    border:0!important;
    border-bottom:1px solid #cfcfcf!important;
    border-radius:0!important;
    padding:0 14px!important;
    box-shadow:inset 4px 0 0 #111!important;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding:55px 12px 13px!important;
    border:0!important;
    border-radius:0!important;
    background:#f5f5f5!important;
    box-shadow:none!important;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-links-title{
    left:12px;
    right:12px;
    top:12px;
    font-size:14px;
  }
  .sl-search-page .sl-region-group.is-open .sl-region-links button{
    min-height:44px!important;
    padding:9px 8px!important;
    font-size:13px!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
}
@media(max-width:380px){
  .sl-search-page .sl-region-group.is-open .sl-region-links{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* v1.5.35 — 시설 전화하기 버튼에 홈페이지와 동일한 선형 아이콘 추가 */
.facility-phone-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.facility-phone-link svg{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
  display:block!important;
}
.facility-phone-link span{
  display:inline-block!important;
}
@media(max-width:760px){
  .facility-phone-link{
    gap:7px!important;
  }
  .facility-phone-link svg{
    width:17px!important;
    height:17px!important;
    flex-basis:17px!important;
  }
}


/* v1.5.36 — 검색결과 랜덤 노출 표시 */
.sl-random-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:7px;
  padding:3px 7px;
  border:1px solid #bdbdbd;
  border-radius:999px;
  background:#f7f7f7;
  color:#555;
  font-size:11px;
  line-height:1;
  font-weight:800;
  vertical-align:middle;
  white-space:nowrap;
}
@media(max-width:760px){
  .sl-random-badge{
    margin-left:5px;
    padding:3px 6px;
    font-size:10px;
  }
}


/* v1.5.37 — 지역 펼침 버튼 선택 시 지역 개수도 흰색으로 표시 */
.sl-search-page .sl-region-group.is-open .sl-region-links button:hover b,
.sl-search-page .sl-region-group.is-open .sl-region-links button:focus b,
.sl-search-page .sl-region-group.is-open .sl-region-links button:focus-visible b{
  color:#fff!important;
}

/* v1.5.37 — 시설 상세 모바일 상품영역:
   page-shell 안에 products-section이 중첩되며 생기던 좌우 16px 이중 패딩 제거 */
@media(max-width:900px){
  .facility-detail-page .facility-products-section{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}
@media(max-width:640px){
  .facility-detail-page .facility-products-section .product-grid{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
